:root{--ink:#183555;--tint:#eaf0fa;--line:#c7d6e7;--accent:#417cbf;--paper:#f6f8fb;--surface:#fffefa;--muted:#52625b}
:root{font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}.shell{max-width:1160px;margin:auto;padding:0 clamp(16px,5vw,60px)}.top{display:flex;align-items:center;justify-content:space-between;padding-block:19px;border-bottom:1px solid var(--line);gap:16px}.word{display:inline-flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none;font-weight:740;letter-spacing:-.03em}.word i{height:17px;width:17px;background:var(--accent);border-radius:3px;box-shadow:inset -6px -6px 0 #0002}.top nav,.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.top nav a{font-size:.82rem}.shell a{color:var(--ink);text-underline-offset:3px}.shell a:hover{text-decoration-thickness:2px}.hero{padding:clamp(28px,5vw,65px) 0 31px;display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,32%);gap:clamp(16px,5vw,65px);align-items:center}h1,h2,h3,p{margin:0}h1{font:500 clamp(2.35rem,5.7vw,5.4rem)/.97 Georgia,serif;letter-spacing:-.063em;max-width:17ch;text-wrap:balance}h2{font:500 clamp(1.35rem,2.8vw,2.05rem)/1.1 Georgia,serif;letter-spacing:-.035em}h3{font-size:1.03rem}.ey{font-size:.69rem;font-weight:760;text-transform:uppercase;letter-spacing:.12em;display:block;margin:0 0 13px}.lead{font-size:clamp(1.04rem,1.8vw,1.26rem);max-width:56ch;margin-top:15px}.stat{background:var(--tint);border-left:4px solid var(--accent);padding:22px 24px;color:var(--ink)}.stat strong{font:500 clamp(1.65rem,3.4vw,2.8rem)/1.02 Georgia,serif;letter-spacing:-.035em;display:block}.stat small{display:block;margin-top:14px;color:var(--muted)}.workspace{display:grid;gap:15px}.panel{background:var(--surface);border:1px solid var(--line);padding:clamp(14px,2.5vw,28px);min-width:0}.panel-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.sub{font-size:.86rem;color:var(--muted);max-width:83ch}.tablewrap{width:100%;overflow-x:auto;margin:10px 0}table{width:100%;border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums}th{vertical-align:bottom;color:var(--muted);font-size:.7rem;letter-spacing:.025em;font-weight:680;line-height:1.27}th,td{padding:8px 6px;border-bottom:1px solid var(--line)}td{font-size:.88rem;vertical-align:top;overflow-wrap:anywhere}.input-table th:first-child,.input-table td:first-child{padding-left:0}.input-table input,.input-table select{width:100%;min-width:74px;max-width:255px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;padding:.48rem .4rem;border-radius:4px}.input-table input[type=number]{min-width:66px}.input-table input[type=date]{min-width:120px}.input-table td:first-child input{min-width:116px}.input-table .remove{padding:5px 8px;color:var(--muted)}button{font:inherit;cursor:pointer;background:transparent;border:1px solid var(--line);padding:.46rem .78rem;color:var(--ink);border-radius:4px;font-size:.85rem}button:hover{background:var(--tint)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}button:disabled{opacity:.5;cursor:default}.primary{background:var(--ink);border-color:var(--ink);color:white}.primary:hover{background:#323a39}.message{font-weight:650;color:#983e30;margin-top:8px}.row-tools,.footnote{margin-top:12px}.result-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center}.brief{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:22px 0}.brief article{padding:20px 0;border-top:2px solid var(--accent)}.brief p,.guide p{margin:.6rem 0;max-width:74ch}.brief a{font-weight:600}.footer{border-top:1px solid var(--line);padding:20px 0 34px;font-size:.78rem;color:var(--muted)}.guide{padding-block:28px;max-width:850px}.guide h2{margin:1.4rem 0 .4rem}.guide li{margin:.35rem 0}.skip{position:absolute;left:-9999px}.skip:focus{position:fixed;left:10px;top:6px;background:white;padding:6px;z-index:2}.work-tag{color:var(--muted);font-size:.74rem;font-weight:650}.mono .hero h1,.mono .stat strong{font-family:ui-monospace,Menlo,monospace;letter-spacing:-.07em}.mono .panel{border-top:3px solid var(--accent)}.feature .hero{background:var(--tint);padding:clamp(18px,4vw,40px);margin:26px 0 16px}.feature .stat{background:var(--surface)}.ledger .panel{border-inline-width:0;border-top:2px solid var(--ink)}.ledger .stat{background:transparent;border-bottom:1px solid var(--line)}.ledger h1{font-style:italic}.helper{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
@media(max-width:690px){.hero{grid-template-columns:1fr;gap:18px}.stat{padding:15px}.stat .ey{margin:0 0 6px}.stat small{margin-top:7px}.brief{grid-template-columns:1fr}.panel{padding:13px}.top{gap:8px}.top nav{gap:10px}.result-table{min-width:360px}.tablewrap:focus-visible{outline:2px solid var(--accent)}.hero .lead{margin-top:10px}.input-table{min-width:420px}.feature .hero{margin-block:16px}}
@media print{.top nav,.row-tools,.actions,.input-panel,.brief,.footer,.skip,.guide-nav{display:none!important}.shell{max-width:none;padding:0}.hero{display:block;padding:0}.stat{margin:12px 0}.panel{border:none;padding:0}.tablewrap{overflow:visible}h1{font-size:2rem}.hero .lead{font-size:1rem}.result-table{min-width:0}body{background:white}.hero,.stat{break-inside:avoid}tr{break-inside:avoid}.work-tag{font-size:.8rem}}
