@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;0,9..144,700;1,9..144,500&family=Outfit:wght@300;400;500;600;700&display=swap";:root{--cream:#fbf1ee;--cream-deep:#f6e3dd;--paper:#fffaf8;--terracotta:#c0392b;--berry:#9e1b3a;--berry-deep:#6e1226;--wine:#7a1530;--choco:#3d1620;--choco-soft:#6b3340;--pistachio:#7b8b5a;--sugar:#fff;--ink:#2e1018;--ink-soft:#7a5560;--line:#edd7cf;--shadow-lg:0 2px 4px #6e122614, 0 24px 48px -16px #6e122642}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Outfit,sans-serif}h1,h2,h3{letter-spacing:-.02em;font-family:Fraunces,serif;line-height:1.05}.field{margin-bottom:15px}.field label{color:var(--choco-soft);letter-spacing:.01em;margin-bottom:7px;font-size:13.5px;font-weight:600;display:block}.input{border:1.5px solid var(--line);background:var(--sugar);width:100%;color:var(--ink);border-radius:13px;padding:14px 15px;font-family:Outfit,sans-serif;font-size:15px;transition:all .18s}.input::placeholder{color:#c2a39b}.input:focus{border-color:var(--berry);outline:none;box-shadow:0 0 0 3px #9e1b3a1a}.err-msg{color:#991b1b;margin-top:5px;font-size:12px}.btn{cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:9px;width:100%;padding:15px 20px;font-family:Outfit,sans-serif;font-size:15.5px;font-weight:600;transition:all .18s;display:flex}.btn:active{transform:scale(.975)}.btn-primary{background:linear-gradient(135deg, var(--terracotta), var(--berry));color:#fff;box-shadow:0 10px 22px -10px #9e1b3ab3}.btn-primary:disabled{background:var(--line);color:var(--ink-soft);box-shadow:none;cursor:not-allowed}.btn-ghost{background:var(--sugar);color:var(--choco);border:1.5px solid var(--line)}.pay-grid{gap:8px;margin-top:6px;display:flex}.pay-opt{border:1.5px solid var(--line);background:var(--sugar);cursor:pointer;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 6px;transition:all .18s;display:flex}.pay-opt .lb{color:var(--choco);font-family:Outfit,sans-serif;font-size:13px;font-weight:600}.pay-opt.on{background:var(--berry);border-color:var(--berry);color:#fff;box-shadow:0 0 0 3px #9e1b3a1f}.pay-opt.on .lb{color:#fff}.time-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px;display:grid}.time-slot{border:1.5px solid var(--line);background:var(--sugar);color:var(--choco);cursor:pointer;text-align:center;border-radius:10px;padding:9px 4px;font-family:Outfit,sans-serif;font-size:13px;font-weight:600;transition:all .15s}.time-slot:hover{border-color:var(--berry);color:var(--berry)}.time-slot.on{background:var(--berry);border-color:var(--berry);color:#fff;box-shadow:0 0 0 3px #9e1b3a1f}.troco-box{border:1px dashed var(--line);background:#fbf1ee;border-radius:13px;margin-top:12px;padding:13px}.troco-box .tt{color:var(--choco-soft);align-items:center;gap:6px;margin-bottom:10px;font-size:12.5px;font-weight:600;display:flex}.troco-opts{grid-template-columns:1fr 1fr;gap:9px;display:grid}.troco-opt{border:1.5px solid var(--line);background:var(--sugar);cursor:pointer;color:var(--choco-soft);text-align:center;border-radius:11px;padding:11px 10px;font-size:12.5px;font-weight:600;line-height:1.25;transition:all .16s}.troco-opt.on{border-color:var(--berry);color:var(--berry);background:#fbeaec;box-shadow:0 0 0 3px #9e1b3a1a}.login-page{background:radial-gradient(120% 80% at 100% 0%, #9e1b3a1f, transparent 55%), radial-gradient(100% 70% at 0% 100%, #7a153014, transparent 50%), var(--cream);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--paper);flex-direction:column;width:100%;max-width:420px;min-height:100vh;display:flex;overflow:hidden}@media (width>=600px){.login-card{min-height:auto;box-shadow:var(--shadow-lg);border:1px solid var(--line);border-radius:28px}.login-page{padding:28px 16px}}.login-hero{text-align:center;background:radial-gradient(90% 60% at 50% 0,#9e1b3a24,#0000 60%);padding:56px 30px 30px;position:relative}.logo-mark{background:linear-gradient(140deg, var(--berry), var(--wine));border-radius:22px;justify-content:center;align-items:center;width:74px;height:74px;margin:0 auto 18px;font-size:36px;display:flex;transform:rotate(-4deg);box-shadow:0 16px 30px -12px #7a15308c}.brand{color:var(--choco);letter-spacing:-.01em;font-family:Fraunces,serif;font-size:32px;font-weight:600}.brand .com{color:var(--terracotta);font-style:italic;font-weight:500}.tagline{color:var(--ink-soft);letter-spacing:.02em;margin-top:6px;font-size:13.5px}.success-check{background:linear-gradient(135deg, var(--pistachio), #5c7a4a);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:88px;height:88px;margin:0 auto 22px;animation:.5s cubic-bezier(.2,1.4,.4,1) both pop;display:flex;box-shadow:0 16px 30px -12px #5c7a4a99}@keyframes pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:3px solid var(--line);border-top-color:var(--berry);border-radius:50%;width:36px;height:36px;margin:20px auto 0;animation:.75s linear infinite spin}.muted{color:var(--ink-soft)}.fade-in{animation:.4s both fade}@keyframes fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
