:root{color:#f4f7fb;font-synthesis:none;background:#0c1017;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at top,#192233 0,#0c1017 46%);min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.app-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:32px 0 56px}.topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.topbar h1,.panel h1,.panel h2{margin:0}.eyebrow{color:#8da2bd;letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px;font-size:.75rem;font-weight:700}.panel,.match-connect-panel{background:#141b27f0;border:1px solid #273247;border-radius:18px;box-shadow:0 18px 50px #00000038}.panel{padding:24px}.narrow-panel{width:min(480px,100%);margin:80px auto 0}.waiting-panel{text-align:center;max-width:640px;margin:48px auto}.muted{color:#9aa8bb;line-height:1.55}.centered{text-align:center}.auth-actions{gap:16px;margin-top:28px;display:grid}.auth-form{gap:16px;margin-top:0;display:grid}.auth-wide-button{width:100%}.auth-divider{color:#718097;text-align:center;align-items:center;gap:12px;font-size:.75rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#2d384c;flex:1;height:1px}.auth-divider span{flex:none}.auth-hint{color:#7f8da1;margin:-6px 0 0;font-size:.76rem;line-height:1.45}.auth-feedback{margin:0;line-height:1.5}.auth-notice{color:#aef0c6}.auth-form label,.match-id-field{color:#cbd5e3;gap:8px;font-size:.9rem;font-weight:600;display:grid}input{color:#f4f7fb;background:#101722;border:1px solid #344158;border-radius:10px;outline:none;width:100%;padding:12px 14px}.primary-button,.secondary-button,.danger-button{border:0;border-radius:10px;padding:11px 16px;font-weight:700}.secondary-button{color:#e6edf7;background:#283448}.danger-button{color:#ffe8e8;background:#6b2830}.error-message{color:#ff9fa7}.mode-banner{color:#bac6d8;text-align:center;background:#171e2a;border:1px solid #465267;border-radius:10px;margin-top:20px;padding:10px 12px;font-size:.8rem}.match-connect-panel{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;margin-bottom:20px;padding:16px;display:grid}.game-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:20px;display:grid}.game-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.connection-pill{border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:800}.connection-pill.offline{color:#ffd0d0;background:#442127}.connect4-board-shell{width:min(100%,690px);margin:0 auto}.connect4-column-controls{grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:8px;display:grid}.column-button{color:#d6dfed;background:#273348;border:0;border-radius:8px;min-height:38px;font-weight:900}.connect4-board{background:linear-gradient(#344968,#26364e);border-radius:18px;grid-template-columns:repeat(7,1fr);gap:8px;padding:14px;display:grid}.board-cell{aspect-ratio:1;background:#101620;border-radius:50%;place-items:center;display:grid}.disc{background:#17202d;border-radius:50%;width:82%;height:82%;box-shadow:inset 0 4px 9px #00000059}.disc.player-zero{background:linear-gradient(145deg,#f0c858,#d79a24)}.disc.player-one{background:linear-gradient(145deg,#ef6d79,#bd3548)}.status-list{margin:0;display:grid}.status-list>div{border-bottom:1px solid #293449;justify-content:space-between;gap:16px;padding:12px 0;display:flex}.status-list dt{color:#8f9daf}.status-list dd{color:#eef3fa;text-align:right;margin:0;font-weight:700}.status-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;display:grid}.result-card{color:#f1f5fb;text-align:center;background:#202b3d;border:1px solid #4b5c77;border-radius:12px;margin-top:18px;padding:16px;font-weight:800}.return-lobby-button{width:100%;margin-top:10px}.authority-note{color:#8290a4;margin:16px 0 0;font-size:.76rem;line-height:1.5}@media (width<=860px){.game-layout{grid-template-columns:1fr}}@media (width<=600px){.app-shell{width:calc(100% - 20px);padding-top:18px}.topbar{flex-direction:column;align-items:flex-start}.match-connect-panel{grid-template-columns:1fr}.panel{padding:16px}.connect4-board{gap:5px;padding:9px}.connect4-column-controls{gap:5px}.column-button{min-height:34px}}.tournament-panel{margin-top:1rem}.tournament-summary{flex-wrap:wrap;gap:.75rem 1.25rem;margin:1rem 0;display:flex}.tournament-champion{font-size:1.1rem}.tournament-bracket{gap:.75rem;margin-top:1rem;display:grid}.tournament-fixture{border:1px solid;border-radius:.75rem;gap:.2rem;padding:.75rem;display:grid}.player-hub-panel{width:min(100%,860px)}.hub-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.hub-player-chip{white-space:nowrap;border:1px solid;border-radius:999px;padding:.4rem .7rem;font-size:.85rem}.hub-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin:1.2rem 0;display:grid}.hub-tab{font:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:.7rem;padding:.65rem .45rem}.hub-tab-active{font-weight:700;box-shadow:inset 0 0 0 1px}.hub-stack{gap:1rem;display:grid}.hub-profile-card{border:1px solid color-mix(in srgb, currentColor 22%, transparent);border-radius:1rem;gap:1rem;padding:1rem;display:grid}.hub-profile-card h3{margin:.2rem 0 0}.hub-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;display:grid}.hub-stat-grid>div{background:color-mix(in srgb, currentColor 6%, transparent);border-radius:.75rem;gap:.25rem;padding:.75rem;display:grid}.hub-stat-grid span{opacity:.7;font-size:.78rem}.hub-stat-grid strong{font-size:1.1rem}.hub-status-line{margin:0;font-weight:600}.hub-search{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.7rem;display:grid}.hub-search label{gap:.35rem;display:grid}.hub-list{gap:.5rem;display:grid}.hub-list-row{border:1px solid color-mix(in srgb, currentColor 18%, transparent);text-align:left;width:100%;color:inherit;background:0 0;border-radius:.8rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.75rem;display:grid}.hub-list-button{font:inherit;cursor:pointer}.hub-list-main{gap:.18rem;min-width:0;display:grid}.hub-list-main strong,.hub-list-main small{overflow-wrap:anywhere}.hub-list-main small{opacity:.7}.hub-rank,.hub-rating,.hub-state,.hub-outcome{font-weight:700}.hub-state{opacity:.75;font-size:.75rem}.hub-outcome-win{font-weight:800}.hub-outcome-loss,.hub-outcome-void{opacity:.8}.hub-security-note{opacity:.65;margin:1rem 0 0;font-size:.78rem}@media (width<=700px){.hub-heading{display:grid}.hub-player-chip{justify-self:start}.hub-tabs,.hub-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-search{grid-template-columns:1fr}.hub-list-row{grid-template-columns:auto minmax(0,1fr)}.hub-list-row>:last-child{grid-column:2;justify-self:start}}:root{--sg-bg:#07111f;--sg-bg-deep:#050c16;--sg-surface:#0f1b2d;--sg-surface-soft:#132238;--sg-surface-raised:#182943;--sg-border:#94a3b829;--sg-border-strong:#94a3b847;--sg-text:#f8fafc;--sg-text-soft:#dbe4ef;--sg-muted:#93a4ba;--sg-muted-dark:#71849d;--sg-accent:#5ee1a1;--sg-accent-strong:#34d399;--sg-accent-dark:#06291c;--sg-blue:#7f8cff;--sg-blue-soft:#7f8cff21;--sg-gold:#f7c75c;--sg-danger:#fb7185;--sg-success:#5ee1a1;--sg-warning:#f7c75c;--sg-radius-sm:10px;--sg-radius:16px;--sg-radius-lg:22px;--sg-shadow:0 24px 70px #00000047}body{color:var(--sg-text);background:radial-gradient(circle at 50% -10%, #5570aa30, transparent 36%), radial-gradient(circle at 90% 10%, #34d39914, transparent 28%), linear-gradient(180deg, var(--sg-bg), var(--sg-bg-deep))}button,input{transition:border-color .14s,background-color .14s,color .14s,transform .14s,box-shadow .14s}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #5ee1a13d}button:not(:disabled):active{transform:translateY(1px)}.app-shell{width:min(1240px,100% - 40px);min-height:100vh;margin:0 auto;padding:0 0 64px}.lobby-shell{padding-top:0}.app-header{z-index:20;border-bottom:1px solid var(--sg-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#07111fe0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;min-height:82px;display:grid;position:sticky;top:0}.brand-button{color:var(--sg-text);text-align:left;background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex}.brand-mark{width:40px;height:40px;color:var(--sg-accent-dark);background:linear-gradient(145deg, #8df0bd, var(--sg-accent));letter-spacing:-.02em;border-radius:12px;place-items:center;font-size:.78rem;font-weight:900;display:grid;box-shadow:0 8px 26px #34d3992e}.brand-copy{gap:1px;display:grid}.brand-copy strong{font-size:.98rem}.brand-copy small{color:var(--sg-muted);font-size:.72rem}.app-navigation{justify-content:center;align-items:center;gap:4px;display:flex}.app-nav-button{color:var(--sg-muted);background:0 0;border:0;border-radius:10px;padding:9px 13px;font-size:.86rem;font-weight:650}.app-nav-button:hover{color:var(--sg-text);background:#ffffff0b}.app-nav-button-active{color:var(--sg-text);background:var(--sg-blue-soft)}.header-user-actions{align-items:center;gap:10px;display:flex}.header-user{color:var(--sg-text-soft);align-items:center;gap:8px;font-size:.82rem;font-weight:650;display:flex}.header-signout{border:1px solid var(--sg-border);color:var(--sg-muted);background:0 0;border-radius:10px;padding:8px 11px;font-size:.78rem;font-weight:650}.header-signout:hover{color:var(--sg-text);border-color:var(--sg-border-strong);background:#ffffff0a}.mini-avatar,.profile-avatar{color:#dce1ff;background:linear-gradient(145deg,#253452,#17243c);border:1px solid #7f8cff33;border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.mini-avatar{width:30px;height:30px;font-size:.72rem}.profile-avatar{width:56px;height:56px;font-size:1.08rem}.profile-avatar-small{width:44px;height:44px}.staging-strip{min-height:32px;color:var(--sg-muted-dark);border-bottom:1px solid #94a3b814;justify-content:center;align-items:center;gap:8px;font-size:.72rem;display:flex}.lobby-main{gap:24px;padding-top:42px;display:grid}.single-view-main{max-width:1120px;margin:0 auto}.content-stack-large{gap:28px}.lobby-intro{justify-content:space-between;align-items:end;gap:24px;padding:4px 2px 6px;display:flex}.lobby-intro h1{letter-spacing:-.045em;max-width:760px;margin:5px 0 8px;font-size:clamp(2rem,4vw,3.35rem);line-height:1.03}.lobby-intro p{max-width:650px;color:var(--sg-muted);margin:0;font-size:1rem;line-height:1.6}.section-kicker{color:var(--sg-blue);letter-spacing:.14em;text-transform:uppercase;font-size:.7rem;font-weight:800;display:block}.section-kicker-light{color:#bbf7d0}.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:20px;display:grid}.ranked-primary-card{border-radius:var(--sg-radius-lg);min-height:330px;box-shadow:var(--sg-shadow);background:linear-gradient(135deg,#183a39eb,#101f32fa 52%,#0f1b2d);border:1px solid #5ee1a133;position:relative;overflow:hidden}.ranked-card-glow{filter:blur(24px);background:#5ee1a11c;border-radius:50%;width:340px;height:340px;position:absolute;top:-120px;right:-60px}.ranked-card-content{z-index:1;flex-direction:column;align-items:flex-start;min-height:330px;padding:36px;display:flex;position:relative}.ranked-card-content h2{letter-spacing:-.035em;max-width:560px;margin:8px 0 10px;font-size:clamp(1.7rem,3vw,2.45rem);line-height:1.08}.ranked-card-content>p{color:#acc0ca;max-width:580px;margin:0;line-height:1.65}.ranked-actions{width:100%;margin-top:auto;padding-top:30px}.ranked-primary-action,.ranked-secondary-action{border:0;border-radius:13px;justify-content:space-between;align-items:center;width:100%;min-height:54px;padding:0 18px;font-weight:800;display:flex}.ranked-primary-action{color:var(--sg-accent-dark);background:linear-gradient(135deg, #89efbb, var(--sg-accent));box-shadow:0 12px 34px #34d3992e}.ranked-primary-action:hover:not(:disabled){background:linear-gradient(135deg,#9df4c7,#6ce9aa);transform:translateY(-1px)}.ranked-secondary-action{color:var(--sg-text);background:#ffffff17;justify-content:center}.searching-state{background:#06291c3b;border:1px solid #5ee1a129;border-radius:13px;align-items:center;gap:12px;width:100%;margin-top:22px;padding:14px;display:flex}.searching-state div{gap:3px;display:grid}.searching-state span{color:#a6b8c2;font-size:.78rem}.searching-pulse{background:var(--sg-accent);border-radius:50%;flex:none;width:10px;height:10px;box-shadow:0 0 0 7px #5ee1a114}.soft-notice{color:#d8e8e2;background:#ffffff0f;border-radius:12px;width:100%;margin-top:18px;padding:12px 14px;font-size:.85rem}.profile-quick-card,.tournament-preview-card,.content-panel{border:1px solid var(--sg-border);border-radius:var(--sg-radius-lg);box-shadow:var(--sg-shadow);background:linear-gradient(160deg,#132238fa,#0d192bfa)}.profile-quick-card{flex-direction:column;min-height:330px;padding:25px;display:flex}.quick-card-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.quick-card-heading h2{letter-spacing:-.025em;margin:5px 0 0;font-size:1.25rem}.quick-stat-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:28px;display:grid}.quick-stat-grid>div{background:#ffffff09;border:1px solid #94a3b814;border-radius:12px;gap:5px;padding:13px 10px;display:grid}.quick-stat-grid span,.stat-card span,.tournament-preview-stats span,.tournament-overview span{color:var(--sg-muted);font-size:.7rem}.quick-stat-grid strong{font-size:1.12rem}.quick-profile-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:24px;display:flex}.soft-status{color:var(--sg-muted);align-items:center;gap:7px;font-size:.76rem;display:flex}.status-dot{border-radius:50%;flex:none;width:7px;height:7px}.status-dot-success{background:var(--sg-success)}.status-dot-warning{background:var(--sg-warning)}.text-button{color:#aeb8ff;background:0 0;border:0;padding:5px;font-size:.78rem;font-weight:750}.text-button:hover{color:#dce1ff}.tournament-preview-card{gap:22px;padding:26px 28px;display:grid}.tournament-preview-main{justify-content:space-between;align-items:flex-start;gap:22px;display:flex}.tournament-preview-main h2{letter-spacing:-.025em;margin:5px 0;font-size:1.35rem}.tournament-preview-main p{margin:0}.lifecycle-chip,.username-chip{border:1px solid var(--sg-border);color:var(--sg-text-soft);white-space:nowrap;background:#ffffff0b;border-radius:999px;flex:none;justify-content:center;align-items:center;display:inline-flex}.lifecycle-chip{padding:7px 10px;font-size:.7rem;font-weight:750}.username-chip{padding:8px 12px;font-size:.76rem}.tournament-preview-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.tournament-preview-stats>div{gap:5px;display:grid}.tournament-preview-stats strong{overflow-wrap:anywhere;font-size:1rem}.tournament-preview-actions,.tournament-actions{flex-wrap:wrap;gap:10px;display:flex}.content-panel{padding:30px}.content-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.content-header h1{letter-spacing:-.04em;margin:5px 0 8px;font-size:clamp(1.75rem,3vw,2.45rem)}.content-header p{max-width:650px;margin:0}.content-stack{gap:18px;display:grid}.sub-navigation{border-bottom:1px solid var(--sg-border);gap:6px;margin:-6px 0 26px;display:flex}.sub-nav-button{color:var(--sg-muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:11px 13px;font-size:.82rem;font-weight:700}.sub-nav-button-active{border-bottom-color:var(--sg-accent);color:var(--sg-text)}.profile-detail-card{border:1px solid var(--sg-border);border-radius:var(--sg-radius);background:#ffffff06;gap:28px;padding:24px;display:grid}.profile-detail-heading{align-items:center;gap:16px;display:flex}.profile-detail-heading h2{margin:3px 0 6px}.profile-confidence{color:var(--sg-muted);align-items:center;gap:7px;font-size:.76rem;display:flex}.stat-card-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat-card{background:#ffffff09;border:1px solid #94a3b817;border-radius:13px;gap:7px;padding:17px;display:grid}.stat-card strong{font-size:1.4rem}.player-search-card{border:1px solid var(--sg-border);border-radius:var(--sg-radius);background:#ffffff05;grid-template-columns:minmax(0,.8fr) minmax(300px,1fr);align-items:center;gap:28px;padding:22px;display:grid}.player-search-card h3{margin:4px 0}.player-search-card p{margin:0}.player-search-form{grid-template-columns:minmax(0,1fr) auto;gap:9px;display:grid}input{border-color:var(--sg-border-strong);color:var(--sg-text);background:#040c168c;border-radius:11px}input:focus{border-color:#5ee1a18c}.leaderboard-table{border:1px solid var(--sg-border);border-radius:var(--sg-radius);overflow:hidden}.leaderboard-header-row,.leaderboard-row{grid-template-columns:74px minmax(220px,1fr) 100px 100px;align-items:center;gap:12px;display:grid}.leaderboard-header-row{color:var(--sg-muted-dark);letter-spacing:.08em;text-transform:uppercase;background:#ffffff06;padding:11px 18px;font-size:.68rem;font-weight:800}.leaderboard-row{border:0;border-top:1px solid var(--sg-border);width:100%;color:var(--sg-text);text-align:left;background:0 0;padding:14px 18px}.leaderboard-row:hover{background:#ffffff09}.rank-number{color:var(--sg-muted);font-weight:800}.rank-number-top{color:var(--sg-gold)}.leaderboard-player{align-items:center;gap:11px;display:flex}.leaderboard-player>span:last-child{gap:2px;display:grid}.leaderboard-player small{color:var(--sg-muted-dark)}.leaderboard-games{color:var(--sg-muted)}.leaderboard-rating{text-align:right}.history-list{border:1px solid var(--sg-border);border-radius:var(--sg-radius);overflow:hidden}.history-row{border-top:1px solid var(--sg-border);grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 18px;display:grid}.history-row:first-child{border-top:0}.history-main{gap:4px;display:grid}.history-main span,.history-row time,.history-meta{color:var(--sg-muted);font-size:.76rem}.history-meta{justify-items:end;gap:4px;display:grid}.outcome-badge,.seed-badge{border-radius:999px;justify-content:center;width:fit-content;min-width:68px;padding:6px 9px;font-size:.7rem;font-weight:800;display:inline-flex}.outcome-win{color:#b7f7d3;background:#34d39921}.outcome-loss{color:#ffc2cc;background:#fb71851f}.outcome-draw,.outcome-void,.seed-badge{color:#d4dbea;background:#94a3b81c}.tournament-overview{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;display:grid}.tournament-overview article{border:1px solid var(--sg-border);background:#ffffff06;border-radius:13px;gap:6px;padding:17px;display:grid}.tournament-overview strong{overflow-wrap:anywhere}.champion-stat{background:#f7c75c0e!important;border-color:#f7c75c38!important}.champion-stat strong{color:var(--sg-gold)}.bracket-scroll-shell{margin-top:28px;padding:2px 2px 16px;overflow-x:auto}.professional-bracket{grid-auto-columns:minmax(245px,1fr);grid-auto-flow:column;gap:22px;min-width:max-content;display:grid}.bracket-round{align-content:start;gap:16px;min-width:245px;display:grid}.bracket-round>header{gap:2px;padding:0 4px;display:grid}.bracket-round>header span{color:var(--sg-muted-dark);letter-spacing:.1em;text-transform:uppercase;font-size:.66rem;font-weight:800}.bracket-round>header strong{font-size:.92rem}.bracket-round-fixtures{gap:18px;display:grid}.bracket-round:nth-child(2) .bracket-round-fixtures{gap:72px;padding-top:42px}.bracket-round:nth-child(3) .bracket-round-fixtures{padding-top:132px}.bracket-match{border:1px solid var(--sg-border);background:#06101d94;border-radius:13px;overflow:hidden}.bracket-match-resolved{border-color:#5ee1a129}.bracket-match-number{color:var(--sg-muted-dark);background:#ffffff06;padding:8px 11px;font-size:.66rem;font-weight:750;display:block}.bracket-player{border-top:1px solid #94a3b814;justify-content:space-between;align-items:center;gap:8px;min-height:43px;padding:9px 11px;display:flex}.bracket-player span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bracket-player strong{color:var(--sg-accent);font-size:.58rem}.bracket-player-winner{color:#d9fae8;background:#34d3990e}.bracket-match footer{color:var(--sg-muted-dark);border-top:1px solid #94a3b814;padding:8px 11px;font-size:.65rem}.primary-button,.secondary-button,.danger-button{border-radius:11px;padding:11px 15px}.primary-button{color:var(--sg-accent-dark);background:var(--sg-accent)}.primary-button:hover:not(:disabled){background:#7aebb1}.secondary-button{border:1px solid var(--sg-border);color:var(--sg-text-soft);background:#ffffff0d}.secondary-button:hover:not(:disabled){border-color:var(--sg-border-strong);background:#ffffff14}.inline-alert{color:#ffc1cb;background:#fb718512;border:1px solid #fb71852e;border-radius:12px;padding:12px 14px;font-size:.82rem}.empty-state{border:1px dashed var(--sg-border-strong);border-radius:var(--sg-radius);justify-items:start;gap:7px;padding:28px;display:grid}.empty-state h3,.empty-state p{margin:0}.empty-state p{color:var(--sg-muted)}.skeleton-block{color:var(--sg-muted);background:#ffffff09;border-radius:12px;padding:16px}.privacy-note{color:var(--sg-muted-dark);margin-top:22px;font-size:.69rem;line-height:1.5}.compact-error{margin-top:12px}.panel,.match-connect-panel{border-color:var(--sg-border);box-shadow:var(--sg-shadow);background:#0f1b2df5}.topbar{padding-top:28px}.muted{color:var(--sg-muted)}.mode-banner{border-color:var(--sg-border);color:var(--sg-muted-dark);background:#ffffff06}.connection-pill.online{color:#b9f9d6;background:#34d39924}@media (width<=980px){.app-header{grid-template-columns:auto 1fr;gap:14px;padding:12px 0}.app-navigation{grid-area:2/1/auto/-1;justify-content:flex-start;padding-bottom:2px;overflow-x:auto}.header-user-actions{justify-self:end}.dashboard-grid{grid-template-columns:1fr}.profile-quick-card{min-height:auto}.stat-card-grid,.tournament-overview{grid-template-columns:repeat(2,1fr)}.player-search-card{grid-template-columns:1fr}}@media (width<=700px){.app-shell{width:min(100% - 22px,1240px)}.app-header{min-height:0}.brand-copy small,.header-user>span:last-child{display:none}.header-signout{padding:7px 9px}.staging-strip{white-space:nowrap;justify-content:flex-start;overflow:hidden}.lobby-main{gap:18px;padding-top:26px}.lobby-intro h1{font-size:2rem}.ranked-card-content{min-height:310px;padding:24px}.ranked-primary-card{min-height:310px}.content-panel{padding:20px}.content-header,.tournament-preview-main{display:grid}.username-chip,.lifecycle-chip{justify-self:start}.quick-stat-grid,.tournament-preview-stats{grid-template-columns:repeat(3,1fr)}.stat-card-grid,.tournament-overview{grid-template-columns:repeat(2,1fr)}.player-search-form{grid-template-columns:1fr}.leaderboard-header-row{display:none}.leaderboard-row{grid-template-columns:56px minmax(0,1fr) auto}.leaderboard-games{display:none}.history-row{grid-template-columns:80px minmax(0,1fr)}.history-row>time,.history-meta{grid-column:2;justify-items:start}.tournament-preview-card{padding:22px}.professional-bracket{grid-auto-columns:minmax(225px,225px)}}@media (width<=440px){.app-navigation{gap:2px}.app-nav-button{padding:8px 10px;font-size:.78rem}.quick-stat-grid{gap:6px}.quick-stat-grid>div{padding:11px 8px}.stat-card-grid,.tournament-overview{grid-template-columns:1fr 1fr}}.dashboard-grid{grid-template-columns:minmax(0,1.3fr) minmax(320px,.9fr)}.dashboard-grid>.profile-quick-card{grid-column:1/-1;min-height:auto}.friend-challenge-card{border-radius:var(--sg-radius-lg);min-height:330px;box-shadow:var(--sg-shadow);background:radial-gradient(circle at 100% 0,#7f8cff21,#0000 35%),linear-gradient(150deg,#192441fa,#0c192cfa);border:1px solid #7f8cff33;align-content:start;gap:20px;padding:30px;display:grid}.friend-challenge-start{grid-template-columns:1fr}.friend-card-icon{color:#dfe3ff;background:#7f8cff1f;border:1px solid #7f8cff40;border-radius:14px;place-items:center;width:50px;height:50px;font-size:1.3rem;font-weight:900;display:grid}.friend-card-copy h2,.friend-challenge-card h2{letter-spacing:-.03em;margin:6px 0 7px}.friend-card-copy p{color:var(--sg-muted);margin:0;line-height:1.6}.friend-primary-button{color:#11162d;background:linear-gradient(135deg,#b3baff,#818dff);border:0;border-radius:13px;justify-content:center;align-items:center;width:100%;min-height:52px;margin-top:auto;padding:0 18px;font-weight:850;display:flex}.friend-primary-button:hover:not(:disabled){background:linear-gradient(135deg,#c3c8ff,#929cff);transform:translateY(-1px)}.friend-waiting-card{border-color:#5ee1a138}.invite-code-block{border:1px solid var(--sg-border);background:#00000024;border-radius:12px;gap:5px;width:fit-content;padding:12px 17px;display:grid}.invite-code-block span{color:var(--sg-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.invite-code-block strong{letter-spacing:.14em;font-size:1.35rem}.friend-action-row{grid-template-columns:1fr auto;gap:10px;margin-top:auto;display:grid}.friend-invite-card{text-align:center;justify-items:center}.challenge-versus{grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;width:min(100%,420px);margin:8px auto;display:grid}.challenge-versus>div{justify-items:center;gap:9px;display:grid}.challenge-versus>span{color:var(--sg-muted-dark);letter-spacing:.12em;font-size:.7rem;font-weight:900}.challenge-versus .profile-avatar{width:58px;height:58px;font-size:.76rem}.friend-match-starting{grid-template-columns:auto 1fr;align-items:center;min-height:180px}@media (width<=980px){.dashboard-grid{grid-template-columns:1fr}.dashboard-grid>.profile-quick-card{grid-column:auto}.friend-challenge-card{min-height:auto}}@media (width<=600px){.friend-challenge-card{padding:22px}.friend-action-row{grid-template-columns:1fr}}
