@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap";@import "https://fonts.googleapis.com/css2?family=Manrope:wght@500;600;700;800&display=swap";.app-layout{--ds-bg:#0a0e14;--ds-surface:#141922;--ds-surface-hover:#1a2030;--ds-surface-highlight:#1e2738;--ds-surface-elevated:#2a3650;--ds-controls-bg:#111620;--ds-accent:#3b82f6;--ds-accent-hover:#2563eb;--ds-accent-light:#60a5fa;--ds-success:#22c55e;--ds-danger:#ef4444;--ds-warning:#f59e0b;--ds-top4-orange:#fb923c;--ds-accent-rgb:59, 130, 246;--ds-success-rgb:34, 197, 94;--ds-danger-rgb:239, 68, 68;--ds-warning-rgb:245, 158, 11;--ds-gold-rgb:251, 191, 36;--ds-gold:#fbbf24;--ds-silver:#94a3b8;--ds-bronze:#d97706;--ds-text:#f1f5f9;--ds-text-secondary:#8494a7;--ds-text-muted:#64748b;--ds-border:#ffffff0f;--ds-border-strong:#ffffff1a;--ds-font:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--ds-font-num:var(--ds-font);--ds-radius:10px;--ds-radius-sm:6px;--ds-transition:.18s ease;--ds-max-width:820px;font-variant-numeric:tabular-nums}:root{--primary-color:#1e88e5;--primary-dark:#1565c0;--secondary-color:#6c757d;--success-color:#28a745;--danger-color:#dc3545;--warning-color:#fd7e14;--info-color:#0d9488;--light-color:#f8f9fa;--dark-color:#343a40;--gray-100:#f8f9fa;--gray-200:#e9ecef;--gray-300:#dee2e6;--gray-400:#ced4da;--gray-500:#adb5bd;--gray-600:#6c757d;--gray-700:#495057;--gray-800:#343a40;--gray-900:#212529;--font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scrollbar-gutter:stable;background-color:#0a0e14}body{color:var(--gray-900);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0a0e14;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}h1,h2,h3,h4,h5,h6{margin-bottom:1rem;font-weight:600;line-height:1.2}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}p{margin-bottom:1rem}a{color:var(--primary-color);text-decoration:none}a:hover{color:var(--primary-dark);text-decoration:underline}button.btn,a.btn,.btn{text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;user-select:none;cursor:pointer;border:1px solid #0000;border-radius:.25rem;padding:.5rem 1rem;font-size:1rem;font-weight:600;line-height:1.5;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,transform .1s ease-in-out;display:inline-block}a.btn,a.btn:hover,a.btn:visited,a.btn:active{text-decoration:none}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:focus{outline:0}.btn-primary{color:#fff;background-color:var(--primary-color);border-color:var(--primary-color)}.btn-primary:hover{color:#fff;background-color:var(--primary-dark);border-color:var(--primary-dark)}.btn-secondary{color:#fff;background-color:var(--secondary-color);border-color:var(--secondary-color)}.btn-secondary:hover{color:#000;background-color:#5a6268;border-color:#545b62}.btn-outline-primary{color:var(--primary-color);border-color:var(--primary-color);background-color:#0000}.btn-outline-primary:hover{color:#fff;background-color:var(--primary-color);border-color:var(--primary-color)}.btn-sm{border-radius:.2rem;padding:.25rem .5rem;font-size:.875rem}.form-group{margin-bottom:1rem}label{margin-bottom:.5rem;display:inline-block}input,textarea,select{width:100%;color:var(--gray-700);border:1px solid var(--gray-400);background-color:#fff;background-clip:padding-box;border-radius:.25rem;padding:.375rem .75rem;font-size:1rem;line-height:1.5;transition:border-color .15s ease-in-out;display:block}input:focus,textarea:focus,select:focus{border-color:#80bdff;outline:0}.alert{border:1px solid #0000;border-radius:.25rem;margin-bottom:1rem;padding:.75rem 1.25rem;position:relative}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.loading,.error-message,.not-found{text-align:center;margin:2rem 0;padding:2rem}.loading{color:var(--gray-600)}.error-message{color:var(--danger-color)}.not-found{color:var(--gray-700)}.App{flex-direction:column;min-height:100vh;display:flex}.app-layout{color:#f1f5f9;flex-direction:column;min-height:100vh;display:flex}.app-layout a:not(.btn):not(.tab-btn):not(.tribune-back):not(.tribune-gate-link){color:var(--ds-text)}.app-layout a:not(.btn):not(.tab-btn):not(.tribune-back):not(.tribune-gate-link):hover{color:var(--ds-accent)}.app-layout .btn-primary{background-color:var(--ds-accent);border-color:var(--ds-accent)}.app-layout .btn-primary:hover{background-color:var(--ds-accent-hover);border-color:var(--ds-accent-hover)}.app-layout .btn-secondary{border-color:var(--ds-border-strong);color:var(--ds-text-secondary);background-color:#ffffff14}.app-layout .btn-secondary:hover:not(:disabled){color:var(--ds-text);background-color:#ffffff1f}.app-layout .btn-outline-primary{color:var(--ds-accent);border-color:var(--ds-accent);background-color:#0000}.app-layout .btn-outline-primary:hover{color:#fff;background-color:var(--ds-accent);border-color:var(--ds-accent)}.app-layout input,.app-layout textarea,.app-layout select{background-color:var(--ds-surface);color:var(--ds-text);border-color:var(--ds-border-strong)}.app-layout input:focus,.app-layout textarea:focus,.app-layout select:focus{border-color:var(--ds-accent)}.app-layout .alert-danger{color:var(--ds-danger);background-color:#ef44441f;border-color:#ef444433}.app-layout .loading{color:var(--ds-text-secondary)}.app-layout .error-message{color:var(--ds-danger)}.app-layout .not-found{color:var(--ds-text-secondary)}.app-layout .server-error h2{color:var(--ds-danger)}main.container{flex:1;padding:1rem}@media (width<=480px){.container{padding:0 .5rem}main.container{padding:.5rem}}.footer{background:var(--ds-surface,linear-gradient(135deg, var(--gray-800) 0%, var(--gray-600) 100%));border-top:1px solid var(--ds-border,transparent);color:var(--ds-text,white);text-align:center;margin-top:auto;padding:1rem 0}.footer-content{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.footer-logo{width:auto;height:32px}.footer p{margin:0}.server-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100vh;padding:2rem;display:flex}.server-error h2{color:var(--danger-color);margin-bottom:1rem}.tribune-standalone,.tribune-boot{background:var(--ds-bg);min-height:100vh}.mobile-menu-overlay{z-index:999;background:#0009;animation:.2s ease-out fadeIn;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu{background:linear-gradient(135deg, var(--ds-surface) 0%, var(--ds-bg) 100%);color:var(--ds-text);border-bottom:1px solid var(--ds-border);padding:1rem;animation:.25s ease-out slideDown;position:absolute;top:0;left:0;right:0;box-shadow:0 8px 24px #00000080}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mobile-menu-header{border-bottom:1px solid var(--ds-border-strong);justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:1rem;display:flex}.mobile-menu-title{font-size:1.125rem;font-weight:600}.mobile-menu-close{color:var(--ds-text);cursor:pointer;opacity:.8;background:0 0;border:none;padding:.25rem;font-size:1.25rem;line-height:1;transition:opacity .15s}.mobile-menu-close:hover{opacity:1}.mobile-menu-nav{flex-direction:column;display:flex}.mobile-menu-link{color:var(--ds-text);border-radius:.375rem;padding:.875rem .5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:background-color .15s;display:block}.mobile-menu-link:hover{color:var(--ds-text);background:#ffffff14;text-decoration:none}.mobile-menu-logout{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;font-family:inherit}.mobile-menu-divider{background:var(--ds-border-strong);height:1px;margin:.5rem 0}.feedback-pill-mobile{background:rgba(var(--ds-accent-rgb), .1);color:var(--ds-accent);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--ds-radius-sm);border:1px solid rgba(var(--ds-accent-rgb), .25);text-align:center;width:auto;transition:background var(--ds-transition), border-color var(--ds-transition);margin:.5rem;padding:.5rem 1rem;font-size:.7rem;font-weight:600;display:inline-block}.feedback-pill-mobile:hover{background:rgba(var(--ds-accent-rgb), .2);border-color:var(--ds-accent);color:var(--ds-accent)}.feedback-badge-mobile{background:var(--ds-danger);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:8px;padding:0 5px;font-size:.7rem;font-weight:700;line-height:1;display:inline-flex}.mobile-menu-tree{flex-direction:column;display:flex}.mobile-menu-tree-trigger{text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;font-family:inherit;display:flex}.mobile-menu-tree-arrow{opacity:.7;font-size:.625rem;transition:transform .2s}.mobile-menu-tree-arrow.open{transform:rotate(180deg)}.mobile-menu-tree-children{visibility:hidden;background:#0003;border-radius:.375rem;max-height:0;margin-top:.25rem;transition:max-height .3s ease-out,visibility 0s .3s;overflow:hidden}.mobile-menu-tree-children.open{visibility:visible;max-height:500px;transition:max-height .3s ease-out,visibility}.mobile-menu-tree-child{padding-left:1.5rem}.mobile-menu-tree-label{color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.5px;padding:.5rem 1.5rem .25rem;font-size:.7rem;font-weight:600}.mobile-tournament-item{border-bottom:1px solid var(--ds-border)}.mobile-tournament-item:last-child{border-bottom:none}.mobile-tournament-name{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.mobile-tournament-quick-links{gap:.5rem;padding:0 1.5rem .75rem;display:flex}.mobile-tournament-quick-link{color:#ffffffe6;background:#ffffff14;border:none;border-radius:.25rem;padding:.375rem .75rem;font-size:.75rem;text-decoration:none;transition:background-color .15s}.mobile-tournament-quick-link:hover{color:#fff;background:#ffffff2e;text-decoration:none}.navbar{background:linear-gradient(135deg, var(--ds-surface) 0%, var(--ds-bg) 100%);color:var(--ds-text);border-bottom:1px solid var(--ds-border);padding:.5rem 0}.navbar .container{justify-content:space-between;align-items:center;display:flex}.app-layout .navbar a.navbar-brand{color:var(--ds-accent);font-size:1.5rem;font-weight:700;text-decoration:none}.app-layout .navbar a.navbar-brand:hover{color:var(--ds-accent-hover);text-decoration:none}.navbar-nav{align-items:center;margin:0;padding:0;list-style:none;display:flex}.nav-item{margin-left:1.5rem}.app-layout .navbar a.nav-link{color:var(--ds-accent);padding:.5rem 0;font-weight:500;text-decoration:none;display:inline-block}.app-layout .navbar a.nav-link:hover{color:var(--ds-accent-hover);text-decoration:none}.btn-logout{color:var(--ds-text);cursor:pointer;background:0 0;border:none;padding:.5rem 0;font-family:inherit;font-size:1rem;font-weight:500;display:inline-block}.btn-logout:hover{color:var(--ds-accent)}.avatar-container{position:relative}.avatar-button{background:rgba(var(--ds-accent-rgb), .1);border:2px solid rgba(var(--ds-accent-rgb), .3);width:36px;height:36px;color:var(--ds-text);cursor:pointer;transition:background-color var(--ds-transition), border-color var(--ds-transition);border-radius:50%;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:flex}.avatar-button:hover{background:rgba(var(--ds-accent-rgb), .2);border-color:var(--ds-accent)}.avatar-dropdown{background:var(--ds-surface);border:1px solid var(--ds-border-strong);z-index:1000;opacity:0;visibility:hidden;border-radius:.5rem;min-width:160px;padding:.5rem 0;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:calc(100% + .5rem);right:0;transform:translateY(-8px);box-shadow:0 8px 24px #0006}.avatar-dropdown.open{opacity:1;visibility:visible;transform:translateY(0)}.avatar-dropdown-item{width:100%;color:var(--ds-text);text-align:left;cursor:pointer;background:0 0;border:none;padding:.625rem 1rem;font-size:.9375rem;text-decoration:none;transition:background-color .15s;display:block}.avatar-dropdown-item:hover{background:rgba(var(--ds-accent-rgb), .1);color:var(--ds-accent)}.avatar-dropdown-divider{background:var(--ds-border);height:1px;margin:.5rem 0}.tournaments-nav-item{position:relative}.tournaments-dropdown-trigger{color:var(--ds-accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:.375rem;padding:.5rem 0;font-family:inherit;font-size:1rem;font-weight:500;display:flex}.tournaments-dropdown-trigger:hover{color:var(--ds-accent-hover)}.tournaments-dropdown-arrow{font-size:.625rem;transition:transform .2s}.tournaments-dropdown-arrow.open{transform:rotate(180deg)}.tournaments-dropdown{background:var(--ds-surface);border:1px solid var(--ds-border-strong);z-index:1000;opacity:0;visibility:hidden;border-radius:.5rem;min-width:220px;max-width:280px;max-height:400px;padding:.5rem 0;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:calc(100% + .5rem);left:0;overflow-y:auto;transform:translateY(-8px);box-shadow:0 8px 24px #0006}.tournaments-dropdown.open{opacity:1;visibility:visible;transform:translateY(0)}.tournaments-dropdown-item{width:100%;color:var(--ds-text);text-align:left;cursor:pointer;background:0 0;border:none;padding:.625rem 1rem;font-size:.9375rem;text-decoration:none;transition:background-color .15s;display:block}.tournaments-dropdown-item:hover{background:rgba(var(--ds-accent-rgb), .1);color:var(--ds-accent)}.tournaments-dropdown-all{font-weight:600}.tournaments-dropdown-divider{background:var(--ds-border);height:1px;margin:.5rem 0}.tournaments-dropdown-label{color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.5px;padding:.375rem 1rem;font-size:.75rem;font-weight:600}.tournaments-dropdown-tournament{border-bottom:1px solid var(--ds-border)}.tournaments-dropdown-tournament:last-child{border-bottom:none}.tournament-name{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.tournament-quick-links{gap:.25rem;padding:0 1rem .5rem;display:flex}.tournament-quick-link{color:var(--ds-text-secondary);cursor:pointer;background:#ffffff14;border:none;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;transition:background-color .15s,color .15s}.tournament-quick-link:hover{background:var(--ds-accent);color:#fff}.hamburger-btn{color:var(--ds-text);cursor:pointer;background:0 0;border:none;padding:.5rem;font-size:1.5rem;line-height:1;display:none}.hamburger-btn:hover{color:var(--ds-accent)}.desktop-nav{align-items:center;margin:0;padding:0;list-style:none;display:flex}.desktop-auth{align-items:center;gap:1rem;display:flex}.feedback-pill{background:rgba(var(--ds-accent-rgb), .1);color:var(--ds-accent);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--ds-radius-sm);border:1px solid rgba(var(--ds-accent-rgb), .25);transition:background var(--ds-transition), border-color var(--ds-transition);padding:.3rem .65rem;font-size:.65rem;font-weight:600;text-decoration:none;display:inline-block}.app-layout a.feedback-pill:hover{background:rgba(var(--ds-accent-rgb), .2);border-color:var(--ds-accent);color:var(--ds-accent);text-decoration:none}.feedback-badge{background:var(--ds-danger);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:6px;padding:0 4px;font-size:.65rem;font-weight:700;line-height:1;display:inline-flex}@media (width<=768px){.navbar .container{flex-direction:row;align-items:center}.desktop-nav,.desktop-auth{display:none}.hamburger-btn{display:block}}.markdown-content{color:var(--ds-text);line-height:1.7}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{color:var(--ds-text);margin-top:1.5rem;margin-bottom:.75rem}.markdown-content h1{font-size:1.75rem}.markdown-content h2{font-size:1.5rem}.markdown-content h3{font-size:1.25rem}.markdown-content p{margin-bottom:1rem}.markdown-content ul,.markdown-content ol{margin-bottom:1rem;padding-left:1.5rem}.markdown-content li{margin-bottom:.5rem}.markdown-content a{color:var(--ds-accent);text-decoration:underline}.markdown-content a:hover{color:var(--ds-accent-hover)}.markdown-content blockquote{border-left:4px solid var(--ds-accent);color:var(--ds-text-secondary);margin:1rem 0;padding-left:1rem;font-style:italic}.markdown-content code{background-color:var(--ds-surface-hover);border-radius:.25rem;padding:.2rem .4rem;font-size:.9em}.markdown-content pre{background-color:var(--ds-surface-hover);border-radius:var(--ds-radius-sm);margin-bottom:1rem;padding:1rem;overflow-x:auto}.markdown-content pre code{background:0 0;padding:0}.markdown-content table{border-collapse:collapse;width:100%;margin-bottom:1rem}.markdown-content th,.markdown-content td{border:1px solid var(--ds-border-strong);text-align:left;padding:.75rem}.markdown-content th{background-color:var(--ds-surface-highlight);font-weight:600}.markdown-content hr{border:none;border-top:1px solid var(--ds-border-strong);margin:2rem 0}.alert-banners-container{flex-direction:column;gap:1rem;display:flex}.alert-banner{border-left:4px solid;border-radius:8px;align-items:flex-start;gap:16px;padding:16px 20px;animation:.3s ease-out slideDown;display:flex;box-shadow:0 2px 4px #0000004d}.alert-content{flex:1;min-width:0}.alert-title{margin-bottom:4px;font-size:15px;font-weight:600}.alert-message{color:var(--ds-text-secondary);font-size:14px;line-height:1.5}.alert-dismiss{cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:24px;line-height:1;transition:opacity .2s;display:flex}.alert-dismiss:hover{opacity:1;background:#ffffff14}.alert-info{background:rgba(var(--ds-accent-rgb), .08);border-left-color:var(--ds-accent);color:var(--ds-text)}.alert-info .alert-title,.alert-info .alert-dismiss{color:var(--ds-accent)}.alert-success{background:rgba(var(--ds-success-rgb), .08);border-left-color:var(--ds-success);color:var(--ds-text)}.alert-success .alert-title,.alert-success .alert-dismiss{color:var(--ds-success)}.alert-warning{background:rgba(var(--ds-warning-rgb), .08);border-left-color:var(--ds-warning);color:var(--ds-text)}.alert-warning .alert-title,.alert-warning .alert-dismiss{color:var(--ds-warning)}.alert-error{background:rgba(var(--ds-danger-rgb), .08);border-left-color:var(--ds-danger);color:var(--ds-text)}.alert-error .alert-title,.alert-error .alert-dismiss{color:var(--ds-danger)}.alert-message.markdown-content{font-size:14px;line-height:1.5}.alert-message.markdown-content>:first-child{margin-top:0}.alert-message.markdown-content>:last-child{margin-bottom:0}.alert-message.markdown-content p{margin:.5em 0}.alert-message.markdown-content ul,.alert-message.markdown-content ol{margin:.5em 0;padding-left:1.5em}.alert-message.markdown-content code{background:#ffffff14;border-radius:3px;padding:.1em .3em;font-size:.9em}.alert-message.markdown-content strong{font-weight:600}.home-container{padding:1rem 0}.hero{background:linear-gradient(135deg, rgba(var(--ds-accent-rgb), .6) 0%, #0a0e14d9 100%);color:var(--ds-text);border-radius:var(--ds-radius);text-align:center;margin-bottom:2rem;padding:3rem 2rem}.hero h1{margin-bottom:1rem;font-size:3rem}.hero .lead{margin-bottom:2rem;font-size:1.25rem}.cta-buttons{justify-content:center;gap:1rem;display:flex}.features{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem;display:grid}.feature-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);text-align:center;padding:1.5rem}.feature-card h3{color:var(--ds-accent);margin-bottom:1rem}.tournaments-grid{flex-wrap:wrap;gap:2rem;display:flex}.tournaments-grid>.upcoming-tournaments{flex:1;min-width:300px}.upcoming-tournaments{margin-bottom:3rem}.upcoming-tournaments h2{text-align:center;margin-bottom:1.5rem}.tournament-cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.tournament-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);padding:1.5rem}.tournament-card p{color:var(--ds-text-secondary);margin-bottom:1rem}.tournament-card .tournament-description{color:var(--ds-text-muted);margin-bottom:1.5rem;font-size:.9rem;font-style:italic}@media (width<=768px){.cta-buttons{flex-direction:column}.hero h1{font-size:2.5rem}}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:.5rem;max-width:400px;display:flex;position:fixed;top:1rem;right:1rem}.toast{background-color:var(--ds-surface-elevated);border:1px solid var(--ds-border-strong);opacity:0;pointer-events:auto;cursor:pointer;word-wrap:break-word;border-left:4px solid;border-radius:10px;align-items:center;gap:.75rem;min-width:300px;max-width:400px;padding:1rem;transition:all .3s ease-in-out;display:flex;transform:translate(100%);box-shadow:0 8px 24px #000000b3,0 0 0 1px #ffffff14}.toast-visible{opacity:1;transform:translate(0)}.toast-exiting{opacity:0;transform:translate(100%)}.toast-success{border-left-color:#22c55e}.toast-error{border-left-color:#ef4444}.toast-warning{border-left-color:#f59e0b}.toast-info{border-left-color:#3b82f6}.toast-icon{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.875rem;font-weight:700;display:flex}.toast-success .toast-icon{background-color:#22c55e}.toast-error .toast-icon{background-color:#ef4444}.toast-warning .toast-icon{background-color:#f59e0b}.toast-info .toast-icon{background-color:#3b82f6}.toast-message{color:#f1f5f9;flex:1;margin:0;font-size:.875rem;line-height:1.4}.toast-close{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;padding:0;font-size:1.25rem;transition:color .2s,background-color .2s;display:flex}.toast-close:hover{color:#8494a7;background-color:#ffffff14}.toast:hover{box-shadow:0 6px 16px #0009}@media (width<=768px){.toast-container{max-width:none;top:.5rem;left:.5rem;right:.5rem}.toast{min-width:unset;max-width:none;margin:0}.toast-message{font-size:.8rem}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.confirm-modal-overlay{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-modal{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border-strong);width:90%;max-width:400px;box-shadow:0 4px 20px #00000080}.confirm-modal-header{border-bottom:1px solid var(--ds-border);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.confirm-modal-header h3{color:var(--ds-text);margin:0;font-size:1.25rem}.confirm-modal-header .close-btn{color:var(--ds-text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.confirm-modal-header .close-btn:hover{color:var(--ds-text)}.confirm-modal-body{padding:1.5rem}.confirm-modal-body p{color:var(--ds-text-secondary);margin:0;line-height:1.5}.confirm-modal-footer{border-top:1px solid var(--ds-border);justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.btn-danger{background-color:var(--ds-danger);border-color:var(--ds-danger);color:#fff}.btn-danger:hover{background-color:#dc2626;border-color:#dc2626}.btn-danger:disabled{opacity:.65;cursor:not-allowed}.dashboard-container{max-width:860px;margin:0 auto;padding:0 0 3rem}.dashboard-hero{justify-content:space-between;align-items:center;gap:1.5rem;padding:2rem 0 1.5rem;display:flex}.dashboard-hero-text h1{color:var(--ds-text);letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.5rem;font-weight:700}.dashboard-hero-text .dashboard-subtitle{color:var(--ds-text-muted);margin:0;font-size:.82rem}.dashboard-hero-stats{flex-shrink:0;gap:1.5rem;display:flex}.hero-stat{text-align:center}.hero-stat-value{font-family:var(--ds-font-num);color:var(--ds-text);font-size:1.5rem;font-weight:700;line-height:1.2;display:block}.hero-stat-label{color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:.15rem;font-size:.65rem;font-weight:600;display:block}.dashboard-section{margin-bottom:2rem}.section-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.section-header h2{color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.76rem;font-weight:700}.section-header .section-count{font-family:var(--ds-font-num);color:var(--ds-text-muted);background:#ffffff0d;border-radius:20px;padding:.125rem .5rem;font-size:.68rem;font-weight:600}.tournament-stack{flex-direction:column;gap:.5rem;display:flex}.dash-card{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);transition:background var(--ds-transition), border-color var(--ds-transition), transform var(--ds-transition);padding:1rem 1.125rem;animation:.4s both dashCardIn}.dash-card:first-child{animation-delay:50ms}.dash-card:nth-child(2){animation-delay:.1s}.dash-card:nth-child(3){animation-delay:.15s}.dash-card:nth-child(4){animation-delay:.2s}.dash-card:nth-child(5){animation-delay:.25s}@keyframes dashCardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.dash-card:hover{background:var(--ds-surface-hover);border-color:var(--ds-border-strong)}.dash-card.has-urgent{border-left:3px solid var(--ds-warning)}.dash-card.all-done{border-left:3px solid var(--ds-success);opacity:.85}.dash-card-top{align-items:flex-start;gap:.75rem;margin-bottom:.625rem;display:flex}.dash-card-info{flex:1;min-width:0}.dash-card-name-row{align-items:center;gap:.5rem;margin-bottom:.2rem;display:flex}.dash-card-name{color:var(--ds-text);white-space:nowrap;text-overflow:ellipsis;transition:color var(--ds-transition);font-size:.95rem;font-weight:600;text-decoration:none;overflow:hidden}.dash-card-name:hover{color:var(--ds-accent);text-decoration:none}.dash-card-deadline-chip{white-space:nowrap;font-size:.72rem;font-weight:500;font-family:var(--ds-font-num);letter-spacing:-.01em;border-radius:20px;flex-shrink:0;align-items:center;gap:.35rem;padding:.3rem .6rem;display:flex}.dash-card-deadline-chip.chill{color:var(--ds-text-secondary);background:#ffffff0a}.dash-card-deadline-chip.soon{color:var(--ds-warning);background:#f59e0b1a}.dash-card-deadline-chip.urgent{color:var(--ds-danger);background:#ef44441f;animation:2s ease-in-out infinite urgentPulse}@keyframes urgentPulse{0%,to{opacity:1}50%{opacity:.7}}.dash-card-deadline-chip .deadline-dot{background:currentColor;border-radius:50%;width:5px;height:5px}.dash-card-todos{align-items:center;gap:.5rem;display:flex}.dash-todos-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ds-warning);flex-shrink:0;font-size:.65rem;font-weight:700}.dash-card-actions{flex-wrap:wrap;gap:.375rem;display:flex}.dash-action{color:var(--ds-text);border-radius:var(--ds-radius-sm);transition:all var(--ds-transition);cursor:pointer;background:#f59e0b14;border:1px solid #f59e0b26;align-items:center;gap:.35rem;padding:.35rem .625rem;font-size:.75rem;font-weight:500;text-decoration:none;display:inline-flex}.dash-action:hover{color:var(--ds-text);background:#f59e0b26;border-color:#f59e0b4d;text-decoration:none}.dash-action .action-arrow{opacity:.5;transition:transform var(--ds-transition);font-size:.65rem}.dash-action:hover .action-arrow{opacity:.8;transform:translate(2px)}.dash-action.payment-action{background:#ef444414;border-color:#ef444426}.dash-action.payment-action .dash-action-count{color:var(--ds-danger)}.dash-action.payment-action:hover{background:#ef444426;border-color:#ef44444d}.dash-card-done{color:var(--ds-success);align-items:center;gap:.35rem;font-size:.75rem;font-weight:500;display:flex}.dash-card-done .done-check{background:#22c55e1f;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:.6rem;font-weight:700;display:flex}.dash-card-links{border-top:1px solid var(--ds-border);gap:0;margin-top:.5rem;padding-top:0;display:flex}.dash-link{color:var(--ds-text-muted);transition:all var(--ds-transition);border-right:1px solid var(--ds-border);flex:1;justify-content:center;align-items:center;padding:.5rem;font-size:.76rem;font-weight:600;text-decoration:none;display:flex}.dash-link:last-child{border-right:none}.dash-link:hover{color:var(--ds-text);background:#ffffff08;text-decoration:none}.dash-link.primary-link{color:var(--ds-accent);font-weight:700}.dash-link.primary-link:hover{color:var(--ds-accent);background:#3b82f60f}.dash-empty-current{color:var(--ds-text-muted);margin:0;font-size:.82rem}.dash-past{margin-top:.75rem}.dash-past-toggle{border:1px solid var(--ds-border);border-radius:var(--ds-radius);width:100%;color:var(--ds-text-secondary);cursor:pointer;transition:background-color var(--ds-transition), color var(--ds-transition);background:0 0;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.8rem;font-weight:600;display:flex}.dash-past-toggle:hover{background-color:var(--ds-surface-hover);color:var(--ds-text)}.dash-past-chevron{transition:transform var(--ds-transition);display:inline-block}.dash-past-chevron--open{transform:rotate(90deg)}.dash-past-list{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.dash-past-card{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);opacity:.85;transition:opacity var(--ds-transition), border-color var(--ds-transition);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1.125rem;display:flex}.dash-past-card:hover{opacity:1;border-color:var(--ds-border-strong)}.dash-past-name{color:var(--ds-text);text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:color var(--ds-transition);font-size:.88rem;font-weight:600;text-decoration:none;overflow:hidden}.dash-past-name:hover{color:var(--ds-accent);text-decoration:none}.dash-past-meta{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.dash-past-result{font-family:var(--ds-font-num);color:var(--ds-text-muted);white-space:nowrap;font-size:.76rem}.dash-past-link{color:var(--ds-text-muted);white-space:nowrap;transition:color var(--ds-transition);font-size:.76rem;font-weight:600;text-decoration:none}.dash-past-link:hover{color:var(--ds-text);text-decoration:none}.available-tournaments{flex-direction:column;gap:.5rem;display:flex}.available-tournament-card{background:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);transition:all var(--ds-transition);justify-content:space-between;align-items:center;padding:.875rem 1.125rem;display:flex}.available-tournament-card:hover{background:var(--ds-surface-hover);border-color:var(--ds-border-strong)}.available-tournament-info h3{color:var(--ds-text);margin:0 0 .2rem;font-size:.92rem;font-weight:600}.available-tournament-info p{color:var(--ds-text-muted);margin:0;font-size:.76rem}.participant-count{color:var(--ds-text-muted)}.empty-state p{color:var(--ds-text-secondary);margin-bottom:1.5rem}.dashboard-loading{flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:4rem 2rem;display:flex}.loading-spinner{border:2.5px solid var(--ds-border-strong);border-top-color:var(--ds-accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text{color:var(--ds-text-muted);font-size:.82rem}@media (width<=700px){.dashboard-container{padding:0 1rem 2rem}.dashboard-hero{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.25rem 0 1rem}.dashboard-hero-text h1{font-size:1.25rem}.dashboard-hero-stats{gap:1.5rem}.hero-stat-value{font-size:1.25rem}.dash-card{padding:.875rem 1rem}.dash-card-top{flex-flow:column wrap;gap:.5rem}.dash-card-name{white-space:normal;text-overflow:unset;font-size:.88rem;overflow:visible}.dash-card-deadline-chip{align-self:flex-start;font-size:.68rem}.dash-card-actions{flex-wrap:wrap}.dash-link{padding:.45rem .25rem;font-size:.72rem}.available-tournament-card{flex-direction:column;align-items:flex-start;gap:.75rem}.available-tournament-card .btn{width:100%}.dash-past-card{flex-direction:column;align-items:flex-start;gap:.35rem;padding:.75rem 1rem}.dash-past-name{white-space:normal;text-overflow:unset;overflow:visible}}.login-container{justify-content:center;align-items:center;min-height:80vh;padding:2rem 1rem;display:flex}.login-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);width:100%;max-width:400px;padding:2rem}.login-card h2{text-align:center;color:var(--ds-text);margin-bottom:1.5rem}.login-card .form-group label{color:var(--ds-text)}.login-footer{text-align:center;color:var(--ds-text-secondary);margin-top:1.5rem}.login-footer a{color:var(--ds-accent);text-decoration:none}.login-footer a:hover{text-decoration:underline}.form-description{color:var(--ds-text-secondary);text-align:center;margin-bottom:1.5rem}.success-message{background-color:rgba(var(--ds-success-rgb), .08);border:1px solid var(--ds-success);border-radius:var(--ds-radius);color:var(--ds-success);text-align:center;margin-bottom:1rem;padding:1rem}.success-message p{margin:0}.success-message p:last-child{margin-bottom:0}.error-message{background-color:rgba(var(--ds-danger-rgb), .08);border:1px solid var(--ds-danger);border-radius:var(--ds-radius);color:var(--ds-danger);margin-bottom:1rem;padding:1rem}.error-message p{margin:.5rem 0}.error-message p:last-child{margin-bottom:0}.forgot-password-link{text-align:right;margin-top:-.5rem;margin-bottom:1rem}.forgot-password-link a{color:var(--ds-text-secondary);font-size:.875rem;text-decoration:none}.forgot-password-link a:hover{color:var(--ds-accent);text-decoration:underline}.login-returnto-hint{color:#1e3a5f;text-align:center;background:#eef5ff;border:1px solid #cfe2ff;border-radius:6px;margin:0 0 16px;padding:10px 14px;font-size:14px}.password-strength-meter{margin-top:.5rem}.strength-bar-container{align-items:center;gap:.75rem;width:100%;margin-bottom:.75rem;display:flex}.strength-bar-track{background-color:#e9ecef;border-radius:2px;flex:1;min-width:0;height:4px}.strength-bar{border-radius:2px;height:100%;transition:width .3s,background-color .3s}.strength-bar.strength-weak{background-color:#dc3545;width:33%}.strength-bar.strength-medium{background-color:#ffc107;width:66%}.strength-bar.strength-strong{background-color:#28a745;width:100%}.strength-label{flex-shrink:0;font-size:.875rem;font-weight:500}.strength-label.strength-weak{color:#dc3545}.strength-label.strength-medium{color:#ffc107}.strength-label.strength-strong{color:#28a745}.password-requirements{margin:0;padding:0;font-size:.875rem;list-style:none}.password-requirements li{padding:.25rem 0;transition:color .2s}.password-requirements .check-pass{color:#28a745}.password-requirements .check-fail{color:#6c757d}.app-layout .strength-bar-track{background-color:#ffffff1a}.app-layout .password-requirements .check-fail{color:var(--ds-text-muted)}@media (width<=480px){.strength-bar-container{gap:.5rem}.password-requirements{font-size:.8125rem}}.register-container{justify-content:center;align-items:center;min-height:80vh;padding:2rem 1rem;display:flex}.register-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);width:100%;max-width:400px;padding:2rem}.register-card h2{text-align:center;color:var(--ds-text);margin-bottom:1.5rem}.register-card .form-group label{color:var(--ds-text)}.register-footer{text-align:center;color:var(--ds-text-secondary);margin-top:1.5rem}.register-footer a{color:var(--ds-accent);text-decoration:none}.register-footer a:hover{text-decoration:underline}.invite-banner{background-color:rgba(var(--ds-accent-rgb), .08);border:1px solid var(--ds-accent);border-radius:var(--ds-radius);text-align:center;margin-bottom:1.5rem;padding:1rem}.invite-banner p{color:var(--ds-text-secondary);margin:0}.tournament-list-container{max-width:1200px;margin:0 auto;padding:2rem 0}.tournament-list-container h1{text-align:center;color:var(--ds-text);margin-bottom:1.5rem}.filter-controls{border-bottom:1px solid var(--ds-border);justify-content:center;gap:0;margin-bottom:3rem;padding-bottom:1.5rem;display:flex}.tournament-list-container .filter-btn{background-color:var(--ds-surface);border:1px solid var(--ds-border-strong);color:var(--ds-text-secondary);cursor:pointer;transition:all var(--ds-transition);border-radius:0;padding:.625rem 1.25rem;font-size:.9rem;font-weight:500}.tournament-list-container .filter-btn:first-child{border-radius:var(--ds-radius-sm) 0 0 var(--ds-radius-sm)}.tournament-list-container .filter-btn:last-child{border-radius:0 var(--ds-radius-sm) var(--ds-radius-sm) 0}.tournament-list-container .filter-btn:hover:not(.active){background-color:var(--ds-surface-hover);color:var(--ds-text);border-color:#ffffff26}.tournament-list-container .filter-btn.active{background-color:var(--ds-accent);color:#fff;border-color:var(--ds-accent)}.tournament-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.tournament-list-container .tournament-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);transition:transform var(--ds-transition), box-shadow var(--ds-transition);border:none;flex-direction:column;padding:1.5rem;display:flex;position:relative;box-shadow:0 2px 8px #0000004d}.tournament-list-container .tournament-card:hover{transform:translateY(-3px);box-shadow:0 4px 16px #0006}.tournament-card-header{background-color:var(--ds-controls-bg);border-bottom:1px solid var(--ds-border);border-radius:calc(var(--ds-radius) - 1px) calc(var(--ds-radius) - 1px) 0 0;box-sizing:border-box;justify-content:space-between;align-items:center;height:3rem;margin:-1.5rem -1.5rem 1.25rem;padding:0 1.5rem;display:flex}.tournament-card h2{color:var(--ds-text);margin:.75rem 0 .5rem;font-size:1.25rem;font-weight:600}.tournament-status{flex-flow:row;align-items:center;gap:.5rem;display:flex}.active-badge{background-color:var(--ds-success);color:#fff;white-space:nowrap;border-radius:.25rem;flex-shrink:0;padding:.25rem .5rem;font-size:.75rem}.inactive-badge{background-color:var(--ds-text-muted);color:#fff;white-space:nowrap;border-radius:.25rem;flex-shrink:0;padding:.25rem .5rem;font-size:.75rem}.status-badge{white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;border-radius:.25rem;flex-shrink:0;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.status-badge.hidden-badge{color:var(--ds-text-secondary);background-color:#ffffff14}.status-badge.upcoming-badge{color:var(--ds-accent);background-color:#3b82f626}.status-badge.open-badge{color:var(--ds-success);background-color:#22c55e26}.status-badge.in-progress-badge{color:var(--ds-warning);background-color:#f59e0b26}.status-badge.completed-badge{color:var(--ds-text-secondary);background-color:#ffffff14}.tournament-dates{color:var(--ds-text-secondary);margin-bottom:1rem;font-size:.9rem}.tournament-description{color:var(--ds-text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex-grow:1;margin-bottom:1.5rem;line-height:1.5;display:-webkit-box;overflow:hidden}.no-tournaments{text-align:center;color:var(--ds-text-secondary);padding:2rem}.joined-badge{color:var(--ds-success);white-space:nowrap;background-color:#22c55e26;border-radius:.25rem;flex-shrink:0;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.tournament-card-actions{border-top:1px solid var(--ds-border);justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;padding-top:1rem;display:flex}.quick-join-controls{align-items:center;display:flex}.btn-small{padding:.375rem .75rem;font-size:.875rem}.participant-checklist{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);padding:1rem}.participant-checklist.disabled-state{opacity:.85}.checklist-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.checklist-header h3{color:var(--ds-text);margin:0;font-size:1rem;font-weight:600}.deadline-warning{color:var(--ds-danger);font-size:.8rem;font-weight:500;font-family:var(--ds-font-num)}.checklist-items{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:stretch;gap:.75rem;display:grid}.checklist-link{display:flex}.checklist-link,.checklist-link:hover,.checklist-link:visited,.checklist-link:active{color:inherit!important;text-decoration:none!important}.checklist-card{background:var(--ds-surface-hover);border:1px solid var(--ds-border-strong);border-left:3px solid var(--ds-danger);border-radius:var(--ds-radius-sm);width:100%;transition:background var(--ds-transition), border-color var(--ds-transition);flex-direction:column;flex:1;display:flex}.checklist-card.completed{border-left-color:var(--ds-success)}.checklist-link:hover .checklist-card{background:var(--ds-surface-highlight);border-color:rgba(var(--ds-accent-rgb), .5);border-left-color:var(--ds-danger)}.checklist-link:hover .checklist-card.completed{border-left-color:var(--ds-success)}.checklist-link:hover .checklist-action:not(.muted){color:var(--ds-accent-light)}.checklist-card.faded{opacity:.7}.checklist-card-head{align-items:center;gap:.6rem;padding:.7rem .75rem 0;display:flex}.checklist-card-body{padding:.3rem .75rem .6rem}.checklist-card-foot{border-top:1px solid var(--ds-border-strong);justify-content:space-between;align-items:center;gap:.5rem;min-height:2.1rem;margin-top:auto;padding:.55rem .75rem;display:flex}.checklist-icon{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-weight:800;display:flex}.checklist-icon.warn{background:var(--ds-warning);color:var(--ds-bg);border-radius:var(--ds-radius-sm);font-size:1.05rem}.checklist-icon.done{background:var(--ds-success);color:#fff;border-radius:50%;font-size:.9rem}.checklist-icon.dim{color:var(--ds-text-secondary);border-radius:var(--ds-radius-sm);background:#ffffff14;font-size:1.05rem}.checklist-count{font-family:var(--ds-font-num);white-space:nowrap;align-self:flex-start;margin-left:auto;padding-top:.15rem;font-size:.78rem;font-weight:600}.checklist-count.warn{color:var(--ds-warning)}.checklist-count.ok{color:var(--ds-success)}.checklist-status{white-space:nowrap;color:var(--ds-warning);font-size:.78rem;font-weight:600}.checklist-status.urgent{color:var(--ds-danger);font-family:var(--ds-font-num);font-variant-numeric:tabular-nums}.checklist-status.muted{color:var(--ds-text-muted)}.checklist-action{color:var(--ds-accent);white-space:nowrap;transition:color var(--ds-transition);align-items:center;gap:.3rem;margin-left:auto;font-size:.78rem;font-weight:600;display:flex}.checklist-action.muted{color:var(--ds-text-secondary);font-weight:500}.checklist-resend{font-family:var(--ds-font);color:var(--ds-accent);cursor:pointer;transition:color var(--ds-transition);background:0 0;border:none;margin-left:auto;padding:0;font-size:.78rem;font-weight:600}.checklist-resend:hover:not(:disabled){color:var(--ds-accent-light)}.checklist-resend:disabled{color:var(--ds-text-secondary);cursor:default;font-weight:500}.checklist-label{color:var(--ds-text);font-size:.85rem;font-weight:600;line-height:1.3}.checklist-sublabel{color:var(--ds-text-secondary);font-size:.7rem}.checklist-cta{text-align:center;border-top:1px solid var(--ds-border-strong);margin-top:1rem;padding-top:.75rem}.checklist-cta-text{color:var(--ds-text-secondary);margin:0 0 .75rem;font-size:.85rem}.checklist-link-compact,.checklist-link-compact:hover,.checklist-link-compact:visited,.checklist-link-compact:active{color:inherit!important;text-decoration:none!important}.checklist-chip{border-radius:var(--ds-radius-sm);background:rgba(var(--ds-warning-rgb), .1);border:1px solid rgba(var(--ds-warning-rgb), .25);transition:background var(--ds-transition), transform var(--ds-transition);align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}@keyframes chip-pulse{0%{box-shadow:0 0 0 0 rgba(var(--ds-warning-rgb), .4)}to{box-shadow:0 0 0 10px rgba(var(--ds-warning-rgb), 0)}}.checklist-chip.urgent{animation:2s ease-in-out infinite chip-pulse}.checklist-chip.completed{background:rgba(var(--ds-success-rgb), .1);border-color:rgba(var(--ds-success-rgb), .25);animation:none}.checklist-link-compact:hover .checklist-chip:not(.completed){background:rgba(var(--ds-warning-rgb), .18);transform:translateY(-1px)}.checklist-link-compact:hover .checklist-chip.completed{background:rgba(var(--ds-success-rgb), .18);transform:translateY(-1px)}.checklist-icon-sm{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;font-weight:600;display:flex}.checklist-icon-sm.completed{background-color:var(--ds-success);color:#fff}.checklist-icon-sm.pending{background-color:var(--ds-warning);color:#fff}.checklist-chip-content{flex-direction:column;min-width:0;display:flex}.checklist-chip-label{color:var(--ds-text);font-size:.75rem;font-weight:600;line-height:1.2}.checklist-chip-sublabel{color:var(--ds-text-secondary);font-size:.65rem}.checklist-chip-deadline{color:var(--ds-danger);white-space:nowrap;font-size:.65rem;font-weight:500;font-family:var(--ds-font-num);font-variant-numeric:tabular-nums;margin-left:auto}.checklist-chip-action{display:none}@media (width<=900px){.checklist-items{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.checklist-items{grid-template-columns:1fr}.checklist-header{flex-direction:column;align-items:flex-start;gap:.5rem}}.invite-btn{white-space:nowrap}.invite-modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.invite-modal{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);box-sizing:border-box;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.invite-modal-header{border-bottom:1px solid var(--ds-border);justify-content:space-between;align-items:center;min-width:0;padding:1rem 1.5rem;display:flex}.invite-modal-header h3{color:var(--ds-text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.25rem;overflow:hidden}.close-btn{color:var(--ds-text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.close-btn:hover{color:var(--ds-text)}.invite-modal-body{min-width:0;padding:1.5rem}.invite-modal-body p{color:var(--ds-text-secondary);word-wrap:break-word;margin:0 0 1rem}.invite-link-container{gap:.5rem;min-width:0;display:flex}.invite-link-input{border:1px solid var(--ds-border);background-color:var(--ds-surface-hover);min-width:0;color:var(--ds-text-secondary);box-sizing:border-box;border-radius:.375rem;flex:1;padding:.5rem .75rem;font-size:.875rem}.copy-btn{white-space:nowrap;padding:.5rem 1rem}.copy-btn.copied{background-color:var(--ds-success);border-color:var(--ds-success)}.whats-new-overlay{z-index:1100;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.whats-new-modal{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);width:100%;max-width:420px;color:var(--ds-text,inherit);padding:24px}.whats-new-header h3{margin:0 0 4px;font-size:1.25rem}.whats-new-since{opacity:.7;font-size:.8rem}.whats-new-hero{text-align:center;margin:20px 0 12px}.whats-new-positions{font-family:var(--ds-font-num);font-size:1.75rem;font-weight:700}.whats-new-arrow{opacity:.6}.whats-new-trend{font-family:var(--ds-font-num);vertical-align:baseline;font-size:1em;font-weight:400;line-height:1;display:inline-block}.whats-new-trend--up{color:var(--ds-success)}.whats-new-trend--down{color:var(--ds-danger)}.whats-new-trend--hero{vertical-align:middle;margin-left:8px;font-weight:700}.whats-new-trend-spacer{width:.15em;display:inline-block}.whats-new-personal{margin:8px 0 0;font-size:1.05rem}.whats-new-points{font-family:var(--ds-font-num);color:var(--ds-success);margin:4px 0 0;font-weight:600}.whats-new-context{text-align:center;opacity:.8;margin:12px 0;font-size:.9rem}.whats-new-highlights{margin:0 0 8px;padding-left:20px;font-size:.9rem}.whats-new-highlights li{margin-bottom:4px}.whats-new-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:20px;display:flex}.whats-new-optout{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:none;padding:4px;font-size:.8rem;text-decoration:underline}.whats-new-optout:hover{opacity:.9}.whats-new-dismiss{background:var(--ds-accent,#2563eb);color:#fff;border-radius:var(--ds-radius);cursor:pointer;border:none;padding:10px 20px;font-weight:600}.tbn-bar,.tbn-sheet,.tbn-sheet-scrim{display:none}@media (width<=768px){:root{--tbn-bar-height:calc(57px + env(safe-area-inset-bottom))}.tbn-bar{z-index:50;background:var(--ds-surface);border-top:2px solid var(--ds-text-muted);padding:.4rem .25rem calc(.4rem + env(safe-area-inset-bottom));justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.tbn-item{cursor:pointer;font:600 .65rem/1.1 var(--ds-font);color:var(--ds-text-muted);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:3px;padding:4px 2px;display:flex;position:relative}.tbn-item.active{color:var(--ds-accent)}.tbn-emoji{font-size:1.3rem;line-height:1}.tbn-badge{background:var(--ds-danger);color:#fff;font:700 .6rem/1 var(--ds-font);text-align:center;border-radius:9px;min-width:16px;padding:2px 5px;position:absolute;top:-2px;left:50%;transform:translate(6px)}.tbn-sheet-scrim{z-index:60;background:#00000080;display:block;position:fixed;inset:0}.tbn-sheet{z-index:61;background:var(--ds-surface);border-top:1px solid var(--ds-border-strong);border-radius:var(--ds-radius) var(--ds-radius) 0 0;padding:.5rem 0 calc(.5rem + env(safe-area-inset-bottom));display:block;position:fixed;bottom:0;left:0;right:0}.tbn-sheet-grab{background:var(--ds-border-strong);border-radius:3px;width:36px;height:4px;margin:.25rem auto .5rem}.tbn-sheet-row{cursor:pointer;text-align:left;width:100%;font:600 .95rem/1 var(--ds-font);color:var(--ds-text);background:0 0;border:none;align-items:center;gap:.85rem;padding:.85rem 1.25rem;display:flex}.tbn-sheet-row+.tbn-sheet-row{border-top:1px solid var(--ds-border)}.tbn-sheet-row.active{color:var(--ds-accent)}.tbn-sheet-row .tbn-emoji{font-size:1.2rem}.tbn-sheet-label{flex:1}.tbn-badge-inline{margin-left:auto;position:static;transform:none}}.tournament-detail-container{flex-direction:column;gap:1rem;display:flex}.landing-content{margin-top:0}.tab-content{background-color:var(--ds-bg);border-radius:var(--ds-radius);box-shadow:none;color:var(--ds-text);padding:1rem 2rem 2rem}.tab-content:has(.lbv2){padding:0}@media (width<=480px){.tournament-detail-container{margin-top:.5rem}.tournament-detail-container .tab-content{box-shadow:none;border-radius:0;padding:0}.tournament-detail-container .tab-content h1{text-align:center;color:var(--ds-text);margin-bottom:.75rem;font-size:1.25rem}}.variant-label{display:none}.status-badge-sm{border-radius:.25rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600}.status-badge-sm.active{background-color:rgba(var(--ds-success-rgb), .15);color:var(--ds-success)}.status-badge-sm.inactive{background-color:var(--ds-surface-hover);color:var(--ds-text-secondary)}.meta-divider{color:var(--ds-text-muted);margin:0 .5rem}.dates-compact,.participants-compact{color:var(--ds-text-secondary);font-size:.85rem}.description-inline{color:var(--ds-text-muted);font-size:.85rem;font-style:italic}.btn-sm{padding:.25rem .75rem;font-size:.75rem}.joined-badge-sm{background-color:rgba(var(--ds-success-rgb), .15);color:var(--ds-success);border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.started-message-sm{color:var(--ds-text-muted);font-size:.75rem;font-style:italic}.header-v1{position:relative;margin-bottom:.75rem!important;padding:.75rem 1rem!important}.header-v1 h1{font-size:1.25rem;display:inline;margin:0!important}.header-v1-content{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.header-v2{position:relative;margin-bottom:.75rem!important;padding:.75rem 1rem!important}.header-v2 h1{font-size:1.25rem;margin:0!important}.header-v2-top{justify-content:space-between;align-items:center;margin-bottom:.35rem;display:flex}.header-v2-actions{align-items:center;gap:.5rem;display:flex}.header-v2-bottom{flex-wrap:wrap;align-items:center;display:flex}.header-v3{position:relative;margin-bottom:.75rem!important;padding:.75rem 1rem!important}.header-v3 h1{font-size:1.1rem;margin:0 0 .35rem!important}.header-v3-content{justify-content:space-between;align-items:flex-start;display:flex}.header-v3-badges{flex-wrap:wrap;gap:.4rem;display:flex}.badge-pill{border-radius:1rem;padding:.2rem .5rem;font-size:.7rem;font-weight:500}.badge-pill.active{background-color:rgba(var(--ds-success-rgb), .15);color:var(--ds-success)}.badge-pill.inactive{background-color:var(--ds-surface-hover);color:var(--ds-text-secondary)}.badge-pill.neutral{background-color:var(--ds-surface-highlight);color:var(--ds-text)}.header-v4{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex;position:relative;padding:.75rem 1rem!important}.header-v4 h1{font-size:1.1rem;margin:0!important}.header-v4-name{flex-shrink:0}.header-v4-section{border-left:1px solid var(--ds-border-strong);flex-direction:column;gap:.1rem;padding-left:1rem;display:flex}.section-label{text-transform:uppercase;color:var(--ds-text-muted);letter-spacing:.5px;font-size:.6rem}.section-value{color:var(--ds-text);font-size:.85rem;font-weight:500}.status-value.active{color:var(--ds-success)}.status-value.inactive{color:var(--ds-text-muted)}.header-v4-action{flex-shrink:0;align-items:center;gap:.25rem;margin-left:auto;display:flex}.header-v4-checklist+.header-v4-action{margin-left:0}.header-v4 .utility-link{color:var(--ds-text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;padding:.25rem .5rem;font-size:.8rem;line-height:1.2;text-decoration:none;transition:color .15s;display:inline-flex}.header-v4 .utility-link:hover{color:var(--ds-accent);text-decoration:underline}.header-v4 .utility-link.danger:hover{color:var(--ds-danger)}.header-v4 .utility-link.static{cursor:default}.header-v4 .utility-link.static:hover{color:var(--ds-text-secondary);text-decoration:none}.header-v4-action .utility-divider{color:var(--ds-border-strong);-webkit-user-select:none;user-select:none;font-size:.8rem;line-height:1.2}.header-v4-checklist{margin-left:auto}.header-v4-status,.header-v4-meta,.mobile-task-banner{display:none}@media (width<=480px){.header-v4{justify-content:flex-start;align-items:baseline;gap:0;padding:.75rem 1rem!important}.header-v4 h1{font-size:1.05rem}.header-v4-name{text-align:left;flex:1 1 0;min-width:0}.header-v4-status{flex-shrink:0;margin-left:.75rem;display:block}.header-v4-status .utility-link{padding:0;font-size:.75rem}.header-v4-meta{color:var(--ds-text-secondary);flex:100%;margin-top:.3rem;font-size:.8rem;display:block}.header-v4-meta .utility-link{color:var(--ds-accent);padding:0;font-size:.8rem;display:inline}.header-v4-meta-sep{color:var(--ds-text-muted);margin:0 .35rem}.header-v4-section,.header-v4-checklist,.header-v4-action{display:none}.mobile-task-banner{z-index:21;display:block;position:sticky;top:.5rem}.mobile-task-banner:before{content:"";background:var(--ds-bg);z-index:-1;position:absolute;inset:-.5rem 0 0}.mobile-task-banner:empty{display:none}.mobile-task-banner .checklist-chip{box-sizing:border-box;height:48px;padding:0 .75rem}.mobile-task-banner .checklist-chip-content{flex:1;min-width:0}.mobile-task-banner .checklist-chip-label,.mobile-task-banner .checklist-chip-sublabel{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mobile-task-banner .checklist-chip-action{color:var(--ds-warning);white-space:nowrap;align-items:center;gap:2px;margin-left:.5rem;font-size:.75rem;font-weight:600;display:inline-flex}.tournament-detail-container:has(.mobile-task-banner .checklist-chip){--task-banner-offset:calc(.5rem + 38px)}}.header-v5{position:relative;overflow:hidden;margin-bottom:.75rem!important;padding:0!important}.header-v5-accent{background:linear-gradient(90deg, var(--ds-accent), var(--ds-success), var(--ds-accent));background-size:200% 100%;height:4px}.header-v5-content{justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.header-v5 h1{font-size:1.15rem;margin:0!important}.header-v5-meta{color:var(--ds-text-muted);margin-top:.15rem;font-size:.8rem;display:block}.header-v5-right{align-items:center;gap:.75rem;display:flex}.status-dot{border-radius:50%;width:10px;height:10px}.status-dot.active{background-color:var(--ds-success);box-shadow:0 0 6px rgba(var(--ds-success-rgb), .5)}.status-dot.inactive{background-color:var(--ds-text-muted)}.tournament-header{background-color:var(--ds-surface);border-radius:var(--ds-radius);padding:2rem;box-shadow:0 2px 8px #0000004d}.tournament-header h1{margin-bottom:.5rem}.tournament-meta{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.tournament-dates{color:var(--ds-text-secondary);margin:0;font-size:1.1rem}.tournament-description{color:var(--ds-text);margin-bottom:1.5rem;line-height:1.6}.tournament-participation{border-top:1px solid var(--ds-border);justify-content:space-between;align-items:center;padding-top:1rem;display:flex}.participant-info{align-items:center;gap:1rem;display:flex}.participant-count{color:var(--ds-text-secondary);font-size:.9rem}.join-controls{align-items:center;display:flex}.joined-badge{background-color:rgba(var(--ds-success-rgb), .15);color:var(--ds-success);border-radius:.375rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500}.started-message{color:var(--ds-text-muted);font-size:.9rem;font-style:italic}.tournament-tabs{border-bottom:1px solid var(--ds-border)}.tabs-desktop{width:100%;display:flex}.tab-btn{color:var(--ds-accent);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;padding:.75rem 1.5rem;font-size:1.1rem;transition:all .2s}.tab-badge{background-color:var(--ds-accent);color:#fff;text-align:center;border-radius:12px;min-width:20px;margin-left:.5rem;padding:.15rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}@media (width<=768px){.tabs-desktop{display:none}.tournament-tabs{border-bottom:none;margin-top:-1rem;margin-bottom:0}.tournament-detail-container{padding-bottom:calc(var(--tbn-bar-height,56px) + 1rem)}}.leaderboard-page-layout{grid-template-columns:3fr 2fr;align-items:start;gap:1.5rem;display:grid}@media (width<=1100px){.leaderboard-page-layout{grid-template-columns:1fr}}.matches-container h2,.leaderboard-container h2{color:var(--ds-text);margin-bottom:1.5rem}.leaderboard-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.leaderboard-header h1{color:var(--ds-accent);margin-bottom:0;font-size:1.5rem}.leaderboard-toggle{background-color:var(--ds-surface-hover);border-radius:var(--ds-radius);gap:.25rem;padding:.25rem;display:flex}.leaderboard-toggle-btn{color:var(--ds-text-secondary);cursor:pointer;border-radius:var(--ds-radius-sm);transition:var(--ds-transition);background-color:#0000;border:none;padding:.5rem 1rem;font-size:.875rem;font-weight:500}.leaderboard-toggle-btn:hover{color:var(--ds-text)}.leaderboard-toggle-btn.active{background-color:var(--ds-surface);color:var(--ds-accent);border:1px solid var(--ds-border)}.leaderboard-toggle-disabled{opacity:.45}.leaderboard-toggle-disabled .leaderboard-toggle-btn{cursor:not-allowed}.leaderboard-toggle-disabled .leaderboard-toggle-btn:hover{color:var(--ds-text-secondary)}.gap-row{background-color:var(--ds-surface)}.gap-row:hover{background-color:var(--ds-surface)!important}.gap-cell{text-align:center!important;padding:0!important}.gap-cell .show-more-btn{width:100%;color:var(--ds-text-muted);cursor:pointer;transition:var(--ds-transition);background:0 0;border:none;padding:.75rem 1rem;font-size:.875rem;font-style:italic}.gap-cell .show-more-btn:hover{background-color:var(--ds-surface-hover);color:var(--ds-accent)}.gap-cell .show-more-btn:focus{box-shadow:inset 0 0 0 2px var(--ds-accent);outline:none}.match-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);flex-direction:column;gap:1rem;padding:1.5rem;display:flex;position:relative}.match-status{position:absolute;top:1rem;right:1rem}.status-badge{color:#fff;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem}.status-badge.scheduled{background-color:var(--ds-accent)}.status-badge.in_progress{background-color:var(--ds-warning)}.status-badge.completed{background-color:var(--ds-success)}.match-teams{justify-content:space-between;align-items:center;display:flex}.match-score{background-color:var(--ds-surface-hover);border-radius:.25rem;padding:.5rem 1rem;font-size:1.2rem;font-weight:700}.leaderboard-table{border-collapse:collapse;background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);width:100%;overflow:hidden;box-shadow:0 2px 8px #0000004d}.leaderboard-table th{background-color:var(--ds-controls-bg);color:var(--ds-text-secondary);font-weight:600}.back-link{margin-top:1rem}.back-link a{color:var(--ds-text-secondary);text-decoration:none;display:inline-block}.back-link a:hover{color:var(--ds-accent)}@media (width<=768px){.match-teams{flex-direction:column;gap:.5rem}.match-score{margin:.5rem 0}}.round-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);margin-bottom:.75rem;padding:.5rem .75rem;box-shadow:0 2px 8px #0000004d}.round-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.round-header-left{flex:1}.round-header-right{flex-shrink:0}.round-name{color:var(--ds-text);margin-bottom:.25rem;font-size:1.2rem}.round-dates{color:var(--ds-text-secondary);font-size:.9rem}.prediction-deadline{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.prediction-deadline .deadline-label{color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.025em;font-size:.75rem;font-weight:500}.prediction-deadline .deadline-value{color:var(--ds-danger);font-size:.9rem;font-weight:600}@media (width<=600px){.round-header{flex-direction:column;gap:.75rem}.round-header-right{width:100%}.prediction-deadline{text-align:center;border-top:1px solid var(--ds-border);align-items:center;padding-top:.75rem}.prediction-deadline.completed-round{display:none}}@media (width<=480px){.round-card{margin-bottom:1rem;padding:1rem}.round-header{gap:.5rem}.round-name{font-size:1.1rem}.round-dates{font-size:.8rem}.prediction-deadline{padding-top:.5rem}.prediction-deadline .deadline-value{font-size:.85rem}}.matches-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.no-rounds,.no-matches{color:var(--ds-text-secondary);text-align:center;padding:1.5rem}.striker-selection-link{text-align:center;margin-top:1.5rem}.striker-selection-link .btn{padding:.75rem 2rem;font-size:1.1rem;font-weight:600}.leaderboard-table-container{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);overflow:hidden;box-shadow:0 2px 8px #0000004d}.leaderboard-table{border-collapse:collapse;width:100%}.leaderboard-table th,.leaderboard-table td{text-align:center;border-bottom:1px solid var(--ds-border);padding:1rem}.leaderboard-table th{background-color:var(--ds-controls-bg);color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.9rem;font-weight:600}.leaderboard-table tr:last-child td{border-bottom:none}.leaderboard-table tr:hover{background-color:var(--ds-surface-hover)}.leaderboard-table tr.current-user-row{background-color:var(--ds-surface-highlight);border-left:4px solid var(--ds-accent)}.leaderboard-table tr.current-user-row:hover{background-color:rgba(var(--ds-accent-rgb), .15)}.leaderboard-table tr.current-user-row .player-cell{color:var(--ds-accent);font-weight:600}.leaderboard-table th:first-child,.leaderboard-table th:nth-child(2),.leaderboard-table .position-cell,.leaderboard-table .player-cell{text-align:left!important}.position-cell{white-space:nowrap;width:1%;text-align:left!important}.position-badge{text-align:center;border-radius:4px;min-width:24px;padding:4px 8px;font-size:.85rem;font-weight:700;display:inline-block}.position-badge.first-place{background-color:var(--ds-gold);color:#b8860b;box-shadow:0 2px 4px #ffd7004d}.position-badge.second-place{background-color:var(--ds-silver);color:#696969;box-shadow:0 2px 4px #c0c0c04d}.position-badge.third-place{background-color:var(--ds-bronze);color:#8b4513;box-shadow:0 2px 4px #cd7f324d}.position-badge.other-place{background-color:var(--ds-border);color:var(--ds-text-secondary)}.player-cell{text-align:left;color:var(--ds-text);font-weight:500}.player-link{color:var(--ds-text);transition:var(--ds-transition);text-decoration:none}.player-link:hover{color:var(--ds-accent);text-decoration:underline}.participant-team-logo{object-fit:contain;vertical-align:middle;border-radius:2px;width:20px;height:20px;margin-left:.5rem;position:relative;top:-2px}.card-player-name .participant-team-logo{width:18px;height:18px;margin-left:.4rem;top:-1px}.leaderboard-view-toggle{margin-bottom:.5rem}.team-leaderboard-table .team-cell>span{vertical-align:baseline}.team-leaderboard-table .members-cell,.team-leaderboard-table .members-header{text-align:center;color:var(--ds-text-muted)}.team-card-name{align-items:center;gap:.4rem;display:flex}.team-member-count{color:var(--ds-text-muted);margin-left:.25rem;font-size:.75rem}.card-points-row{color:var(--ds-text-secondary);gap:.75rem;margin-top:.25rem;font-size:.8rem;display:flex}.card-point-item{white-space:nowrap}.points-cell{min-width:100px;font-weight:600}.prediction-points{color:var(--ds-accent)}.striker-points{color:var(--ds-success)}.total-points{color:var(--ds-text);background-color:#ffffff0a;font-size:1.2rem}.leaderboard-legend{background-color:var(--ds-surface);border-top:1px solid var(--ds-border);flex-wrap:wrap;justify-content:center;gap:2rem;padding:1rem;display:flex}.legend-item{color:var(--ds-text-secondary);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.legend-mobile-only{display:none!important}.legend-color{border-radius:50%;flex-shrink:0;width:16px;height:16px}.legend-color.prediction-color{background-color:var(--ds-accent)}.legend-color.striker-color{background-color:var(--ds-success)}.prediction-1x2-color,.points-1x2{color:var(--ds-accent)!important}.prediction-correct-score-color,.correct-score-points{color:#0d9488!important}.striker-color,.striker-points{color:var(--ds-success)!important}.top-teams-color,.top-teams-points{color:var(--ds-warning)!important}.leaderboard-cards-mobile{display:none}@media (width<=700px){.leaderboard-table{display:none}.leaderboard-cards-mobile{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.leaderboard-card-item{border-bottom:1px solid var(--ds-border);transition:var(--ds-transition);cursor:pointer;outline:none;gap:.75rem;padding:.75rem 1rem;display:flex}.leaderboard-card-item:last-child{border-bottom:none}.leaderboard-card-item:hover{background-color:#ffffff08}.leaderboard-card-item:focus{box-shadow:inset 0 0 0 2px var(--ds-accent);background-color:#ffffff08}.leaderboard-card-item.current-user-card{border-left:4px solid var(--ds-accent);background-color:#3b82f614;padding-left:calc(1rem - 4px)}.leaderboard-card-item.current-user-card:hover{background-color:#3b82f61f}.card-rank{flex-shrink:0;align-items:center;display:flex}.card-rank .position-badge{border-radius:4px;justify-content:center;align-items:center;min-width:28px;min-height:28px;padding:4px 8px;font-size:.85rem;font-weight:700;line-height:1;display:inline-flex}.card-main{flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.card-header-line{justify-content:space-between;align-items:center;gap:.75rem;line-height:1.3;display:flex}.card-player-name{color:var(--ds-text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.95rem;font-weight:600;overflow:hidden}.you-badge{background-color:var(--ds-accent);color:var(--ds-surface);vertical-align:middle;border-radius:.25rem;margin-left:.5rem;padding:.125rem .4rem;font-size:.7rem;font-weight:600;display:inline-block}.card-total-points{color:var(--ds-text);white-space:nowrap;flex-shrink:0;font-size:1rem;font-weight:700}.total-sigma{color:var(--ds-text-muted);margin-right:.25rem;font-weight:400}.card-metrics-line{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem;line-height:1.3;display:flex}.metric-chip{align-items:baseline;gap:.25rem;display:inline-flex}.metric-label{color:var(--ds-text-secondary);font-size:.8rem;font-weight:500}.metric-value{font-size:.85rem;font-weight:600}.metric-divider{color:var(--ds-text-muted);font-weight:400}.show-more-card{border-bottom:1px solid var(--ds-border);padding:0;list-style:none}.show-more-card:last-child{border-bottom:none}.show-more-btn{background-color:var(--ds-surface);width:100%;color:var(--ds-accent);cursor:pointer;text-align:center;transition:var(--ds-transition);border:none;padding:1rem;font-size:.9rem;font-weight:600}.show-more-btn:hover{background-color:var(--ds-surface-hover);color:var(--ds-accent)}.show-more-btn:focus{box-shadow:inset 0 0 0 2px var(--ds-accent);outline:none}.leaderboard-legend{flex-direction:column;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex!important}.legend-desktop-only{display:none!important}.legend-mobile-only{display:flex!important}.legend-points-only{display:none!important}.leaderboard-header{flex-wrap:wrap}.leaderboard-header>.leaderboard-toggle{width:100%}.leaderboard-header>.leaderboard-toggle>.leaderboard-toggle-btn{flex:1}.leaderboard-view-toggle,.leaderboard-view-toggle .leaderboard-toggle{width:100%}.leaderboard-view-toggle .leaderboard-toggle-btn{flex:1}.team-card-item{cursor:default}.team-card-name{flex-wrap:wrap}.card-points-row{flex-wrap:wrap;gap:.5rem}}@media (width<=500px){.leaderboard-card-item{gap:.5rem;padding:.65rem .75rem}.card-rank .position-badge{min-width:24px;min-height:24px;padding:3px 6px;font-size:.75rem}.card-player-name{font-size:.9rem}.card-total-points{font-size:.95rem}.you-badge{padding:.1rem .35rem;font-size:.65rem}.metric-label{font-size:.75rem}.metric-value{font-size:.8rem}}.matches-table-container{background-color:var(--ds-surface);border-radius:var(--ds-radius);margin-bottom:1rem;overflow:hidden;box-shadow:0 2px 8px #0000004d}.matches-table{border-collapse:collapse;width:100%}.matches-table th,.matches-table td{text-align:left;border-bottom:1px solid var(--ds-border);vertical-align:middle;padding:.75rem 1rem}.matches-table th{background-color:var(--ds-controls-bg);color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:600}.matches-table tbody tr:hover{background-color:var(--ds-surface-hover)}.matches-table .home-team,.matches-table .away-team{min-width:120px;font-weight:500}.team-cell-content{align-items:center;gap:.5rem;display:flex}.team-flag-inline{border-radius:2px;flex-shrink:0;box-shadow:0 0 0 1px #ffffff1a}.matches-table .date-column{white-space:nowrap;min-width:100px}.matches-table .time-column{white-space:nowrap;min-width:80px}.matches-table .score-column{text-align:center;min-width:80px}.matches-table .score-column span{font-weight:600}.matches-table .not-played{color:var(--ds-text-muted);font-style:italic}.matches-table .points-column{text-align:center;min-width:60px;color:var(--ds-accent);font-weight:600}.matches-table .stats-column{text-align:center;width:50px}.stats-link,.stats-link:visited,.stats-link:hover,.stats-link:active{cursor:pointer;opacity:1;text-decoration:none;transition:opacity .2s}.stats-link:hover{opacity:.7}.stats-disabled{opacity:.3;cursor:not-allowed}.matches-table .action-column{text-align:center;white-space:nowrap}.match-cards-mobile{display:none}@media (width<=1100px){.matches-table-container{display:none}.match-cards-mobile{flex-direction:column;gap:.5rem;display:flex}}.strikers-container,.top-teams-container{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);text-align:center;padding:2rem}.strikers-container h2,.top-teams-container h2{color:var(--ds-text);margin-bottom:1rem}.strikers-container p,.top-teams-container p{color:var(--ds-text-secondary);margin-bottom:2rem;font-size:1.1rem;line-height:1.6}.striker-action,.top-teams-action{margin-top:1.5rem}.btn-large{padding:1rem 2rem;font-size:1.2rem;font-weight:600}.matches-table .prediction-column{text-align:center;min-width:140px}.prediction-inputs{flex-direction:column;justify-content:center;align-items:center;height:26px;display:flex}.score-input-group{justify-content:center;align-items:center;gap:.5rem;display:flex}.score-input{border:1px solid var(--ds-border-strong);text-align:center;width:45px;height:26px;font-size:.875rem;font-family:var(--ds-font-num);background:var(--ds-bg);color:var(--ds-text);box-sizing:border-box;-moz-appearance:textfield;border-radius:.25rem;padding:0 .35rem}.score-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.score-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.score-input:focus{border-color:var(--ds-accent);box-shadow:0 0 0 2px rgba(var(--ds-accent-rgb), .25);outline:none}.score-input:disabled{cursor:not-allowed;background-color:#ffffff08}.btn-xs{border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;line-height:1}.prediction-disabled{color:var(--ds-text-muted);justify-content:center;align-items:center;height:26px;font-size:.75rem;font-style:italic;display:flex}.existing-prediction{justify-content:center;align-items:center;height:26px;font-weight:600;display:flex}.no-prediction{color:var(--ds-text-muted);justify-content:center;align-items:center;height:26px;display:flex}.predict-inline{color:var(--ds-text-muted);font-size:.75rem;font-style:italic}.rounds-container{max-width:1200px;margin:0 auto;padding:0}.rounds-header-row{background-color:var(--ds-surface);border-radius:var(--ds-radius);align-items:stretch;gap:2rem;margin-bottom:1.5rem;padding:1.5rem;display:flex;box-shadow:0 2px 4px #0000004d}.rounds-header-info{flex-direction:column;flex:0 0 280px;justify-content:center;display:flex}.rounds-header-info h1{color:var(--ds-text);margin-bottom:.5rem;font-size:1.5rem}.rounds-header-info .selection-info{color:var(--ds-text-secondary);margin-bottom:0;font-size:.9rem;line-height:1.4}.rounds-summary-row{flex:1;align-items:stretch;gap:.75rem;display:flex}.summary-stat{border:2px solid var(--ds-accent);border-radius:var(--ds-radius-sm);background-color:var(--ds-surface);flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:70px;padding:.75rem .5rem;display:flex}.summary-stat .stat-value{color:var(--ds-text);font-size:1.5rem;font-weight:700;font-family:var(--ds-font-num);line-height:1.2}.summary-stat .stat-label{color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem;font-size:.7rem}.summary-stat .progress-value{color:var(--ds-accent)}.summary-stat.deadline-stat{border-color:rgba(var(--ds-warning-rgb), .4);background-color:rgba(var(--ds-warning-rgb), .08)}.summary-stat .deadline-value{color:var(--ds-warning);font-size:.95rem}@media (width<=900px){.rounds-header-row{flex-direction:column;gap:1rem}.rounds-header-info{text-align:center;flex:none}.rounds-summary-row{flex-wrap:wrap;justify-content:center}.summary-stat{flex:calc(50% - .5rem);max-width:calc(50% - .5rem)}}@media (width<=600px){.summary-stat{flex:calc(50% - .375rem)}.summary-stat .stat-value{font-size:1.25rem}.summary-stat .deadline-value{font-size:.85rem}}@media (width<=480px){.rounds-header-row{margin-bottom:1rem;padding:1rem}.rounds-header-info h1{margin-bottom:.25rem;font-size:1.25rem}.rounds-header-info .selection-info{font-size:.85rem}.summary-stat{min-height:55px;padding:.5rem .25rem}.summary-stat .stat-value{font-size:1.1rem}.summary-stat .stat-label{font-size:.6rem}.summary-stat .deadline-value{font-size:.8rem}}@media (width<=768px){.matches-table .prediction-column{min-width:120px}.score-input{width:45px;font-size:.8rem}.btn-xs{padding:.2rem .4rem;font-size:.7rem}}.tournament-join-cta{background:linear-gradient(135deg, rgba(var(--ds-accent-rgb), .18), rgba(var(--ds-accent-rgb), .05));border:1px solid rgba(var(--ds-accent-rgb), .22);border-radius:var(--ds-radius);text-align:center;color:var(--ds-text);padding:1.25rem 1.5rem}.tournament-join-cta h3{margin:0 0 .4rem;font-size:1.05rem;font-weight:700}.tournament-join-cta p{color:var(--ds-text-secondary);margin:0 0 .85rem;font-size:.875rem}.tournament-join-cta-btns{flex-wrap:wrap;justify-content:center;gap:.625rem;display:flex}@media (width<=600px){.tournament-join-cta{padding:1rem 1.1rem}.tournament-join-cta-btns{flex-direction:column}.tournament-join-cta-btns .btn{width:100%}}.score-input.saving{background-color:rgba(var(--ds-success-rgb), .15)!important;border-color:rgba(var(--ds-success-rgb), .5)!important}@keyframes prediction-saved-flash{0%{background-color:rgba(var(--ds-success-rgb), .5);border-color:rgba(var(--ds-success-rgb), .8);box-shadow:0 0 8px rgba(var(--ds-success-rgb), .6)}to{background-color:var(--ds-bg);border-color:var(--ds-border-strong);box-shadow:none}}.score-input.just-saved{animation:.8s ease-out forwards prediction-saved-flash}@keyframes save-checkmark-appear{0%{opacity:0;transform:scale(.5)}15%{opacity:1;transform:scale(1)}85%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.save-checkmark{color:var(--ds-success);pointer-events:none;opacity:0;align-items:center;min-width:1.2rem;margin-left:.35rem;font-size:1rem;font-weight:700;display:inline-flex}.save-checkmark.visible{animation:2s ease-out forwards save-checkmark-appear}.promoted-messages-list{flex-flow:wrap;gap:16px;display:flex}.promoted-message-item{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);cursor:default;flex:calc(50% - 8px);min-width:300px;padding:16px;box-shadow:0 2px 8px #0000004d;flex-direction:column!important;display:flex!important}.promoted-message-header{border-bottom:1px solid var(--ds-border);width:100%;margin-bottom:12px;padding-bottom:12px;display:block}.promoted-message-item .promoted-message-title{color:var(--ds-text);margin:0 0 8px;font-size:18px;font-weight:600;display:block}.promoted-message-meta{color:var(--ds-text-secondary);align-items:center;gap:8px;font-size:14px;display:flex}.promoted-message-meta .meta-divider{color:var(--ds-border-strong)}.promoted-message-content{width:100%;color:var(--ds-text);line-height:1.6;display:block}.promoted-message-content .markdown-content{line-height:1.6}.promoted-message-content .markdown-content p{margin:0 0 .75rem}.promoted-message-content .markdown-content p:last-child{margin-bottom:0}.promoted-message-content .markdown-content h1,.promoted-message-content .markdown-content h2,.promoted-message-content .markdown-content h3,.promoted-message-content .markdown-content h4{margin-top:0;margin-bottom:.5rem}.promoted-message-content .markdown-content h1:first-child,.promoted-message-content .markdown-content h2:first-child,.promoted-message-content .markdown-content h3:first-child,.promoted-message-content .markdown-content h4:first-child{margin-top:0}.trend-indicator{margin-left:4px;font-size:.9rem;font-weight:600;display:inline-block}.trend-up{color:var(--ds-success)}.trend-down{color:var(--ds-danger)}@media (width<=700px){.card-rank .trend-indicator{margin-top:2px;margin-left:0;font-size:.7rem;display:block}}.matches-table tbody tr.prediction-incorrect{background-color:rgba(var(--ds-danger-rgb), .15)}.matches-table tbody tr.prediction-incorrect:hover{background-color:rgba(var(--ds-danger-rgb), .22)}.matches-table tbody tr.prediction-correct{background-color:rgba(var(--ds-success-rgb), .15)}.matches-table tbody tr.prediction-correct:hover{background-color:rgba(var(--ds-success-rgb), .22)}.matches-table tbody tr.prediction-exact{background-color:rgba(var(--ds-success-rgb), .3)}.matches-table tbody tr.prediction-exact:hover{background-color:rgba(var(--ds-success-rgb), .38)}.round-header-clickable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s}.round-name{align-items:center;gap:.5rem;display:flex}.expand-icon{color:var(--ds-text-muted);flex-shrink:0;width:1rem;font-size:.75rem;transition:transform .15s}.round-name .round-completed-badge{background-color:rgba(var(--ds-success-rgb), .15);border-radius:.25rem;margin-left:.5rem;padding:.2rem .5rem;font-size:.7rem;font-weight:500;color:var(--ds-success)!important}.rounds-expand-controls{gap:.5rem;margin-top:.75rem;display:flex}.rounds-expand-controls .btn{padding:.35rem .75rem;font-size:.8rem}.leaderboard-sidebar{flex-direction:column;gap:1rem;display:flex}@media (width<=600px){.rounds-expand-controls{justify-content:center;width:100%}.round-name .round-completed-badge,.round-name .joker-badge{padding:.15rem .4rem;font-size:.6rem}}.joker-badge{color:#fff;vertical-align:middle;letter-spacing:.02em;text-transform:uppercase;text-align:center;background:linear-gradient(135deg,#f5a623,#e8941a);border-radius:10px;margin-left:.5rem;padding:.15rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.joker-info{vertical-align:middle;cursor:help;-webkit-tap-highlight-color:transparent;outline:none;justify-content:center;align-items:center;margin-left:.25rem;display:inline-flex;position:relative}.joker-info-icon{color:#e8941a;background:#f5a62333;border-radius:50%;justify-content:center;align-items:center;width:1.4rem;height:1.4rem;font-size:.85rem;font-weight:700;line-height:1;display:inline-flex}.joker-info-tooltip{background:var(--ds-controls-bg);border:1px solid var(--ds-border-strong);color:#fff;text-transform:none;letter-spacing:normal;white-space:nowrap;z-index:100;border-radius:6px;padding:.5rem .75rem;font-size:.75rem;font-weight:400;position:absolute;top:calc(100% + .4rem);left:50%;transform:translate(-50%)}@media (width<=600px){.joker-info-tooltip{white-space:normal;width:max-content;max-width:200px;left:auto;right:0;transform:none}}.joker-icon{width:40px;height:40px;margin:0 auto;display:block}.matches-table td.joker-column,.matches-table th.joker-column,.predictions-table td.joker-column,.predictions-table th.joker-column{vertical-align:middle;text-align:center;padding-top:0;padding-bottom:0}.joker-toggle{cursor:pointer;opacity:.6;filter:brightness(.4);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:0 auto;padding:0;transition:all .2s;display:flex}.joker-toggle:hover:not(:disabled){opacity:1;transform:scale(1.15)}.joker-toggle.active{opacity:1;filter:none}.joker-toggle:disabled{opacity:.3;cursor:not-allowed}.joker-multiplier{color:#fff;vertical-align:middle;background:linear-gradient(135deg,#f5a623,#e8941a);border-radius:6px;margin-left:3px;padding:1px 4px;font-size:.65rem;font-weight:700;line-height:1.2;display:inline-block}.prediction-inputs{align-items:center;display:flex}.points-joker{color:#f5a623;font-weight:600}.points-summary-card .summary-item .points-joker{color:#f5a623}.round-card .bites-promo{margin:.75rem 0 .25rem}.champion-star{color:var(--ds-gold,#fbbf24);letter-spacing:.04em;vertical-align:middle;white-space:nowrap;cursor:default;text-shadow:0 0 6px #fbbf2459;margin-left:6px;font-size:.85em;line-height:1}.lbsheet{z-index:1000;background:var(--ds-bg);flex-direction:column;display:flex;position:fixed;left:0;right:0}.lbsheet-header{border-bottom:1px solid var(--ds-border);background:var(--ds-controls-bg);flex-direction:column;flex:none;gap:8px;padding:10px 12px;display:flex}.lbsheet-titlebar{justify-content:space-between;align-items:center;gap:8px;display:flex}.lbsheet-titlegroup{flex-direction:column;gap:2px;min-width:0;display:flex}.lbsheet-title{font-family:var(--ds-font);color:var(--ds-text);margin:0;font-size:1rem;font-weight:700}.lbsheet-scope{font-family:var(--ds-font);color:var(--ds-text-secondary);margin:0;font-size:.78rem}.lbsheet-scope:before{content:"- "}.lbsheet-input{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);width:100%;min-width:0;color:var(--ds-text);font-family:var(--ds-font);outline:none;padding:10px 12px;font-size:16px}.lbsheet-input::placeholder{color:var(--ds-text-secondary)}.lbsheet-input:focus-visible{outline:2px solid var(--ds-accent);outline-offset:2px}.lbsheet-close{width:40px;height:40px;color:var(--ds-text-secondary);cursor:pointer;background:0 0;border:none;flex:none;font-size:1.1rem}.lbsheet-close:hover{color:var(--ds-text)}.lbsheet-close:active{opacity:.7}.lbsheet-results{flex:auto;padding:6px 12px 24px;overflow-y:auto}.lbsheet-row{text-align:left;background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);width:100%;color:var(--ds-text);cursor:pointer;align-items:center;gap:12px;margin-bottom:6px;padding:10px 12px;display:flex}.lbsheet-row-pos{font-family:var(--ds-font-mono);color:var(--ds-text-secondary);min-width:40px;font-size:.9rem}.lbsheet-row-main{flex-direction:column;flex:1;min-width:0;display:flex}.lbsheet-row-name{font-size:.95rem;font-weight:600}.lbsheet-row-sub{color:var(--ds-text-secondary);font-size:.78rem}.lbsheet-row-pts{font-family:var(--ds-font-mono);font-size:.95rem}.lbsheet-empty{color:var(--ds-text-secondary);text-align:center;padding:24px 0}@media (prefers-reduced-motion:no-preference){.lbsheet{animation:.16s ease-out lbsheet-in}@keyframes lbsheet-in{0%{opacity:0}to{opacity:1}}}.bites-promo{background:var(--ds-surface-highlight);border:1px solid var(--ds-border-strong);border-left:3px solid var(--ds-accent);border-radius:var(--ds-radius);transition:background var(--ds-transition);margin:0 0 4px;position:relative}.bites-promo:hover{background:var(--ds-surface-hover)}.bites-promo-link{flex-direction:column;gap:6px;padding:12px 14px;text-decoration:none;display:flex}.bites-promo-link:hover{text-decoration:none}.bites-promo-viewport{display:grid;overflow:hidden}.bites-promo-slide{opacity:0;visibility:hidden;pointer-events:none;flex-direction:column;grid-area:1/1;gap:6px;transition:opacity .35s ease-out,transform .35s ease-out,visibility 0s linear .35s;display:flex;transform:translate(-24px)}.bites-promo-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .35s ease-out,transform .35s ease-out,visibility;transform:translate(0)}@media (prefers-reduced-motion:reduce){.bites-promo-slide{transition:opacity .35s ease-out,visibility 0s linear .35s;transform:none}.bites-promo-slide.is-active{transition:opacity .35s ease-out,visibility;transform:none}}.bites-promo-brand{color:var(--ds-text-secondary);font-family:Georgia,Times New Roman,serif;font-size:13px;font-weight:700}.bites-promo-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--ds-accent);font-size:10px;font-weight:700}.bites-promo-teaser{color:var(--ds-text);-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.bites-promo-cta{color:var(--ds-accent);font-size:12px;font-weight:600}.bites-promo-dots{display:flex;position:absolute;bottom:0;right:6px}.bites-promo-dot{cursor:pointer;background:0 0;border:none;place-items:center;width:36px;height:44px;padding:0;display:grid}.bites-promo-dot:before{content:"";background:var(--ds-border-strong);width:6px;height:6px;transition:background var(--ds-transition);border-radius:50%}.bites-promo-dot:hover:before{background:var(--ds-text-secondary)}.bites-promo-dot.is-active:before{background:var(--ds-accent)}@media (pointer:coarse),(width<=480px){.bites-promo-dot{pointer-events:none;width:12px;height:20px}}.lbv2{font-family:var(--ds-font);background:var(--ds-bg);color:var(--ds-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;padding:0 16px 80px}.lbv2-inner{max-width:none;position:relative}.lbv2-ticker{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);transition:background var(--ds-transition), border-color var(--ds-transition);margin-bottom:10px}.lbv2-ticker--expanded{border-color:var(--ds-border-strong)}.lbv2-ticker-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;min-height:40px;padding:10px 14px;display:flex}.lbv2-ticker-header:hover{background:var(--ds-surface-hover);border-radius:var(--ds-radius)}.lbv2-ticker--expanded .lbv2-ticker-header:hover{border-radius:var(--ds-radius) var(--ds-radius) 0 0}.lbv2-ticker-badge{text-align:center;letter-spacing:.08em;text-transform:uppercase;box-sizing:border-box;border-radius:4px;flex-shrink:0;width:58px;padding:3px 0;font-size:.65rem;font-weight:700;line-height:1}.lbv2-ticker-badge--live{background:var(--ds-danger);color:#fff;animation:2s ease-in-out infinite lbv2-pulse}.lbv2-ticker-badge--latest{background:var(--ds-text-secondary);color:var(--ds-bg)}@keyframes lbv2-pulse{0%,to{opacity:1}50%{opacity:.55}}.lbv2-ticker-headline{min-width:0;color:var(--ds-text);white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;gap:6px;font-size:.82rem;display:flex;overflow:hidden}.lbv2-ticker-toggle{color:var(--ds-text-muted);flex-shrink:0;align-items:center;gap:4px;padding-left:8px;font-size:.75rem;display:flex}.lbv2-ticker-count{font-family:var(--ds-font-num);font-size:.7rem}.lbv2-ticker-chevron{transition:transform .25s}.lbv2-ticker--expanded .lbv2-ticker-chevron{transform:rotate(180deg)}.lbv2-ticker-drawer{cursor:pointer;transition:grid-template-rows .3s;display:grid}.lbv2-ticker-drawer-inner{overflow:hidden}.lbv2-ticker--expanded .lbv2-ticker-drawer-inner{border-top:1px solid var(--ds-border)}.lbv2-ticker-row{color:var(--ds-text-secondary);align-items:center;gap:6px;padding:8px 14px 8px 82px;font-size:.8rem;display:flex}.lbv2-ticker-row:last-child{padding-bottom:10px}.lbv2-ticker-impact{flex-shrink:0;align-items:center;gap:4px;padding-left:6px;display:inline-flex}.ticker-impact-pos{font-size:.82rem;font-weight:600;font-family:var(--ds-font-num)}.ticker-impact-pts{font-size:.8rem;font-weight:600;font-family:var(--ds-font-num);border-radius:3px;padding:1px 6px}.ticker-impact--up{color:var(--ds-success)}.ticker-impact-pts.ticker-impact--up{background:rgba(var(--ds-success-rgb), .12)}.ticker-impact--down{color:var(--ds-danger)}.ticker-impact-pts.ticker-impact--down{background:rgba(var(--ds-danger-rgb), .12)}.lbv2-ticker-time{color:var(--ds-text-muted);flex-shrink:0;padding-left:8px;font-size:.75rem}.lbv2-ticker-headline>.lbv2-ticker-time,.lbv2-ticker-row>.lbv2-ticker-time{margin-left:auto}.lbv2-ticker-impact~.lbv2-ticker-time{margin-left:0}.lbv2-ticker .activity-team{font-weight:600}.lbv2-ticker .activity-flag{vertical-align:middle;width:14px;height:10px;margin:0 1px}.lbv2-ticker .activity-score{font-weight:700;font-family:var(--ds-font-num)}.lbv2-ticker .activity-blink{animation:none}.lbv2-controls{z-index:20;background:var(--ds-controls-bg);border:1px solid var(--ds-border);border-radius:var(--ds-radius);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:2px;padding:10px 14px;display:flex;position:sticky;top:0}@media (width<=480px){.lbv2-controls{top:var(--task-banner-offset,0px)}}.lbv2-pills{background:#ffffff0d;border-radius:8px;flex-shrink:0;gap:2px;padding:3px;display:inline-flex}.lbv2-pill{font-size:.78rem;font-weight:600;font-family:var(--ds-font);color:var(--ds-text-secondary);cursor:pointer;transition:all var(--ds-transition);white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:6px 14px;line-height:1}.lbv2-pill:hover{color:var(--ds-text);background:#ffffff0d}.lbv2-pill--active{background:var(--ds-accent);color:#fff;box-shadow:0 2px 8px #3b82f64d}.lbv2-pill--active:hover{background:var(--ds-accent-hover);color:#fff}.lbv2-controls-right{align-items:center;gap:10px;min-width:0;margin-left:auto;display:flex}.lbv2-league-group{align-items:center;gap:6px;display:flex}.lbv2-league-select{appearance:none;border:1px solid var(--ds-border-strong);color:var(--ds-text);font-family:var(--ds-font);cursor:pointer;transition:border-color var(--ds-transition);background:#ffffff0d url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2364748b' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E") right 10px center no-repeat;border-radius:8px;max-width:180px;padding:7px 32px 7px 12px;font-size:.78rem;font-weight:500}.lbv2-league-select:focus{border-color:var(--ds-accent);outline:none}.lbv2-league-select option{background:var(--ds-controls-bg);color:var(--ds-text)}.lbv2-fav-btn{cursor:pointer;color:var(--ds-text-secondary);transition:color var(--ds-transition), transform var(--ds-transition);background:0 0;border:none;padding:4px;font-size:1.15rem;line-height:1}.lbv2-fav-btn:hover{color:var(--ds-gold);transform:scale(1.15)}.lbv2-fav-btn--active{color:var(--ds-gold)}.lbv2-search-toggle{color:var(--ds-text-secondary);cursor:pointer;transition:color var(--ds-transition);background:0 0;border:none;border-radius:6px;align-items:center;padding:5px;display:inline-flex}.lbv2-search-toggle:hover{color:var(--ds-text)}.lbv2-search-group{border:1px solid var(--ds-border-strong);background:#ffffff0d;border-radius:8px;align-items:center;gap:4px;min-width:0;padding:4px 8px;display:flex}.lbv2-search-group:focus-within{border-color:var(--ds-accent)}.lbv2-search-group--no-match,.lbv2-search-group--no-match:focus-within{border-color:var(--ds-warning)}.lbv2-search-input{color:var(--ds-text);font-family:var(--ds-font);background:0 0;border:none;outline:none;flex:1;width:110px;min-width:0;font-size:.78rem}.lbv2-search-input::placeholder{color:var(--ds-text-secondary)}@media (pointer:coarse){.lbv2-search-input{font-size:16px}}.lbv2-search-count{font-family:var(--ds-font-num);color:var(--ds-text-secondary);white-space:nowrap;font-size:.72rem}.lbv2-search-nav,.lbv2-search-close{color:var(--ds-text-secondary);cursor:pointer;transition:color var(--ds-transition);background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:.7rem;line-height:1}.lbv2-search-nav:hover:not(:disabled),.lbv2-search-close:hover{color:var(--ds-text)}.lbv2-search-nav:disabled{opacity:.4;cursor:default}.lbv2-search-hit>.lbv2-card{border-color:var(--ds-accent);box-shadow:0 0 0 1px var(--ds-accent), 0 0 16px color-mix(in srgb, var(--ds-accent) 25%, transparent)}.lbv2-search-hit{scroll-margin-top:calc(var(--task-banner-offset,0px) + 72px);scroll-margin-bottom:24px}.lbv2-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lbv2-colheaders{display:none}@media (width>=701px){.lbv2-colheaders{z-index:18;background:var(--ds-bg);border-bottom:1px solid var(--ds-border);align-items:center;gap:0;margin-bottom:4px;padding:8px 16px 6px;display:flex;position:sticky;top:56px}.lbv2-colheader{text-transform:uppercase;letter-spacing:.08em;color:var(--ds-text-muted);font-size:.66rem;font-weight:600}.lbv2-colheader--pos{text-align:center;width:52px}.lbv2-colheader--name{flex:1;padding-left:4px}.lbv2-colheader--stat{text-align:center;width:60px}.lbv2-colheader--total{text-align:center;width:68px;color:var(--ds-text-secondary);font-weight:700}}.lbv2-card{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);cursor:pointer;transition:transform var(--ds-transition), box-shadow var(--ds-transition), background var(--ds-transition);margin-bottom:4px;position:relative;overflow:hidden}.lbv2-card:before{content:"";border-radius:var(--ds-radius) 0 0 var(--ds-radius);width:3px;transition:background var(--ds-transition), box-shadow var(--ds-transition);background:0 0;position:absolute;top:0;bottom:0;left:0}@media (hover:hover){.lbv2-card:hover{background:var(--ds-surface-hover);transform:translateY(-1px);box-shadow:0 4px 20px #0000004d}}.lbv2-card--gold:before{background:var(--ds-gold);box-shadow:0 0 12px #fbbf2466}.lbv2-card--silver:before{background:var(--ds-silver);box-shadow:0 0 10px #94a3b84d}.lbv2-card--bronze:before{background:var(--ds-bronze);box-shadow:0 0 12px #d9770659}.lbv2-card--you{background:var(--ds-surface-highlight);border-color:#3b82f633}.lbv2-card--you:before{background:var(--ds-accent);box-shadow:0 0 14px #3b82f666}.lbv2-card-row{align-items:center;gap:0;min-height:56px;padding:12px 16px;display:flex}.lbv2-card-pos{flex-direction:column;flex-shrink:0;align-items:center;gap:2px;width:52px;display:flex}.lbv2-rank{font-size:1rem;font-weight:700;font-family:var(--ds-font-num);color:var(--ds-text);line-height:1}.lbv2-card--gold .lbv2-rank{color:var(--ds-gold)}.lbv2-card--silver .lbv2-rank{color:var(--ds-silver)}.lbv2-card--bronze .lbv2-rank{color:var(--ds-bronze)}.lbv2-trend{font-size:.72rem;font-weight:400;font-family:var(--ds-font-num);line-height:1}.lbv2-trend--up{color:var(--ds-success)}.lbv2-trend--down{color:var(--ds-danger)}.lbv2-card-info{flex:1;min-width:0;padding:0 8px}.lbv2-card-name{color:var(--ds-text);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:600;line-height:1.3;overflow:hidden}.lbv2-card-name a{color:inherit;text-decoration:none}.lbv2-card-name a:hover{text-underline-offset:2px;text-decoration:underline}.lbv2-card-subtitle{color:var(--ds-text-secondary);align-items:baseline;gap:5px;margin-top:1px;font-size:.72rem;line-height:1.3;display:flex}.lbv2-card-subtitle img{object-fit:contain;border-radius:2px;flex-shrink:0;width:12px;height:8px}.lbv2-card-flag{object-fit:contain;vertical-align:-1px;border-radius:2px;width:18px;height:12px;margin-right:6px}.lbv2-team-members{color:var(--ds-text-muted);font-size:.7rem}.lbv2-card-stats{display:none}@media (width>=701px){.lbv2-card-stats{align-items:center;gap:0;display:flex}.lbv2-card-stat{text-align:center;width:60px;font-size:.8rem;font-family:var(--ds-font-num);color:var(--ds-text-secondary);font-weight:400}}.lbv2-card-total{text-align:center;width:68px;font-size:1rem;font-weight:700;font-family:var(--ds-font-num);color:var(--ds-text);flex-shrink:0}.lbv2-ready-badge{border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:.76rem;font-weight:700;line-height:1;display:inline-flex}.lbv2-ready-badge--yes{color:var(--ds-success);background:#22c55e1f}.lbv2-ready-badge--no{color:var(--ds-warning);background:#f59e0b1f}.lbv2-card-expand{max-height:0;transition:max-height .25s;overflow:hidden}.lbv2-card-expand--open{max-height:200px}.lbv2-card-expand-inner{border-top:1px solid var(--ds-border);flex-wrap:wrap;gap:6px 12px;margin-top:0;padding:10px 16px 12px 68px;display:flex}.lbv2-expand-item{align-items:baseline;gap:4px;display:flex}.lbv2-expand-label{text-transform:uppercase;letter-spacing:.05em;color:var(--ds-text-muted);font-size:.68rem;font-weight:600}.lbv2-expand-value{font-size:.82rem;font-family:var(--ds-font-num);color:var(--ds-text);font-weight:500}.lbv2-expand-chevron{display:none}@media (width<=700px){.lbv2-expand-chevron{width:20px;color:var(--ds-text-muted);flex-shrink:0;justify-content:center;align-items:center;font-size:.65rem;transition:transform .2s;display:flex}.lbv2-expand-chevron--open{transform:rotate(180deg)}}.lbv2-pinned{z-index:50;pointer-events:none;padding:0 16px 12px;position:fixed;bottom:0;left:0;right:0}@media (width<=768px){.lbv2-pinned{bottom:var(--tbn-bar-height,57px)}}.lbv2-pinned-inner{max-width:var(--ds-max-width);pointer-events:auto;margin:0 auto}.lbv2-pinned .lbv2-card{border-color:#3b82f64d;box-shadow:0 -4px 24px #00000080,0 0 0 1px #3b82f633}.lbv2-pinned-label{text-transform:uppercase;letter-spacing:.1em;color:var(--ds-accent);align-items:center;gap:6px;padding:6px 16px 0;font-size:.65rem;font-weight:600;display:flex}.lbv2-legend-trigger{color:var(--ds-text-muted);cursor:pointer;font-size:.72rem;font-family:var(--ds-font);transition:color var(--ds-transition);background:0 0;border:none;align-items:center;gap:5px;padding:8px 0;display:inline-flex}.lbv2-legend-trigger:hover{color:var(--ds-text-secondary)}.lbv2-legend-icon{border:1px solid var(--ds-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:.62rem;font-weight:700;line-height:1;display:inline-flex}.lbv2-legend-panel{max-height:0;transition:max-height .3s;overflow:hidden}.lbv2-legend-panel--open{max-height:300px}.lbv2-legend-content{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);margin-bottom:12px;padding:12px 16px}.lbv2-legend-row{color:var(--ds-text-secondary);align-items:baseline;gap:8px;padding:4px 0;font-size:.76rem;display:flex}.lbv2-legend-abbr{font-weight:700;font-family:var(--ds-font-num);color:var(--ds-text);min-width:48px}.lbv2-legend-row--team-note{border-top:1px solid var(--ds-border);margin-top:4px;padding-top:8px;font-style:italic}.lbv2-gap{justify-content:center;align-items:center;padding:8px 0;display:flex}.lbv2-gap-btn{font-family:var(--ds-font);color:var(--ds-text-muted);border:1px dashed var(--ds-border-strong);cursor:pointer;transition:all var(--ds-transition);background:0 0;border-radius:20px;width:100%;max-width:300px;padding:6px 20px;font-size:.76rem;font-weight:500}.lbv2-gap-btn:hover{color:var(--ds-text);border-color:var(--ds-text-secondary);background:#ffffff08}.lbv2-loading{color:var(--ds-text-secondary);justify-content:center;align-items:center;padding:60px 20px;font-size:.88rem;display:flex}.lbv2-loading-spinner{border:2px solid var(--ds-border-strong);border-top-color:var(--ds-accent);border-radius:50%;width:20px;height:20px;margin-right:10px;animation:.8s linear infinite lbv2-spin}@keyframes lbv2-spin{to{transform:rotate(360deg)}}.lbv2-empty{text-align:center;color:var(--ds-text-secondary);padding:48px 20px}.lbv2-error{text-align:center;color:var(--ds-text-secondary);padding:32px 20px}.lbv2-error-btn{font-family:var(--ds-font);color:var(--ds-text);border:1px solid var(--ds-border-strong);cursor:pointer;transition:all var(--ds-transition);background:#ffffff0f;border-radius:8px;margin-top:12px;padding:8px 20px;font-size:.82rem;font-weight:500}.lbv2-error-btn:hover{background:#ffffff1a}@media (width<=700px){.lbv2{padding:0 8px 80px}.lbv2-card-stats{display:none!important}.lbv2-card-row{min-height:50px;padding:10px 12px}.lbv2-card-pos{width:40px}.lbv2-rank{font-size:.9rem}.lbv2-card-name{font-size:.84rem}.lbv2-card-total{width:54px;font-size:.9rem}.lbv2-card-expand-inner{padding-left:52px}.lbv2-controls{gap:8px;padding:8px 10px}.lbv2-pill{padding:5px 11px;font-size:.74rem}.lbv2-league-select{max-width:140px;padding:6px 28px 6px 10px;font-size:.74rem}}@media (width<=480px){.lbv2-controls{grid-template-columns:1fr auto;gap:6px;display:grid}.lbv2-controls-right{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;margin-left:0}.lbv2-league-group{flex:1;justify-content:space-between}.lbv2-league-select{flex:1;max-width:none}.lbv2-search-group--open{flex:100%}}.lbv2-readiness-detail{flex-wrap:wrap;gap:6px 14px;display:flex}.lbv2-readiness-item{align-items:center;gap:4px;font-size:.74rem;display:flex}.lbv2-readiness-label{color:var(--ds-text-muted);font-weight:500}.lbv2-readiness-value{font-family:var(--ds-font-num);font-weight:600}.lbv2-readiness-value--complete{color:var(--ds-success)}.lbv2-readiness-value--incomplete{color:var(--ds-warning)}.lbv2 ::-webkit-scrollbar{width:6px}.lbv2 ::-webkit-scrollbar-track{background:0 0}.lbv2 ::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.lbv2 ::-webkit-scrollbar-thumb:hover{background:#fff3}.lbv2-welcome{background-color:rgba(var(--ds-success-rgb), .08);border:1px solid var(--ds-success);border-radius:var(--ds-radius);align-items:flex-start;gap:.75rem;margin:1rem 0;padding:.875rem 1rem;display:flex}.lbv2-welcome-text{color:var(--ds-text);font-size:.9rem;line-height:1.5}.lbv2-welcome-text strong{color:var(--ds-success)}.lbv2-welcome-dismiss{color:var(--ds-text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;margin-left:auto;padding:0 .25rem;font-size:1.25rem;line-height:1}.lbv2-welcome-dismiss:hover{color:var(--ds-text)}.mmc{background-color:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);color:var(--ds-text);padding:.625rem .75rem;text-decoration:none;display:block;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000004d}.mmc-stretch{z-index:1;border-radius:inherit;-webkit-tap-highlight-color:transparent;position:absolute;inset:0}.mmc-tappable:hover{border-color:var(--ds-border-strong)}.mmc.mmc-net-pos{background-color:rgba(var(--ds-success-rgb), var(--mmc-net-alpha,.15));border-left:3px solid var(--ds-success)}.mmc.mmc-net-zero{background-color:rgba(var(--ds-danger-rgb), .15);border-left:3px solid var(--ds-danger)}.mmc-net-pos .mmc-ghost{color:rgba(var(--ds-success-rgb), .26)}.mmc-net-zero .mmc-ghost{color:rgba(var(--ds-danger-rgb), .15)}.mmc-tappable{padding-right:1.375rem}.mmc-chevron{color:var(--ds-text-muted);font-size:1.1rem;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.mmc-rows{position:relative}.mmc-ghost{font-family:var(--ds-font-num);pointer-events:none;font-size:3rem;font-weight:800;line-height:1;position:absolute;top:50%;right:83px;transform:translateY(-50%)}.mmc-head{align-items:center;gap:.5rem;margin-bottom:.375rem;display:flex}.mmc-datetime{min-width:0;color:var(--ds-text-muted);flex:1;align-items:center;gap:.375rem;font-size:.72rem;display:flex}.mmc-lock{opacity:.7;font-size:.7rem}.mmc-col-labels{gap:.625rem;display:flex}.mmc-col-label{text-align:center;width:26px;color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.6rem;font-weight:500}.mmc-row{align-items:center;gap:.625rem;padding:.25rem 0;display:flex}.mmc-flag{border-radius:3px;flex-shrink:0;box-shadow:0 1px 3px #0006}.mmc-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.98rem;font-weight:600;overflow:hidden}.mmc-num{text-align:center;width:26px;font-family:var(--ds-font-num);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:1.05rem;font-weight:700}.mmc-num-mine{color:var(--ds-text-secondary);font-size:.9rem;font-weight:600}.mmc-num-empty{color:var(--ds-text-muted);font-weight:400}.mmc .score-input{flex:none;width:46px;height:42px;padding:.25rem;font-size:1.1rem}.mmc-ghost-save{color:rgba(var(--ds-success-rgb), .25);top:50%;right:105px;transform:translateY(-42%)}.mmc-joker-chip{border:1px solid var(--ds-border);opacity:.45;cursor:pointer;background:0 0;border-radius:12px;align-items:center;gap:.25rem;padding:.125rem .5rem;display:inline-flex}.mmc-joker-chip:disabled{cursor:default}.mmc-joker-chip.active{border-color:var(--ds-warning);background:rgba(var(--ds-warning-rgb), .12);opacity:1}.mmc-joker-icon{width:16px;height:22px;display:block}.mmc-joker-x2{color:var(--ds-text-secondary);font-size:.7rem;font-weight:700}.mmc-joker-chip.active .mmc-joker-x2{color:var(--ds-warning)}.mmc-joker-played{align-items:center;gap:.25rem;display:inline-flex}.mmc-joker-played .mmc-joker-icon{width:12px;height:17px}.mmc-comp{border-top:1px solid var(--ds-border);color:var(--ds-text-secondary);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:.15rem .45rem;margin-top:.375rem;padding-top:.375rem;font-size:.74rem;font-weight:600;display:flex}.mmc-comp-sep{color:var(--ds-text-muted);font-weight:400}.mmc-comp-goal{color:rgba(var(--ds-gold-rgb), .72);font-weight:500}.mmc-comp-goal b{color:var(--ds-gold);font-weight:800}.latest-result-bar{display:none}@media (width<=1100px){.latest-result-bar{box-sizing:border-box;z-index:15;border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);background:var(--ds-surface);width:100%;height:48px;color:var(--ds-text);font-family:var(--ds-font);text-align:left;cursor:pointer;transition:opacity var(--ds-transition,.2s ease);align-items:center;gap:.5rem;margin:1rem 0;padding:0 .75rem;font-size:.85rem;display:flex;position:sticky;top:0}.rounds-header-row:has(+.latest-result-bar){margin-bottom:0}.latest-result-bar:before{content:"";background:var(--ds-bg);z-index:-1;height:.5rem;position:absolute;top:-.5rem;left:0;right:0}.latest-result-bar--win{background:linear-gradient(rgba(var(--ds-success-rgb), .1), rgba(var(--ds-success-rgb), .1)), var(--ds-surface);border-color:rgba(var(--ds-success-rgb), .25)}.latest-result-bar--loss{background:linear-gradient(rgba(var(--ds-danger-rgb), .1), rgba(var(--ds-danger-rgb), .1)), var(--ds-surface);border-color:rgba(var(--ds-danger-rgb), .25)}.latest-result-bar--loss .lrb-points{color:var(--ds-danger);border-color:rgba(var(--ds-danger-rgb), .5)}.latest-result-bar--hidden{opacity:0;pointer-events:none}.lrb-icon{font-size:.95rem;line-height:1}.lrb-label{color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.62rem}.lrb-score{font-family:var(--ds-font-num);font-weight:600}.lrb-points{font-family:var(--ds-font-num);color:var(--ds-success);border:1px solid rgba(var(--ds-success-rgb), .5);border-radius:var(--ds-radius-sm);margin-left:auto;padding:0 .35rem;font-size:.72rem}.lrb-chev{color:var(--ds-text-muted);margin-left:auto}.lrb-points+.lrb-chev{margin-left:.35rem}}@media (width<=480px){.tournament-detail-container:has(.mobile-task-banner .checklist-chip) .latest-result-bar{top:calc(.5rem + 48px)}}.ds-toggle{justify-content:space-between;align-items:center;gap:1rem;display:flex}.ds-toggle__text{cursor:pointer;flex-direction:column;gap:.15rem;min-width:0;display:flex}.ds-toggle--disabled .ds-toggle__text{cursor:not-allowed}.ds-toggle__label{color:var(--ds-text);font-size:.95rem}.ds-toggle__sublabel{color:var(--ds-text-secondary);font-size:.8rem}.ds-toggle__control{flex-shrink:0;position:relative}.ds-toggle__input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.ds-toggle__input:disabled{cursor:not-allowed}.ds-toggle__track{background-color:var(--ds-surface-hover);border:1px solid var(--ds-border);width:40px;height:22px;transition:background-color var(--ds-transition), border-color var(--ds-transition);pointer-events:none;border-radius:11px;display:block}.ds-toggle__track:after{content:"";background-color:var(--ds-text-secondary);width:16px;height:16px;transition:transform var(--ds-transition), background-color var(--ds-transition);border-radius:50%;position:absolute;top:3px;left:3px}.ds-toggle__input:checked+.ds-toggle__track{background-color:var(--ds-accent);border-color:var(--ds-accent)}.ds-toggle__input:checked+.ds-toggle__track:after{background-color:#fff;transform:translate(18px)}.ds-toggle__input:focus-visible+.ds-toggle__track{box-shadow:0 0 0 3px rgba(var(--ds-accent-rgb), .35)}.ds-toggle--disabled{opacity:.5}.tsc-card{border:1px solid var(--ds-border);border-radius:var(--ds-radius);background-color:var(--ds-surface)}.tsc-header{border-bottom:1px solid var(--ds-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1.25rem;display:flex}.tsc-title{align-items:center;gap:.75rem;min-width:0;display:flex}.tsc-name{color:var(--ds-accent);font-weight:600;text-decoration:none}.tsc-name:hover{text-decoration:underline}.tsc-card .status-badge.open{background-color:rgba(var(--ds-success-rgb), .08);color:var(--ds-success)}.tsc-team{color:var(--ds-text-secondary);background-color:var(--ds-surface-hover);border-radius:.25rem;padding:.2rem .5rem;font-size:.85rem}.tsc-team strong{color:var(--ds-accent)}.tsc-toggles{flex-direction:column;display:flex}.tsc-toggles>.ds-toggle{padding:.75rem 1.25rem}.tsc-toggles>.ds-toggle+.ds-toggle{border-top:1px solid var(--ds-border)}.profile-container{padding:1rem 0}.profile-header{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);margin-bottom:2rem;padding:2rem}.profile-header h1{color:var(--ds-text);margin-bottom:1rem}.user-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 2.5rem;display:grid}.user-info-grid .info-item{flex-direction:column;gap:.25rem;display:flex}.user-info-grid .info-label{text-transform:uppercase;letter-spacing:.05em;color:var(--ds-text-muted);font-size:.75rem}.user-info-grid .info-value{color:var(--ds-text);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.nickname-display{align-items:center;gap:.5rem;margin-left:.25rem;display:inline-flex}.nickname-value{margin-right:.25rem}.no-nickname{color:var(--ds-text-muted);font-style:italic}.nickname-edit{align-items:center;gap:.5rem;margin-left:.25rem;display:inline-flex}.nickname-input{border:1px solid var(--ds-border);background-color:var(--ds-surface);width:150px;color:var(--ds-text);border-radius:.25rem;padding:.25rem .5rem;font-size:.9rem}.nickname-input:focus{border-color:var(--ds-accent);box-shadow:0 0 0 2px rgba(var(--ds-accent-rgb), .2);outline:none}.btn-icon{cursor:pointer;width:28px;height:28px;transition:background-color var(--ds-transition);border:none;border-radius:.25rem;justify-content:center;align-items:center;padding:0;font-size:1rem;display:inline-flex}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-edit{color:var(--ds-text-secondary);background:0 0}.btn-edit:hover:not(:disabled){background-color:var(--ds-surface-hover);color:var(--ds-accent)}.btn-save{background-color:var(--ds-success);color:#fff}.btn-save:hover:not(:disabled){filter:brightness(1.1)}.btn-cancel{background-color:var(--ds-surface-hover);color:var(--ds-text-secondary)}.btn-cancel:hover:not(:disabled){background-color:var(--ds-surface-highlight)}.nickname-locked{color:var(--ds-text-muted);cursor:help;align-items:center;font-size:.9rem;display:inline-flex}.profile-tabs{border-bottom:1px solid var(--ds-border);margin-bottom:1.5rem;display:flex}.tab-btn{cursor:pointer;color:var(--ds-text-secondary);transition:all var(--ds-transition);background:0 0;border:none;border-bottom:3px solid #0000;padding:.75rem 1.5rem;font-size:1.1rem}.tab-btn.active{color:var(--ds-accent);border-bottom-color:var(--ds-accent)}.profile-container .tab-content{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);padding:2rem}.predictions-container h2,.leaderboards-container h2{color:var(--ds-text);margin-bottom:1.5rem}.no-data{text-align:center;color:var(--ds-text-secondary);padding:2rem 0}.predictions-list{grid-template-columns:1fr;gap:1rem;display:grid}.prediction-card{border:1px solid var(--ds-border);border-radius:var(--ds-radius);padding:1.5rem;position:relative}.prediction-status{position:absolute;top:1rem;right:1rem}.status-badge{border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem}.status-badge.active{background-color:rgba(var(--ds-success-rgb), .08);color:var(--ds-success)}.status-badge.inactive{background-color:var(--ds-surface-hover);color:var(--ds-text-muted)}.status-badge.unverified{background-color:rgba(var(--ds-danger-rgb), .08);color:var(--ds-danger)}.status-badge.scheduled{background-color:rgba(var(--ds-accent-rgb), .08);color:var(--ds-accent)}.status-badge.in_progress{background-color:rgba(var(--ds-warning-rgb), .08);color:var(--ds-warning)}.status-badge.completed{background-color:rgba(var(--ds-success-rgb), .08);color:var(--ds-success)}.prediction-details{margin-bottom:1rem}.tournament-name{color:var(--ds-text-secondary);margin-bottom:.5rem;font-weight:500}.match-teams{align-items:center;margin-bottom:.5rem;display:flex}.match-teams .team{font-size:1.1rem;font-weight:600}.match-teams .vs{color:var(--ds-text-muted);margin:0 .5rem}.match-date{color:var(--ds-text-secondary);margin-bottom:1rem;font-size:.9rem}.prediction-score,.actual-score,.points-earned{margin-bottom:.5rem}.prediction-score .score,.actual-score .score{margin-left:.5rem;font-weight:600}.points-earned .points{color:var(--ds-success);margin-left:.5rem;font-weight:600}.tournaments-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;display:grid}.tournament-card{border:1px solid var(--ds-border);border-radius:var(--ds-radius);padding:1.5rem}.tournament-card h3{color:var(--ds-text);margin-bottom:1rem}.tournament-stats{justify-content:space-between;margin-bottom:1.5rem;display:flex}.stat{text-align:center}.stat-label{color:var(--ds-text-secondary);margin-bottom:.25rem;font-size:.9rem;display:block}.stat-value{color:var(--ds-text);font-size:1.5rem;font-weight:600}.profile-actions{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);padding:2rem}.profile-actions h2{color:var(--ds-text);margin-bottom:1rem}.tournaments-section{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);margin-top:2rem;padding:2rem}.tournaments-section h2{color:var(--ds-text);margin-bottom:.5rem}.section-description{color:var(--ds-text-secondary);margin-bottom:1.5rem;font-size:.9rem}.loading-text,.empty-text{color:var(--ds-text-muted);font-style:italic}.toggle-hint{color:var(--ds-warning);background-color:rgba(var(--ds-warning-rgb), .1);border-radius:.25rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.tournament-list{flex-direction:column;gap:.75rem;display:flex}.past-tournaments{margin-top:1.5rem}.past-tournaments-toggle{border:1px solid var(--ds-border);border-radius:var(--ds-radius);width:100%;color:var(--ds-text-secondary);cursor:pointer;transition:background-color var(--ds-transition), color var(--ds-transition);background:0 0;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:1rem;display:flex}.past-tournaments-toggle:hover{background-color:var(--ds-surface-hover);color:var(--ds-text)}.past-chevron{transition:transform var(--ds-transition);display:inline-block}.past-chevron--open{transform:rotate(90deg)}.past-tournaments .tournament-list{margin-top:.75rem}@media (width<=768px){.user-info-grid{grid-template-columns:1fr}.profile-tabs{flex-wrap:wrap}.tab-btn{flex:1;min-width:150px}}.out-badge{font-family:var(--ds-font-num);letter-spacing:.06em;border-radius:var(--ds-radius-sm,4px);color:var(--ds-danger,#ff6b6b);border:1px solid var(--ds-danger,#ff6b6b);background:rgba(var(--ds-danger-rgb,239, 68, 68), .12);vertical-align:middle;padding:0 .35em;font-size:.62rem;font-weight:700;line-height:1.4;display:inline-block}.is-eliminated .compact-team-name,.is-eliminated .compact-player-name{opacity:.6}.striker-selection-container{max-width:1200px;margin:0 auto;padding:0}.striker-header-row{background-color:var(--ds-surface);border-radius:var(--ds-radius);align-items:stretch;gap:2rem;margin-bottom:1.5rem;padding:1.5rem;display:flex;box-shadow:0 2px 4px #0000004d}.striker-header-info{flex-direction:column;flex:0 0 280px;justify-content:center;display:flex}.striker-header-info h1{color:var(--ds-text);margin-bottom:.5rem;font-size:1.5rem}.striker-header-info .selection-info{color:var(--ds-text-secondary);margin-bottom:0;font-size:.9rem;line-height:1.4}.striker-header-info .saving-indicator{color:var(--ds-text-secondary);margin-top:.5rem;font-size:.85rem;font-style:italic}.selected-strikers-row{flex:1;gap:1rem;display:flex}.striker-slot-compact{border:2px solid var(--ds-border-strong);background-color:#ffffff08;border-radius:.5rem;flex-direction:column;flex:1;align-items:center;min-height:70px;padding:.75rem .5rem;transition:all .2s;display:flex;position:relative}.striker-slot-compact.filled{border-color:var(--ds-accent);background-color:var(--ds-surface)}.striker-slot-compact .slot-label{color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.15rem;font-size:.65rem;font-weight:700}.striker-slot-compact.gold-position .slot-label{color:gold}.striker-slot-compact.silver-position .slot-label{color:silver}.striker-slot-compact.bronze-position .slot-label{color:#cd7f32}.selected-player-compact{text-align:center;flex-direction:column;align-items:center;width:100%;display:flex}.selected-player-compact .player-avatar{margin-bottom:.25rem;display:none;position:relative}.selected-player-compact .player-photo{object-fit:cover;border:1px solid var(--ds-border-strong);background-color:var(--ds-surface);border-radius:50%;width:32px;height:32px}.selected-player-compact .player-photo-placeholder{width:32px;height:32px;color:var(--ds-text-secondary);box-sizing:border-box;background-color:#ffffff1a;border-radius:50%;padding:6px}.selected-player-compact .player-team-flag{object-fit:cover;border:1px solid var(--ds-surface);border-radius:2px;width:16px;height:11px;position:absolute;bottom:-2px;right:-4px;box-shadow:0 1px 2px #00000026}.selected-player-compact .player-info{width:100%}.selected-player-compact .player-name{color:var(--ds-text);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:700;line-height:1.2;overflow:hidden}.selected-player-compact .team-name{color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.3px;margin-top:.15rem;font-size:.65rem}.selected-player-compact .remove-btn{width:20px;height:20px;color:var(--ds-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .2s,background-color .2s;display:flex;position:absolute;top:6px;right:6px}.selected-player-compact .remove-btn:hover{color:var(--ds-danger);background-color:#ffffff14}.empty-slot-compact{color:var(--ds-text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.25rem;font-size:.7rem;display:flex}.empty-slot-compact .empty-slot-icon{opacity:.4;width:24px;height:24px;display:none}.available-players-section.full-width{background-color:var(--ds-surface);border-radius:var(--ds-radius);padding:1.5rem;box-shadow:0 2px 4px #0000004d}.available-players-header{align-items:flex-start;gap:1.5rem;margin-bottom:.75rem;display:flex}.available-players-header h3{color:var(--ds-text);white-space:nowrap;flex-shrink:0;margin:0;line-height:38px}.team-filter,.filter-controls .search-input{box-sizing:border-box;height:38px}.team-filter{border:1px solid var(--ds-border-strong);background-color:var(--ds-surface);color:var(--ds-text);cursor:pointer;border-radius:.25rem;min-width:150px;padding:.5rem .75rem;font-size:.9rem}.team-filter:focus{border-color:var(--ds-accent);outline:none}.search-input{border:1px solid var(--ds-border-strong);background-color:var(--ds-surface);width:200px;color:var(--ds-text);border-radius:.25rem;padding:.5rem 1rem;font-size:.9rem}.search-input:focus{border-color:var(--ds-accent);outline:none}.players-table-wrapper{border:1px solid var(--ds-border-strong);border-radius:.5rem;max-height:400px;overflow-y:auto}.players-table{border-collapse:collapse;width:100%}.players-table thead{background-color:var(--ds-controls-bg);z-index:1;position:sticky;top:0}.players-table th{text-align:left;color:var(--ds-text-secondary);border-bottom:2px solid var(--ds-border-strong);-webkit-user-select:none;user-select:none;padding:.75rem 1rem;font-weight:600}.players-table th.sortable{cursor:pointer;transition:background-color .2s}.players-table th.sortable:hover{background-color:var(--ds-surface-hover)}.players-table th:last-child{text-align:center;width:100px}.players-table td{border-bottom:1px solid var(--ds-border);vertical-align:middle;padding:.5rem 1rem}.players-table tbody tr:hover{background-color:var(--ds-surface-hover)}.players-table tbody tr.selected{background-color:rgba(var(--ds-accent-rgb), .1)}.player-cell .player-name{color:var(--ds-text);font-weight:600}.action-cell{text-align:center}.select-btn{background-color:var(--ds-accent);color:#fff;cursor:pointer;border:none;border-radius:.25rem;padding:.35rem .75rem;font-size:.8rem;font-weight:500;transition:background-color .2s}.select-btn:hover:not(:disabled){background-color:var(--ds-accent-hover)}.select-btn:disabled{background-color:var(--ds-text-muted);cursor:not-allowed}.players-table .selected-badge{background-color:var(--ds-accent);color:#fff;border-radius:.25rem;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.no-players{text-align:center;color:var(--ds-text-secondary);padding:2rem;font-style:italic}.striker-stats-section{background-color:var(--ds-surface);border-radius:var(--ds-radius);padding:1.5rem;box-shadow:0 2px 4px #0000004d}.striker-stats-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.striker-stats-header h3{color:var(--ds-text);margin:0}.striker-stats-table{border-collapse:collapse;width:100%;font-size:.9rem}.striker-stats-table thead{background-color:var(--ds-controls-bg)}.striker-stats-table th{text-align:left;color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--ds-border-strong);-webkit-user-select:none;user-select:none;padding:.75rem 1rem;font-size:.875rem;font-weight:600}.striker-stats-table th.sortable{cursor:pointer;transition:background-color .2s}.striker-stats-table th.sortable:hover{background-color:var(--ds-surface-hover)}.striker-stats-table td{border-bottom:1px solid var(--ds-border);vertical-align:middle;padding:.5rem 1rem}.striker-stats-table tbody tr:hover{background-color:var(--ds-surface-hover)}.striker-stats-table tbody tr.user-selection{background-color:rgba(var(--ds-accent-rgb), .1)}.striker-stats-table tbody tr.user-selection:hover{background-color:rgba(var(--ds-accent-rgb), .15)}.striker-stats-table th:first-child,.striker-stats-table .rank-cell{text-align:center;white-space:nowrap;width:50px}.striker-stats-table .rank-cell{color:var(--ds-text-secondary);font-weight:500}.striker-stats-table .player-info-cell{align-items:center;gap:.5rem;display:flex}.striker-stats-table .player-photo-sm{object-fit:cover;border-radius:50%;flex-shrink:0;width:28px;height:28px}.striker-stats-table .player-name{color:var(--ds-text);font-weight:600}.your-pick-badge{background-color:var(--ds-accent);color:#fff;border-radius:.25rem;margin-left:.5rem;padding:.15rem .4rem;font-size:.7rem;font-weight:600}.striker-selection-container .tier-one-chip{border:1px solid rgba(var(--ds-gold-rgb), .6);color:var(--ds-gold);letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;white-space:nowrap;border-radius:.25rem;margin-left:.4rem;padding:.1rem .4rem;font-size:.65rem;font-weight:700;line-height:1.3;display:inline-block}.striker-selection-container .tier-one-grandfather-note{background:rgba(var(--ds-warning-rgb), .12);border:1px solid rgba(var(--ds-warning-rgb), .4);border-radius:var(--ds-radius-sm);color:var(--ds-text);margin:0 0 1rem;padding:.6rem .9rem;font-size:.85rem}.striker-stats-table .team-cell{align-items:center;gap:.5rem;display:flex}.striker-stats-table .goals-cell{text-align:center;color:var(--ds-success);font-weight:600}.striker-stats-table th:last-child,.striker-stats-table .selection-cell{text-align:right}.striker-selection-container .modal-overlay{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.striker-selection-container .modal-content{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border-strong);flex-direction:column;width:90%;max-width:400px;max-height:80vh;display:flex;box-shadow:0 4px 20px #00000080}.striker-selection-container .modal-header{border-bottom:1px solid var(--ds-border-strong);background:0 0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.striker-selection-container .modal-header h3{color:var(--ds-text);margin:0;font-size:1.1rem}.striker-selection-container .modal-close{color:var(--ds-text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.striker-selection-container .modal-close:hover{color:var(--ds-text);background:0 0}.striker-selection-container .modal-body{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;padding:1rem 1.25rem;overflow-y:auto}.striker-selection-container .modal-body::-webkit-scrollbar{width:6px}.striker-selection-container .modal-body::-webkit-scrollbar-track{background:0 0}.striker-selection-container .modal-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.striker-selection-container .modal-body::-webkit-scrollbar-thumb:hover{background:#ffffff40}.striker-selection-container .no-users{color:var(--ds-text-secondary);text-align:center;margin:0}.striker-selection-container .selected-by-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.striker-selection-container .selected-by-list li a{color:var(--ds-text);border-radius:.25rem;padding:.5rem .75rem;text-decoration:none;transition:background-color .2s;display:block}.striker-selection-container .selected-by-list li a:hover{background-color:var(--ds-surface-hover);color:var(--ds-accent)}.sst-list{display:none}@media (width<=1100px){.stats-table-wrapper{display:none}.sst-list{flex-direction:column;gap:4px;display:flex}}.sst-colhead{justify-content:flex-end;margin-bottom:1px;padding-right:24px;display:flex}.sst-colhead-label{text-transform:uppercase;letter-spacing:.05em;color:var(--ds-text-muted);text-align:center;font-size:.6rem;font-weight:500}.sst-colhead-goals{width:44px}.sst-colhead-picked{width:58px}.sst-card{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);cursor:pointer;min-height:50px;transition:background var(--ds-transition);align-items:center;padding:8px 24px 8px 0;display:flex;position:relative;overflow:hidden}@media (hover:hover){.sst-card:hover{background:var(--ds-surface-hover)}.sst-card--mine:hover{background:var(--ds-surface-highlight);border-color:rgba(var(--ds-accent-rgb), .45)}}.sst-card:focus-visible{outline:2px solid var(--ds-accent);outline-offset:-2px}.sst-card:before{content:"";background:0 0;width:3px;position:absolute;top:0;bottom:0;left:0}.sst-card--gold:before{background:var(--ds-gold);box-shadow:0 0 12px #fbbf2466}.sst-card--silver:before{background:var(--ds-silver);box-shadow:0 0 10px #94a3b84d}.sst-card--bronze:before{background:var(--ds-bronze);box-shadow:0 0 12px #d9770659}.sst-card--mine{background:var(--ds-surface-highlight);border-color:rgba(var(--ds-accent-rgb), .2)}.sst-card--mine:before{background:var(--ds-accent);box-shadow:0 0 14px rgba(var(--ds-accent-rgb), .4)}.sst-rank{text-align:center;width:36px;font-family:var(--ds-font-num);font-variant-numeric:tabular-nums;color:var(--ds-text-secondary);flex-shrink:0;font-size:.95rem;font-weight:700}.sst-card--mine .sst-rank{color:var(--ds-text)}.sst-card--gold .sst-rank{color:var(--ds-gold)}.sst-card--silver .sst-rank{color:var(--ds-silver)}.sst-card--bronze .sst-rank{color:var(--ds-bronze)}.sst-info{flex:1;min-width:0}.sst-name{color:var(--ds-text);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:600;line-height:1.3;overflow:hidden}.sst-pill{background:rgba(var(--ds-accent-rgb), .15);color:var(--ds-accent);white-space:nowrap;border-radius:20px;flex-shrink:0;align-items:center;padding:2px 7px;font-size:.62rem;font-weight:700;line-height:1;display:inline-flex}.sst-sub{min-width:0;color:var(--ds-text-secondary);align-items:center;gap:5px;margin-top:1px;font-size:.72rem;display:flex}.sst-sub-team{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sst-flag{border-radius:2px;flex-shrink:0;box-shadow:0 1px 3px #0006}.sst-goals{text-align:center;width:44px;font-family:var(--ds-font-num);font-variant-numeric:tabular-nums;color:var(--ds-text);flex-shrink:0;font-size:1rem;font-weight:700}.sst-picked{width:58px;font-family:var(--ds-font-num);font-variant-numeric:tabular-nums;flex-direction:column;flex-shrink:0;align-items:center;display:flex}.sst-picked-count{color:var(--ds-accent);font-size:.92rem;font-weight:700;line-height:1.2}.sst-picked-pct{color:var(--ds-text-secondary);font-size:.68rem;line-height:1.2}.sst-ghost{font-family:var(--ds-font-num);letter-spacing:-.02em;color:rgba(var(--ds-danger-rgb,239, 68, 68), .16);pointer-events:none;font-size:1.85rem;font-weight:800;line-height:1;position:absolute;top:50%;right:126px;transform:translateY(-46%)}.sst-chevron{color:var(--ds-text-muted);font-size:1.1rem;position:absolute;top:50%;right:7px;transform:translateY(-50%)}@media (width<=360px){.sst-card,.sst-colhead{padding-right:18px}.sst-rank{width:28px;font-size:.85rem}.sst-goals,.sst-colhead-goals{width:36px}.sst-picked,.sst-colhead-picked{width:50px}.sst-pill{padding:2px 5px;font-size:.58rem}.sst-chevron{right:4px}}@media (width<=600px){.striker-stats-header{flex-direction:column;align-items:flex-start;gap:.5rem}}@media (width<=900px){.striker-header-row{flex-direction:column;gap:1rem}.striker-header-info{text-align:center;flex:none}.selected-strikers-row{justify-content:center}.striker-slot-compact{max-width:150px}}.player-cards-mobile{display:none}@media (width<=1100px){.players-table-wrapper{display:none}.player-cards-mobile{border:1px solid var(--ds-border-strong);border-radius:.5rem;flex-direction:column;gap:.5rem;display:flex;overflow:hidden}.player-card-item{background-color:var(--ds-surface);border-bottom:1px solid var(--ds-border);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;transition:background-color .2s;display:flex}.player-card-item:last-child{border-bottom:none}.player-card-item:hover{background-color:var(--ds-surface-hover)}.player-card-item.selected{background-color:rgba(var(--ds-accent-rgb), .1)}.player-card-info-group{flex:1;min-width:0}.player-card-name{color:var(--ds-text);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.25rem;font-size:.95rem;font-weight:600;overflow:hidden}.player-card-team{color:var(--ds-text-secondary);align-items:center;gap:.5rem;font-size:.85rem;display:flex}.player-card-action-group{flex-shrink:0}.select-btn-mobile{background-color:var(--ds-accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:.25rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.select-btn-mobile:hover:not(:disabled){background-color:var(--ds-accent-hover)}.select-btn-mobile:disabled{background-color:var(--ds-text-muted);cursor:not-allowed}.selected-badge-mobile{background-color:var(--ds-accent);color:#fff;white-space:nowrap;border-radius:.25rem;padding:.5rem .75rem;font-size:.875rem;font-weight:600}}@media (width<=500px){.player-card-item{flex-direction:column;align-items:flex-start;gap:.75rem}.player-card-action-group,.select-btn-mobile{width:100%}}@media (width<=600px){.selected-strikers-row{flex-wrap:wrap}.striker-slot-compact{flex:calc(50% - .5rem);max-width:none}.striker-slot-compact:last-child{flex:100%}.available-players-header{flex-direction:column;align-items:stretch}.filter-controls{flex-direction:column}.team-filter,.search-input{width:100%}.players-table-wrapper{max-height:300px}.players-table th,.players-table td{padding:.5rem}.team-cell .team-name{display:none}.team-cell .team-abbr{margin-left:0}}.striker-stats-table tr.is-eliminated .player-name,.striker-stats-table tr.is-eliminated .team-name,.sst-card.is-eliminated .sst-name,.sst-card.is-eliminated .sst-sub-team{opacity:.6}.striker-stats-table .team-cell .out-badge{margin-left:.5rem}.top-teams-selection-container{max-width:1200px;margin:0 auto;padding:0}.top-teams-header-row{background-color:var(--ds-surface);border-radius:var(--ds-radius);align-items:stretch;gap:2rem;margin-bottom:1.5rem;padding:1.5rem;display:flex;box-shadow:0 2px 4px #0000004d}.top-teams-header-info{flex-direction:column;flex:0 0 280px;justify-content:center;display:flex}.top-teams-header-info h1{color:var(--ds-text);margin-bottom:.5rem;font-size:1.5rem}.top-teams-header-info .selection-info{color:var(--ds-text-secondary);margin-bottom:0;font-size:.9rem;line-height:1.4}.top-teams-header-info .saving-indicator{color:var(--ds-text-secondary);margin-top:.5rem;font-size:.85rem;font-style:italic}.selected-teams-row{flex:1;gap:.75rem;display:flex}.team-slot-compact{border:2px solid var(--ds-border-strong);background-color:#ffffff08;border-radius:.5rem;flex-direction:row;flex:1;align-items:center;gap:.75rem;min-height:70px;padding:.75rem;transition:all .2s;display:flex;position:relative}.team-slot-compact.filled{border-color:var(--ds-accent);background-color:var(--ds-surface)}.slot-emoji{filter:drop-shadow(0 1px 2px #0000004d);flex-shrink:0;font-size:1.75rem;line-height:1}.slot-content{flex-direction:column;flex:1;min-width:0;display:flex}.team-slot-compact .slot-label{color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.15rem;font-size:.65rem;font-weight:700}.team-slot-compact.gold-position .slot-label{color:gold}.team-slot-compact.silver-position .slot-label{color:silver}.team-slot-compact.bronze-position .slot-label{color:#cd7f32}.selected-team-compact{flex-direction:row;align-items:center;gap:.5rem;width:100%;display:flex}.selected-team-compact .team-flag{object-fit:cover;border-radius:2px;width:24px;height:16px;margin-bottom:.15rem;display:none}.selected-team-compact .team-info{width:100%}.selected-team-compact .team-name{color:var(--ds-text);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:700;line-height:1.2;overflow:hidden}.selected-team-compact .remove-btn{width:20px;height:20px;color:var(--ds-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .2s,background-color .2s;display:flex;position:absolute;top:6px;right:6px}.selected-team-compact .remove-btn:hover{color:var(--ds-danger);background-color:#ffffff14}.empty-slot-compact{color:var(--ds-text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;font-size:.7rem;display:flex}.available-teams-section.full-width{background-color:var(--ds-surface);border-radius:var(--ds-radius);padding:1.5rem;box-shadow:0 2px 4px #0000004d}.available-teams-header{align-items:flex-start;gap:1.5rem;margin-bottom:.75rem;display:flex}.available-teams-header h3{color:var(--ds-text);white-space:nowrap;flex-shrink:0;margin:0;line-height:38px}.filter-controls{flex:1;align-items:center;gap:.75rem;margin:0;display:flex}.filter-controls .search-input{box-sizing:border-box;border:1px solid var(--ds-border-strong);background-color:var(--ds-surface);width:250px;height:38px;color:var(--ds-text);border-radius:.25rem;padding:.5rem 1rem;font-size:.9rem}.filter-controls .search-input:focus{border-color:var(--ds-accent);outline:none}.teams-table-wrapper{border:1px solid var(--ds-border-strong);border-radius:.5rem}.teams-table{border-collapse:collapse;width:100%}.teams-table thead{background-color:var(--ds-controls-bg);z-index:1;position:sticky;top:0}.teams-table th{text-align:left;color:var(--ds-text-secondary);border-bottom:2px solid var(--ds-border-strong);-webkit-user-select:none;user-select:none;padding:.75rem 1rem;font-weight:600}.teams-table th.sortable{cursor:pointer;transition:background-color .2s}.teams-table th.sortable:hover{background-color:var(--ds-surface-hover)}.sort-indicator{color:var(--ds-text-muted);margin-left:.5rem;font-size:.8rem}.teams-table th:last-child{text-align:center;width:180px}.teams-table td{border-bottom:1px solid var(--ds-border);vertical-align:middle;padding:.5rem 1rem}.teams-table tbody tr:hover{background-color:var(--ds-surface-hover)}.teams-table tbody tr.selected{background-color:rgba(var(--ds-accent-rgb), .1)}.team-cell{vertical-align:middle;display:table-cell!important}.team-cell>*{vertical-align:middle}.team-cell .team-flag-sm{margin-right:.5rem;display:inline-block}.team-cell .team-name,.team-cell .team-abbr{display:inline}.team-flag-sm{object-fit:cover;border-radius:2px;flex-shrink:0;width:28px;height:20px;box-shadow:0 0 0 1px #00000026}.team-cell .team-name{font-size:inherit;color:var(--ds-text);font-weight:600}.team-cell .team-abbr{color:var(--ds-text-secondary);margin-left:.25rem}.action-cell{text-align:center;vertical-align:middle}.selected-badge{cursor:default}.selected-badge:hover{transform:none}.position-buttons-inline{justify-content:center;gap:.25rem;display:flex}.position-btn-sm{cursor:pointer;border:none;border-radius:.25rem;justify-content:center;align-items:center;min-width:32px;height:32px;padding:.3rem .5rem;font-size:1rem;transition:all .2s;display:flex}.position-btn-sm:hover:not(:disabled){transform:scale(1.1)}.position-btn-sm:disabled{opacity:.3;cursor:not-allowed}.gold-btn{background:linear-gradient(135deg,gold,#ffec80)}.silver-btn{background:linear-gradient(135deg,silver,#e8e8e8)}.bronze-btn{background:linear-gradient(135deg,#cd7f32,#e8a860)}.fourth-btn{background:linear-gradient(135deg, var(--ds-text-muted), var(--ds-text-secondary))}.no-teams{text-align:center;color:var(--ds-text-secondary);padding:2rem;font-style:italic}.login-prompt{background-color:var(--ds-surface);border-radius:var(--ds-radius);text-align:center;padding:3rem;box-shadow:0 2px 4px #0000004d}.login-prompt h2{color:var(--ds-text);margin-bottom:1rem}.login-prompt p{color:var(--ds-text-secondary);font-size:1.1rem}.login-prompt a{color:var(--ds-accent);font-weight:500;text-decoration:none}.login-prompt a:hover{text-decoration:underline}.locked-section{flex-direction:column;gap:1.5rem;display:flex}.locked-message{text-align:center;color:var(--ds-text-secondary);background-color:#ffffff0a;border-radius:.5rem;padding:1rem;font-size:.95rem}.top-teams-stats-section{background-color:var(--ds-surface);border-radius:var(--ds-radius);padding:1.5rem;box-shadow:0 2px 4px #0000004d}.top-teams-stats-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.top-teams-stats-header h3{color:var(--ds-text);margin:0}.total-participants{color:var(--ds-text-secondary);font-size:.9rem}.stats-table-wrapper{border:1px solid var(--ds-border-strong);border-radius:.5rem;overflow:hidden}.top-teams-stats-table{border-collapse:collapse;width:100%;font-size:.9rem}.top-teams-stats-table thead{background-color:var(--ds-controls-bg)}.top-teams-stats-table th{text-align:left;color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--ds-border-strong);-webkit-user-select:none;user-select:none;padding:.75rem;font-size:.8rem;font-weight:600}.top-teams-stats-table th.sortable{cursor:pointer;transition:background-color .2s}.top-teams-stats-table th.sortable:hover{background-color:var(--ds-surface-hover)}.top-teams-stats-table th.position-col{text-align:center;width:85px}.position-emoji{font-size:1rem}.top-teams-stats-table td{border-bottom:1px solid var(--ds-border);vertical-align:middle;padding:.5rem .75rem}.top-teams-stats-table tbody tr:hover{background-color:var(--ds-surface-hover)}.top-teams-stats-table tbody tr.user-selection{background-color:rgba(var(--ds-accent-rgb), .1)}.top-teams-stats-table tbody tr.user-selection:hover{background-color:rgba(var(--ds-accent-rgb), .15)}.top-teams-stats-table th:first-child,.top-teams-stats-table .rank-cell{text-align:center;white-space:nowrap;width:50px}.top-teams-stats-table .rank-cell{color:var(--ds-text-secondary);font-weight:500}.top-teams-stats-table .team-info-cell{align-items:center;gap:.5rem;display:flex}.top-teams-stats-table .team-flag-sm{object-fit:cover;border-radius:2px;flex-shrink:0;width:24px;height:16px}.top-teams-stats-table .team-name{color:var(--ds-text);font-weight:600}.your-pick-badge{background-color:var(--ds-accent);color:#fff;white-space:nowrap;border-radius:.25rem;margin-left:.5rem;padding:.15rem .4rem;font-size:.7rem;font-weight:600}.position-count-cell{text-align:center}.position-count-btn{cursor:pointer;background:0 0;border:none;border-radius:.25rem;padding:.25rem .4rem;transition:background-color .2s}.position-count-btn:hover{background-color:var(--ds-surface-hover)}.position-count-cell .count{color:var(--ds-text);font-weight:600}.position-count-cell .percentage{color:var(--ds-text-secondary);margin-left:.15rem;font-size:.8rem}.position-count-cell.gold-col .count{color:var(--ds-gold)}.position-count-cell.gold-col .position-count-btn:hover{background-color:#ffd70026}.position-count-cell.silver-col .count{color:var(--ds-silver)}.position-count-cell.silver-col .position-count-btn:hover{background-color:#c0c0c040}.position-count-cell.bronze-col .count{color:var(--ds-bronze)}.position-count-cell.bronze-col .position-count-btn:hover{background-color:#cd7f3226}.position-count-cell.fourth-col .position-count-btn:hover{background-color:var(--ds-surface-hover)}.top-teams-stats-table th:last-child,.top-teams-stats-table .selection-cell{text-align:right}.selection-count-btn{cursor:pointer;background:0 0;border:none;border-radius:.25rem;margin:-.25rem -.5rem;padding:.25rem .5rem;transition:background-color .2s}.selection-count-btn:hover{background-color:var(--ds-surface-hover)}.selection-count{color:var(--ds-text);font-weight:600}.selection-percentage{color:var(--ds-text-secondary);margin-left:.25rem;font-size:.85rem}.top-teams-selection-container .modal-overlay{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.top-teams-selection-container .modal-content{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border-strong);flex-direction:column;width:90%;max-width:400px;max-height:80vh;display:flex;box-shadow:0 4px 20px #0006}.top-teams-selection-container .modal-header{border-bottom:1px solid var(--ds-border-strong);background:0 0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.top-teams-selection-container .modal-header h3{color:var(--ds-text);margin:0;font-size:1.1rem}.top-teams-selection-container .modal-close{color:var(--ds-text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.top-teams-selection-container .modal-close:hover{color:var(--ds-text);background:0 0}.top-teams-selection-container .modal-body{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;padding:1rem 1.25rem;overflow-y:auto}.top-teams-selection-container .modal-body::-webkit-scrollbar{width:6px}.top-teams-selection-container .modal-body::-webkit-scrollbar-track{background:0 0}.top-teams-selection-container .modal-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.top-teams-selection-container .modal-body::-webkit-scrollbar-thumb:hover{background:#ffffff40}.top-teams-selection-container .no-users{color:var(--ds-text-secondary);text-align:center;margin:0}.top-teams-selection-container .selected-by-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.top-teams-selection-container .selected-by-list li a{color:var(--ds-text);border-radius:.25rem;justify-content:space-between;align-items:center;padding:.5rem .75rem;text-decoration:none;transition:background-color .2s;display:flex}.top-teams-selection-container .selected-by-list li a:hover{background-color:var(--ds-surface-hover);color:var(--ds-accent)}.user-position{font-size:1rem}.top-teams-stats-cards-mobile{display:none}@media (width<=1100px){.stats-table-wrapper{display:none}.top-teams-stats-cards-mobile{border:1px solid var(--ds-border-strong);border-radius:.5rem;flex-direction:column;gap:.75rem;display:flex;overflow:hidden}.team-stats-card-item{background-color:var(--ds-surface);border-bottom:1px solid var(--ds-border);gap:.375rem;padding:1rem;transition:background-color .2s;display:flex}.team-stats-card-item:last-child{border-bottom:none}.team-stats-card-item:hover{background-color:var(--ds-surface-hover)}.team-stats-card-item.user-selection-gold{background-color:#ffd7001f}.team-stats-card-item.user-selection-gold:hover{background-color:#ffd7002e}.team-stats-card-item.user-selection-silver{background-color:#c0c0c026}.team-stats-card-item.user-selection-silver:hover{background-color:#c0c0c038}.team-stats-card-item.user-selection-bronze{background-color:#cd7f321f}.team-stats-card-item.user-selection-bronze:hover{background-color:#cd7f322e}.team-stats-card-item.user-selection-fourth{background-color:#9370db1f}.team-stats-card-item.user-selection-fourth:hover{background-color:#9370db2e}.team-stats-card-rank{color:var(--ds-text-secondary);flex-shrink:0;min-width:30px;font-size:.9rem;font-weight:600}.team-stats-card-main{flex-direction:column;flex:1;gap:.75rem;min-width:0;display:flex}.team-stats-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.team-stats-card-team{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.team-stats-card-team .team-name{color:var(--ds-text);font-size:.95rem;font-weight:600}.team-total-stat-btn{cursor:pointer;color:var(--ds-accent);background:0 0;border:none;padding:0;font-size:.95rem;font-weight:600;transition:opacity .2s}.team-total-stat-btn:hover{opacity:.7}.team-stats-card-positions{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.position-stat{background-color:#ffffff0d;border-radius:.375rem;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .25rem;display:flex}.position-stat .position-emoji{font-size:1.1rem}.position-stat-btn{cursor:pointer;color:var(--ds-accent);text-align:center;background:0 0;border:none;padding:.25rem;font-size:.8rem;font-weight:600;transition:opacity .2s}.position-stat-btn:hover{opacity:.7}.position-stat-zero{color:var(--ds-text-muted);font-size:.8rem}}@media (width<=600px){.top-teams-stats-header{flex-direction:column;align-items:flex-start;gap:.5rem}.team-stats-card-positions{grid-template-columns:repeat(2,1fr)}}.back-link{text-align:center;margin-top:1.5rem}.back-link a{color:var(--ds-text-secondary);font-size:.95rem;text-decoration:none}.back-link a:hover{color:var(--ds-accent);text-decoration:underline}.team-cards-mobile{display:none}@media (width<=1100px){.teams-table-wrapper{display:none}.team-cards-mobile{border:1px solid var(--ds-border-strong);border-radius:.5rem;flex-direction:column;gap:.5rem;display:flex;overflow:hidden}.team-card-item{background-color:var(--ds-surface);border-bottom:1px solid var(--ds-border);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;transition:background-color .2s;display:flex}.team-card-item:last-child{border-bottom:none}.team-card-item:hover{background-color:var(--ds-surface-hover)}.team-card-item.selected{background-color:rgba(var(--ds-accent-rgb), .1)}.team-card-info-group{flex:1;min-width:0}.team-card-name{color:var(--ds-text);align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;display:flex;overflow:hidden}.team-card-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.team-card-action-group{flex-shrink:0}.position-buttons-mobile{flex-wrap:wrap;gap:.375rem;display:flex}.position-btn-mobile{cursor:pointer;border:2px solid #0000;border-radius:.25rem;justify-content:center;align-items:center;min-width:36px;height:36px;padding:0;font-size:1.1rem;transition:all .2s;display:flex}.position-btn-mobile.gold-btn{background:linear-gradient(135deg,gold,#ffec80);border-color:#d4af37}.position-btn-mobile.silver-btn{background:linear-gradient(135deg,silver,#e8e8e8);border-color:#a8a8a8}.position-btn-mobile.bronze-btn{background:linear-gradient(135deg,#cd7f32,#e8a860);border-color:#a86432}.position-btn-mobile.fourth-btn{background:linear-gradient(135deg,#4a90e2,#7ab8ff);border-color:#3a7bc8}.position-btn-mobile:hover:not(:disabled){transform:scale(1.05);box-shadow:0 2px 4px #0003}.position-btn-mobile:disabled{opacity:.4;cursor:not-allowed}.position-badge-mobile{white-space:nowrap;border-radius:.25rem;padding:.5rem .75rem;font-size:.875rem;font-weight:600}.position-badge-mobile.gold-badge{color:#6b5200;background:linear-gradient(135deg,gold,#ffec80)}.position-badge-mobile.silver-badge{color:#4a4a4a;background:linear-gradient(135deg,silver,#e8e8e8)}.position-badge-mobile.bronze-badge{color:#4a2600;background:linear-gradient(135deg,#cd7f32,#e8a860)}.position-badge-mobile.fourth-badge{color:#1a3a5a;background:linear-gradient(135deg,#4a90e2,#7ab8ff)}}@media (width<=500px){.team-card-item{flex-direction:column;align-items:flex-start;gap:.75rem}.team-card-action-group{width:100%}.position-buttons-mobile{justify-content:space-between;width:100%}.position-btn-mobile{flex:1;max-width:calc(25% - .3rem)}.position-badge-mobile{text-align:center;width:100%}}@media (width<=900px){.top-teams-header-row{flex-direction:column;gap:1rem}.top-teams-header-info{text-align:center;flex:none}.selected-teams-row{flex-wrap:wrap;justify-content:center}.team-slot-compact{flex:calc(50% - .5rem);max-width:calc(50% - .5rem)}}@media (width<=768px){.top-teams-stats-header{flex-direction:column;align-items:flex-start;gap:.5rem}.top-teams-stats-table th,.top-teams-stats-table td{padding:.4rem .5rem}.top-teams-stats-table th.position-col{width:60px}.position-count-cell .percentage,.your-pick-badge{display:none}}@media (width<=600px){.team-slot-compact{flex:100%;max-width:100%}.selected-team-compact .team-name{font-size:.9rem}.available-teams-header{flex-direction:column;align-items:stretch}.filter-controls .search-input{width:100%}.teams-table th,.teams-table td{padding:.5rem}.position-buttons-inline{flex-wrap:wrap}.position-btn-sm{min-width:28px;height:28px;font-size:.9rem}.top-teams-stats-table .team-flag-sm{display:none}}.top-teams-stats-table tr.is-eliminated .team-name,.team-stats-card-item.is-eliminated .team-name{opacity:.6}.personal-leagues-container{padding:1rem 0}.personal-leagues-container .leagues-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.personal-leagues-container .leagues-header h1{color:var(--ds-text);margin:0;font-size:1.5rem}.league-title-section{flex-direction:column;gap:.25rem;display:flex}.league-title-section h1{color:var(--ds-text);margin:0;font-size:1.5rem}.league-header-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.league-owner-info{color:var(--ds-text-secondary);margin:0;font-size:.9rem}.league-owner-info .owner-badge{margin-left:.5rem}.league-name-edit{align-items:center;gap:.5rem;display:flex}.league-name-input{border:2px solid var(--ds-accent);background:var(--ds-surface);min-width:200px;max-width:400px;color:var(--ds-text);border-radius:.25rem;padding:.25rem .5rem;font-size:1.5rem;font-weight:600}.league-name-input:focus{box-shadow:0 0 0 3px rgba(var(--ds-accent-rgb), .2);outline:none}.edit-name-btn{cursor:pointer;color:var(--ds-text-muted);opacity:.6;background:0 0;border:none;margin-left:.5rem;padding:.25rem;font-size:1rem;transition:opacity .2s,color .2s}.edit-name-btn:hover{opacity:1;color:var(--ds-accent)}.league-title-section h1{align-items:center;display:flex}.leagues-auth-required{text-align:center;padding:3rem 1rem}.leagues-auth-required h1,.leagues-join-required h1{color:var(--ds-text);margin-bottom:1rem;font-size:1.5rem}.no-leagues-message{text-align:center;color:var(--ds-text-secondary);background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);padding:3rem 1rem}.no-leagues-message p{margin-bottom:1rem}.no-leagues{text-align:center;color:var(--ds-text-secondary);background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);padding:2rem 1rem}.no-leagues p{margin:.5rem 0}.leagues-table-container{background:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);overflow:hidden;box-shadow:0 2px 8px #0000004d}.leagues-table{border-collapse:collapse;width:100%}.leagues-table th,.leagues-table td{text-align:left;border-bottom:1px solid var(--ds-border);padding:.75rem 1rem}.leagues-table th{background-color:var(--ds-controls-bg);color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.leagues-table tbody tr:hover{background-color:var(--ds-surface-hover)}.leagues-table tbody tr:last-child td{border-bottom:none}.league-name-cell .owner-badge{margin-left:.5rem}.league-link{color:var(--ds-accent);font-weight:500;text-decoration:none}.league-link:hover{text-decoration:underline}.leagues-table th.members-cell,.leagues-table td.members-cell{text-align:center;width:100px}.owner-cell{color:var(--ds-text-secondary)}.actions-cell{width:180px}.actions-cell .action-buttons{flex-flow:row;gap:.5rem;display:flex}.leagues-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;display:grid}.league-card{background:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);padding:1.25rem;transition:box-shadow .2s,background-color .2s;box-shadow:0 2px 8px #0000004d}.league-card:hover{background-color:var(--ds-surface-hover);box-shadow:0 4px 16px #0006}.league-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;display:flex}.league-card-header h3{color:var(--ds-text);margin:0;font-size:1.1rem}.league-card-header h3 a{color:var(--ds-accent);text-decoration:none}.league-card-header h3 a:hover{text-decoration:underline}.owner-badge{background:rgba(var(--ds-accent-rgb), .15);color:var(--ds-accent);text-transform:uppercase;border-radius:.25rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600}.league-card-meta{color:var(--ds-text-secondary);margin-bottom:1rem;font-size:.85rem}.league-card-meta span{margin-bottom:.25rem;display:block}.league-card-actions{flex-wrap:wrap;gap:.5rem;display:flex}.league-detail-container{padding:1rem 0}.league-detail-container .leagues-header{margin-bottom:1.5rem}.league-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.league-info h2{color:var(--ds-text);margin:0 0 .5rem;font-size:1.5rem}.league-meta{color:var(--ds-text-secondary);font-size:.9rem}.league-meta span{margin-right:1rem}.league-actions{flex-wrap:wrap;gap:.5rem;display:flex}.league-members{background:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);padding:1.25rem;box-shadow:0 2px 8px #0000004d}.league-members-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.league-members-header h3{color:var(--ds-text);margin:0;font-size:1.1rem}.members-list{flex-direction:column;gap:.5rem;display:flex}.member-item{background:#ffffff0a;border-radius:.375rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.member-info{align-items:center;gap:.5rem;display:flex}.member-name{color:var(--ds-text);font-weight:500}.league-member-count{color:var(--ds-text-muted)}.member-meta{align-items:center;gap:.75rem;display:flex}.member-joined{color:var(--ds-text-muted);font-size:.8rem}.member-remove-btn{cursor:pointer;color:var(--ds-text-muted);background:0 0;border:none;border-radius:.25rem;padding:.25rem .4rem;font-size:.9rem;line-height:1;transition:color .15s,background-color .15s}.member-remove-btn:hover{color:var(--ds-danger);background:#ffffff0f}.league-danger-zone{border-top:1px solid var(--ds-border);text-align:center;margin-top:2rem;padding-top:1rem}.danger-zone-delete-btn{cursor:pointer;color:var(--ds-text-muted);background:0 0;border:none;padding:.25rem .5rem;font-size:.85rem;text-decoration:underline}.danger-zone-delete-btn:hover{color:var(--ds-danger)}.create-league-container{max-width:600px;padding:1rem 0}.create-league-container h2{color:var(--ds-text);margin:0 0 1.5rem;font-size:1.5rem}.create-league-form{background:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);padding:1.5rem;box-shadow:0 2px 8px #0000004d}.create-league-form .form-group{margin-bottom:1.25rem}.create-league-form label{color:var(--ds-text-secondary);margin-bottom:.5rem;font-weight:500;display:block}.create-league-form input[type=text]{border:1px solid var(--ds-border-strong);background:var(--ds-surface);width:100%;color:var(--ds-text);border-radius:.375rem;padding:.5rem .75rem;font-size:1rem}.create-league-form input[type=text]:focus{border-color:var(--ds-accent);box-shadow:0 0 0 2px rgba(var(--ds-accent-rgb), .2);outline:none}.form-hint{color:var(--ds-text-secondary);margin-bottom:.75rem;font-size:.85rem}.error-hint{color:var(--ds-danger);font-size:.85rem}.no-participants{color:var(--ds-text-muted);font-size:.9rem;font-style:italic}.members-toolbar{flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;display:flex}.members-toolbar .search-input{border:1px solid var(--ds-border-strong);background:var(--ds-surface);min-width:200px;color:var(--ds-text);border-radius:.375rem;flex:1;padding:.5rem .75rem;font-size:.9rem}.selection-buttons{gap:.5rem;display:flex}.participants-list{border:1px solid var(--ds-border-strong);scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;border-radius:.375rem;max-height:300px;overflow-y:auto}.participants-list::-webkit-scrollbar{width:6px}.participants-list::-webkit-scrollbar-track{background:0 0}.participants-list::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.participants-list .participant-checkbox{cursor:pointer;border-bottom:1px solid var(--ds-border);color:var(--ds-text);align-items:center;gap:.75rem;margin:0;padding:.75rem 1rem;transition:background-color .15s;flex-direction:row!important;display:flex!important}.participants-list .participant-checkbox:last-child{border-bottom:none}.participants-list .participant-checkbox:hover{background-color:var(--ds-surface-hover)}.participants-list .participant-checkbox input[type=checkbox]{cursor:pointer;flex-shrink:0;width:1.1rem;min-width:1.1rem;height:1.1rem;margin:0}.participants-list .participant-checkbox span{flex:1}.selected-count{color:var(--ds-accent);margin-top:.5rem;font-size:.85rem;font-weight:500}.form-actions{border-top:1px solid var(--ds-border);justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.add-members-modal{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.add-members-modal-content{background:var(--ds-surface);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius);flex-direction:column;width:100%;max-width:500px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 4px 20px #00000080}.add-members-modal-header{border-bottom:1px solid var(--ds-border-strong);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.add-members-modal-header h3{color:var(--ds-text);margin:0;font-size:1.1rem}.modal-close{color:var(--ds-text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.modal-close:hover{color:var(--ds-text)}.add-members-modal-body{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex:1;padding:1rem 1.25rem;overflow-y:auto}.add-members-modal-body::-webkit-scrollbar{width:6px}.add-members-modal-body::-webkit-scrollbar-track{background:0 0}.add-members-modal-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.add-members-modal-footer{border-top:1px solid var(--ds-border-strong);justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;display:flex}.league-filter{align-items:center;gap:.5rem;display:flex;position:relative}.league-filter-select{border:1px solid var(--ds-border-strong);background:var(--ds-surface);color:var(--ds-text);cursor:pointer;border-radius:.375rem;min-width:180px;padding:.4rem .75rem;font-size:.9rem}.league-filter-select:focus{border-color:var(--ds-accent);outline:none}.league-filter-disabled{opacity:.45}.league-filter-disabled .league-filter-select{cursor:not-allowed}.favorite-league-btn{cursor:pointer;color:var(--ds-text-muted);background:0 0;border:none;padding:.25rem;font-size:1.5rem;line-height:1;transition:color .2s,transform .15s}.favorite-league-btn:hover,.favorite-league-btn.is-favorite{color:var(--ds-warning)}.favorite-league-btn:focus{outline:none}.favorite-league-btn:focus-visible{outline:2px solid var(--ds-accent);outline-offset:2px;border-radius:4px}.leaderboard-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}@media (width<=768px){.personal-leagues-container .leagues-header{flex-direction:column;align-items:center}.leagues-grid{grid-template-columns:1fr}.league-detail-header{flex-direction:column}.league-actions{width:100%}.league-actions .btn{flex:1}.members-toolbar{flex-direction:column}.members-toolbar .search-input{min-width:100%}.member-item{flex-wrap:wrap}.leaderboard-title-row{flex-direction:column;align-items:center}.league-filter{width:100%}.league-filter-select{flex:1}}@media (width<=480px){.personal-leagues-container .leagues-header,.leaderboard-title-row{align-items:center}}.share-link-row{gap:.5rem;margin-top:.75rem;display:flex}.share-link-row .search-input{flex:1}.thread-replies-container{border-left:2px solid var(--ds-border-strong);margin-top:.75rem;margin-left:2rem;padding-left:1rem}.thread-replies-header{border-bottom:1px solid var(--ds-border);margin-bottom:.75rem;padding-bottom:.5rem}.thread-replies-count{color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.thread-replies-list{flex-direction:column;gap:.75rem;display:flex}.thread-replies-loading{text-align:center;color:var(--ds-text-secondary);padding:1rem;font-size:.9rem;font-style:italic}.thread-replies-error{background:rgba(var(--ds-warning-rgb), .1);border:1px solid var(--ds-warning);border-radius:var(--ds-radius-sm);color:var(--ds-warning);margin-top:.5rem;padding:.75rem;font-size:.9rem}.thread-replies-load-more{text-align:center;margin-top:.75rem}.thread-load-more-btn{background:var(--ds-surface-hover);color:var(--ds-text);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);cursor:pointer;transition:all var(--ds-transition);padding:.5rem 1rem;font-size:.85rem;font-weight:500}.thread-load-more-btn:hover:not(:disabled){background:var(--ds-surface-highlight);border-color:var(--ds-accent)}.thread-load-more-btn:disabled{opacity:.6;cursor:not-allowed}.thread-inline-reply-form{border-top:1px solid var(--ds-border);margin-top:1rem;padding-top:.75rem}.thread-inline-reply-input{border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);resize:vertical;background:var(--ds-surface);width:100%;min-height:60px;max-height:150px;color:var(--ds-text);margin-bottom:.5rem;padding:.75rem;font-family:inherit;font-size:.9rem}.thread-inline-reply-input:focus{border-color:var(--ds-accent);outline:none}.thread-inline-reply-input:disabled{background:var(--ds-surface-hover);cursor:not-allowed;opacity:.7}.thread-inline-reply-actions{justify-content:space-between;align-items:center;display:flex}.thread-inline-reply-count{color:var(--ds-text-muted);font-size:.75rem}.thread-inline-reply-btn{background:var(--ds-accent);color:#fff;border-radius:var(--ds-radius-sm);cursor:pointer;transition:background-color var(--ds-transition);border:none;padding:.5rem 1rem;font-size:.85rem;font-weight:600}.thread-inline-reply-btn:hover:not(:disabled){background:var(--ds-accent-hover)}.thread-inline-reply-btn:disabled{background:var(--ds-text-muted);cursor:not-allowed;opacity:.6}@media (width<=768px){.thread-replies-container{margin-left:1rem;padding-left:.75rem}.thread-inline-reply-input{padding:.6rem;font-size:.85rem}.thread-inline-reply-btn{padding:.45rem .85rem;font-size:.8rem}}.reply-modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.reply-modal-content{background:var(--ds-surface);border-radius:var(--ds-radius);flex-direction:column;width:100%;max-width:600px;max-height:80vh;display:flex;box-shadow:0 4px 24px #00000080}.reply-modal-header{border-bottom:1px solid var(--ds-border);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.reply-modal-header h3{color:var(--ds-text);margin:0;font-size:1.25rem}.reply-modal-close-btn{color:var(--ds-text-secondary);cursor:pointer;width:32px;height:32px;transition:color var(--ds-transition);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:2rem;line-height:1;display:flex}.reply-modal-close-btn:hover{color:var(--ds-text)}.reply-modal-parent-preview{background:var(--ds-controls-bg);border-left:3px solid var(--ds-accent);border-radius:var(--ds-radius-sm);margin:1rem 1.5rem 0;padding:1rem 1.5rem}.parent-preview-header{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.parent-preview-author{color:var(--ds-text);font-size:.9rem;font-weight:600}.parent-preview-timestamp{color:var(--ds-text-muted);font-size:.75rem}.parent-preview-content{color:var(--ds-text-secondary);white-space:pre-wrap;word-wrap:break-word;max-height:150px;font-size:.9rem;line-height:1.4;overflow-y:auto}.reply-modal-body{flex-direction:column;flex:1;padding:1.5rem;display:flex;overflow:hidden}.reply-modal-textarea{border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);resize:vertical;background:var(--ds-surface);min-height:120px;max-height:300px;color:var(--ds-text);flex:1;margin-bottom:.5rem;padding:.75rem;font-family:inherit;font-size:.95rem}.reply-modal-textarea:focus{border-color:var(--ds-accent);outline:none}.reply-modal-textarea:disabled{background:var(--ds-surface-hover);cursor:not-allowed}.reply-modal-char-count{color:var(--ds-text-muted);text-align:right;font-size:.75rem}.reply-modal-actions{border-top:1px solid var(--ds-border);justify-content:flex-end;gap:.75rem;padding:1.25rem 1.5rem;display:flex}.reply-modal-btn{border-radius:var(--ds-radius-sm);cursor:pointer;transition:background-color var(--ds-transition);border:none;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600}.reply-modal-btn-cancel{background:var(--ds-surface-hover);color:var(--ds-text)}.reply-modal-btn-cancel:hover:not(:disabled){background:var(--ds-surface-highlight)}.reply-modal-btn-send{background:var(--ds-accent);color:#fff}.reply-modal-btn-send:hover:not(:disabled){background:var(--ds-accent-hover)}.reply-modal-btn:disabled{opacity:.6;cursor:not-allowed}@media (width<=768px){.reply-modal-content{max-height:90vh}.reply-modal-header,.reply-modal-actions,.reply-modal-body{padding:1rem}.reply-modal-parent-preview{margin:1rem}}.chat-container{max-width:1400px;margin:0 auto}.chat-page-header{background-color:var(--ds-surface);border-radius:var(--ds-radius);margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 2px 4px #0000004d}.chat-page-header h1{color:var(--ds-text);margin-bottom:.5rem;font-size:1.5rem}.chat-page-description{color:var(--ds-text-secondary);margin-bottom:0;font-size:.95rem;line-height:1.4}.chat-layout{grid-template-columns:280px 1fr;align-items:start;gap:1.5rem;display:grid}.channel-selector{background:var(--ds-surface);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius);max-height:calc(100vh - 200px);padding:1rem;position:sticky;top:1rem;overflow-y:auto}.channel-section{margin-bottom:1.5rem}.channel-section-title{text-transform:uppercase;color:var(--ds-text-muted);letter-spacing:.5px;margin-bottom:.5rem;font-size:.75rem;font-weight:600}.channel-item{border-radius:var(--ds-radius-sm);cursor:pointer;transition:background-color var(--ds-transition);align-items:center;gap:.5rem;margin-bottom:.25rem;padding:.75rem;display:flex}.channel-item:hover{background-color:var(--ds-surface-hover)}.channel-item.active{background-color:rgba(var(--ds-accent-rgb), .15);color:var(--ds-accent);font-weight:500}.channel-icon{flex-shrink:0;font-size:1.2rem}.channel-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.95rem;overflow:hidden}.unread-badge{background-color:var(--ds-accent);color:#fff;text-align:center;border-radius:12px;min-width:20px;padding:.15rem .5rem;font-size:.75rem;font-weight:600}.chat-main{background:var(--ds-surface);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius);flex-direction:column;display:flex}.chat-header{border-bottom:1px solid var(--ds-border);background:var(--ds-controls-bg);padding:1rem 1.5rem}.chat-header-content{justify-content:space-between;align-items:center;gap:1rem;display:flex}.chat-header h3{color:var(--ds-text);margin:0;font-size:1.25rem}.chat-subheader{color:var(--ds-text-secondary);margin:.25rem 0 0;font-size:.85rem}.chat-refresh-btn{border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);cursor:pointer;width:36px;height:36px;color:var(--ds-text-secondary);transition:all var(--ds-transition);background:0 0;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.chat-refresh-btn:hover:not(:disabled){background:var(--ds-surface-hover);border-color:var(--ds-border-strong);color:var(--ds-text)}.chat-refresh-btn:disabled{opacity:.5;cursor:not-allowed;animation:1s linear infinite spin}.messages-container{background:var(--ds-surface);flex-direction:column;gap:1rem;min-height:200px;padding:1.5rem;display:flex}.messages-loading,.messages-empty{min-height:400px;color:var(--ds-text-secondary);justify-content:center;align-items:center;font-style:italic;display:flex}.message{border-radius:var(--ds-radius);background:var(--ds-controls-bg);transition:background-color var(--ds-transition);padding:1rem}.message:hover{background:var(--ds-surface-hover)}.message-pinned{border-left:4px solid var(--ds-accent);background:rgba(var(--ds-warning-rgb), .1)}.message-pinned-indicator{color:var(--ds-accent);align-items:center;gap:.25rem;margin-bottom:.5rem;font-size:.75rem;font-weight:600;display:flex}.message-header{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.message-author{color:var(--ds-text);font-size:.95rem;font-weight:600}.message-timestamp{color:var(--ds-text-muted);font-size:.75rem}.message-actions{align-items:center;gap:.5rem;margin-left:auto;display:flex}.message-pin-btn,.message-delete-btn{cursor:pointer;opacity:.5;transition:opacity var(--ds-transition), transform var(--ds-transition);background:0 0;border:none;padding:.25rem;font-size:1rem}.message-pin-btn:hover,.message-delete-btn:hover{opacity:1;transform:scale(1.1)}.message-pin-btn{color:var(--ds-accent)}.message.message-pinned .message-pin-btn{opacity:1}.delete-confirm{background:rgba(var(--ds-warning-rgb), .1);border:1px solid rgba(var(--ds-warning-rgb), .3);border-radius:var(--ds-radius-sm);margin-bottom:.5rem;padding:1rem}.delete-confirm p{color:var(--ds-warning);margin:0 0 .75rem;font-weight:500}.delete-confirm-actions{gap:.5rem;display:flex}.delete-confirm .btn-confirm{background:var(--ds-danger);color:#fff;border-radius:var(--ds-radius-sm);cursor:pointer;transition:background var(--ds-transition);border:none;padding:.5rem 1rem;font-size:.9rem;font-weight:500}.delete-confirm .btn-confirm:hover{background:#dc2626}.delete-confirm .btn-cancel{background:var(--ds-surface-hover);color:var(--ds-text);border-radius:var(--ds-radius-sm);cursor:pointer;transition:background var(--ds-transition);border:none;padding:.5rem 1rem;font-size:.9rem;font-weight:500}.delete-confirm .btn-cancel:hover{background:var(--ds-surface-highlight)}.message-content{color:var(--ds-text);white-space:pre-wrap;word-wrap:break-word;line-height:1.5}.message-reactions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.reactions-list{flex-wrap:wrap;gap:.25rem;display:flex}.reaction-bubble{border:1px solid var(--ds-border-strong);background:var(--ds-surface);cursor:pointer;transition:all var(--ds-transition);border-radius:12px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.85rem;display:flex}.reaction-bubble:hover{border-color:var(--ds-accent);transform:scale(1.05)}.reaction-bubble.user-reacted{background:rgba(var(--ds-accent-rgb), .15);border-color:var(--ds-accent)}.reaction-emoji{font-size:1rem}.reaction-count{color:var(--ds-text);font-size:.75rem;font-weight:600}.reaction-add-container{position:relative}.reaction-add-btn{border:1px dashed var(--ds-text-muted);cursor:pointer;width:28px;height:28px;transition:all var(--ds-transition);color:var(--ds-text-muted);background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.reaction-add-btn:hover{border-color:var(--ds-accent);color:var(--ds-accent);background:rgba(var(--ds-accent-rgb), .15)}.emoji-picker{background:var(--ds-surface);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius);z-index:10;gap:.25rem;margin-bottom:.5rem;padding:.5rem;display:flex;position:absolute;bottom:100%;left:0;box-shadow:0 4px 12px #0006}.emoji-option{cursor:pointer;border-radius:var(--ds-radius-sm);width:32px;height:32px;transition:background-color var(--ds-transition);background:0 0;border:none;font-size:1.25rem}.emoji-option:hover{background:var(--ds-surface-hover)}.message-input-container{border-bottom:1px solid var(--ds-border);background:var(--ds-controls-bg);padding:1rem 1.5rem}.message-input{border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);resize:vertical;background:var(--ds-surface);width:100%;min-height:60px;max-height:150px;color:var(--ds-text);margin-bottom:.5rem;padding:.75rem;font-family:inherit;font-size:.95rem}.message-input:focus{border-color:var(--ds-accent);outline:none}.message-input:disabled{background:var(--ds-surface-hover);cursor:not-allowed}.message-input-footer{justify-content:space-between;align-items:center;display:flex}.message-input-char-count{color:var(--ds-text-muted);font-size:.75rem}.message-send-btn{background:var(--ds-accent);color:#fff;border-radius:var(--ds-radius-sm);cursor:pointer;transition:background-color var(--ds-transition);border:none;padding:.5rem 1rem;font-size:.85rem;font-weight:600}.message-send-btn:hover:not(:disabled){background:var(--ds-accent-hover)}.message-send-btn:disabled{background:var(--ds-text-muted);cursor:not-allowed}.chat-read-only{text-align:center;background:var(--ds-controls-bg);color:var(--ds-text-secondary);border-bottom:1px solid var(--ds-border);padding:1rem 1.5rem;font-style:italic}.chat-read-only p{margin:0}.chat-auth-required{text-align:center;padding:3rem 1rem}.chat-auth-required h1{color:var(--ds-text);margin-bottom:1rem;font-size:1.5rem}.chat-auth-required a{color:var(--ds-accent)}.chat-join-required{text-align:center;padding:3rem 1rem}.chat-join-required h1{color:var(--ds-text);margin-bottom:1rem;font-size:1.5rem}.chat-no-channel{height:400px;color:var(--ds-text-secondary);text-align:center;justify-content:center;align-items:center;display:flex}.chat-no-channel p{color:var(--ds-text-muted);font-size:1.1rem}.message-threading-controls{border-top:1px solid var(--ds-border);align-items:center;gap:.75rem;margin-top:.75rem;padding-top:.5rem;display:flex}.message-reply-btn,.thread-toggle-btn{border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);cursor:pointer;color:var(--ds-text);transition:all var(--ds-transition);background:0 0;align-items:center;gap:.25rem;padding:.4rem .75rem;font-size:.85rem;font-weight:500;display:flex}.message-reply-btn:hover,.thread-toggle-btn:hover{background:var(--ds-surface-hover);border-color:var(--ds-accent);color:var(--ds-accent)}.message-reply-btn:active,.thread-toggle-btn:active{transform:scale(.98)}.thread-toggle-btn{color:var(--ds-accent);border-color:var(--ds-accent)}.thread-toggle-btn:hover{background:rgba(var(--ds-accent-rgb), .15)}.message-with-thread{margin-bottom:.5rem}.channel-selector-desktop{display:block}.channel-selector-mobile{display:none}@media (width<=768px){.chat-page-header{text-align:center}.chat-layout{grid-template-columns:1fr}.channel-selector-desktop{display:none}.channel-selector-mobile{margin-bottom:1rem;display:block}.channel-select-mobile{border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);background-color:var(--ds-surface);width:100%;color:var(--ds-text);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding:.75rem 2.5rem .75rem 1rem;font-size:1rem;font-weight:500}.channel-select-mobile:focus{border-color:var(--ds-accent);box-shadow:0 0 0 3px rgba(var(--ds-accent-rgb), .2);outline:none}.message-threading-controls{flex-wrap:wrap;gap:.5rem}.message-reply-btn,.thread-toggle-btn{padding:.35rem .6rem;font-size:.8rem}}.compare-modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.compare-modal{background-color:var(--ds-surface);border-radius:var(--ds-radius);width:90%;max-width:400px;box-shadow:0 4px 20px #0006}.compare-modal-header{border-bottom:1px solid var(--ds-border);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.compare-modal-header h3{color:var(--ds-text);margin:0;font-size:1.1rem}.compare-modal-header .close-btn{color:var(--ds-text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.compare-modal-header .close-btn:hover{color:var(--ds-text)}.compare-modal-body{padding:1.25rem 1.5rem}.compare-description{color:var(--ds-text-secondary);margin:0 0 1rem;font-size:.85rem}.compare-select-group{margin-bottom:.75rem}.compare-select-group label{text-transform:uppercase;letter-spacing:.5px;color:var(--ds-text-secondary);margin-bottom:.25rem;font-size:.75rem;font-weight:600;display:block}.compare-select-group select{border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);width:100%;color:var(--ds-text);background-color:var(--ds-surface);padding:.5rem .75rem;font-size:.9rem}.compare-select-group select:focus{border-color:var(--ds-accent);box-shadow:0 0 0 2px rgba(var(--ds-accent-rgb), .2);outline:none}.compare-modal-footer{border-top:1px solid var(--ds-border);justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.badge-icon-wrapper{background:#0003;border:2px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s;display:inline-flex;position:relative}.badge-icon-wrapper.badge-clickable{cursor:pointer}.badge-icon-wrapper.badge-clickable:hover{transform:scale(1.1)}.badge-icon-wrapper.badge-unearned{border-color:#4b5563!important}.badge-icon-wrapper.badge-unearned .badge-icon-img{opacity:.25;filter:grayscale()}.badge-icon-img{object-fit:contain;border-radius:50%}.badge-tier-dots{gap:2px;display:flex;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.badge-tier-pip{border:1.5px solid;border-radius:50%;width:8px;height:8px}.badge-tooltip{background:var(--ds-surface);border:1px solid var(--ds-border-strong);white-space:nowrap;text-align:center;z-index:100;color:var(--ds-text-secondary);pointer-events:none;border-radius:.5rem;padding:10px 12px 8px;font-size:12px;position:fixed;transform:translate(-50%)translateY(-100%);box-shadow:0 4px 12px #0006}.badge-tooltip:after{content:"";top:100%;left:calc(50% - var(--arrow-offset,0px));border:5px solid #0000;border-top-color:var(--ds-border-strong);position:absolute;transform:translate(-50%)}.badge-tooltip-below:after{border-top-color:#0000;border-bottom-color:var(--ds-border-strong);top:auto;bottom:100%}.badge-tooltip-preview{background:#0003;border:2px solid;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 6px;display:flex}.badge-tooltip-preview-img{object-fit:contain;width:60px;height:60px}.badge-tooltip strong{color:var(--ds-text)}.badge-tier-label{color:var(--ds-text-muted);text-transform:capitalize;font-weight:400}.badge-tooltip-desc{color:var(--ds-text-secondary);white-space:normal;max-width:200px;margin-top:2px;font-size:11px}.badge-tooltip-earners{color:var(--ds-text-muted);margin-top:3px;font-size:11px;font-style:italic}.badge-tooltip-scope{color:var(--ds-text-muted);margin-top:2px;font-size:10px}.badge-tooltip-won{color:var(--ds-text-secondary);margin-top:3px;font-size:11px;font-weight:600}.badge-tooltip-tiers{border-top:1px solid var(--ds-border);text-align:left;flex-direction:column;gap:3px;margin-top:6px;padding-top:6px;display:flex}.badge-tooltip-tier-row{color:var(--ds-text-secondary);align-items:center;gap:5px;font-size:11px;display:flex}.badge-tooltip-tier-row.tier-earned{color:var(--ds-text)}.badge-tooltip-tier-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.badge-tooltip-tier-name{text-transform:capitalize;min-width:40px;font-weight:600}.badge-tooltip-tier-desc{white-space:nowrap}.badge-grid-container{flex-direction:column;gap:20px;display:flex}.badge-grid-category-title{color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--ds-border);margin:0 0 8px;padding-bottom:6px;font-size:13px;font-weight:600}.badge-grid-items{flex-wrap:wrap;gap:12px;display:flex}.participant-bites{margin-bottom:2rem}.participant-bites h3{color:var(--ds-text);border-bottom:2px solid var(--ds-accent);margin:0 0 1rem;padding-bottom:.5rem;font-size:1.1rem}.participant-bites-strip-wrap{position:relative}.participant-bites-strip-wrap:before,.participant-bites-strip-wrap:after{content:"";z-index:1;pointer-events:none;opacity:0;width:56px;transition:opacity var(--ds-transition);position:absolute;top:0;bottom:0}.participant-bites-strip-wrap:before{background:linear-gradient(to right, var(--ds-bg), transparent);left:0}.participant-bites-strip-wrap:after{background:linear-gradient(to left, var(--ds-bg), transparent);right:0}.participant-bites-can-left:before,.participant-bites-can-right:after{opacity:1}.participant-bites-nav-btn{z-index:2;background:var(--ds-surface-elevated);border:1px solid var(--ds-border-strong);width:32px;height:32px;color:var(--ds-accent);cursor:pointer;transition:background var(--ds-transition);border-radius:50%;justify-content:center;align-items:center;font-size:20px;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #0006}.participant-bites-nav-btn:hover{background:var(--ds-surface-hover)}.participant-bites-nav-left{left:6px}.participant-bites-nav-right{right:6px}@media (hover:none){.participant-bites-nav-btn,.participant-bites-strip-wrap:before,.participant-bites-strip-wrap:after{display:none}}.participant-bites-strip{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:10px;display:flex;overflow-x:auto}.participant-bites-strip::-webkit-scrollbar{display:none}.participant-bites-mini{scroll-snap-align:start;background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);width:220px;transition:background var(--ds-transition);flex-direction:column;flex:none;gap:6px;padding:12px 14px;text-decoration:none;display:flex}.participant-bites-mini:hover{background:var(--ds-surface-hover);text-decoration:none}.participant-bites-mini-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--ds-accent);font-size:10px;font-weight:700}.participant-bites-mini-teaser{color:var(--ds-text);-webkit-line-clamp:5;-webkit-box-orient:vertical;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.participant-bites-mini-foot{justify-content:space-between;align-items:baseline;gap:8px;margin-top:auto;display:flex}.participant-bites-mini-date{color:var(--ds-text-muted);font-size:11px}.participant-bites-mini-cta{color:var(--ds-accent);font-size:13px;font-weight:700}.participant-bites-more{justify-content:center;align-items:center}.participant-bites-more-count{font-family:var(--ds-font-num);font-variant-numeric:tabular-nums;color:var(--ds-accent);font-size:22px;font-weight:700}.participant-bites-more-label{color:var(--ds-text-secondary);font-size:12px;font-weight:600}.participant-predictions-container{max-width:1200px;margin:0 auto;padding:0}.predictions-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.predictions-header h2{color:var(--ds-text);margin:0;font-size:1.5rem}.back-to-leaderboard{color:var(--ds-text-secondary);font-size:.9rem;text-decoration:none}.back-to-leaderboard:hover{color:var(--ds-accent)}.points-summary-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding:1rem;display:flex;box-shadow:0 2px 8px #0000004d}.summary-item{border-right:1px solid var(--ds-border);flex-direction:column;flex:1;align-items:center;min-width:80px;padding:.75rem 1rem;display:flex}.summary-item:last-child{border-right:none}.summary-item.total{background-color:var(--ds-controls-bg);border-radius:var(--ds-radius-sm);border-right:none}.summary-label{color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem;font-size:.7rem}.summary-value{color:var(--ds-text);font-size:1.25rem;font-weight:600}.summary-value.points-1x2{color:var(--ds-accent)}.summary-value.points-correct{color:#0d9488}.summary-value.points-strikers{color:var(--ds-success)}.summary-value.points-top4,.summary-value.points-joker{color:var(--ds-warning)}.special-predictions-row{gap:1rem;margin-bottom:1.5rem;display:flex}.compact-section{background-color:var(--ds-surface);border-radius:var(--ds-radius);flex:1;padding:.75rem 1rem;box-shadow:0 2px 8px #0000004d}.compact-section h4{text-transform:uppercase;letter-spacing:.5px;color:var(--ds-text-secondary);margin:0 0 .5rem;font-size:.8rem}.compact-hidden,.compact-empty{color:var(--ds-text-muted);font-size:.85rem;font-style:italic}.compact-strikers-list,.compact-top4-list{flex-direction:column;gap:.35rem;display:flex}.compact-striker-header{color:var(--ds-text-secondary);text-transform:uppercase;border-bottom:1px solid var(--ds-border);align-items:center;gap:.5rem;margin-bottom:.125rem;padding-bottom:.25rem;font-size:.75rem;font-weight:600;display:flex}.compact-striker-item,.compact-top4-item{align-items:center;gap:.5rem;font-size:.9rem;display:flex}.compact-order{color:var(--ds-text-secondary);min-width:16px;font-weight:500}.compact-player-name,.compact-team-name{color:var(--ds-text);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.compact-goals{color:var(--ds-success);font-size:.85rem;font-weight:600}.compact-position{border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;font-weight:600;display:inline-flex}.compact-position.gold{color:#333;background-color:gold}.compact-position.silver{color:#333;background-color:silver}.compact-position.bronze{color:#333;background-color:#cd7f32}.compact-position.fourth{background-color:var(--ds-border-strong);color:var(--ds-text)}.t4-name-wrap{flex:1;align-items:center;gap:.4rem;min-width:0;display:flex}.t4-name-wrap .compact-team-name{flex:0 auto}.compact-points{text-align:right;font-variant-numeric:tabular-nums;min-width:2.6em;margin-left:auto;padding-left:.5rem;font-size:.85rem;font-weight:600}.compact-points.perfect{color:var(--ds-warning)}.compact-points.partial,.compact-points.zero{color:var(--ds-top4-orange)}.points-icon{text-align:center;cursor:help;width:1.3em;margin-left:.25rem;font-size:.9rem;display:inline-block}.points-icon.scored{color:var(--ds-top4-orange)}.points-icon.dead{color:var(--ds-danger)}.compact-points.perfect+.points-icon{color:var(--ds-warning)}.rank-evolution-section{flex-direction:column;min-height:200px;display:flex}.rank-evolution-header{justify-content:space-between;align-items:center;display:flex}.compare-link{color:var(--ds-accent);cursor:pointer;font-size:.75rem}.compare-link:hover{text-decoration:underline}.participant-badges-section{background-color:var(--ds-surface);border-radius:var(--ds-radius);margin-bottom:1.5rem;padding:1rem;box-shadow:0 2px 8px #0000004d}.participant-badges-section h3{color:var(--ds-text);border-bottom:2px solid var(--ds-accent);margin:0 0 .75rem;padding-bottom:.5rem;font-size:1.1rem}.predictions-section{margin-bottom:2rem}.predictions-section h3{color:var(--ds-text);border-bottom:2px solid var(--ds-accent);margin-bottom:1rem;padding-bottom:.5rem;font-size:1.1rem}.round-predictions-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);margin-bottom:.75rem;overflow:hidden;box-shadow:0 2px 8px #0000004d}.round-header-clickable{cursor:pointer;background-color:var(--ds-controls-bg);justify-content:space-between;align-items:center;padding:1rem;transition:background-color .2s;display:flex}.round-header-clickable:hover{background-color:var(--ds-surface-hover)}.round-name{color:var(--ds-accent);align-items:center;gap:.5rem;font-weight:600;display:flex}.round-stats{color:var(--ds-text-secondary);font-size:.9rem}.hidden-badge{color:var(--ds-text-secondary);font-size:.8rem;font-style:italic}.expand-icon{color:var(--ds-text-secondary);text-align:center;flex-shrink:0;width:16px;font-size:.75rem}.predictions-table-container{padding:0;overflow-x:auto}.predictions-cards-mobile{display:none}.predictions-table{border-collapse:collapse;width:100%}.predictions-table th,.predictions-table td{text-align:center;border-bottom:1px solid var(--ds-border);padding:.75rem 1rem}.predictions-table th{background-color:var(--ds-controls-bg);text-transform:uppercase;color:var(--ds-text-secondary);letter-spacing:.5px;font-size:.75rem;font-weight:600}.predictions-table tbody tr:hover{background-color:var(--ds-surface-hover)}.predictions-table tbody tr:last-child td{border-bottom:none}.match-cell{text-align:left}.match-teams-inline{flex-wrap:nowrap;align-items:center;gap:.4rem;display:flex}.team-flag-sm{object-fit:cover;border-radius:2px;width:20px;height:14px;box-shadow:0 0 0 1px #ffffff1a}.team-name-full{font-size:.9rem;font-weight:500}.team-name-abbr{font-size:.9rem;font-weight:500;display:none}.vs{color:var(--ds-text-muted);margin:0 .25rem;font-size:.75rem}.prediction-cell,.result-cell{font-size:.95rem;font-weight:600}.result-cell .pending{color:var(--ds-text-muted)}.outcome-badge{border-radius:.25rem;min-width:28px;padding:.25rem .5rem;font-size:.8rem;font-weight:600;display:inline-block}.outcome-badge.correct{background-color:rgba(var(--ds-success-rgb), .15);color:var(--ds-success)}.outcome-badge.incorrect{background-color:rgba(var(--ds-danger-rgb), .15);color:var(--ds-danger)}.outcome-badge.pending{color:var(--ds-text-muted);background-color:#ffffff0d}.exact-badge{border-radius:.25rem;padding:.2rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.exact-badge.correct{background-color:rgba(var(--ds-success-rgb), .15);color:var(--ds-success)}.exact-badge.incorrect{color:var(--ds-text-muted);background-color:#ffffff0d}.exact-badge.pending{color:var(--ds-text-muted);background-color:#ffffff08}.points-cell-value{color:var(--ds-accent);font-weight:600}.no-predictions{text-align:center;color:var(--ds-text-secondary);padding:1.5rem;font-style:italic}.strikers-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.striker-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);align-items:center;gap:1rem;padding:1rem;display:flex;box-shadow:0 2px 8px #0000004d}.striker-order{color:var(--ds-accent);min-width:36px;font-size:1.25rem;font-weight:700}.striker-info{flex:1;align-items:center;gap:.75rem;display:flex}.striker-photo{object-fit:cover;background-color:var(--ds-border-strong);border-radius:50%;width:48px;height:48px}.striker-details{flex:1}.striker-name{color:var(--ds-text);margin-bottom:.25rem;font-weight:600}.striker-team{color:var(--ds-text-secondary);align-items:center;gap:.4rem;font-size:.85rem;display:flex}.team-flag-xs{object-fit:cover;border-radius:2px;width:16px;height:11px;box-shadow:0 0 0 1px #ffffff1a}.striker-goals{border-left:1px solid var(--ds-border);flex-direction:column;align-items:center;padding-left:1rem;display:flex}.goals-count{color:var(--ds-success);font-size:1.5rem;font-weight:700}.goals-label{color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.65rem}.top-teams-comparison{background-color:var(--ds-surface);border-radius:var(--ds-radius);overflow:hidden;box-shadow:0 2px 8px #0000004d}.top-teams-table{border-collapse:collapse;width:100%}.top-teams-table th,.top-teams-table td{text-align:left;border-bottom:1px solid var(--ds-border);padding:1rem}.top-teams-table th{background-color:var(--ds-controls-bg);text-transform:uppercase;color:var(--ds-text-secondary);font-size:.75rem;font-weight:600}.top-teams-table tbody tr:last-child td{border-bottom:none}.position-cell-top4{align-items:center;gap:.75rem;display:flex}.position-icon{border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.75rem;font-weight:700;display:inline-flex}.position-icon.gold{color:#b8860b;background-color:gold}.position-icon.silver{color:#696969;background-color:silver}.position-icon.bronze{color:#8b4513;background-color:#cd7f32}.position-icon.fourth{background-color:var(--ds-border-strong);color:var(--ds-text)}.position-label{color:var(--ds-text);font-weight:500}.team-cell{align-items:center;gap:.5rem;display:flex}.points-cell-top4{text-align:center;font-weight:600}.points-correct{color:var(--ds-success)}.points-partial{color:var(--ds-warning)}.points-zero{color:var(--ds-text-muted)}.hidden-section{text-align:center;color:var(--ds-text-secondary);background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px dashed var(--ds-border-strong);padding:2rem;font-style:italic}.no-data{text-align:center;color:var(--ds-text-secondary);background-color:var(--ds-surface);border-radius:var(--ds-radius);padding:2rem;box-shadow:0 2px 8px #0000004d}@media (width<=768px){.predictions-header{flex-direction:column;align-items:flex-start}.points-summary-card{flex-flow:wrap}.summary-item{border-right:none;border-bottom:1px solid var(--ds-border);flex:calc(50% - .5rem);padding:.5rem}.summary-item:nth-child(odd){border-right:1px solid var(--ds-border)}.summary-item:nth-last-child(-n+2){border-bottom:none}.summary-item.total{flex:100%;margin-top:.5rem}.special-predictions-row{flex-direction:column}.predictions-table-container{display:none}.predictions-cards-mobile{flex-direction:column;gap:.5rem;padding:.75rem;display:flex}}.predictions-table tbody tr.prediction-incorrect{background-color:#ef44441f}.predictions-table tbody tr.prediction-incorrect:hover{background-color:#ef44442e}.predictions-table tbody tr.prediction-correct{background-color:#22c55e1f}.predictions-table tbody tr.prediction-correct:hover{background-color:#22c55e2e}.predictions-table tbody tr.prediction-exact{background-color:#16a34a40}.predictions-table tbody tr.prediction-exact:hover{background-color:#16a34a52}.badge-catalog-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.badge-catalog-header h1{color:var(--ds-text);margin:0;font-size:1.5rem}.badge-progress{align-items:center;gap:.75rem;display:flex}.badge-progress-count{color:var(--ds-text-secondary);white-space:nowrap;font-size:.9rem;font-weight:600}.badge-progress-bar{background-color:var(--ds-border-strong);border-radius:4px;width:120px;height:8px;overflow:hidden}.badge-progress-fill{background:linear-gradient(90deg, var(--ds-accent), var(--ds-success));border-radius:4px;height:100%;transition:width .5s}.badge-rarity-legend{background-color:#0000;border-radius:.5rem;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;padding:.75rem 1rem .75rem 0;display:flex}.rarity-chip{color:var(--ds-text-secondary);text-transform:capitalize;border:1.5px solid var(--ds-border-strong);background-color:#0000;border-radius:1rem;align-items:center;gap:.4rem;padding:.25rem .6rem;font-size:.8rem;display:inline-flex}.rarity-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.badge-catalog-login-hint{text-align:center;color:var(--ds-text-muted);margin-top:2rem;padding:1rem;font-size:.9rem;font-style:italic}@media (width<=480px){.badge-catalog-header{flex-direction:column;align-items:flex-start;gap:.75rem}.badge-catalog-header h1{font-size:1.25rem}.badge-progress{width:100%}.badge-progress-bar{flex:1}.badge-rarity-legend{gap:.5rem}.rarity-chip{padding:.2rem .5rem;font-size:.75rem}}.match-detail-container{max-width:800px;margin:0 auto;padding:1rem 0}.match-detail-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.back-link{cursor:pointer;color:var(--ds-accent);background:0 0;border:none;padding:0;font-size:.9rem;font-weight:500}.back-link:hover{text-decoration:underline}.match-round-badge{background:var(--ds-controls-bg);color:var(--ds-text-secondary);border-radius:1rem;padding:.25rem .75rem;font-size:.8rem;font-weight:500}.match-detail-card{background:var(--ds-surface);border-radius:var(--ds-radius);margin-bottom:1.5rem;padding:1rem 1.5rem;box-shadow:0 4px 12px #0000004d}.match-score-display{flex-direction:column;align-items:center;gap:.25rem;display:flex}.match-teams-row{justify-content:center;align-items:center;gap:.75rem;width:100%;display:flex}.team-display{flex:1;align-items:center;gap:.5rem;display:flex}.team-display.home{text-align:right;justify-content:flex-end}.team-display.away{text-align:left;justify-content:flex-start}.team-flag-large{object-fit:cover;border-radius:2px;width:32px;height:21px;box-shadow:0 0 0 1px #ffffff1a}.team-name{color:var(--ds-text);font-size:1.5rem;font-weight:700}.final-score{align-items:center;gap:.25rem;display:flex}.score-home,.score-away{color:var(--ds-text);font-size:1.5rem;font-weight:700}.score-separator{color:var(--ds-text-secondary);font-size:1.25rem;position:relative;top:-.5em}.final-score .score-separator{position:static;top:auto}.score-placeholder{color:var(--ds-text-muted);padding:0 .5rem;font-size:1rem;font-weight:500}.match-datetime{color:var(--ds-text-secondary);text-align:center;font-size:.8rem}.predictions-stats-section{background:var(--ds-surface);border-radius:var(--ds-radius);overflow:hidden;box-shadow:0 2px 8px #0000004d}.stats-header{background:var(--ds-controls-bg);border-bottom:1px solid var(--ds-border-strong);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.stats-header h2{color:var(--ds-text);margin:0;font-size:1.1rem;font-weight:600}.total-predictions{color:var(--ds-text-secondary);font-size:.9rem;font-weight:500}.outcome-distribution{border-bottom:1px solid var(--ds-border-strong);padding:1.5rem}.outcome-distribution h3{color:var(--ds-text-secondary);margin:0 0 1rem;font-size:.9rem;font-weight:600}.outcome-bars{flex-direction:column;gap:.75rem;display:flex}.outcome-bar-item{grid-template-columns:100px 1fr 50px;align-items:center;gap:.75rem;display:grid}.outcome-bar-item-clickable{cursor:pointer;border-radius:6px;margin:-.5rem;padding:.5rem;transition:background-color .2s}.outcome-bar-item-clickable:hover{background-color:var(--ds-surface-hover)}.outcome-label{justify-content:space-between;align-items:center;display:flex}.outcome-name{color:var(--ds-text-secondary);font-size:.85rem;font-weight:500}.outcome-count{color:var(--ds-text-muted);font-size:.75rem}.outcome-bar-container{background:#ffffff0f;border-radius:4px;height:24px;overflow:hidden}.outcome-bar{border-radius:4px;height:100%;transition:width .3s}.outcome-bar.home-win{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.outcome-bar.draw{background:linear-gradient(90deg,#6b7280,#9ca3af)}.outcome-bar.away-win{background:linear-gradient(90deg,#ef4444,#f87171)}.outcome-percentage{color:var(--ds-text);text-align:right;font-size:.85rem;font-weight:600}.outcome-bar-item.outcome-actual{background-color:rgba(var(--ds-success-rgb), .15);border-left:3px solid var(--ds-success);padding-left:calc(.5rem - 3px)}.outcome-bar-item.outcome-actual:hover{background-color:rgba(var(--ds-success-rgb), .22)}.score-distribution{border-bottom:1px solid var(--ds-border-strong);padding:1.5rem}.score-distribution h3{color:var(--ds-text-secondary);margin:0 0 1rem;font-size:.9rem;font-weight:600}.score-distribution-list{flex-direction:column;gap:.5rem;display:flex}.score-distribution-item{background:#ffffff08;border-radius:6px;grid-template-columns:30px 50px 120px 1fr;align-items:center;gap:.75rem .5rem;padding:.5rem;display:grid}.score-distribution-item-clickable{cursor:pointer;transition:background-color .2s}.score-distribution-item-clickable:hover{background-color:var(--ds-surface-hover)}.score-distribution-item.score-actual{background-color:rgba(var(--ds-success-rgb), .15);border-left:3px solid var(--ds-success);padding-left:calc(.5rem - 3px)}.score-distribution-item.score-actual:hover{background-color:rgba(var(--ds-success-rgb), .22)}.score-rank{color:var(--ds-text-muted);font-size:.75rem;font-weight:500}.predicted-score{color:var(--ds-text);font-size:.95rem;font-weight:600}.prediction-count{color:var(--ds-text-secondary);font-size:.8rem}.prediction-count-link{color:var(--ds-accent);white-space:nowrap;text-align:left;justify-self:start;font-weight:600}.score-bar-container{background:var(--ds-border-strong);border-radius:4px;height:8px;overflow:hidden}.score-bar{background:linear-gradient(90deg,#10b981,#34d399);border-radius:4px;height:100%}.more-scores{color:var(--ds-text-secondary);text-align:center;padding:.5rem;font-size:.85rem}.no-predictions{text-align:center;color:var(--ds-text-secondary);padding:2rem}.view-all-predictions{text-align:center;padding:1.25rem 1.5rem}.predictions-hidden{background:var(--ds-surface);border-radius:var(--ds-radius);text-align:center;padding:3rem 2rem;box-shadow:0 2px 8px #0000004d}.hidden-icon{margin-bottom:1rem;font-size:3rem}.predictions-hidden h3{color:var(--ds-text-secondary);margin:0 0 .5rem;font-size:1.25rem}.predictions-hidden p{color:var(--ds-text-secondary);margin:0}.match-detail-container .modal-overlay{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.match-detail-container .modal-content{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border-strong);flex-direction:column;width:90%;max-width:400px;max-height:80vh;display:flex;box-shadow:0 4px 20px #00000080}.match-detail-container .modal-header{border-bottom:1px solid var(--ds-border-strong);background:0 0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.match-detail-container .modal-header h3{color:var(--ds-text);margin:0;font-size:1.1rem}.match-detail-container .modal-close{color:var(--ds-text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.match-detail-container .modal-close:hover{color:var(--ds-text);background:0 0}.match-detail-container .modal-body{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;padding:1rem 1.25rem;overflow-y:auto}.match-detail-container .modal-body::-webkit-scrollbar{width:6px}.match-detail-container .modal-body::-webkit-scrollbar-track{background:0 0}.match-detail-container .modal-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.match-detail-container .modal-body::-webkit-scrollbar-thumb:hover{background:#ffffff40}.predictions-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.predictions-list li a,.predictions-list li .pred-row{color:var(--ds-text);border-radius:.25rem;align-items:center;gap:.75rem;padding:.5rem .75rem;text-decoration:none;transition:background-color .2s;display:flex}.predictions-list li a:hover{background-color:var(--ds-surface-hover)}.pred-username{flex:1}.pred-score{color:var(--ds-text-secondary);text-align:center;min-width:40px}.pred-points{color:var(--ds-text-secondary);text-align:right;min-width:45px;font-size:.85rem}.pred-points.has-points{color:var(--ds-success);font-weight:600}@media (width<=768px){.match-detail-container{padding:.5rem}.match-detail-card{padding:.75rem 1rem}.match-teams-row{gap:.5rem}.team-flag-large{width:24px;height:16px}.team-name,.score-home,.score-away{font-size:1.25rem}.score-separator{font-size:1rem}.outcome-bar-item{grid-template-columns:80px 1fr 40px;gap:.5rem}.score-distribution-item{grid-template-columns:25px 45px 80px 1fr;gap:.5rem;padding:.375rem}.match-detail-container .modal-content{max-height:90vh}}.team-detail-container{max-width:1200px;margin:0 auto;padding:0}.team-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.team-detail-header h2{color:var(--ds-text);align-items:center;gap:.75rem;margin:0;font-size:1.5rem;display:flex}.team-detail-header .team-logo{object-fit:contain;border-radius:.375rem;width:36px;height:36px}.team-detail-position{color:var(--ds-text-secondary);font-size:1.1rem;font-weight:600}.team-detail-row{gap:1rem;margin-bottom:1.5rem;display:flex}.team-members-section{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);flex:1.2;padding:.75rem 1rem}.team-members-section h4{text-transform:uppercase;letter-spacing:.5px;color:var(--ds-text-secondary);margin:0 0 .5rem;font-size:.8rem}.team-members-table{border-collapse:collapse;width:100%}.team-members-table th,.team-members-table td{text-align:center;border-bottom:1px solid var(--ds-border);color:var(--ds-text);padding:.5rem .75rem;font-size:.85rem}.team-members-table th{text-transform:uppercase;color:var(--ds-text-secondary);letter-spacing:.5px;font-size:.7rem;font-weight:600}.team-members-table tbody tr:last-child td{border-bottom:none}.team-members-table tbody tr:hover{background-color:var(--ds-surface-hover)}.team-members-table tbody tr.current-user-row{background-color:#3b82f614}.team-members-table .member-name-cell{text-align:left}.team-members-table .member-name-cell a{color:var(--ds-text);font-weight:500;text-decoration:none}.team-members-table .member-name-cell a:hover{color:var(--ds-accent);text-decoration:underline}.team-members-table .member-position{color:var(--ds-text-secondary);font-size:.8rem;font-weight:600}.team-members-table .member-total{font-weight:700}.team-rank-evolution-section{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);flex-direction:column;flex:1;min-height:200px;padding:.75rem 1rem;display:flex}.team-rank-evolution-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.team-rank-evolution-header h4{text-transform:uppercase;letter-spacing:.5px;color:var(--ds-text-secondary);margin:0;font-size:.8rem}.team-members-cards-mobile{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:none}.team-member-card{border-bottom:1px solid var(--ds-border);align-items:center;gap:.75rem;padding:.75rem;display:flex}.team-member-card:last-child{border-bottom:none}.team-member-card.current-user-row{background-color:#3b82f614;border-radius:.375rem}.team-member-card .member-card-rank{color:var(--ds-text-muted);text-align:center;min-width:28px;font-size:.8rem;font-weight:700}.team-member-card .member-card-main{flex:1;min-width:0}.team-member-card .member-card-name{color:var(--ds-text);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.team-member-card .member-card-name a{color:inherit;text-decoration:none}.team-member-card .member-card-name a:hover{color:var(--ds-accent)}.team-member-card .member-card-points{color:var(--ds-text-secondary);gap:.5rem;margin-top:.125rem;font-size:.75rem;display:flex}.team-member-card .member-card-total{color:var(--ds-text);text-align:right;min-width:40px;font-size:.95rem;font-weight:700}@media (width<=768px){.team-detail-header{flex-direction:column;align-items:flex-start}.team-detail-row{flex-direction:column}.team-members-table-container{display:none}.team-members-cards-mobile{display:flex}}.team-members-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.team-readiness-controls{align-items:center;gap:12px;display:flex}.team-readiness-summary{font-family:var(--ds-font-num);color:var(--ds-text-secondary);font-size:.85rem;font-weight:600}.team-copy-not-ready{background:var(--ds-surface-hover);color:var(--ds-text);border:1px solid var(--ds-border);border-radius:var(--ds-radius);cursor:pointer;padding:5px 12px;font-size:.8rem;font-weight:600;transition:background .15s,border-color .15s}.team-copy-not-ready:hover{background:var(--ds-surface-highlight);border-color:var(--ds-border-strong)}.team-readiness-value{font-family:var(--ds-font-num);font-weight:600}.team-readiness-value--complete{color:var(--ds-success)}.team-readiness-value--incomplete{color:var(--ds-warning)}.team-ready-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:.76rem;font-weight:700;display:inline-flex}.team-ready-badge--yes{color:var(--ds-success);background:rgba(var(--ds-success-rgb), .12)}.team-ready-badge--no{color:var(--ds-warning);background:rgba(var(--ds-warning-rgb), .12)}.team-members-table tbody tr.not-ready-row{background:rgba(var(--ds-warning-rgb), .06)}.team-members-table tbody tr.current-user-row.not-ready-row{box-shadow:inset 3px 0 0 var(--ds-accent)}.team-member-card.not-ready-row{border-left:3px solid var(--ds-warning)}.faq-accordion{flex-direction:column;gap:.5rem;display:flex}.faq-item{background-color:var(--ds-surface);border-radius:var(--ds-radius-sm);overflow:hidden;box-shadow:0 1px 3px #0000004d}.faq-question{cursor:pointer;text-align:left;width:100%;color:var(--ds-text);transition:background-color var(--ds-transition);background:0 0;border:none;justify-content:space-between;align-items:center;padding:1rem 1.25rem;font-size:1rem;font-weight:500;display:flex}.faq-question:hover,.faq-item-open .faq-question{background-color:var(--ds-surface-hover)}.faq-icon{color:var(--ds-accent);flex-shrink:0;margin-left:1rem;font-size:1.25rem;font-weight:300}.faq-answer-wrapper{max-height:0;transition:max-height .3s;overflow:hidden}.faq-item-open .faq-answer-wrapper{max-height:500px}.faq-answer{color:var(--ds-text-secondary);padding:0 1.25rem 1.25rem;line-height:1.6}@media (width<=768px){.faq-question{padding:.875rem 1rem;font-size:.95rem}.faq-answer{padding:0 1rem 1rem}}.tournament-landing{--io-blue:#0000d2;--io-blue-dark:#0000a8;--io-ink:#232323;--io-ease:cubic-bezier(.22, 1, .36, 1);max-width:100%}.landing-hero{background:linear-gradient(135deg, rgba(var(--ds-accent-rgb), .6) 0%, #0a0e14d9 100%);color:#fff;border-radius:var(--ds-radius);justify-content:center;align-items:center;min-height:350px;margin-bottom:3rem;padding:4rem 2rem;display:flex;position:relative;overflow:hidden}.hero-image-container{position:absolute;inset:0}.hero-image{object-fit:cover;width:100%;height:100%}.hero-overlay{background:linear-gradient(135deg, rgba(var(--ds-accent-rgb), .5) 0%, #0a0e14b3 100%);position:absolute;inset:0}.hero-content{z-index:1;text-align:center;max-width:700px;position:relative}.hero-title{text-shadow:0 2px 4px #0003;margin-bottom:1rem;font-size:2.75rem;font-weight:700}.hero-tagline{opacity:.95;margin-bottom:1.5rem;font-size:1.25rem;line-height:1.6}.hero-meta{opacity:.9;justify-content:center;gap:2rem;margin-bottom:2rem;font-size:.95rem;display:flex}.hero-dates,.hero-participants{align-items:center;gap:.5rem;display:flex}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.btn-lg{padding:.875rem 2rem;font-size:1.1rem}.btn-outline{color:#fff;background:0 0;border:2px solid #fff}.btn-outline:hover{background:#ffffff1a}.landing-section{background:var(--ds-surface);border-radius:var(--ds-radius);margin-bottom:3rem;padding:2rem;box-shadow:0 2px 8px #0000004d}.tournament-landing .section-title{color:var(--ds-text);text-align:center;text-transform:none;letter-spacing:normal;margin:0 0 2rem;font-size:1.75rem;font-weight:700;display:block}.features-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.feature-card{text-align:center;border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);transition:transform var(--ds-transition), box-shadow var(--ds-transition);background:0 0;padding:1.5rem}.feature-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0006}.feature-icon{margin-bottom:1rem;font-size:2.5rem;display:block}.feature-card h3{color:var(--ds-text);margin-bottom:.5rem;font-size:1.1rem}.feature-card p{color:var(--ds-text-secondary);font-size:.95rem;line-height:1.5}.rules-content{max-width:800px;margin:0 auto}.landing-faq{max-width:800px;margin-left:auto;margin-right:auto}.landing-cta{background:linear-gradient(135deg, rgba(var(--ds-accent-rgb), .6) 0%, #0a0e14d9 100%);color:#fff;text-align:center;border-radius:var(--ds-radius);margin-bottom:2rem;padding:3rem 2rem}.landing-cta h2{margin-bottom:.75rem;font-size:1.75rem}.landing-cta p{opacity:.9;margin-bottom:1.5rem;font-size:1.1rem}.landing-cta .cta-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}@media (width<=768px){.landing-hero{min-height:300px;padding:3rem 1.5rem}.hero-title{font-size:2rem}.hero-tagline{font-size:1.1rem}.hero-meta{flex-direction:column;gap:.5rem}.hero-actions{flex-direction:column}.btn-lg{width:100%;max-width:300px}.landing-section{padding:1.5rem}.tournament-landing .section-title{font-size:1.5rem}.landing-cta{padding:2rem 1.5rem}.landing-cta .cta-buttons{flex-direction:column;align-items:center}}.landing-promoted-messages{margin-bottom:3rem}.promoted-messages-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.promoted-message-card{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);padding:1.5rem;transition:all .2s;box-shadow:0 1px 3px #0000004d}.promoted-message-card:hover{border-color:var(--ds-border);box-shadow:0 4px 6px #0006}.promoted-message-title{color:var(--ds-accent);margin:0 0 1rem;font-size:1.25rem;font-weight:600}.promoted-message-content{color:var(--ds-text);margin-bottom:1rem;line-height:1.6}.promoted-message-content p{margin:.5rem 0}.promoted-message-meta{border-top:1px solid var(--ds-border);color:var(--ds-text-secondary);align-items:center;gap:.5rem;padding-top:1rem;font-size:.875rem;display:flex}.promoted-author{font-weight:500}.meta-divider,.promoted-date{color:var(--ds-text-muted)}.landing-hero.hero-brand-io{--io-beige:#dccfc2;--io-fg-muted:#747474;background:var(--io-beige);color:var(--io-ink);min-height:420px;box-shadow:none;text-align:left;border-radius:32px;justify-content:flex-start;padding:4rem;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:500}.landing-hero.hero-brand-io .io-blue-line--desktop{aspect-ratio:1;width:46%;min-width:320px;max-width:560px;color:var(--io-blue);pointer-events:none;z-index:0;position:absolute;top:-8%;right:-6%}.landing-hero.hero-brand-io .io-blue-line--mobile{width:200%;height:85%;color:var(--io-blue);pointer-events:none;z-index:0;display:none;position:absolute;top:-36%;left:-50%}.landing-hero.hero-brand-io .io-blue-line--mobile path{stroke-width:18px}.landing-hero.hero-brand-io .hero-overlay{background:linear-gradient(180deg, #dccfc200 0%, #dccfc2a6 60%, var(--io-beige) 100%)}.landing-hero.hero-brand-io .hero-content{text-align:left;max-width:880px;margin-left:0}.landing-hero.hero-brand-io .io-logo{width:53px;height:36px;color:var(--io-ink);flex-shrink:0;margin-bottom:2.5rem;display:block;overflow:visible}.landing-hero.hero-brand-io .hero-title{letter-spacing:-.02em;color:var(--io-ink);text-shadow:none;max-width:14ch;margin-bottom:2rem;font-family:Manrope,sans-serif;font-size:clamp(48px,6vw,72px);font-weight:500;line-height:1.1}.landing-hero.hero-brand-io .hero-title-accent{color:var(--io-blue);font-weight:600}.landing-hero.hero-brand-io .hero-tagline{color:var(--io-fg-muted);opacity:1;max-width:56ch;margin-bottom:2rem;font-size:clamp(18px,1.6vw,22px);line-height:1.5}.landing-hero.hero-brand-io .hero-meta{letter-spacing:.04em;text-transform:uppercase;color:var(--io-ink);opacity:1;justify-content:flex-start;gap:1.5rem;font-size:14px}.landing-hero.hero-brand-io .hero-actions{justify-content:flex-start}.landing-hero.hero-brand-io .btn:hover{transform:none}.landing-hero.hero-brand-io .btn-primary{background:var(--io-blue);color:#fff;letter-spacing:0;text-transform:none;box-shadow:none;transition:background-color .24s var(--io-ease);border:0;border-radius:9999px;align-items:center;gap:8px;padding:16px 28px;font-family:inherit;font-size:18px;font-weight:600;line-height:1;display:inline-flex}.landing-hero.hero-brand-io .btn-primary:hover{background:var(--io-blue-dark)}.landing-hero.hero-brand-io .btn-primary:focus-visible{outline-offset:2px;outline:2px solid #0000d259}.landing-hero.hero-brand-io .btn-outline{color:var(--io-ink);border:1.5px solid var(--io-ink);text-transform:none;letter-spacing:0;transition:background-color .24s var(--io-ease), color .24s var(--io-ease);background:0 0;border-radius:9999px;align-items:center;padding:14.5px 28px;font-family:inherit;font-size:18px;font-weight:600;line-height:1;display:inline-flex}.landing-hero.hero-brand-io .btn-outline:hover{background:var(--io-ink);color:#fff}.landing-hero.hero-brand-io .btn-secondary{color:var(--io-fg-muted);background:0 0;border:1.5px solid #ccc;border-radius:9999px}.landing-hero.hero-brand-io .io-arrow{transition:transform .24s var(--io-ease)}.landing-hero.hero-brand-io .btn-primary:hover .io-arrow{transform:translate(8px)}@media (width<=1024px){.landing-hero.hero-brand-io .io-blue-line--desktop{display:none}.landing-hero.hero-brand-io .io-blue-line--mobile{display:block}}@media (width<=768px){.landing-hero.hero-brand-io{text-align:left;min-height:320px;padding:2rem}.landing-hero.hero-brand-io .hero-title{max-width:none;font-size:clamp(40px,11vw,56px)}.landing-hero.hero-brand-io .hero-meta{flex-direction:column;gap:.5rem}.landing-hero.hero-brand-io .io-blue-line--mobile path{stroke-width:14px}}.landing-cta.cta-brand-io{background:var(--io-blue);color:#fff;text-align:left;border-radius:32px;padding:4rem;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.landing-cta.cta-brand-io h2{letter-spacing:-.02em;color:#fff;max-width:22ch;margin-bottom:1.25rem;font-family:Manrope,sans-serif;font-size:clamp(40px,5vw,56px);font-weight:500;line-height:1.1}.landing-cta.cta-brand-io p{color:#ffffffd9;opacity:1;max-width:56ch;margin-bottom:2rem;font-size:clamp(18px,1.6vw,22px);line-height:1.5}.landing-cta.cta-brand-io .cta-buttons{justify-content:flex-start}.landing-cta.cta-brand-io .btn-primary{color:var(--io-blue);letter-spacing:0;text-transform:none;box-shadow:none;transition:background-color .24s var(--io-ease), color .24s var(--io-ease);background:#fff;border:0;border-radius:9999px;align-items:center;gap:8px;padding:16px 28px;font-family:inherit;font-size:18px;font-weight:600;line-height:1;display:inline-flex}.landing-cta.cta-brand-io .btn-primary:hover{background:var(--io-ink);color:#fff}.landing-cta.cta-brand-io .btn-primary:focus-visible{outline-offset:2px;outline:2px solid #fff9}.landing-cta.cta-brand-io .btn-outline{color:#fff;text-transform:none;letter-spacing:0;transition:background-color .24s var(--io-ease), color .24s var(--io-ease);background:0 0;border:1.5px solid #fff;border-radius:9999px;align-items:center;padding:14.5px 28px;font-family:inherit;font-size:18px;font-weight:600;line-height:1;display:inline-flex}.landing-cta.cta-brand-io .btn-outline:hover{color:var(--io-blue);background:#fff}.landing-cta.cta-brand-io .btn:hover{transform:none}.landing-cta.cta-brand-io .io-arrow{transition:transform .24s var(--io-ease)}.landing-cta.cta-brand-io .btn-primary:hover .io-arrow{transform:translate(8px)}@media (width<=768px){.landing-cta.cta-brand-io{padding:2rem}.landing-cta.cta-brand-io h2{max-width:none;font-size:clamp(32px,8vw,40px)}.landing-cta.cta-brand-io .cta-buttons{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){.landing-hero.hero-brand-io .btn-primary,.landing-hero.hero-brand-io .btn-outline,.landing-hero.hero-brand-io .io-arrow,.landing-cta.cta-brand-io .btn-primary,.landing-cta.cta-brand-io .btn-outline,.landing-cta.cta-brand-io .io-arrow{transition:none}}.invite-container{justify-content:center;align-items:center;min-height:80vh;padding:2rem 1rem;display:flex}.invite-card{background-color:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);text-align:center;width:100%;max-width:450px;padding:2rem;box-shadow:0 4px 6px #0000004d}.invite-card.invite-error{border-top:4px solid var(--ds-danger)}.invite-header h2{color:var(--ds-accent);margin-bottom:.5rem}.invite-from{color:var(--ds-text-secondary);margin-bottom:1.5rem}.invite-tournament{background-color:var(--ds-surface-hover);border-radius:var(--ds-radius);margin-bottom:1.5rem;padding:1.5rem}.invite-tournament h3{color:var(--ds-text);margin:0 0 .5rem;font-size:1.25rem}.tournament-date{color:var(--ds-text-secondary);margin:0;font-size:.9rem}.landing-page-link{color:var(--ds-accent);cursor:pointer;background:0 0;border:none;margin-top:.75rem;padding:0;font-size:.9rem;text-decoration:none;display:inline-block}.landing-page-link:hover{text-decoration:underline}.invite-actions{margin-top:1.5rem}.already-joined{background-color:rgba(var(--ds-success-rgb), .08);border-radius:var(--ds-radius);margin-bottom:1rem;padding:1rem}.already-joined p{color:var(--ds-success);margin:0 0 1rem}.auth-options p{color:var(--ds-text-secondary);margin-bottom:1rem}.auth-options .btn{margin-bottom:.75rem}.btn-block{width:100%;display:block}.btn-secondary{background-color:var(--ds-surface-hover);color:var(--ds-text);border:none}.btn-secondary:hover{background-color:var(--ds-surface-highlight)}.invite-explainer{background-color:var(--ds-surface-hover);border-radius:var(--ds-radius);text-align:left;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.invite-explainer-title{color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem;font-size:.8rem}.invite-explainer-row{align-items:flex-start;gap:.75rem;display:flex}.invite-explainer-row+.invite-explainer-row{margin-top:.875rem}.invite-explainer-icon{font-size:1.25rem;line-height:1.4}.invite-explainer-body strong{color:var(--ds-text)}.invite-explainer-body p{color:var(--ds-text-secondary);margin:.125rem 0 0;font-size:.875rem;line-height:1.45}.invite-note{color:var(--ds-text-secondary);margin-bottom:1rem;font-size:.9rem}.not-found-container{text-align:center;justify-content:center;align-items:center;min-height:70vh;display:flex}.not-found-content{max-width:500px;padding:2rem}.not-found-content h1{color:var(--ds-accent);margin-bottom:0;font-size:6rem}.not-found-content h2{margin-bottom:1rem;font-size:2rem}.not-found-content p{color:var(--ds-text-secondary);margin-bottom:2rem}.my-feedback-page{max-width:1200px;margin:0 auto;padding:2rem 1rem}.my-feedback-page .page-header{margin-bottom:2rem;display:block}.my-feedback-page .page-header h1{color:var(--ds-text);margin:0 0 .5rem;font-size:1.75rem}.my-feedback-page .page-header p{color:var(--ds-text-secondary);margin:0}.feedback-instructions{background:rgba(var(--ds-success-rgb), .08);border:1px solid var(--ds-success);border-radius:var(--ds-radius);gap:1rem;margin-bottom:1.5rem;padding:1.25rem;display:flex}.instructions-icon{flex-shrink:0;font-size:1.5rem}.instructions-content h3{color:var(--ds-success);margin:0 0 .5rem;font-size:1rem;font-weight:600}.instructions-content p{color:var(--ds-success);margin:0;font-size:.9rem;line-height:1.5}.instructions-content strong{color:var(--ds-success)}.loading-state{text-align:center;color:var(--ds-text-muted);padding:3rem}.empty-state{text-align:center;background:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);padding:4rem 2rem}.empty-icon{margin-bottom:1rem;font-size:3rem}.empty-state h3{color:var(--ds-text);margin:0 0 .5rem}.empty-state p{color:var(--ds-text-muted);margin:0}.feedback-list{flex-direction:column;gap:1rem;display:flex}.feedback-card{background:var(--ds-surface);border-radius:var(--ds-radius);border:1px solid var(--ds-border);transition:border-color var(--ds-transition);overflow:hidden}.feedback-card:hover,.feedback-card.expanded{border-color:var(--ds-border-strong)}.feedback-card.unread{border-left:4px solid var(--ds-success);background:linear-gradient(90deg, rgba(var(--ds-success-rgb), .08) 0%, var(--ds-surface) 20%)}.unread-badge{background:var(--ds-success);color:#fff;letter-spacing:.3px;border-radius:4px;padding:.2rem .5rem;font-size:.65rem;font-weight:700;animation:2s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.feedback-card-header{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.feedback-card-header:hover{background:var(--ds-surface-hover)}.feedback-card-main{flex-wrap:wrap;flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.feedback-type{text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.feedback-subject{color:var(--ds-text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1rem;font-weight:500;overflow:hidden}.feedback-card-meta{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:1rem;display:flex}.feedback-status{white-space:nowrap;border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:500}.feedback-date{color:var(--ds-text-muted);white-space:nowrap;font-size:.85rem}.expand-icon{color:var(--ds-text-muted);font-size:.75rem}.feedback-card-body{border-top:1px solid var(--ds-border);padding:0 1.25rem 1.25rem}.feedback-description{margin-top:1rem}.feedback-description h4,.feedback-response h4{color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.3px;margin:0 0 .5rem;font-size:.85rem;font-weight:600}.feedback-description p{color:var(--ds-text);white-space:pre-wrap;margin:0;line-height:1.6}.feedback-response{background:rgba(var(--ds-success-rgb), .08);border-radius:var(--ds-radius-sm);border-left:4px solid var(--ds-success);margin-top:1.5rem;padding:1rem}.feedback-response p{color:var(--ds-text);margin:0;line-height:1.6}.response-date{color:var(--ds-text-muted);margin-top:.75rem;font-size:.8rem;display:block}.no-response{background:var(--ds-surface-hover);border-radius:var(--ds-radius-sm);text-align:center;margin-top:1.5rem;padding:1rem}.no-response p{color:var(--ds-text-muted);margin:0;font-size:.9rem}@media (width<=640px){.my-feedback-page{padding:1rem}.feedback-card-header{flex-direction:column;align-items:flex-start;gap:.75rem}.feedback-card-meta{justify-content:space-between;width:100%}.feedback-subject{white-space:normal}.my-feedback-page .page-header h1{font-size:1.5rem}}.survey-page{max-width:640px;margin:0 auto;padding:2rem 1rem 4rem}.survey-page .survey-kicker{color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.08em;margin:0 0 .35rem;font-size:.85rem;font-weight:600}.survey-page .survey-header h1{color:var(--ds-text);margin:0 0 .5rem;font-size:1.75rem}.survey-page .survey-header p{color:var(--ds-text-secondary);margin:0 0 .5rem}.survey-page .survey-rating-block{display:inline-block}.survey-page .survey-anchors{color:var(--ds-text-muted);justify-content:space-between;margin-top:.4rem;font-size:.75rem;display:flex}.survey-page .survey-question{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius);margin:0 0 1rem;padding:1rem}.survey-page .survey-question legend{color:var(--ds-text);padding:0 .25rem;font-weight:600}.survey-page .survey-optional{color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-left:.5rem;font-size:.75rem;font-weight:400}.survey-page .survey-hint{color:var(--ds-text-secondary);margin:0 0 .75rem;font-size:.85rem}.survey-page .survey-rating,.survey-page .survey-enum{flex-wrap:wrap;gap:.5rem;display:flex}.survey-page .survey-rating button,.survey-page .survey-enum button{background:var(--ds-controls-bg);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);min-width:44px;min-height:44px;color:var(--ds-text);font-family:var(--ds-font);cursor:pointer;transition:background var(--ds-transition), border-color var(--ds-transition);padding:.5rem .9rem;font-size:1rem}.survey-page .survey-rating button{font-family:var(--ds-font-num)}.survey-page .survey-rating button:hover,.survey-page .survey-enum button:hover{background:var(--ds-surface-hover)}.survey-page .survey-rating button.selected,.survey-page .survey-enum button.selected{background:var(--ds-accent);border-color:var(--ds-accent);color:#fff}.survey-page textarea{background:var(--ds-controls-bg);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);width:100%;color:var(--ds-text);font-family:var(--ds-font);resize:vertical;padding:.75rem;font-size:1rem}.survey-page textarea:focus{border-color:var(--ds-accent);outline:none}.survey-page .survey-required-hint{color:var(--ds-text-secondary);margin:0 0 .75rem;font-size:.85rem}.survey-page .survey-saved-note{color:var(--ds-success);margin:0 0 .75rem;font-size:.9rem}.survey-page .survey-submit{background:var(--ds-accent);border-radius:var(--ds-radius);color:#fff;width:100%;min-height:48px;font-family:var(--ds-font);cursor:pointer;transition:background var(--ds-transition);border:none;font-size:1.05rem;font-weight:600}.survey-page .survey-submit:hover:not(:disabled){background:var(--ds-accent-hover)}.survey-page .survey-submit:disabled{opacity:.5;cursor:not-allowed}.survey-page .survey-not-enrolled{color:var(--ds-text-secondary);text-align:center;padding:3rem 1rem}@media (width>=640px){.survey-page .survey-submit{width:auto;padding:0 2.5rem}}.unsubscribe-page{max-width:560px;color:var(--ds-text,#e0e0e0);font-family:var(--ds-font,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);margin:48px auto;padding:24px}.unsubscribe-page h1{margin:0 0 16px;font-size:28px}.unsubscribe-page h2{margin:32px 0 12px;font-size:18px}.unsubscribe-page .confirmation{background:var(--ds-surface,#1a1a1a);border:1px solid var(--ds-border,#333);border-radius:var(--ds-radius,8px);margin-bottom:24px;padding:12px 16px}.unsubscribe-page .pref-row{padding:8px 0}.unsubscribe-page .pref-row label{cursor:pointer;align-items:center;gap:10px;display:inline-flex}.unsubscribe-page .pref-row input[type=checkbox]{flex-shrink:0;width:auto;margin:0;display:inline-block}.unsubscribe-page button.danger{color:#c53030;border-radius:var(--ds-radius,8px);cursor:pointer;background:0 0;border:1px solid #c53030;margin-top:20px;padding:10px 18px;font-size:14px}.unsubscribe-page button.danger:hover{color:#fff;background:#c53030}.unsubscribe-page .error{color:#c53030}.unsubscribe-page .footnote{margin-top:32px;font-size:14px}.about-page{max-width:680px;color:var(--ds-text);font-family:var(--ds-font);margin:48px auto;padding:0 24px;line-height:1.6}.about-page h1{color:var(--ds-text);margin:0 0 24px;font-size:2rem;font-weight:700}.about-page h2{color:var(--ds-text);margin:36px 0 12px;font-size:1.15rem;font-weight:600}.about-page p{color:var(--ds-text);margin:0 0 14px;font-size:.95rem}.about-page .about-lede{color:var(--ds-text-secondary);margin-bottom:28px;font-size:1.05rem}.about-page a{color:var(--ds-accent);transition:color var(--ds-transition);text-decoration:none}.about-page a:hover{color:var(--ds-accent-hover);text-decoration:underline}.about-page em{color:var(--ds-text);font-style:italic}.about-page strong{color:var(--ds-text);font-weight:600}@media (width<=480px){.about-page{margin:24px auto;padding:0 16px}.about-page h1{font-size:1.6rem}.about-page h2{font-size:1.05rem}}.feedback-modal-overlay{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.feedback-modal{background-color:#141922;border:1px solid #ffffff0f;border-radius:10px;flex-direction:column;width:90%;max-width:500px;max-height:min(600px,85vh);display:flex;box-shadow:0 4px 20px #00000073}.feedback-modal-header{border-bottom:1px solid #ffffff0f;flex-shrink:0;justify-content:space-between;align-items:center;padding:.875rem 1.25rem;display:flex}.feedback-modal-header h3{color:#f1f5f9;margin:0;font-size:1.25rem}.feedback-modal-header .close-btn{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;min-width:48px;min-height:48px;padding:0;font-size:1.75rem;line-height:1;transition:color .2s,background-color .2s;display:flex}.feedback-modal-header .close-btn:hover{color:#8494a7;background-color:#ffffff14}.feedback-modal-body{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex:1;padding:1rem 1.25rem;overflow-y:auto}.feedback-modal-body::-webkit-scrollbar{width:6px}.feedback-modal-body::-webkit-scrollbar-track{background:0 0}.feedback-modal-body::-webkit-scrollbar-thumb{background-color:#ffffff26;border-radius:3px}.feedback-modal-body::-webkit-scrollbar-thumb:hover{background-color:#ffffff40}.feedback-modal-body .form-group{margin-bottom:1rem}.feedback-modal-body label{color:#f1f5f9;margin-bottom:.5rem;font-weight:500;display:block}.feedback-modal-body input[type=text],.feedback-modal-body select,.feedback-modal-body textarea{color:#f1f5f9;box-sizing:border-box;background-color:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.feedback-modal-body input[type=text]::placeholder,.feedback-modal-body textarea::placeholder{color:#475569}.feedback-modal-body input[type=text]:focus,.feedback-modal-body select:focus,.feedback-modal-body textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f626}.feedback-modal-body textarea{resize:vertical;min-height:100px}.feedback-modal-body select{appearance:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%2364748b' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;background-color:#1a2030!important}.feedback-modal-body select option{color:#f1f5f9;background-color:#141922}.type-description{color:#8494a7;margin-top:.25rem;font-size:.85rem;display:block}.char-count{text-align:right;color:#475569;margin-top:.25rem;font-size:.8rem;display:block}.context-info{color:#8494a7;background-color:#ffffff0d;border:1px solid #ffffff0f;border-radius:6px;align-items:flex-start;gap:.5rem;margin-bottom:1rem;padding:.625rem;font-size:.8rem;display:flex}.context-info .info-icon{color:#8494a7;background-color:#ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:.7rem;font-weight:600;display:flex}.feedback-modal-footer{background:#141922;border-top:1px solid #ffffff0f;border-radius:0 0 10px 10px;flex-shrink:0;justify-content:flex-end;gap:.75rem;padding:.875rem 1.25rem;display:flex}.feedback-modal-footer .btn{cursor:pointer;border:none;border-radius:6px;min-height:48px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:background-color .2s}.feedback-modal-footer .btn-primary{color:#fff;background-color:#3b82f6}.feedback-modal-footer .btn-primary:hover{background-color:#2563eb}.feedback-modal-footer .btn-secondary{color:#f1f5f9;background-color:#ffffff14;border:1px solid #ffffff1a}.feedback-modal-footer .btn-secondary:hover{background-color:#ffffff1f}@media (width<=768px){.feedback-modal-overlay{align-items:flex-end;padding:.5rem}.feedback-modal{border-radius:1rem 1rem 0 0;width:100%;max-width:none;max-height:90vh}.feedback-modal-body textarea{min-height:150px}.feedback-modal-footer{border-radius:0;flex-direction:column}.feedback-modal-footer .btn{width:100%}}@media (width<=480px){.feedback-modal-header,.feedback-modal-body{padding:1rem}}.feedback-button-container{z-index:998;position:fixed;bottom:2rem;right:2rem}.feedback-button{background:var(--ds-surface,#141922);color:var(--ds-accent,#3b82f6);border:1px solid rgba(var(--ds-accent-rgb,59, 130, 246), .3);border-radius:var(--ds-radius,10px);cursor:pointer;transition:background var(--ds-transition,.18s ease), border-color var(--ds-transition,.18s ease), box-shadow .2s;align-items:center;gap:.5rem;min-width:48px;min-height:48px;padding:.75rem 1.25rem;font-size:.85rem;font-weight:500;display:flex;box-shadow:0 4px 16px #0006}.feedback-button:hover{background:rgba(var(--ds-accent-rgb,59, 130, 246), .15);border-color:var(--ds-accent,#3b82f6);box-shadow:0 6px 20px #00000080}.feedback-button:active{transform:translateY(0)}.feedback-icon{flex-shrink:0;width:20px;height:20px}@media (width<=768px){.feedback-button-container{bottom:5rem;right:1rem}.feedback-button-text{display:none}.feedback-button{border-radius:var(--ds-radius,10px);padding:.75rem}}@media (width<=480px){.feedback-button-container{bottom:4rem;right:.75rem}}@media (width<=768px){body.tbn-present .feedback-button-container{bottom:calc(var(--tbn-bar-height,57px) + 1rem)}}.admin-layout{height:100vh;display:flex}.admin-sidebar{width:250px;color:var(--gray-800);border-right:1px solid var(--gray-300);background-color:#fff;flex-direction:column;flex-shrink:0;transition:width .2s;display:flex}.admin-sidebar-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;min-height:60px;padding:1rem 1.5rem;display:flex}.admin-sidebar-header h3{color:var(--gray-800);white-space:nowrap;margin:0;overflow:hidden}.sidebar-toggle{border:1px solid var(--gray-300);color:var(--gray-600);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:1rem;transition:all .15s;display:flex}.sidebar-toggle:hover{background-color:var(--gray-100);color:var(--gray-800);border-color:var(--gray-400)}.mobile-menu-toggle{display:none}.admin-nav{flex:1;padding:1rem 0;overflow-y:auto}.admin-nav ul{margin:0;padding:0;list-style:none}.admin-nav li{margin-bottom:.25rem}.admin-nav a{color:var(--gray-700);white-space:nowrap;align-items:center;gap:.75rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .15s;display:flex}.admin-nav a:hover{background-color:var(--gray-100);color:var(--gray-900)}.admin-nav a.active{background-color:var(--primary-color);color:#fff}.nav-icon{text-align:center;flex-shrink:0;width:1.5rem;font-size:1.125rem}.nav-label{transition:opacity .2s;overflow:hidden}.sidebar-collapsed .admin-sidebar{width:60px}.sidebar-collapsed .admin-sidebar-header{flex-direction:column;gap:.5rem;padding:1rem .5rem}.sidebar-collapsed .admin-sidebar-header h3{font-size:.875rem}.sidebar-collapsed .sidebar-toggle{background-color:var(--gray-100);border-color:var(--gray-300);position:static}.sidebar-collapsed .admin-nav a{justify-content:center;padding:.75rem}.sidebar-collapsed .nav-label{display:none}.sidebar-collapsed .nav-icon{font-size:1.25rem}.sidebar-collapsed .admin-nav li{position:relative}.admin-content{background-color:var(--gray-100);flex:1;min-width:0;overflow-y:auto}.admin-header{border-bottom:1px solid var(--gray-300);background-color:#fff;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.admin-header h2{margin:0}.admin-container{padding:0}@media (width<=768px){.admin-layout{flex-direction:column}.admin-sidebar{width:100%;height:auto}.sidebar-collapsed .admin-sidebar{width:100%}.sidebar-collapsed .nav-label{display:inline}.sidebar-collapsed .admin-nav a{justify-content:flex-start;padding:.75rem 1.5rem}.admin-content{flex:1;height:0}.sidebar-toggle{display:none}.mobile-menu-toggle{border:1px solid var(--gray-300);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;width:36px;height:36px;margin-left:auto;padding:0;display:flex}.mobile-menu-toggle:hover{background-color:var(--gray-100)}.hamburger-icon{background-color:var(--gray-700);width:18px;height:2px;transition:background-color .2s;display:block;position:relative}.hamburger-icon:before,.hamburger-icon:after{content:"";background-color:var(--gray-700);width:18px;height:2px;transition:transform .2s;display:block;position:absolute;left:0}.hamburger-icon:before{top:-6px}.hamburger-icon:after{top:6px}.mobile-menu-open .hamburger-icon{background-color:#0000}.mobile-menu-open .hamburger-icon:before{top:0;transform:rotate(45deg)}.mobile-menu-open .hamburger-icon:after{top:0;transform:rotate(-45deg)}.admin-nav{display:none}.mobile-menu-open .admin-nav{display:block}.admin-sidebar-header h3{flex:none}}.admin-layout .admin-table-container{background-color:var(--gray-100);min-height:100vh;padding:2rem}.admin-layout .admin-table-container .admin-panel-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.admin-layout .admin-table-container .admin-panel-header h1{color:var(--gray-800);margin:0;font-size:2rem;font-weight:600}.admin-layout .admin-table-container .search-box{max-width:400px;margin-bottom:1.5rem;position:relative}.admin-layout .admin-table-container .search-input{border:1px solid var(--gray-300);border-radius:.5rem;width:100%;padding:.75rem 2.5rem .75rem 1rem;font-size:1rem;transition:border-color .15s ease-in-out}.admin-layout .admin-table-container .search-input:focus{border-color:var(--primary-color);outline:0;box-shadow:0 0 0 .2rem #1e88e540}.admin-layout .admin-table-container .clear-search{color:var(--gray-500);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:1.25rem;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.admin-layout .admin-table-container .clear-search:hover{color:var(--gray-700)}.admin-layout .admin-table-container .admin-panel-content{background-color:#fff;border-radius:.5rem;overflow:visible;box-shadow:0 2px 4px #0000001a}.admin-layout .admin-table-container .admin-table{border-collapse:collapse;width:100%;margin:0}.admin-layout .admin-table-container .admin-table th,.admin-layout .admin-table-container .admin-table td{text-align:left;border-bottom:1px solid var(--gray-200);vertical-align:middle;padding:.625rem 1rem}.admin-layout .admin-table-container .admin-table th{background-color:var(--gray-100);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:600}.admin-layout .admin-table-container .admin-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s}.admin-layout .admin-table-container .admin-table th.sortable:hover{background-color:var(--gray-200)}.admin-layout .admin-table-container .th-content{align-items:center;gap:.25rem;display:flex}.admin-layout .admin-table-container .sort-indicator{color:var(--gray-400);margin-left:auto;font-size:.75rem}.admin-layout .admin-table-container .admin-table th.sortable:hover .sort-indicator{color:var(--gray-600)}.admin-layout .admin-table-container .admin-table tbody tr:hover{background-color:var(--gray-50)}.admin-layout .admin-table-container .admin-table tbody tr.clickable{cursor:pointer}.admin-layout .admin-table-container .admin-table tbody tr.clickable:hover{background-color:var(--gray-100)}.admin-layout .admin-table-container .empty-table{text-align:center;color:var(--gray-500);padding:3rem 1rem;font-style:italic}.admin-layout .admin-table-container .admin-pagination{border-top:1px solid var(--gray-200);background-color:var(--gray-50);justify-content:center;align-items:center;gap:1rem;padding:1.5rem;display:flex}.admin-layout .admin-table-container .page-info{color:var(--gray-600);white-space:nowrap;font-size:.875rem;font-weight:500}.admin-layout .admin-table-container .page-size-select{border:1px solid var(--gray-300);color:var(--gray-700);cursor:pointer;background-color:#fff;border-radius:.25rem;margin-left:1rem;padding:.375rem .75rem;font-size:.875rem}.admin-layout .admin-table-container .page-size-select:focus{border-color:var(--primary-color);outline:none}.admin-layout .admin-loading{text-align:center;color:var(--gray-600);padding:3rem;font-size:1.125rem}.admin-layout .col-id{text-align:center;width:60px}.admin-layout .col-flag,.admin-layout .col-photo{text-align:center;width:80px}.admin-layout .col-actions{white-space:nowrap;text-align:right;min-width:150px}.admin-layout .col-status{width:100px}.admin-layout .col-date{width:150px}.admin-layout .team-flag,.admin-layout .player-photo{object-fit:cover;border-radius:.25rem;width:32px;height:24px;box-shadow:0 0 0 1px #00000026}.admin-layout .player-photo{border-radius:50%;width:40px;height:40px}.admin-layout .no-flag,.admin-layout .no-photo{color:var(--gray-500);font-size:.75rem;font-style:italic}.admin-layout .status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.admin-layout .status-badge.active{background-color:var(--success-color);color:#fff}.admin-layout .status-badge.inactive{background-color:var(--gray-400);color:#fff}.admin-layout .status-badge.scheduled{background-color:var(--primary-color);color:#fff}.admin-layout .status-badge.in_progress{background-color:var(--warning-color);color:#fff}.admin-layout .status-badge.completed{background-color:var(--success-color);color:#fff}.admin-layout .status-badge.hidden-badge{color:#fff;background-color:#6c757d}.admin-layout .status-badge.upcoming-badge{color:#fff;background-color:#17a2b8}.admin-layout .status-badge.open-badge{color:#fff;background-color:#28a745}.admin-layout .status-badge.in_progress-badge{color:#000;background-color:#ffc107}.admin-layout .status-badge.completed-badge{color:#fff;background-color:#6c757d}.admin-layout .admin-table-container .btn+.btn{margin-left:.5rem}.admin-layout .btn-danger{background-color:var(--danger-color);border-color:var(--danger-color);color:#fff}.admin-layout .btn-danger:hover{background-color:#c82333;border-color:#bd2130}.admin-layout .table-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.admin-layout .table-toolbar .search-box{margin-bottom:0}.admin-layout .col-select{text-align:center;width:50px}.admin-layout .admin-table-container .admin-table tbody tr.selected{background-color:var(--primary-light,#e3f2fd)}.admin-layout .admin-table-container .admin-table tbody tr.selected:hover{background-color:var(--primary-light,#bbdefb)}.admin-layout .selection-actions{align-items:center;gap:.75rem;display:flex}.admin-layout .selection-count{color:var(--gray-600);font-size:.875rem;font-weight:500}@media (width<=1024px){.admin-layout .admin-table-container .admin-panel-header{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .admin-table-container .admin-panel-header h1{text-align:center}}@media (width<=768px){.admin-layout .admin-table-container{padding:1rem}.admin-layout .admin-table-container .admin-table{font-size:.875rem}.admin-layout .admin-table-container .admin-table th,.admin-layout .admin-table-container .admin-table td{padding:.5rem}.admin-layout .admin-table-container .admin-panel-content{overflow-x:auto}.admin-layout .admin-table-container .admin-table{min-width:600px}}@media (width<=480px){.admin-layout .col-actions{min-width:auto}.admin-layout .col-actions .btn{padding:.25rem .5rem;font-size:.75rem}}.admin-layout .column-visibility-dropdown{position:relative}.admin-layout .column-visibility-menu{z-index:1000;border:1px solid var(--gray-300);background-color:#fff;border-radius:.5rem;min-width:200px;max-height:400px;margin-top:.25rem;position:absolute;top:100%;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.admin-layout .column-visibility-header{border-bottom:1px solid var(--gray-200);background-color:var(--gray-50);gap:.5rem;padding:.75rem;display:flex}.admin-layout .column-visibility-header .btn-xs{padding:.25rem .5rem;font-size:.75rem}.admin-layout .column-visibility-list{padding:.5rem 0}.admin-layout .column-visibility-item{cursor:pointer;align-items:center;gap:.5rem;padding:.5rem .75rem;transition:background-color .15s;display:flex}.admin-layout .column-visibility-item:hover{background-color:var(--gray-100)}.admin-layout .column-visibility-item input[type=checkbox]{cursor:pointer;width:16px;height:16px}.admin-layout .column-visibility-item span{color:var(--gray-700);text-transform:capitalize;font-size:.875rem}.admin-layout .action-menu{float:right;display:inline-block;position:relative}.admin-layout .action-menu-trigger{border:1px solid var(--gray-300);cursor:pointer;color:var(--gray-600);background:0 0;border-radius:4px;justify-content:center;align-items:center;min-width:32px;height:32px;padding:.25rem .5rem;font-size:1.25rem;line-height:1;transition:all .15s;display:flex}.admin-layout .action-menu-trigger:hover{background-color:var(--gray-100);border-color:var(--gray-400);color:var(--gray-800)}.admin-layout .action-menu-trigger:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 2px #1e88e533}.admin-layout .action-menu-dropdown{border:1px solid var(--gray-200);z-index:1000;background:#fff;border-radius:6px;min-width:150px;margin-top:4px;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.admin-layout .action-menu-item{text-align:left;cursor:pointer;width:100%;color:var(--gray-700);white-space:nowrap;background:0 0;border:none;padding:.5rem 1rem;font-size:.875rem;transition:background-color .1s;display:block}.admin-layout .action-menu-item:hover{background-color:var(--gray-100)}.admin-layout .action-menu-item:focus{background-color:var(--gray-100);outline:none}.admin-layout .action-menu-item.danger{color:var(--danger-color,#dc3545)}.admin-layout .action-menu-item.danger:hover{background-color:#fef2f2}.admin-layout .action-menu-item.disabled{opacity:.5;cursor:not-allowed}.admin-layout .action-menu-item.disabled:hover{background-color:#0000}.admin-layout .action-menu-divider{background-color:var(--gray-200);height:1px;margin:.25rem 0}.admin-layout .admin-table-container{overflow:visible}.admin-layout .admin-table-wrapper{position:relative}@media (width<=480px){.admin-layout .action-menu-dropdown{min-width:120px}.admin-layout .action-menu-item{padding:.625rem .875rem}}.admin-layout .admin-user-detail{width:100%;padding:1.5rem}.admin-layout .admin-form{max-width:600px;padding:2rem}.admin-layout .form-group{margin-bottom:1.5rem}.admin-layout .form-group label{margin-bottom:.5rem;font-weight:500;display:block}.admin-layout .form-group.checkbox{flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;display:flex}.admin-layout .form-group.checkbox label{margin-bottom:0}.admin-layout .form-group.checkbox input[type=checkbox]{width:auto}.admin-layout .hint{color:var(--gray-600);font-size:.8rem;font-weight:400}.admin-layout .form-actions{justify-content:flex-end;gap:1rem;margin-top:2rem;display:flex}.admin-layout .alert{margin-bottom:1rem}.admin-layout .user-tournaments-section{background-color:var(--gray-100);border-radius:8px;margin-top:2rem;padding:1.5rem}.admin-layout .user-tournaments-section h2{margin:0 0 1rem;font-size:1.25rem;font-weight:600}.admin-layout .user-badges-section{background-color:var(--gray-100);border-radius:8px;margin-top:2rem;padding:1.5rem}.admin-layout .user-badges-section h2{margin:0 0 1rem;font-size:1.25rem;font-weight:600}.admin-layout .admin-user-list,.admin-layout .admin-tournament-list,.admin-layout .admin-team-list,.admin-layout .admin-player-list,.admin-layout .admin-match-list{background-color:var(--gray-100);min-height:100vh;padding:2rem}.admin-layout .admin-panel-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.admin-layout .admin-panel-header h1{color:var(--gray-800);margin:0;font-size:2rem;font-weight:600}.admin-layout .search-box{max-width:400px;margin-bottom:1.5rem;position:relative}.admin-layout .search-input{border:1px solid var(--gray-300);border-radius:.5rem;width:100%;padding:.75rem 2.5rem .75rem 1rem;font-size:1rem;transition:border-color .15s ease-in-out}.admin-layout .search-input:focus{border-color:var(--primary-color);outline:0;box-shadow:0 0 0 .2rem #1e88e540}.admin-layout .clear-search{color:var(--gray-500);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:1.25rem;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.admin-layout .clear-search:hover{color:var(--gray-700)}.admin-layout .filter-section{flex-wrap:wrap;align-items:center;gap:2rem;margin-bottom:1.5rem;display:flex}.admin-layout .tournament-filter{align-items:center;gap:.5rem;display:flex}.admin-layout .tournament-filter label{color:var(--gray-700);font-weight:500}.admin-layout .tournament-select{border:1px solid var(--gray-300);border-radius:.25rem;min-width:200px;padding:.5rem 1rem;font-size:.875rem}.admin-layout .status-filter{gap:.25rem;display:flex}.admin-layout .filter-btn{border:1px solid var(--gray-300);color:var(--gray-700);cursor:pointer;background-color:#fff;border-radius:.25rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s ease-in-out}.admin-layout .filter-btn:hover{background-color:var(--gray-50);border-color:var(--gray-400)}.admin-layout .filter-btn.active{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.admin-layout .admin-panel-content{background-color:#fff;border-radius:.5rem;overflow:hidden;box-shadow:0 2px 4px #0000001a}.admin-layout .admin-table{border-collapse:collapse;width:100%;margin:0}.admin-layout .admin-table th,.admin-layout .admin-table td{text-align:left;border-bottom:1px solid var(--gray-200);vertical-align:middle;padding:.625rem 1rem}.admin-layout .admin-table th{background-color:var(--gray-100);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:600}.admin-layout .admin-table tbody tr:hover{background-color:var(--gray-50)}.admin-layout .flag-column,.admin-layout .photo-column{text-align:center;width:80px}.admin-layout .team-flag,.admin-layout .player-photo{object-fit:cover;border-radius:.25rem;width:32px;height:24px;box-shadow:0 0 0 1px #00000026}.admin-layout .player-photo{border-radius:50%;width:40px;height:40px}.admin-layout .no-flag,.admin-layout .no-photo{color:var(--gray-500);font-size:.75rem;font-style:italic}.admin-layout .teams-column{min-width:200px}.admin-layout .match-teams{align-items:center;gap:.5rem;display:flex}.admin-layout .team-name{font-weight:500}.admin-layout .vs{color:var(--gray-500);font-size:.875rem}.admin-layout .score-column{text-align:center;min-width:80px}.admin-layout .match-score{color:var(--gray-800);font-weight:600}.admin-layout .not-played{color:var(--gray-500);font-size:.875rem;font-style:italic}.admin-layout .shirt-number{text-align:center}.admin-layout .number-badge{background-color:var(--primary-color);color:#fff;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.admin-layout .no-number{color:var(--gray-500);font-size:.875rem}.admin-layout .predictions-column{text-align:center}.admin-layout .prediction-count{background-color:var(--gray-100);color:var(--gray-700);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;font-weight:500}.admin-layout .status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.admin-layout .status-badge.active{background-color:var(--success-color);color:#fff}.admin-layout .status-badge.inactive{background-color:var(--gray-400);color:#fff}.admin-layout .status-select{border:1px solid var(--gray-300);cursor:pointer;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.admin-layout .status-select.scheduled{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff!important}.admin-layout .status-select.in_progress{background-color:var(--warning-color);border-color:var(--warning-color);color:#fff!important}.admin-layout .status-select.completed{background-color:var(--success-color);border-color:var(--success-color);color:#fff!important}.admin-layout .actions{white-space:nowrap;text-align:right;min-width:200px}.admin-layout .actions .btn{margin-left:.5rem}.admin-layout .btn-danger{background-color:var(--danger-color);border-color:var(--danger-color);color:#fff}.admin-layout .btn-danger:hover{background-color:#c82333;border-color:#bd2130}.admin-layout .actions .btn:first-child{margin-left:0}.admin-layout .empty-table{text-align:center;color:var(--gray-500);padding:3rem 1rem;font-style:italic}.admin-layout .admin-pagination{border-top:1px solid var(--gray-200);background-color:var(--gray-50);justify-content:center;align-items:center;gap:1rem;padding:1.5rem;display:flex}.admin-layout .page-info{color:var(--gray-600);font-size:.875rem;font-weight:500}.admin-layout .admin-loading,.admin-layout .admin-error{text-align:center;padding:3rem;font-size:1.125rem}.admin-layout .admin-loading{color:var(--gray-600)}.admin-layout .admin-error{color:var(--danger-color);background-color:#dc35451a;border-radius:.5rem;margin:2rem}@media (width<=1024px){.admin-layout .admin-panel-header{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .admin-panel-header h1{text-align:center}.admin-layout .filter-section{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .status-filter{justify-content:center}}@media (width<=768px){.admin-layout .admin-user-list,.admin-layout .admin-tournament-list,.admin-layout .admin-team-list,.admin-layout .admin-player-list,.admin-layout .admin-match-list{padding:1rem}.admin-layout .admin-table{font-size:.875rem}.admin-layout .admin-table th,.admin-layout .admin-table td{padding:.5rem}.admin-layout .actions{min-width:auto}.admin-layout .actions .btn{padding:.25rem .5rem;font-size:.75rem}@media (width<=480px){.admin-layout .actions{flex-direction:column;gap:.25rem;display:flex}.admin-layout .actions .btn{margin-left:0}}.admin-layout .admin-panel-content{overflow-x:auto}.admin-layout .admin-table{min-width:600px}}.admin-layout .tournament-list-page{flex-direction:column;gap:2rem;display:flex}.admin-layout .tournament-list-page .admin-table-container{min-height:auto}.admin-layout .tournament-name-cell{flex-direction:column;gap:.25rem;display:flex}.admin-layout .tournament-name-cell .copy-indicator{color:var(--text-muted,#6c757d);font-size:.75rem;font-style:italic}.admin-layout .modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.admin-layout .modal-content{background:var(--card-bg,#fff);border-radius:8px;width:100%;max-width:500px;max-height:90vh;padding:1.5rem;overflow-y:auto;box-shadow:0 4px 20px #00000026}.admin-layout .copy-tournament-modal h2{margin:0 0 .5rem;font-size:1.25rem}.admin-layout .copy-tournament-modal .modal-subtitle{color:var(--text-secondary,#6c757d);margin:0 0 .5rem}.admin-layout .copy-tournament-modal .modal-description{color:var(--text-muted,#6c757d);margin:0 0 1.5rem;font-size:.875rem;line-height:1.5}.admin-layout .copy-tournament-modal .form-error{color:#dc2626;background:#fee2e2;border-radius:4px;margin-bottom:1rem;padding:.75rem;font-size:.875rem}.admin-layout .copy-tournament-modal .form-group{margin-bottom:1rem}.admin-layout .copy-tournament-modal .form-group label{margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.admin-layout .copy-tournament-modal .form-group input,.admin-layout .copy-tournament-modal .form-group textarea{border:1px solid var(--border-color,#e5e7eb);border-radius:4px;width:100%;padding:.5rem;font-size:.875rem}.admin-layout .copy-tournament-modal .form-group input:focus,.admin-layout .copy-tournament-modal .form-group textarea:focus{border-color:var(--primary,#3b82f6);outline:none;box-shadow:0 0 0 2px #3b82f633}.admin-layout .copy-tournament-modal .modal-actions{border-top:1px solid var(--border-color,#e5e7eb);justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;display:flex}.admin-layout .admin-tournament-detail{width:100%;padding:1.5rem}.admin-layout .form-row{gap:1rem;margin-bottom:1rem;display:flex}.admin-layout .form-group.half{flex:1}.admin-layout .form-group.checkbox{flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;display:flex}.admin-layout .form-group.checkbox label{margin-bottom:0}.admin-layout .form-group.checkbox input[type=checkbox]{width:auto}.admin-layout .hint{color:var(--gray-600);margin-top:0;margin-bottom:1rem;font-size:.8rem;font-weight:400}.admin-layout textarea{resize:vertical;min-height:100px}.admin-layout .date-warning{color:var(--warning-color);margin-top:.25rem;font-size:.85rem}.admin-layout .tournament-options{border-top:1px solid var(--gray-300);margin-top:2rem;padding-top:1.5rem}.admin-layout .tournament-options h3{color:var(--gray-700);margin-bottom:1rem}.admin-layout .danger-zone{border:1px solid var(--danger-color);border-radius:.25rem;margin-top:2rem;padding:1.5rem}.admin-layout .danger-zone h3{color:var(--danger-color);margin-bottom:1rem}.admin-layout .danger-zone p{margin-bottom:1rem}.admin-layout .danger-zone .btn-danger{background-color:var(--danger-color);border-color:var(--danger-color);color:#fff}.admin-layout .danger-zone .btn-danger:hover{background-color:#c82333;border-color:#bd2130}.admin-layout .admin-tournament-detail .leaderboard-table{border-collapse:collapse;width:100%}.admin-layout .admin-tournament-detail .leaderboard-table th,.admin-layout .admin-tournament-detail .leaderboard-table td{text-align:center;border-bottom:1px solid #e5e5e5;padding:.75rem .5rem}.admin-layout .admin-tournament-detail .leaderboard-table th{color:#495057;background-color:#f8f9fa;font-size:.875rem;font-weight:600}.admin-layout .admin-tournament-detail .leaderboard-table .player-cell{text-align:left;font-weight:500}.admin-layout .admin-tournament-detail .leaderboard-table .position-cell{font-weight:600}.admin-layout .admin-tournament-detail .leaderboard-table .points-cell{min-width:60px;font-weight:500}.admin-layout .admin-tournament-detail .leaderboard-table .total-points{background-color:#f8f9fa;font-size:1.1rem}.admin-layout .admin-tournament-detail .position-badge{border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;font-weight:600;display:inline-block}.admin-layout .admin-tournament-detail .position-badge.first-place{color:#333;background-color:gold}.admin-layout .admin-tournament-detail .position-badge.second-place{color:#333;background-color:silver}.admin-layout .admin-tournament-detail .position-badge.third-place{color:#fff;background-color:#cd7f32}.admin-layout .admin-tournament-detail .position-badge.other-place{color:#fff;background-color:#6c757d}.admin-layout .admin-tournament-detail .prediction-points{color:#007bff}.admin-layout .admin-tournament-detail .striker-points{color:#28a745}.admin-layout .admin-tournament-detail .top-teams-points{color:#fd7e14}.admin-layout .admin-tournament-detail .total-points strong{color:#495057}.admin-layout .admin-tournament-detail .leaderboard-legend{flex-wrap:wrap;gap:1rem;font-size:.875rem;display:flex}.admin-layout .admin-tournament-detail .legend-item{align-items:center;gap:.5rem;display:flex}.admin-layout .admin-tournament-detail .legend-color{border-radius:3px;width:16px;height:16px}.admin-layout .admin-tournament-detail .legend-color.prediction-color{background-color:#007bff}.admin-layout .admin-tournament-detail .legend-color.striker-color{background-color:#28a745}.admin-layout .admin-tournament-detail .legend-color.top-teams-color{background-color:#fd7e14}@media (width<=768px){.admin-layout .admin-tournament-detail .leaderboard-table th,.admin-layout .admin-tournament-detail .leaderboard-table td{padding:.5rem .25rem}.admin-layout .admin-tournament-detail .leaderboard-legend{flex-direction:column;gap:.5rem}}.admin-layout .admin-tournament-detail .participants-table{border-collapse:collapse;width:100%;font-size:.875rem}.admin-layout .admin-tournament-detail .participants-table th,.admin-layout .admin-tournament-detail .participants-table td{text-align:center;border-bottom:1px solid #dee2e6;padding:.5rem .25rem}.admin-layout .admin-tournament-detail .participants-table th{color:#495057;background-color:#f8f9fa;font-weight:600}.admin-layout .admin-tournament-detail .participants-table .participant-name{text-align:left;font-weight:500}.admin-layout .admin-tournament-detail .participants-table .rank-cell{font-weight:600}.admin-layout .admin-tournament-detail .participants-table .points-cell{font-weight:500}.admin-layout .admin-tournament-detail .participants-table .total-points{background-color:#f8f9fa}.admin-layout .tournament-dashboard{width:100%;padding:1.5rem}.admin-layout .tournament-dashboard .dashboard-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.admin-layout .tournament-dashboard .header-content h1{margin-bottom:.5rem}.admin-layout .tournament-dashboard .tournament-dates{color:var(--gray-600);font-size:1.1rem}.admin-layout .tournament-dashboard .header-actions{gap:1rem;display:flex}.admin-layout .tournament-dashboard .tournament-progress{background-color:#fff;border-radius:.5rem;margin-bottom:2rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.admin-layout .tournament-dashboard .progress-info{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.admin-layout .tournament-dashboard .status-badge.large-badge{padding:.3rem .8rem;font-size:.9rem}.admin-layout .tournament-dashboard .days-left{color:var(--gray-700);font-weight:600}.admin-layout .tournament-dashboard .progress-bar{background-color:var(--gray-200);border-radius:5px;height:10px;margin-bottom:.5rem;overflow:hidden}.admin-layout .tournament-dashboard .progress-fill{background-color:var(--primary-color);border-radius:5px;height:100%;transition:width .3s}.admin-layout .tournament-dashboard .progress-percentage{text-align:right;color:var(--gray-600);font-size:.9rem}.admin-layout .tournament-dashboard .dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.admin-layout .tournament-dashboard .stat-card{background-color:#fff;border-radius:.5rem;align-items:center;padding:1.5rem;display:flex;box-shadow:0 1px 3px #0000001a}.admin-layout .tournament-dashboard .stat-icon{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;margin-right:1rem;font-size:1.5rem;display:flex}.admin-layout .tournament-dashboard .matches-icon{background-color:var(--primary-color)}.admin-layout .tournament-dashboard .predictions-icon{background-color:var(--success-color)}.admin-layout .tournament-dashboard .participants-icon{background-color:var(--warning-color)}.admin-layout .tournament-dashboard .stat-value{margin-bottom:.25rem;font-size:1.8rem;font-weight:600;line-height:1}.admin-layout .tournament-dashboard .stat-label{color:var(--gray-600);font-size:.9rem}.admin-layout .tournament-dashboard .dashboard-widgets{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.admin-layout .tournament-dashboard .widget{background-color:#fff;border-radius:.5rem;overflow:hidden;box-shadow:0 1px 3px #0000001a}.admin-layout .tournament-dashboard .widget-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.admin-layout .tournament-dashboard .widget-header h3{margin:0;font-size:1.2rem}.admin-layout .tournament-dashboard .widget-link{color:var(--primary-color);font-size:.9rem;font-weight:500}.admin-layout .tournament-dashboard .widget-content{padding:1.5rem}.admin-layout .tournament-dashboard .match-list{margin:0;padding:0;list-style:none}.admin-layout .tournament-dashboard .match-item{border-bottom:1px solid var(--gray-200);flex-direction:column;gap:.5rem;padding:1rem 0;display:flex}.admin-layout .tournament-dashboard .match-item:last-child{border-bottom:none}.admin-layout .tournament-dashboard .match-item-teams{flex-direction:column;gap:.25rem;display:flex}.admin-layout .tournament-dashboard .match-item-details{color:var(--gray-600);justify-content:space-between;align-items:center;font-size:.9rem;display:flex}.admin-layout .tournament-dashboard .status-badge.small-badge{padding:.1rem .5rem;font-size:.75rem}.admin-layout .tournament-dashboard .status-badge.scheduled{background-color:var(--primary-color);color:#fff}.admin-layout .tournament-dashboard .status-badge.in_progress{background-color:var(--warning-color);color:#fff}.admin-layout .tournament-dashboard .status-badge.completed{background-color:var(--success-color);color:#fff}.admin-layout .tournament-dashboard .match-score{font-size:1.1rem;font-weight:600}.admin-layout .tournament-dashboard .not-played{color:var(--gray-500);font-size:.9rem;font-style:italic;font-weight:400}.admin-layout .tournament-dashboard .participants-list{margin:0;padding:0;list-style:none}.admin-layout .tournament-dashboard .participant-item{border-bottom:1px solid var(--gray-200);align-items:center;padding:.75rem 0;display:flex}.admin-layout .tournament-dashboard .participant-item:last-child{border-bottom:none}.admin-layout .tournament-dashboard .participant-rank{width:40px;color:var(--gray-700);font-weight:600}.admin-layout .tournament-dashboard .participant-name{flex:1}.admin-layout .tournament-dashboard .participant-points{color:var(--gray-800);font-weight:600}.admin-layout .tournament-dashboard .tournament-description-card{background-color:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.admin-layout .tournament-dashboard .tournament-description-card h3{margin-top:0;margin-bottom:1rem;font-size:1.2rem}.admin-layout .tournament-dashboard .tournament-description-card p{color:var(--gray-700);margin-bottom:0;line-height:1.6}.admin-layout .tournament-dashboard .no-data{text-align:center;color:var(--gray-600);padding:1.5rem 0}.admin-layout .tournament-dashboard .no-data p{margin-bottom:1rem}@media (width<=768px){.admin-layout .tournament-dashboard .dashboard-header{flex-direction:column;gap:1rem}.admin-layout .tournament-dashboard .header-actions{justify-content:center;width:100%}.admin-layout .tournament-dashboard .dashboard-widgets{grid-template-columns:1fr}}.admin-layout .tournament-dashboard .participants-table-container{overflow-x:auto}.admin-layout .tournament-dashboard .participants-table{border-collapse:collapse;width:100%;font-size:.9rem}.admin-layout .tournament-dashboard .participants-table th,.admin-layout .tournament-dashboard .participants-table td{text-align:center;border-bottom:1px solid var(--gray-200);padding:.5rem .25rem}.admin-layout .tournament-dashboard .participants-table th{background-color:var(--gray-100);color:var(--gray-700);text-transform:uppercase;font-size:.8rem;font-weight:600}.admin-layout .tournament-dashboard .participants-table tr:last-child td{border-bottom:none}.admin-layout .tournament-dashboard .rank-cell{color:var(--gray-700);width:40px;font-weight:600}.admin-layout .tournament-dashboard .participant-name{text-align:left;color:var(--gray-800);text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-weight:500;overflow:hidden}.admin-layout .tournament-dashboard .points-cell{width:45px;font-weight:600}.admin-layout .tournament-dashboard .points-cell.prediction-points{color:var(--primary-color)}.admin-layout .tournament-dashboard .points-cell.striker-points{color:var(--success-color)}.admin-layout .tournament-dashboard .points-cell.total-points{color:var(--gray-800);background-color:var(--gray-100)}.admin-layout .tournament-leaderboard{max-width:1200px;margin:0 auto;padding:2rem 0}.admin-layout .tournament-leaderboard .leaderboard-header{border-bottom:2px solid var(--gray-200);justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;display:flex}.admin-layout .tournament-leaderboard .header-content h1{color:var(--gray-800);margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.admin-layout .tournament-leaderboard .tournament-dates{color:var(--gray-600);margin-bottom:.5rem;font-size:.9rem}.admin-layout .tournament-leaderboard .header-actions{align-items:center;gap:.75rem;display:flex}.admin-layout .tournament-leaderboard .leaderboard-controls{background-color:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem;display:flex}.admin-layout .tournament-leaderboard .results-info{color:var(--gray-700);font-weight:500}.admin-layout .tournament-leaderboard .pagination-controls{align-items:center;gap:.5rem;display:flex}.admin-layout .tournament-leaderboard .pagination-controls label{color:var(--gray-700);font-weight:500}.admin-layout .tournament-leaderboard .page-size-select{border:1px solid var(--gray-300);color:var(--gray-700);background-color:#fff;border-radius:4px;padding:.25rem .5rem;font-size:.9rem}.admin-layout .tournament-leaderboard .page-size-select:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 2px #3b82f61a}.admin-layout .tournament-leaderboard .leaderboard-table-container{border:1px solid var(--gray-200);background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.admin-layout .tournament-leaderboard .leaderboard-table{border-collapse:collapse;width:100%}.admin-layout .tournament-leaderboard .leaderboard-table th,.admin-layout .tournament-leaderboard .leaderboard-table td{text-align:center;border-bottom:1px solid var(--gray-200);padding:.75rem .5rem}.admin-layout .tournament-leaderboard .leaderboard-table th{background-color:var(--gray-100);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;z-index:10;font-size:.85rem;font-weight:600;position:sticky;top:0}.admin-layout .tournament-leaderboard .leaderboard-table tbody tr:hover{background-color:var(--gray-50)}.admin-layout .tournament-leaderboard .leaderboard-table tr:last-child td{border-bottom:none}.admin-layout .tournament-leaderboard .rank-cell{color:var(--gray-700);width:60px;font-size:.95rem;font-weight:600}.admin-layout .tournament-leaderboard .participant-name{color:var(--gray-800);min-width:140px;padding-left:1rem;font-weight:500;text-align:left!important}.admin-layout .tournament-leaderboard .leaderboard-table th:nth-child(2),.admin-layout .tournament-leaderboard .leaderboard-table td:nth-child(2){text-align:left!important}.admin-layout .tournament-leaderboard .participant-link{color:var(--primary-color);font-weight:500;text-decoration:none}.admin-layout .tournament-leaderboard .participant-link:hover{color:var(--primary-dark);text-decoration:underline}.admin-layout .tournament-leaderboard .points-cell{width:60px;font-weight:600}.admin-layout .tournament-leaderboard .points-cell.prediction-points{color:var(--primary-color)}.admin-layout .tournament-leaderboard .points-cell.correct-score-points{color:var(--info-color)}.admin-layout .tournament-leaderboard .points-cell.striker-points{color:var(--success-color)}.admin-layout .tournament-leaderboard .points-cell.top-teams-points{color:var(--warning-color)}.admin-layout .tournament-leaderboard .points-cell.total-points{color:var(--gray-800);background-color:var(--gray-100);font-weight:700}.admin-layout .tournament-leaderboard .no-data{text-align:center;color:var(--gray-500);padding:2rem;font-style:italic}.admin-layout .tournament-leaderboard .pagination{justify-content:center;align-items:center;gap:.5rem;margin-top:2rem;padding:1rem;display:flex}.admin-layout .tournament-leaderboard .page-info{color:var(--gray-700);margin:0 1rem;font-size:.9rem;font-weight:500}.admin-layout .tournament-leaderboard .pagination .btn{min-width:70px}.admin-layout .tournament-leaderboard .pagination .btn:disabled{opacity:.5;cursor:not-allowed}.admin-layout .tournament-leaderboard .admin-loading{text-align:center;color:var(--gray-600);padding:3rem;font-size:1.1rem}.admin-layout .tournament-leaderboard .admin-error{text-align:center;color:var(--danger-color);background-color:var(--danger-light);border:1px solid var(--danger-color);border-radius:8px;margin:1rem 0;padding:2rem}@media (width<=768px){.admin-layout .tournament-leaderboard{padding:1rem}.admin-layout .tournament-leaderboard .leaderboard-header{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .tournament-leaderboard .header-content h1{font-size:1.5rem}.admin-layout .tournament-leaderboard .header-actions{justify-content:flex-start}.admin-layout .tournament-leaderboard .leaderboard-controls{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .tournament-leaderboard .pagination-controls{justify-content:center}.admin-layout .tournament-leaderboard .leaderboard-table-container{overflow-x:auto}.admin-layout .tournament-leaderboard .leaderboard-table{min-width:600px}.admin-layout .tournament-leaderboard .leaderboard-table th,.admin-layout .tournament-leaderboard .leaderboard-table td{padding:.5rem .25rem}.admin-layout .tournament-leaderboard .participant-name{min-width:100px;padding-left:.5rem}.admin-layout .tournament-leaderboard .points-cell{width:45px}.admin-layout .tournament-leaderboard .pagination{flex-wrap:wrap;gap:.25rem}.admin-layout .tournament-leaderboard .pagination .btn{min-width:60px;font-size:.8rem}.admin-layout .tournament-leaderboard .page-info{text-align:center;order:-1;width:100%;margin:.5rem}}@media (width<=480px){.admin-layout .tournament-leaderboard .leaderboard-table th,.admin-layout .tournament-leaderboard .leaderboard-table td{padding:.4rem .2rem;font-size:.8rem}.admin-layout .tournament-leaderboard .rank-cell,.admin-layout .tournament-leaderboard .points-cell{width:35px}.admin-layout .tournament-leaderboard .participant-name{min-width:80px}.admin-layout .tournament-leaderboard .header-content h1{font-size:1.25rem}}.admin-layout .admin-final-standings{width:100%;padding:1.5rem}.admin-layout .admin-final-standings .admin-panel-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.admin-layout .admin-final-standings .admin-panel-header h1{color:var(--gray-800);margin:0;font-size:2rem}.admin-layout .admin-final-standings .admin-panel-content{background-color:#fff;border-radius:.5rem;padding:2rem;box-shadow:0 2px 4px #0000001a}.admin-layout .admin-final-standings .form-section{border-bottom:1px solid var(--gray-200);margin-bottom:2.5rem;padding-bottom:2rem}.admin-layout .admin-final-standings .form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.admin-layout .admin-final-standings .form-section h3{color:var(--gray-800);margin:0 0 .5rem;font-size:1.25rem}.admin-layout .admin-final-standings .hint{color:var(--gray-600);margin-bottom:1.5rem;font-size:.875rem}.admin-layout .admin-final-standings .placement-row{margin-bottom:1rem}.admin-layout .admin-final-standings .placement-controls{align-items:center;gap:1rem;display:flex}.admin-layout .admin-final-standings .placement-controls select{flex:1}.admin-layout .admin-final-standings .finalize-checkbox{color:var(--gray-700);white-space:nowrap;cursor:pointer;align-items:center;gap:.4rem;font-size:.9rem;display:flex}.admin-layout .admin-final-standings .finalize-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.admin-layout .admin-final-standings .finalize-checkbox input:disabled+span{color:var(--gray-400);cursor:not-allowed}.admin-layout .admin-final-standings .reopen-confirm{background:#fff3cd;border:1px solid #ffe69c;border-radius:4px;align-items:center;gap:.5rem;padding:.4rem .6rem;display:flex}.admin-layout .admin-final-standings .reopen-confirm-text{color:#664d03;white-space:nowrap;font-size:.85rem}.admin-layout .admin-final-standings .form-actions{justify-content:flex-end;margin-top:1.5rem;display:flex}.admin-layout .admin-final-standings .form-actions-right{gap:1rem;display:flex}.admin-layout .admin-final-standings .striker-list{flex-direction:column;gap:.5rem;max-height:400px;display:flex;overflow-y:auto}.admin-layout .admin-final-standings .striker-item{border:1px solid var(--gray-300);cursor:pointer;border-radius:.25rem;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:all .15s;display:flex}.admin-layout .admin-final-standings .striker-item:hover{background:var(--gray-100);border-color:var(--gray-400)}.admin-layout .admin-final-standings .striker-item.selected{border-color:var(--success-color);background:#e8f5e9}.admin-layout .admin-final-standings .striker-item input[type=checkbox]{cursor:pointer;width:18px;height:18px}.admin-layout .admin-final-standings .striker-name{flex:1;font-weight:600}.admin-layout .admin-final-standings .striker-team{color:var(--gray-600);font-size:.9rem}.admin-layout .admin-final-standings .striker-goals{background:var(--primary-color);color:#fff;border-radius:1rem;padding:.25rem .75rem;font-size:.85rem;font-weight:600}@media (width<=768px){.admin-layout .admin-final-standings{padding:1rem}.admin-layout .admin-final-standings .admin-panel-header{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .admin-final-standings .admin-panel-header h1{text-align:center;font-size:1.5rem}.admin-layout .admin-final-standings .admin-panel-content{padding:1rem}.admin-layout .admin-final-standings .form-actions,.admin-layout .admin-final-standings .form-actions-right{flex-direction:column}}.admin-layout .copy-tournament-banner{flex-direction:column;gap:.5rem;display:flex}.admin-layout .copy-tournament-banner strong{font-size:1rem}.admin-layout .copy-tournament-banner p{margin:0;font-size:.875rem}.admin-layout .copy-tournament-banner .btn{align-self:flex-start;margin-top:.5rem}.admin-layout .admin-user-list,.admin-layout .admin-tournament-list,.admin-layout .admin-team-list,.admin-layout .admin-player-list,.admin-layout .admin-match-list{background-color:var(--gray-100);min-height:100vh;padding:2rem}.admin-layout .admin-panel-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.admin-layout .admin-panel-header h1{color:var(--gray-800);margin:0;font-size:2rem;font-weight:600}.admin-layout .search-box{max-width:400px;margin-bottom:1.5rem;position:relative}.admin-layout .search-input{border:1px solid var(--gray-300);border-radius:.5rem;width:100%;padding:.75rem 2.5rem .75rem 1rem;font-size:1rem;transition:border-color .15s ease-in-out}.admin-layout .search-input:focus{border-color:var(--primary-color);outline:0;box-shadow:0 0 0 .2rem #1e88e540}.admin-layout .clear-search{color:var(--gray-500);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:1.25rem;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.admin-layout .clear-search:hover{color:var(--gray-700)}.admin-layout .filter-section{flex-wrap:wrap;align-items:center;gap:2rem;margin-bottom:1.5rem;display:flex}.admin-layout .tournament-filter{align-items:center;gap:.5rem;display:flex}.admin-layout .tournament-filter label{color:var(--gray-700);font-weight:500}.admin-layout .tournament-select{border:1px solid var(--gray-300);border-radius:.25rem;min-width:200px;padding:.5rem 1rem;font-size:.875rem}.admin-layout .status-filter{gap:.25rem;display:flex}.admin-layout .filter-btn{border:1px solid var(--gray-300);color:var(--gray-700);cursor:pointer;background-color:#fff;border-radius:.25rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s ease-in-out}.admin-layout .filter-btn:hover{background-color:var(--gray-50);border-color:var(--gray-400)}.admin-layout .filter-btn.active{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.admin-layout .admin-panel-content{background-color:#fff;border-radius:.5rem;overflow:hidden;box-shadow:0 2px 4px #0000001a}.admin-layout .admin-table{border-collapse:collapse;width:100%;margin:0}.admin-layout .admin-table th,.admin-layout .admin-table td{text-align:left;border-bottom:1px solid var(--gray-200);vertical-align:middle;padding:.625rem 1rem}.admin-layout .admin-table th{background-color:var(--gray-100);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:600}.admin-layout .admin-table tbody tr:hover{background-color:var(--gray-50)}.admin-layout .flag-column,.admin-layout .photo-column{text-align:center;width:80px}.admin-layout .team-flag,.admin-layout .player-photo{object-fit:cover;border-radius:.25rem;width:32px;height:24px;box-shadow:0 0 0 1px #00000026}.admin-layout .player-photo{border-radius:50%;width:40px;height:40px}.admin-layout .no-flag,.admin-layout .no-photo{color:var(--gray-500);font-size:.75rem;font-style:italic}.admin-layout .teams-column{min-width:200px}.admin-layout .match-teams{align-items:center;gap:.5rem;display:flex}.admin-layout .team-name{font-weight:500}.admin-layout .vs{color:var(--gray-500);font-size:.875rem}.admin-layout .score-column{text-align:center;min-width:80px}.admin-layout .match-score{color:var(--gray-800);font-weight:600}.admin-layout .not-played{color:var(--gray-500);font-size:.875rem;font-style:italic}.admin-layout .shirt-number{text-align:center}.admin-layout .number-badge{background-color:var(--primary-color);color:#fff;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.admin-layout .no-number{color:var(--gray-500);font-size:.875rem}.admin-layout .predictions-column{text-align:center}.admin-layout .prediction-count{background-color:var(--gray-100);color:var(--gray-700);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;font-weight:500}.admin-layout .status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.admin-layout .status-badge.active{background-color:var(--success-color);color:#fff}.admin-layout .status-badge.inactive{background-color:var(--gray-400);color:#fff}.admin-layout .status-select{border:1px solid var(--gray-300);cursor:pointer;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.admin-layout .status-select.scheduled{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff!important}.admin-layout .status-select.in_progress{background-color:var(--warning-color);border-color:var(--warning-color);color:#fff!important}.admin-layout .status-select.completed{background-color:var(--success-color);border-color:var(--success-color);color:#fff!important}.admin-layout .actions{white-space:nowrap;text-align:right;min-width:200px}.admin-layout .actions .btn{margin-left:.5rem}.admin-layout .btn-danger{background-color:var(--danger-color);border-color:var(--danger-color);color:#fff}.admin-layout .btn-danger:hover{background-color:#c82333;border-color:#bd2130}.admin-layout .actions .btn:first-child{margin-left:0}.admin-layout .empty-table{text-align:center;color:var(--gray-500);padding:3rem 1rem;font-style:italic}.admin-layout .admin-pagination{border-top:1px solid var(--gray-200);background-color:var(--gray-50);justify-content:center;align-items:center;gap:1rem;padding:1.5rem;display:flex}.admin-layout .page-info{color:var(--gray-600);font-size:.875rem;font-weight:500}.admin-layout .admin-loading,.admin-layout .admin-error{text-align:center;padding:3rem;font-size:1.125rem}.admin-layout .admin-loading{color:var(--gray-600)}.admin-layout .admin-error{color:var(--danger-color);background-color:#dc35451a;border-radius:.5rem;margin:2rem}@media (width<=1024px){.admin-layout .admin-panel-header{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .admin-panel-header h1{text-align:center}.admin-layout .filter-section{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .status-filter{justify-content:center}}@media (width<=768px){.admin-layout .admin-user-list,.admin-layout .admin-tournament-list,.admin-layout .admin-team-list,.admin-layout .admin-player-list,.admin-layout .admin-match-list{padding:1rem}.admin-layout .admin-table{font-size:.875rem}.admin-layout .admin-table th,.admin-layout .admin-table td{padding:.5rem}.admin-layout .actions{min-width:auto}.admin-layout .actions .btn{padding:.25rem .5rem;font-size:.75rem}@media (width<=480px){.admin-layout .actions{flex-direction:column;gap:.25rem;display:flex}.admin-layout .actions .btn{margin-left:0}}.admin-layout .admin-panel-content{overflow-x:auto}.admin-layout .admin-table{min-width:600px}}.admin-layout .admin-tournament-matches .home-team,.admin-layout .admin-tournament-matches .away-team{min-width:120px;font-weight:500}.admin-layout .admin-tournament-matches .date-column{white-space:nowrap;min-width:100px}.admin-layout .admin-tournament-matches .time-column{white-space:nowrap;min-width:80px}.admin-layout .admin-tournament-matches .admin-table th,.admin-layout .admin-tournament-matches .admin-table td{vertical-align:middle;padding:.5rem 1rem;line-height:1.4}.admin-layout .admin-tournament-matches .score-column{text-align:center}.admin-layout .admin-tournament-matches .score-column span{color:inherit!important;background:0 0!important;padding:0!important;font-weight:400!important}.admin-layout .admin-match-form{width:100%;padding:1.5rem}.admin-layout .match-form-layout{gap:2rem;display:flex}.admin-layout .match-form-layout .admin-panel-content{flex:3;min-width:0}.admin-layout .match-form-layout .right-column{flex-direction:column;flex:2;gap:1rem;min-width:280px;display:flex}.admin-layout .match-form-layout .score-panel{background-color:var(--gray-50);border:1px solid var(--gray-200);border-radius:.5rem;padding:1rem 1.5rem}.admin-layout .match-form-layout .score-panel h3{margin:0 0 .75rem;font-size:1rem;font-weight:600}.admin-layout .score-actions{margin-top:1rem}.admin-layout .score-actions .btn{width:100%}.admin-layout .match-form-layout .goals-panel{background-color:var(--gray-50);border:1px solid var(--gray-200);border-radius:.5rem;padding:1rem 1.5rem}.admin-layout .match-form-layout .goals-panel h3{margin:0 0 .75rem;font-size:1rem;font-weight:600}@media (width<=900px){.admin-layout .match-form-layout{flex-direction:column}.admin-layout .match-form-layout .right-column{min-width:0}}.admin-layout .score-inputs{justify-content:flex-start;align-items:center;gap:.5rem;display:flex}.admin-layout .score-group{flex-direction:column;align-items:center;gap:.25rem;display:flex}.admin-layout .score-group label{color:var(--gray-600);margin:0;font-size:.85rem;font-weight:500}.admin-layout .score-group input{text-align:center;border:1px solid var(--gray-300);border-radius:.375rem;width:60px;padding:.4rem .5rem;font-size:1.1rem;font-weight:600}.admin-layout .score-group input::placeholder{color:var(--gray-400)}.admin-layout .score-separator{color:var(--gray-500);margin-top:1.25rem;font-size:1.2rem;font-weight:500}.admin-layout .team-label{align-items:center;margin-bottom:.5rem;display:flex}.admin-layout .team-flag{width:20px;height:15px;margin-right:.5rem;box-shadow:0 0 0 1px #00000026}.admin-layout .time-warning{color:var(--warning-color);margin-top:.25rem;font-size:.85rem}.admin-layout .prediction-info{background-color:var(--gray-100);border-left:4px solid var(--primary-color);border-radius:.5rem;margin-top:1.5rem;padding:1rem}.admin-layout .prediction-info p{color:var(--gray-700);margin:0}.admin-layout .add-goal-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.admin-layout .add-goal-row select{border:1px solid var(--gray-300);border-radius:.375rem;padding:.4rem .5rem;font-size:.9rem}.admin-layout .add-goal-group{margin-bottom:.75rem}.admin-layout .add-goal-team-label{margin-bottom:.25rem;font-size:.9rem;font-weight:500;display:block}.admin-layout .add-goal-row select{flex:1;min-width:120px}.admin-layout .add-goal-row .btn{padding:.4rem .75rem;font-size:.9rem}.admin-layout .no-players-warning{color:var(--warning-color);margin:.5rem 0;font-size:.9rem}.admin-layout .no-players-warning a{color:var(--primary-color)}.admin-layout .goals-list{flex-direction:column;gap:.5rem;display:flex}.admin-layout .goal-item{border:1px solid var(--gray-200);background-color:#fff;border-radius:.375rem;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.9rem;display:flex}.admin-layout .goal-player{font-weight:500}.admin-layout .goal-team{color:var(--gray-600);font-size:.9rem}.admin-layout .goal-item .btn-danger{margin-left:auto}.admin-layout .no-goals{color:var(--gray-500);margin:.5rem 0;font-style:italic}.admin-layout .copy-match-banner{background:#fef3c7;border:1px solid #f59e0b;border-radius:.5rem;margin-bottom:0;padding:1rem}.admin-layout .copy-match-banner strong{color:#92400e;margin-bottom:.5rem;display:block}.admin-layout .copy-match-banner p{color:#78350f;margin:0 0 .75rem;font-size:.875rem;line-height:1.5}.admin-layout .copy-match-banner .btn{padding:.25rem .5rem;font-size:.75rem}.admin-layout .admin-round-form{width:100%;padding:1.5rem}.admin-layout .form-row{gap:1rem;margin-bottom:1rem;display:flex}.admin-layout .form-group.half{flex:1}.admin-layout .hint{color:var(--gray-600);font-size:.8rem;font-weight:400}.admin-layout .form-hint{color:var(--gray-600);margin-top:.25rem;font-size:.85rem}.admin-layout .form-actions{justify-content:flex-end;align-items:center;gap:1rem;margin-top:2rem;display:flex}.admin-layout .form-actions .btn-danger{margin-right:auto}.admin-layout .form-actions-right{gap:1rem;display:flex}.admin-layout .admin-user-list,.admin-layout .admin-tournament-list,.admin-layout .admin-team-list,.admin-layout .admin-player-list,.admin-layout .admin-match-list{background-color:var(--gray-100);min-height:100vh;padding:2rem}.admin-layout .admin-panel-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.admin-layout .admin-panel-header h1{color:var(--gray-800);margin:0;font-size:2rem;font-weight:600}.admin-layout .search-box{max-width:400px;margin-bottom:1.5rem;position:relative}.admin-layout .search-input{border:1px solid var(--gray-300);border-radius:.5rem;width:100%;padding:.75rem 2.5rem .75rem 1rem;font-size:1rem;transition:border-color .15s ease-in-out}.admin-layout .search-input:focus{border-color:var(--primary-color);outline:0;box-shadow:0 0 0 .2rem #1e88e540}.admin-layout .clear-search{color:var(--gray-500);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:1.25rem;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.admin-layout .clear-search:hover{color:var(--gray-700)}.admin-layout .filter-section{flex-wrap:wrap;align-items:center;gap:2rem;margin-bottom:1.5rem;display:flex}.admin-layout .tournament-filter{align-items:center;gap:.5rem;display:flex}.admin-layout .tournament-filter label{color:var(--gray-700);font-weight:500}.admin-layout .tournament-select{border:1px solid var(--gray-300);border-radius:.25rem;min-width:200px;padding:.5rem 1rem;font-size:.875rem}.admin-layout .status-filter{gap:.25rem;display:flex}.admin-layout .filter-btn{border:1px solid var(--gray-300);color:var(--gray-700);cursor:pointer;background-color:#fff;border-radius:.25rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s ease-in-out}.admin-layout .filter-btn:hover{background-color:var(--gray-50);border-color:var(--gray-400)}.admin-layout .filter-btn.active{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.admin-layout .admin-panel-content{background-color:#fff;border-radius:.5rem;overflow:hidden;box-shadow:0 2px 4px #0000001a}.admin-layout .admin-table{border-collapse:collapse;width:100%;margin:0}.admin-layout .admin-table th,.admin-layout .admin-table td{text-align:left;border-bottom:1px solid var(--gray-200);vertical-align:middle;padding:.625rem 1rem}.admin-layout .admin-table th{background-color:var(--gray-100);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:600}.admin-layout .admin-table tbody tr:hover{background-color:var(--gray-50)}.admin-layout .flag-column,.admin-layout .photo-column{text-align:center;width:80px}.admin-layout .team-flag,.admin-layout .player-photo{object-fit:cover;border-radius:.25rem;width:32px;height:24px;box-shadow:0 0 0 1px #00000026}.admin-layout .player-photo{border-radius:50%;width:40px;height:40px}.admin-layout .no-flag,.admin-layout .no-photo{color:var(--gray-500);font-size:.75rem;font-style:italic}.admin-layout .teams-column{min-width:200px}.admin-layout .match-teams{align-items:center;gap:.5rem;display:flex}.admin-layout .team-name{font-weight:500}.admin-layout .vs{color:var(--gray-500);font-size:.875rem}.admin-layout .score-column{text-align:center;min-width:80px}.admin-layout .match-score{color:var(--gray-800);font-weight:600}.admin-layout .not-played{color:var(--gray-500);font-size:.875rem;font-style:italic}.admin-layout .shirt-number{text-align:center}.admin-layout .number-badge{background-color:var(--primary-color);color:#fff;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.admin-layout .no-number{color:var(--gray-500);font-size:.875rem}.admin-layout .predictions-column{text-align:center}.admin-layout .prediction-count{background-color:var(--gray-100);color:var(--gray-700);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;font-weight:500}.admin-layout .status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.admin-layout .status-badge.active{background-color:var(--success-color);color:#fff}.admin-layout .status-badge.inactive{background-color:var(--gray-400);color:#fff}.admin-layout .status-select{border:1px solid var(--gray-300);cursor:pointer;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.admin-layout .status-select.scheduled{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff!important}.admin-layout .status-select.in_progress{background-color:var(--warning-color);border-color:var(--warning-color);color:#fff!important}.admin-layout .status-select.completed{background-color:var(--success-color);border-color:var(--success-color);color:#fff!important}.admin-layout .actions{white-space:nowrap;text-align:right;min-width:200px}.admin-layout .actions .btn{margin-left:.5rem}.admin-layout .btn-danger{background-color:var(--danger-color);border-color:var(--danger-color);color:#fff}.admin-layout .btn-danger:hover{background-color:#c82333;border-color:#bd2130}.admin-layout .actions .btn:first-child{margin-left:0}.admin-layout .empty-table{text-align:center;color:var(--gray-500);padding:3rem 1rem;font-style:italic}.admin-layout .admin-pagination{border-top:1px solid var(--gray-200);background-color:var(--gray-50);justify-content:center;align-items:center;gap:1rem;padding:1.5rem;display:flex}.admin-layout .page-info{color:var(--gray-600);font-size:.875rem;font-weight:500}.admin-layout .admin-loading,.admin-layout .admin-error{text-align:center;padding:3rem;font-size:1.125rem}.admin-layout .admin-loading{color:var(--gray-600)}.admin-layout .admin-error{color:var(--danger-color);background-color:#dc35451a;border-radius:.5rem;margin:2rem}@media (width<=1024px){.admin-layout .admin-panel-header{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .admin-panel-header h1{text-align:center}.admin-layout .filter-section{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .status-filter{justify-content:center}}@media (width<=768px){.admin-layout .admin-user-list,.admin-layout .admin-tournament-list,.admin-layout .admin-team-list,.admin-layout .admin-player-list,.admin-layout .admin-match-list{padding:1rem}.admin-layout .admin-table{font-size:.875rem}.admin-layout .admin-table th,.admin-layout .admin-table td{padding:.5rem}.admin-layout .actions{min-width:auto}.admin-layout .actions .btn{padding:.25rem .5rem;font-size:.75rem}@media (width<=480px){.admin-layout .actions{flex-direction:column;gap:.25rem;display:flex}.admin-layout .actions .btn{margin-left:0}}.admin-layout .admin-panel-content{overflow-x:auto}.admin-layout .admin-table{min-width:600px}}.admin-layout .admin-round-matches{width:100%;padding:1.5rem}.admin-layout .header-actions{gap:1rem;display:flex}.admin-layout .tournament-meta{background-color:#fff;border-radius:.5rem;justify-content:space-between;margin-bottom:1.5rem;padding:1rem 1.5rem;display:flex;box-shadow:0 1px 3px #0000001a}.admin-layout .tournament-meta p{margin:0}.admin-layout .matches-table td{vertical-align:middle}.admin-layout .teams-column{min-width:200px}.admin-layout .match-teams{flex-direction:column;gap:.25rem;display:flex}.admin-layout .team-name{font-weight:500}.admin-layout .vs{color:var(--gray-500);font-size:.8rem}.admin-layout .score-column{text-align:center}.admin-layout .match-score{color:var(--gray-800);font-weight:600}.admin-layout .not-played{color:var(--gray-500);font-size:.9rem;font-style:italic}.admin-layout .predictions-column{text-align:center}.admin-layout .prediction-count{color:var(--gray-700);background-color:var(--gray-200);border-radius:1rem;padding:.25rem .5rem;font-size:.9rem}.admin-layout .status-select{border:1px solid var(--gray-300);background-color:#fff;border-radius:.25rem;padding:.25rem .5rem;font-size:.9rem}.admin-layout .status-select.scheduled{border-color:var(--primary-color);color:var(--primary-color)}.admin-layout .status-select.in_progress{border-color:var(--warning-color);color:var(--warning-color)}.admin-layout .status-select.completed{border-color:var(--success-color);color:var(--success-color)}.admin-layout .no-data{text-align:center;color:var(--gray-600);background-color:#fff;border-radius:.25rem;padding:3rem}.admin-layout .actions{white-space:nowrap;gap:.5rem;display:flex}@media (width<=992px){.admin-layout .admin-table{display:block;overflow-x:auto}.admin-layout .tournament-meta{flex-direction:column;gap:.5rem}}.admin-layout .admin-team-detail{width:100%;padding:1.5rem}.admin-layout .admin-form{max-width:600px;padding:2rem}.admin-layout .form-group{margin-bottom:1.5rem}.admin-layout .form-group label{margin-bottom:.5rem;font-weight:500;display:block}.admin-layout .form-group input{border:1px solid var(--gray-300);border-radius:.25rem;width:100%;padding:.75rem 1rem;font-size:1rem;transition:border-color .15s ease-in-out;display:block}.admin-layout .form-group input:focus{border-color:var(--primary-color);outline:0;box-shadow:0 0 0 .2rem #1e88e540}.admin-layout .form-text{color:var(--gray-600);margin-top:.25rem;font-size:.85rem;display:block}.admin-layout .abbreviation-input{text-transform:uppercase;max-width:100px}.admin-layout .flag-preview{margin-bottom:1.5rem}.admin-layout .flag-preview label{margin-bottom:.5rem;font-weight:500;display:block}.admin-layout .preview-container{border:1px solid var(--gray-300);background-color:var(--gray-100);border-radius:.25rem;max-width:150px;padding:.5rem}.admin-layout .preview-container img{max-width:100%;height:auto;display:block}.admin-layout .preview-error{text-align:center;color:var(--danger-color);padding:1rem;font-style:italic;font-weight:400;display:block}.admin-layout .form-actions{justify-content:flex-end;gap:1rem;margin-top:2rem;display:flex}.admin-layout .alert{border:1px solid #0000;border-radius:.25rem;margin-bottom:1rem;padding:.75rem 1.25rem;position:relative}.admin-layout .alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.admin-layout .admin-tournament-teams{width:100%;padding:1.5rem}.admin-layout .header-actions{gap:1rem;display:flex}.admin-layout .admin-panel-content{flex-direction:column;gap:2rem;display:flex}.admin-layout .teams-section,.admin-layout .add-teams-section{background-color:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 2px 5px #0000001a}.admin-layout .teams-section h2,.admin-layout .add-teams-section h2{color:var(--gray-800);margin-bottom:1.5rem;font-size:1.5rem}.admin-layout .team-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;display:grid}.admin-layout .team-card{background-color:var(--gray-100);border-radius:.5rem;flex-direction:column;padding:1.5rem;transition:transform .2s,box-shadow .2s;display:flex;position:relative}.admin-layout .team-card-content{flex-direction:column;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.admin-layout .team-flag-container{border-radius:.25rem;justify-content:center;align-items:center;width:60px;height:40px;display:flex;overflow:hidden;box-shadow:0 0 0 1px #00000026}.admin-layout .team-flag{max-width:100%;max-height:100%}.admin-layout .team-info{text-align:center}.admin-layout .team-info h3{margin-bottom:.25rem;font-size:1.1rem}.admin-layout .team-abbreviation{background-color:var(--gray-200);border-radius:.25rem;padding:.2rem .5rem;font-size:.8rem;font-weight:600;display:inline-block}.admin-layout .no-teams{text-align:center;color:var(--gray-600);padding:2rem}.admin-layout .search-and-select{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;display:flex}.admin-layout .search-box{flex:1;min-width:200px;position:relative}.admin-layout .select-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-layout .team-card.selectable{cursor:pointer;padding-top:2.5rem;position:relative;overflow:hidden}.admin-layout .selection-indicator{background-color:#0000;height:.5rem;position:absolute;top:0;left:0;right:0}.admin-layout .team-card.selectable:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.admin-layout .team-card.selectable.selected{border:1px solid var(--primary-color);background-color:#1e88e51a}.admin-layout .team-card.selectable.selected .selection-indicator{background-color:var(--primary-color)}@media (width<=768px){.admin-layout .search-and-select{flex-direction:column}.admin-layout .search-box{width:100%}.admin-layout .select-actions{justify-content:space-between;width:100%}}.admin-layout .remove-team{margin-top:auto}.admin-layout .team-actions{flex-direction:column;gap:.5rem;margin-top:auto;display:flex}.admin-layout .admin-user-list,.admin-layout .admin-tournament-list,.admin-layout .admin-team-list,.admin-layout .admin-player-list,.admin-layout .admin-match-list{background-color:var(--gray-100);min-height:100vh;padding:2rem}.admin-layout .admin-panel-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.admin-layout .admin-panel-header h1{color:var(--gray-800);margin:0;font-size:2rem;font-weight:600}.admin-layout .search-box{max-width:400px;margin-bottom:1.5rem;position:relative}.admin-layout .search-input{border:1px solid var(--gray-300);border-radius:.5rem;width:100%;padding:.75rem 2.5rem .75rem 1rem;font-size:1rem;transition:border-color .15s ease-in-out}.admin-layout .search-input:focus{border-color:var(--primary-color);outline:0;box-shadow:0 0 0 .2rem #1e88e540}.admin-layout .clear-search{color:var(--gray-500);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:1.25rem;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.admin-layout .clear-search:hover{color:var(--gray-700)}.admin-layout .filter-section{flex-wrap:wrap;align-items:center;gap:2rem;margin-bottom:1.5rem;display:flex}.admin-layout .tournament-filter{align-items:center;gap:.5rem;display:flex}.admin-layout .tournament-filter label{color:var(--gray-700);font-weight:500}.admin-layout .tournament-select{border:1px solid var(--gray-300);border-radius:.25rem;min-width:200px;padding:.5rem 1rem;font-size:.875rem}.admin-layout .status-filter{gap:.25rem;display:flex}.admin-layout .filter-btn{border:1px solid var(--gray-300);color:var(--gray-700);cursor:pointer;background-color:#fff;border-radius:.25rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s ease-in-out}.admin-layout .filter-btn:hover{background-color:var(--gray-50);border-color:var(--gray-400)}.admin-layout .filter-btn.active{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.admin-layout .admin-panel-content{background-color:#fff;border-radius:.5rem;overflow:hidden;box-shadow:0 2px 4px #0000001a}.admin-layout .admin-table{border-collapse:collapse;width:100%;margin:0}.admin-layout .admin-table th,.admin-layout .admin-table td{text-align:left;border-bottom:1px solid var(--gray-200);vertical-align:middle;padding:.625rem 1rem}.admin-layout .admin-table th{background-color:var(--gray-100);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:600}.admin-layout .admin-table tbody tr:hover{background-color:var(--gray-50)}.admin-layout .flag-column,.admin-layout .photo-column{text-align:center;width:80px}.admin-layout .team-flag,.admin-layout .player-photo{object-fit:cover;border-radius:.25rem;width:32px;height:24px;box-shadow:0 0 0 1px #00000026}.admin-layout .player-photo{border-radius:50%;width:40px;height:40px}.admin-layout .no-flag,.admin-layout .no-photo{color:var(--gray-500);font-size:.75rem;font-style:italic}.admin-layout .teams-column{min-width:200px}.admin-layout .match-teams{align-items:center;gap:.5rem;display:flex}.admin-layout .team-name{font-weight:500}.admin-layout .vs{color:var(--gray-500);font-size:.875rem}.admin-layout .score-column{text-align:center;min-width:80px}.admin-layout .match-score{color:var(--gray-800);font-weight:600}.admin-layout .not-played{color:var(--gray-500);font-size:.875rem;font-style:italic}.admin-layout .shirt-number{text-align:center}.admin-layout .number-badge{background-color:var(--primary-color);color:#fff;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.admin-layout .no-number{color:var(--gray-500);font-size:.875rem}.admin-layout .predictions-column{text-align:center}.admin-layout .prediction-count{background-color:var(--gray-100);color:var(--gray-700);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;font-weight:500}.admin-layout .status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.admin-layout .status-badge.active{background-color:var(--success-color);color:#fff}.admin-layout .status-badge.inactive{background-color:var(--gray-400);color:#fff}.admin-layout .status-select{border:1px solid var(--gray-300);cursor:pointer;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.admin-layout .status-select.scheduled{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff!important}.admin-layout .status-select.in_progress{background-color:var(--warning-color);border-color:var(--warning-color);color:#fff!important}.admin-layout .status-select.completed{background-color:var(--success-color);border-color:var(--success-color);color:#fff!important}.admin-layout .actions{white-space:nowrap;text-align:right;min-width:200px}.admin-layout .actions .btn{margin-left:.5rem}.admin-layout .btn-danger{background-color:var(--danger-color);border-color:var(--danger-color);color:#fff}.admin-layout .btn-danger:hover{background-color:#c82333;border-color:#bd2130}.admin-layout .actions .btn:first-child{margin-left:0}.admin-layout .empty-table{text-align:center;color:var(--gray-500);padding:3rem 1rem;font-style:italic}.admin-layout .admin-pagination{border-top:1px solid var(--gray-200);background-color:var(--gray-50);justify-content:center;align-items:center;gap:1rem;padding:1.5rem;display:flex}.admin-layout .page-info{color:var(--gray-600);font-size:.875rem;font-weight:500}.admin-layout .admin-loading,.admin-layout .admin-error{text-align:center;padding:3rem;font-size:1.125rem}.admin-layout .admin-loading{color:var(--gray-600)}.admin-layout .admin-error{color:var(--danger-color);background-color:#dc35451a;border-radius:.5rem;margin:2rem}@media (width<=1024px){.admin-layout .admin-panel-header{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .admin-panel-header h1{text-align:center}.admin-layout .filter-section{flex-direction:column;align-items:stretch;gap:1rem}.admin-layout .status-filter{justify-content:center}}@media (width<=768px){.admin-layout .admin-user-list,.admin-layout .admin-tournament-list,.admin-layout .admin-team-list,.admin-layout .admin-player-list,.admin-layout .admin-match-list{padding:1rem}.admin-layout .admin-table{font-size:.875rem}.admin-layout .admin-table th,.admin-layout .admin-table td{padding:.5rem}.admin-layout .actions{min-width:auto}.admin-layout .actions .btn{padding:.25rem .5rem;font-size:.75rem}@media (width<=480px){.admin-layout .actions{flex-direction:column;gap:.25rem;display:flex}.admin-layout .actions .btn{margin-left:0}}.admin-layout .admin-panel-content{overflow-x:auto}.admin-layout .admin-table{min-width:600px}}.admin-layout .admin-player-detail{width:100%;padding:1.5rem}.admin-layout .admin-form{max-width:600px;padding:2rem}.admin-layout .form-group{margin-bottom:1.5rem}.admin-layout .form-group label{margin-bottom:.5rem;font-weight:500;display:block}.admin-layout .form-group input{border:1px solid var(--gray-300);border-radius:.25rem;width:100%;padding:.75rem 1rem;font-size:1rem;transition:border-color .15s ease-in-out;display:block}.admin-layout .form-group input:focus{border-color:var(--primary-color);outline:0;box-shadow:0 0 0 .2rem #1e88e540}.admin-layout .form-text{color:var(--gray-600);margin-top:.25rem;font-size:.85rem;display:block}.admin-layout .shirt-number-input{max-width:120px}.admin-layout .photo-preview{margin-bottom:1.5rem}.admin-layout .photo-preview label{margin-bottom:.5rem;font-weight:500;display:block}.admin-layout .preview-container{border:1px solid var(--gray-300);background-color:var(--gray-100);border-radius:.25rem;max-width:200px;padding:.5rem}.admin-layout .preview-container img{border-radius:.25rem;max-width:100%;height:auto;display:block}.admin-layout .preview-error{text-align:center;color:var(--danger-color);padding:1rem;font-style:italic;font-weight:400;display:block}.admin-layout .form-actions{justify-content:flex-end;gap:1rem;margin-top:2rem;display:flex}.admin-layout .alert{border:1px solid #0000;border-radius:.25rem;margin-bottom:1rem;padding:.75rem 1.25rem;position:relative}.admin-layout .alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.admin-layout .admin-tournament-team-players{width:100%;padding:1.5rem}.admin-layout .header-actions{gap:1rem;display:flex}.admin-layout .admin-panel-content{flex-direction:column;gap:2rem;display:flex}.admin-layout .players-section,.admin-layout .add-players-section{background-color:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 2px 5px #0000001a}.admin-layout .players-section h2,.admin-layout .add-players-section h2{color:var(--gray-800);margin-bottom:1.5rem;font-size:1.5rem}.admin-layout .player-roster{flex-wrap:wrap;gap:.5rem;display:flex}.admin-layout .player-roster .player-card{background-color:var(--gray-100);border-radius:.25rem;flex-direction:row;align-items:center;gap:.5rem;padding:.35rem .5rem;transition:background-color .15s;display:flex}.admin-layout .player-roster .player-card:hover{background-color:var(--gray-200)}.admin-layout .player-roster .player-card-content{align-items:center;gap:.4rem;margin-bottom:0;display:flex}.admin-layout .player-roster .player-photo-container{border:1px solid var(--gray-300);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex;overflow:hidden}.admin-layout .player-roster .player-photo{object-fit:cover;width:100%;height:100%}.admin-layout .player-roster .player-info{align-items:center;gap:.4rem;display:flex}.admin-layout .player-roster .player-info h3{white-space:nowrap;margin:0;font-size:.85rem;font-weight:500}.admin-layout .player-roster .number-badge{background-color:var(--primary-color);color:#fff;border-radius:.2rem;padding:.1rem .35rem;font-size:.7rem;font-weight:600}.admin-layout .player-roster .btn-remove{color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:.2rem;padding:.1rem .3rem;font-size:1.1rem;line-height:1;transition:color .15s,background-color .15s}.admin-layout .player-roster .btn-remove:hover{color:var(--danger-color,#dc3545);background-color:#dc35451a}.admin-layout .available-players-grid{flex-wrap:wrap;gap:.5rem;display:flex}.admin-layout .available-players-grid .player-card{background-color:var(--gray-100);cursor:pointer;border-radius:.25rem;align-items:center;gap:.5rem;padding:.35rem .5rem;transition:background-color .15s;display:flex}.admin-layout .available-players-grid .player-card:hover{background-color:var(--gray-200)}.admin-layout .available-players-grid .player-card-content{align-items:center;gap:.4rem;margin-bottom:0;display:flex}.admin-layout .available-players-grid .player-photo-container{border:1px solid var(--gray-300);border-radius:50%;flex-shrink:0;width:28px;height:28px;overflow:hidden}.admin-layout .available-players-grid .player-photo{object-fit:cover;width:100%;height:100%}.admin-layout .available-players-grid .player-info{align-items:center;gap:.4rem;display:flex}.admin-layout .available-players-grid .player-info h3{white-space:nowrap;margin:0;font-size:.85rem;font-weight:500}.admin-layout .available-players-grid .default-number{color:var(--gray-500);font-size:.7rem}.admin-layout .no-players{text-align:center;color:var(--gray-600);padding:2rem}.admin-layout .search-and-select{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;display:flex}.admin-layout .search-box{flex:1;min-width:200px;position:relative}.admin-layout .select-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-layout .player-card.selectable{cursor:pointer;border:1px solid #0000}.admin-layout .player-card.selectable.selected{border-color:var(--primary-color);background-color:#1e88e526}.admin-layout .tier-one-toggle{color:var(--gray-600,#4b5563);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:.3rem;margin-top:.25rem;font-size:.8rem;display:inline-flex}@media (width<=768px){.admin-layout .search-and-select{flex-direction:column}.admin-layout .search-box{width:100%}.admin-layout .select-actions{justify-content:space-between;width:100%}}.admin-layout .tournament-participants{padding:1.5rem}.admin-layout .participants-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.admin-layout .header-content h1{color:var(--gray-800);margin:0 0 .5rem;font-size:1.5rem}.admin-layout .participants-stats{gap:1rem;display:flex}.admin-layout .participants-stats .stat{color:var(--gray-600);font-size:.9rem}.admin-layout .participants-stats .stat-value{color:var(--gray-800);font-weight:600}.admin-layout .participants-stats .stat.paid .stat-value{color:#10b981}.admin-layout .participants-stats .stat.unpaid .stat-value{color:#ef4444}.admin-layout .participants-table-container{background-color:#fff;border-radius:.5rem;overflow:hidden;box-shadow:0 2px 4px #0000001a}.admin-layout .participants-table{border-collapse:collapse;width:100%}.admin-layout .participants-table th,.admin-layout .participants-table td{text-align:left;border-bottom:1px solid var(--gray-200);padding:.75rem 1rem}.admin-layout .participants-table th{background-color:var(--gray-100);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.admin-layout .participants-table tbody tr:hover{background-color:var(--gray-50)}.admin-layout .participants-table tbody tr:last-child td{border-bottom:none}.admin-layout .index-cell{width:50px;color:var(--gray-500)}.admin-layout .name-cell{min-width:150px}.admin-layout .participant-link{color:var(--primary-color);font-weight:500;text-decoration:none}.admin-layout .participant-link:hover{text-decoration:underline}.admin-layout .fullname-hint{color:var(--gray-500);margin-top:.1rem;font-size:.75rem;display:block}.admin-layout .email-cell{color:var(--gray-600);font-size:.9rem}.admin-layout .date-cell{white-space:nowrap;color:var(--gray-600);font-size:.85rem}.admin-layout .payment-cell{width:120px}.admin-layout .payment-toggle{cursor:pointer;border:none;border-radius:.375rem;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.85rem;font-weight:500;transition:all .2s;display:inline-flex}.admin-layout .payment-toggle.paid{color:#059669;background-color:#ecfdf5}.admin-layout .payment-toggle.paid:hover{background-color:#d1fae5}.admin-layout .payment-toggle.unpaid{color:#dc2626;background-color:#fef2f2}.admin-layout .payment-toggle.unpaid:hover{background-color:#fee2e2}.admin-layout .payment-toggle:disabled{opacity:.6;cursor:not-allowed}.admin-layout .payment-icon{font-size:.9rem}.admin-layout .no-data{text-align:center;color:var(--gray-500);padding:2rem!important}@media (width<=768px){.admin-layout .participants-header{flex-direction:column}.admin-layout .participants-table{font-size:.85rem}.admin-layout .participants-table th,.admin-layout .participants-table td{padding:.5rem .75rem}.admin-layout .email-cell{display:none}}.admin-layout .tournament-personal-leagues{padding:1.5rem}.admin-layout .tournament-personal-leagues .leagues-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.admin-layout .tournament-personal-leagues .header-content h1{color:var(--gray-800);margin:0 0 .5rem;font-size:1.5rem}.admin-layout .tournament-personal-leagues .leagues-stats{gap:1rem;display:flex}.admin-layout .tournament-personal-leagues .leagues-stats .stat{color:var(--gray-600);font-size:.9rem}.admin-layout .tournament-personal-leagues .leagues-stats .stat-value{color:var(--gray-800);font-weight:600}.admin-layout .tournament-personal-leagues .leagues-stats .stat.active .stat-value{color:#10b981}.admin-layout .tournament-personal-leagues .leagues-stats .stat.inactive .stat-value{color:#ef4444}.admin-layout .tournament-personal-leagues .header-actions{gap:.5rem;display:flex}.admin-layout .tournament-personal-leagues .leagues-table-container{background-color:#fff;border-radius:.5rem;overflow:hidden;box-shadow:0 2px 4px #0000001a}.admin-layout .tournament-personal-leagues .leagues-table{border-collapse:collapse;width:100%}.admin-layout .tournament-personal-leagues .leagues-table th,.admin-layout .tournament-personal-leagues .leagues-table td{text-align:left;border-bottom:1px solid var(--gray-200);padding:.75rem 1rem}.admin-layout .tournament-personal-leagues .leagues-table th{background-color:var(--gray-100);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.admin-layout .tournament-personal-leagues .leagues-table tbody tr:hover{background-color:var(--gray-50)}.admin-layout .tournament-personal-leagues .leagues-table tbody tr.inactive-row{opacity:.7;background-color:var(--gray-50)}.admin-layout .tournament-personal-leagues .leagues-table tbody tr:last-child td{border-bottom:none}.admin-layout .tournament-personal-leagues .index-cell{width:50px;color:var(--gray-500)}.admin-layout .tournament-personal-leagues .name-cell{min-width:150px}.admin-layout .tournament-personal-leagues .league-link{color:var(--primary-color);font-weight:500;text-decoration:none}.admin-layout .tournament-personal-leagues .league-link:hover{text-decoration:underline}.admin-layout .tournament-personal-leagues .owner-cell{min-width:120px}.admin-layout .tournament-personal-leagues .owner-link{color:var(--primary-color);text-decoration:none}.admin-layout .tournament-personal-leagues .owner-link:hover{text-decoration:underline}.admin-layout .tournament-personal-leagues .members-cell{text-align:center;width:80px}.admin-layout .tournament-personal-leagues .date-cell{white-space:nowrap;color:var(--gray-600);font-size:.85rem}.admin-layout .tournament-personal-leagues .status-cell{width:100px}.admin-layout .tournament-personal-leagues .status-badge{text-transform:uppercase;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.admin-layout .tournament-personal-leagues .status-badge.active{color:#059669;background-color:#ecfdf5}.admin-layout .tournament-personal-leagues .status-badge.inactive{color:#dc2626;background-color:#fef2f2}.admin-layout .tournament-personal-leagues .actions-cell{width:220px}.admin-layout .tournament-personal-leagues .action-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.admin-layout .tournament-personal-leagues .no-data{text-align:center;color:var(--gray-500);padding:2rem!important}@media (width<=1024px){.admin-layout .tournament-personal-leagues .action-buttons{flex-direction:column}}@media (width<=768px){.admin-layout .tournament-personal-leagues{padding:1rem}.admin-layout .tournament-personal-leagues .leagues-header{flex-direction:column}.admin-layout .tournament-personal-leagues .leagues-table{font-size:.85rem}.admin-layout .tournament-personal-leagues .leagues-table th,.admin-layout .tournament-personal-leagues .leagues-table td{padding:.5rem .75rem}.admin-layout .tournament-personal-leagues .date-cell{display:none}.admin-layout .tournament-personal-leagues .actions-cell{width:auto}}.admin-layout .admin-personal-league-detail{padding:1.5rem}.admin-layout .admin-personal-league-detail .admin-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.admin-layout .admin-personal-league-detail .admin-panel-header h1{color:var(--gray-800);margin:0;font-size:1.5rem}.admin-layout .admin-personal-league-detail .admin-panel-content{background-color:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.admin-layout .league-info-bar{background:var(--gray-50);border-radius:.375rem;flex-wrap:wrap;gap:2rem;margin-bottom:1.5rem;padding:1rem;display:flex}.admin-layout .league-info-bar span{color:var(--gray-600);font-size:.9rem}.admin-layout .league-info-bar strong{color:var(--gray-800)}.admin-layout .league-edit-form{margin-bottom:2rem}.admin-layout .league-edit-form .form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem;display:grid}.admin-layout .league-edit-form .form-group{margin-bottom:0}.admin-layout .league-edit-form .form-group label{color:var(--gray-700);margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.admin-layout .league-edit-form .form-group input,.admin-layout .league-edit-form .form-group select{border:1px solid var(--gray-300);border-radius:.375rem;width:100%;padding:.5rem .75rem;font-size:.95rem}.admin-layout .league-edit-form .form-group input:focus,.admin-layout .league-edit-form .form-group select:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-100);outline:none}.admin-layout .league-edit-form .form-actions{border-top:1px solid var(--gray-200);justify-content:space-between;margin-top:1rem;padding-top:1rem;display:flex}.admin-layout .members-section{border-top:1px solid var(--gray-200);padding-top:1.5rem}.admin-layout .members-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.admin-layout .members-header h2{color:var(--gray-800);margin:0;font-size:1.2rem}.admin-layout .members-table-container{overflow-x:auto}.admin-layout .members-table{border-collapse:collapse;width:100%}.admin-layout .members-table th,.admin-layout .members-table td{text-align:left;border-bottom:1px solid var(--gray-200);padding:.75rem 1rem}.admin-layout .members-table th{background-color:var(--gray-50);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.admin-layout .members-table tbody tr:hover{background-color:var(--gray-50)}.admin-layout .members-table tbody tr:last-child td{border-bottom:none}.admin-layout .user-link{color:var(--primary-color);text-decoration:none}.admin-layout .user-link:hover{text-decoration:underline}.admin-layout .role-badge{text-transform:uppercase;border-radius:.25rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.admin-layout .role-badge.owner{background-color:var(--primary-100);color:var(--primary-700)}.admin-layout .role-badge.member{background-color:var(--gray-200);color:var(--gray-600)}.admin-layout .no-data{text-align:center;color:var(--gray-500);padding:2rem!important}.admin-layout .modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.admin-layout .modal-content{background:#fff;border-radius:.5rem;flex-direction:column;width:100%;max-width:500px;max-height:90vh;display:flex;overflow:hidden}.admin-layout .modal-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.admin-layout .modal-header h2{color:var(--gray-800);margin:0;font-size:1.1rem}.admin-layout .modal-close{color:var(--gray-500);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.admin-layout .modal-close:hover{color:var(--gray-700)}.admin-layout .modal-body{flex:1;padding:1rem 1.25rem;overflow-y:auto}.admin-layout .modal-body .search-input{border:1px solid var(--gray-300);border-radius:.375rem;width:100%;margin-bottom:1rem;padding:.5rem .75rem;font-size:.9rem}.admin-layout .modal-body .search-input:focus{border-color:var(--primary-color);outline:none}.admin-layout .no-users{text-align:center;color:var(--gray-500);padding:1rem;font-style:italic}.admin-layout .users-list{border:1px solid var(--gray-200);border-radius:.375rem;max-height:300px;overflow-y:auto}.admin-layout .user-checkbox{border-bottom:1px solid var(--gray-100);cursor:pointer;align-items:center;gap:.5rem;padding:.75rem 1rem;transition:background-color .15s;display:flex}.admin-layout .user-checkbox:last-child{border-bottom:none}.admin-layout .user-checkbox:hover{background-color:var(--gray-50)}.admin-layout .user-checkbox input[type=checkbox]{cursor:pointer;width:1rem;height:1rem}.admin-layout .selected-count{color:var(--primary-color);margin-top:.75rem;font-size:.85rem;font-weight:500}.admin-layout .modal-footer{border-top:1px solid var(--gray-200);justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;display:flex}@media (width<=768px){.admin-layout .admin-personal-league-detail{padding:1rem}.admin-layout .admin-personal-league-detail .admin-panel-header{flex-direction:column;align-items:stretch}.admin-layout .league-info-bar{flex-direction:column;gap:.5rem}.admin-layout .league-edit-form .form-row{grid-template-columns:1fr}.admin-layout .league-edit-form .form-actions{flex-direction:column;gap:.5rem}.admin-layout .league-edit-form .form-actions .btn{width:100%}.admin-layout .members-table{font-size:.85rem}.admin-layout .members-table th,.admin-layout .members-table td{padding:.5rem .75rem}}.admin-layout .admin-participant-team-detail{padding:1.5rem}.admin-layout .admin-participant-team-detail .admin-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.admin-layout .admin-participant-team-detail .admin-panel-header h1{color:var(--gray-800);margin:0;font-size:1.5rem}.admin-layout .admin-participant-team-detail .admin-panel-content{background-color:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.admin-layout .team-info-bar{background:var(--gray-50);border-radius:.375rem;flex-wrap:wrap;gap:2rem;margin-bottom:1.5rem;padding:1rem;display:flex}.admin-layout .team-info-bar span{color:var(--gray-600);font-size:.9rem}.admin-layout .team-info-bar strong{color:var(--gray-800)}.admin-layout .logo-section{border-bottom:1px solid var(--gray-200);margin-bottom:1.5rem;padding-bottom:1.5rem}.admin-layout .logo-section h3{color:var(--gray-800);margin:0 0 .5rem;font-size:1rem}.admin-layout .logo-section .hint{color:var(--gray-500);margin:0 0 1rem;font-size:.85rem}.admin-layout .logo-upload-area{align-items:flex-start;display:flex}.admin-layout .logo-preview{align-items:center;gap:1rem;display:flex}.admin-layout .logo-preview img{object-fit:contain;background:var(--gray-100);border:1px solid var(--gray-200);border-radius:.5rem;width:80px;height:80px}.admin-layout .logo-actions{flex-direction:column;gap:.5rem;display:flex}.admin-layout .logo-actions label{position:relative;overflow:hidden}.admin-layout .upload-placeholder{border:2px dashed var(--gray-300);cursor:pointer;width:160px;height:100px;color:var(--gray-500);border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:flex;position:relative;overflow:hidden}.admin-layout .upload-placeholder:hover{border-color:var(--primary-color);color:var(--primary-color)}.admin-layout .upload-placeholder span{font-size:.9rem}.admin-layout .logo-upload-area input[type=file],.admin-layout .logo-preview input[type=file],.admin-layout .upload-placeholder input[type=file]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-layout .team-edit-form{margin-bottom:2rem}.admin-layout .team-edit-form .form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem;display:grid}.admin-layout .team-edit-form .form-group{margin-bottom:0}.admin-layout .team-edit-form .form-group label{color:var(--gray-700);margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.admin-layout .team-edit-form .form-group input{border:1px solid var(--gray-300);border-radius:.375rem;width:100%;padding:.5rem .75rem;font-size:.95rem}.admin-layout .team-edit-form .form-group input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-100);outline:none}.admin-layout .team-edit-form .form-actions{border-top:1px solid var(--gray-200);justify-content:space-between;margin-top:1rem;padding-top:1rem;display:flex}.admin-layout .members-section{border-top:1px solid var(--gray-200);padding-top:1.5rem}.admin-layout .members-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.admin-layout .members-header h2{color:var(--gray-800);margin:0;font-size:1.2rem}.admin-layout .members-table-container{overflow-x:auto}.admin-layout .members-table{border-collapse:collapse;width:100%}.admin-layout .members-table th,.admin-layout .members-table td{text-align:left;border-bottom:1px solid var(--gray-200);padding:.75rem 1rem}.admin-layout .members-table th{background-color:var(--gray-50);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.admin-layout .members-table tbody tr:hover{background-color:var(--gray-50)}.admin-layout .members-table tbody tr:last-child td{border-bottom:none}.admin-layout .user-link{color:var(--primary-color);text-decoration:none}.admin-layout .user-link:hover{text-decoration:underline}.admin-layout .no-data{text-align:center;color:var(--gray-500);padding:2rem!important}.admin-layout .modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.admin-layout .modal-content{background:#fff;border-radius:.5rem;flex-direction:column;width:100%;max-width:500px;max-height:90vh;display:flex;overflow:hidden}.admin-layout .modal-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.admin-layout .modal-header h2{color:var(--gray-800);margin:0;font-size:1.1rem}.admin-layout .modal-close{color:var(--gray-500);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.admin-layout .modal-close:hover{color:var(--gray-700)}.admin-layout .modal-body{flex:1;padding:1rem 1.25rem;overflow-y:auto}.admin-layout .modal-body .search-input{border:1px solid var(--gray-300);border-radius:.375rem;width:100%;margin-bottom:1rem;padding:.5rem .75rem;font-size:.9rem}.admin-layout .modal-body .search-input:focus{border-color:var(--primary-color);outline:none}.admin-layout .no-users{text-align:center;color:var(--gray-500);padding:1rem;font-style:italic}.admin-layout .users-list{border:1px solid var(--gray-200);border-radius:.375rem;max-height:300px;overflow-y:auto}.admin-layout .user-checkbox{border-bottom:1px solid var(--gray-100);cursor:pointer;align-items:center;gap:.5rem;padding:.75rem 1rem;transition:background-color .15s;display:flex}.admin-layout .user-checkbox:last-child{border-bottom:none}.admin-layout .user-checkbox:hover{background-color:var(--gray-50)}.admin-layout .user-checkbox input[type=checkbox]{cursor:pointer;width:1rem;height:1rem}.admin-layout .selected-count{color:var(--primary-color);margin-top:.75rem;font-size:.85rem;font-weight:500}.admin-layout .modal-footer{border-top:1px solid var(--gray-200);justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;display:flex}@media (width<=768px){.admin-layout .admin-participant-team-detail{padding:1rem}.admin-layout .admin-participant-team-detail .admin-panel-header{flex-direction:column;align-items:stretch}.admin-layout .team-info-bar{flex-direction:column;gap:.5rem}.admin-layout .team-edit-form .form-row{grid-template-columns:1fr}.admin-layout .team-edit-form .form-actions{flex-direction:column;gap:.5rem}.admin-layout .team-edit-form .form-actions .btn{width:100%}.admin-layout .members-table{font-size:.85rem}.admin-layout .members-table th,.admin-layout .members-table td{padding:.5rem .75rem}}.admin-layout .landing-editor{max-width:900px;margin:0 auto;padding:1rem}.admin-layout .editor-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;display:flex}.admin-layout .editor-header h1{margin:.5rem 0 .25rem;font-size:1.75rem}.admin-layout .editor-header .tournament-name{color:var(--gray-600);margin:0}.admin-layout .editor-header .back-link{color:var(--primary-color);font-size:.9rem}.admin-layout .header-actions{gap:.75rem;display:flex}.admin-layout .editor-section{background:#fff;border-radius:.5rem;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 1px 3px #00000014}.admin-layout .editor-section h2{align-items:center;gap:1rem;margin-bottom:1rem;font-size:1.25rem;display:flex}.admin-layout .section-help{color:var(--gray-600);margin-bottom:1rem;font-size:.9rem}.admin-layout .toggle-row{flex-direction:column;gap:.5rem;display:flex}.admin-layout .toggle-label{cursor:pointer;align-items:center;gap:.75rem;display:flex}.admin-layout .toggle-label input[type=checkbox]{width:1.25rem;height:1.25rem}.admin-layout .toggle-text{font-size:1.1rem;font-weight:500}.admin-layout .toggle-help{color:var(--gray-600);margin:0;padding-left:2rem;font-size:.9rem}.admin-layout .hero-upload{border:2px dashed var(--gray-300);border-radius:.5rem;overflow:hidden}.admin-layout .upload-placeholder{cursor:pointer;background:var(--gray-50);flex-direction:column;justify-content:center;align-items:center;padding:3rem;transition:background .2s;display:flex}.admin-layout .upload-placeholder:hover{background:var(--gray-100)}.admin-layout .upload-placeholder span:first-child{color:var(--gray-700);margin-bottom:.5rem;font-size:1.1rem}.admin-layout .upload-hint{color:var(--gray-500);font-size:.85rem}.admin-layout .hero-preview{position:relative}.admin-layout .hero-preview img{object-fit:cover;width:100%;max-height:300px}.admin-layout .hero-preview .hero-actions{gap:.5rem;display:flex;position:absolute;bottom:1rem;right:1rem}.admin-layout .features-editor{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.admin-layout .feature-editor-card{background:var(--gray-50);border-radius:.5rem;padding:1rem}.admin-layout .feature-row{margin-bottom:.75rem}.admin-layout .feature-row:last-child{margin-bottom:0}.admin-layout .feature-row label{color:var(--gray-600);margin-bottom:.25rem;font-size:.85rem;font-weight:500;display:block}.admin-layout .icon-select{width:100%}.admin-layout .rules-textarea{min-height:250px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem;line-height:1.5}.admin-layout .rules-preview{background:var(--gray-50);border-radius:.5rem;min-height:200px;padding:1.5rem}.admin-layout .rules-preview .markdown-content{color:var(--gray-700)}.admin-layout .rules-preview .markdown-content h1,.admin-layout .rules-preview .markdown-content h2,.admin-layout .rules-preview .markdown-content h3,.admin-layout .rules-preview .markdown-content h4{color:var(--gray-800)}.admin-layout .rules-preview .markdown-content a{color:var(--primary-color)}.admin-layout .rules-preview .markdown-content a:hover{color:var(--primary-hover)}.admin-layout .rules-preview .markdown-content blockquote{border-left-color:var(--primary-color);color:var(--gray-600)}.admin-layout .rules-preview .markdown-content code,.admin-layout .rules-preview .markdown-content pre{background-color:var(--gray-100)}.admin-layout .rules-preview .markdown-content th,.admin-layout .rules-preview .markdown-content td{border-color:var(--gray-300)}.admin-layout .rules-preview .markdown-content th{background-color:var(--gray-100)}.admin-layout .rules-preview .markdown-content hr{border-top-color:var(--gray-300)}.admin-layout .preview-toggle{margin-left:auto}.admin-layout .faq-editor{flex-direction:column;gap:1rem;display:flex}.admin-layout .faq-editor-item{background:var(--gray-50);border-radius:.5rem;padding:1rem}.admin-layout .faq-item-header{color:var(--gray-700);justify-content:space-between;align-items:center;margin-bottom:.75rem;font-weight:500;display:flex}.admin-layout .faq-editor-item input{margin-bottom:.5rem}.admin-layout .editor-actions{justify-content:center;padding:2rem 0;display:flex}.admin-layout .editor-actions .btn-lg{padding:.875rem 3rem}.admin-layout .form-control{border:1px solid var(--gray-300);border-radius:.375rem;width:100%;padding:.5rem .75rem;font-size:1rem}.admin-layout .form-control:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 2px #2563eb1a}.admin-layout textarea.form-control{resize:vertical}@media (width<=768px){.admin-layout .editor-header{flex-direction:column;gap:1rem}.admin-layout .header-actions{width:100%}.admin-layout .header-actions .btn{flex:1}.admin-layout .features-editor{grid-template-columns:1fr}}.admin-layout .tournament-workspace{background-color:var(--gray-100);min-height:100vh}.admin-layout .workspace-header{border-bottom:1px solid var(--gray-200);background-color:#fff;justify-content:space-between;align-items:flex-start;padding:1.5rem 2rem;display:flex}.admin-layout .header-info{flex:1}.admin-layout .breadcrumb{color:var(--gray-500);margin-bottom:.5rem;font-size:.875rem}.admin-layout .breadcrumb a{color:var(--primary-color);text-decoration:none}.admin-layout .breadcrumb a:hover{text-decoration:underline}.admin-layout .breadcrumb .separator{color:var(--gray-400);margin:0 .5rem}.admin-layout .workspace-header h1{color:var(--gray-800);margin:0 0 .75rem;font-size:1.75rem;font-weight:600}.admin-layout .tournament-meta{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.admin-layout .tournament-meta .status-badge{text-transform:uppercase;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.admin-layout .tournament-meta .status-badge.active{background-color:var(--success-color);color:#fff}.admin-layout .tournament-meta .status-badge.inactive{background-color:var(--gray-400);color:#fff}.admin-layout .tournament-meta .synced-badge{text-transform:uppercase;color:#78350f;cursor:help;background-color:#f59e0b;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.admin-layout .tournament-meta .status-badge.hidden-badge{color:#fff;background-color:#6c757d}.admin-layout .tournament-meta .status-badge.upcoming-badge{color:#fff;background-color:#17a2b8}.admin-layout .tournament-meta .status-badge.open-badge{color:#fff;background-color:#28a745}.admin-layout .tournament-meta .status-badge.in_progress-badge{color:#000;background-color:#ffc107}.admin-layout .tournament-meta .status-badge.completed-badge{color:#fff;background-color:#6c757d}.admin-layout .tournament-meta .dates{color:var(--gray-600);font-size:.875rem}.admin-layout .tournament-meta .stats-summary{color:var(--gray-500);font-size:.875rem}.admin-layout .header-actions{gap:.5rem;display:flex}.admin-layout .workspace-tabs{border-bottom:1px solid var(--gray-200);background-color:#fff;gap:0;padding:0 2rem;display:flex;overflow-x:auto}.admin-layout .tab-button{color:var(--gray-600);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:1rem 1.5rem;font-size:.9375rem;font-weight:500;transition:all .15s}.admin-layout .tab-button:hover{color:var(--gray-800);background-color:var(--gray-50)}.admin-layout .tab-button.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.admin-layout .workspace-content{padding:1.5rem 2rem}.admin-layout .tab-panel{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a}.admin-layout .tab-panel-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.admin-layout .tab-panel-header h2{color:var(--gray-800);margin:0;font-size:1.25rem;font-weight:600}.admin-layout .tab-panel-content{padding:1.5rem}.admin-layout .tab-placeholder{text-align:center;color:var(--gray-500);padding:3rem}.admin-layout .tab-placeholder h3{color:var(--gray-700);margin:0 0 .5rem}.admin-layout .tab-placeholder p{margin:0}.admin-layout .stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.admin-layout .stat-card{background-color:#fff;border-radius:.5rem;padding:1.25rem;box-shadow:0 1px 3px #0000001a}.admin-layout .stat-card .stat-value{color:var(--gray-800);font-size:2rem;font-weight:600}.admin-layout .stat-card .stat-label{color:var(--gray-500);margin-top:.25rem;font-size:.875rem}.admin-layout .quick-actions{flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;display:flex}.admin-layout .tab-panel-header .quick-actions{margin-bottom:0}.admin-layout .recalculate-progress{max-width:400px;margin-top:1rem}.admin-layout .recalculate-progress .progress-bar{background:var(--gray-200);border-radius:4px;height:8px;overflow:hidden}.admin-layout .recalculate-progress .progress-fill{background:var(--primary-color);height:100%;transition:width .2s}.admin-layout .recalculate-progress .progress-message{color:var(--gray-600);margin-top:.5rem;font-size:.75rem;display:block}@media (width<=768px){.admin-layout .workspace-header{flex-direction:column;gap:1rem;padding:1rem}.admin-layout .header-actions{justify-content:flex-start;width:100%}.admin-layout .workspace-tabs{padding:0 1rem}.admin-layout .tab-button{padding:.75rem 1rem;font-size:.875rem}.admin-layout .workspace-content{padding:1rem}.admin-layout .tournament-meta{flex-direction:column;align-items:flex-start;gap:.5rem}}.admin-layout .round-panel{margin-bottom:1rem}.admin-layout .round-header{cursor:pointer;-webkit-user-select:none;user-select:none}.admin-layout .round-header:hover{background-color:var(--gray-50)}.admin-layout .round-header h2{align-items:center;gap:.5rem;margin:0;display:flex}.admin-layout .expand-icon{color:var(--gray-400);width:1rem;font-size:.875rem}.admin-layout .round-meta{color:var(--gray-500);margin-left:.5rem;font-size:.875rem;font-weight:400}.admin-layout .round-actions{gap:.5rem;display:flex}.admin-layout .round-actions button:disabled{opacity:.5;cursor:not-allowed;background-color:var(--gray-300);border-color:var(--gray-300);color:var(--gray-500)}.admin-layout .round-actions button:disabled:hover{background-color:var(--gray-300);border-color:var(--gray-300)}.admin-layout .expand-collapse-buttons{gap:.5rem;margin-left:auto;display:flex}.admin-layout .empty-round{text-align:center;color:var(--gray-500);padding:1.5rem}.admin-layout .matches-table{width:100%}.admin-layout .matches-table th{white-space:nowrap}.admin-layout .actions-header{text-align:right!important}.admin-layout .match-teams-cell{white-space:nowrap;min-width:140px}.admin-layout .match-teams-content{align-items:center;gap:.25rem;display:flex}.admin-layout .match-teams-content .team-flag-inline{object-fit:cover;border-radius:2px;flex-shrink:0;box-shadow:0 0 0 1px #00000026}.admin-layout .match-teams-content .team-abbr,.admin-layout .matches-table .match-teams-content .team-name{font-weight:600;font-size:inherit}.admin-layout .match-teams-content .vs{color:var(--gray-600);margin:0 .25rem;font-weight:400}.admin-layout .datetime-cell{white-space:nowrap;width:180px}.admin-layout .match-teams-cell{white-space:nowrap;width:160px}.admin-layout .score-cell{text-align:center;width:120px}.admin-layout .status-cell{min-width:120px}.admin-layout .goals-cell{color:var(--gray-600);font-size:.6rem}.admin-layout .actions-cell{text-align:right;white-space:nowrap;width:80px}.admin-layout .actions-cell-content{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.admin-layout .striker-indicator{cursor:help;opacity:.7;font-size:.875rem;transition:opacity .15s}.admin-layout .striker-indicator:hover{opacity:1}.admin-layout .inline-score,.admin-layout .inline-datetime{cursor:pointer;border-radius:.25rem;padding:.25rem .5rem;transition:background-color .15s}.admin-layout .inline-score:hover,.admin-layout .inline-datetime:hover{background-color:var(--gray-100)}.admin-layout .score-placeholder{color:var(--gray-400)}.admin-layout .inline-score-edit{align-items:center;gap:.25rem;display:flex}.admin-layout .score-input{border:1px solid var(--gray-300);text-align:center;border-radius:.25rem;width:3rem;padding:.25rem .5rem;font-size:.875rem;font-weight:600}.admin-layout .score-input:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 2px #1e88e533}.admin-layout .score-separator{color:var(--gray-500);font-weight:600}.admin-layout .inline-datetime-edit{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.admin-layout .date-input,.admin-layout .time-input{border:1px solid var(--gray-300);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem}.admin-layout .date-input{width:130px}.admin-layout .time-input{width:90px}.admin-layout .date-input:focus,.admin-layout .time-input:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 2px #1e88e533}.admin-layout .status-select{border:1px solid var(--gray-300);cursor:pointer;border-radius:.25rem;min-width:100px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.admin-layout .status-select.scheduled{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.admin-layout .status-select.in_progress{background-color:var(--warning-color);color:#fff;border-color:var(--warning-color)}.admin-layout .status-select.completed{background-color:var(--success-color);color:#fff;border-color:var(--success-color)}.admin-layout .btn-xs{padding:.125rem .375rem;font-size:.75rem;line-height:1.2}.admin-layout .btn-success{background-color:var(--success-color);border-color:var(--success-color);color:#fff}.admin-layout .btn-success:hover{background-color:#218838;border-color:#1e7e34}.admin-layout .modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.admin-layout .modal-content{background:#fff;border-radius:.5rem;flex-direction:column;width:100%;max-width:600px;max-height:80vh;display:flex;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.admin-layout .modal-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.admin-layout .modal-header h2{margin:0;font-size:1.25rem}.admin-layout .modal-close{cursor:pointer;color:var(--gray-500);background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.admin-layout .modal-close:hover{color:var(--gray-700)}.admin-layout .modal-body{flex:1;padding:1.5rem;overflow-y:auto}.admin-layout .modal-footer{border-top:1px solid var(--gray-200);justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.admin-layout .reminder-intro{color:var(--gray-600);margin-bottom:1rem}.admin-layout .reminder-section{margin-bottom:1.5rem}.admin-layout .reminder-section h3{color:var(--gray-700);margin-bottom:.5rem;font-size:.875rem}.admin-layout .reminder-table{border-collapse:collapse;width:100%;font-size:.875rem}.admin-layout .reminder-table th,.admin-layout .reminder-table td{text-align:left;border-bottom:1px solid var(--gray-200);padding:.5rem}.admin-layout .reminder-table th{color:var(--gray-600);background-color:var(--gray-50);font-weight:600}.admin-layout .reminder-table td:last-child{text-align:center;width:80px}.admin-layout .reminder-table .reminder-select-col{text-align:center;width:2rem}.admin-layout .reminder-table .reminder-select-col input{cursor:pointer;width:1rem;height:1rem;margin:0}.admin-layout .reminder-table .reminder-row-unselected td{color:var(--gray-400)}.admin-layout .no-reminders{color:var(--gray-500);text-align:center;padding:2rem}.admin-layout .warning-text{color:var(--warning-color);font-style:italic}.admin-layout .reminder-result{text-align:center;padding:1rem}.admin-layout .reminder-result h3{color:var(--success-color);margin-bottom:1rem}.admin-layout .result-summary{margin-bottom:1rem;font-size:1.125rem}.admin-layout .result-skipped,.admin-layout .result-errors{color:var(--gray-600);font-size:.875rem}.admin-layout .result-errors{color:var(--danger-color)}.admin-layout .reminder-message-input{border:1px solid var(--gray-300);resize:vertical;border-radius:.375rem;width:100%;min-height:80px;padding:.75rem;font-family:inherit;font-size:.875rem}.admin-layout .reminder-message-input:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 2px #1e88e533}.admin-layout .helper-text{color:var(--gray-500);margin-top:.5rem;font-size:.75rem;font-style:italic}.admin-layout .reminder-checkbox{color:var(--gray-700);cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.admin-layout .reminder-checkbox input{cursor:pointer;width:1rem;height:1rem;margin:0}.admin-layout .reminder-checkbox input:disabled{cursor:not-allowed;color:var(--gray-400)}.admin-layout .reminder-checkbox:has(input:disabled){cursor:not-allowed;color:var(--gray-400)}.admin-layout .reminder-progress{text-align:center;padding:1.5rem 0}.admin-layout .reminder-progress h3{margin:0 0 1rem}.admin-layout .progress-bar-container{background:var(--gray-200,#e0e0e0);border-radius:4px;width:100%;height:8px;overflow:hidden}.admin-layout .progress-bar-fill{background:var(--primary-color,#1e88e5);border-radius:4px;height:100%;transition:width .3s}.admin-layout .progress-text{color:var(--gray-600,#666);margin-top:.75rem;font-size:.875rem}.admin-layout .progress-errors{color:var(--error-color,#f44336)}.admin-layout .current-matches-panel{background-color:var(--primary-color);background:linear-gradient(135deg, var(--primary-color) 0%, #1565c0 100%)}.admin-layout .current-matches-panel .tab-panel-header{border-bottom-color:#fff3}.admin-layout .current-matches-panel .tab-panel-header h2{color:#fff}.admin-layout .current-matches-panel .expand-icon{color:#ffffffb3}.admin-layout .current-matches-content{flex-direction:column;gap:1.5rem;display:flex;padding:1rem!important}.admin-layout .current-matches-section h3{color:#ffffffe6;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem;font-size:.875rem;font-weight:600}.admin-layout .current-matches-section .matches-table{background:#fff;border-radius:.5rem}.admin-layout .match-teams-content.clickable{cursor:pointer;border-radius:.25rem;margin:-.25rem -.5rem;padding:.25rem .5rem;transition:background-color .15s}.admin-layout .match-teams-content.clickable:hover{background-color:var(--gray-100)}.admin-layout .match-teams-content.clickable .team-abbr{cursor:pointer}.admin-layout .current-matches-section .matches-table.compact td{padding:.5rem .75rem}.admin-layout .current-matches-section .no-matches-text{color:#ffffffb3;margin:0;font-style:italic}.admin-layout .delete-matches-list{max-height:200px;margin:.75rem 0;padding-left:1.5rem;overflow-y:auto}.admin-layout .delete-matches-list li{color:var(--gray-700);padding:.25rem 0}.admin-layout .delete-matches-list .match-score{color:var(--gray-500);font-size:.875rem}.admin-layout .danger-text{color:var(--danger-color);font-weight:500}.admin-layout .delete-progress{text-align:center;padding:1.5rem 0}.admin-layout .delete-progress .progress-step{color:var(--gray-600);margin-bottom:1rem;font-size:.875rem}@media (width<=768px){.admin-layout .inline-datetime-edit{flex-direction:column;align-items:flex-start}.admin-layout .date-input,.admin-layout .time-input{width:100%}.admin-layout .match-teams-cell{min-width:auto}.admin-layout .matches-table{font-size:.875rem}.admin-layout .modal-content{max-height:90vh}}.admin-layout .modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.admin-layout .modal-content{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 25px #0003}.admin-layout .modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.admin-layout .modal-header h3{color:#111827;margin:0;font-size:20px}.admin-layout .modal-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;transition:background .2s;display:flex}.admin-layout .modal-close:hover{background:#f3f4f6}.admin-layout .modal-body{padding:24px}.admin-layout .message-preview{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:24px;padding:16px}.admin-layout .message-preview strong{color:#374151;margin-bottom:8px;font-size:14px;display:block}.admin-layout .message-preview p{color:#111827;margin:0;font-size:14px;line-height:1.5}.admin-layout .form-group{margin-bottom:20px}.admin-layout .form-group label{color:#374151;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.admin-layout .required{color:#dc2626}.admin-layout .form-group input,.admin-layout .form-group textarea,.admin-layout .form-group select{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px}.admin-layout .form-group input:focus,.admin-layout .form-group textarea:focus,.admin-layout .form-group select:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1a}.admin-layout .form-hint{color:#6b7280;margin-top:6px;font-size:13px}.admin-layout .modal-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;display:flex}.admin-layout .btn-cancel{cursor:pointer;color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.admin-layout .btn-cancel:hover{background:#f9fafb}.admin-layout .btn-primary{cursor:pointer;color:#fff;background:#2563eb;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.admin-layout .btn-primary:hover{background:#1d4ed8}.admin-layout .btn-primary:disabled{cursor:not-allowed;background:#93c5fd}.admin-layout .chat-messages-panel{width:100%}.admin-layout .panel-header{margin-bottom:24px}.admin-layout .panel-header h3{color:#333;margin:0 0 8px;font-size:20px}.admin-layout .panel-header p{color:#666;margin:0;font-size:14px}.admin-layout .panel-controls{align-items:center;gap:12px;margin-bottom:20px;display:flex}.admin-layout .search-input{border:1px solid #ddd;border-radius:6px;flex:1;padding:10px 16px;font-size:14px}.admin-layout .search-input:focus{border-color:#2563eb;outline:none}.admin-layout .status-filter{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;min-width:180px;padding:10px 16px;font-size:14px}.admin-layout .status-filter:focus{border-color:#2563eb;outline:none}.admin-layout .message-badges{flex-wrap:wrap;gap:6px;display:flex}.admin-layout .badge{border-radius:4px;padding:4px 8px;font-size:12px;font-weight:500}.admin-layout .badge-pin{color:#1e40af;background:#dbeafe}.admin-layout .badge-promoted{color:#92400e;background:#fef3c7}.admin-layout .badge-deleted{color:#991b1b;background:#fee2e2}.admin-layout .badge-reply{color:#374151;background:#e5e7eb}.admin-layout .deleted-content{color:#999;font-style:italic}.admin-layout .pagination-controls{text-align:center;margin-top:20px}.admin-layout .btn-secondary{cursor:pointer;color:#374151;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.admin-layout .btn-secondary:hover{background:#e5e7eb}.admin-layout .promoted-posts-panel{width:100%}.admin-layout .loading{text-align:center;color:#6b7280;padding:40px}.admin-layout .empty-state{text-align:center;color:#6b7280;padding:60px 20px}.admin-layout .empty-state p{margin:0 0 8px;font-size:16px}.admin-layout .empty-hint{color:#9ca3af;font-size:14px}.admin-layout .promoted-posts-panel .promoted-messages-list{flex-direction:column;gap:12px;display:flex}.admin-layout .promoted-posts-panel .promoted-message-item{cursor:move;background:#fff;border:2px solid #e5e7eb;border-radius:8px;align-items:center;gap:12px;padding:16px;transition:all .2s;display:flex}.admin-layout .promoted-posts-panel .promoted-message-item:hover{border-color:#d1d5db;box-shadow:0 2px 4px #0000000d}.admin-layout .promoted-posts-panel .promoted-message-item.dragging{opacity:.5;background:#f9fafb}.admin-layout .promoted-posts-panel .drag-handle{color:#9ca3af;cursor:grab;-webkit-user-select:none;user-select:none;padding:0 4px;font-size:20px}.admin-layout .promoted-posts-panel .drag-handle:active{cursor:grabbing}.admin-layout .promoted-posts-panel .message-content-area{flex:1;min-width:0}.admin-layout .promoted-posts-panel .message-title{align-items:center;gap:12px;margin-bottom:8px;display:flex}.admin-layout .promoted-posts-panel .message-title strong{color:#111827;flex:1;font-size:16px}.admin-layout .promoted-posts-panel .message-order{color:#6b7280;background:#f3f4f6;border-radius:4px;padding:2px 8px;font-size:12px}.admin-layout .promoted-posts-panel .message-preview{color:#4b5563;margin-bottom:8px;font-size:14px;line-height:1.5}.admin-layout .promoted-posts-panel .message-meta{color:#6b7280;align-items:center;gap:8px;font-size:13px;display:flex}.admin-layout .promoted-posts-panel .message-actions{gap:8px;display:flex}.admin-layout .btn-action{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .2s}.admin-layout .btn-edit{color:#2563eb;border-color:#2563eb}.admin-layout .btn-edit:hover{background:#eff6ff}.admin-layout .btn-unpromote{color:#dc2626;border-color:#dc2626}.admin-layout .btn-unpromote:hover{background:#fef2f2}.admin-layout .tournament-alerts-panel{width:100%}.admin-layout .panel-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.admin-layout .btn-create{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:background .2s}.admin-layout .btn-create:hover{background:#1d4ed8}.admin-layout .priority-badge{border-radius:12px;padding:4px 10px;font-size:13px;font-weight:600;display:inline-block}.admin-layout .alert-type-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.admin-layout .status-badge{border-radius:4px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-block}.admin-layout .status-badge.active{color:#065f46;background:#d1fae5}.admin-layout .status-badge.inactive{color:#6b7280;background:#f3f4f6}.admin-layout .panel-note{color:#6b7280;margin-top:8px;font-size:13px;font-style:italic}.admin-layout .panel-note a{color:#2563eb;text-decoration:none}.admin-layout .panel-note a:hover{text-decoration:underline}.admin-layout .daily-summary-panel{width:100%}.admin-layout .daily-summary-panel .panel-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.admin-layout .daily-summary-panel .panel-header h3{margin:0 0 8px}.admin-layout .daily-summary-panel .panel-header p{color:#6b7280;margin:0;font-size:14px}.admin-layout .last-sent-indicator{color:#065f46;background:#d1fae5;border-radius:4px;margin-top:12px;padding:8px 12px;font-size:13px}.admin-layout .last-sent-indicator.warning{color:#92400e;background:#fef3c7}.admin-layout .loading-state,.admin-layout .error-state{text-align:center;color:#6b7280;padding:40px}.admin-layout .error-state{color:#dc2626}.admin-layout .preview-section{margin-bottom:24px}.admin-layout .preview-section h4{color:#374151;margin:0 0 16px;font-size:16px;font-weight:600}.admin-layout .recipients-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.admin-layout .recipient-card{text-align:center;border-radius:8px;padding:20px}.admin-layout .recipient-card.verified{background:#d1fae5}.admin-layout .recipient-card.unverified{background:#f3f4f6}.admin-layout .recipient-card.opted-out{color:#92400e;background:#fef3c7}.admin-layout .opted-out-details{background:#fffbeb;border:1px solid #fde68a;border-radius:6px;margin-top:12px;padding:12px 16px;font-size:14px}.admin-layout .opted-out-details summary{cursor:pointer;color:#92400e;-webkit-user-select:none;user-select:none;font-weight:500}.admin-layout .opted-out-details summary:hover{color:#78350f}.admin-layout .opted-out-list{margin:12px 0 0;padding:0;list-style:none}.admin-layout .opted-out-list li{border-top:1px solid #fde68a;justify-content:space-between;gap:12px;padding:6px 0;display:flex}.admin-layout .opted-out-list li:first-child{border-top:none}.admin-layout .opted-out-name{color:#374151;font-weight:500}.admin-layout .opted-out-email{color:#6b7280;font-size:13px}.admin-layout .recipient-count{margin-bottom:4px;font-size:36px;font-weight:700}.admin-layout .recipient-card.verified .recipient-count{color:#059669}.admin-layout .recipient-card.unverified .recipient-count{color:#6b7280}.admin-layout .recipient-label{color:#374151;margin-bottom:2px;font-size:14px;font-weight:600}.admin-layout .recipient-subtext{color:#6b7280;font-size:12px}.admin-layout .info-banner{color:#1e40af;background:#dbeafe;border-radius:8px;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.admin-layout .info-icon{font-size:20px}.admin-layout .warning-banner{background:#fef3c7;border-radius:8px;gap:12px;margin-bottom:24px;padding:16px;display:flex}.admin-layout .warning-icon{font-size:24px}.admin-layout .warning-banner strong{color:#92400e;margin-bottom:4px;display:block}.admin-layout .warning-banner p{color:#92400e;margin:0;font-size:14px}.admin-layout .preview-card{background:#f9fafb;border-radius:8px;margin-bottom:16px;padding:16px}.admin-layout .preview-card h5{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-size:14px;font-weight:600}.admin-layout .top5-list{flex-direction:column;gap:8px;display:flex}.admin-layout .top5-entry{background:#fff;border-radius:4px;align-items:center;gap:12px;padding:8px 12px;display:flex}.admin-layout .top5-entry .position{color:#6b7280;min-width:30px;font-weight:700}.admin-layout .top5-entry .name{flex:1;font-weight:500}.admin-layout .top5-entry .points{color:#6b7280;font-size:14px}.admin-layout .stars-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.admin-layout .star-item{background:#fff;border-radius:6px;gap:12px;padding:12px;display:flex}.admin-layout .star-item.rocket{background:#d1fae5}.admin-layout .star-item.worst{background:#fee2e2}.admin-layout .star-item.empty{color:#9ca3af;background:#f3f4f6}.admin-layout .star-icon{font-size:24px}.admin-layout .star-content{flex:1}.admin-layout .star-label{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;font-size:12px;font-weight:600}.admin-layout .star-name{font-weight:600}.admin-layout .star-change{color:#6b7280;font-size:13px}.admin-layout .streaks-list{flex-direction:column;gap:8px;display:flex}.admin-layout .streak-entry{background:#fff;border-radius:4px;align-items:center;gap:10px;padding:8px 12px;display:flex}.admin-layout .streak-entry.up{background:#d1fae5}.admin-layout .streak-entry.down{background:#fee2e2}.admin-layout .streak-icon{font-size:18px}.admin-layout .streak-name{flex:1;font-weight:600}.admin-layout .streak-days{color:#6b7280;font-size:13px}.admin-layout .stats-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.admin-layout .stat-item{text-align:center;background:#fff;border-radius:6px;padding:12px}.admin-layout .stat-value{color:#2563eb;font-size:28px;font-weight:700}.admin-layout .stat-label{color:#6b7280;font-size:13px}.admin-layout .send-section{text-align:center;border-top:1px solid #e5e7eb;padding:24px 0}.admin-layout .btn-send{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;padding:14px 32px;font-size:16px;font-weight:600;transition:background .2s}.admin-layout .btn-send:hover:not(:disabled){background:#1d4ed8}.admin-layout .btn-send:disabled{cursor:not-allowed;background:#9ca3af}.admin-layout .send-note{color:#6b7280;margin:12px 0 0;font-size:14px}.admin-layout .send-result{background:#f9fafb;border-radius:8px;margin-top:24px;padding:20px}.admin-layout .send-result h4{margin:0 0 16px;font-size:16px;font-weight:600}.admin-layout .result-stats{gap:24px;margin-bottom:16px;display:flex}.admin-layout .result-stat{text-align:center;border-radius:6px;padding:12px 24px}.admin-layout .result-stat.success{background:#d1fae5}.admin-layout .result-stat.error{background:#fee2e2}.admin-layout .result-stat.skipped{background:#f3f4f6}.admin-layout .result-value{font-size:24px;font-weight:700}.admin-layout .result-stat.success .result-value{color:#059669}.admin-layout .result-stat.error .result-value{color:#dc2626}.admin-layout .result-stat.skipped .result-value{color:#6b7280}.admin-layout .result-label{color:#6b7280;font-size:13px}.admin-layout .error-list{background:#fee2e2;border-radius:6px;padding:16px}.admin-layout .error-list h5{color:#dc2626;margin:0 0 8px;font-size:14px}.admin-layout .error-item{color:#991b1b;padding:4px 0;font-size:13px}.admin-layout .dialog-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.admin-layout .dialog-content{background:#fff;border-radius:12px;flex-direction:column;width:480px;max-width:90vw;max-height:80vh;padding:24px;display:flex;box-shadow:0 20px 60px #0000004d}.admin-layout .dialog-content h3{margin:0 0 4px;font-size:18px}.admin-layout .dialog-subtitle{color:#6b7280;margin:0 0 16px;font-size:14px}.admin-layout .recipient-checkbox{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;transition:background .15s;display:flex}.admin-layout .recipient-checkbox:hover{background:#f3f4f6}.admin-layout .recipient-checkbox input[type=checkbox]{cursor:pointer;flex-shrink:0;width:18px;height:18px}.admin-layout .recipient-checkbox.toggle-all{border-bottom:1px solid #e5e7eb;margin-bottom:4px;padding-bottom:12px;font-weight:600}.admin-layout .checkbox-label{flex:1;font-size:14px;font-weight:500}.admin-layout .toggle-all .checkbox-label{font-weight:600}.admin-layout .checkbox-count{color:#6b7280;font-size:13px}.admin-layout .checkbox-email{color:#9ca3af;font-size:12px}.admin-layout .recipient-list{flex:1;min-height:0;max-height:400px;margin-bottom:16px;overflow-y:auto}.admin-layout .dialog-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:12px;padding-top:16px;display:flex}.admin-layout .btn-cancel{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:background .2s}.admin-layout .btn-cancel:hover{background:#f3f4f6}.admin-layout .dialog-actions .btn-send{padding:10px 20px;font-size:14px}.admin-layout .summary-message-input{resize:vertical;box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;width:100%;min-height:80px;padding:12px;font-family:inherit;font-size:14px}.admin-layout .summary-message-input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 2px #2563eb33}.admin-layout .btn-reset-message{color:#6b7280;cursor:pointer;background:0 0;border:1px solid #d1d5db;border-radius:4px;margin-top:8px;padding:4px 12px;font-size:13px;transition:background .15s}.admin-layout .btn-reset-message:hover{background:#f3f4f6}.admin-layout .summary-progress{text-align:center;padding:1.5rem 0}.admin-layout .summary-progress h3{margin:0 0 1rem}.admin-layout .daily-summary-panel .progress-bar-container{background:#e5e7eb;border-radius:4px;width:100%;height:8px;overflow:hidden}.admin-layout .daily-summary-panel .progress-bar-fill{background:#2563eb;border-radius:4px;height:100%;transition:width .3s}.admin-layout .daily-summary-panel .progress-text{color:#6b7280;margin:.75rem 0 0;font-size:14px}.admin-layout .daily-summary-panel .progress-errors{color:#dc2626;font-weight:500}.admin-layout .communications-tab{padding:20px}.admin-layout .communications-header{margin-bottom:30px}.admin-layout .communications-header h2{color:#333;margin:0 0 10px;font-size:24px}.admin-layout .communications-description{color:#666;margin:0;font-size:14px}.admin-layout .communications-panels{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.admin-layout .panel-selector{background:#f5f5f5;border-bottom:1px solid #e0e0e0;display:flex}.admin-layout .panel-selector-btn{cursor:pointer;color:#666;background:0 0;border:none;border-bottom:3px solid #0000;flex:1;justify-content:center;align-items:center;gap:8px;padding:16px 20px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.admin-layout .panel-selector-btn:hover{color:#333;background:#fff}.admin-layout .panel-selector-btn.active{color:#2563eb;background:#fff;border-bottom-color:#2563eb}.admin-layout .panel-icon{font-size:20px}.admin-layout .panel-label{font-weight:600}.admin-layout .panel-content{min-height:400px;padding:24px}.admin-layout .site-wide-alerts-page{max-width:1400px;margin:0 auto;padding:30px}.admin-layout .page-header{justify-content:space-between;align-items:flex-start;margin-bottom:32px;display:flex}.admin-layout .page-title{color:#2563eb;margin:0 0 8px;font-size:28px;font-weight:600}.admin-layout .page-description{color:#6b7280;margin:0;font-size:15px}.admin-layout .btn-create{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;padding:12px 24px;font-size:14px;font-weight:500;transition:background .2s}.admin-layout .btn-create:hover{background:#1d4ed8}.admin-layout .page-content{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px #0000001a}.admin-layout .priority-badge{border-radius:12px;padding:4px 10px;font-size:13px;font-weight:600;display:inline-block}.admin-layout .alert-type-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.admin-layout .status-badge{border-radius:4px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-block}.admin-layout .status-badge.active{color:#065f46;background:#d1fae5}.admin-layout .status-badge.inactive{color:#6b7280;background:#f3f4f6}.admin-layout .feedback-detail-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:flex-start;padding:40px 20px;display:flex;position:fixed;inset:0;overflow-y:auto}.admin-layout .feedback-detail-modal{background:#fff;border-radius:12px;width:100%;max-width:700px;max-height:calc(100vh - 80px);overflow-y:auto;box-shadow:0 20px 40px #0003}.admin-layout .modal-header{z-index:1;background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.admin-layout .modal-header h2{color:#111827;margin:0;font-size:20px}.admin-layout .modal-header .close-btn{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:28px;line-height:1;display:flex}.admin-layout .modal-header .close-btn:hover{color:#374151;background:#f3f4f6}.admin-layout .modal-body{padding:24px}.admin-layout .section-title{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-size:14px;font-weight:600}.admin-layout .info-section{margin-bottom:24px}.admin-layout .info-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.admin-layout .info-item{flex-direction:column;gap:4px;display:flex}.admin-layout .info-label{color:#9ca3af;text-transform:uppercase;font-size:12px}.admin-layout .info-value{color:#111827;font-size:14px}.admin-layout .type-value{color:#2563eb;font-weight:500}.admin-layout .content-section{border-bottom:1px solid #f3f4f6;margin-bottom:24px;padding-bottom:24px}.admin-layout .subject-text{color:#111827;margin:0 0 20px;font-size:16px;font-weight:500}.admin-layout .description-text{color:#374151;white-space:pre-wrap;word-break:break-word;background:#f9fafb;border-radius:8px;padding:16px;font-size:14px;line-height:1.6}.admin-layout .context-section{border-bottom:1px solid #f3f4f6;margin-bottom:24px;padding-bottom:24px}.admin-layout .context-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.admin-layout .context-item{flex-direction:column;gap:4px;display:flex}.admin-layout .context-item.full-width{grid-column:1/-1}.admin-layout .context-label{color:#9ca3af;font-size:12px}.admin-layout .context-value{color:#6b7280;word-break:break-all;font-size:13px}.admin-layout .context-value.browser-info{background:#f3f4f6;border-radius:4px;max-height:60px;padding:8px;font-family:monospace;font-size:12px;overflow-y:auto}.admin-layout .management-section{margin-bottom:24px}.admin-layout .management-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.admin-layout .form-group{flex-direction:column;gap:8px;display:flex}.admin-layout .form-group label{color:#374151;font-size:14px;font-weight:500}.admin-layout .form-group select{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:10px 12px;font-size:14px}.admin-layout .form-group select:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1a}.admin-layout .response-section{margin-bottom:8px}.admin-layout .response-meta{color:#6b7280;margin:0 0 12px;font-size:13px;font-style:italic}.admin-layout .response-section textarea{resize:vertical;box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:12px;font-size:14px;line-height:1.5}.admin-layout .response-section textarea:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1a}.admin-layout .modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:12px;padding:20px 24px;display:flex}.admin-layout .modal-footer .btn{cursor:pointer;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:background .2s}.admin-layout .modal-footer .btn-secondary{color:#374151;background:#fff;border:1px solid #d1d5db}.admin-layout .modal-footer .btn-secondary:hover:not(:disabled){background:#f3f4f6}.admin-layout .modal-footer .btn-primary{color:#fff;background:#2563eb;border:1px solid #2563eb}.admin-layout .modal-footer .btn-primary:hover:not(:disabled){background:#1d4ed8}.admin-layout .modal-footer .btn:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.admin-layout .feedback-detail-overlay{align-items:flex-end;padding:0}.admin-layout .feedback-detail-modal{border-radius:16px 16px 0 0;max-height:95vh}.admin-layout .info-grid,.admin-layout .context-grid,.admin-layout .management-grid{grid-template-columns:1fr}.admin-layout .modal-footer{flex-direction:column}.admin-layout .modal-footer .btn{width:100%}}.admin-layout .feedback-list-page{max-width:1400px;margin:0 auto;padding:30px}.admin-layout .page-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.admin-layout .page-title{color:#2563eb;margin:0 0 8px;font-size:28px;font-weight:600}.admin-layout .page-description{color:#6b7280;margin:0;font-size:15px}.admin-layout .settings-panel{background:#fff;border-radius:8px;margin-bottom:24px;padding:20px 24px;box-shadow:0 1px 3px #0000001a}.admin-layout .setting-row{align-items:center;gap:16px;padding:8px 0;display:flex}.admin-layout .setting-row:not(:last-child){border-bottom:1px solid #f3f4f6;margin-bottom:8px;padding-bottom:16px}.admin-layout .toggle-switch{cursor:pointer;align-items:center;gap:12px;display:flex}.admin-layout .toggle-switch input{display:none}.admin-layout .toggle-slider{background:#d1d5db;border-radius:12px;width:44px;height:24px;transition:background .2s;position:relative}.admin-layout .toggle-slider:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.admin-layout .toggle-switch input:checked+.toggle-slider{background:#2563eb}.admin-layout .toggle-switch input:checked+.toggle-slider:after{transform:translate(20px)}.admin-layout .toggle-label{color:#374151;font-weight:500}.admin-layout .setting-hint{color:#6b7280;font-size:13px}.admin-layout .btn-secondary{color:#374151;cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .2s}.admin-layout .btn-secondary:hover:not(:disabled){background:#e5e7eb}.admin-layout .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.admin-layout .filters-panel{flex-wrap:wrap;gap:24px;margin-bottom:24px;display:flex}.admin-layout .filter-group{align-items:center;gap:8px;display:flex}.admin-layout .filter-group label{color:#6b7280;font-size:14px;font-weight:500}.admin-layout .filter-group select{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:8px 12px;font-size:14px}.admin-layout .filter-group select:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1a}.admin-layout .feedback-list-page .admin-table-container{min-height:auto}.admin-layout .table-section{margin-bottom:32px}.admin-layout .table-section:last-of-type{margin-bottom:0}.admin-layout .section-title{color:#374151;align-items:center;gap:12px;margin:0 0 16px;font-size:18px;font-weight:600;display:flex}.admin-layout .section-count{color:#dc2626;background:#fef2f2;border-radius:12px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 8px;font-size:13px;font-weight:600;display:inline-flex}.admin-layout .section-count.responded{color:#16a34a;background:#f0fdf4}.admin-layout .page-content{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px #0000001a}.admin-layout .status-badge,.admin-layout .priority-badge,.admin-layout .type-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}@media (width<=768px){.admin-layout .feedback-list-page,.admin-layout .settings-panel{padding:16px}.admin-layout .setting-row{flex-direction:column;align-items:flex-start;gap:8px}.admin-layout .filters-panel{flex-direction:column;gap:12px}.admin-layout .page-content{padding:16px}}.admin-layout .sse-connections-page{max-width:1400px;margin:0 auto;padding:30px}.admin-layout .sse-connections-page .page-header{justify-content:space-between;align-items:flex-start;margin-bottom:32px;display:flex}.admin-layout .sse-connections-page .page-title{color:#2563eb;margin:0 0 8px;font-size:28px;font-weight:600}.admin-layout .sse-connections-page .page-description{color:#6b7280;margin:0;font-size:15px}.admin-layout .sse-connections-page .btn-refresh{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:background .2s}.admin-layout .sse-connections-page .btn-refresh:hover{background:#1d4ed8}.admin-layout .sse-connections-page .btn-refresh:disabled{opacity:.6;cursor:not-allowed}.admin-layout .sse-stats-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.admin-layout .sse-stat-card{background:#fff;border-radius:8px;padding:20px 24px;box-shadow:0 1px 3px #0000001a}.admin-layout .sse-stat-card .stat-label{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:13px}.admin-layout .sse-stat-card .stat-value{color:#111827;font-size:32px;font-weight:700}.admin-layout .sse-tournament-groups{flex-direction:column;gap:12px;display:flex}.admin-layout .sse-tournament-group{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.admin-layout .sse-tournament-header{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:16px 20px;transition:background .15s;display:flex}.admin-layout .sse-tournament-header:hover{background:#f9fafb}.admin-layout .sse-tournament-header .tournament-info{align-items:center;gap:12px;display:flex}.admin-layout .sse-tournament-header .expand-icon{color:#9ca3af;font-size:12px;transition:transform .2s}.admin-layout .sse-tournament-header .expand-icon.expanded{transform:rotate(90deg)}.admin-layout .sse-tournament-header .tournament-name{color:#111827;font-size:15px;font-weight:600}.admin-layout .sse-tournament-header .connection-count{color:#1d4ed8;background:#dbeafe;border-radius:12px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 8px;font-size:13px;font-weight:600;display:inline-flex}.admin-layout .sse-connections-table{border-collapse:collapse;width:100%}.admin-layout .sse-connections-table th{text-align:left;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;background:#f9fafb;border-top:1px solid #e5e7eb;padding:10px 20px;font-size:12px;font-weight:600}.admin-layout .sse-connections-table td{color:#374151;border-top:1px solid #f3f4f6;padding:10px 20px;font-size:14px}.admin-layout .sse-connections-table .user-agent-cell{text-overflow:ellipsis;white-space:nowrap;color:#9ca3af;max-width:300px;font-size:12px;overflow:hidden}.admin-layout .sse-empty-state{text-align:center;color:#6b7280;background:#fff;border-radius:8px;padding:48px 24px;box-shadow:0 1px 3px #0000001a}.admin-layout .sse-empty-state .empty-icon{margin-bottom:12px;font-size:48px}.admin-layout .sse-empty-state p{margin:0;font-size:15px}.admin-layout .sse-auto-refresh-note{text-align:center;color:#9ca3af;margin-top:16px;font-size:13px}.badge-toast-container{z-index:10000;pointer-events:none;flex-direction:column;gap:.75rem;display:flex;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.badge-toast{background:var(--ds-surface-elevated);border:1px solid var(--ds-border-strong);cursor:pointer;pointer-events:auto;opacity:0;border-left:4px solid;border-radius:.5rem;align-items:center;gap:.75rem;min-width:300px;max-width:400px;padding:.75rem 1rem;transition:opacity .4s,transform .4s;display:flex;position:relative;overflow:hidden;transform:translateY(-20px)scale(.95);box-shadow:0 8px 24px #000000b3,0 0 0 1px #ffffff14}.badge-toast-visible{opacity:1;transform:translateY(0)scale(1)}.badge-toast-exiting{opacity:0;transform:translateY(-20px)scale(.95)}.badge-toast:hover{box-shadow:0 6px 16px #00000080}.badge-toast-icon{background:#ffffff0d;border:2px solid;border-radius:50%;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;animation:1.5s ease-in-out .4s badge-toast-pulse;display:flex}.badge-toast-icon img{object-fit:contain;width:34px;height:34px}.badge-toast-content{flex:1;min-width:0}.badge-toast-title{text-transform:uppercase;letter-spacing:.05em;color:var(--ds-text);margin-bottom:.1rem;font-size:.7rem}.badge-toast-name{color:var(--ds-text);font-size:.95rem;font-weight:600}.badge-toast-tier{text-transform:capitalize;font-weight:400}.badge-toast-desc{color:var(--ds-text);white-space:nowrap;text-overflow:ellipsis;margin-top:.1rem;font-size:.75rem;overflow:hidden}@keyframes badge-toast-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}
