@charset "UTF-8";
:root{--coal:#151716;--coal2:#232421;--gold:#a5782b;--gold2:#c99b49;--cream:#f8f6f1;--ink:#30291e;--subtle:#7d7469;--line:#e4dccc}
*{box-sizing:border-box}html{background:var(--cream);color:var(--ink)}body{margin:0;font:14px/1.5 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.shell{min-height:100vh}.top{min-height:76px;background:var(--coal);display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px max(22px,calc((100vw - 1300px)/2));color:#f4e5ca}
.brand{display:flex;align-items:center;gap:13px;min-width:0}.brand img{max-width:205px;width:100%;height:51px;object-fit:contain;background:white;border:1px solid #e7d5ab;padding:5px 10px;border-radius:8px}.brand span{letter-spacing:2px;font-size:11px;font-weight:860;white-space:nowrap}.brand i{font-style:normal;color:#eac274}
.header-tools{display:flex;align-items:center;justify-content:flex-end;gap:15px}.net-pill{padding:7px 10px;border:1px solid #8b713e;background:#413524;color:#f4ce8a;border-radius:7px;letter-spacing:1px;font-size:9px;font-weight:850;white-space:nowrap}
.net-pill.off{color:#e0c4a6;border-color:#895f36;background:#4a3425}.small-link{border:1px solid #72572f;color:#e6c58a;background:#24241f;font-size:10px;font-weight:780;border-radius:7px;padding:9px}.small-link span{font-size:15px}
main{padding:27px clamp(16px,4.4vw,52px) 30px;max-width:1400px;margin:auto}.hero{background:radial-gradient(circle at 86% 5%,#443922 0%,#21221e 62%,#161817);color:white;padding:35px 37px;border-radius:16px;border:1px solid #3e3930;position:relative}
.eyebrow{color:#e5bd76;font-size:10px;letter-spacing:2.3px;font-weight:850}.hero h1{font-size:clamp(31px,4vw,51px);letter-spacing:-2px;line-height:1.09;margin:16px 0}.hero h1 em{color:#e7bd78;font-style:normal}.hero p{color:#d2c9bc;line-height:1.7;font-size:12px;max-width:700px;margin:0}.hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;color:#d9c9ac}.hero-meta span{border:1px solid #594a33;background:#393024;border-radius:7px;padding:6px 9px;font-size:10px}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:19px 0 22px}.tab{background:#fff;border:1px solid #e3d8c7;color:#837058;border-radius:9px;padding:12px 16px;font-size:12px;font-weight:790}
.tab.active{background:#f4e4c5;border-color:#c69d53;color:#7d571c}.tab span{background:#e4d2ae;color:#7c5e25;padding:3px 6px;border-radius:20px;margin-left:3px;font-size:10px}
.stepheading{display:flex;align-items:center;gap:11px;margin:16px 0}.stepheading>span{background:#f4e6c9;border:1px solid #d8bb86;color:#9f722f;font-size:12px;font-weight:850;border-radius:10px;height:37px;width:37px;display:grid;place-items:center;flex:none}
.stepheading h2{font-size:20px;letter-spacing:-.5px;margin:0 0 4px}.stepheading p{color:#8a7d6e;margin:0;font-size:11px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;align-items:stretch}.panel{background:#fff;border:1px solid #e2d8c9;border-radius:14px;padding:23px;box-shadow:0 7px 25px #2c1d0909;min-width:0}.panelheading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}.n{color:#a57831;letter-spacing:1.4px;font-weight:870;font-size:10px}
.tag{font-size:10px;background:#f3e5ca;color:#8d672c;border:1px solid #dec595;padding:6px 8px;border-radius:6px}
.field{display:grid;gap:7px;color:#574a39;font-size:11px;font-weight:760;margin-bottom:13px}.field input,.field select{background:#fdfbf7;border:1px solid #dacdb9;outline:none;color:#3e3528;min-height:44px;border-radius:8px;padding:11px;font-size:12px;width:100%}.field input:focus,.field select:focus{border-color:#b58a43;box-shadow:0 0 0 3px #deb96644}
.capture-box{min-height:256px;border:1px dashed #c9b792;border-radius:11px;background:radial-gradient(circle at 50% 45%,#f8f2e6,#f0ece5);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:15px}.capture-box strong{color:#433629;font-size:13px}.capture-box>span:last-child{color:#8f816e;font-size:11px;max-width:280px;line-height:1.6}
.capture-art{height:116px;width:116px;position:relative;display:grid;place-items:center}.framecorner{position:absolute;width:26px;height:26px;border:3px solid #ac813a}.framecorner.a{left:0;top:0;border-right:0;border-bottom:0}.framecorner.b{right:0;top:0;border-left:0;border-bottom:0}.framecorner.c{right:0;bottom:0;border-left:0;border-top:0}.framecorner.d{left:0;bottom:0;border-right:0;border-top:0}.paper{height:79px;width:61px;background:#fff9ed;border:1px solid #e9d8b9;border-radius:5px;padding:20px 10px;display:grid;gap:7px;transform:rotate(7deg);box-shadow:0 9px 18px #3a2f1818}.paper i{height:5px;background:#c8ae7d;border-radius:4px}.paper i:nth-child(2){width:70%}.paper i:nth-child(4){width:82%}
.buttons-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:13px 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:11px 15px;border-radius:9px;font-size:12px;font-weight:800;white-space:normal;text-align:center}.button.gold{background:linear-gradient(120deg,#aa7928,#c99c4c);border:1px solid #a87b31;color:white;box-shadow:0 7px 16px #b4873a20}.button.gold:hover{filter:brightness(1.07)}.button.outline{background:#fff;border:1px solid #dcccac;color:#6d5533}.button.outline:hover{background:#f8eedb}
.guide{font-size:10px;line-height:1.65;color:#8d8274;margin-top:9px}.empty{min-height:300px;border:1px dashed #d3c3a8;background:#faf7f0;color:#9b8c74;border-radius:11px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.7;padding:25px;font-size:12px}
.editor-shell{min-height:220px;max-height:366px;display:grid;place-items:center;border:1px solid #e2d5c0;background:#f1eae0;border-radius:10px;padding:11px;overflow:hidden}
.canvas-stage{position:relative;line-height:0;max-width:100%;max-height:337px;display:block}.canvas-stage canvas{max-width:100%;max-height:337px;display:block;background:#fff;object-fit:contain;border-radius:2px;box-shadow:0 5px 14px #34221121}
.canvas-stage svg{position:absolute;inset:0;height:100%;width:100%;touch-action:none;overflow:visible}.canvas-stage polygon{stroke:#be8a3b;stroke-width:5;fill:#e6b65018;stroke-dasharray:17 9}.canvas-stage circle{fill:#fbecb9;stroke:#9e6c1f;stroke-width:9;touch-action:none;cursor:grab}
.crop-help{font-size:11px;line-height:1.5;color:#7d5d27;background:#fbf1d9;border:1px solid #d9bd81;padding:10px;border-radius:8px;margin-top:11px}
.editor-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:13px 0 8px}.editor-actions .tool{background:#f8f5ef;border:1px solid #e0d4c0;color:#765f3c;border-radius:7px;font-size:11px;font-weight:780;min-height:38px;padding:7px 4px}.tool.active,.editor-actions .apply{background:#efdbaf;color:#7a5725;border-color:#caa362}.editor-actions .danger{color:#9b4439}.editor-actions.bottom-actions{margin:3px 0 13px}
.thumbnails{display:flex;gap:9px;overflow-x:auto;padding:3px 1px 13px}.thumb{background:#fbf5ea;border:1px solid #d7b47a;border-radius:8px;padding:3px;width:62px;height:78px;flex:none;position:relative}.thumb.active{outline:2px solid #ae7c30}.thumb img{width:100%;height:100%;object-fit:contain;background:#fff}.thumb small{position:absolute;right:2px;top:2px;background:#60451dba;color:#fff;font-size:9px;padding:2px 5px;border-radius:3px}
.actions-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #ece1d2;padding-top:14px;margin-top:13px}.actions-footer>div:first-child{display:grid;gap:4px}.actions-footer b{font-size:11px;color:#4a3c2a}.actions-footer span{font-size:10px;color:#8c7b64}.bottom-buttons{display:flex;flex-wrap:wrap;gap:8px}
.privacy{display:flex;gap:12px;align-items:start;margin:22px 0;background:#f8f0e0;border:1px solid #e1cfac;border-radius:11px;padding:17px 18px}.privacy span{color:#a87e40;font-size:23px}.privacy p{margin:0;color:#7c6951;font-size:11px;line-height:1.75}.privacy strong{color:#5c4426}
footer{border-top:1px solid #ded5c9;padding:20px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-weight:840;letter-spacing:1.2px;font-size:10px;color:#8f826f}footer i{font-style:normal;color:#ae813a}
.vault-overlay{position:fixed;inset:0;background:#151510db;z-index:200;display:grid;place-items:center;padding:18px;backdrop-filter:blur(5px)}.vault-card{background:#fff;padding:29px 28px;border-radius:16px;border:1px solid #e1d2b7;box-shadow:0 40px 90px #0005;width:min(100%,435px)}
.vault-icon{height:50px;width:50px;border-radius:12px;background:#f3e5c9;color:#99702f;display:grid;place-items:center;font-size:27px}.vault-heading{margin-top:22px;letter-spacing:1.8px;color:#97722f;font-size:10px;font-weight:850}.vault-card h2{font-size:26px;letter-spacing:-1px;color:#2b261f;margin:8px 0}.vault-card p{font-size:12px;color:#756d60;line-height:1.7}.vault-card label{font-size:11px;font-weight:760;color:#574b3a;display:grid;gap:8px;margin:15px 0}.vault-card input{min-height:46px;border:1px solid #d6c7ac;border-radius:8px;padding:11px;background:#fdfbf7;outline:none}.vault-card input:focus{border-color:#ab7e32}.vault-card .full{width:100%;margin-top:10px}.vault-card .vault-note{font-size:10px;padding-top:16px;border-top:1px solid #eee5d8;margin:20px 0 0}.form-error{color:#9e392b!important;font-size:11px!important;min-height:15px}
.busy{position:fixed;inset:0;background:#13110db8;z-index:300;display:grid;place-items:center}.busy>div{background:#fff;border-radius:14px;padding:30px;display:grid;text-align:center;justify-items:center;gap:13px;max-width:340px}.busy strong{font-size:13px}.busy small{font-size:11px;color:#877a6a}.spinner{width:38px;height:38px;border:3px solid #ede1cd;border-top-color:#a97b34;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.toast{position:fixed;left:50%;bottom:18px;transform:translate(-50%,15px);border-radius:10px;background:#29251e;color:#fff7e8;font-weight:740;font-size:11px;padding:12px 16px;z-index:350;max-width:calc(100vw - 26px);text-align:center;opacity:0;visibility:hidden;transition:.2s;box-shadow:0 12px 40px #21190b45}.toast.show{transform:translate(-50%,0);opacity:1;visibility:visible}.toast.error{background:#993e30}
.listbox{display:grid;gap:11px}.listbox>p{background:#fff;border:1px dashed #d8c7a9;border-radius:12px;padding:28px;color:#8c7d64;text-align:center;font-size:12px}.draft-row{background:#fff;border:1px solid #e2d6c2;border-radius:11px;padding:15px;display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.draft-icon{width:45px;height:45px;background:#f5e7cd;color:#986d27;border:1px solid #debf88;display:grid;place-items:center;border-radius:11px;font-size:21px}.draft-meta{display:grid;gap:5px;flex:1;min-width:130px}.draft-meta strong{font-size:12px;color:#493b29}.draft-meta small{font-size:10px;color:#8a7c69}.draft-actions{display:flex;gap:7px;flex-wrap:wrap}.draft-actions .button{min-height:36px;padding:8px;font-size:10px}
.sync-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:17px}.sync-intro,.note-panel p{color:#897967;font-size:12px;line-height:1.8}.sync-buttons{display:flex;gap:8px;flex-wrap:wrap}.sync-message{font-size:11px;color:#8c7652;padding:12px;background:#fbf3e3;border:1px solid #e4d1ac;border-radius:8px;line-height:1.65}
.note-panel h3{font-size:18px;color:#443524}.note-panel p{padding-bottom:16px;border-bottom:1px solid #efe5d5}
@media(max-width:980px){.grid,.sync-grid{grid-template-columns:1fr}.top{padding:12px 19px}}
@media(max-width:630px){.top{padding:9px 13px;min-height:69px;gap:8px}.brand{gap:7px}.brand img{max-width:142px;height:44px;padding:4px}.brand span{font-size:9px;letter-spacing:1px}.header-tools{gap:5px}.net-pill{font-size:8px;padding:6px}.small-link{font-size:9px;padding:6px}main{padding:15px 13px 23px}.hero{padding:28px 20px;border-radius:13px}.hero h1{font-size:32px;letter-spacing:-1.3px}.hero p{font-size:11px}.hero-meta{gap:6px}.hero-meta span{font-size:9px;padding:5px}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.tab{padding:10px 8px;font-size:10px}.tabs .tab:last-child{grid-column:span 2}.panel{padding:14px 13px}.stepheading h2{font-size:18px}.capture-box{min-height:220px}.grid{gap:13px}.editor-shell{max-height:345px}.canvas-stage canvas,.canvas-stage{max-height:313px}.editor-actions .tool{font-size:10px}.actions-footer{align-items:start;flex-direction:column}.bottom-buttons{display:grid;width:100%;grid-template-columns:1fr 1fr}.bottom-buttons .button{font-size:11px;padding:9px}.vault-card{padding:23px 19px}.sync-buttons{display:grid;grid-template-columns:1fr}.draft-row{gap:10px}.draft-actions{width:100%}.draft-actions .button{flex:1}footer{justify-content:center;text-align:center}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Mobile review, quality and receipts */
.quality-message {color:#cbb583;line-height:1.5;margin:12px 0;font-size:13px}
.review-dialog {background:#181919;color:#f4f1e9;border:1px solid #ad8e4d;border-radius:16px;width:min(680px,calc(100% - 28px));max-height:88vh;padding:22px;overflow:auto}
.review-dialog::backdrop {background:#000b}
.review-pages {display:flex;gap:12px;overflow-x:auto;margin:18px 0;padding:4px}
.review-pages figure {flex:0 0 180px;margin:0}
.review-pages img {width:100%;height:230px;object-fit:contain;background:#eee}
.review-pages figcaption {font-size:12px;line-height:1.5}
.review-dialog .editor-actions {flex-wrap:wrap;margin-top:18px}
#uploadProgress {width:100%;accent-color:#c5a15c;margin-top:14px}
#uploadStage,#staffLoginError {font-size:13px;line-height:1.5}
#staffLogin {border-top:1px solid #5b503c;padding-top:14px;margin:16px 0}
.draft-meta small {white-space:normal;overflow-wrap:anywhere}
.draft-row {min-width:0}
@media(max-width:630px){.review-pages figure{flex-basis:150px}.review-pages img{height:200px}.draft-actions{flex-wrap:wrap}}

.review-pages figure.expanded{flex-basis:95%}.review-pages figure.expanded img{height:65vh;cursor:zoom-out}.review-pages img{cursor:zoom-in}

#installApp{margin-bottom:18px}#offlineReadiness{margin:10px 0;color:#dbc393}#saveStatus{max-width:280px;overflow-wrap:anywhere}
@media(max-width:630px){input,select,textarea{font-size:16px!important}.button,.tool{min-height:44px}.bottom-buttons{flex-wrap:wrap}.top{padding-top:max(14px,env(safe-area-inset-top))}.toast{bottom:max(18px,env(safe-area-inset-bottom))}.review-dialog{padding:18px}.hero h1{font-size:clamp(31px,8vw,44px)}}
