:root{--bg:#f6f1ea;--bg-warm:#efe8dc;--surface:#fdfbf6;--surface-2:#f9f3e8;--ink:#2a2520;--ink-2:#4a4138;--muted:#8a7d6f;--muted-2:#b5a594;--line:#e6dccb;--line-2:#dcd0bd;--accent:#c4654a;--accent-ink:#8a3f2b;--accent-soft:#f3d9cd;--accent-paper:#fbeae0;--danger:#b45a3c;--success:#5fa86b;--whatsapp:#25d366;--shadow-card:0 1px 0 #ffffffb3 inset, 0 1px 2px #3c28140d, 0 8px 24px -8px #3c28141f, 0 24px 60px -30px #3c28142e;--shadow-card-hover:0 1px 0 #ffffffb3 inset, 0 1px 2px #3c28140f, 0 14px 36px -10px #3c28142e, 0 30px 70px -30px #3c281438;--font-body:"DM Sans", ui-sans-serif, system-ui, sans-serif;--font-display:"Caveat", "Bradley Hand", cursive;--font-mono:"JetBrains Mono", ui-monospace, monospace}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);margin:0;padding:0}body{font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100vh;line-height:1.5}#root{min-height:100vh}a{color:inherit}button{font-family:inherit}.paper{background-color:var(--bg);position:relative}.paper:before{content:"";pointer-events:none;opacity:.5;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.16  0 0 0 0 0.13  0 0 0 0 0.10  0 0 0 0.06 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}.card-soft{background:var(--surface);box-shadow:var(--shadow-card);border:.5px solid #b4966e40;border-radius:18px}.pool-frame{background:repeating-linear-gradient(135deg, #b4966e0a 0 8px, transparent 8px 16px), var(--surface-2);border:1.5px dashed var(--line-2);border-radius:22px}.btn-primary{appearance:none;background:var(--accent);color:#fff;font-family:var(--font-body);letter-spacing:-.01em;cursor:pointer;box-shadow:0 1px 0 #ffffff4d inset, 0 6px 14px -4px var(--accent-soft), 0 10px 24px -10px #78281466;border:0;border-radius:999px;padding:14px 22px;font-weight:600;transition:transform .12s,box-shadow .12s,filter .12s}.btn-primary:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.btn-primary:active:not(:disabled){filter:brightness(.95);transform:translateY(0)}.btn-primary:disabled{opacity:.35;cursor:not-allowed;filter:grayscale(.4);transform:none}.btn-ghost{appearance:none;border:1px solid var(--line);color:var(--ink-2);font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:999px;padding:11px 18px;font-weight:500;transition:background .12s,color .12s}.btn-ghost:hover{background:var(--surface);color:var(--ink)}.btn-whatsapp{appearance:none;background:var(--whatsapp);color:#fff;font-family:var(--font-body);cursor:pointer;border:0;border-radius:999px;padding:14px 22px;font-weight:600;transition:filter .12s;box-shadow:0 6px 14px -4px #25d36666}.btn-whatsapp:hover{filter:brightness(1.04)}.chip{background:var(--surface);border:1px solid var(--line);color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:13px;font-weight:500;display:inline-flex}.field{appearance:none;border:1.5px solid var(--line);background:var(--surface);width:100%;font-family:var(--font-body);color:var(--ink);border-radius:14px;outline:none;padding:14px 16px;font-size:16px;transition:border-color .15s,box-shadow .15s}.field:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-paper)}.field::placeholder{color:var(--muted-2)}.label-mini{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:600;display:block}.kicker{font-family:var(--font-display);color:var(--accent);letter-spacing:.5px;font-size:28px;line-height:1}.h-display{font-family:var(--font-display);letter-spacing:.2px;color:var(--ink);font-weight:600;line-height:1}@keyframes pop-in{0%{opacity:0;transform:scale(.6)translateY(8px)}60%{opacity:1;transform:scale(1.06)translateY(-2px)}to{transform:scale(1)translateY(0)}}.anim-pop-in{animation:.55s cubic-bezier(.4,1.5,.45,.95) both pop-in}@keyframes slide-into-car{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.anim-slide-in{animation:.45s cubic-bezier(.3,.8,.3,1) both slide-into-car}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}.live-dot{background:var(--success);border-radius:50%;width:7px;height:7px;animation:1.6s ease-in-out infinite pulse-dot;box-shadow:0 0 0 3px #5fa86b2e}.seat-dot{border:1.5px solid var(--line-2);background:0 0;border-radius:50%;width:10px;height:10px;transition:background .2s,border-color .2s}.seat-dot.filled{background:var(--accent);border-color:var(--accent)}.seat-dot.driver{background:var(--ink);border-color:var(--ink)}.avatar{color:#fff;text-transform:uppercase;letter-spacing:-.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;font-weight:600;display:inline-flex}.car-card{will-change:transform;transition:transform .18s,box-shadow .18s}.car-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)rotate(-.4deg)}.car-card.selected{box-shadow:0 0 0 2px var(--accent), var(--shadow-card)}.toast{background:var(--ink);color:var(--bg);z-index:200;border-radius:999px;padding:12px 18px;font-size:14px;font-weight:500;animation:.18s ease-out toast-in;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px -6px #00000059}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.skeleton{background:linear-gradient(90deg, var(--surface-2), var(--bg-warm), var(--surface-2));background-size:200% 100%;border-radius:12px;animation:1.4s ease-in-out infinite skeleton}@keyframes skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.modal-backdrop{z-index:100;background:#140e0873;justify-content:center;align-items:flex-end;animation:.18s ease-out fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal-sheet{background:var(--surface);border-radius:22px 22px 0 0;width:100%;max-width:420px;padding:22px 22px 28px;animation:.22s ease-out sheet-up}@media (width>=640px){.modal-backdrop{align-items:center}.modal-sheet{border-radius:22px}}@keyframes sheet-up{0%{transform:translateY(24px)}to{transform:translateY(0)}}.link{color:var(--accent-ink);text-underline-offset:2px;text-decoration:underline}.error-msg{color:var(--danger);margin-top:6px;font-size:13px}
