:root{--bg: #f7efe6;--surface: #ffffff;--text: #2b2420;--muted: #7a6d63;--border: #eadfd3;--accent: #e07a5f;--accent-strong: #c9654b;--accent-soft: #fbe3da;--ok: #3d8b6a;--warn-bg: #fff4d6;--warn-text: #8a6100;--danger: #c0392b;--radius: 16px;--shadow: 0 1px 2px rgba(60, 40, 20, .05), 0 4px 16px rgba(60, 40, 20, .06);color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:ui-rounded,SF Pro Rounded,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.45}button,input,textarea{font:inherit;color:inherit}.app{max-width:520px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;padding:max(14px,env(safe-area-inset-top)) 16px 8px}.brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:20px;letter-spacing:-.02em}.brand-mark{width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center}.pill{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-size:13px;font-weight:600}.pill.warn{background:var(--warn-bg);color:var(--warn-text);border-color:transparent}.stepper{list-style:none;display:flex;gap:4px;padding:6px 16px 4px;margin:0}.stepper li{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;color:var(--muted);font-size:12px}.stepper li:before{content:"";position:absolute;top:13px;left:calc(-50% + 16px);right:calc(50% + 16px);height:2px;background:var(--border)}.stepper li:first-child:before{display:none}.stepper li.done:before,.stepper li.current:before{background:var(--accent)}.stepper .dot{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:2px solid var(--border);font-weight:700;font-size:12px}.stepper li.current{color:var(--text);font-weight:600}.stepper li.current .dot{border-color:var(--accent);color:var(--accent)}.stepper li.done .dot{background:var(--accent);border-color:var(--accent);color:#fff}.content{flex:1;padding:12px 16px 24px}h1{font-size:26px;line-height:1.2;letter-spacing:-.02em;margin:8px 0 6px}h2{font-size:17px;margin:0 0 12px}.lead{color:var(--muted);margin:0 0 18px}.hint{color:var(--muted);font-size:13px;margin:0 0 10px}.center{text-align:center}.req{color:var(--accent)}.card{background:var(--surface);border-radius:var(--radius);padding:18px 16px;box-shadow:var(--shadow);margin:0 0 14px}.card-head{display:flex;justify-content:space-between;align-items:baseline}.country-list{display:grid;gap:12px}.country-card{display:flex;align-items:center;gap:14px;width:100%;padding:18px 16px;text-align:left;background:var(--surface);border:2px solid transparent;border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;transition:transform .1s,border-color .15s}.country-card:active{transform:scale(.98)}.country-card.selected,.country-card:hover{border-color:var(--accent)}.country-card .flag{font-size:36px;line-height:1}.country-text{flex:1;display:flex;flex-direction:column}.country-text small{color:var(--muted)}.chev{font-size:28px;color:var(--muted)}.field{margin:0 0 16px;border:0;padding:0;min-width:0}.field:last-child{margin-bottom:0}.field>label,legend{display:block;font-weight:600;font-size:14px;margin:0 0 6px;padding:0}input[type=text],input[type=tel],textarea{width:100%;padding:13px 14px;border-radius:12px;border:1.5px solid var(--border);background:#fffdfb;font-size:16px;outline:none;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical}input:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.has-error input,.has-error textarea{border-color:var(--danger)}.error{color:var(--danger);font-size:13px;margin:6px 0 0}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.row .field{margin:0}.phone-input{display:flex}.phone-code{display:grid;place-items:center;padding:0 12px;border:1.5px solid var(--border);border-right:0;border-radius:12px 0 0 12px;background:var(--bg);font-weight:600}.phone-input input{border-radius:0 12px 12px 0}.note{background:var(--warn-bg);color:var(--warn-text);font-size:13px;padding:10px 12px;border-radius:10px;margin:0 0 12px}.choice-grid{display:grid;gap:10px}.choice-grid.three{grid-template-columns:repeat(3,1fr)}.choice-grid.two{grid-template-columns:repeat(2,1fr)}.choice{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 6px 12px;border:2px solid var(--border);border-radius:14px;cursor:pointer;color:var(--muted);background:#fffdfb;text-align:center;font-weight:600;font-size:14px;transition:border-color .15s,background .15s,color .15s;-webkit-tap-highlight-color:transparent}.choice small{font-weight:500;font-size:12px}.choice input{position:absolute;opacity:0;pointer-events:none}.choice.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.choice:has(input:focus-visible){box-shadow:0 0 0 3px var(--accent-soft)}.choice .check{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff;font-size:12px;display:grid;place-items:center}.has-error .choice{border-color:#f0c4bd}.sub{background:var(--bg);padding:12px;border-radius:12px}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:8px}.segmented label{display:flex;flex-direction:column;align-items:center;padding:10px;border-radius:10px;border:2px solid var(--border);background:var(--surface);font-weight:600;font-size:14px;cursor:pointer}.segmented label small{color:var(--muted);font-weight:500}.segmented input{position:absolute;opacity:0;pointer-events:none}.segmented label.selected{border-color:var(--accent);color:var(--accent-strong)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:14px;padding:15px 18px;font-weight:700;font-size:16px;cursor:pointer;background:var(--surface);color:var(--text);transition:transform .1s,opacity .15s}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:var(--accent-strong)}.btn.ghost{background:transparent;border:1.5px solid var(--border)}.btn.block{width:100%}.btn.grow{flex:1}.btn.small{padding:8px 14px;font-size:14px;border-radius:10px;background:var(--accent-soft);color:var(--accent-strong)}.btn.add{width:100%;margin:0 0 14px;border:2px dashed var(--accent);background:transparent;color:var(--accent-strong)}.link{background:none;border:0;padding:0;color:var(--accent-strong);font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.link.danger{color:var(--danger)}.actions{display:flex;gap:10px;margin-top:8px}.actions.sticky{position:sticky;bottom:0;margin:8px -16px -24px;padding:12px 16px max(12px,env(safe-area-inset-bottom));background:linear-gradient(to top,var(--bg) 70%,transparent)}.lines{list-style:none;padding:0;margin:0 0 12px}.lines li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.lines li>div:first-child{display:flex;flex-direction:column}.lines small{color:var(--muted)}.price{display:flex;flex-direction:column;align-items:flex-end;white-space:nowrap;font-weight:600}.price s{color:var(--muted);font-weight:400;font-size:13px}.promo{background:var(--accent-soft);color:var(--accent-strong);padding:10px 12px;border-radius:10px;font-size:13px;margin:0 0 12px}.totals{margin:0}.totals div{display:flex;justify-content:space-between;gap:12px;padding:4px 0}.totals dt{color:var(--muted)}.totals dd{margin:0;font-weight:600;white-space:nowrap}.totals .discount dd{color:var(--ok)}.totals .unique dt small{display:block;font-size:12px}.exact-note{margin-top:6px;font-size:12px;color:var(--warn-text);background:var(--warn-bg);padding:6px 10px;border-radius:8px;align-self:center}.totals .grand{border-top:1px solid var(--border);margin-top:6px;padding-top:10px;font-size:18px}.totals .grand dt{color:var(--text);font-weight:700}.totals .grand dd{font-weight:800}.address{margin:0;color:var(--muted)}.address strong{color:var(--text)}.pay-card{text-align:center}.pay-amount{display:flex;flex-direction:column;margin-bottom:14px}.pay-amount small{color:var(--muted)}.pay-amount strong{font-size:30px;letter-spacing:-.02em}.qr{position:relative;width:min(240px,70vw);margin:0 auto}.qr svg{display:block;width:100%;border-radius:12px;border:1px solid var(--border)}.qr-img{width:min(240px,70vw);border-radius:12px}.qr-badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-12deg);background:var(--accent);color:#fff;font-weight:800;font-size:13px;letter-spacing:.1em;padding:6px 12px;border-radius:8px}.qr-caption{margin:8px 0 14px;color:var(--muted);font-weight:600}.order-id{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;background:var(--bg);border-radius:12px;padding:10px 12px;margin-bottom:10px}.order-id small{display:block;color:var(--muted);font-size:12px}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700}.dropzone{display:flex;flex-direction:column;align-items:center;gap:4px;padding:28px 16px;cursor:pointer;border:2px dashed var(--border);border-radius:14px;background:#fffdfb;text-align:center}.dropzone small{color:var(--muted)}.dz-icon{width:44px;height:44px;border-radius:50%;background:var(--accent-soft);color:var(--accent-strong);display:grid;place-items:center;font-size:20px}.proof-preview img{width:100%;max-height:360px;object-fit:contain;border-radius:12px;background:var(--bg)}.proof-meta{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:var(--muted);margin-top:6px}.proof-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.demo-banner{font-size:13px;text-align:center;color:var(--warn-text);background:var(--warn-bg);padding:8px;border-radius:10px}.thanks{text-align:center}.thanks-art{width:100%;max-width:280px;margin:8px auto 0;display:block}.eta{display:flex;flex-direction:column;gap:2px}.eta small{color:var(--muted)}.eta strong{font-size:24px;color:var(--accent-strong)}.receipt{text-align:left}.receipt div{display:flex;justify-content:space-between;padding:6px 0}.receipt dt{color:var(--muted)}.receipt dd{margin:0;font-weight:600}@media (min-width: 560px){.content{padding-top:20px}h1{font-size:30px}}.choice.product{padding:0;gap:0;overflow:hidden}.choice-hit{all:unset;box-sizing:border-box;width:100%;cursor:pointer;position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 6px 10px}.choice-hit:focus-visible{box-shadow:inset 0 0 0 3px var(--accent-soft)}.choice.product .check{min-width:22px;width:auto;padding:0 6px;border-radius:999px;font-weight:700}.choice-sub{font-size:12px;padding:0 0 10px}.qty{display:flex;align-items:center;justify-content:space-between;width:calc(100% - 16px);margin:0 8px 8px;background:var(--surface);border-radius:10px;border:1.5px solid var(--border)}.qty button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;width:40px;height:36px;font-size:20px;font-weight:700;color:var(--accent-strong);cursor:pointer}.qty button:disabled{color:var(--border);cursor:default}.qty span{min-width:24px;text-align:center;font-weight:700;color:var(--text)}.frame-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.frame-row+.frame-row{border-top:1px solid var(--border)}.frame-row>div:first-child{display:flex;flex-direction:column}.frame-row small{color:var(--muted);font-size:12px}.frame-row .qty{width:128px;margin:0;flex:none}.hint.tight{margin:8px 0 0}.segmented.arrange{margin-bottom:12px}.segmented.arrange button{display:flex;flex-direction:column;align-items:center;padding:10px;border-radius:10px;border:2px solid var(--border);background:var(--surface);font-weight:600;font-size:14px;cursor:pointer}.segmented.arrange button small{color:var(--muted);font-weight:500}.segmented.arrange button.selected{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.piece-list,.frame-summary{list-style:none;padding:0;margin:8px 0 12px}.piece-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0}.piece-list span{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.piece-list select{font:inherit;font-size:15px;padding:8px 10px;border-radius:10px;border:1.5px solid var(--border);background:#fffdfb}.frame-summary li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;background:var(--bg);margin-bottom:6px}.frame-summary li>div{display:flex;flex-direction:column;min-width:0}.frame-summary small{color:var(--muted)}.frame-summary li>span{font-weight:700;white-space:nowrap}.frame-summary li.over{background:#fbe1dd;color:var(--danger)}.tiers summary{cursor:pointer;color:var(--accent-strong);font-weight:600;font-size:14px}.tiers table{width:100%;margin-top:8px;border-collapse:collapse;font-size:14px}.tiers td{padding:6px 0;border-bottom:1px solid var(--border)}.tiers td:last-child{text-align:right;font-weight:600}.times{color:var(--accent-strong);font-weight:700}.lines li.addon strong{color:var(--accent-strong)}.lead-alt{display:block;margin-top:4px;font-size:14px;opacity:.85}.pay-type{margin-bottom:12px}.pay-type label{display:flex;flex-direction:column;gap:2px}.dp-note{background:var(--warn-bg);color:var(--warn-text);border-radius:12px;padding:12px 14px;font-size:13px}.dp-note ul{margin:6px 0 0;padding-left:18px}.dp-note li+li{margin-top:4px}.card.balance h2{margin-top:0}.btn.wa{background:#1f9d55;color:#fff;text-align:center;text-decoration:none;display:block}.btn.wa:hover{background:#1a8648}.admin{max-width:1180px;margin:0 auto;padding:12px 16px 48px}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0 14px}.admin-top-actions{display:flex;gap:8px}.admin-login{max-width:420px;padding-top:12vh}.admin-login .brand{margin-bottom:16px}.admin-error{margin:0 0 12px}.status-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:12px;scrollbar-width:none}.status-tabs button{flex:none;border:1.5px solid var(--border);background:var(--surface);border-radius:999px;padding:8px 14px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;color:var(--text)}.status-tabs button.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.status-tabs .count{display:inline-block;min-width:22px;padding:0 6px;border-radius:999px;background:var(--bg);font-size:12px;text-align:center;margin-left:4px}.admin-tools{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:10px}.admin-tools input[type=search]{width:100%;padding:10px 12px;border-radius:10px;border:1.5px solid var(--border);background:var(--surface);font:inherit;font-size:15px;color:var(--text)}.admin-tools label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.admin-tools label span{flex:none;width:64px}.admin select{flex:1;width:100%;min-width:0;padding:10px 12px;border-radius:10px;border:1.5px solid var(--border);background:var(--surface);font:inherit;font-size:14px;color:var(--text)}@media (min-width: 760px){.admin-tools{grid-template-columns:1.4fr 1fr 1fr}}.admin-count{color:var(--muted);font-size:13px;margin:0 0 12px}.empty{text-align:center;color:var(--muted);padding:40px 0}.order-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));align-items:start}.order-card{margin:0;min-width:0;display:flex;flex-direction:column;gap:12px}.oc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.oc-id{font-size:13px;color:var(--muted)}.oc-name{font-weight:700;font-size:16px;margin-top:2px}.oc-dates,.oc-money{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px;margin:0}.oc-dates div,.oc-money div{background:var(--bg);border-radius:10px;padding:8px 10px}.oc-dates div.active{outline:2px solid var(--accent-soft);background:#fff8f4}.oc-dates dt,.oc-money dt{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.oc-dates dd,.oc-money dd{margin:2px 0 0;font-weight:600;font-size:14px}.oc-money .due dd{color:var(--danger)}.oc-dates em{color:var(--muted);font-weight:500}.oc-pay{display:flex;flex-wrap:wrap;gap:6px}.oc-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px}.oc-controls label{flex-basis:180px}.oc-controls label{flex:1;display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);min-width:0}.oc-controls .btn{flex:none;white-space:nowrap}.oc-details summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--accent-strong)}.oc-details>*+*{margin-top:10px}.oc-details p{margin:10px 0 0;font-size:14px}.oc-items{white-space:pre-wrap;font:inherit;font-size:13px;background:var(--bg);border-radius:10px;padding:10px;margin:10px 0 0}.oc-proof{width:100%;max-height:360px;object-fit:contain;border-radius:10px;background:var(--bg)}.pill.full{background:#e6f0ff;color:#2456a6;border-color:transparent}.pill.dp{background:#ffe6cc;color:#8a4b00;border-color:transparent}.pill.ps-pending-verification{background:var(--warn-bg);color:var(--warn-text);border-color:transparent}.pill.ps-dp-verified-awaiting-balance{background:#ffe6cc;color:#8a4b00;border-color:transparent}.pill.ps-fully-paid{background:#d9f2e4;color:#1f6a47;border-color:transparent}.pill.ps-rejected-contact-customer{background:#f9d6d2;color:var(--danger);border-color:transparent}.pill.st-in-queue{background:#eee;border-color:transparent}.pill.st-in-progress{background:#dbe9ff;color:#2456a6;border-color:transparent}.pill.st-in-delivery{background:#ece0ff;color:#5b3aa6;border-color:transparent}.pill.st-done{background:#d9f2e4;color:#1f6a47;border-color:transparent}.btn.small.primary{background:var(--accent);color:#fff}.report-panel{max-width:560px}.report-panel h2{margin:0}.report-periods{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 12px}.report-periods button{border:1.5px solid var(--border);background:var(--surface);border-radius:999px;padding:8px 14px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;color:var(--text)}.report-periods button.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.report-dates{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.report-dates label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}.report-dates input{padding:10px;border-radius:10px;border:1.5px solid var(--border);font:inherit;font-size:14px;background:var(--surface);color:var(--text);min-width:0}.report-panel .check{display:flex;gap:8px;align-items:flex-start;font-size:14px;margin-bottom:10px}.report-panel .check input{margin-top:3px}.report-count{font-size:14px;margin:0 0 12px}.admin-top-actions{flex-wrap:wrap;justify-content:flex-end}.admin-top .brand{white-space:nowrap}
