html,body,#root{width:100%;min-height:100%;margin:0}:root{--up:#e11d48;--down:#16a34a;--ink:#2b2118;--muted:#7a654f;--paper:#fff4e5;--panel:#fffaf3;--line:#e4cdb0;--brand:#d62828;--brand-deep:#b01e1e;--brand-soft:#ffe3e0;--tan:#c5a07d;--tan-soft:#f3e6d4;--ink-deep:#3d2918;--accent:var(--brand);--accent-soft:#ffc9c4;--ok:#2f6b3a;--warn:#9a6b12;--warn-bg:#fff3c4;--danger:#8a3b2d;--danger-bg:#fce8e4;--radius:16px;--shadow:0 10px 28px #3d29181a;color:var(--ink);background:var(--paper);--selection:#d628282e;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.45}::selection{background:var(--selection)}*{box-sizing:border-box}body{background:radial-gradient(ellipse 80% 50% at 50% -10%, #ffe8d6 0%, transparent 55%), radial-gradient(circle at 100% 0%, #d628280f, transparent 28%), var(--paper);min-height:100vh;margin:0}.app{min-height:100vh}.topbar{color:var(--ink);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:30;background:#fffaf3eb;align-items:center;gap:20px;padding:10px 18px;display:flex;position:sticky;top:0;box-shadow:0 6px 20px #3d29180f}.brand{letter-spacing:.08em;color:var(--brand);font-size:1.2rem;font-weight:800}.brand-block{flex-shrink:0;align-items:center;gap:10px;display:flex}.brand-mark{object-fit:contain;background:#fff;border:2px solid #fff;border-radius:50%;width:44px;height:44px;box-shadow:0 2px #fff,0 4px 12px #d628282e}.brand-text{flex-direction:column;gap:1px;line-height:1.15;display:flex}.brand-text strong{letter-spacing:.1em;color:var(--brand);font-size:1.15rem;font-weight:800}.brand-text small{color:var(--muted);letter-spacing:.04em;font-size:.72rem;font-weight:600}.demo-badge{letter-spacing:.02em;background:var(--brand-soft);color:var(--brand-deep);white-space:nowrap;border:1px solid #d6282838;border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:700}.demo-badge-prod{color:#444;background:#f3f4f6;border-color:#ddd;font-weight:600}.staff-lock-app{background:linear-gradient(160deg,#fff8f6 0%,#f5f5f5 55%,#eee 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.staff-lock-card{background:#fff;border:1px solid #e8e8e8;border-radius:16px;flex-direction:column;gap:12px;width:min(420px,100%);padding:28px 24px;display:flex;box-shadow:0 12px 40px #0000000f}.staff-lock-card h1{margin:0;font-size:1.25rem}.staff-lock-card form{flex-direction:column;gap:10px;display:flex}.staff-lock-card label{flex-direction:column;gap:6px;font-size:.9rem;font-weight:600;display:flex}.staff-lock-card input{font:inherit;border:1px solid #ccc;border-radius:10px;min-height:44px;padding:12px 14px}.staff-lock-btn{min-height:36px}.topbar nav,.topbar-nav{flex-flow:wrap;flex:1;gap:6px;min-width:0;display:flex}.nav-active,.nav-btn{font:inherit;cursor:pointer;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:999px;flex:none;padding:8px 14px;font-weight:600}.nav-active{color:#fff;background:var(--brand);box-shadow:0 4px 12px #d6282847}.nav-btn:hover{color:var(--ink);background:var(--tan-soft)}.nav-muted{opacity:.45}.status{background:var(--tan-soft);color:var(--muted);border-radius:999px;padding:5px 12px;font-size:.85rem;font-weight:600}.status.ok{color:var(--ok);background:#e5f3e8}.status.bad{background:var(--danger-bg);color:var(--danger)}.topbar-right{flex-shrink:0;align-items:center;gap:10px;display:flex}@media (width<=900px){.topbar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand status""nav nav";align-items:center;gap:8px;padding:8px 12px 10px;display:grid}.brand-block{grid-area:brand;gap:8px;min-width:0}.brand-mark{width:36px;height:36px}.brand-text strong{letter-spacing:.06em;font-size:1rem}.brand-text small{font-size:.68rem}.demo-badge{display:none}.topbar-right{grid-area:status;gap:6px}.topbar-right .status{padding:4px 8px;font-size:.75rem}.topbar-right .staff-lock-btn{min-height:32px;padding:0 10px;font-size:.8rem}.topbar-nav{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;flex-flow:row;flex:none;grid-area:nav;gap:4px;width:100%;min-width:0;max-width:100%;padding:2px 0 4px;display:flex;overflow:auto hidden}.topbar-nav::-webkit-scrollbar{display:none}.nav-active,.nav-btn{flex:none;padding:8px 12px;font-size:.9rem}}@media (width<=720px){.section-head{align-items:stretch}.dash-title-row{flex-direction:column;align-items:stretch;gap:8px;width:100%}.dash-title-row .ghost-btn,.dash-meta .ghost-btn{width:100%}.dash-meta{flex-wrap:wrap;gap:8px;width:100%}}.demo-reset-btn{background:var(--brand-soft);color:var(--brand-deep);cursor:pointer;white-space:nowrap;border:1px solid #d6282859;border-radius:999px;padding:7px 14px;font-size:.85rem;font-weight:800}.demo-reset-btn:hover:not(:disabled){background:var(--brand);color:#fff;border-color:var(--brand)}.demo-reset-btn:disabled{opacity:.6;cursor:wait}.demo-mode-switch{border:1px solid var(--line);background:#fff;border-radius:999px;flex-shrink:0;align-items:stretch;display:inline-flex;overflow:hidden}.demo-mode-switch button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:7px 12px;font-size:.82rem;font-weight:800;line-height:1.2}.demo-mode-switch button.active{color:var(--ink);background:#f3e6d4}.demo-mode-switch.is-demo button.active{background:var(--brand-soft);color:var(--brand-deep)}.demo-mode-switch button:hover:not(:disabled):not(.active){background:#3d29180d}.demo-mode-switch.is-busy,.demo-mode-switch button:disabled{opacity:.7;cursor:wait}.confirm-modal-backdrop{z-index:1200;background:#2b211873;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirm-modal{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);width:min(420px,100%);box-shadow:var(--shadow);padding:22px 20px 16px}.confirm-modal h2{margin:0 0 10px;font-size:1.1rem}.confirm-modal-msg{color:var(--muted);white-space:pre-wrap;margin:0 0 18px;line-height:1.5}.confirm-modal-actions{justify-content:flex-end;gap:10px;display:flex}.danger-btn{background:var(--danger);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:10px 16px;font-weight:700}.danger-btn:hover:not(:disabled){filter:brightness(.95)}.danger-btn:disabled{opacity:.6;cursor:wait}.print-banner{background:var(--danger-bg);color:var(--danger);border-bottom:1px solid #e0b2a8;justify-content:space-between;align-items:center;gap:12px;padding:10px 20px;font-weight:600;display:flex}.warn-dismiss{color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid;border-radius:6px;padding:4px 10px;font-weight:600}.print-modal-backdrop{z-index:1000;background:#141c188c;justify-content:center;align-items:center;padding:20px;animation:.16s ease-out print-fade-in;display:flex;position:fixed;inset:0}@keyframes print-fade-in{0%{opacity:0}to{opacity:1}}.print-modal{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;width:min(440px,100%);max-height:min(92vh,880px);animation:.2s ease-out print-rise;display:flex;box-shadow:0 24px 64px #00000047}@keyframes print-rise{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}.print-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:16px 18px 12px;display:flex}.print-modal-head h2{letter-spacing:.03em;margin:0;font-family:Consolas,Courier New,monospace;font-size:1.15rem}.print-modal-sub{color:var(--muted);margin:6px 0 0;font-size:.88rem}.print-modal-x{width:36px;height:36px;color:var(--ink);cursor:pointer;background:#efeae0;border:0;border-radius:10px;flex-shrink:0;font-size:1.4rem;line-height:1}.print-modal-x:hover{background:#e4ddd0}.print-modal-stage{background:radial-gradient(circle at 20% 0,#fff 0,#0000 45%),linear-gradient(#ebe6db,#e2ddd2);flex:1;padding:18px;overflow:auto}.print-paper{background:#fff;border:1px dashed #c9c0b0;width:fit-content;max-width:100%;margin:0 auto;padding:8px 6px 12px;box-shadow:inset 0 1px #fff,0 10px 28px #0000001f}.print-preview-frame{background:#fff;border:0;width:200px;max-width:calc(100vw - 80px);height:auto;min-height:160px;display:block}.print-preview-frame.is-label{width:189px;height:114px;min-height:114px}.print-modal-foot{border-top:1px solid var(--line);background:#faf8f3;border-radius:0 0 16px 16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px 16px;display:flex}.print-modal-hint{min-width:160px;color:var(--muted);flex:1;margin:0;font-size:.82rem}.print-modal-actions{gap:10px;display:flex}@media (width<=520px){.demo-badge{display:none}.print-modal-foot{flex-direction:column;align-items:stretch}.print-modal-actions{width:100%}.print-modal-actions .ghost-btn,.print-modal-actions .primary-btn{flex:1}}.toast{z-index:40;background:var(--ink-deep);color:#fffaf3;max-width:min(560px,92vw);box-shadow:var(--shadow);border:1px solid #ffffff1f;border-radius:14px;padding:12px 18px;position:fixed;top:78px;left:50%;transform:translate(-50%)}.cashier{grid-template-columns:1fr minmax(300px,360px);gap:20px;padding:20px;display:grid}.cashier-v2{grid-template-columns:minmax(260px,1.15fr) minmax(240px,.95fr) minmax(280px,1.1fr);align-items:start;gap:14px;padding:14px 16px 22px}.cashier-pad{align-items:stretch;height:calc(100dvh - 64px);max-height:calc(100dvh - 64px);padding-bottom:10px;overflow:hidden}.cashier-pad .cashier-col{flex-direction:column;height:100%;min-height:0;max-height:100%;padding:10px 12px;display:flex;overflow:hidden}.cashier-pad .cashier-col-head{flex-shrink:0;margin-bottom:8px}.cashier-pad .cashier-col-head h1{font-size:1.05rem}.cashier-pad .cashier-col-head p{margin-top:2px;font-size:.75rem}.cashier-pad .cashier-open{overflow-y:auto}.cashier-pad .meituan-verify.sticky-verify{z-index:5;background:var(--panel);border-bottom:1px dashed var(--line);flex-shrink:0;margin-bottom:8px;padding-bottom:8px;position:sticky;top:0}.cashier-pad .cashier-active .order-list-tall{flex:1;min-height:0;max-height:none;overflow:auto}.cashier-pad .package-grid{flex-shrink:0;max-height:28vh;overflow:auto}.cashier-pad .cashier-settle{overflow-y:auto}.cashier-pad-tabs{grid-column:1/-1;gap:6px;display:none}.meituan-verify h2,.member-entry-bar h2{margin:0 0 4px;font-size:.95rem}.meituan-verify-row{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.meituan-verify-row .primary-btn{min-height:44px}.compact-hint{font-size:.78rem;line-height:1.35;margin:0 0 6px!important}.warn-soft{color:var(--warn)!important;margin:6px 0 0!important}.fallback-label{grid-column:1/-1;margin:0!important}.fallback-fold{border:1px dashed var(--border,#ccc);background:#00000005;border-radius:8px;margin-top:8px;padding:6px 10px 10px}.fallback-fold>summary{cursor:pointer;color:var(--muted,#666);padding:6px 2px;font-size:.85rem;font-weight:600;list-style:none}.fallback-fold>summary::-webkit-details-marker{display:none}.fallback-fold>summary:before{content:"▸ ";color:var(--warn)}.fallback-fold[open]>summary:before{content:"▾ "}.fallback-fold .package-grid-fallback{margin-top:8px}.package-btn-fallback{opacity:.92;border-style:dashed;min-height:96px}.package-btn-fallback .fallback-tag{color:var(--warn);font-size:.72rem;font-weight:700}.package-grid-fallback{margin-top:4px}.package-grid-cash{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px;display:grid}.package-btn-cash.is-selected{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft);background:var(--brand-soft)}.touch-chips .chip-btn,.pay-mode .chip-btn,.quick-cash .chip-btn{min-width:64px;min-height:44px;padding:10px 16px;font-size:.95rem}.chip-btn.chip-recommend:not(.active){border-color:var(--brand);box-shadow:0 0 0 2px #d628282e}.entry-mode-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.entry-mode-actions .primary-btn,.entry-mode-actions .ghost-btn{flex:1;min-width:120px;min-height:44px}.balance-plan-hint{background:var(--brand-soft);color:var(--brand-deep);border-radius:10px;padding:8px 10px;font-size:.88rem;font-weight:700;margin:8px 0!important}.other-items-layout{grid-template-columns:1.1fr .9fr;align-items:start;gap:16px;display:grid}.other-items-manage h2,.other-items-sell h2{margin:0 0 10px;font-size:1.05rem}.other-quick-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-top:12px;display:grid}.cashier-alerts{grid-column:1/-1}.cashier-col{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-height:420px;padding:14px;box-shadow:0 6px 18px #3d29180d}.cashier-col-head{align-items:flex-start;gap:10px;margin-bottom:14px;display:flex}.cashier-col-head h1{margin:0;font-size:1.15rem}.cashier-col-head p{color:var(--muted);margin:4px 0 0;font-size:.82rem}.step-num{background:var(--brand);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:.9rem;font-weight:800;display:grid;box-shadow:0 4px 10px #d6282840}.pay-strip{flex-wrap:wrap;gap:10px;margin-bottom:8px;display:flex}.pay-strip .grow{flex:1;min-width:140px}.quick-cash{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.amount-open-box{border:1px solid var(--line);border-radius:var(--radius,14px);background:var(--panel,#fffaf3);flex-wrap:wrap;align-items:flex-end;gap:10px;margin:4px 0 12px;padding:12px;display:flex}.amount-open-box.store-prepaid-box{flex-direction:column;align-items:stretch}.seat-field select{border:1px solid var(--line);background:var(--panel,#fff);border-radius:8px;min-height:44px;padding:10px 12px;font-size:1rem}.settle-card .due.due-ok dt,.settle-card .due.due-ok dd{color:var(--ok,#2a6b3c)}.packages-page{max-width:1100px;margin:0 auto;padding:16px 20px 40px}.packages-page .warn-hint{color:#9a6b00;background:#fff6dd;border-radius:8px;padding:8px 10px}.packages-page .data-table{border-collapse:collapse;width:100%;font-size:14px}.packages-page .data-table th,.packages-page .data-table td{border-bottom:1px solid var(--line);text-align:left;padding:8px 6px}.packages-page .row-muted{opacity:.55}.packages-page .row-actions{gap:6px;display:flex}.packages-page .package-category-block{margin-top:18px}.packages-page .package-category-block h2{margin:0 0 8px;font-size:1.05rem}.packages-page .package-segment{margin-bottom:12px}.packages-page .package-segment-title{color:var(--muted);margin:0 0 6px;font-size:.9rem;font-weight:600}.packages-page .check-row{flex-direction:row;align-items:center;gap:8px;display:flex}.chip-btn{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:6px 12px;font-size:.85rem;font-weight:700;display:inline-flex}.chip-btn:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.chip-btn.active{background:var(--brand);border-color:var(--brand);color:#fff}.chip-btn:disabled{opacity:.55;cursor:not-allowed}.order-list-tall{max-height:min(52vh,520px)}.order-list li.selected{border-color:var(--brand);box-shadow:0 0 0 2px #d6282840}.cashier-active .order-list{gap:10px;padding:2px}.cashier-active .order-list li{background:#fff;align-items:stretch;min-height:72px;box-shadow:0 2px 8px #3d29180f}.cashier-active .order-row{width:100%;min-width:0;color:var(--ink);background:#fff;flex-direction:column;justify-content:center;min-height:72px;padding:12px;display:flex}.cashier-active .order-row-top{color:var(--ink);font-size:.98rem}.cashier-active .order-row-top strong{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.cashier-active .order-row-meta{color:var(--muted);line-height:1.35}.cashier-active .order-row-sub{color:#9a7f63;font-family:Consolas,Courier New,monospace}.cashier-active .link-btn{min-width:52px;color:var(--brand);background:var(--brand-soft);border-left:1px solid #d628282e;font-size:.85rem}.cashier-active .order-list li.overtime .order-row{background:var(--danger-bg)}.cashier-active .order-list li.overtime .link-btn{color:var(--danger);background:#f8d8d2;border-left-color:#8a3b2d40}.cashier-active .order-list li.paused .order-row{background:var(--warn-bg)}.cashier-active .order-list li.paused .link-btn{color:var(--warn);background:#fde8c8;border-left-color:#b4782840}.order-list li.paused,.orders-table tr.row-paused{background:var(--warn-bg)}.find-fold{border-top:1px dashed var(--line);margin-top:16px;padding-top:10px}.find-fold summary{cursor:pointer;color:var(--muted);font-weight:700;list-style:none}.find-fold summary::-webkit-details-marker{display:none}.find-fold summary:before{content:"▸ ";color:var(--brand)}.find-fold[open] summary:before{content:"▾ "}.cashier-settle.has-preview{border-color:#d6282859;box-shadow:0 10px 28px #d628281a}.settle-empty{text-align:center;color:var(--muted);border:1px dashed var(--line);background:var(--tan-soft);border-radius:14px;margin-top:24px;padding:28px 16px}.settle-card-lg{margin-top:12px}.settle-card-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.settle-card-top h3{letter-spacing:.03em;margin:0;font-family:Consolas,Courier New,monospace}.ghost-btn.compact{min-height:34px;padding:0 12px;font-size:.85rem}.tender-box{background:var(--brand-soft);border:1px solid #d628282e;border-radius:12px;flex-direction:column;gap:10px;margin-top:12px;padding:12px;display:flex}.pay-mode{gap:6px;display:flex}.tender-input{letter-spacing:.02em;font-weight:700;font-size:1.25rem!important}.change-pill{color:var(--brand);text-align:center;background:#fff;border-radius:12px;padding:10px 12px;font-size:1.15rem;font-weight:800}.change-pill.short{color:var(--danger);background:var(--danger-bg)}.settle-member-pay{flex-direction:column;gap:8px;display:flex}.member-lookup{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.member-hit-list{flex-direction:column;gap:6px;max-height:180px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.member-hit{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;display:flex}.member-hit:hover{border-color:var(--brand)}.member-hit strong{color:var(--ink)}.member-hit span{color:var(--muted);font-family:Consolas,Courier New,monospace;font-size:.85rem}.member-hit small{color:var(--brand-deep);font-weight:600}.member-picked{background:#fff;border:1px solid #d6282838;border-radius:10px;padding:10px}.member-picked>div{justify-content:space-between;gap:8px;display:flex}.member-picked .hint{margin:6px 0 0}@media (width<=1100px){.cashier-v2:not(.cashier-pad){grid-template-columns:1fr 1fr}.cashier-v2:not(.cashier-pad) .cashier-settle{grid-column:1/-1}.other-items-layout{grid-template-columns:1fr}}@media (width<=1279px) and (width>=1024px){.cashier-v2.cashier-pad{grid-template-columns:minmax(200px,1.05fr) minmax(190px,.9fr) minmax(230px,1.05fr);gap:8px;padding:8px 10px}.cashier-pad .cashier-col{padding:8px}.cashier-pad .cashier-settle .scan-form{z-index:4;background:var(--panel);padding-bottom:8px;position:sticky;top:0}.package-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px}.package-btn{min-height:88px;padding:10px}.cashier-pad .package-grid{max-height:22vh}}@media (width<=1366px) and (width>=1280px){.cashier-pad{gap:10px;padding:10px 12px}.cashier-pad .cashier-col{padding:8px 10px}.package-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.package-btn{min-height:100px;padding:12px}}@media (width<=1023px){.cashier-v2.cashier-pad{grid-template-columns:1fr;height:calc(100dvh - 64px);overflow:hidden}.cashier-pad-tabs{grid-template-columns:repeat(3,1fr);display:grid}.cashier-pad-tabs button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;min-height:44px;font-weight:700}.cashier-pad-tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff}.cashier-pad .cashier-col{height:auto;max-height:calc(100dvh - 120px);display:none;overflow:auto}.cashier-pad .cashier-col.pad-show{display:flex}.cashier-settle{grid-column:auto}.order-list-tall{max-height:none}}@media (width<=860px){.cashier-v2:not(.cashier-pad){grid-template-columns:1fr}}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px;display:flex}.dash-title-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.dash-title-row h1,.packages h1,.side h2{margin:0}.side h2{margin:0 0 12px}.side h2+h2,.scan-form+h2,.order-list+h2{margin-top:24px}.seat-field{color:var(--muted);flex-direction:column;gap:4px;font-size:.85rem;display:flex}.seat-field input{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:160px;padding:10px 12px;font-size:1rem}.package-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.package-btn{border:2px solid var(--line);border-radius:var(--radius);background:var(--panel);cursor:pointer;text-align:left;min-height:118px;box-shadow:0 4px 0 var(--tan-soft);flex-direction:column;align-items:flex-start;gap:6px;padding:16px;transition:background .16s,border-color .16s,transform .16s,box-shadow .16s;display:flex;position:relative}.package-btn:hover:not(:disabled){border-color:var(--brand);background:#fff;box-shadow:0 6px 16px #d6282824}.package-btn:active:not(:disabled){transform:translateY(1px)scale(.99)}.package-btn:disabled{opacity:.7;cursor:wait}.package-btn strong{font-size:1.05rem}.package-btn span{color:var(--brand);font-size:1.45rem;font-weight:800}.package-btn small{color:var(--muted)}.busy-label{color:var(--brand);font-size:.8rem;font-style:normal;position:absolute;bottom:10px;right:12px}.side{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);align-self:start;padding:16px}.hint{color:var(--muted);margin:0 0 16px}.error-hint{color:var(--danger)}.order-list{flex-direction:column;gap:8px;max-height:360px;margin:0 0 8px;padding:0;list-style:none;display:flex;overflow:auto}.order-list li{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:1fr auto;align-items:stretch;gap:6px;display:grid;overflow:hidden}.order-list li.overtime{border-color:var(--danger);background:var(--danger-bg)}.order-row{text-align:left;cursor:pointer;background:0 0;border:0;min-height:64px;padding:10px 12px}.order-row-top{justify-content:space-between;gap:8px;font-size:.95rem;display:flex}.order-row-meta{color:var(--muted);margin-top:4px;font-size:.82rem}.order-row-sub{letter-spacing:.04em;color:#888;margin-top:2px;font-size:.75rem}.link-btn{border:0;border-left:1px solid var(--line);cursor:pointer;color:var(--accent);background:0 0;padding:0 12px;font-weight:600}.scan-form{flex-direction:column;gap:8px;display:flex}.scan{background:#fff;border:1px solid #c9c0b2;border-radius:8px;width:100%;padding:12px;font-size:1rem}.primary-btn,.ghost-btn{cursor:pointer;border-radius:14px;min-height:44px;padding:0 16px;font-size:1rem;font-weight:700}.primary-btn{background:var(--brand);color:#fff;border:0;box-shadow:0 4px 12px #d6282847}.primary-btn:hover:not(:disabled){background:var(--brand-deep)}.primary-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.ghost-btn{border:1.5px solid var(--line);background:var(--panel);color:var(--ink)}.ghost-btn:hover:not(:disabled){border-color:var(--tan);background:var(--tan-soft)}.ghost-btn:disabled{opacity:.5;cursor:not-allowed}.settle-card{border:1px solid var(--line);background:#fff;border-radius:14px;margin-top:16px;padding:14px}.settle-card h3{margin:0 0 10px;font-size:1rem}.settle-card dl{flex-direction:column;gap:6px;margin:0;display:flex}.settle-card dl>div{justify-content:space-between;gap:12px;font-size:.92rem;display:flex}.settle-card dt{color:var(--muted)}.settle-card dd{margin:0;font-weight:600}.settle-card .due dd{color:var(--danger);font-size:1.1rem}.settle-actions{grid-template-columns:1fr 1.4fr;gap:8px;margin-top:14px;display:grid}.find-form{flex-direction:column;gap:8px;display:flex}.find-form label{color:var(--muted);flex-direction:column;gap:4px;font-size:.82rem;display:flex}.find-form input{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 12px;font-size:.95rem}.find-list{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.find-list li{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:10px;font-size:.85rem;display:flex}.find-list li>div:first-child{flex-direction:column;gap:2px;display:flex}.find-list span{color:var(--muted)}.find-actions{gap:6px;display:flex}.find-actions button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:6px 10px;font-weight:700}.products-page{--products-chrome:72px;box-sizing:border-box;height:calc(100dvh - var(--products-chrome));max-height:calc(100dvh - var(--products-chrome));grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:stretch;gap:12px;padding:12px 16px 14px;display:grid;overflow:hidden}.products-main{flex-direction:column;gap:10px;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.products-main>.section-head,.products-main>.error-hint{flex-shrink:0;margin:0}.products-toolbar{flex:none;grid-template-columns:minmax(240px,.95fr) minmax(0,1.25fr);align-items:start;gap:10px;min-height:0;display:grid}.products-toolbar-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.products-toolbar-head h2{margin:0;font-size:1.05rem}.products-toolbar-head .hint{margin:0;font-size:.8rem}.products-inbound-bar,.products-scan-bar{gap:8px;min-width:0;padding:12px}.products-inbound-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.products-inbound-row label{min-width:0}.products-inbound-row label input{box-sizing:border-box;width:100%;padding:10px 12px;font-size:1rem}.products-inbound-row .primary-btn{white-space:nowrap;min-height:44px;padding:0 16px}.products-scan-row{flex-direction:row;align-items:stretch;gap:8px}.products-scan-row .scan{flex:1;min-width:0;min-height:44px;padding:10px 12px}.products-scan-row .ghost-btn{flex-shrink:0;min-height:44px}.products-preview-card{flex-direction:column;gap:8px;max-height:min(52vh,460px);margin-top:4px;display:flex;overflow:hidden}.products-preview-scroll{flex:auto;min-height:0;padding-right:2px;overflow:auto}.products-preview-footer{border-top:1px solid var(--line);background:var(--panel);flex-direction:column;flex-shrink:0;gap:8px;padding-top:8px;display:flex}.products-preview-actions{flex-wrap:wrap;flex-shrink:0;gap:8px;margin:0;display:flex}.products-preview-actions .ghost-btn,.products-preview-actions .primary-btn{flex:auto;min-width:7.5rem;min-height:44px}.products-stock-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-sizing:border-box;flex-direction:column;flex:auto;width:100%;min-width:0;min-height:0;margin:0;padding:12px 14px;display:flex;overflow:hidden}.products-stock-panel .product-tabs{flex-shrink:0;margin-bottom:8px}.products-stock-panel>.hint{flex-shrink:0}.products-list-search{flex-direction:row;flex-shrink:0;align-items:stretch;gap:8px}.products-list-search input{border:1px solid var(--line);box-sizing:border-box;background:#fff;border-radius:10px;flex:1;width:auto;min-width:0;min-height:44px;padding:10px 14px;font-size:1.05rem}.products-list-search .ghost-btn{flex-shrink:0;min-height:44px;padding:0 16px}.products-stock-panel .product-list{flex:auto;min-height:0;max-height:none;margin-top:8px;overflow:auto}.products-cart-rail{flex-direction:column;align-self:stretch;min-width:0;height:100%;min-height:0;display:flex;position:static}.products-cart-card{flex-direction:column;gap:10px;height:100%;min-height:0;margin:0;display:flex;overflow:hidden}.products-cart-empty{margin:8px 0 0}.products-cart-card>h3,.products-cart-card>.hint,.products-cart-card .pay-mode,.products-cart-card .member-lookup,.products-cart-card .settle-actions{flex-shrink:0}.products-cart-list{flex:auto;min-height:0;max-height:none;overflow:auto}.members-page{grid-template-columns:1fr minmax(300px,360px);gap:20px;padding:20px;display:grid}.day-pass-bar{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin-top:20px;padding:16px}.day-pass-bar h2{margin:0 0 10px;font-size:1.05rem}.day-pass-row{flex-wrap:wrap;gap:8px;display:flex}.day-pass-row input{border:1px solid var(--line);border-radius:8px;flex:1;min-width:160px;padding:12px;font-size:1rem}.member-entry-bar .hint{margin:0 0 10px}.entry-hit-list{max-height:220px;margin-top:10px}.entry-picked{flex-direction:column;gap:8px;margin-top:10px;display:flex}.entry-picked-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.entry-picked-head>div{flex-direction:column;gap:2px;display:flex}.entry-picked .primary-btn{width:100%}.balance-pay{flex-direction:column;gap:8px;margin:12px 0;font-size:.92rem;display:flex}.balance-pay label{align-items:center;gap:8px;font-weight:600;display:flex}.stock-badge{background:var(--brand);color:#fff;border-radius:999px;padding:6px 12px;font-size:.9rem;font-weight:700;box-shadow:0 4px 10px #d6282838}.product-panels{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:10px;padding:16px;display:flex}.panel h2{margin:0}.panel label{color:var(--muted);flex-direction:column;gap:4px;font-size:.85rem;display:flex}.panel label input{border:1px solid var(--line);border-radius:8px;padding:12px;font-size:1.1rem}.product-tabs{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.product-tabs button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;min-height:40px;font-weight:600}.product-tabs .tab-active{background:var(--brand);color:#fff;border-color:var(--brand-deep)}.product-list{flex-direction:column;gap:8px;max-height:70vh;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.product-list li{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.product-list li>div:first-child{flex-direction:column;gap:2px;min-width:0;display:flex}.product-list .mono{word-break:break-all;color:var(--muted);font-family:Consolas,Courier New,monospace;font-size:.78rem}.product-list small{color:#888;font-size:.75rem}.dashboard-page,.orders-page{padding:20px}.orders-filters{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));align-items:end;gap:10px;margin-bottom:16px;padding:14px;display:grid}.orders-filters label{color:var(--muted);flex-direction:column;gap:4px;font-size:.82rem;display:flex}.orders-filters input,.orders-filters select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 12px;font-size:.95rem}.orders-table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:auto}.orders-table{border-collapse:collapse;width:100%;font-size:.9rem}.orders-table th,.orders-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 12px}.orders-table th{white-space:nowrap;background:#f7f4ee;font-weight:600}.orders-table .mono{font-family:Consolas,Courier New,monospace;font-size:.82rem}.orders-table .ops{flex-wrap:wrap;gap:6px;display:flex}.orders-table .ops button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:6px 10px;font-size:.82rem;font-weight:700}.orders-table .ops .danger-text{background:var(--danger)}.orders-table tr.row-overtime{background:var(--danger-bg)}.status-pill{background:#eee;border-radius:999px;padding:2px 8px;font-size:.78rem;font-weight:600;display:inline-block}.status-pill.status-进行中{color:#1d4f91;background:#e8f3ff}.status-pill.status-已结算{color:#2f6b3a;background:#e8f6ea}.status-pill.status-已取消{color:#666;background:#f0f0f0}.pager{justify-content:center;align-items:center;gap:16px;margin-top:14px;display:flex}.dash-meta{color:var(--muted);align-items:center;gap:12px;font-size:.9rem;display:flex}.dash-section{margin-top:22px}.dash-section-title{margin:0 0 10px;font-size:1.05rem;font-weight:700}.dash-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.dash-hint{color:var(--muted);margin:-4px 0 12px;font-size:.85rem}.dash-section:first-of-type,.dashboard-page>.dash-section:first-of-type{margin-top:12px}.dash-hero-row{grid-template-columns:minmax(0,1.05fr) minmax(360px,1fr);align-items:start;gap:16px;display:grid}.dash-hero-metrics{flex-direction:column;gap:12px;min-width:0;display:flex}.dash-hero-side{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.dash-hero-detail{margin-top:4px}.dash-hero-detail .dash-section-head{margin-bottom:8px}.dash-hero-detail .dash-grid{margin-top:0}.dash-hero-seats{box-sizing:border-box;background:0 0;border:none;border-radius:14px;min-width:0;min-height:0;padding:0;display:flex;overflow:hidden}.dash-hero-seat-map{cursor:pointer;background:var(--paper,#f7f4ef);border:none;border-radius:14px;flex:auto;width:100%;height:100%;min-height:0;margin:0;padding:0;display:block;position:relative;overflow:hidden;box-shadow:0 0 0 1px #281e1414}.dash-hero-seat-map:hover,.dash-hero-seat-map:focus-visible{box-shadow:0 0 0 2px var(--brand);outline:none}.dash-hero-seat-map .seat-map-wrap{background:0 0;border:none;border-radius:14px;max-width:none;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.dash-hero-seat-map .seat-map-floor{border-width:2px;border-radius:12px}.dash-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:8px;display:grid}.dash-grid-secondary{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.dash-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px 16px}.dash-card-sm{padding:12px 12px 14px}.dash-card-sm .dash-value{margin:6px 0 4px;font-size:1.35rem}.dash-card-sm h2{font-size:.85rem}.dash-card-sm small{font-size:.75rem}.dash-card h2{color:var(--muted);margin:0;font-size:.95rem;font-weight:600}.dash-value{letter-spacing:.02em;margin:10px 0 6px;font-size:2rem;font-weight:700}.dash-card small{color:var(--muted);font-size:.82rem}.dash-card.dash-hero{background:linear-gradient(135deg, var(--brand) 0%, #9a1515 100%);color:#fffaf3;border-color:var(--brand-deep);grid-column:auto;padding:20px 18px;box-shadow:0 12px 28px #d6282838}.dash-hero-metrics>.dash-hero .dash-value{font-size:2.35rem}.dash-card.dash-hero h2,.dash-card.dash-hero small{color:#fffaf3c7}.dash-chg{margin:0 0 8px;font-size:.95rem;font-weight:700}.dash-hero .dash-chg{background:#ffffff2e;border-radius:999px;padding:4px 10px;display:inline-block}.dash-hero .dash-chg.up{color:#ffe4e6;background:#ffffff38}.dash-hero .dash-chg.down{color:#bbf7d0}.dash-hero .dash-chg.flat{color:#fffaf3d9}.dash-card:not(.dash-hero) .dash-chg.up{color:var(--up)}.dash-card:not(.dash-hero) .dash-chg.down{color:var(--down)}.dash-card:not(.dash-hero) .dash-chg.flat{color:var(--muted)}.dash-card.accent{background:var(--brand-soft);border-color:#d6282859}.dash-chart-row{grid-template-columns:minmax(240px,1fr) minmax(200px,280px);align-items:center;gap:16px;display:grid}.dash-chart-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-height:200px;padding:12px}.dash-chart-panel.tall{min-height:280px}.dash-empty{min-height:200px;color:var(--muted);justify-content:center;align-items:center;margin:0;display:flex}.dash-mix-legend{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.dash-mix-legend li{grid-template-columns:12px 1fr auto auto;align-items:center;gap:10px;font-size:.92rem;display:grid}.dash-mix-legend .swatch{border-radius:3px;width:12px;height:12px}.dash-mix-legend em{color:var(--muted);text-align:right;min-width:3.5rem;font-style:normal}.dash-seg{border:1px solid var(--line);border-radius:10px;display:inline-flex;overflow:hidden}.dash-seg button{cursor:pointer;color:var(--muted);background:#fff;border:0;padding:8px 14px;font-weight:600}.dash-seg button.active{background:var(--brand);color:#fff}.dash-report-bar{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:end;gap:12px;padding:14px;display:flex}.dash-report-bar label{color:var(--muted);flex-direction:column;gap:4px;font-size:.82rem;display:flex}.dash-report-bar input[type=date]{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 12px;font-size:.95rem}.settings-page{max-width:1100px;padding:16px 20px 40px}.settings-primary-nav{gap:8px;margin-bottom:16px;display:flex}.settings-primary-nav button{border:1px solid var(--line);cursor:pointer;min-height:44px;color:var(--ink);background:#fff;border-radius:10px;padding:0 18px;font-weight:700}.settings-primary-nav button.tab-active{background:var(--brand);border-color:var(--brand);color:#fff}.settings-tabs{margin-bottom:16px}.settings-marketing-tabs{margin-bottom:14px}.settings-panel{max-width:640px}.settings-billing-layout{grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:start;gap:16px;display:grid}.settings-billing-form{grid-column:1;min-width:0;max-width:none}.settings-form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 16px;margin:12px 0 16px;display:grid}.settings-form-grid>label{min-width:0}.settings-form-grid input{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.settings-form-span{grid-column:1/-1}.settings-summary-card{grid-area:1/2/span 10;min-width:0;position:sticky;top:76px}.settings-summary-dl{flex-direction:column;gap:10px;margin:0 0 12px;display:flex}.settings-summary-dl div{border-bottom:1px dashed var(--line);justify-content:space-between;gap:12px;padding-bottom:8px;display:flex}.settings-summary-dl dt{color:var(--muted);font-size:.9rem}.settings-summary-dl dd{text-align:right;margin:0;font-weight:700}.settings-split{grid-template-columns:minmax(260px,360px) 1fr;gap:16px;display:grid}.settings-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.settings-list li{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.settings-list li.row-muted{opacity:.72;background:#f7f4ee}.settings-list-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.settings-list-row>div{flex-direction:column;gap:2px;min-width:0;display:flex}.settings-list small{color:var(--muted)}.check-row{align-items:center;gap:8px;margin-bottom:8px;flex-direction:row!important;display:flex!important}.check-grid{grid-template-columns:1fr 1fr;gap:4px 12px;margin:8px 0 12px;display:grid}.discount-chips{flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 12px;display:flex}.custom-discount{color:var(--muted);align-items:center;gap:6px;font-size:.9rem;display:inline-flex}.custom-discount input{border:1px solid var(--line);border-radius:8px;width:64px;padding:6px 8px}.list-price-strike{color:var(--muted);font-size:.8rem;font-style:normal;text-decoration:line-through;display:block}.scan-hint{margin:6px 0 0}.retail-quick-sell{margin-top:12px}.settle-member-always{border-top:1px dashed var(--line);margin:12px 0;padding-top:8px}.coupon-redeem-row{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.buy-card-row{align-items:center;gap:8px;margin-top:12px;display:flex}.buy-card-row select{border:1px solid var(--line);background:#fff;border-radius:8px;flex:1;padding:8px 10px}@media (width<=1023px){.dash-hero-row{grid-template-columns:1fr}.dash-hero-side{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-hero-seats,.dash-hero-seat-map{min-height:220px}.settings-billing-layout{grid-template-columns:1fr}.settings-billing-form,.settings-summary-card{grid-area:auto}.settings-summary-card{position:static}}@media (width<=720px){.dash-hero-side,.settings-form-grid{grid-template-columns:1fr}}@media (width<=860px){.cashier,.products-page,.members-page{grid-template-columns:1fr}.products-page,.products-main,.products-stock-panel,.products-cart-rail,.products-cart-card{height:auto;max-height:none;overflow:visible}.products-toolbar,.products-inbound-row{grid-template-columns:1fr}.products-stock-panel .product-list,.products-cart-list{max-height:420px}.settings-split{grid-template-columns:1fr}.order-list,.product-list{max-height:none}.dash-card.dash-hero{grid-column:auto}.dash-chart-row{grid-template-columns:1fr}}.seat-map-wrap{border:1px solid var(--line);background:#ddd8ce;border-radius:12px;max-width:100%;position:relative;overflow:hidden}.seat-map-floor{background:var(--paper);border:3px solid var(--ink-deep);box-sizing:border-box;border-radius:8px;margin:0;position:absolute;top:0;left:0}.seat-map-wall{color:#666;letter-spacing:.3em;pointer-events:none;z-index:0;font-size:13px;font-weight:600;position:absolute}.seat-map-wall-left{writing-mode:vertical-rl;top:38%;left:8px;transform:rotate(180deg)}.seat-map-wall-bottom{bottom:10px;left:42%}.seat-map-landmark{z-index:1;background:var(--tan-soft);text-align:center;pointer-events:none;color:var(--ink);border:2px dashed #888;border-radius:8px;justify-content:center;align-items:center;padding:4px;font-size:13px;font-weight:600;display:flex;position:absolute}.seat-map-landmark-door{background:#e8f0ff;width:56px;height:40px}.seat-map-landmark-front{border-radius:50%;width:72px;height:72px}.seat-map-landmark-bean{writing-mode:vertical-rl;letter-spacing:.4em;background:#efe7dc;width:40px;height:420px}.seat-map-table{z-index:2;border:2px solid var(--ink-deep);background:#fff;border-radius:6px;align-content:center;justify-items:stretch;gap:4px;padding:5px;display:grid;position:absolute}.seat-map-table-v2{grid-template-rows:1fr 1fr;grid-template-columns:1fr;width:52px;height:88px}.seat-map-table-h2{grid-template-rows:1fr;grid-template-columns:1fr 1fr;width:88px;height:48px}.seat-map-table-s1{grid-template-columns:1fr;width:48px;height:44px}.seat-map-table-q4{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;width:96px;height:96px}.seat-map-seat{appearance:none;font-variant-numeric:tabular-nums;text-align:center;white-space:pre-line;cursor:default;color:#1f9d55;background:#e8f8ee;border:1.5px solid #0000;border-radius:4px;justify-content:center;align-items:center;min-width:36px;min-height:36px;margin:0;padding:2px;font-family:inherit;font-size:11px;font-weight:700;line-height:1.15;display:flex}button.seat-map-seat{cursor:pointer;touch-action:manipulation}button.seat-map-seat:disabled{cursor:not-allowed;opacity:.92}.seat-map-seat.is-free{color:#1f9d55;background:#e8f8ee;border-color:#1f9d55}.seat-map-seat.is-occupied{color:#b91c1c;background:#fde8e8;border-color:#b91c1c}.seat-map-seat.is-paused{color:#9a6b12;background:#fff3c4;border-color:#d97706}.seat-map-seat.is-selected{outline:3px solid var(--brand);outline-offset:1px;box-shadow:0 0 0 1px var(--brand-soft)}.seat-map-seat-label{pointer-events:none}.seat-map-floor-rotated .seat-map-seat-label,.seat-map-floor-rotated .seat-map-label-upright{display:inline-block;transform:rotate(-90deg)}.seat-picker-backdrop{z-index:1300;background:#2b211880;justify-content:center;align-items:center;padding:10px;display:flex;position:fixed;inset:0}.seat-picker-modal{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);width:min(1080px,100%);max-height:min(96vh,1100px);box-shadow:var(--shadow);flex-direction:column;padding:16px 16px 14px;display:flex}.seat-picker-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.seat-picker-head h2{margin:0;font-size:1.15rem}.seat-picker-hint{margin:6px 0 10px}.seat-picker-stage{flex:1;min-height:0;overflow:hidden}.seat-picker-stage-fit{justify-content:center;align-items:center;min-height:min(68vh,700px);display:flex;overflow:hidden}.seat-map-autofit{width:100%;height:100%;min-height:inherit;justify-content:center;align-items:center;display:flex;overflow:hidden}.seat-picker-head-actions{align-items:center;gap:8px;display:flex}.seat-picker-actions{border-top:1px solid var(--line);flex-shrink:0;justify-content:flex-end;gap:10px;margin-top:12px;padding-top:10px;display:flex}.seat-map-view-modal .seat-picker-stage-fit{min-height:min(78vh,820px)}.seat-map-panel{margin:0 0 14px}.seat-map-thumb{border:1px solid var(--line);background:var(--panel);cursor:pointer;text-align:left;border-radius:12px;width:100%;max-width:420px;padding:10px 12px;display:block}.seat-map-thumb:hover,.seat-map-thumb:focus-visible{border-color:var(--brand);outline:none}.seat-map-thumb-stage{background:#f7f3ec;border-radius:8px;height:168px;margin:6px 0 8px;overflow:hidden}.seat-map-thumb-meta{color:var(--muted);margin:0;font-size:.85rem}.cashier-col-head-row{justify-content:space-between;align-items:flex-start;gap:10px;width:100%;display:flex}.cashier-active .order-row-actions{flex-direction:column;flex-shrink:0;gap:4px;display:flex}.cashier-active .order-row-actions .link-btn{min-height:36px}.fallback-block{border:1px solid var(--line);background:var(--tan-soft);border-radius:12px;margin-top:14px;padding:12px}.fallback-block+.fallback-block{margin-top:14px}.fallback-block h2{margin:0 0 10px;font-size:1rem}.fallback-block-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 10px;display:flex}.fallback-block-head h2,.fallback-block-head .touch-chips{margin:0}.meituan-fold{border:1px solid var(--line);background:var(--panel);border-radius:12px;margin-top:14px;padding:0 12px 10px}.meituan-fold>summary{cursor:pointer;color:var(--muted);padding:12px 4px;font-weight:600;list-style:none}.meituan-fold>summary::-webkit-details-marker{display:none}.meituan-fold[open]>summary{color:var(--ink);border-bottom:1px dashed var(--line);margin-bottom:10px}.settle-pause-row{flex-wrap:wrap;gap:8px;margin:12px 0 4px;display:flex}.settle-pause-row .hint{flex:100%;margin:0}.upgrade-modal{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;width:min(520px,100%);min-width:0;max-width:100%;max-height:min(92vh,760px);animation:.2s ease-out print-rise;display:flex;box-shadow:0 24px 64px #3d291847}.upgrade-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 12px;display:flex}.upgrade-modal-head h2{margin:0;font-size:1.15rem}.upgrade-modal-sub{color:var(--muted);margin:6px 0 0;font-size:.86rem;line-height:1.4}.upgrade-modal-body{flex-direction:column;flex:1;gap:12px;min-width:0;min-height:0;padding:16px 18px;display:flex;overflow:hidden auto}.upgrade-modal-actions{border-top:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);background:#faf8f3;justify-content:flex-end;gap:10px;padding:12px 18px 16px;display:flex}.upgrade-modal-actions .primary-btn,.upgrade-modal-actions .ghost-btn{min-width:120px}.upgrade-options{flex-direction:column;gap:8px;min-width:0;display:flex}.upgrade-opt{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;min-width:0;min-height:64px;padding:12px 14px;display:grid}.upgrade-opt:hover:not(:disabled){border-color:var(--tan);background:var(--tan-soft)}.upgrade-opt strong{grid-column:1;font-size:1rem}.upgrade-opt span{color:var(--muted);grid-column:1;font-size:.82rem}.upgrade-opt em{color:var(--ink);grid-area:1/2/span 2;align-self:center;font-size:.9rem;font-style:normal;font-weight:700}.upgrade-opt.active{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}.upgrade-amounts{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;min-width:0;display:grid}.upgrade-amounts label{min-width:0;color:var(--muted);flex-direction:column;gap:6px;font-size:.82rem;display:flex}.upgrade-amounts input{border:1px solid var(--line);border-radius:10px;width:100%;min-width:0;max-width:100%;min-height:48px;padding:10px 12px;font-size:1.1rem;font-weight:700}@media (width<=520px){.upgrade-modal-actions{flex-direction:column-reverse}.upgrade-modal-actions .primary-btn,.upgrade-modal-actions .ghost-btn{width:100%}.upgrade-amounts{grid-template-columns:1fr}}.drawings-page{padding:16px 18px 28px}.drawings-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.drawings-head h1{margin:0 0 4px}.drawings-head p{color:var(--muted);margin:0}.drawings-head-actions{flex-wrap:wrap;gap:8px;display:flex}.drawings-upload-info{border:1px solid var(--line);background:var(--panel-soft,#faf8f5);border-radius:12px;margin-bottom:14px;padding:14px}.drawings-upload-info h2{margin:0 0 6px;font-size:1rem}.drawings-url{word-break:break-all;margin:8px 0;font-family:ui-monospace,Consolas,monospace}.drawings-qr-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.drawings-qr{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px}.drawings-qr svg{width:160px;height:160px;display:block}.drawings-qr-actions{flex-direction:column;gap:8px;display:flex}.drawings-tabs{gap:8px;margin-bottom:12px;display:flex}.drawings-layout{grid-template-columns:minmax(220px,280px) 1fr;align-items:start;gap:14px;display:grid}@media (width<=800px){.drawings-layout{grid-template-columns:1fr}}.drawings-list{flex-direction:column;gap:6px;max-height:calc(100vh - 220px);margin:0;padding:0;list-style:none;display:flex;overflow:auto}.drawing-item{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;gap:2px;width:100%;padding:10px 12px;display:flex}.drawing-item.active{border-color:var(--accent,#3d6b4f);box-shadow:inset 0 0 0 1px var(--accent,#3d6b4f)}.drawing-item small{color:var(--muted)}.drawing-preview{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:240px;padding:12px}.drawing-preview-meta h2{margin:0 0 4px}.drawing-preview-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.drawing-print-sheet{flex-direction:column;align-items:center;gap:8px;padding:8px 0;display:flex}.drawing-print-img{object-fit:contain;background:#f3f1ec;max-width:100%;max-height:min(60vh,640px)}.drawing-print-caption{color:var(--muted);margin:0;font-size:.9rem}@media print{.topbar,.toast,.no-print,.drawings-head-actions,.drawings-tabs,.drawings-list,.drawing-preview-actions,.drawing-preview-meta{display:none!important}.drawings-page,.drawing-preview,.drawings-layout{box-shadow:none!important;background:#fff!important;border:none!important;margin:0!important;padding:0!important;display:block!important}.drawing-print-img{max-width:100%;max-height:95vh}.drawings-upload-info:not(.no-print),.drawings-upload-info{border:none}}.order-paused-badge{background:var(--warn-bg);color:var(--warn);border-radius:999px;margin-left:6px;padding:1px 6px;font-size:12px;font-weight:600;display:inline-block}.fan-layout-app{color:#2b2118;background:#f3efe8;min-height:100vh;padding:16px;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}.fan-layout-head{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:12px;display:flex}.fan-layout-head h1{margin:0 0 4px;font-size:1.2rem}.fan-layout-head p{color:#6b5f50;margin:0;font-size:.9rem}.fan-head-actions{flex-wrap:wrap;gap:8px;display:flex}.fan-tabs{gap:8px;margin-bottom:12px;display:flex}.fan-batch-list{flex-direction:column;gap:8px;max-width:480px;margin:0;padding:0;list-style:none;display:flex}.fan-batch-item{text-align:left;cursor:pointer;background:#fffaf3;border:1px solid #e4cdb0;border-radius:10px;flex-direction:column;gap:2px;width:100%;padding:12px;display:flex}.fan-edit-bar{background:#fffaf3;border:1px solid #e4cdb0;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:8px 10px;display:flex}.fan-pages{flex-direction:column;align-items:center;gap:16px;display:flex}.fan-a4{width:210mm;max-width:100%}.fan-a4-inner{box-sizing:border-box;background:#fff;border:1px solid #ccc;width:210mm;max-width:100%;height:297mm;position:relative;overflow:hidden}.fan-item{box-sizing:border-box;cursor:grab;touch-action:none;background:#f7f7f7;border:1px dashed #0000;justify-content:center;align-items:center;display:flex;position:absolute;overflow:hidden}.fan-item.selected{z-index:2;border-color:#3d6b4f}.fan-item img{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:100%;max-height:100%}.fan-page-label{text-align:center;color:#6b5f50;margin:6px 0 0;font-size:.85rem}.fan-layout-app .primary-btn,.fan-layout-app .ghost-btn,.fan-layout-app .nav-btn,.fan-layout-app .nav-active{cursor:pointer;background:#fff;border:1px solid #e4cdb0;border-radius:8px;padding:8px 12px}.fan-layout-app .primary-btn{color:#fff;background:#3d6b4f;border-color:#3d6b4f}.fan-layout-app .nav-active{color:#fff;background:#3d6b4f}.fan-layout-app .error-text{color:#8a3b2d}@media print{.no-print{display:none!important}.fan-layout-app{background:#fff;padding:0}.fan-pages{gap:0}.fan-a4{page-break-after:always;break-after:page}.fan-a4:last-child{page-break-after:auto}.fan-a4-inner{border:none;width:210mm;height:297mm}@page{size:A4;margin:0}}.upload-app{min-height:100dvh;padding:max(20px, env(safe-area-inset-top,0px)) max(16px, env(safe-area-inset-right,0px)) max(24px, env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px));background:var(--paper,#fff4e5);color:var(--ink,#2b2118);justify-content:center;align-items:flex-start;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;display:flex}@media (height>=700px){.upload-app{align-items:center}}.upload-card{background:var(--panel,#fffaf3);border:1px solid var(--line,#e4cdb0);border-radius:16px;width:min(420px,100%);max-width:100%;padding:24px 18px 20px;box-shadow:0 10px 28px #3d29181a}.upload-card .brand-mark{border-radius:8px;margin:0 auto 12px;display:block}.upload-card h1{text-align:center;margin:0 0 8px;font-size:1.35rem;font-weight:700}.upload-card>p{text-align:center;color:var(--muted,#7a654f);margin:0 0 18px;font-size:.92rem;line-height:1.45}.upload-card form{flex-direction:column;gap:12px;display:flex}.upload-file-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.upload-pick{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.upload-card .ghost-btn,.upload-card .primary-btn{cursor:pointer;border-radius:12px;width:100%;min-height:48px;padding:0 14px;font-size:1rem;font-weight:700}.upload-card .ghost-btn{border:1.5px solid var(--line,#e4cdb0);color:var(--ink,#2b2118);background:#fff}.upload-card .primary-btn{background:var(--brand,#d62828);color:#fff;border:0;margin-top:4px;box-shadow:0 4px 12px #d6282847}.upload-card .primary-btn:disabled,.upload-card .ghost-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.upload-preview-wrap{flex-direction:column;gap:6px;display:flex}.upload-preview{object-fit:contain;border:1px solid var(--line,#e4cdb0);background:#fff;border-radius:12px;width:100%;max-height:220px;display:block}.upload-file-name,.upload-file-hint{text-align:center;color:var(--muted,#7a654f);margin:0;font-size:.82rem}.upload-card label{color:var(--muted,#7a654f);flex-direction:column;gap:6px;font-size:.85rem;display:flex}.upload-card input[type=text]{border:1px solid var(--line,#e4cdb0);background:#fff;border-radius:10px;width:100%;min-width:0;min-height:48px;padding:10px 12px;font-size:16px}.upload-wechat-qr-wrap{justify-content:center;margin:12px 0 18px;display:flex}.upload-wechat-qr{border:1px solid var(--line,#e4cdb0);background:#fff;border-radius:12px;width:min(240px,70vw);height:auto}.upload-type-actions{flex-direction:column;gap:10px;margin:16px 0 12px;display:flex}.upload-card .ghost-btn.compact{width:100%;margin-top:8px}
