
.tool-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:34px;align-items:start;margin:26px 0 8px}
.tool-main{min-width:0}
.tool-aside{background:var(--paper);border:1px solid var(--line2);border-radius:10px;padding:20px 20px 14px}
.tool-aside .aside-t{font-size:.98rem;margin:0 0 6px;color:var(--ink)}
.tool-aside .aside-t:not(:first-child){margin-top:16px}
.tool-aside p{margin:0 0 10px;color:var(--ink2);font-size:.88rem;line-height:1.55}
.tool-aside .aside-link a{color:var(--jade2);text-decoration:none;border-bottom:1px solid var(--line2)}
.tool-aside .aside-link a:hover{border-color:var(--jade2)}
.tool-form{max-width:640px;margin:0}
.tool-form fieldset{border:1px solid var(--line);border-radius:8px;padding:18px 18px 6px;margin:0 0 18px}
.tool-form legend{font-family:Georgia,serif;color:var(--gold2);font-size:1.05rem;padding:0 8px}
.tool-form label{display:block;font-size:.92rem;color:var(--text);margin-top:14px}
.tool-form input,.tool-form select{display:block;width:100%;margin-top:6px;padding:11px 12px;font-size:1rem;background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:6px}
.tool-form input:focus-visible,.tool-form select:focus-visible,.tool-form button:focus-visible{outline:2px solid var(--gold2);outline-offset:2px}
.tool-form input:disabled{opacity:.5}
.tool-form .check{display:flex;align-items:center;gap:10px;margin-top:14px;min-height:44px}
.tool-form .check input{width:24px;height:24px;margin:0;flex:0 0 24px;cursor:pointer}
.tool-form .check label{margin:0;font-size:.92rem;cursor:pointer}
.help{font-size:.82rem;color:var(--muted);margin:6px 0 0}
.help-more{margin:10px 0 0;font-size:.88rem;color:var(--muted)}
.help-more summary{cursor:pointer;color:var(--gold2)}
.help-more ul{margin:8px 0 4px;padding-left:20px}
.help-more li{margin:4px 0}
.details-body{margin-top:8px}
.tool-result{max-width:100%}
.pillar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}
.pillar{background:var(--paper2);border:1px solid var(--line2);border-radius:8px;padding:14px 10px;text-align:center}
.pillar.uncertain{border-style:dashed;border-color:var(--gold3)}
.plabel{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);margin-bottom:8px}
.pvalue{font-size:1rem;color:var(--ink);line-height:1.5}
.pvalue .gz{font-size:1.6rem;font-family:Georgia,serif;color:var(--ink)}
.pvalue .small{font-size:.78rem;color:var(--ink2)}
.pvalue.pending{color:var(--ink2);font-size:.9rem}
.dm{background:var(--paper2);border:1px solid var(--line2);border-radius:8px;padding:16px 18px;margin:14px 0;max-width:520px}
.dm h3{margin:0 0 8px;font-size:1rem;color:var(--gold3)}
.dm-hz{margin:0;font-family:Georgia,serif;font-size:1.7rem;color:var(--ink)}
.dm-py{margin:2px 0 0;color:var(--ink)}
.dm-yy{margin:2px 0 0;color:var(--ink2);font-size:.9rem}
.tool-conv{margin:34px 0 0;padding:24px 0 0;border-top:1px solid var(--line)}
.tool-conv h2{margin-top:0}
.conv-points{margin:10px 0 16px;padding-left:20px;color:var(--muted)}
.conv-points li{margin:5px 0}
.conv-other{margin-top:14px;font-size:.86rem}
.conv-other a{color:var(--gold2);text-decoration:none;border-bottom:1px solid var(--line)}
.tool-faq{margin:30px 0 0}
.tool-faq details{border-bottom:1px solid var(--line);padding:10px 0}
.tool-faq summary{cursor:pointer;color:var(--text)}
.tool-faq p{margin:8px 0 2px;color:var(--muted)}
.tool-method{margin:26px 0 10px;font-size:.88rem;color:var(--muted)}
.tool-method summary{cursor:pointer;color:var(--gold2)}
.tool-method ul{margin:10px 0 0;padding-left:20px}
.tool-method li{margin:5px 0}
[hidden]{display:none!important}
.tool-status{font-size:.92rem;color:var(--muted);margin:10px 0}
.tool-status.error{color:#c07070}
@media(max-width:768px){
.tool-layout{grid-template-columns:1fr;gap:20px}
.pillar-grid{grid-template-columns:repeat(2,1fr)}
.pvalue .gz{font-size:1.35rem}
.tool-aside{padding:16px 16px 10px}
}
