:root{color:#182c24;background:#f5f2e9;font:16px/1.5 system-ui,sans-serif;--green: #204c3c;--muted: #495b50;--line: #cfd8cc;--white: #fffef9}*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}h1,h2,h3,p{margin:0}button,select{font:inherit}button,select,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}a{color:var(--green)}:focus-visible{outline:3px solid #497c67;outline-offset:3px}.skip{position:fixed;left:.75rem;top:-5rem;padding:.5rem;background:#fff;z-index:5}.skip:focus{top:.75rem}.container{width:min(1100px,calc(100% - 2.5rem));margin-inline:auto}.masthead{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.05rem;border-bottom:1px solid #d3dbcf}.brand{display:inline-flex;gap:.6rem;align-items:center;text-decoration:none;font-weight:800;letter-spacing:-.045em;font-size:1.4rem}.mark{display:grid;place-items:center;width:2rem;height:2rem;color:#fffef9;background:var(--green);border-radius:.45rem}.privacy,.subtle,footer{color:var(--muted);font-size:.85rem}.intro{padding-block:2.15rem;display:grid;grid-template-columns:1fr .72fr;gap:.35rem 1.5rem;align-items:end}.eyebrow{color:#426553;font-weight:800;letter-spacing:.13em;font-size:.69rem}.intro .eyebrow{grid-column:1/-1}h1{font:500 clamp(2.9rem,6.5vw,5.4rem)/.96 Georgia,serif;letter-spacing:-.063em}.intro>p:last-child{max-width:33ch;color:var(--muted);font-size:1.03rem;padding-bottom:.25rem}.grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:1.1rem;align-items:start}.panel{background:var(--white);border:1px solid var(--line);padding:1.2rem;border-radius:1rem;box-shadow:0 6px 18px #28423608}h2{font:500 1.85rem/1.15 Georgia,serif;letter-spacing:-.025em;margin:.22rem 0 .8rem}h3{font-size:1rem;margin-bottom:.25rem}.picker{background:#edf4eb;border:1px dashed #8ca99b;padding:.9rem;border-radius:.7rem}.picker.over{border-color:#0f5138;background:#dcece0}.picker p{font-size:.78rem;color:var(--muted);margin-top:.65rem}.btn{display:inline-flex;justify-content:center;align-items:center;font-weight:670;padding:.58rem .82rem;border:1px solid transparent;border-radius:.55rem}.primary{color:#fff;background:var(--green)}.primary:hover:not(:disabled){background:#153629}.secondary{color:var(--green);background:#f8faf5;border-color:var(--line)}.secondary:hover:not(:disabled){background:#e3eee2}.controls label,.paper-picker label{font-size:.85rem;font-weight:700;display:block}select{color:inherit;border:1px solid var(--line);padding:.42rem .6rem;border-radius:.5rem;background:var(--white)}.controls select{width:100%;margin:.25rem 0 .5rem}.file-list{list-style:none;margin:.6rem 0;padding:0}.file-list li{display:flex;align-items:center;gap:.35rem;margin-block:.22rem;overflow-wrap:anywhere}.file-list li>:first-child{flex:1;min-width:0}.file-list .selected{background:#dbeadd}.file-name{text-align:left;justify-content:flex-start;font-size:.85rem}.small{padding:.25rem .6rem;min-height:2rem}.export{margin-top:.8rem;width:100%}#status{margin-top:.4rem}#status.error{color:#8f381e}.pass{margin-top:.8rem;padding:.85rem;border-radius:.65rem;background:#e9f0e6}.button-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.45rem}.preview-head,.preview-controls,.pages{display:flex;align-items:center;justify-content:space-between;gap:.45rem}.stage{min-height:19rem;background:#e6ebe1;display:grid;place-items:center;padding:1rem;border-radius:.65rem}.stage>p{color:var(--muted);font-size:.9rem;text-align:center}canvas{display:block;max-width:100%;max-height:420px;height:auto;width:auto;background:#fff;box-shadow:0 3px 14px #28423630}.preview-controls{margin-top:.65rem;font-size:.85rem;flex-wrap:wrap}.actual{display:flex;align-items:center;gap:.38rem}.actual input{accent-color:var(--green)}.fit-note{margin-top:.5rem;color:var(--muted);font-size:.83rem}.fit-note.warning{color:#8f381e}footer{padding-block:1.5rem}@media(max-width:650px){.container{width:calc(100% - 1.4rem)}.intro,.grid{grid-template-columns:minmax(0,1fr)}.intro{gap:.55rem;padding-block:1.4rem}.intro>p:last-child{padding:0}.masthead{gap:.65rem}.privacy{text-align:right;font-size:.75rem}.stage{min-height:14rem}}
