*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0a0f;--card: #111827;--border: #1f2937;--border2: #374151;--accent: #0ea5e9;--accent-light: #38bdf8;--text: #ffffff;--muted: #6b7280;--subtle: #374151;--danger: #ef4444;--success: #22c55e;--warn: #f59e0b;--font: "Inter", system-ui, sans-serif;--nav-h: 64px;--top-h: 52px;--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-top: env(safe-area-inset-top, 0px)}html,body{height:100%;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;overflow:hidden;touch-action:pan-y;-webkit-user-select:none;user-select:none}#root{width:100%;max-width:480px;margin:0 auto;height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:var(--bg);position:relative}button{cursor:pointer;border:none;background:none;font-family:var(--font);color:inherit}input,textarea{font-family:var(--font)}a{text-decoration:none;color:inherit}img{display:block}.content-area{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;position:relative}.content-area::-webkit-scrollbar{display:none}.card{background:var(--card);border-radius:14px;border:1px solid var(--border);padding:16px}.inp{width:100%;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px;color:var(--text);font-size:16px;outline:none;transition:border-color .15s}.inp:focus{border-color:var(--accent)}.inp::placeholder{color:var(--muted)}.btn-primary{width:100%;background:var(--accent);color:#fff;font-weight:700;font-size:14px;letter-spacing:2px;padding:15px;border-radius:12px;text-transform:uppercase;transition:opacity .15s}.btn-primary:disabled{opacity:.35;cursor:not-allowed}.btn-primary:not(:disabled):active{opacity:.85}.btn-ghost{background:var(--card);border:1px solid var(--border);color:var(--text);font-weight:600;font-size:13px;letter-spacing:1px;padding:10px 20px;border-radius:10px}.pill{display:inline-flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--border);border-radius:20px;padding:6px 14px;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.divider{height:1px;background:var(--border);width:100%}.status-pending{color:var(--warn)}.status-ready{color:var(--success)}.status-collected{color:var(--muted)}.status-cancelled{color:var(--danger)}
