:root{--bg: #0c0b0e;--bg2: #131016;--bg3: #1b171e;--ink: #f2ece3;--muted: #a79da6;--faint: #6f6672;--line: #2a2530;--line2: #38313e;--ember: #e4362b;--ember-2: #ff5a3c;--gold: #e0a94a;--gold-dim: #8f6d28;--ok: #59b47b;--maybe: #e0a94a;--no: #b4636b;--display: "Impact", "Haettenschweiler", "Franklin Gothic Bold", "Arial Narrow Bold", sans-serif;--body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--tap: 48px;--maxw: 520px;--nav-h: 66px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;background-image:radial-gradient(900px 420px at 85% -8%,rgba(228,54,43,.12),transparent 60%),radial-gradient(700px 420px at 0% 0%,rgba(224,169,74,.07),transparent 55%);background-attachment:fixed}a{color:var(--ember-2);text-decoration:none}button{font-family:inherit}.app{max-width:var(--maxw);margin:0 auto;min-height:100%;padding:0 18px calc(var(--nav-h) + env(safe-area-inset-bottom) + 24px);padding-top:calc(env(safe-area-inset-top) + 8px)}.display{font-family:var(--display);text-transform:uppercase;letter-spacing:-.01em;line-height:.88;font-weight:400;margin:0}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0}h1.title{font-family:var(--display);font-size:clamp(40px,15vw,72px);text-transform:uppercase;letter-spacing:-.02em;line-height:.86;margin:0}h1.title .forty{color:var(--ember)}.sub{color:var(--muted);margin:6px 0 0}h2.sec{font-family:var(--display);font-size:26px;text-transform:uppercase;margin:0 0 12px;font-weight:400;letter-spacing:.01em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--tap);width:100%;padding:0 18px;border-radius:12px;border:1px solid var(--line2);background:var(--bg2);color:var(--ink);font-size:16px;font-weight:600;cursor:pointer;transition:transform .06s ease,background .15s ease,border-color .15s ease}.btn:active{transform:scale(.98)}.btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.btn.primary{background:var(--ember);border-color:var(--ember);color:#fff}.btn.gold{background:var(--gold);border-color:var(--gold);color:#1a1206}.btn.ghost{background:transparent}.btn.sm{width:auto;min-height:40px;font-size:14px;border-radius:10px}.card{background:var(--bg2);border:1px solid var(--line);border-radius:16px;padding:18px}.card+.card{margin-top:14px}.pill{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px;border:1px solid var(--line2);white-space:nowrap}.pill.ok{color:#9fe6b9;border-color:#59b47b80}.pill.no{color:#e6a7ad;border-color:#b4636b80}.pill.maybe{color:#f0cf8f;border-color:#e0a94a80}.pill.pend{color:var(--muted)}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;align-items:center;gap:10px}.between{display:flex;align-items:center;justify-content:space-between;gap:10px}.muted{color:var(--muted)}.center{text-align:center}.mono{font-family:var(--mono)}.tnum{font-variant-numeric:tabular-nums}.hr{height:1px;background:var(--line);border:0;margin:18px 0}.nav{position:fixed;left:0;right:0;bottom:0;z-index:20;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:flex;justify-content:center;background:#0c0b0ee6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line)}.nav-inner{display:flex;width:100%;max-width:var(--maxw)}.nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--faint);font-size:10px;letter-spacing:.04em;text-transform:uppercase;font-family:var(--mono);text-decoration:none}.nav a .ic{font-size:20px;line-height:1}.nav a.active{color:var(--ink)}.nav a.active .ic{filter:drop-shadow(0 0 8px rgba(228,54,43,.5))}.demo-banner{background:#e0a94a1f;border:1px solid rgba(224,169,74,.4);color:#f0cf8f;border-radius:10px;padding:8px 12px;font-size:12.5px;font-family:var(--mono);text-align:center;margin:10px 0}@media(prefers-reduced-motion:no-preference){.fade{animation:fade .4s ease both}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}}.ticket{position:relative;display:grid;grid-template-columns:1fr 96px;background:linear-gradient(180deg,#1d1822,#17131b);border:1px solid var(--line2);border-radius:16px;overflow:hidden;transition:filter .3s ease,border-color .3s ease,box-shadow .3s ease}.ticket.pendente{filter:grayscale(.7) brightness(.85)}.ticket.confirmado{border-color:#e0a94a8c;box-shadow:0 0 40px #e0a94a1f}.ticket.checkin{border-color:#59b47b99}.ticket .t-body{padding:18px 18px 16px}.ticket .t-kick{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}.ticket .t-name{font-family:var(--display);font-size:28px;text-transform:uppercase;letter-spacing:-.01em;margin:6px 0 2px;line-height:.95}.ticket .t-line{color:var(--muted);font-size:12.5px}.ticket .t-state{margin-top:10px}.ticket .t-stub{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px 8px;border-left:2px dashed var(--line2);text-align:center}.ticket .t-stub .adm{font-family:var(--mono);font-size:8.5px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase}.ticket .t-qr{width:52px;height:52px;border-radius:6px;background-color:#0c0b0e;opacity:.9;background-image:linear-gradient(45deg,var(--ink) 25%,transparent 25%,transparent 75%,var(--ink) 75%),linear-gradient(45deg,var(--ink) 25%,transparent 25%,transparent 75%,var(--ink) 75%);background-size:11px 11px;background-position:0 0,5.5px 5.5px}.ticket .t-num{font-family:var(--display);font-size:24px;color:var(--gold);line-height:1}.ticket .t-stamp{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:16px;color:#9fe6b9;text-transform:uppercase;transform:rotate(-14deg);border:2px solid rgba(89,180,123,.6);border-radius:8px;margin:10px;letter-spacing:.05em}
