:root{--paper:#faf7ef;--ink:#252923;--green:#dce7c8;--line:#b9bcaf;--accent:#2b4b38}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,sans-serif}a{color:inherit}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--ink);border-radius:6px;background:#fffdf7;color:var(--ink);padding:11px 16px;min-height:46px}button.primary{background:var(--accent);color:#fff}button:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:3px solid #3155ce;outline-offset:3px}.skip{position:absolute;left:1rem;top:-5rem}.skip:focus{top:1rem;background:white;z-index:5}.top{max-width:1180px;margin:auto;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:12px}.brand{font-weight:900;text-decoration:none;line-height:1}.top nav{display:flex;gap:20px;font-size:.9rem}main,footer{max-width:1180px;padding:0 24px;margin:auto}.hero{padding:40px 0 26px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}.eyebrow{font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;font-weight:750}.hero h1{font:clamp(2.5rem,7vw,4.7rem)/1.04 Georgia,serif;letter-spacing:-.04em;margin:10px 0 18px;max-width:700px}.hero p{max-width:620px}.stamp{width:180px;height:200px;background:var(--green);border:1px solid var(--ink);transform:rotate(5deg);padding:20px;font:1.8rem/1.1 Georgia,serif;box-shadow:8px 8px 0 #edaa75}.stamp small{display:block;font:11px/2 system-ui,sans-serif;letter-spacing:.1em;margin-bottom:18px}.bar{background:#eeeee4;border:1px solid var(--line);padding:16px 20px;border-radius:8px;display:flex;flex-wrap:wrap;align-items:end;gap:16px}.bar label{max-width:210px}.subtle{font-size:.84rem;color:#52584c}.status{flex-basis:100%;margin:0}.actions{display:flex;flex-wrap:wrap;gap:10px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:26px;align-items:start;margin:28px 0}.rows{display:grid;gap:18px}.row{border:1px solid var(--line);background:#fffdf7;padding:20px;border-radius:8px}.row-head{display:flex;align-items:center;gap:12px}.row-head label{flex:1}.row-head button{align-self:end}.fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}label{display:flex;flex-direction:column;gap:6px;font-size:.83rem;font-weight:650}input,select{min-width:0;width:100%;border:1px solid #858c7c;border-radius:4px;background:#fff;padding:10px;min-height:46px;color:var(--ink)}input[aria-invalid=true]{border:2px solid #a23c20;background:#fff3eb}.row-summary{background:#eef2e6;padding:12px;font-size:.87rem;border-radius:4px}details{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}summary{cursor:pointer;font-weight:700;min-height:34px}details .fields{grid-template-columns:repeat(2,minmax(0,1fr))}.actual-note{font-size:.86rem}.totals{padding:22px;background:var(--green);border:1px solid var(--ink);border-radius:8px;position:sticky;top:16px}.totals h2{font:1.7rem Georgia,serif;margin-top:0}.totals dl{margin:0 0 20px}.totals dt{font-size:.8rem}.totals dd{font-size:1.45rem;margin:0 0 14px;font-weight:750}.totals p{font-size:.85rem}.totals button{width:100%}.errors{color:#7a2715;background:#fff0e7;border:1px solid #b35136;padding:16px;border-radius:6px;margin:16px 0}.errors a{display:block;margin:4px 0}.empty{padding:30px;border:1px dashed var(--line);text-align:center}.worked{max-width:800px;padding:20px 0 40px}.worked h2{font:2rem Georgia,serif}.worked h3{font-size:1rem;margin-top:25px}.worked p{max-width:75ch}footer{border-top:1px solid var(--line);padding-top:22px;padding-bottom:35px;font-size:.85rem;display:flex;flex-wrap:wrap;gap:20px}.print-only{display:none}[hidden]{display:none!important}.danger{color:#8a2919}.inline-reset{padding:12px;border:1px solid #b35136;margin-top:12px}#notice{padding:8px 0}#print-sheet{overflow-wrap:anywhere}#print-sheet table{width:100%;border-collapse:collapse;font-size:11pt}#print-sheet th,#print-sheet td{border:1px solid #888;padding:6px;text-align:left}#print-sheet th{font-weight:700}.title-note{overflow-wrap:anywhere}@media(max-width:850px){.layout{grid-template-columns:1fr}.totals{position:static}.totals dl{display:grid;grid-template-columns:1fr 1fr;gap:4px 15px}.totals dd{grid-column:2;font-size:1.15rem}.stamp{display:none}}@media(max-width:480px){main,footer{padding-left:16px;padding-right:16px}.top{padding:18px 16px}.top nav{gap:12px}.hero{padding-top:25px}.fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.row{padding:15px}.bar{padding:15px}.bar label{flex:1;min-width:120px}.row-head{align-items:end}.row-head button{padding:10px}.hero h1{font-size:2.7rem}}
@media print{@page{size:auto;margin:14mm}body{background:#fff;color:#000;font:11pt/1.4 Arial,sans-serif}.no-print,.top,main>*,footer,.skip{display:none!important}main{padding:0;max-width:none}main>#print-sheet{display:block!important}#print-sheet h1{font-size:22pt;margin:0 0 8pt}#print-sheet h2{font-size:15pt;margin:18pt 0 8pt}#print-sheet tr{break-inside:avoid}#print-sheet thead{display:table-header-group}#print-sheet p{font-size:10pt}#print-sheet .print-warning{border:2px solid;padding:15px}#print-sheet table{table-layout:fixed;font-size:9pt}#print-sheet th:first-child{width:28%}}
