[hidden]{display:none!important}
body.logged-in #authView{display:none!important}
body:not(.logged-in) #appView{display:none!important}
:root{--bg:#f5f6f8;--card:#fff;--text:#111827;--muted:#6b7280;--line:#e5e7eb;--accent:#111827;--good:#166534;--warn:#92400e;--bad:#991b1b;--soft:#f3f4f6;--radius:20px;--shadow:0 8px 28px rgba(17,24,39,.07)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}button,input,textarea{font:inherit}.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:16px max(18px,calc((100vw - 1100px)/2));background:rgba(245,246,248,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(229,231,235,.8)}.brand{font-weight:900;font-size:21px}.tagline{font-size:12px;color:var(--muted);margin-top:2px}.top-actions{display:flex;gap:8px;align-items:center}.user-chip{font-size:12px;font-weight:800;background:#fff;border:1px solid var(--line);padding:8px 10px;border-radius:999px}.shell{max-width:1100px;margin:auto;padding:24px 18px 60px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.auth-wrap{min-height:72vh;display:grid;place-items:center}.auth-card{width:min(620px,100%)}.auth-card h1{font-size:clamp(30px,6vw,48px);margin:14px 0 8px;line-height:1.03}.auth-tabs{display:flex;gap:8px;margin:22px 0 14px}.auth-tab{flex:1;border:1px solid var(--line);background:#fff;border-radius:12px;padding:11px;font-weight:900;cursor:pointer}.auth-tab.active{background:#111827;color:#fff;border-color:#111827}.auth-pane{display:none}.auth-pane.active{display:grid;gap:12px}.auth-pane>label,.full{display:grid;gap:7px;font-size:13px;font-weight:800}.auth-pane input,.form-grid input,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px 13px;outline:none;background:white}.auth-pane input:focus,.form-grid input:focus,textarea:focus{border-color:#111827;box-shadow:0 0 0 3px rgba(17,24,39,.08)}.hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px}.hero h1{font-size:clamp(28px,5vw,46px);margin:12px 0 8px;line-height:1.02}.hero p{max-width:620px;color:var(--muted);margin:0}.pill{display:inline-flex;background:#111827;color:white;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;letter-spacing:.05em}.loyalty-mini{min-width:200px;background:var(--soft);padding:16px;border-radius:16px}.muted{color:var(--muted)}.tiny{font-size:11px;color:var(--muted);margin-top:4px}.stamp-row{display:flex;gap:6px;margin:9px 0}.stamp{width:24px;height:24px;border-radius:999px;border:2px solid #d1d5db;display:grid;place-items:center;font-size:12px}.stamp.done{background:#111827;border-color:#111827;color:white}.stamp.gift{border-style:dashed;width:auto;min-width:42px;padding:0 6px}.stamp.gift.unlocked{background:#111827;border-color:#111827;color:white;border-style:solid}.tabs{display:flex;gap:8px;margin:18px 0}.tab,.ghost{border:1px solid var(--line);background:white;color:var(--text);border-radius:12px;padding:11px 16px;font-weight:800;cursor:pointer}.tab.active{background:#111827;color:white;border-color:#111827}.small{font-size:12px;padding:8px 11px}.view{display:none}.view.active{display:block}.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card h2{margin:0 0 16px;font-size:20px}.menu-list,.slot-list{display:grid;gap:10px}.choice{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:14px;padding:14px;cursor:pointer;transition:.15s}.choice:hover{transform:translateY(-1px);border-color:#9ca3af}.choice.selected{border:2px solid #111827;padding:13px;background:#f9fafb}.choice.disabled{opacity:.45;cursor:not-allowed}.choice-title{font-weight:850}.choice-sub{font-size:12px;color:var(--muted);margin-top:3px}.price{font-weight:900;white-space:nowrap}.capacity{font-size:12px;color:var(--muted);white-space:nowrap}.notice{margin-top:12px;border-radius:12px;padding:12px;background:#fffbeb;color:var(--warn);font-size:13px}.form-card{margin-top:18px}.form-grid label{display:grid;gap:7px;font-size:13px;font-weight:800}.full{margin-top:14px}.check{display:flex;align-items:flex-start;gap:10px;margin:14px 0;color:#374151;font-size:13px}.primary{border:0;background:#111827;color:white;border-radius:14px;font-weight:900;cursor:pointer}.primary:disabled{opacity:.55;cursor:not-allowed}.big{padding:14px 18px;width:100%}.result{margin-top:12px}.success{background:#ecfdf5;color:var(--good);border:1px solid #bbf7d0;padding:14px;border-radius:14px}.error{background:#fef2f2;color:var(--bad);border:1px solid #fecaca;padding:14px;border-radius:14px}.info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe;padding:14px;border-radius:14px}.profile-summary{background:var(--soft);padding:12px 14px;border-radius:14px;font-size:13px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.loyalty-card{text-align:center}.loyalty-track{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:26px 0}.loyalty-track .stamp{width:58px;height:58px;font-size:15px;font-weight:900}.loyalty-track .stamp.gift{width:auto;min-width:58px;padding:0 10px}.reward-box{background:var(--soft);border-radius:16px;padding:18px;font-weight:800}.loyalty-rules{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px;text-align:left}.loyalty-rules>div{background:var(--soft);border-radius:14px;padding:14px;display:flex;gap:9px;align-items:flex-start}.loyalty-rules b{width:24px;height:24px;min-width:24px;border-radius:999px;background:#111827;color:#fff;display:grid;place-items:center;font-size:12px}.loyalty-rules span{font-size:12px;line-height:1.35}.worker-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:12px}.worker-tools{display:flex;gap:8px;flex-wrap:wrap}.worker-note{margin:-8px 0 0;max-width:660px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.summary{background:white;border:1px solid var(--line);border-radius:15px;padding:16px}.summary b{display:block;font-size:28px}.orders-list{display:grid;gap:10px}.order-card{background:white;border:1px solid var(--line);border-radius:16px;padding:16px;display:grid;grid-template-columns:1fr auto;gap:12px}.order-title{font-weight:900}.order-meta{font-size:13px;color:var(--muted);margin-top:5px}.status-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.status-actions button{border:1px solid var(--line);background:white;border-radius:10px;padding:8px 10px;font-size:12px;font-weight:800;cursor:pointer}.status-actions button.active{background:#111827;color:white;border-color:#111827}.reward-order{border:2px solid #111827}.reward-badge{display:inline-block;margin-left:6px;border-radius:999px;padding:4px 8px;background:#111827;color:white;font-size:11px;vertical-align:middle}.cash-line{margin-top:10px;border-radius:12px;background:var(--soft);padding:10px 12px;font-size:13px}.cash-line b{font-size:17px}.cash-line.discount{background:#ecfdf5;color:var(--good)}.empty{padding:18px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:14px}.status-pill{display:inline-block;border-radius:999px;padding:4px 8px;background:var(--soft);font-size:11px;font-weight:900;margin-left:6px}footer{text-align:center;color:var(--muted);font-size:12px;padding:20px}
@media(max-width:760px){.topbar{align-items:flex-start}.top-actions{flex-wrap:wrap;justify-content:flex-end}.user-chip{display:none!important}.hero{display:block}.loyalty-mini{margin-top:18px}.grid.two{grid-template-columns:1fr}.summary-grid{grid-template-columns:1fr 1fr 1fr}.order-card{grid-template-columns:1fr}.status-actions{justify-content:flex-start}.tabs{position:sticky;top:73px;z-index:10;background:var(--bg);padding:8px 0}.tab{flex:1;padding:10px 8px;font-size:13px}.loyalty-rules{grid-template-columns:1fr 1fr}.loyalty-track .stamp{width:48px;height:48px}.reward-badge{display:block;width:max-content;margin:6px 0 0}.worker-head{align-items:flex-start;flex-direction:column}}

.text-link{border:0;background:transparent;color:#374151;padding:4px 0;font-weight:800;cursor:pointer;text-align:center;text-decoration:underline;text-underline-offset:3px}.text-link:hover{color:#111827}.auth-help{margin:-6px 0 2px;font-size:13px;line-height:1.45}.auth-pane h2{margin:0 0 2px}.auth-tabs.recovery-hidden{display:none}
