:root{--red:#e10600;--red-dark:#b50500;--red-soft:#ffe8e6;--bg:#f6f7f9;--surface:#ffffffdb;--surface-strong:#fff;--gray:#f3f4f6;--gray-strong:#e5e7eb;--border:#e3e5e8;--text:#1d1d1f;--muted:#60646c;--charcoal:#202124;--steel:#35404a;--cyan:#00a7b5;--grid-line:#2021240e;--shadow:0 18px 44px #18181b1a;--body-gradient:linear-gradient(135deg, #fff 0%, #f6f7f9 48%, #eef1f4 100%);--font:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--text);background:var(--bg);font-family:var(--font);letter-spacing:0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5}:root[data-theme=dark]{--red:#ff3b36;--red-dark:#c8231f;--red-soft:#ff3b3624;--bg:#05080f;--surface:#0d1422db;--surface-strong:#0b1220;--gray:#111a2b;--gray-strong:#1b2a44;--border:#7897be3d;--text:#eef6ff;--muted:#9fb0c8;--charcoal:#05080f;--steel:#17243a;--cyan:#22d3ee;--grid-line:#22d3ee13;--shadow:0 20px 54px #00000057;--body-gradient:radial-gradient(circle at top left, #22d3ee2e, transparent 30%), radial-gradient(circle at top right, #ff3b361f, transparent 30%), linear-gradient(135deg, #05080f 0%, #08111f 52%, #0c1728 100%)}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{background:linear-gradient(90deg, var(--grid-line) 1px, transparent 1px), linear-gradient(180deg, var(--grid-line) 1px, transparent 1px), var(--body-gradient);background-size:44px 44px,44px 44px,auto;min-width:320px;margin:0}button,input,select{letter-spacing:0}button{font-family:inherit}h1,h2,h3,p{margin-top:0}p{margin-bottom:0}img{max-width:100%;display:block}::selection{color:#fff;background:var(--red)}.app{background:linear-gradient(180deg, var(--surface), var(--bg)), transparent;flex-direction:column;min-height:100svh;display:flex}main{flex:1;position:relative}main:before{z-index:0;content:"";pointer-events:none;background:linear-gradient(90deg,#0000 0 14%,#e1060014 14% 15%,#0000 15% 85%,#00a7b514 85% 86%,#0000 86%),radial-gradient(circle,#0000 0 58px,#20212414 59px 61px,#0000 62px),linear-gradient(#0000,#ffffff61,#0000);height:240px;position:fixed;inset:96px 0 auto}main>*{z-index:1;position:relative}button,input,select,.btn,.nav-link,.user-pill,.status-badge,.mini-item,.prediction-row,.admin-game-row,.initial-score,.game-card,.stat-card,.info-card,.ranking-row,.ranking-head{min-width:0}h1,h2,h3,p,span,strong,small,label,button{overflow-wrap:anywhere}.site-header{z-index:20;background:var(--surface);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(18px)saturate(1.35);backdrop-filter:blur(18px)saturate(1.35);grid-template-columns:auto 1fr auto;align-items:center;gap:20px;min-height:220px;padding:14px clamp(18px,4vw,48px);transition:box-shadow .22s,background .22s,border-color .22s;display:grid;position:sticky;top:0;box-shadow:0 16px 44px #19191914}.site-header:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#e106009e,#00a7b561,#0000);height:1px;position:absolute;bottom:-1px;left:0;right:0}.brand{color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;min-width:0;display:inline-flex}.brand-mark{color:#fff;background:var(--red);border-radius:50%;place-items:center;width:42px;height:42px;font-weight:900;display:grid;box-shadow:0 10px 24px #e106003d,inset 0 0 0 1px #fff3}.brand-logo{object-fit:contain;filter:drop-shadow(0 16px 22px #2021241f);width:376px;height:192px;transition:transform .22s,filter .22s}.brand:hover .brand-logo{filter:drop-shadow(0 20px 28px #e1060029);transform:translateY(-2px)scale(1.015)}.mobile-drawer{display:contents}.mobile-menu-backdrop{display:none}.brand strong,.brand small{display:block}.brand strong{color:var(--text);font-size:.96rem}.brand small{color:var(--muted);font-size:.78rem}.main-nav{justify-content:center;gap:4px;display:flex}.nav-link,.link-button,.auth-switch button,.locked-note button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0}.nav-link{border:1px solid #0000;border-radius:999px;min-height:40px;padding:0 12px;font-weight:700;transition:all .16s}.nav-link:hover,.nav-link.is-active{color:var(--red);background:var(--red-soft);border-color:#e1060024}.nav-link:active,.theme-toggle:active,.user-pill:active{transform:translateY(1px)scale(.98)}.header-actions{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.header-actions>*{flex:0 auto}.user-pill{max-width:180px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;background:var(--gray);border:1px solid var(--border);cursor:pointer;border-radius:999px;padding:10px 12px;font-weight:800;overflow:hidden}.theme-toggle{min-height:38px;color:var(--cyan);font:inherit;background:var(--surface-strong);border:1px solid var(--border);cursor:pointer;white-space:nowrap;border-radius:999px;padding:0 12px;font-size:.84rem;font-weight:900}.menu-toggle{background:var(--gray);border:1px solid var(--border);cursor:pointer;border-radius:8px;place-items:center;width:42px;height:42px;display:none}.menu-toggle span{background:var(--text);width:18px;height:2px;margin:3px auto;display:block}.btn{min-height:42px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0 18px;font-weight:800;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(110deg,#0000 0 30%,#ffffff6b 45%,#0000 60%);transition:opacity .18s,transform .42s;position:absolute;inset:0;transform:translate(-120%)}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 34px #20212426}.btn:hover:not(:disabled):after{opacity:1;transform:translate(120%)}.btn:active:not(:disabled){transform:translateY(1px)scale(.98);box-shadow:0 8px 18px #2021241a}.btn:focus-visible{box-shadow:0 0 0 4px #e106002e,0 18px 34px #20212426}.btn:disabled{cursor:not-allowed;opacity:.65}.btn-primary{color:#fff;background:var(--red);box-shadow:0 12px 24px #e1060038}.btn-primary:hover:not(:disabled){background:var(--red-dark);box-shadow:0 16px 34px #e1060047}.btn-outline,.btn-ghost{color:var(--text);background:var(--surface-strong);border-color:var(--border)}.btn-ghost{background:0 0}.btn-light{color:var(--red);background:var(--surface-strong)}.btn-outline-light{color:#fff;background:#ffffff1f;border-color:#ffffff94}.btn-large{min-height:50px;padding:0 22px}.btn-small{min-height:36px;padding:0 14px;font-size:.86rem}.btn-full{width:100%}.config-notice{color:#642100;background:#fff3df;border-bottom:1px solid #ffd7a6;padding:12px clamp(18px,4vw,48px)}.home-page{flex-direction:column;gap:38px;padding-bottom:48px;display:flex}.hero-section{color:#fff;background:linear-gradient(90deg, #0d0e10f0, #202124bd 54%, #e1060066), linear-gradient(180deg, #0d0e1047, #0d0e10d6), var(--hero-image), var(--red-dark);isolation:isolate;background-position:50%;background-size:cover;grid-template-columns:minmax(0,1fr);align-items:center;min-height:min(680px,100svh - 120px);padding:clamp(42px,6vw,76px) clamp(18px,5vw,64px) clamp(72px,8vw,112px);display:grid;position:relative;overflow:hidden}.hero-section:before{z-index:-1;content:"";background-color:#0000;background-image:linear-gradient(90deg,#ffffff0f 1px,#0000 1px),linear-gradient(#ffffff0d 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:54px 54px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 78%);mask-image:linear-gradient(90deg,#000,#0000 78%)}.hero-section:after{content:"";background:var(--red);height:12px;position:absolute;inset:auto 0 0}.hero-copy{z-index:1;max-width:720px;position:relative}.hero-copy h1,.page-heading h1,.auth-card h1{color:inherit;margin:10px 0 14px;font-size:clamp(2.4rem,5vw,5rem);line-height:.98}.hero-copy p{color:#ffffffd6;max-width:620px;font-size:1.08rem}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.hero-signal{z-index:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid;position:absolute;bottom:28px;left:clamp(18px,5vw,64px);right:clamp(18px,5vw,64px)}.hero-signal span{color:#ffffffe6;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff38;border-radius:8px;min-height:42px;padding:10px 12px;font-size:.82rem;font-weight:900}.eyebrow{color:var(--red);text-transform:uppercase;font-size:.78rem;font-weight:900;display:inline-flex}.hero-copy .eyebrow{color:#fff}.home-grid,.stats-grid,.game-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:min(1180px,100% - 36px);margin:0 auto;display:grid}.info-card,.stat-card,.game-card,.auth-card,.admin-form,.empty-state,.ranking-table,.podium-card,.prediction-row,.admin-game-row,.mini-item{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;box-shadow:0 14px 36px #18181b12}.info-card:after,.stat-card:after,.game-card:after,.podium-card:after,.prediction-row:after,.admin-game-row:after,.mini-item:after{content:"";background:linear-gradient(90deg, var(--red), var(--cyan));opacity:0;transform-origin:0;border-radius:999px;height:2px;transition:opacity .18s,transform .18s;position:absolute;inset:auto 16px 12px;transform:scaleX(.35)}.info-card:hover,.stat-card:hover,.game-card:hover,.auth-card:hover,.admin-form:hover,.podium-card:hover,.prediction-row:hover,.admin-game-row:hover,.mini-item:hover{border-color:#e106002e;transform:translateY(-2px);box-shadow:0 20px 52px #18181b1c}.info-card:hover:after,.stat-card:hover:after,.game-card:hover:after,.podium-card:hover:after,.prediction-row:hover:after,.admin-game-row:hover:after,.mini-item:hover:after{opacity:1;transform:scaleX(1)}.info-card{min-height:190px;padding:24px}.card-number{color:var(--red);font-size:.84rem;font-weight:900}.info-card h2,.feature-band h2,.section-heading h2{color:var(--text);margin:10px 0 8px;font-size:1.35rem;line-height:1.18}.info-card p,.feature-band p,.page-heading p,.auth-card p,.empty-state p{color:var(--muted)}.feature-band{width:min(1180px,100% - 36px);color:var(--text);background:linear-gradient(135deg, var(--surface-strong), var(--gray)), var(--gray);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:24px;margin:0 auto;padding:30px;display:flex}.sports-showcase{grid-template-columns:minmax(260px,.42fr) minmax(0,1fr);align-items:stretch;gap:18px;width:min(1180px,100% - 36px);margin:0 auto;display:grid}.sports-showcase>div:first-child{color:var(--text);background:linear-gradient(135deg, #e1060014, transparent 52%), var(--surface-strong);border:1px solid var(--border);border-radius:8px;align-content:center;padding:28px;display:grid;box-shadow:0 14px 36px #18181b12}.sports-showcase h2{color:var(--text);margin:8px 0 0;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.02}.sport-tile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.sport-tile{color:#fff;background:var(--charcoal);border-radius:8px;align-items:end;min-height:172px;padding:16px;transition:transform .18s,box-shadow .18s;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 36px #18181b1f}.sport-tile:before,.sport-tile:after{content:"";pointer-events:none;position:absolute}.sport-tile:before{border:2px solid #ffffff61;border-radius:8px;inset:14px}.sport-tile:after{border:2px solid #ffffff80;border-radius:50%;width:64px;height:64px;top:-18px;right:-18px}.sport-tile:hover{transform:translateY(-4px)scale(1.015);box-shadow:0 24px 54px #18181b2e}.sport-tile span{z-index:1;font-size:1.08rem;font-weight:900;position:relative}.sport-tile-field{background:linear-gradient(90deg,#ffffff24 1px,#0000 1px) 0 0/34px 34px,linear-gradient(135deg,#0f7b43,#08a36b)}.sport-tile-court{background:radial-gradient(circle,#0000 0 42px,#ffffff6b 43px 45px,#0000 46px),linear-gradient(135deg,#b54518,#e10600)}.sport-tile-net{background:linear-gradient(90deg,#0000 49%,#ffffff8c 49% 51%,#0000 51%),linear-gradient(135deg,#04788a,#00a7b5)}.sport-tile-handball{background:radial-gradient(circle at 22% 30%,#0000 0 26px,#ffffff57 27px 29px,#0000 30px),linear-gradient(90deg,#0000 49%,#ffffff6b 49% 51%,#0000 51%),linear-gradient(135deg,#263a8f,#e10600)}.page-shell,.auth-page{width:min(1180px,100% - 36px);margin:0 auto;padding:clamp(28px,5vw,56px) 0 64px}.admin-page{width:min(1540px,100% - 28px)}.page-shell{animation:.26s both page-in}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-page{place-items:center;min-height:calc(100svh - 190px);display:grid}.page-heading{margin-bottom:26px}.page-heading.with-actions,.section-heading{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.page-heading h1{color:var(--text)}.page-heading p{max-width:720px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin-bottom:32px}.stat-card{background:linear-gradient(180deg, var(--surface-strong), var(--gray)), var(--surface-strong);padding:20px}.stat-card span,.mini-item span,.prediction-row span,.admin-game-row span,.game-card-header,.guess-summary span,.guess-summary small{color:var(--muted);font-size:.88rem}.stat-card strong{color:var(--text);margin-top:8px;font-size:2.1rem;line-height:1;display:block}.split-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:26px;display:grid}.card-list,.mini-list,.admin-game-list,.prediction-list{gap:14px;display:grid}.game-grid{width:100%;margin-top:22px}.game-card{gap:16px;padding:18px;animation:.26s both card-rise;display:grid;position:relative;overflow:hidden}.sport-illustration{opacity:.1;pointer-events:none;width:78px;height:78px;transition:opacity .18s,transform .18s;position:absolute;bottom:12px;right:14px}.game-card:hover .sport-illustration{opacity:.18;transform:translateY(-3px)rotate(-3deg)}.sport-visual-field .sport-illustration{color:var(--cyan);background:radial-gradient(circle,#0000 0 17px,currentColor 18px 20px,#0000 21px),linear-gradient(90deg,#0000 48%,currentColor 49% 51%,#0000 52%),linear-gradient(currentColor,currentColor);border:2px solid;border-radius:8px}.sport-visual-court .sport-illustration{color:var(--red);background:radial-gradient(circle,#0000 0 25px,currentColor 26px 28px,#0000 29px),linear-gradient(90deg,#0000 48%,currentColor 49% 51%,#0000 52%);border:2px solid;border-radius:8px}.sport-visual-net .sport-illustration{color:var(--cyan);background:repeating-linear-gradient(90deg,currentColor 0 2px,#0000 2px 12px),repeating-linear-gradient(currentColor 0 2px,#0000 2px 12px);border-radius:8px}.sport-visual-handball .sport-illustration,.sport-visual-dodgeball .sport-illustration,.sport-visual-generic .sport-illustration{color:var(--red);background:radial-gradient(circle at 35% 35%,#ffffffb8 0 6px,#0000 7px),radial-gradient(circle,currentColor 0 34px,#0000 35px);border-radius:50%}.sport-visual-table .sport-illustration{color:var(--cyan);background:linear-gradient(90deg,#0000 0 44%,currentColor 45% 55%,#0000 56%),radial-gradient(circle at 74% 28%,currentColor 0 10px,#0000 11px),linear-gradient(currentColor,currentColor);border-radius:8px}.prediction-save-burst{z-index:5;color:#fff;pointer-events:none;background:radial-gradient(circle,#05603ae6,#05603a42 44%,#0000 70%),#05603a14;place-items:center;animation:1.15s both save-burst;display:grid;position:absolute;inset:0}.prediction-save-burst span{background:#05603a;border:1px solid #ffffff57;border-radius:999px;align-items:center;min-height:42px;padding:0 18px;font-weight:900;animation:.65s both save-label-pop;display:inline-flex;box-shadow:0 18px 42px #05603a52}@keyframes save-burst{0%{opacity:0;transform:scale(.96)}18%,72%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.04)}}@keyframes save-label-pop{0%{transform:translateY(8px)scale(.88)}55%{transform:translateY(0)scale(1.04)}to{transform:translateY(0)scale(1)}}.game-card:after{inset:auto 18px 14px}.game-card:before,.admin-form:before,.ranking-table:before{content:"";background:linear-gradient(90deg, var(--red), var(--cyan), transparent);height:3px;position:absolute;inset:0 0 auto}.game-card.is-compact{padding:16px}.game-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.sport-badge{min-height:28px;color:var(--cyan);background:#00a7b51a;border:1px solid #00a7b52e;border-radius:999px;align-items:center;gap:7px;padding:0 10px;font-size:.78rem;font-weight:900;display:inline-flex}.sport-badge:before{content:"";background:currentColor;border-radius:50%;width:8px;height:8px;box-shadow:12px 0 #e106008c,24px 0 #2021242e}.deadline-pill{color:#7a4200;background:#fff7e8;border:1px solid #ffd89a;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:10px 12px;transition:background .18s,color .18s,border-color .18s,box-shadow .18s;display:flex}.deadline-pill span{color:inherit;text-transform:uppercase;font-size:.82rem;font-weight:900}.deadline-pill strong{min-width:112px;color:var(--text);text-align:right}.deadline-pill.is-urgent{color:#fff;background:var(--red);border-color:var(--red-dark);animation:1.8s ease-in-out infinite urgent-pulse;box-shadow:0 12px 24px #e1060038}.deadline-pill.is-urgent strong{color:#fff}.deadline-pill.is-closed{color:#8a1f11;background:#fff0ed;border-color:#ffd2cb}@keyframes urgent-pulse{0%,to{box-shadow:0 12px 24px #e1060038}50%{box-shadow:0 18px 36px #e1060057}}.status-badge{border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:.78rem;font-weight:900;display:inline-flex}.status-open,.status-aberto{color:#05603a;background:#dff8ea}.status-closed,.status-encerrado{color:#7a4200;background:#fff0cf}.status-finished,.status-finalizado{color:#343a40;background:#e8eaed}.status-expired{color:#8a1f11;background:#fff0ed}.scoreboard{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.scoreboard strong{min-width:0;color:var(--text);overflow-wrap:anywhere}.scoreboard strong:last-child{text-align:right}.score-display{color:#fff;background:var(--charcoal);border-radius:8px;place-items:center;min-width:58px;min-height:42px;font-weight:900;display:grid}.guess-summary{background:var(--gray);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.guess-summary strong{color:var(--red)}.score-detail{justify-items:end;gap:2px;display:grid}.score-detail strong{color:var(--red)}.guess-form{grid-template-columns:1fr auto 1fr auto;align-items:end;gap:10px;display:grid}.guess-form>span{color:var(--muted);padding-bottom:10px;font-weight:900}.form-stack,.form-grid{gap:14px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}label{color:var(--text);gap:7px;font-weight:800;display:grid}input,select{width:100%;min-height:44px;color:var(--text);font:inherit;background:var(--surface-strong);border:1px solid var(--border);box-sizing:border-box;border-radius:8px;padding:0 12px;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s}input:hover,select:hover{border-color:#00a7b552}input:focus,select:focus,button:focus-visible{outline-offset:2px;outline:3px solid #e106002e}input:focus,select:focus{border-color:#e106006b;transform:translateY(-1px);box-shadow:0 0 0 4px #e1060014}.locked-note{color:var(--muted);background:var(--gray);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.locked-note button,.link-button,.auth-switch button{color:var(--red);font-weight:900}.auth-card{width:min(480px,100%);padding:30px}.auth-card h1{color:var(--text);font-size:2.4rem}.auth-card .form-stack{margin-top:24px}.auth-switch{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.alert{border-radius:8px;margin-bottom:18px;padding:12px 14px;font-weight:800}.alert-error{color:#8a1f11;background:#fff0ed;border:1px solid #ffd2cb}.alert-success{color:#05603a;background:#e9fbf0;border:1px solid #b7efcc}.segmented-control{background:var(--gray);border:1px solid var(--border);border-radius:999px;flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.segmented-control button{min-height:36px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 14px;font-weight:800;transition:color .16s,background .16s,transform .16s,box-shadow .16s}.segmented-control button:hover{color:var(--red);background:var(--surface-strong);box-shadow:0 8px 18px #18181b14}.segmented-control button:active{transform:scale(.97)}.segmented-control button.is-active{color:#fff;background:var(--red)}.empty-state{text-align:center;padding:28px}.empty-state h3{color:var(--text);margin:0 0 8px;font-size:1.3rem}.empty-state .btn{margin-top:18px}.loading-state{min-height:280px;color:var(--muted);justify-content:center;align-items:center;gap:12px;font-weight:800;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--red);border-radius:50%;width:22px;height:22px;animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.ranking-wrap{gap:22px;display:grid}.ranking-tabs{margin-bottom:20px}.podium{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:14px;display:grid}.podium-card{min-height:132px;color:var(--text);background:#fff;padding:20px}.podium-card span{color:var(--red);font-weight:900}.podium-card strong{overflow-wrap:anywhere;margin:14px 0 8px;font-size:1.25rem;display:block}.podium-card small{color:var(--muted);font-weight:900}.podium-card em{color:var(--cyan);margin-top:10px;font-size:.78rem;font-style:normal;font-weight:900;display:inline-flex}.podium-1{border-color:#e10600;min-height:170px;box-shadow:0 18px 38px #e106002e}.podium-card span{background:var(--red-soft);border-radius:999px;align-items:center;min-height:28px;padding:0 10px;display:inline-flex}.podium-1 span{color:#fff;background:var(--red)}.ranking-table{position:relative;overflow:hidden}.ranking-head,.ranking-row{grid-template-columns:.8fr 2.2fr repeat(3,1fr);align-items:center;gap:12px;padding:14px 18px;display:grid}.ranking-head{color:var(--muted);text-transform:uppercase;background:var(--gray);font-size:.82rem;font-weight:900}.ranking-row+.ranking-row{border-top:1px solid var(--border)}.ranking-row strong{color:var(--red)}.ranking-row.is-top-ranked{background:linear-gradient(90deg,#e1060012,#0000)}.ranking-row.is-ranking-moving,.podium-card.is-ranking-moving{animation:.85s both ranking-move}@keyframes ranking-move{0%{background-color:#00a7b52e;transform:translateY(-8px)scale(1.01);box-shadow:0 0 #00a7b500}45%{box-shadow:0 18px 34px #00a7b524}to{box-shadow:none;background-color:#0000;transform:translateY(0)scale(1)}}@keyframes card-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.prediction-row,.admin-game-row,.mini-item{justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.prediction-row strong,.admin-game-row strong,.mini-item strong{color:var(--text);display:block}.admin-form{margin-bottom:34px;padding:22px;position:relative;overflow:hidden}.admin-tabs{margin-bottom:18px}.admin-tab-panel{gap:16px;animation:.22s both tab-panel-in;display:grid}.admin-tab-panel .section-heading p{color:var(--muted);font-size:.9rem}.route-loading{width:min(1180px,100% - 32px);color:var(--muted);text-align:center;background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;margin:48px auto;padding:28px;font-weight:900}.calendar-page{gap:18px;display:grid}.calendar-highlight{color:#fff;background:linear-gradient(135deg, #e10600eb, #9b0000eb), var(--red);border-radius:8px;grid-template-columns:minmax(260px,1fr) minmax(220px,.55fr);gap:16px;padding:22px;display:grid;box-shadow:0 18px 44px #e1060033}.calendar-highlight strong{margin-top:6px;font-size:clamp(1.45rem,3vw,2.4rem);line-height:1.05;display:block}.calendar-highlight p{color:#ffffffdb;margin:8px 0 0;font-weight:800}.calendar-highlight .eyebrow{color:#ffffffc7}.calendar-mini-list{align-content:center;gap:8px;display:grid}.calendar-mini-list span{color:#ffffffeb;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:8px;padding:10px 12px;font-size:.86rem;font-weight:900}.calendar-list{gap:10px;display:grid}.public-tournament-board,.tournament-library{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;gap:14px;padding:20px;display:grid;box-shadow:0 16px 40px #18181b12}.tournament-board-grid,.tournament-library-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.public-tournament-card,.tournament-summary-card{background:linear-gradient(135deg, #00a7b51a, transparent 36%), var(--surface);border:1px solid var(--border);border-radius:8px;gap:14px;padding:16px;display:grid;overflow:hidden;box-shadow:0 14px 32px #18181b12}.standings-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;display:grid}.standings-table{border:1px solid var(--border);background:#ffffffc7;border-radius:8px;gap:6px;padding:12px;display:grid}[data-theme=dark] .standings-table{background:#ffffff0d}.standings-table>strong{color:var(--cyan);text-transform:uppercase;font-size:.8rem}.standings-row{color:var(--text);grid-template-columns:minmax(90px,1fr) 36px 36px 36px;align-items:center;gap:8px;font-size:.82rem;font-weight:800;display:grid}.standings-row span:not(:first-child){text-align:center}.standings-head{color:var(--muted);text-transform:uppercase;font-size:.72rem}.mini-bracket,.public-bracket-lane{gap:8px;display:grid}.mini-bracket span,.public-bracket-lane span{color:var(--text);background:var(--gray);border:1px solid var(--border);border-radius:8px;gap:3px;padding:10px 12px;font-size:.84rem;font-weight:900;display:grid}.mini-bracket strong,.public-bracket-lane strong{color:var(--red);text-transform:uppercase;font-size:.72rem}.calendar-row{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:14px;padding:16px;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid;box-shadow:0 12px 28px #18181b0f}.calendar-row:hover{border-color:#00a7b53d;transform:translateY(-2px);box-shadow:0 18px 34px #18181b17}.calendar-row strong,.calendar-row small{display:block}.calendar-row strong{color:var(--text);margin-top:7px;font-size:1.05rem}.calendar-row small,.calendar-row time{color:var(--muted);font-weight:800}.calendar-row time{text-align:right}.admin-participant-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}@keyframes tab-panel-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.admin-list,.admin-sport-form{gap:16px;display:grid}.sport-create-row,.team-create-row,.admin-filter-panel,.public-filter-panel{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(160px,.35fr));align-items:end;gap:12px;display:grid}.admin-filter-panel,.public-filter-panel{margin-top:14px}.sport-create-row{grid-template-columns:minmax(220px,1fr) auto}.team-create-row{grid-template-columns:minmax(150px,.25fr) minmax(190px,1fr) minmax(180px,.7fr) auto}.team-group-list{gap:18px;display:grid}.team-group{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;gap:12px;padding:18px;display:grid;box-shadow:0 14px 36px #18181b12}.team-chip-list{flex-wrap:wrap;gap:8px;display:flex}.team-chip{min-height:40px;color:var(--text);background:var(--gray);border:1px solid var(--border);border-radius:999px;align-items:center;gap:8px;padding:5px 6px 5px 10px;font-size:.84rem;font-weight:900;transition:transform .16s,box-shadow .16s,border-color .16s;display:inline-flex}.team-chip:hover{border-color:#00a7b547;transform:translateY(-1px);box-shadow:0 10px 22px #18181b17}.form-hint{color:#7a4200;background:#fff7e8;border:1px solid #ffd89a;border-radius:8px;margin-top:14px;padding:12px 14px;font-weight:800}.bracket-builder{background:linear-gradient(135deg, #e1060014, transparent 34%), linear-gradient(315deg, #00a7b524, transparent 38%), var(--surface-strong);border:1px solid var(--border);border-radius:8px;gap:16px;margin-bottom:22px;padding:22px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 48px #18181b14}.bracket-builder:before{pointer-events:none;content:"";background-color:#0000;background-image:linear-gradient(90deg,#0000 49%,#00a7b51f 50%,#0000 51%),linear-gradient(#0000 49%,#e106001a 50%,#0000 51%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:42px 42px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000);mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000)}.bracket-builder>*{z-index:1;position:relative}.bracket-controls{grid-template-columns:repeat(4,minmax(150px,1fr));align-items:end;gap:12px;display:grid}.tournament-groups-preview{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.tournament-group-card{background:#ffffffdb;border:1px solid #00a7b538;border-radius:8px;gap:7px;padding:14px;display:grid;box-shadow:0 10px 24px #18181b0f}.tournament-group-card span{color:var(--cyan);text-transform:uppercase;letter-spacing:0;font-size:.76rem;font-weight:900}.tournament-group-card strong{color:var(--text);font-size:.92rem}.group-team-editor{text-transform:none;gap:4px;min-height:auto;font-size:.76rem}.group-team-editor small{color:var(--muted);font-weight:900}.group-team-editor select{min-height:36px;padding:0 10px;font-size:.86rem}.bracket-wheel{background:#ffffffc7;border:1px dashed #00a7b561;border-radius:8px;gap:8px;padding:10px;display:flex;overflow:hidden}.bracket-wheel span{min-width:max-content;min-height:34px;color:var(--text);border:1px solid var(--border);background:#fff;border-radius:999px;align-items:center;padding:0 12px;font-size:.82rem;font-weight:900;display:inline-flex;box-shadow:0 8px 18px #18181b12}.bracket-builder.is-spinning .bracket-wheel span{animation:.62s cubic-bezier(.16,1,.3,1) both bracket-spin}.bracket-preview{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.bracket-match{border:1px solid var(--border);background:#ffffffdb;border-radius:8px;gap:7px;min-height:112px;padding:14px;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid;box-shadow:0 12px 26px #18181b12}.bracket-match:hover{border-color:#e1060038;transform:translateY(-2px);box-shadow:0 18px 36px #18181b1a}.bracket-match span{color:var(--red);text-transform:uppercase;letter-spacing:0;font-size:.72rem;font-weight:900}.bracket-match strong{color:var(--text);font-size:1.02rem;line-height:1.25}.bracket-match small{color:var(--muted);font-weight:800}.bracket-match.is-bye{background:#fff7e8;border-color:#ffd89a}.bracket-match.is-group{border-color:#00a7b53d}@keyframes bracket-spin{0%{opacity:.45;transform:translate(-20px)scale(.92)}45%{opacity:1;transform:translate(12px)scale(1.04)}to{opacity:1;transform:translate(0)scale(1)}}.sport-chip-list{flex-wrap:wrap;gap:8px;display:flex}.sport-chip{min-height:30px;color:var(--text);background:var(--gray);border:1px solid var(--border);border-radius:999px;align-items:center;gap:8px;padding:0 10px;font-size:.82rem;font-weight:900;transition:transform .16s,box-shadow .16s,border-color .16s;display:inline-flex}.sport-chip:hover{border-color:#e106003d;transform:translateY(-1px);box-shadow:0 10px 22px #18181b17}.sport-chip small{color:var(--muted);font-weight:800}.sport-chip-editable{min-height:38px;padding:4px 6px 4px 12px}.sport-chip-editable.is-selected{color:#fff;background:var(--red);border-color:var(--red-dark);box-shadow:0 12px 24px #e106002e}.sport-select-button{min-height:28px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-weight:900;display:inline-flex}.sport-chip-icon{width:24px;height:24px;color:var(--cyan);background:var(--surface-strong);border:1px solid var(--border);border-radius:50%;flex:0 0 24px;display:inline-flex;position:relative;overflow:hidden}.sport-chip-icon:before,.sport-chip-icon:after{content:"";position:absolute}.sport-chip-icon.sport-visual-field{background:linear-gradient(90deg,#0000 47%,currentColor 48% 52%,#0000 53%),#dff8ea;border-radius:6px}.sport-chip-icon.sport-visual-court{color:var(--red);background:radial-gradient(circle,#0000 0 7px,currentColor 8px 9px,#0000 10px),#fff0ed}.sport-chip-icon.sport-visual-net{background:repeating-linear-gradient(90deg,currentColor 0 1px,#0000 1px 6px),repeating-linear-gradient(currentColor 0 1px,#0000 1px 6px),#e8fbff;border-radius:6px}.sport-chip-icon.sport-visual-handball,.sport-chip-icon.sport-visual-dodgeball,.sport-chip-icon.sport-visual-generic{color:var(--red);background:radial-gradient(circle at 35% 35%, #ffffffe6 0 2px, transparent 3px), var(--red)}.sport-chip-icon.sport-visual-table{background:radial-gradient(circle at 72% 28%,currentColor 0 3px,#0000 4px),linear-gradient(90deg,#0000 46%,currentColor 47% 53%,#0000 54%),#e8fbff;border-radius:6px}.sport-chip-editable.is-selected .sport-select-button small{color:#ffffffd1}.chip-action{min-height:28px;color:var(--red);font:inherit;background:var(--surface-strong);border:1px solid var(--border);cursor:pointer;border-radius:999px;padding:0 8px;font-size:.78rem;font-weight:900;transition:background .16s,color .16s,transform .16s}.chip-action:hover:not(:disabled){color:#fff;background:var(--red);transform:translateY(-1px)}.chip-action:disabled{cursor:not-allowed;opacity:.5}.admin-filter-bar{width:100%;padding-bottom:2px;display:flex;overflow-x:auto}.selected-sport-bar{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;padding:16px 18px;display:flex}.selected-sport-bar strong{color:var(--text);font-size:1.25rem;display:block}.admin-segmented{max-width:100%}.admin-game-row>div{gap:4px;display:grid}.admin-page .stats-grid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.master-badge,.master-route-note{color:#fff;background:var(--charcoal);border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:.84rem;font-weight:900;display:inline-flex}.admin-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}.admin-side{gap:28px;display:grid}.admin-game-row-detailed{grid-template-columns:minmax(240px,1.2fr) minmax(170px,.55fr) minmax(230px,.7fr) minmax(118px,.35fr);align-items:center;gap:14px;display:grid}.final-score-form{grid-template-columns:repeat(2,minmax(80px,1fr));gap:10px;display:grid}.final-score-form label{font-size:.78rem}.final-score-form input{min-height:38px}.initial-score{background:var(--gray);border:1px solid var(--border);border-radius:8px;align-content:center;justify-items:start;min-height:72px;padding:12px;display:grid}.initial-score strong{color:var(--text);font-size:1.35rem;line-height:1}.admin-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px;display:flex}.prediction-counts{justify-items:end;gap:4px;min-width:112px;display:grid}.prediction-counts strong{color:var(--red)}.prediction-admin-list{gap:12px;display:grid}.game-groups{gap:26px;margin-top:18px;display:grid}.game-group{gap:14px;display:grid}.game-group .game-grid{margin-top:0}.admin-prediction-group{color:var(--muted);background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;gap:6px;padding:14px;display:grid}.admin-prediction-group strong{color:var(--text)}.admin-prediction-group small{color:var(--red);font-weight:900}.pending-list{flex-wrap:wrap;gap:6px;margin:4px 0;display:flex}.pending-list span{color:#7a4200;background:#fff0cf;border:1px solid #ffd89a;border-radius:999px;align-items:center;min-height:26px;padding:0 8px;font-size:.78rem;font-weight:900;display:inline-flex}.pending-list.is-complete span{color:#05603a;background:#dff8ea;border-color:#b7efcc}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);background:radial-gradient(circle,#0000 0 88px,#ffffff24 89px 91px,#0000 92px) 0 0/220px 220px,linear-gradient(90deg,#ffffff14 1px,#0000 1px) 0 0/42px 42px,linear-gradient(#ffffff0f 1px,#0000 1px) 0 0/42px 42px,#0d0e1094;place-items:center;padding:18px;animation:.18s both fade-in;display:grid;position:fixed;inset:0}.confirm-modal{width:min(480px,100%);color:var(--text);background:linear-gradient(135deg, #e1060014, transparent 42%), linear-gradient(180deg, var(--surface-strong), var(--gray)), var(--surface-strong);border:1px solid var(--border);border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:16px;padding:26px;animation:.22s cubic-bezier(.2,.8,.2,1) both modal-in;display:grid;position:relative;box-shadow:0 34px 90px #00000052}.confirm-modal:before{content:"";background:linear-gradient(90deg, var(--red), var(--cyan));border-radius:8px 8px 0 0;height:4px;position:absolute;inset:0 0 auto}.confirm-modal-mark{background:radial-gradient(circle at center, var(--surface-strong) 0 10px, transparent 11px), linear-gradient(90deg, transparent 47%, #fff9 48% 52%, transparent 53%), var(--red);border-radius:50%;width:48px;height:48px;margin-top:3px;animation:1.8s ease-in-out infinite modal-mark-pulse;box-shadow:0 14px 28px #e106003d,inset 0 0 0 2px #ffffff38}.confirm-modal-content{min-width:0}.confirm-modal h2{color:var(--text);margin:8px 0 10px;font-size:1.5rem}.confirm-modal p{color:var(--muted)}.modal-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.modal-actions .btn-primary{box-shadow:0 14px 28px #e106003d,inset 0 0 0 1px #ffffff1f}@keyframes modal-mark-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.dashboard-history-title{margin-top:26px}.dashboard-spotlight{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:28px;display:grid}.dashboard-spotlight article{min-height:150px;color:var(--text);background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;align-content:start;gap:8px;padding:20px;display:grid;box-shadow:0 14px 36px #18181b12}.dashboard-spotlight strong{color:var(--text);font-size:1.3rem;line-height:1.15}.dashboard-spotlight small{color:var(--muted);font-weight:800}.dashboard-spotlight .btn{justify-self:start;margin-top:6px}.completion-banner{color:#05603a;background:linear-gradient(135deg,#e9fbf0,#f6fff9);border:1px solid #b7efcc;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:18px 20px;display:flex;box-shadow:0 14px 36px #05603a14}.completion-banner strong{color:#064e3b;font-size:1.1rem;display:block}.completion-banner p{color:#28724f}.site-footer{color:var(--muted);background:var(--charcoal);justify-content:space-between;align-items:center;gap:18px;padding:28px clamp(18px,4vw,48px);display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.prediction-save-burst,.sport-illustration,.mobile-drawer,.confirm-modal-mark{transition:none!important;animation:none!important}}.site-footer strong,.site-footer span{display:block}.site-footer strong{color:#fff}:root[data-theme=dark] .site-header{background:#05080fd6;border-bottom-color:#22d3ee29}:root[data-theme=dark] .brand-mark,:root[data-theme=dark] .btn-primary{background:linear-gradient(135deg, var(--red), #7c2d12)}:root[data-theme=dark] .btn-outline,:root[data-theme=dark] .btn-ghost,:root[data-theme=dark] .theme-toggle{background:#0d1422c7}:root[data-theme=dark] .config-notice{color:#dbeafe;background:#22d3ee1f;border-bottom-color:#22d3ee47}:root[data-theme=dark] .hero-section{background:linear-gradient(90deg, #030712f5, #08111fd6 54%, #22d3ee42), linear-gradient(180deg, #03071233, #030712e0), var(--hero-image), #05080f;background-position:50%;background-size:cover}:root[data-theme=dark] .hero-section:after{background:linear-gradient(90deg, var(--red), var(--cyan))}:root[data-theme=dark] .info-card,:root[data-theme=dark] .stat-card,:root[data-theme=dark] .game-card,:root[data-theme=dark] .auth-card,:root[data-theme=dark] .admin-form,:root[data-theme=dark] .empty-state,:root[data-theme=dark] .ranking-table,:root[data-theme=dark] .podium-card,:root[data-theme=dark] .prediction-row,:root[data-theme=dark] .admin-game-row,:root[data-theme=dark] .mini-item,:root[data-theme=dark] .admin-prediction-group,:root[data-theme=dark] .sports-showcase>div:first-child,:root[data-theme=dark] .dashboard-spotlight article{box-shadow:0 20px 54px #00000047}:root[data-theme=dark] .sports-showcase>div:first-child,:root[data-theme=dark] .confirm-modal{background:linear-gradient(135deg, #22d3ee14, transparent 46%), var(--surface-strong)}:root[data-theme=dark] .completion-banner{color:#bbf7d0;background:#22c55e1f;border-color:#22c55e4d}:root[data-theme=dark] .completion-banner strong,:root[data-theme=dark] .completion-banner p{color:#bbf7d0}:root[data-theme=dark] .deadline-pill{color:#bae6fd;background:#22d3ee1a;border-color:#22d3ee47}:root[data-theme=dark] .deadline-pill.is-closed,:root[data-theme=dark] .alert-error{color:#fecaca;background:#ff3b361f;border-color:#ff3b3657}:root[data-theme=dark] .alert-success{color:#bbf7d0;background:#22c55e1f;border-color:#22c55e4d}:root[data-theme=dark] .status-open,:root[data-theme=dark] .status-aberto,:root[data-theme=dark] .pending-list.is-complete span{color:#bbf7d0;background:#22c55e24}:root[data-theme=dark] .status-closed,:root[data-theme=dark] .status-encerrado,:root[data-theme=dark] .pending-list span{color:#fde68a;background:#f59e0b24;border-color:#f59e0b47}:root[data-theme=dark] .status-finished,:root[data-theme=dark] .status-finalizado{color:#dbeafe;background:#94a3b829}:root[data-theme=dark] .status-expired{color:#fecaca;background:#ff3b361f}:root[data-theme=dark] .sport-badge{color:#67e8f9;background:#22d3ee1a;border-color:#22d3ee3d}:root[data-theme=dark] .score-display,:root[data-theme=dark] .site-footer,:root[data-theme=dark] .master-badge,:root[data-theme=dark] .master-route-note{background:#030712}@media (width<=1260px){.admin-page{width:min(100% - 24px,1180px)}.admin-layout{grid-template-columns:1fr}.admin-game-row-detailed{grid-template-columns:minmax(0,1.2fr) minmax(170px,.55fr) minmax(230px,.65fr)}.prediction-counts{justify-items:start}}@media (width<=980px){.site-header{grid-template-columns:auto auto}.menu-toggle{z-index:70;justify-self:end;display:block;position:relative}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-5px)rotate(-45deg)}.menu-toggle span{transition:transform .18s,opacity .18s}.mobile-menu-backdrop{z-index:48;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(circle at 72% 18%,#e1060042,#0000 28%),#0d0e107a;border:0;animation:.16s both fade-in;display:block;position:fixed;inset:0}.mobile-drawer{z-index:60;background:linear-gradient(135deg, #e106001a, transparent 42%), var(--surface-strong);border-left:1px solid var(--border);align-content:start;gap:18px;width:min(360px,100vw - 42px);padding:104px 18px 22px;transition:transform .22s cubic-bezier(.2,.8,.2,1);display:grid;position:fixed;top:0;bottom:0;right:0;transform:translate(104%);box-shadow:-24px 0 70px #00000038}.mobile-drawer.is-open{transform:translate(0)}.main-nav{flex-direction:column;justify-content:flex-start;gap:8px;width:100%;padding-top:0;display:flex}.main-nav .nav-link{background:var(--gray);border-color:var(--border);border-radius:8px;justify-content:flex-start;min-height:48px;padding:0 14px}.header-actions{border-top:1px solid var(--border);grid-column:auto;justify-content:stretch;width:100%;padding-top:14px;display:grid}.header-actions>*{width:100%}.hero-section{grid-template-columns:1fr;min-height:auto}.hero-signal{grid-template-columns:1fr;margin-top:32px;position:relative;bottom:auto;left:auto;right:auto}.home-grid,.game-grid,.stats-grid,.podium,.dashboard-spotlight,.sports-showcase,.sport-tile-grid,.split-layout,.admin-layout,.admin-game-row-detailed{grid-template-columns:1fr}.feature-band,.page-heading.with-actions,.selected-sport-bar,.site-footer{flex-direction:column;align-items:flex-start}.ranking-head{display:none}.ranking-row{grid-template-columns:1fr 1fr}.ranking-row span:nth-child(2){grid-area:1/1/auto/-1;font-weight:900}}@media (width<=640px){.site-header{min-height:132px;padding:12px 16px}.brand-logo{width:220px;max-width:calc(100vw - 104px);height:112px}.header-actions{flex-wrap:wrap}.hero-section,.page-shell,.auth-page,.home-grid,.sports-showcase,.feature-band{width:100%}.page-shell,.auth-page{padding-left:12px;padding-right:12px}.hero-section{min-height:auto;padding:32px 16px 38px}.sport-tile{min-height:136px}.hero-actions,.hero-actions .btn,.feature-band .btn,.page-heading.with-actions .btn{width:100%}.home-grid,.sports-showcase{box-sizing:border-box;padding:0 16px}.feature-band{border-left:0;border-right:0;border-radius:0}.guess-form,.form-grid,.sport-create-row,.team-create-row,.bracket-controls,.admin-filter-panel,.public-filter-panel{grid-template-columns:1fr}.header-actions>*,.theme-toggle{flex:130px}.user-pill{width:100%;max-width:none}.btn{white-space:normal;min-height:48px}input,select{min-height:50px;font-size:1rem}.guess-form>span{display:none}.scoreboard{text-align:center;grid-template-columns:1fr}.scoreboard strong:last-child{text-align:center}.game-card-header,.deadline-pill,.guess-summary,.score-detail,.completion-banner,.prediction-row,.admin-game-row,.admin-actions,.prediction-counts,.mini-item,.locked-note{flex-direction:column;align-items:flex-start}.score-detail{justify-items:start}.game-card,.prediction-row,.admin-game-row,.mini-item,.admin-prediction-group,.confirm-modal{padding:18px}.confirm-modal{grid-template-columns:1fr}.confirm-modal-mark{width:42px;height:42px}.modal-actions{flex-direction:column-reverse}.modal-actions .btn{width:100%}.prediction-counts{justify-items:start}.final-score-form{grid-template-columns:1fr;width:100%}.sport-chip-editable{justify-content:flex-start;width:100%}.team-chip{width:100%}.calendar-highlight,.calendar-row{grid-template-columns:1fr}.calendar-row time{text-align:left}.bracket-builder{padding:16px}.bracket-preview{grid-template-columns:1fr}.admin-filter-bar{overflow-x:visible}.segmented-control{border-radius:8px;grid-template-columns:1fr;width:100%;display:grid}.segmented-control button{border-radius:8px}.ranking-row{grid-template-columns:1fr}}
