:root{color-scheme:dark;--bg: #0b1220;--card: #111827;--text: #e5e7eb;--muted: #94a3b8;--accent: #38bdf8;--ok: #22c55e;--warn: #fbbf24;--danger: #f87171;--border: #1f2937;--radius: 16px;--tap: 48px;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4;background:radial-gradient(circle at top,#172554 0%,var(--bg) 50%);color:var(--text)}*{box-sizing:border-box}body{margin:0;min-height:100dvh}button,input,select,textarea{font:inherit}.app-shell{max-width:480px;margin:0 auto;min-height:100dvh;padding:.75rem .85rem 5.5rem}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.85rem}.topbar h1{margin:.1rem 0 0;font-size:1.35rem}.eyebrow{margin:0;color:var(--muted);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}.sync-pill{border:1px solid var(--border);border-radius:999px;padding:.35rem .65rem;font-size:.75rem;background:#0f172a;color:var(--muted);white-space:nowrap}.sync-pill.warn{color:var(--warn);border-color:#fbbf2459}.sync-pill.ok{color:var(--ok);border-color:#22c55e59}.card{background:color-mix(in srgb,var(--card) 92%,black);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem;margin-bottom:.75rem;box-shadow:0 8px 24px #00000038}.card.blocked{border-color:#f8717173;background:linear-gradient(180deg,rgba(127,29,29,.25),var(--card))}.card.tap{cursor:pointer}.card.tap:active{transform:scale(.99)}.row-between{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.muted{color:var(--muted)}.small{font-size:.82rem}.error{color:var(--danger);margin:.4rem 0}.badge{display:inline-block;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;border:1px solid var(--border);background:#0b1220}.badge.danger{color:var(--danger);border-color:#f8717166}.badge.ok{color:var(--ok);border-color:#22c55e59}.badge.warn{color:var(--warn)}.flavor-dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:.35rem}.size-xl{font-size:1.05rem;font-weight:700}.sku{font-size:.75rem;color:var(--muted)}.btn{min-height:var(--tap);border:0;border-radius:14px;padding:.75rem 1rem;background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff;font-weight:650;cursor:pointer;width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{background:#1e293b;border:1px solid var(--border)}.btn.danger{background:linear-gradient(135deg,#ef4444,#b91c1c)}.btn.ghost{background:transparent;border:1px solid var(--border);color:var(--text)}.btn-row{display:grid;gap:.55rem;margin-top:.75rem}.btn-row.two{grid-template-columns:1fr 1fr}label.field{display:grid;gap:.3rem;color:var(--muted);font-size:.85rem;margin-bottom:.55rem}input,select,textarea{width:100%;min-height:var(--tap);border-radius:12px;border:1px solid var(--border);background:#0b1220;color:var(--text);padding:.65rem .75rem}textarea{min-height:88px}.nav{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:min(480px,100%);display:grid;grid-template-columns:repeat(4,1fr);gap:.25rem;padding:.45rem .5rem calc(.45rem + env(safe-area-inset-bottom));background:#0f172af5;border-top:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.nav button{border:0;background:transparent;color:var(--muted);min-height:52px;border-radius:12px;font-size:.72rem;font-weight:600}.nav button.active{color:var(--accent);background:#38bdf814}.progress{height:8px;border-radius:999px;background:#1e293b;overflow:hidden;margin:.45rem 0}.progress>span{display:block;height:100%;background:linear-gradient(90deg,#22c55e,#38bdf8)}.list-tight{display:grid;gap:.55rem}.line-item{border:1px solid var(--border);border-radius:12px;padding:.65rem;background:#0b1220}.role-grid{display:grid;gap:.55rem}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.photo-slot{border:1px dashed var(--border);border-radius:12px;padding:.65rem;min-height:88px;text-align:center;font-size:.8rem;color:var(--muted)}.photo-slot.done{border-style:solid;border-color:#22c55e73;color:var(--ok)}.sticky-actions{position:sticky;bottom:4.5rem;background:linear-gradient(180deg,transparent,rgba(11,18,32,.95) 30%);padding-top:.75rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.back{border:0;background:transparent;color:var(--accent);padding:0;margin-bottom:.35rem;font-weight:600;min-height:auto;width:auto}
