:root{font-family:Plus Jakarta Sans,system-ui,Segoe UI,sans-serif;color:#111;background:#f4f6f8}*{box-sizing:border-box}body{margin:0}.app{min-height:100vh}.topbar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;background:#0f172a;color:#fff}.topbar a{color:#cbd5e1;margin-left:1rem;text-decoration:none}main{padding:1.25rem;max-width:960px;margin:0 auto}.panel{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 1px 3px #00000014}.panel.wide{max-width:none}.banner{padding:.5rem .75rem;border-radius:8px;background:#e2e8f0;font-size:.9rem}.banner.ok{background:#dcfce7}.banner.warn{background:#fef9c3}.form label{display:block;margin-bottom:.75rem}.form input[type=file],.form input[type=number],.form input[type=text]{display:block;width:100%;margin-top:.25rem;padding:.5rem}.form button{margin-top:.5rem;padding:.6rem 1rem;background:#2563eb;color:#fff;border:none;border-radius:8px;cursor:pointer}.row{display:flex;align-items:center;gap:.5rem}.error{color:#b91c1c}.ok{color:#15803d}.ticket{margin-top:1rem;padding:1rem;border:2px dashed #2563eb;border-radius:8px}table{width:100%;border-collapse:collapse;margin-top:1rem;font-size:.9rem}th,td{border-bottom:1px solid #e2e8f0;padding:.5rem;text-align:left}.actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.actions button{padding:.35rem .6rem;border-radius:6px;border:none;background:#2563eb;color:#fff;cursor:pointer}.actions button.ghost{background:#64748b}.settings.inline{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.steps-inline{display:flex;gap:.75rem;list-style:none;padding:0;margin:0 0 1rem;font-size:.85rem}.steps-inline li{padding:.35rem .6rem;background:#e2e8f0;border-radius:999px}.steps-inline li.active{background:#2563eb;color:#fff}.pay-fieldset{border:1px solid #e2e8f0;border-radius:8px;padding:.75rem;margin:.75rem 0}.pay-fieldset legend{padding:0 .25rem}.muted{opacity:.65}.warn-box{background:#fef9c3;padding:.75rem;border-radius:8px}.qr-page{text-align:center;max-width:420px;margin:0 auto}.qr-page .sub{color:#64748b}.qr-img{margin:1rem auto;display:block;border:8px solid #fff;box-shadow:0 2px 12px #0000001f}.qr-page .url{font-size:.8rem;word-break:break-all;color:#475569}.qr-page .steps{text-align:left;margin:1.5rem auto;max-width:280px}.qr-page .fine{font-size:.75rem;color:#64748b}.steps-hint{font-size:.8rem;color:#64748b}.tag{display:inline-block;font-size:.7rem;background:#e0e7ff;padding:.1rem .35rem;border-radius:4px;margin-left:.25rem}.qsp-theme .topbar{background:linear-gradient(135deg,#5b21b6,#7c3aed)}.qsp-theme .brand{color:#fff;text-decoration:none;font-weight:700}.qsp-theme .tagline{display:block;font-size:.7rem;font-weight:400;opacity:.9}.login-wrap{min-height:70vh;display:grid;place-items:center;background:linear-gradient(160deg,#ede9fe,#f8fafc);margin:-1.25rem;padding:2rem}.login-card{width:100%;max-width:420px;background:#fff;border-radius:16px;padding:2rem;box-shadow:0 12px 40px #5b21b626;text-align:center}.login-icon{width:64px;height:64px;margin:0 auto 1rem;border-radius:50%;background:#ede9fe;display:grid;place-items:center;font-size:1.75rem}.login-btn{width:100%;padding:.75rem;border:none;border-radius:10px;background:linear-gradient(135deg,#6d28d9,#7c3aed);color:#fff;font-weight:600;cursor:pointer}.muted{color:#64748b}.fine{font-size:.8rem;color:#64748b}.dashboard{max-width:1100px}.dash-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.dash-actions{display:flex;gap:.5rem;align-items:center}.tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem}.tabs button{border:1px solid #e2e8f0;background:#fff;padding:.45rem .85rem;border-radius:999px;cursor:pointer}.tabs button.active{background:#7c3aed;color:#fff;border-color:#7c3aed}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.card{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 1px 3px #00000014}.card.wide{grid-column:1 / -1}.status-list{padding-left:1.1rem}.link-btn{display:inline-block;margin-top:.5rem;padding:.5rem 1rem;background:#7c3aed;color:#fff;text-decoration:none;border-radius:8px}.msg-preview{background:#fef9c3;padding:.75rem;border-radius:8px}.shop-msg{background:#dbeafe;padding:.75rem;border-radius:8px;margin-bottom:.75rem}.lang-switch{display:flex;gap:.35rem;margin-bottom:.75rem}.lang-switch button{border:1px solid #cbd5e1;background:#fff;padding:.4rem .75rem;border-radius:999px;cursor:pointer;font-weight:600}.lang-switch.big{background:#0000002e;padding:.2rem;border-radius:999px}.lang-switch button.active{background:#7c3aed;color:#fff}button.ghost{background:#64748b;color:#fff;border:none;padding:.35rem .65rem;border-radius:6px;cursor:pointer}.form textarea{width:100%;margin-top:.25rem;padding:.5rem}.app-panel{background:#f1f5f9}.main-panel{max-width:none;padding:0;margin:0}.dash-shell{display:flex;min-height:100vh}.side-nav{width:280px;flex-shrink:0;background:linear-gradient(180deg,#312e81,#4c1d95 40%,#5b21b6);color:#e9d5ff;padding:1rem .75rem;display:flex;flex-direction:column;gap:.5rem;position:fixed;top:0;left:0;bottom:0;z-index:100;overflow-y:auto;transform:translate(-100%);transition:transform .2s ease}.side-nav.open{transform:translate(0)}@media (min-width: 900px){.side-nav{position:sticky;transform:none}.menu-toggle,.side-overlay{display:none!important}}.shop-picker{display:flex;align-items:center;gap:.7rem;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:.65rem .75rem;margin-bottom:.5rem}.shop-picker-label{font-size:.7rem;opacity:.8;display:block}.shop-picker-value{font-weight:600;color:#fff;font-size:.95rem}.side-menu{display:flex;flex-direction:column;gap:.25rem;flex:1}.side-item{display:flex;align-items:center;gap:.5rem;width:100%;text-align:left;padding:.65rem .75rem;border:none;border-radius:10px;background:transparent;color:#e9d5ff;cursor:pointer;font-size:.9rem}.side-item:hover{background:#ffffff14}.side-item.active{background:linear-gradient(90deg,#ec4899,#a855f7);color:#fff;font-weight:600}.side-item.danger .side-label{color:#fdba74}.side-icon{width:1.5rem;text-align:center}.side-label{flex:1}.side-badge{font-size:.6rem;background:linear-gradient(90deg,#f97316,#eab308);color:#fff;padding:.15rem .35rem;border-radius:4px;font-weight:700}.side-support{background:#0003;border-radius:12px;padding:.85rem;font-size:.8rem;margin-top:.5rem}.side-support p{margin:.35rem 0 .65rem;opacity:.85}.side-support-btn{display:block;text-align:center;padding:.5rem;border-radius:8px;background:linear-gradient(90deg,#ec4899,#a855f7);color:#fff;text-decoration:none;font-weight:600}.side-footer{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.side-logout{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.5rem;border-radius:8px;cursor:pointer}.side-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:90;border:none}.dash-main{flex:1;min-width:0;padding:1rem}@media (min-width: 900px){.dash-main{margin-left:0}}.dash-topbar{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem;background:#fff;padding:1rem;border-radius:12px;box-shadow:0 1px 3px #0000000f}.dash-topbar h2{margin:0;font-size:1.25rem}.breadcrumb{margin:.25rem 0 0;font-size:.8rem;color:#64748b}.menu-toggle{font-size:1.25rem;padding:.35rem .6rem;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer}.dash-content{max-width:900px}.pad{padding:0 .25rem}.hero-greet h1{margin:0 0 .25rem}.shop-profile-card{display:flex;align-items:center;gap:1rem;background:#fff;padding:1.25rem;border-radius:12px;margin:1rem 0;box-shadow:0 1px 3px #00000014}.shop-avatar{width:56px;height:56px;border-radius:50%;background:#ede9fe;color:#5b21b6;display:grid;place-items:center;font-size:1.5rem;font-weight:700}.mono{font-family:ui-monospace,monospace;font-size:.85rem;color:#64748b}.agent-card{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #a7f3d0;border-radius:16px;padding:1.25rem;margin-bottom:1rem}.agent-card h3{margin-top:0;color:#065f46}.check-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.75rem;color:#047857;font-size:.9rem}.agent-btns{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.btn-green,.btn-blue{display:block;text-align:center;padding:.75rem 1rem;border-radius:10px;font-weight:600;text-decoration:none;border:none;cursor:pointer}.btn-green{background:#059669;color:#fff}.btn-blue{background:#2563eb;color:#fff}.app-panel .login-wrap{min-height:100vh;margin:0}.panel-block{margin-bottom:1rem}.btn-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.pill{border:1px solid #cbd5e1;background:#fff;padding:.45rem .75rem;border-radius:999px;cursor:pointer;font-size:.85rem}.pill.active,.pill.ok{background:#dcfce7;border-color:#86efac}.pill.warn{background:#fef9c3}.compact{width:100%;font-size:.85rem}.qr-inline{display:block;margin:.75rem 0}.job-row{padding:.35rem 0;border-bottom:1px solid #f1f5f9;font-size:.9rem}.range-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;margin-bottom:.5rem}.range-block{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.pay-option,.toggle-row{padding:.35rem 0}main.main-customer{max-width:none;margin:0;padding:0;width:100%;overflow-x:hidden}.customer-shell{max-width:430px;margin:0 auto;padding:0 0 8.5rem;min-height:100dvh}.customer-hero{background:linear-gradient(145deg,color-mix(in srgb,var(--shop-accent, #7c3aed) 70%,#1e1b4b),var(--shop-accent, #7c3aed) 55%,#a855f7);color:#fff;padding:1rem 1rem 1.25rem;border-radius:0 0 22px 22px;margin:0 0 .85rem;box-shadow:0 8px 32px #5b21b659}.customer-hero-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.customer-hero-top .lang-switch{margin-bottom:0}.gate-hero .customer-hero-top{justify-content:center}.customer-hero h1{margin:0;font-size:1.35rem}.customer-tagline{margin:.35rem 0 0;opacity:.92;font-size:.9rem}.customer-address{margin:.5rem 0 0;font-size:.8rem;opacity:.85}.live-pill{font-size:.7rem;padding:.25rem .55rem;border-radius:999px;background:#0003}.live-pill.ok{background:#10b98159}.steps-progress{list-style:none;padding:0;margin:0 .85rem .75rem;display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem}.steps-progress li{text-align:center;font-size:.72rem;padding:.5rem .25rem;background:#e2e8f0;border-radius:10px;color:#64748b}.steps-progress li.active{background:linear-gradient(135deg,#6d28d9,#a855f7);color:#fff;font-weight:600}.step-num{display:block;font-size:.85rem;font-weight:700}.trust-strip{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.75rem;font-size:.68rem}.trust-strip span{background:#f1f5f9;padding:.35rem .5rem;border-radius:999px;color:#475569}.banner.slim{font-size:.78rem;margin-bottom:.75rem}.customer-card{background:#fff;border-radius:16px;padding:1.1rem;box-shadow:0 4px 24px #0f172a14}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1rem}.service-chip{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.65rem;border:2px solid #e2e8f0;border-radius:12px;background:#fafafa;cursor:pointer;font-size:.75rem}.service-chip.active{border-color:#7c3aed;background:#f5f3ff;font-weight:600}.service-chip span:first-child{font-size:1.25rem}.upload-zone{border:2px dashed #cbd5e1;border-radius:12px;padding:1rem;margin-bottom:1rem;background:#f8fafc}.upload-title{margin:0 0 .5rem;font-size:.85rem;color:#475569}.file-list{list-style:none;padding:0;margin:.75rem 0 0}.file-list li{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0;border-bottom:1px solid #e2e8f0;font-size:.8rem}.file-remove{border:none;background:#fee2e2;color:#b91c1c;width:1.5rem;height:1.5rem;border-radius:50%;cursor:pointer}.option-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}.check-pill{align-self:end;background:#f1f5f9;padding:.5rem;border-radius:8px}.price-preview{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.75rem;background:linear-gradient(90deg,#ecfdf5,#d1fae5);border-radius:10px;margin-bottom:.75rem}.price-preview strong{font-size:1.35rem;color:#065f46}.pay-card{padding:.5rem 0;align-items:flex-start}.pay-card strong{display:block}.customer-cta{width:100%;padding:.85rem;border:none;border-radius:12px;background:linear-gradient(135deg,#6d28d9,#ec4899);color:#fff;font-weight:700;font-size:1rem;cursor:pointer;margin-top:.5rem}.customer-cta:disabled{opacity:.5;cursor:not-allowed}.ticket-pro{text-align:center}.token-display{font-size:2.5rem;font-weight:800;letter-spacing:.05em;color:#5b21b6;margin:.5rem 0}.mono{font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums}.order-no-tag{display:inline-block;font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#94a3b8;margin-right:.35rem}.order-no-inline{display:inline-flex;align-items:baseline;gap:.25rem;flex-wrap:wrap}.order-no-wrap{margin:.35rem 0 .75rem}.order-no-label{display:block;font-size:.78rem;color:#64748b;margin-bottom:.2rem}.order-no-row{display:flex;align-items:center;justify-content:center;gap:.65rem;flex-wrap:wrap}.order-no-value{font-size:2.35rem;font-weight:800;letter-spacing:.12em;color:#4c1d95;line-height:1.1}.order-no-copy{font-size:.75rem;padding:.35rem .65rem;border-radius:10px}.order-no-hint{display:block;text-align:center;margin-top:.25rem;color:#059669}.ticket-order-no .order-no-label{text-align:center}.theme-dark .order-no-label,.theme-dark .order-no-tag{color:#cbd5e1}.theme-dark .order-no-value,.theme-dark .token-display{color:#e9d5ff}.hist-order-line{display:flex;align-items:baseline;gap:.35rem;flex-wrap:wrap}.ticket-amount{font-size:1.1rem;margin:0}.ticket-formula{margin:.35rem 0 0;text-align:center;max-width:22rem;margin-left:auto;margin-right:auto;line-height:1.35}.ticket-breakdown{list-style:none;padding:0;margin:.5rem auto 0;max-width:22rem;text-align:left;line-height:1.45}.ticket-breakdown li{margin-bottom:.25rem;padding-bottom:.25rem;border-bottom:1px solid rgba(148,163,184,.25)}.theme-light .ticket-breakdown li{border-bottom-color:#e2e8f0}.status-chip{display:inline-block;margin:.75rem 0;padding:.35rem .85rem;background:#fef9c3;border-radius:999px;font-size:.85rem}.online-pay-box{text-align:left;background:#eff6ff;padding:1rem;border-radius:12px;margin:.75rem 0}.online-pay-box h3{margin-top:0;font-size:1rem}.pulse{animation:pulse 1.5s ease infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.batch-files{text-align:left;margin:1rem 0}.ghost-btn{width:100%;margin-top:.75rem;padding:.6rem;border:1px solid #cbd5e1;border-radius:10px;background:#fff;cursor:pointer}.order-list{display:flex;flex-direction:column;gap:.75rem}.order-card{border:1px solid #e2e8f0;border-radius:12px;padding:.85rem}.order-card header{display:flex;gap:.75rem;align-items:center;margin-bottom:.35rem}.order-controls{display:flex;flex-wrap:wrap;gap:.5rem;align-items:end;margin:.5rem 0}.order-controls select,.order-controls button{padding:.4rem .6rem}.history-table{font-size:.8rem}.job-actions{display:flex;flex-wrap:wrap;gap:.4rem .65rem;align-items:center;margin-top:.5rem}.history-table .job-actions{margin-top:.4rem;flex-direction:row;align-items:center}.job-actions .ghost{font-size:.78rem;padding:.28rem .55rem}.reprint-row{display:flex;flex-wrap:wrap;gap:.4rem .55rem;align-items:center;width:100%}.reprint-row select{font:inherit;max-width:220px;padding:.35rem .45rem;border-radius:8px;border:1px solid #cbd5e1}.qsp-theme .main-customer{background:#0f172a;min-height:100vh}.slim-topbar{padding:.5rem 1rem}.slim-topbar nav a{font-size:.85rem}.upload-zone.pro{border:none;padding:0;background:transparent}.upload-drop{text-align:center;padding:1.25rem;border:2px dashed #c4b5fd;border-radius:16px;background:linear-gradient(180deg,#faf5ff,#fff)}.upload-icon{font-size:2rem;display:block;margin-bottom:.35rem}.form input.upload-hidden,.upload-hidden{display:none!important}.upload-btn{margin-top:.65rem;padding:.55rem 1.25rem;border:none;border-radius:999px;background:linear-gradient(135deg,#6d28d9,#a855f7);color:#fff;font-weight:600;cursor:pointer}.file-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.65rem;margin-top:1rem}.file-preview-card{position:relative;border-radius:12px;overflow:hidden;background:#f1f5f9;box-shadow:0 2px 8px #0000000f}.file-thumb{width:100%;aspect-ratio:1;object-fit:cover;display:block}.file-thumb-pdf,.file-thumb-doc{display:grid;place-items:center;font-weight:800;color:#5b21b6;background:linear-gradient(135deg,#ede9fe,#ddd6fe)}.file-name{font-size:.65rem;padding:.35rem;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-preview-card .file-remove{position:absolute;top:4px;right:4px}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:1rem}.stat-card{background:#fff;border-radius:12px;padding:.75rem;box-shadow:0 1px 3px #0000000f}.stat-label{display:block;font-size:.7rem;color:#64748b}.ok-text{color:#059669}.warn-text{color:#d97706}.pro-table th{background:#f8fafc}.qr-flex{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.qr-inline.shadow{box-shadow:0 8px 24px #5b21b633;border-radius:12px}.job-status{float:right;font-size:.75rem;color:#64748b}.qr-page-shell{min-height:80vh;display:grid;place-items:center;padding:1rem;background:linear-gradient(160deg,#4c1d95,#7c3aed 40%,#f8fafc 40%)}.qr-page-card{background:#fff;border-radius:24px;padding:2rem 1.5rem;text-align:center;max-width:420px;box-shadow:0 20px 50px #00000026}.qr-shop-name{font-size:1.5rem;font-weight:800;margin:0 0 .35rem;color:#312e81}.brand-line{color:#64748b;font-size:.9rem;margin:1rem 0}.qr-page-card .steps{text-align:left;margin:0 auto;max-width:260px}.qr-page-card .steps li span{display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:50%;background:#ede9fe;color:#5b21b6;font-size:.75rem;font-weight:700;margin-right:.35rem}.amount-pill{background:#ecfdf5;color:#065f46;padding:.15rem .5rem;border-radius:999px;font-size:.85rem}.orders-panel .link-btn{border:none;cursor:pointer;font-size:.9rem}.table-wrap{overflow-x:auto}.history-summary{font-weight:600;margin-bottom:.75rem}.customer-error{text-align:center;margin:.75rem 1rem 1rem}.customer-form{padding:0 .85rem 1.25rem}.cust-block{background:#111827;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:.9rem;margin-bottom:.75rem}.theme-light .cust-block{background:#fff;border-color:#e2e8f0}.cust-block h2{margin:0 0 .65rem;font-size:.95rem}.block-label{margin:.7rem 0 .4rem;font-size:.78rem;color:#94a3b8}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.choice-grid.four{grid-template-columns:repeat(4,1fr)}.choice-btn{min-height:3.1rem;border:2px solid #334155;background:#1e293b;color:#e2e8f0;border-radius:12px;padding:.45rem .4rem;cursor:pointer;text-align:center}.choice-btn strong{display:block;font-size:.85rem}.choice-btn span{display:block;font-size:.65rem;opacity:.75;margin-top:.15rem}.choice-btn.on{border-color:var(--shop-accent, #a855f7);background:color-mix(in srgb,var(--shop-accent, #7c3aed) 30%,#0f172a);color:#fff;box-shadow:0 0 0 1px var(--shop-accent, #a855f7)}.stepper{display:flex;align-items:center;justify-content:center;gap:1.25rem;background:#1e293b;border-radius:12px;padding:.45rem}.stepper button{width:2.6rem;height:2.6rem;border:none;border-radius:10px;background:var(--shop-accent, #7c3aed);color:#fff;font-size:1.4rem;cursor:pointer}.stepper strong{min-width:2rem;text-align:center;font-size:1.35rem}.cust-block textarea{width:100%;border-radius:12px;border:1px solid #334155;background:#0f172a;color:#f8fafc;padding:.75rem;font:inherit}.sticky-pay{position:sticky;bottom:0;z-index:20;display:flex;gap:.75rem;align-items:center;padding:.75rem .25rem calc(.75rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,#0f172a 28%)}.sticky-pay>div{display:flex;flex-direction:column;min-width:5.5rem}.sticky-pay span{font-size:.7rem;color:#94a3b8}.sticky-pay strong{font-size:1.2rem;color:#6ee7b7}.sticky-pay .estimate-foot{display:block;margin-top:.2rem;font-size:.62rem;line-height:1.35;color:#cbd5e1;max-width:14rem}.sticky-pay .customer-cta{flex:1;margin:0}.steps-progress{margin:0 .85rem .75rem}.shop-msg,.customer-shell .banner{margin-left:.85rem;margin-right:.85rem}@media (max-width: 380px){.choice-grid.four{grid-template-columns:repeat(2,1fr)}}.queue-mini{display:flex;justify-content:space-between;gap:.35rem;margin-top:.85rem;font-size:.72rem;background:#0000002e;border-radius:10px;padding:.45rem .55rem}.queue-mini.dark{background:#1e293b;color:#e2e8f0;margin:.75rem 0}.hist-chip{border:none;background:#ffffff29;color:#fff;border-radius:999px;padding:.35rem .7rem;font-weight:600;cursor:pointer;font-size:.75rem}.summary-list{list-style:none;padding:0;margin:0 0 1rem}.summary-list li{display:flex;justify-content:space-between;gap:.75rem;padding:.45rem 0;border-bottom:1px solid #334155;font-size:.9rem}.summary-list li>span:first-child{color:#cbd5e1;font-size:.78rem}.summary-list li b{color:#f8fafc;font-weight:700;text-align:right}.pay-total{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;padding:.75rem;border-radius:12px;background:#064e3b;color:#ecfdf5;margin-bottom:.75rem}.pay-total-row{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.pay-total strong{font-size:1.6rem}.pay-estimate-note{margin:0;font-size:.7rem;line-height:1.35;color:#ecfdf5eb;opacity:.95}.theme-light .summary-list li>span:first-child{color:#475569}.theme-light .summary-list li b{color:#0f172a}.theme-light .pay-estimate-note{color:#ecfdf5}.queue-box{background:#1e293b;border-radius:12px;padding:.85rem;margin:.75rem 0;text-align:left}.hist-row{width:100%;display:flex;justify-content:space-between;gap:.5rem;align-items:center;padding:.7rem;margin-bottom:.45rem;border:1px solid #334155;border-radius:12px;background:#1e293b;color:#f8fafc;cursor:pointer;text-align:left}.cust-block input[type=text],.cust-block input:not([type=file]):not([type=checkbox]):not([type=radio]){width:100%;margin-top:.25rem;padding:.65rem;border-radius:10px;border:1px solid #334155;background:#0f172a;color:#f8fafc}.shop-mark{object-fit:cover;border-radius:16px;background:#fff;box-shadow:0 6px 20px #0000001f}.shop-mark.fallback{display:grid;place-items:center;background:linear-gradient(135deg,#ede9fe,#c4b5fd);color:#5b21b6;font-weight:800;font-size:1.4rem}.hero-brand{display:flex;align-items:center;gap:.85rem}.hero-brand h1{margin:0}.logo-row{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.file-rotate{position:absolute;top:4px;left:4px;border:none;background:#0f172ab3;color:#fff;border-radius:8px;padding:.15rem .4rem;cursor:pointer;font-size:.85rem}.login-mark{margin:0 auto .75rem}.login-btn{background:linear-gradient(135deg,var(--shop-accent, #6d28d9),#ec4899)}.theme-dark.customer-shell{color:#f8fafc}.theme-dark .customer-hero{box-shadow:0 18px 40px #00000059}.theme-dark .customer-card,.theme-dark .ticket-pro{background:#111827;color:#f8fafc;border:1px solid rgba(255,255,255,.06)}.theme-dark .upload-drop{background:linear-gradient(180deg,#1e1b4b,#111827);border-color:color-mix(in srgb,var(--shop-accent, #7c3aed) 50%,#64748b)}.theme-dark .upload-title,.theme-dark .fine,.theme-dark .customer-address{color:#cbd5e1}.theme-dark .service-chip{background:#1e293b;border-color:#334155;color:#e2e8f0}.theme-dark .service-chip.active{border-color:var(--shop-accent, #a855f7);background:color-mix(in srgb,var(--shop-accent, #7c3aed) 25%,#0f172a)}.theme-dark .check-pill,.theme-dark .pay-fieldset{background:#1e293b;border-color:#334155}.theme-dark .lang-switch button{background:#ffffff1f;color:#fff;border-color:transparent}.theme-dark .lang-switch button.active{background:#fff;color:#4c1d95}.theme-dark .steps-progress li{background:#1e293b;color:#94a3b8}.theme-dark .steps-progress li.active{background:linear-gradient(135deg,var(--shop-accent, #6d28d9),#a855f7);color:#fff}.theme-dark .trust-strip span{background:#1e293b;color:#cbd5e1}.qsp-theme .main-customer:has(.theme-dark){background:linear-gradient(180deg,#1e1b4b,#0f172a 180px)}.theme-dark.qr-page-shell{background:linear-gradient(160deg,#0f172a,var(--shop-accent, #7c3aed) 42%,#111827 42%)}.theme-dark .qr-page-card{background:#111827;color:#f8fafc}.theme-dark .qr-shop-name{color:#f8fafc}.customer-cta{background:linear-gradient(135deg,var(--shop-accent, #6d28d9),#ec4899)}.tabs button.active{background:var(--shop-accent, #7c3aed);border-color:var(--shop-accent, #7c3aed)}.side-item.active{background:linear-gradient(90deg,#ec4899,var(--shop-accent, #a855f7))}.filter-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin:.85rem 0 1rem;align-items:stretch}.filter-bar input,.filter-bar select{font:inherit;padding:.65rem .75rem;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;min-height:42px}.filter-bar input{flex:1 1 220px;min-width:0}.filter-bar select{flex:0 1 150px}.gate-shell{display:flex;flex-direction:column;min-height:100dvh;padding-bottom:1.5rem}.gate-hero{text-align:center;padding-bottom:2.25rem;border-radius:0 0 32px 32px}.gate-brand{display:flex;flex-direction:column;align-items:center;gap:.65rem;margin-top:.5rem}.gate-brand h1{margin:0;font-size:1.55rem}.gate-card{margin:-1.35rem .9rem 0;background:#fff;border-radius:22px;padding:1.25rem 1.1rem 1.4rem;box-shadow:0 18px 50px #0f172a2e;display:flex;flex-direction:column;gap:.7rem;position:relative;z-index:2}.gate-kicker{margin:0;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--shop-accent, #7c3aed);font-weight:700}.gate-card h2{margin:0;font-size:1.35rem}.gate-sub{margin:0 0 .35rem}.gate-card label{display:block;font-size:.82rem;font-weight:600;color:#334155}.gate-card input{display:block;width:100%;margin-top:.3rem;padding:.85rem .9rem;border-radius:14px;border:1px solid #cbd5e1;background:#f8fafc;font:inherit;font-size:1.05rem}.gate-cta{width:100%;margin-top:.35rem;padding:.95rem;border:none;border-radius:14px;color:#fff;font-weight:700;font-size:1.05rem;cursor:pointer}.gate-trust{justify-content:center;margin:.35rem 0 0}.session-pill,.locked-id{display:flex;align-items:center;gap:.7rem;margin-top:.9rem;background:#0000002e;border-radius:16px;padding:.55rem .7rem}.locked-id{margin:0 0 .85rem;background:#1e293b;color:#f8fafc}.session-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#5b21b6;font-weight:800;flex-shrink:0}.session-avatar.sm{width:36px;height:36px}.session-pill strong,.locked-id strong{display:block;font-size:.95rem}.session-pill small,.locked-id small{display:block;opacity:.85;font-size:.75rem}.ghost-chip{background:#ffffff1f}.hist-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem}.hist-row span:first-child{display:flex;flex-direction:column;gap:.15rem}.status-chip.mini{font-size:.68rem;padding:.15rem .4rem}.empty-mine{color:#94a3b8;text-align:center;padding:1.25rem .5rem}.cust-dock{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:100%;max-width:430px;display:grid;grid-template-columns:1fr 1fr;gap:.45rem;padding:.55rem .75rem calc(.55rem + env(safe-area-inset-bottom));background:color-mix(in srgb,#0f172a 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:30}.cust-dock button{border:none;border-radius:14px;padding:.75rem .5rem;font-weight:700;font-size:.85rem;background:#1e293b;color:#e2e8f0;cursor:pointer}.cust-dock button.on{background:linear-gradient(135deg,var(--shop-accent, #6d28d9),#ec4899);color:#fff}.customer-shell .sticky-pay{bottom:4.4rem}.theme-dark .gate-card{background:#111827;color:#f8fafc;border:1px solid rgba(255,255,255,.06)}.theme-dark .gate-card label{color:#cbd5e1}.theme-dark .gate-card input{background:#0f172a;border-color:#334155;color:#f8fafc}.theme-light .locked-id{background:#f1f5f9;color:#0f172a}.edge-down-banner{border:1px solid rgba(251,191,36,.45);background:#78350f59;color:#fef3c7!important}
