:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#06140d;--surface:#0d291ab8;--surface2:#123823d1;--border:#a3e6c133;--text:#effff5;--muted:#b4d3c2;--accent:#4ade80;--accent-dim:#22c55e;--accent-soft:#4ade8038;--gold:#fbbf24;--danger:#f87171;--shadow-soft:0 14px 34px #02170e61;--shadow-hard:0 18px 48px #010e088c;--font:"Outfit", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--pitch-green:#0a3020;--pitch-line:#ffffff0f}*,:before,:after{box-sizing:border-box}body{min-height:100vh;font-family:var(--font);background: repeating-linear-gradient(0deg, transparent, transparent 28px, #22c55e06 28px, #22c55e06 56px), radial-gradient(circle at 50% -25%, #bbf7d024 0%, transparent 46%), radial-gradient(circle at 14% 8%, #4ade8014 0%, transparent 40%), radial-gradient(circle at 86% 12%, #22c55e0f 0%, transparent 38%), radial-gradient(circle at 50% 120%, #facc150d 0%, transparent 44%), linear-gradient(180deg, #082313 0%, #06140d 100%), var(--bg);color:var(--text);margin:0;line-height:1.55}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#082313b3;border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(#22c55e,#15803d);border:1px solid #22c55e40;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(#4ade80,#22c55e)}*{scrollbar-width:thin;scrollbar-color:#22c55e #082313b3}#root{width:100%;min-height:100vh}h1{letter-spacing:-.03em;margin:0 0 .45rem;font-size:clamp(1.65rem,4vw,2.15rem);font-weight:700}h2{color:var(--text);margin:0 0 .75rem;font-size:1.12rem;font-weight:600}p{color:var(--muted);margin:0 0 1rem;font-size:.94rem}a{color:var(--accent)}::selection{color:var(--text);background:#22c55e47}button,input,select,textarea{font:inherit}textarea{font-family:var(--mono);font-size:.8rem}.rules{flex-direction:column;gap:1.25rem;display:flex}.rules strong{color:var(--gold);font-weight:600}.rules-title{color:#f0fff5;margin:0 0 .5rem;font-size:1.25rem;display:block}.rules-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;display:grid}.rule-card{background:linear-gradient(145deg,#0c2e1eb3,#061b1080);border:1px solid #bbf7d026;border-radius:16px;padding:1.25rem;transition:all .3s}.rule-card:hover{border-color:#bbf7d04d;transform:translateY(-3px);box-shadow:0 8px 30px #22c55e1a}.rule-card h4{color:#f0fff5;align-items:center;gap:.5rem;margin:0 0 .65rem;font-size:1rem;font-weight:700;display:flex}.rule-icon{width:auto;height:auto;box-shadow:none;color:var(--gold);background:0 0;border:none;flex:none;font-size:1.1rem;display:inline}.rule-card p{color:#a8c4b5;margin:0 0 .85rem;font-size:.85rem;line-height:1.5}.rule-card ul{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.rule-card li{color:#c5e8d5;padding-left:1rem;font-size:.82rem;line-height:1.5;position:relative}.rule-card li:before{content:"•";color:var(--accent);font-weight:700;position:absolute;left:0}.welcome-hero{text-align:center;background:radial-gradient(ellipse 120% 80% at 50% 0%, #facc151f, transparent 55%), var(--surface);max-width:36rem;margin:0 auto;padding:1.75rem 1.5rem 2rem}.welcome-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin:0 0 .5rem;font-size:.78rem;font-weight:600}.welcome-title{color:#f0fff5;margin:0 0 1rem;font-size:clamp(1.45rem,4vw,1.85rem);line-height:1.2}.welcome-lead{color:#d7f1e3;margin:0 0 .85rem;font-size:1.02rem;line-height:1.55}.welcome-hint{color:var(--muted);margin:0 0 1.35rem;font-size:.86rem;line-height:1.5}.btn-participate{color:#052e16;background:linear-gradient(165deg,#fde047,#22c55e 45%,#15803d);border:none;border-radius:999px;padding:.72rem 2rem;font-size:1rem;font-weight:700;box-shadow:0 10px 28px #22c55e73,inset 0 1px #ffffff59}.btn-participate:hover{filter:brightness(1.05);transform:translateY(-2px)}.btn-participate:active{transform:translateY(0)scale(.99)}.panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(165deg,#0a2a18e0,#061b10d1);border:1px solid #a3e6c12e;border-radius:16px;padding:1.15rem;position:relative;box-shadow:0 14px 34px #02170e61,inset 0 1px #bbf7d00f}.panel:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#4ade8059,#0000);border-radius:1px;height:2px;position:absolute;top:-1px;left:20%;right:20%}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.95rem;display:flex}.panel-head h2{margin:0;display:inline-block;position:relative}.panel-head h2:after{content:"";background:linear-gradient(90deg,#4ade8066,#0000);border-radius:1px;height:2px;margin-top:4px;display:block}.participate-panel .participate-fields{flex-wrap:wrap;align-items:flex-end;gap:1rem 1.25rem;margin-bottom:.75rem;display:flex}.save-row{justify-content:center;align-items:flex-end;min-width:150px;display:flex}.save-success,.save-error{cursor:default;pointer-events:none;text-align:center;box-sizing:border-box;justify-content:center;align-items:center;width:100%;min-height:42px;display:flex}.save-success{color:#032815!important;background:linear-gradient(160deg,#4ade80,#22c55e)!important}.save-error{color:#450a0a!important;background:linear-gradient(160deg,#f87171,#ef4444)!important}.btn-danger{cursor:pointer;color:#450a0a;background:linear-gradient(160deg,#f87171,#ef4444);border:1px solid #0000;border-radius:10px;padding:.52rem .92rem;font-size:.88rem;font-weight:600;transition:background .2s,border-color .2s,transform .12s,box-shadow .2s;box-shadow:0 8px 22px #ef44446b}.btn-danger:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn-danger:active{transform:scale(.98)}.participate-name-static{flex-direction:column;gap:.35rem;min-width:min(100%,220px);display:flex}.participate-label-text{color:var(--muted);font-size:.8rem;font-weight:600}.participate-name-value{border:1px solid var(--border);background:var(--surface2);color:var(--text);opacity:.85;border-radius:10px;padding:.55rem .75rem;font-size:.92rem}.participate-label{color:var(--muted);flex-direction:column;gap:.35rem;min-width:min(100%,220px);font-size:.8rem;font-weight:600;display:flex}.participate-name-input,.participate-slot-select{border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:10px;padding:.55rem .75rem;font-size:.92rem}.participate-name-input:focus,.participate-slot-select:focus{border-color:#22c55e8c;outline:none;box-shadow:0 0 0 3px #22c55e24}.participate-save-hint,.participate-ok{margin-top:0;margin-bottom:.85rem}.participate-matches{border-top:1px solid var(--border);max-height:min(70vh,52rem);margin-top:.5rem;padding-top:.35rem;padding-right:.25rem;overflow-y:auto}.rules-page-panel .rules{margin-bottom:0}.welcome-inline-link{vertical-align:baseline;width:auto;padding:0;font-weight:600;display:inline}.grid-sections{flex-direction:column;gap:2rem;display:flex}.match-row{border-bottom:1px solid var(--border);grid-template-columns:1fr auto auto;align-items:center;gap:.65rem .75rem;padding:.55rem 0;display:grid}.match-row:last-child{border-bottom:none}.match-meta{min-width:0}.match-phase{text-transform:uppercase;letter-spacing:.04em;color:#91a3be;font-size:.72rem}.match-teams{flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.95rem;font-weight:600;display:flex}.team-with-flag{align-items:center;gap:.25rem;display:inline-flex}.team-flag{vertical-align:middle;object-fit:cover;border-radius:2px;width:24px;height:18px;margin:0 4px;display:inline-block}.vs{color:var(--muted);font-size:.85rem;font-weight:400}.score-inputs{align-items:center;gap:.35rem;display:flex}.finished-icon{opacity:.8;margin-left:.25rem;font-size:1rem}.score-display{background:var(--surface2);border-radius:4px;justify-content:center;align-items:center;width:2.2em;height:2em;font-size:1rem;font-weight:600;display:inline-flex}.score-inputs input{text-align:center;width:2.5rem;color:var(--text);background:linear-gradient(#0b2414e6,#081c0ff2);border:1px solid #a3e6c133;border-radius:10px;padding:.4rem .25rem;transition:border-color .2s,box-shadow .2s,background .2s}.score-inputs input:focus{background:#0b2816f2;border-color:#4ade8080;outline:none;box-shadow:0 0 0 3px #22c55e24,inset 0 0 10px #4ade800a}.score-inputs span{color:var(--muted);font-weight:600}.match-row .btn-ghost{padding:.35rem .5rem;font-size:.8rem}.players-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.player-card{background:linear-gradient(165deg,#0d2a18e6,#081c10d9);border:1px solid #a3e6c11f;border-radius:14px;flex-direction:column;gap:.5rem;padding:.85rem;transition:border-color .2s,transform .2s;display:flex}.player-card:hover{border-color:#4ade8040;transform:translateY(-1px)}.player-card label{color:var(--muted);font-size:.8rem;font-weight:600}.player-card textarea{resize:vertical;width:100%;min-height:140px;color:var(--text);background:#06160ce6;border:1px solid #a3e6c11f;border-radius:10px;padding:.6rem;transition:border-color .2s,box-shadow .2s}.player-card textarea:focus{border-color:#22c55e8c;outline:none;box-shadow:0 0 0 3px #22c55e24}.player-card .error{color:var(--danger);margin:0;font-size:.78rem}.player-card .ok{color:var(--accent);margin:0;font-size:.78rem}.toolbar{flex-wrap:wrap;gap:.6rem;margin-bottom:.75rem;display:flex}.toolbar select{border:1px solid var(--border);background:var(--surface2);min-width:220px;color:var(--text);border-radius:10px;padding:.5rem .7rem;font-size:.88rem}.toolbar select:hover{border-color:var(--muted)}.toolbar select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #22c55e33}.btn{cursor:pointer;border:1px solid #0000;border-radius:10px;padding:.52rem .92rem;font-size:.88rem;font-weight:600;transition:background .2s,border-color .2s,transform .12s,box-shadow .2s}.btn:active{transform:scale(.98)}.btn-primary{color:#032815;background:linear-gradient(160deg,#86efac,#22c55e);position:relative;overflow:hidden;box-shadow:0 8px 22px #22c55e6b}.btn-primary:before{content:"⚽";opacity:.12;pointer-events:none;font-size:1.4rem;position:absolute;top:50%;left:-1.5rem;transform:translateY(-50%)}.btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn-secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:#28344ae6;border-color:#a4b1c673}.btn-ghost{color:var(--muted);border:1px dashed var(--border);background:0 0}.btn-ghost:hover{color:var(--text);border-color:var(--muted)}.btn-link{color:var(--text);font:inherit;text-align:left;background:0 0;border:none;padding:0;-webkit-text-decoration:underline #22c55e80;text-decoration:underline #22c55e80}.btn-link:hover{color:var(--accent)}.table-wrap{border:1px solid var(--border);background:#081e1299;border-radius:12px;overflow-x:auto}table.standings{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.78rem}table.standings th,table.standings td{text-align:left;border-bottom:1px solid var(--border);padding:.45rem .42rem}table.standings th{color:#a7f3d0;letter-spacing:.06em;z-index:1;text-align:center;background:linear-gradient(#082312f2,#061c0ef2);font-size:.66rem;font-weight:700;position:sticky;top:0}table.standings tbody tr{transition:background .15s}table.standings tbody tr:hover{background:#4ade800f}table.standings tr:last-child td{border-bottom:none}table.standings .place{width:3rem;color:var(--gold);text-shadow:0 0 12px #facc1526;font-variant-numeric:tabular-nums;font-weight:700}table.standings .total{font-variant-numeric:tabular-nums;color:#4ade80;text-shadow:0 0 10px #4ade801f;text-align:center;font-weight:700}table.standings .num{font-variant-numeric:tabular-nums;color:var(--muted);text-align:center}.player-matches-table td .match-teams{font-size:.9rem}.group-tables-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem;display:grid}table.standings .team-advancing{background:#22c55e0d!important}table.standings .team-advancing td{color:#86efac}table.standings .team-qualified{background:#22c55e1f!important}table.standings .team-qualified td{color:#4ade80}table.standings .team-eliminated{opacity:.45}table.standings .team-correct-pos{background:#22c55e0f!important}.hint{color:var(--muted);margin-top:.5rem;font-size:.82rem}code.inline{font-family:var(--mono);background:#2b3a51b8;border-radius:6px;padding:.14rem .4rem;font-size:.79em}.app{width:100%;min-height:100vh;display:flex}.sidebar{width:220px;box-shadow:4px 0 30px #02170e80, inset -1px 0 0 #4ade800a, var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;box-sizing:border-box;background:linear-gradient(#082010fa,#04160afa);border-right:1px solid #a3e6c126;flex-direction:column;gap:1.25rem;padding:1.5rem 1rem;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.main-content{box-sizing:border-box;flex:1;min-width:0;min-height:100vh;margin-left:220px;padding:1.75rem}.sidebar-badge{color:var(--accent);text-align:center;text-transform:uppercase;letter-spacing:.1em;background:linear-gradient(160deg,#4ade8026,#22c55e14);border:1px solid #22c55e4d;border-radius:12px;flex-shrink:0;padding:.85rem 1rem;font-size:.9rem;font-weight:700}.sidebar-nav{flex-direction:column;flex:1;gap:.4rem;display:flex}.sidebar-btn{width:100%;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:.85rem;padding:.85rem 1.1rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex;position:relative;overflow:hidden}.sidebar-btn:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(90deg,#4ade800f,#0000 60%);transition:opacity .3s;position:absolute;inset:0}.sidebar-btn:hover{color:var(--text);background:#4ade8014;transform:translate(4px)}.sidebar-btn:hover:after{opacity:1}.sidebar-btn.active{color:var(--accent);background:linear-gradient(90deg,#4ade802e,#22c55e0f 70%,#0000);font-weight:600;box-shadow:0 0 14px #22c55e2e}.sidebar-btn.active:before{content:"";background:linear-gradient(#4ade80,#15803d);border-radius:2px;flex-shrink:0;width:4px;height:22px}.sidebar-icon{text-align:center;flex-shrink:0;width:30px;font-size:1.25rem}.sidebar-label{white-space:nowrap}.auth-page{justify-content:center;align-items:center;padding:2rem;display:flex}.auth-panel{width:100%;max-width:420px;padding:2.5rem 2rem}.auth-header{text-align:center;margin-bottom:2rem}.auth-badge{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);background:var(--accent-soft);border:1px solid #22c55e4d;border-radius:999px;margin-bottom:1rem;padding:.35rem .85rem;font-size:.75rem;font-weight:600;display:inline-block}.auth-title{color:#f0fff5;margin:0 0 .5rem;font-size:1.85rem;font-weight:700}.auth-subtitle{color:var(--muted);margin:0;font-size:.95rem}.auth-form{flex-direction:column;gap:1.25rem;display:flex}.auth-form-title{color:var(--text);text-align:center;margin:0;font-size:1.15rem;font-weight:600}.auth-error{color:var(--danger);text-align:center;background:#f871711f;border:1px solid #f871714d;border-radius:10px;padding:.75rem 1rem;font-size:.88rem}.auth-field{flex-direction:column;gap:.5rem;display:flex}.auth-label{color:var(--muted);flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:500;display:flex}.auth-label span{font-weight:600}.auth-input{border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:12px;padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.auth-input:focus{border-color:#22c55e80;outline:none;box-shadow:0 0 0 3px #22c55e1f}.auth-input::placeholder{color:var(--muted);opacity:.6}.auth-submit{width:100%;margin-top:.5rem}.auth-switch{text-align:center;color:var(--muted);margin-top:.5rem;font-size:.88rem}.auth-link{color:var(--accent);padding:0;font-weight:600;display:inline}.auth-link:hover{color:var(--accent-dim)}.sidebar-user{background:#4ade8014;border-radius:12px;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.user-name{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:600;overflow:hidden}.logout-btn{flex-shrink:0;padding:.25rem .5rem;font-size:.75rem}.login-page{justify-content:center;align-items:center;padding:2rem;display:flex}.login-panel{width:100%;max-width:400px}.login-panel .panel-head{margin-bottom:1.5rem}.login-panel .panel-head h2{color:#f0fff5;font-size:1.5rem}.login-form{flex-direction:column;gap:1rem;display:flex}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:var(--muted);font-size:.82rem;font-weight:600}.form-input{border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:10px;padding:.7rem .9rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:#22c55e80;outline:none;box-shadow:0 0 0 3px #22c55e1f}.form-input::placeholder{color:var(--muted);opacity:.6}.error-message{color:var(--danger);text-align:center;background:#f871711f;border:1px solid #f871714d;border-radius:10px;padding:.6rem .9rem;font-size:.85rem}.login-btn{width:100%;margin-top:.5rem}.login-toggle{text-align:center;color:var(--muted);margin-top:1.25rem;font-size:.88rem}.login-toggle p{margin:0}.login-demo{text-align:center;background:#4ade800d;border:1px solid #4ade8026;border-radius:10px;margin-top:1.5rem;padding:1rem}.demo-hint{color:var(--muted);margin:0 0 .5rem;font-size:.8rem}.demo-credentials{color:var(--text);font-size:.82rem;font-family:var(--mono);margin:.25rem 0}.auth-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-modal{background:var(--surface);border-radius:16px;width:100%;max-width:420px;max-height:90vh;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0006}.auth-modal-close{width:32px;height:32px;color:var(--danger);cursor:pointer;z-index:10;background:#f8717126;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:1.5rem;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.auth-modal-close:hover{background:#f871714d}.tournament-picks-section{background:var(--surface-alt,#ffffff08);border:1px solid var(--border,#ffffff14);border-radius:12px;margin-top:1.5rem;padding:1.25rem;position:static}.tournament-picks-section h3{color:var(--text-secondary,#a0a0b0);margin:0 0 .75rem;font-size:1rem}.medalists-grid{flex-direction:column;gap:.75rem;margin-bottom:1.25rem;display:flex}.medalist-field{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.medal-icon{font-size:1.3rem;line-height:1}.medalist-field span{color:var(--text,#e0e0e0);font-size:.9rem}.medalist-field select{border:1px solid var(--border,#ffffff1f);background:var(--bg,#1a1a2e);min-width:180px;color:var(--text,#e0e0e0);cursor:pointer;border-radius:8px;flex:1;padding:.45rem .6rem;font-size:.9rem;transition:border-color .2s}.medalist-field select:focus{border-color:var(--primary,#4f8cff);outline:none}.medalist-field select:disabled{opacity:.5;cursor:not-allowed}.medalist-value{background:var(--bg,#1a1a2e);min-width:180px;color:var(--text,#e0e0e0);border:1px solid #0000;border-radius:8px;flex:1;align-items:center;gap:.4rem;padding:.45rem .6rem;font-size:.9rem;display:flex}.top-scorer-field{margin-top:.5rem}.top-scorer-input{border:1px solid var(--border,#ffffff1f);background:var(--bg,#1a1a2e);width:100%;max-width:320px;color:var(--text,#e0e0e0);border-radius:8px;padding:.55rem .75rem;font-size:.95rem;transition:border-color .2s}.top-scorer-input:focus{border-color:var(--primary,#4f8cff);outline:none}.top-scorer-input:disabled{opacity:.5;cursor:not-allowed}.tournament-picks-locked{color:var(--warning,#f0a030);margin-top:.75rem;font-size:.85rem}.hall-of-fame-panel{background:linear-gradient(175deg,#06200ffa,#083016f5);border-color:#bbf7d033;position:relative;overflow:hidden}.hof-grass{pointer-events:none;background:repeating-linear-gradient(90deg,#0000,#0000 14px,#22c55e0a 14px 28px),repeating-linear-gradient(0deg,#0000,#0000 14px,#22c55e05 14px 28px);position:absolute;inset:0}.hof-pitch-lines{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.hof-center-circle{border:2px solid #ffffff1f;border-radius:50%;width:80px;height:80px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hof-center-circle:after{content:"";background:#ffffff2e;border-radius:50%;width:6px;height:6px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hof-penalty-box{border:2px solid #ffffff14;border-radius:4px;width:120px;height:200px;position:absolute;top:50%;right:10%;transform:translateY(-50%)}.hof-penalty-box:before{content:"";border:2px solid #ffffff0f;border-radius:2px;width:60px;height:100px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hof-header{z-index:1;border:none;margin-bottom:.5rem;position:relative}.hof-header-content{text-align:center;flex-direction:column;align-items:center;gap:.3rem;width:100%;display:flex}.hof-emblems{letter-spacing:.5rem;filter:drop-shadow(0 0 6px #facc154d);font-size:1.2rem}.hof-header-content h2{color:#f0fff5;text-shadow:0 0 20px #bbf7d026;margin:0;font-size:1.4rem}.hof-subtitle{color:var(--muted);letter-spacing:.05em;margin:0;font-size:.78rem}.hall-of-fame-cards{z-index:1;flex-direction:column;gap:1.25rem;display:flex;position:relative}.hall-of-fame-card{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:linear-gradient(145deg,#0c2e1ecc,#061b1099);border:1px solid #bbf7d026;border-radius:16px;align-items:flex-start;gap:1.25rem;padding:1.25rem;transition:all .3s;display:flex}.hall-of-fame-card:hover{border-color:#facc1559;transform:translateY(-3px)scale(1.01);box-shadow:0 8px 30px #facc151a,0 0 0 1px #facc150d}.hof-photo{border:3px solid var(--gold);background:var(--surface2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:170px;height:170px;display:flex;overflow:hidden;box-shadow:0 0 20px #facc1526}.hof-photo img{object-fit:cover;width:100%;height:100%}.hof-photo-placeholder{background:linear-gradient(135deg,#1a3a24,#0f2616)}.hof-photo-placeholder:after{content:"🏆";filter:drop-shadow(0 0 8px #facc1566);font-size:2.5rem}.hof-info{flex-direction:column;gap:.35rem;display:flex}.hof-badge{text-transform:uppercase;letter-spacing:.08em;color:#052e16;background:linear-gradient(165deg,#fde047,#fbbf24);border-radius:999px;align-self:flex-start;padding:.2rem .65rem;font-size:.72rem;font-weight:700;display:inline-block;box-shadow:0 2px 8px #facc1540}.hof-info h3{color:#f0fff5;margin:0;font-size:1rem;font-weight:700}.hof-name{color:var(--gold);margin:0;font-size:.88rem;font-weight:600}.hof-year,.hof-total{color:var(--muted);margin:0;font-size:.8rem}.app-header{display:none}@media (width<=760px){.app{flex-direction:column}.sidebar{-webkit-overflow-scrolling:touch;border-right:none;border-bottom:1px solid var(--border);z-index:100;flex-flow:wrap;width:100%;padding:.5rem .75rem;position:sticky;top:0;overflow-x:auto}.sidebar-badge{display:none}.sidebar-nav{flex-direction:row;flex:auto;align-items:stretch;gap:.35rem;width:100%}.sidebar-btn{flex-direction:column;flex-shrink:0;justify-content:center;gap:.2rem;width:auto;min-width:0;padding:.6rem .75rem;font-size:.85rem}.sidebar-btn:hover{transform:none}.sidebar-btn.active:before{display:none}.sidebar-icon{text-align:center;width:auto;font-size:1.2rem}.sidebar-label{text-align:center;text-overflow:ellipsis;max-width:100%;font-size:.65rem;line-height:1.1;display:inline;overflow:hidden}.sidebar-user{background:0 0;border:none;flex:none;justify-content:flex-end;align-items:center;width:auto;margin:0;padding:0;display:flex;position:static}.sidebar-user .user-name{display:none}.sidebar-user .logout-btn{padding:.3rem .35rem;font-size:.85rem}.main-content{width:100%;min-height:auto;margin-left:0;padding:1rem}.panel{border-radius:14px;padding:.95rem}.rules{padding:.9rem}.rules-grid{grid-template-columns:1fr}.toolbar{gap:.5rem}.btn{justify-content:center;width:100%}.welcome-inline-link{width:auto;display:inline}.toolbar>*{width:100%}.toolbar select{width:100%;min-width:0}.group-tables-grid,.players-grid{grid-template-columns:1fr}.match-row{grid-template-columns:1fr;gap:.4rem;padding:.6rem 0}.match-row .score-inputs{justify-content:flex-start}.match-row .score-inputs input{width:2.8rem;padding:.45rem .2rem}.participate-fields{flex-direction:column;align-items:stretch}.participate-fields>*{width:100%;min-width:0!important}.save-row{min-width:0}.medalist-field{flex-wrap:wrap}.medalist-field select,.medalist-value{width:100%;min-width:0}.top-scorer-input{box-sizing:border-box;width:100%;max-width:100%}.hall-of-fame-card{text-align:center;flex-direction:column;align-items:center;gap:.85rem}.hof-photo{width:120px;height:120px}.hof-photo-placeholder:after{font-size:2rem}.hof-info{align-items:center;width:100%}.hof-badge{align-self:center}.hof-header-content h2{font-size:1.15rem}.auth-modal{border-radius:14px;max-width:94vw;margin:0 auto}.auth-modal .auth-panel{padding:1.5rem 1.25rem}}@media (width<=420px){.sidebar{padding:.4rem .5rem}.sidebar-btn{gap:0;padding:.5rem .65rem}.sidebar-icon{font-size:1.3rem}.sidebar-label{display:none}.medalist-field{flex-direction:column;align-items:stretch}.medal-icon{font-size:1.1rem}.match-teams{font-size:.85rem}.score-inputs input{width:2.3rem;font-size:.88rem}.panel{border-radius:12px;padding:.75rem}.main-content{padding:.65rem}}.player-matches-section{max-width:800px}.player-matches-summary{margin-top:0}.player-matches-table th.match-col{text-align:left}.player-matches-table .match-datetime{margin:0}.server-offline-panel{text-align:center;max-width:480px;margin:3rem auto;padding:3rem 2rem}.server-offline-content{flex-direction:column;align-items:center;gap:1rem;display:flex}.server-offline-icon{opacity:.6;margin-bottom:.5rem;font-size:3rem}.server-offline-content h2{color:var(--gold);margin:0;font-size:1.35rem}.server-offline-content p{max-width:360px;margin:0;line-height:1.6}
