:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",sans-serif;color:#19342d;background:#f5f7f4;font-synthesis:none;--green:#196a57;--ink:#19342d;--muted:#657970;--line:#dce4de;--paper:#fff}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:white;border-radius:12px;min-height:44px;padding:10px 16px;color:var(--ink);font-weight:600}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--green);color:white;border-color:var(--green)}button.quiet{background:transparent}button.danger{color:#993824}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #6abfad;outline-offset:3px}input,select{min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink);max-width:100%}input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:var(--green)}input[type=range]{width:100%;accent-color:var(--green);padding:0}header{border-bottom:1px solid var(--line);background:#fff;padding:20px max(20px,calc((100vw - 880px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:10px}.brand img{width:34px;height:34px}.brand strong{font-size:19px;letter-spacing:.04em}.pill{font-size:12px;background:#e5f1ea;color:#25654f;border-radius:20px;padding:6px 10px}.wrap{max-width:880px;margin:auto;padding:28px 20px 80px}.eyebrow{font-size:12px;letter-spacing:.12em;color:var(--green);font-weight:700}h1{font-size:30px;letter-spacing:.02em;margin:8px 0}h2{font-size:20px;margin:0}h3{font-size:16px;margin:0}.subtitle,.muted{color:var(--muted);font-size:14px;line-height:1.7}.subtitle{margin:8px 0 24px}.datebar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:20px}.datebar label{font-size:13px;color:var(--muted)}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;margin:16px 0;box-shadow:0 3px 16px #19342d03}.sectionhead{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:18px}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.capture{display:grid;grid-template-columns:1fr 1fr;gap:12px}.capture button{padding:22px 12px;font-size:16px}.capture small{display:block;font-size:12px;font-weight:400;margin-top:6px}.empty{text-align:center;padding:30px 10px;color:var(--muted)}.empty .glyph{font-size:34px;color:#a5bcb0;margin-bottom:12px}.page-row{display:grid;grid-template-columns:24px 64px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #e7ece7}.page-row:last-child{border-bottom:0}.thumbnail{width:64px;height:78px;object-fit:contain;background:#f4f5f2;border:1px solid var(--line);border-radius:7px}.rowmeta{font-size:12px;color:var(--muted);margin-top:4px}.page-row button{padding:8px 10px}.draft{color:#9b6d27}.notice{background:#edf4ee;color:#526b58;border:1px solid #dce8df;border-radius:14px;padding:14px 16px;font-size:13px;line-height:1.8}.notice.warning{background:#fff4df;color:#745725;border-color:#ecdfc3}.status{position:sticky;bottom:16px;z-index:3;border-radius:14px;background:#19342d;color:white;padding:14px 18px;box-shadow:0 8px 24px #19342d2b;line-height:1.6;font-size:14px}.status.error{background:#863a2b}.status:empty{display:none}.pdf-row{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.orderlist{margin:12px 0}.orderrow{display:flex;align-items:center;gap:8px;padding:6px 0}.orderrow span{flex:1}.orderrow button{padding:8px;min-width:44px}.wideinput{width:100%;margin:12px 0}.field{display:grid;gap:6px;margin:10px 0}.field label{font-size:13px;color:var(--muted)}.small{font-size:12px}footer{padding-top:26px;color:var(--muted);font-size:12px;text-align:center;line-height:1.9}.overlay{position:fixed;inset:0;z-index:10;background:#152c2780;display:grid;place-items:center;padding:16px}.dialog{background:#f7f9f6;border-radius:22px;max-width:760px;width:100%;max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 24px 80px #0003}.dialoghead{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:2;border-radius:22px 22px 0 0}.dialogbody{padding:18px}.editor-stage{position:relative;background:#e7ece7;overflow:hidden;border-radius:12px;margin:auto;max-width:520px}.editor-stage canvas{display:block;width:100%;height:auto;touch-action:none}.handles{position:absolute;inset:0;pointer-events:none}.handle{position:absolute;transform:translate(-50%,-50%);border-radius:50%;background:var(--green);border:3px solid #fff;width:34px;height:34px;min-height:34px;padding:0;color:#fff;pointer-events:auto;touch-action:none;box-shadow:0 2px 6px #0006;font-size:12px}.handle.active{background:#d88529}.editor-controls{max-width:520px;margin:16px auto}.cornerbuttons{display:flex;gap:6px}.cornerbuttons button{flex:1;padding:8px 0}.nudge{display:flex;justify-content:center;gap:8px;margin:10px 0}.nudge button{min-width:48px}.filterbuttons{display:flex;flex-wrap:wrap;gap:8px}.selected{border-color:var(--green);background:#e5f1ea}.editor-stage .handles.hidden{display:none}.pdfcanvas{display:block;max-width:100%;height:auto;margin:12px auto;background:white;border:1px solid var(--line)}.dialogfooter{padding:16px 20px;background:#fff;border-top:1px solid var(--line);position:sticky;bottom:0;z-index:2}.divider{border:0;border-top:1px solid var(--line);margin:18px 0}.backups a{display:block;margin:10px 0;color:var(--green)}.hidden{display:none!important}@media(max-width:560px){header{padding:16px 18px}.wrap{padding:22px 16px 64px}h1{font-size:26px}.card{padding:18px}.pill{font-size:10px}.page-row{gap:8px;grid-template-columns:24px 50px 1fr auto}.thumbnail{width:50px;height:65px}.overlay{padding:0;align-items:end}.dialog{border-radius:18px 18px 0 0;max-height:100dvh}.dialoghead{border-radius:18px 18px 0 0}.capture button{font-size:15px}.datebar{gap:8px}.datebar input{max-width:165px}.sectionhead{align-items:flex-start}}
