@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Barlow:wght@300;400;500;600;700&family=Barlow+Condensed:wght@400;600;700&family=Syne:wght@400;600;700;800&family=Space+Mono:wght@400;700&display=swap";:root{--red:#cf2b38;--red-deep:#8b1a23;--red-glow:#cf2b3859;--gold:#d4b896;--gold-dim:#d4b89626;--bg:#111418;--surface:#1a1f26;--surface2:#222830;--surface3:#2a3140;--border:#ffffff12;--text:#e2eaf4;--text-muted:#8a9bae;--text-dim:#4a6070;--green:#2dc98e;--orange:#f0a030;--blue:#4a9eff;--purple:#7b6ef6;--font-display:"Bebas Neue", sans-serif;--font-body:"Barlow", sans-serif;--font-cond:"Barlow Condensed", sans-serif;--r-sm:6px;--r-md:12px;--r-lg:20px;--r-xl:28px;--sidebar-w:240px;--sidebar-w-collapsed:64px;--topbar-h:60px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:15px}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:var(--surface)}::-webkit-scrollbar-thumb{background:var(--red-deep);border-radius:4px}a{color:inherit;text-decoration:none}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none}input,select,textarea{font-family:var(--font-body);outline:none}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-red{0%,to{box-shadow:0 0 0 0 var(--red-glow)}50%{box-shadow:0 0 0 12px #0000}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes streak-fire{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.15)}}.animate-in{animation:.3s both fadeIn}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:24px}.badge{letter-spacing:.04em;text-transform:uppercase;border-radius:99px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.badge-green{color:var(--green);background:#2dc98e26}.badge-red{color:#ff6b6b;background:#cf2b3833}.badge-gold{background:var(--gold-dim);color:var(--gold)}.badge-blue{color:var(--blue);background:#4a9eff26}.badge-orange{color:var(--orange);background:#f0a03026}.badge-purple{color:var(--purple);background:#7b6ef626}.btn{border-radius:var(--r-md);white-space:nowrap;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .18s;display:inline-flex}.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{box-shadow:0 6px 20px var(--red-glow);background:#a50f1a;transform:translateY(-1px)}.btn-secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--surface3)}.btn-ghost{color:var(--text-muted);background:0 0}.btn-ghost:hover{color:var(--text);background:var(--surface2)}.btn-gold{background:var(--gold);color:#1a1f26;font-weight:700}.btn-gold:hover{background:#c4a882}.btn-sm{padding:7px 14px;font-size:12px}.btn-lg{padding:14px 28px;font-size:16px}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.form-input{background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text);width:100%;padding:10px 14px;font-size:14px;transition:border-color .15s}.form-input:focus{border-color:var(--red)}.form-input::placeholder{color:var(--text-dim)}select.form-input{cursor:pointer}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}thead tr{border-bottom:1px solid var(--border)}th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:10px 14px;font-size:11px;font-weight:600}td{border-bottom:1px solid #ffffff08;padding:12px 14px;font-size:13px}tbody tr{transition:background .12s}tbody tr:hover{background:var(--surface2)}.skeleton{background:linear-gradient(90deg, var(--surface2) 25%, var(--surface3) 50%, var(--surface2) 75%);border-radius:var(--r-sm);background-size:400px 100%;animation:1.4s infinite shimmer}.nivel-bronze{color:#cd7f32}.nivel-prata{color:#a8a9ad}.nivel-ouro{color:var(--gold)}.nivel-lenda{color:var(--red)}@media (width<=768px){:root{--sidebar-w:0px}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.anim-fade-up{animation:.45s both fadeSlideUp}.anim-stagger>:first-child{animation-delay:0s}.anim-stagger>:nth-child(2){animation-delay:80ms}.anim-stagger>:nth-child(3){animation-delay:.16s}.anim-stagger>:nth-child(4){animation-delay:.24s}.anim-stagger>:nth-child(5){animation-delay:.32s}.anim-stagger>:nth-child(6){animation-delay:.4s}.anim-stagger>:nth-child(7){animation-delay:.48s}.anim-stagger>:nth-child(8){animation-delay:.56s}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-transition{animation:.22s both pageFadeIn}@keyframes insigniaShimmer{0%{background-position:-200%}to{background-position:200%}}.insignia-shimmer{position:relative}.insignia-shimmer:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(105deg,#0000 40%,#d4b8962e 50%,#0000 60%) 0 0/200% 100%;animation:2.4s ease-in-out infinite insigniaShimmer;position:absolute;inset:0}@keyframes scannerPulse{0%,to{opacity:1;box-shadow:0 0 #cf2b3866}50%{opacity:.7;box-shadow:0 0 0 18px #cf2b3800}}.scanner-pulse{animation:2s ease-in-out infinite scannerPulse}.rank-row{transition:background .18s,transform .18s,border-color .18s}.rank-row:hover{transform:scale(1.012);background:#d4b8960f!important;border-color:#d4b89633!important}.btn-ripple{position:relative;overflow:hidden}.btn-ripple:after{content:"";opacity:0;pointer-events:none;background:radial-gradient(circle,#ffffff2e 0%,#0000 70%);transition:opacity .3s;position:absolute;inset:0}.btn-ripple:active:after{opacity:1;transition:opacity}@keyframes toastEnter{0%{opacity:0;transform:translateY(-20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toastBounce{0%,to{transform:translateY(0)scale(1)}30%{transform:translateY(-6px)scale(1.03)}60%{transform:translateY(2px)scale(.99)}}.toast-welcome{animation:.3s cubic-bezier(.34,1.56,.64,1) both toastEnter,.5s .3s both toastBounce}@media (width<=768px){input,select,textarea{font-size:16px!important}.card{border-radius:var(--r-md);padding:16px}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:500px}.btn{padding:9px 16px;font-size:13px}.btn-lg{padding:12px 20px;font-size:14px}}@media (width<=380px){.carteirinha-name{font-size:15px!important}.carteirinha-section{padding:12px 14px!important}}@supports (padding-bottom:env(safe-area-inset-bottom)){.bottom-nav{padding-bottom:env(safe-area-inset-bottom)}}@media (hover:none){.rank-row:hover{transform:none!important}tbody tr:hover{background:0 0!important}}@media (width<=640px){.eventos-grid{grid-template-columns:1fr!important}}:root{--bg:#111418;--surface:#1a1f26;--surface2:#22282f;--surface3:#292f38;--border:#ffffff12;--accent:#d4b896;--accent-dim:#d4b8961a;--accent-border:#d4b8964d;--coral:#cf2b38;--coral-dim:#cf2b381f;--coral-border:#cf2b3859;--purple:#9e8fca;--purple-dim:#9e8fca1f;--purple-border:#9e8fca4d;--blue:#4a87c8;--blue-dim:#4a87c81f;--blue-border:#4a87c84d;--green:#2dc98e;--green-dim:#2dc98e1f;--green-border:#2dc98e40;--red:#cf2b38;--red-dim:#cf2b381f;--red-border:#cf2b384d;--text:#e2eaf4;--text2:#8a9bae;--text3:#4a6070;--bg-card:var(--surface);--bg-input:var(--surface2);--text-muted:var(--text2);--cor-compra:var(--accent);--cor-saida:var(--coral);--cor-devolucao:var(--purple);--cor-baixo:var(--accent);--cor-zerado:var(--red);--cor-ok:var(--green);--font-titulo:"Syne", sans-serif;--font-mono:"Space Mono", monospace;--font-corpo:"Syne", sans-serif;--gap-xs:4px;--gap-sm:8px;--gap-md:16px;--gap-lg:24px;--gap-xl:32px;--radius:16px;--radius-sm:10px;--radius-md:12px;--radius-lg:22px;--bottom-nav-height:64px;--safe-bottom:env(safe-area-inset-bottom,0px)}
