@import"https://fonts.googleapis.com/css2?family=Bebas+Neue:wght@400;700&family=Montserrat:wght@400;600;700&display=swap";:root{--primary-color: #003399;--primary-dark: #002266;--primary-light: #0055ff;--accent-gold: #FFD700;--accent-red: #E10600;--background: #f5f6fa;--surface: #ffffff;--surface-light: #e6e9f0;--text-primary: #22223b;--text-secondary: #4a4e69;--error: #E10600;--success: #00c851;--warning: #ffbb33;--border-radius: 18px;--transition: all .25s cubic-bezier(.4, 0, .2, 1);--shadow: 0 4px 24px rgba(0, 51, 153, .08);--header-height: 72px}[data-theme=light]{--background: #f5f5f5;--surface: #ffffff;--surface-light: #e8e8e8;--text-primary: #1a1a1a;--text-secondary: #666666;--secondary-color: #f0f0f0}:root[data-theme=dark]{--background: #232a3d;--surface: #232a3d;--surface-light: #2d3650;--text-primary: #f5f6fa;--text-secondary: #b0b6c3;--primary-color: #00a86b;--primary-dark: #00794d;--primary-light: #00e08a;--accent-gold: #FFD700;--accent-red: #E10600;--success: #00c851;--warning: #ffbb33;--border-radius: 18px;--shadow: 0 4px 24px rgba(0, 168, 107, .12)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:var(--background);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:800px;margin:0 auto;padding:0 16px 80px;overflow-x:hidden}.main{padding-top:calc(var(--header-height) + 12px)!important;padding-left:.5rem;padding-right:.5rem}body,.container{background:var(--background)!important;color:var(--text-primary)!important}.loading{text-align:center;padding:2rem;color:var(--text-secondary)}.error{text-align:center;padding:2rem;color:#f44336}.header{position:fixed;top:0;left:50%;transform:translate(-50%);max-width:800px;width:100%;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--background);border-bottom:1px solid var(--surface-light);z-index:1000;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000001a}.header{height:var(--header-height);min-height:var(--header-height);line-height:var(--header-height)}.header{background:var(--surface)!important;color:var(--text-primary)!important}.header .logo{display:flex;align-items:center;gap:12px}.header h1{font-size:24px;font-weight:700}.back-button,.logout-button,.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--surface);color:var(--text-primary);text-decoration:none;border:none;cursor:pointer;transition:var(--transition)}.back-button:hover,.logout-button:hover,.theme-toggle:hover{background:var(--surface-light);transform:scale(1.05)}.header-actions{display:flex;align-items:center;gap:8px}.header-avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--surface);color:var(--text-primary);text-decoration:none;border:2px solid var(--accent);cursor:pointer;transition:var(--transition);overflow:hidden;position:relative}.header-avatar:hover{transform:scale(1.05);border-color:var(--primary-color)}.header-avatar img{width:100%;height:100%;object-fit:cover}.header-avatar svg{width:24px;height:24px}.theme-toggle svg{width:20px;height:20px}.live-indicator{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--error);border-radius:20px;font-size:12px;font-weight:700;letter-spacing:1px}.live-indicator .pulse{width:8px;height:8px;border-radius:50%;background:#fff;animation:pulse 1.5s infinite}.menu-button{background:none;border:0!important;box-shadow:none;cursor:pointer!important;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding:4px;display:flex;align-items:center;justify-content:center;transition:box-shadow .2s,transform .2s;font-size:25px;line-height:1;width:48px;height:48px;border-radius:12px}.menu-button:hover{transform:scale(1.08) rotate(-6deg);box-shadow:0 4px 16px #00a86b2e,0 1px 4px #ffd7001f;background:#00a86b12}.menu-button,.menu-button *,.menu-button:active,.menu-button:focus,.menu-button:hover{cursor:pointer!important}.menu-button svg{pointer-events:none}.menu-button.active svg .line-top{transform:translateY(7px) rotate(45deg)}.menu-button.active svg .line-mid{opacity:0}.menu-button.active svg .line-bot{transform:translateY(-7px) rotate(-45deg)}.menu-button svg .line-top,.menu-button svg .line-mid,.menu-button svg .line-bot{transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .2s}:root[data-theme=light] .menu-button{background:none!important;border:none!important;box-shadow:none!important;border-radius:0!important;padding:0!important}:root[data-theme=dark] .menu-button{background:none!important;border:none!important;box-shadow:none!important;border-radius:0!important;padding:0!important}:root[data-theme=dark] .menu-button svg .line-top,:root[data-theme=dark] .menu-button svg .line-mid,:root[data-theme=dark] .menu-button svg .line-bot{fill:var(--accent-gold)!important;filter:none!important}.mini-scoreboard{position:fixed;top:0;left:50%;transform:translate(-50%);max-width:800px;width:100%;height:var(--header-height);background:#101c2cfa;box-shadow:0 2px 12px #0000001a;z-index:1002;display:flex;align-items:center;justify-content:center;gap:24px;opacity:0;pointer-events:none;transition:opacity .35s cubic-bezier(.4,0,.2,1),transform .35s cubic-bezier(.4,0,.2,1)}.mini-scoreboard.visible{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.mini-scoreboard .mini-team-logo{width:40px;height:40px;object-fit:contain}.mini-scoreboard .mini-score{font-size:24px;font-weight:700;color:#fff;letter-spacing:2px}.mini-scoreboard .mini-divider{font-size:24px;color:#fff;margin:0 8px}@media(max-width:568px){.mini-scoreboard{gap:12px}.mini-scoreboard .mini-score{font-size:18px}.mini-scoreboard .mini-team-logo{width:32px;height:32px}.mini-scoreboard .mini-divider{font-size:18px;margin:0 4px}}.sidebar{position:fixed;top:0;left:-300px;width:300px;height:100vh;background:var(--surface);z-index:2000;transition:left .3s ease;box-shadow:2px 0 16px #0000004d}.sidebar.active{left:0}.sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1999;opacity:0;pointer-events:none;transition:opacity .3s ease}.sidebar-overlay.active{opacity:1;pointer-events:all}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--surface-light)}.sidebar-header h3{font-size:20px;color:var(--primary-color)}.close-sidebar{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:var(--transition)}.close-sidebar:hover{background:var(--surface-light)}.sidebar-menu{display:flex;flex-direction:column;gap:8px;padding:16px 0}.sidebar-item{display:flex;align-items:center;gap:14px;padding:14px 24px;margin:0 12px;border-radius:14px;font-size:18px;font-weight:600;color:var(--primary-color);background:none;border:none;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s;box-shadow:none;text-decoration:none;letter-spacing:.5px;outline:none}.sidebar-item:hover,.sidebar-item:focus{background:linear-gradient(90deg,var(--primary-color) 60%,var(--accent-gold) 100%);color:#fff;box-shadow:0 2px 12px #0033991a}.sidebar-item.active{background:linear-gradient(90deg,var(--primary-color) 60%,var(--accent-gold) 100%);color:#fff;box-shadow:0 4px 18px #00339921}.sidebar-divider{height:1.5px;background:linear-gradient(90deg,var(--primary-color) 60%,var(--accent-gold) 100%);opacity:.18;margin:14px 18px;border-radius:2px}.footer{max-width:800px;margin:0 auto;text-align:center;padding:24px 0;color:var(--text-secondary);font-size:14px}.footer .version{font-size:12px;opacity:.5}.footer{background:var(--surface)!important;color:var(--text-secondary)!important;text-align:center;padding:24px 0 12px;font-size:14px;border-top:1px solid var(--surface-light);margin-top:40px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--background);border-top:1px solid var(--surface-light);padding:8px;z-index:1000;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 -2px 8px #0000001a}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px;color:var(--text-secondary);text-decoration:none;transition:var(--transition);border-radius:8px}.nav-item:hover{background:var(--surface-light)}.nav-item.active{color:var(--primary-color)}.nav-item span{font-size:12px}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:var(--transition);text-decoration:none;display:inline-block}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #00a86b4d}.btn-secondary{background:var(--surface-light);color:var(--text-primary)}.btn-secondary:hover{background:var(--surface)}.btn-success{background:var(--success);color:#fff}.btn-primary{background:linear-gradient(90deg,var(--primary-color) 60%,var(--accent-gold) 100%);color:#fff}.btn-primary:hover{background:linear-gradient(90deg,var(--primary-light) 60%,var(--accent-gold) 100%);color:#fff;transform:translateY(-2px) scale(1.04);box-shadow:0 6px 18px #00339926}.btn-secondary{background:var(--surface-light);color:var(--primary-color);border:2px solid var(--primary-color)}.btn-secondary:hover{background:var(--surface);color:var(--accent-gold);border-color:var(--accent-gold)}.btn-danger{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;border:none}.btn-danger:hover{background:linear-gradient(135deg,#f5576c,#f093fb);transform:translateY(-2px);box-shadow:0 6px 18px #f5576c4d}.btn-sm{padding:.5rem 1rem;font-size:.875rem;border-radius:6px}.btn-accent{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;border:none}.btn-accent:hover{background:linear-gradient(135deg,#e67e22,#d35400)}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:var(--surface-light);color:var(--text-primary);border-radius:6px;cursor:pointer;transition:var(--transition);position:relative}.btn-icon:hover{background:var(--primary-color);color:#fff;transform:scale(1.05)}.btn-icon.btn-danger:hover{background:var(--error)}.btn-icon{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:6px;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;position:relative}.btn-icon:hover{background:var(--accent-alpha);color:var(--accent)}.btn-icon.btn-danger:hover{background:#ef44441a;color:#ef4444}.alert-success{background:#00c8511a;border:1px solid var(--success);color:var(--success)}.alert-error{background:#ff44441a;border:1px solid var(--error);color:var(--error)}@media(max-width:568px){.btn,.btn-primary,.btn-secondary{font-size:15px;padding:12px;min-height:44px}}select{width:100%;padding:12px 16px;background:var(--surface);border:2px solid var(--surface-light);border-radius:8px;color:var(--text-primary);font-size:16px;transition:var(--transition);appearance:none;-webkit-appearance:none;-moz-appearance:none}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-secondary)}input[type=text],input[type=password],input[type=email],input[type=number],input[type=date],input[type=time],textarea{width:100%;padding:12px 16px;background:var(--surface);border:2px solid var(--surface-light);border-radius:8px;color:var(--text-primary);font-size:16px;transition:var(--transition)}input:focus,textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #00a86b1a}textarea{resize:vertical;font-family:inherit}.form-error,.form-success{padding:1rem 1.25rem;border-radius:12px;margin-bottom:1.5rem;display:flex;align-items:flex-start;gap:.75rem;animation:slideIn .3s ease-out;box-shadow:0 4px 12px #0000001a}.form-error{background:linear-gradient(135deg,#ef44441a,#dc26260d);border-left:4px solid #ef4444;color:#991b1b}.form-success{background:linear-gradient(135deg,#22c55e1a,#15803d0d);border-left:4px solid #22c55e;color:#14532d}[data-theme=dark] .form-error{background:linear-gradient(135deg,#ef444433,#dc26261a);color:#fca5a5}[data-theme=dark] .form-success{background:linear-gradient(135deg,#22c55e33,#15803d1a);color:#86efac}.form-error:before,.form-success:before{content:"";flex-shrink:0;width:24px;height:24px;background-size:contain;background-repeat:no-repeat;background-position:center}.form-error:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='15' y1='9' x2='9' y2='15'/%3E%3Cline x1='9' y1='9' x2='15' y2='15'/%3E%3C/svg%3E")}.form-success:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2322c55e' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E")}.form-error ul,.form-success ul{margin:0;padding:0;list-style:none}.form-error li,.form-success li{margin:.25rem 0;font-weight:500}.form-error li:before{content:"• ";margin-right:.5rem}.card p{color:var(--text-secondary)}.card-header{display:flex;align-items:center;font-size:18px;color:var(--primary-color);font-weight:700;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--surface-light);letter-spacing:.5px;justify-content:space-between}.card-section{padding-bottom:1rem}.games-section{margin:40px 0}.games-section h2{display:flex;align-items:center;gap:12px;font-size:24px;margin-bottom:20px;color:var(--primary-color)}.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.game-card{background:var(--surface);border-radius:var(--border-radius);padding:24px;border:2px solid var(--surface-light);transition:var(--transition)}.game-card.active{border-color:var(--primary-color);box-shadow:0 4px 16px #00a86b1a}.game-card,.result-card,.admin-game-card{animation:slideUp .3s ease-out}.stat-card{background:var(--surface-light);border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:var(--transition);border:2px solid transparent}.stat-card:hover{background:var(--surface-hover);border-color:var(--accent);transform:translateY(-2px)}.stat-icon{font-size:2.5rem;width:4rem;height:4rem;display:flex;align-items:center;justify-content:center;background:var(--accent-alpha);border-radius:12px}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:2rem;font-weight:700;color:var(--text-primary);line-height:1}.stat-label{font-size:.875rem;color:var(--text-secondary);margin-top:.25rem}.team-cards{display:flex;flex-direction:column;gap:1rem}.team-card{background:var(--surface-light);border-radius:12px;padding:1rem;transition:var(--transition)}.team-card:hover{background:var(--surface-hover)}.team-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--surface)}.team-card-header h4{margin:0;font-size:1.125rem;color:var(--text-primary)}.team-card-body{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.team-card-info{display:flex;justify-content:space-between;font-size:.875rem}.team-card-info strong{color:var(--text-secondary)}.team-card-info span{color:var(--text-primary)}.team-card-actions{display:flex;gap:.5rem;flex-wrap:wrap}.team-card-actions .btn{flex:1;min-width:fit-content}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.75rem}.club-item,.users-item,.persons-item,.leagues-item,.seasons-item,.competitions-item,.games-item,.live-ticker-item{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem;background:var(--surface-light);border-radius:8px;transition:all var(--transition)}.club-item:hover,.users-item:hover,.persons-item:hover,.leagues-item:hover,.seasons-item:hover,.competitions-item:hover,.games-item:hover,.live-ticker-item:hover{background:var(--surface-hover)}.club-header,.users-header,.persons-header,.leagues-header,.seasons-header,.competitions-header,.games-header,.live-ticker-header{display:flex;gap:.5rem;align-items:flex-start;color:var(--primary-color);border-bottom:1px solid var(--surface);width:100%;padding:.5rem}.club-header:hover,.users-header:hover,.persons-header:hover,.leagues-header:hover,.seasons-header:hover,.competitions-header:hover,.games-header:hover,.live-ticker-header:hover{border-bottom:1px solid var(--surface-light)}.club-content,.users-content,.persons-content,.leagues-content,.seasons-content,.competitions-content,.games-content,.live-ticker-content{display:flex;flex-direction:column;width:100%}.club-field,.users-field,.persons-field,.leagues-field,.seasons-field,.competitions-field,.games-field,.live-ticker-field{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.club-field-label,.users-field-label,.persons-field-label,.leagues-field-label,.seasons-field-label,.competitions-field-label,.games-field-label,.live-ticker-field-label{font-size:.875rem;color:var(--text-secondary);font-weight:500;min-width:100px}.club-field-value,.users-field-value,.persons-field-value,.leagues-field-value,.seasons-field-value,.competitions-field-value,.games-field-value,.live-ticker-field-value{font-size:.875rem;color:var(--text-primary);text-align:right;word-break:break-word}.club-actions,.users-actions,.persons-actions,.leagues-actions,.seasons-actions,.competitions-actions,.games-actions,.live-ticker-actions{display:flex;gap:.5rem;width:100%;justify-content:flex-end}.logout-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:99999;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}.logout-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(4px);pointer-events:none}.logout-modal-content{position:relative;z-index:100000;background:var(--surface);border-radius:16px;padding:2rem;max-width:420px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;text-align:center;animation:slideUp .3s ease-out;pointer-events:all}.logout-modal-content button{pointer-events:all;cursor:pointer}.logout-modal-icon{width:64px;height:64px;margin:0 auto 1rem;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.logout-modal-content h3{margin:0 0 .5rem;font-size:1.5rem;color:var(--text-primary)}.logout-modal-content p{margin:0 0 1.5rem;color:var(--text-secondary);font-size:1rem}.logout-user-info{background:var(--surface-light);padding:.75rem;border-radius:8px;font-size:.9rem;margin-bottom:1.5rem}.logout-user-info strong{color:var(--accent)}.logout-modal-buttons{display:flex;gap:1rem;justify-content:center}.logout-modal-buttons .btn{flex:1;padding:.75rem 1.5rem;font-size:1rem}#confirmModal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:999999;background:#00000080;backdrop-filter:blur(4px);align-items:center;justify-content:center;display:none}#confirmModal.confirm-modal-show{display:flex!important}#confirmModal.confirm-modal-hidden{display:none!important}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(4px);z-index:9999;display:none;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.modal.active{display:flex;opacity:1}.modal-content{background:var(--surface);border-radius:16px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--surface-light)}.modal-header h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--transition)}.modal-close:hover{background:var(--surface-light);color:var(--text-primary)}.modal-body{padding:1.5rem}.modal-footer{display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem;border-top:1px solid var(--surface-light)}.modal-large{max-width:800px}.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:1.5rem;flex-wrap:wrap}.pagination-btn{padding:.5rem .75rem;min-width:40px;font-size:.875rem;width:auto!important;flex-shrink:0}.pagination-num{min-width:44px}@media(max-width:568px){.pagination{gap:.25rem!important}.pagination-btn{padding:.5rem .6rem;min-width:36px;font-size:.8125rem;width:auto!important}.pagination-num{min-width:40px}}.scoreboard-card{max-width:700px;margin:0 auto 32px;border-radius:22px;box-shadow:0 4px 24px #00a86b33;background:var(--surface);overflow:hidden;padding:0}.scoreboard-bg{background:linear-gradient(180deg,var(--background) 60%,var(--primary-color) 100%);min-height:220px;padding:28px 24px 32px;display:flex;flex-direction:column;justify-content:flex-end;position:relative}.scoreboard-header{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;margin-bottom:20px}.scoreboard-content{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;margin-bottom:10px}.scoreboard-team{flex:1;display:flex;flex-direction:column;align-items:center;color:#fff;text-shadow:0 2px 8px #000a;font-size:20px;font-weight:700}.scoreboard-score{min-width:120px;background:#0000008c;border-radius:16px;padding:16px 32px;font-size:56px;color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;gap:16px;box-shadow:0 2px 12px #0006}.score-scheduled{color:#fff}.score-live{color:#fbbf24;animation:scorePulse 2s ease-in-out infinite}.score-finished{color:#fff}.scoreboard-score-divider{font-size:44px;font-weight:400;opacity:.7}.scoreboard-team-name{margin-top:18px;font-size:20px;font-weight:700;text-align:center;padding:4px 12px}.scoreboard-team-logo{width:72px;height:72px;object-fit:contain}@media(max-width:568px){.scoreboard-card{max-width:100vw;border-radius:12px;margin:0 -4px 18px}.scoreboard-bg{min-height:140px;padding:16px 6px 18px}.scoreboard-header{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;margin-bottom:20px}.scoreboard-content{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;margin-bottom:10px}.team-column{text-align:center}.scoreboard-footer{display:grid;grid-template-columns:1fr 1fr;font-size:12px;padding-left:14px}.scoreboard-team{height:100px;display:flex;align-items:center;justify-content:center}.scoreboard-score{min-width:80px;font-size:37px;padding:6px 12px;border-radius:8px;margin-top:15px}.scoreboard-team-name{margin-top:8px;font-size:12px;font-weight:600;line-height:1.2;min-height:36px;display:flex;align-items:center;justify-content:center;text-align:center}.scoreboard-score-divider{font-size:22px}.scoreboard-team-logo{width:72px;height:72px}}.ticker-card{max-width:700px;margin:0 auto 32px;border-radius:22px;box-shadow:0 4px 24px #00a86b33;background:var(--surface);overflow:hidden;padding:0}@media(max-width:568px){.ticker-card{max-width:100vw;border-radius:12px;margin:0 -4px 16px}}.fifa-card.single-card{max-width:520px;margin:0 auto 28px;background:var(--surface);border-radius:22px;box-shadow:0 4px 24px #0000001a;border:1.5px solid #e6e9f0;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,border-radius .2s;padding:0}@media(max-width:568px){.fifa-card.single-card{max-width:100vw;margin:0 -4px 16px;border-radius:12px;border-width:1px}}.fifa-divider{width:100%;height:2px;background:linear-gradient(90deg,gold,#00a86b);opacity:.18;margin:0}@media(max-width:568px){.fifa-card{max-width:100vw;margin:0 -8px 18px;border-radius:12px;border-width:2px}}@media(max-width:568px){.match-score{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:4px}.team{align-items:center;justify-content:center}.score-center{justify-content:center;align-items:center;display:flex}.score-display{min-width:70px;padding:4px;gap:2px}.team-logo{font-size:28px;width:36px;height:36px}.team-score{font-size:22px;min-width:24px}.score-divider{font-size:16px}}.game-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.game-status{padding:4px 12px;background:var(--error);color:#fff;border-radius:12px;font-size:12px;font-weight:700;letter-spacing:1px}.game-time{font-family:Courier New,monospace;font-size:18px;font-weight:700}.game-score{display:flex;justify-content:space-between;align-items:center;gap:16px}.team{flex:1;text-align:center}.team-name{font-size:14px;color:var(--text-secondary);margin-bottom:8px}.score{font-size:48px;font-weight:700;color:var(--primary-color)}.vs{font-size:24px;color:var(--text-secondary)}.welcome{text-align:center;padding:40px 20px}.welcome h2{font-size:32px;margin-bottom:12px;background:linear-gradient(135deg,var(--primary-color),var(--primary-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome p{color:var(--text-secondary);font-size:18px}.match-header{display:flex;justify-content:center;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--surface-light)}.match-status{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:1px;justify-self:start}.match-status.live{background:var(--error);color:#fff;animation:pulse 2s infinite}.match-time{font-family:Courier New,monospace;font-size:24px;font-weight:700;color:var(--primary-color);justify-self:center}.match-half{color:var(--text-secondary);font-size:14px;justify-self:end}.match-score{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:40px;margin-bottom:32px}.team{flex:1;display:flex;flex-direction:column;align-items:center;gap:16px}.team-logo{font-size:64px;width:100px;height:100px;display:flex;align-items:center;justify-content:center;background:var(--background);border-radius:16px;box-shadow:0 4px 12px #0003}.team-info{text-align:center}.team-name{font-size:18px;font-weight:700;margin-bottom:4px}.team-formation{color:var(--text-secondary);font-size:12px}.score-center{display:flex;align-items:center;justify-content:center}.score-display{display:flex;gap:8px;font-size:48px;font-weight:700;color:var(--accent-gold);letter-spacing:2px}.score-display .winner{color:var(--primary-color)}.score-display{display:flex;align-items:center;gap:16px;background:var(--background);padding:20px 32px;border-radius:16px;box-shadow:0 4px 16px #00a86b33}.team-score{font-size:72px;font-weight:700;color:var(--primary-color);line-height:1;min-width:80px;text-align:center}.score-divider{font-size:48px;color:var(--text-secondary);font-weight:300}.match-stats{background:var(--background);border-radius:8px;padding:20px}.stat-item{margin-bottom:20px}.stat-label{display:block;text-align:center;color:var(--text-secondary);font-size:12px;margin-bottom:8px}.stat-bar{height:24px;background:var(--surface-light);border-radius:12px;overflow:hidden;display:flex;margin-bottom:8px}.stat-bar-fill{height:100%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;transition:width .5s ease}.stat-bar-fill.home{background:var(--primary-color);color:#fff}.stat-bar-fill.away{background:var(--text-secondary);color:#fff}.stat-values{display:flex;justify-content:space-between;font-size:14px;font-weight:600}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat-box{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px;background:var(--surface);border-radius:8px}.stat-box .stat-value{font-size:20px;font-weight:700;color:var(--primary-color)}.stat-box .stat-label{font-size:11px;color:var(--text-secondary)}.game-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.match-display{display:flex;align-items:center;justify-content:center;gap:24px;padding:24px;background:var(--background);border-radius:var(--border-radius);margin-bottom:20px}.match-display .team{display:flex;flex-direction:column;align-items:center;gap:8px}.match-display .score{font-size:32px;font-weight:700;color:var(--primary-color)}.match-display .score-divider{font-size:32px;font-weight:300;color:var(--text-secondary)}.game-selector{display:flex;flex-direction:column;gap:8px}.game-selector-item{display:flex;align-items:center;gap:12px;padding:16px;background:var(--surface);border-radius:var(--border-radius);text-decoration:none;color:var(--text-primary);transition:var(--transition);border:2px solid transparent}.game-selector-item:hover{background:var(--surface-light);transform:translate(4px)}.game-selector-item.active{border-color:var(--primary-color);background:var(--surface-light)}.game-selector-item .vs{color:var(--text-secondary);font-size:14px}.team-badge{display:inline-block;background:var(--primary-color);color:#fff;padding:2px 8px;border-radius:4px;font-size:12px;margin-top:8px}@media(max-width:568px){.match-display{flex-direction:column;gap:16px}.ticker-meta{flex-wrap:wrap;gap:8px}}.team-assignment-controls{display:flex;gap:.5rem;margin-bottom:.5rem}.team-assignment-controls input{flex:1}@media(max-width:768px){.team-assignment-controls{flex-direction:column}.team-assignment-controls .team-assign-btn{width:100%}}.admin-section{background:var(--surface);border-radius:var(--border-radius);padding:24px;margin-bottom:24px}.game-form .team-input{margin-bottom:20px}.vs-divider{text-align:center;font-size:24px;font-weight:700;color:var(--text-secondary);margin:20px 0}.admin-game-card{background:var(--background);border-radius:8px;padding:16px;margin-bottom:12px}.game-info{margin-bottom:16px}.game-info .teams{font-weight:600;margin-bottom:4px}.game-info .vs{color:var(--text-secondary);margin:0 8px}.game-info .game-time{font-size:12px;color:var(--text-secondary)}.score-form{display:flex;flex-direction:column;gap:12px}.score-inputs{display:flex;align-items:center;gap:12px;justify-content:center}.score-inputs input{width:80px;text-align:center;font-size:24px;font-weight:700}.score-inputs span{font-size:24px;color:var(--text-secondary)}.game-actions{display:flex;gap:8px}.game-actions .btn{flex:1}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.admin-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--surface-light);overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-tab{display:flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;background:transparent;border:none;color:var(--text-secondary);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;margin-bottom:-2px;white-space:nowrap}.admin-tab svg{opacity:.7;transition:opacity .2s ease}.admin-tab:hover{color:var(--text-primary);background:var(--surface-light)}.admin-tab:hover svg{opacity:1}.admin-tab.active{color:var(--accent);border-bottom-color:var(--accent);background-color:var(--primary-color)}.admin-tab.active svg{opacity:1}.admin-tab-content{display:none}.admin-tab-content.active{display:block;animation:fadeIn .3s ease-out}#tab-vereine:target,#tab-benutzer:target,#tab-wettbewerbe:target,#tab-spiele:target{display:block}.admin-table{overflow-x:auto}.admin-table table{width:100%;border-collapse:collapse}.admin-table th{text-align:left;padding:1rem;background:var(--surface-light);color:var(--text-secondary);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--surface)}.admin-table td{padding:1rem;border-bottom:1px solid var(--surface-light);color:var(--text-primary)}.admin-table tr:hover td{background:var(--surface-light)}.avatar-card{background:var(--surface);border-radius:12px;padding:1rem;border:1px solid var(--border-color);transition:var(--transition);display:flex;flex-direction:column;gap:.75rem}.avatar-card:hover{border-color:var(--accent);box-shadow:0 4px 12px #00a86b1a;transform:translateY(-2px)}.avatar-card-image{border:2px solid var(--accent)}@media(max-width:568px){.admin-tabs{gap:0;margin-bottom:1.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-tab{padding:.75rem 1rem;font-size:.875rem;gap:.375rem}.admin-tab svg{width:16px;height:16px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.stat-card{padding:1rem}.stat-icon{font-size:1.75rem;width:3rem;height:3rem}.stat-value{font-size:1.5rem}.stat-label{font-size:.75rem}.admin-table{font-size:.875rem}.admin-table th,.admin-table td{padding:.75rem .5rem}}.squad-header{display:flex;justify-content:flex-end;margin-bottom:1rem}.squad-list{display:flex;flex-direction:column;gap:.75rem}.squad-item{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--surface-light);border-radius:12px;transition:var(--transition)}.squad-item:hover{background:var(--surface-hover)}.squad-player-info{display:flex;align-items:center;gap:1rem;flex:1}.shirt-number{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;background:var(--accent-alpha);color:var(--accent);border-radius:8px;font-size:1.25rem;font-weight:700}.squad-meta{font-size:.875rem;color:var(--text-secondary);margin-top:.25rem}.squad-player-card{background:var(--card-bg);border:2px solid var(--surface-light);border-radius:8px;padding:.75rem;transition:var(--transition)}.squad-player-card:hover{border-color:var(--primary);box-shadow:0 2px 8px #00a86b1a}.squad-player-card.player-not-eligible{opacity:.7;border-color:var(--error);background:#ff00000d;position:relative}.squad-player-card.player-not-eligible:hover{opacity:.85;border-color:var(--error);box-shadow:0 2px 8px #f4433633;cursor:help}.squad-player-card.player-not-eligible:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:8px;pointer-events:none}.squad-controls-row{display:flex;gap:.5rem;align-items:center;margin-bottom:.5rem}.squad-position-select{flex:1;font-size:.85rem;padding:.25rem}.squad-captain-btn{font-size:.75rem;padding:.375rem .5rem;flex-shrink:0;min-width:40px}.squad-remove-btn{font-size:.85rem;padding:.375rem .5rem;flex-shrink:0;min-width:40px}.squad-bench-controls{display:flex;gap:.5rem}.squad-bench-move{flex:1;font-size:.75rem;padding:.375rem}.squad-bench-remove{font-size:.75rem;padding:.375rem}@media(max-width:568px){.squad-position-select{flex:1;min-width:0;padding:.5rem .25rem;font-size:.8rem}.squad-captain-btn,.squad-remove-btn{flex:none;width:36px;padding:.5rem .25rem}.squad-bench-move{flex:none;width:70%}.squad-bench-remove{flex:none;width:30%}}.desktop-only{display:block}.mobile-only{display:none}.role-assign-container{display:flex;gap:.5rem}.role-assign-container select{flex:1}@media(max-width:568px){.role-assign-container{gap:.75rem}.role-assign-container select,.role-assign-container button{flex:1;min-width:0}.role-assign-container button{padding-left:.5rem;padding-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.profile-info{display:flex;align-items:center;gap:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color);margin-bottom:1.5rem}.profile-avatar{flex-shrink:0;width:80px;height:80px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;color:#fff}.profile-details{flex:1}.profile-details h2{margin:0 0 .5rem;font-size:1.75rem;color:var(--text-primary)}.profile-email{margin:0 0 .75rem;color:var(--text-secondary);font-size:1rem}.profile-meta{display:flex;gap:.5rem;flex-wrap:wrap}.profile-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600;text-transform:uppercase}.profile-badge-user{background:var(--surface-light);color:var(--text-primary)}.profile-badge-admin{background:#ef4444;color:#fff}.profile-badge-site_manager{background:#f97316;color:#fff}.profile-badge-reporter{background:#3b82f6;color:#fff}.profile-badge-verified{background:var(--success);color:#fff}.profile-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.profile-stat{display:flex;flex-direction:column;gap:.25rem}.profile-stat-label{font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;font-weight:600}.profile-stat-value{font-size:1.1rem;color:var(--text-primary);font-weight:500}.profile-actions{display:flex;gap:1rem;flex-direction:column}.profile-actions .btn{display:flex;align-items:center;justify-content:center;text-decoration:none}.push-status{margin-top:1rem}.profile-section{padding:1rem 0}.profile-empty{color:var(--text-secondary);font-style:italic;text-align:center;padding:2rem}.address-list,.contact-list{display:flex;flex-direction:column;gap:1rem}.address-item,.contact-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:var(--surface-light);border-radius:8px;transition:var(--transition)}.address-item:hover,.contact-item:hover{background:var(--surface-hover)}.address-type-badge{padding:.25rem .75rem;border-radius:6px;font-size:.875rem;font-weight:500;white-space:nowrap}.address-content{flex:1;line-height:1.6}.address-actions,.contact-actions{display:flex;gap:.5rem}.contact-item{align-items:center}.contact-icon{font-size:1.5rem}.contact-content{flex:1;display:flex;flex-direction:column}.contact-type{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.contact-value{font-size:1rem;color:var(--text-primary);font-weight:500}.role-list{display:flex;flex-direction:column;gap:1rem}.role-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--surface-light);border-radius:8px;border-left:4px solid var(--accent);transition:var(--transition)}.role-item:hover{background:var(--surface-hover);transform:translate(4px)}.role-player{border-left-color:#10b981}.role-coach{border-left-color:#f59e0b}.role-referee{border-left-color:#ef4444}.role-manager{border-left-color:#8b5cf6}.role-icon{font-size:2rem;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;background:var(--surface);border-radius:50%}.role-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.role-name{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.role-description{font-size:.875rem;color:var(--text-secondary)}.role-date{font-size:.75rem;color:var(--text-secondary);opacity:.8}.role-actions{display:flex;gap:.5rem}.role-profile-link{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.55rem 1.25rem;border-radius:8px;background:#ffd70026;color:var(--accent-gold);font-size:.85rem;font-weight:700;letter-spacing:.3px;text-decoration:none;white-space:nowrap;flex-shrink:0;border:1.5px solid var(--accent-gold);transition:all .2s ease}.role-profile-link:hover{background:var(--accent-gold);color:#1a1a2e;transform:translateY(-1px);box-shadow:0 4px 12px #ffd7004d}.role-profile-link svg{transition:transform .2s ease}.role-profile-link:hover svg{transform:translate(3px)}.player-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.player-info-item{padding:1rem;background:var(--surface-light);border-radius:8px;display:flex;flex-direction:column;gap:.5rem}.player-info-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.player-info-value{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.player-position-badge{padding:.5rem 1rem;border-radius:6px;display:inline-block;width:fit-content;color:#fff;font-size:1rem}.position-gk{background:linear-gradient(135deg,#f093fb,#f5576c)}.position-df{background:linear-gradient(135deg,#667eea,#764ba2)}.position-mf{background:linear-gradient(135deg,#4facfe,#00f2fe)}.position-fw{background:linear-gradient(135deg,#fa709a,#fee140)}.player-jersey-number{font-size:2rem;font-weight:700;background:linear-gradient(135deg,var(--accent) 0%,var(--primary-color) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media(max-width:568px){.profile-info{flex-direction:column;text-align:center}.profile-stats{grid-template-columns:1fr}.address-item,.contact-item{flex-direction:column;gap:.75rem}.address-actions,.contact-actions{width:100%;justify-content:flex-end}.role-item{flex-direction:column;text-align:center}.player-info-grid{grid-template-columns:1fr}}.page-header{margin-bottom:2rem}.back-button{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-secondary);text-decoration:none;margin-bottom:1.5rem;padding:.75rem 1.25rem;background:var(--surface);border-radius:12px;border:2px solid var(--surface-light);font-weight:600;transition:var(--transition)}.back-button:hover{color:var(--accent);background:var(--surface-light);border-color:var(--accent);transform:translate(-4px)}.back-button svg{transition:var(--transition)}.back-button:hover svg{transform:translate(-2px)}.page-header h2{margin:0;padding:0 .5rem}@media(max-width:568px){.desktop-only{display:none}.mobile-only{display:flex}.club-details,.verein-details{flex-direction:column}.club-logo-large{width:80px;height:80px}.club-info-grid,.verein-info-grid{grid-template-columns:1fr}.page-header h2{font-size:1.5rem}.squad-item{flex-direction:column;align-items:flex-start;gap:1rem}.btn-group{width:100%;justify-content:flex-end}.modal-content{margin:0;max-height:100vh;border-radius:0}.modal-large{max-width:100%}.coach-modal-grid{grid-template-columns:1fr!important}.coach-list-section,.coach-add-section{width:100%}}@media(max-width:568px){.settings-row-flex{flex-direction:row;align-items:center;gap:8px}.settings-install-group{flex:1;justify-content:flex-end;align-items:center;gap:8px;width:auto}#appInstalledText{margin-left:8px;font-size:15px;text-align:right;padding:0;display:inline-block}}@media(max-width:568px){.card{max-width:100vw;border-radius:10px;margin:0 -6px 16px;box-shadow:0 2px 8px #00000014;padding:10px 4px 14px}.form-group{margin-bottom:12px}.checkbox-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.theme-toggle-group{flex-direction:row!important;gap:4px;width:auto;justify-content:flex-start}.theme-toggle-btn{width:auto;min-width:0;font-size:14px;padding:8px 12px}.settings-install-group{flex-direction:column;align-items:stretch;gap:8px;width:100%}.btn,.btn-primary,.btn-secondary{font-size:15px;padding:12px;min-height:44px}#appInstalledText{font-size:15px;text-align:center;padding:8px 0 0;display:block}}.checkbox-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.theme-toggle-group{display:flex;gap:8px}.theme-toggle-btn{padding:8px 18px;border:2px solid var(--surface-light);background:var(--surface);color:var(--text-primary);border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:background .18s,color .18s,border-color .18s;outline:none}.theme-toggle-btn.active,.theme-toggle-btn:focus{border-color:var(--primary-color);background:var(--primary-color);color:#fff}.theme-toggle-btn:hover:not(.active){background:var(--surface-light);color:var(--primary-color)}.settings-row-flex{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px}.settings-row-flex .btn{margin-top:0;white-space:nowrap}.toggle-switch{position:relative;display:inline-block;width:46px;height:26px;margin-left:8px}.settings-section{padding:0}.settings-section{background:var(--surface);border-radius:22px;padding:24px 24px 20px;max-width:700px;width:100%;margin:0 auto 24px;box-shadow:0 4px 24px #0000001a;border:1.5px solid #e6e9f0;overflow:hidden;text-align:left;display:flex;flex-direction:column;gap:18px}.settings-section .settings-header{display:flex;align-items:center;gap:8px;font-size:18px;color:var(--primary-color);font-weight:700;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--surface-light);letter-spacing:.5px}.settings-section .form-group{margin-bottom:16px}.settings-section label,.settings-section span{font-weight:600;color:var(--text-secondary)}.settings-section input,.settings-section select,.settings-section button{margin-top:8px}.settings-section button{cursor:pointer}.settings-row{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 0}.settings-info{flex:1}.settings-info h3{margin:0 0 .5rem;font-size:1rem;color:var(--text-primary);font-weight:600}.settings-info p{margin:0;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.toggle-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background:var(--surface-light);transition:.3s;border-radius:26px;box-shadow:0 2px 8px #00000014}.slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background:var(--primary-color);transition:.3s;border-radius:50%;box-shadow:0 1px 4px #0000001a}.toggle-switch input:checked+.slider{background:var(--primary-color)}.toggle-switch input:checked+.slider:before{transform:translate(20px);background:#fff}.toggle-switch input:focus+.slider{box-shadow:0 0 1px var(--primary-color)}.live-ticker{background:var(--surface);border-radius:var(--border-radius);padding:24px;margin-bottom:24px}.ticker-header{display:flex;align-items:center;gap:8px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--surface-light)}.ticker-header h3{display:flex;align-items:center;gap:8px;font-size:18px;color:var(--primary-color)}.ticker-timeline{display:flex;flex-direction:column;gap:16px}.ticker-item:hover{background:var(--surface-light)}.ticker-time{font-family:Courier New,monospace;font-weight:700;color:var(--text-secondary);font-size:14px}.ticker-icon{font-size:24px;display:flex;align-items:center;justify-content:center}.ticker-content{line-height:1.6}.ticker-content strong{color:var(--primary-color)}.ticker-player{color:var(--text-primary);font-weight:600}.ticker-list{display:flex;flex-direction:column;gap:12px}.ticker-list-item{background:var(--surface);border-radius:var(--border-radius);padding:16px;border-left:4px solid var(--text-secondary);transition:var(--transition)}.ticker-list-item:hover{background:var(--surface-light)}.ticker-list-item.goal{border-left-color:var(--success)}.ticker-list-item.card{border-left-color:var(--warning)}.ticker-list-item.substitution{border-left-color:var(--primary-color)}.ticker-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ticker-meta{display:flex;align-items:center;gap:12px}.ticker-list-item .ticker-time{font-weight:700;color:var(--primary-color);font-size:16px}.ticker-list-item .ticker-icon{font-size:20px}.ticker-list-item .ticker-type{background:var(--surface-light);padding:4px 12px;border-radius:20px;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.ticker-actions{display:flex;gap:.5rem;align-items:center;opacity:0;transition:opacity .2s}.ticker-item:hover .ticker-actions{opacity:1}.ticker-content{color:var(--text-secondary);line-height:1.6}.ticker-content strong{color:var(--text-primary)}.ticker-item.important{border-left:4px solid var(--primary-color);background:linear-gradient(90deg,rgba(0,168,107,.05),transparent)}.ticker-item.goal{border-left:4px solid var(--success, #10b981)}.ticker-item.own-goal{border-left:4px solid #ef4444;background:linear-gradient(90deg,rgba(239,68,68,.08),transparent)}.ticker-item.own-goal .ticker-type-label{color:#ef4444}.ticker-item.own-goal .ticker-icon{filter:none}.ticker-item.own-goal .ticker-goal-player-photo{border-color:#ef4444}.ticker-item.own-goal .ticker-goal-minute{color:#ef4444;background:#ef44441a}.ticker-own-goal-badge{display:inline-block;background:#ef4444;color:#fff;font-size:.625rem;font-weight:700;padding:.15rem .5rem;border-radius:4px;margin-top:.25rem;letter-spacing:.5px;text-transform:uppercase}.ticker-item.card{border-left:4px solid var(--warning, #f59e0b)}.ticker-item.card.card-red{border-left-color:#ef4444}.ticker-item.card.card-yellow-red{border-left-color:#f97316}.ticker-item.substitution{border-left:4px solid #3b82f6}.ticker-item.system{border-left:4px solid var(--text-secondary, #888);background:var(--surface-light, rgba(255,255,255,.03))}.ticker-item.info{border-left:4px solid transparent}.ticker-type-label{display:inline-block;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.15rem}.ticker-item.goal .ticker-type-label{color:var(--success, #10b981)}.ticker-item.card .ticker-type-label{color:var(--warning, #f59e0b)}.ticker-item.card.card-red .ticker-type-label{color:#ef4444}.ticker-item.card.card-yellow-red .ticker-type-label{color:#f97316}.ticker-card-team{display:flex;align-items:center;gap:.4rem;margin-top:.25rem}.ticker-card-team-logo{width:18px;height:18px;object-fit:contain;flex-shrink:0}.ticker-card-team-name{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.ticker-card-player{display:flex;align-items:center;gap:.4rem;margin-top:.15rem}.ticker-card-player-photo{width:22px;height:22px;max-width:22px;max-height:22px;border-radius:50%;object-fit:cover;border:1.5px solid var(--warning, #f59e0b);flex-shrink:0;background:var(--surface-light)}.ticker-card-player-photo.card-red{border-color:#ef4444}.ticker-card-player-photo.card-yellow-red{border-color:#f97316}.ticker-card-player-name{font-size:.85rem;font-weight:600;color:var(--text-primary)}.ticker-team-badge{display:inline-block;font-size:.65rem;font-weight:700;padding:.1rem .35rem;border-radius:3px;text-transform:uppercase;margin-left:.4rem;vertical-align:middle;letter-spacing:.5px}.team-badge-home{background:#3b82f626;color:#3b82f6}.team-badge-away{background:#ef444426;color:#ef4444}.ticker-message{margin-top:.15rem;line-height:1.5}.ticker-time-empty{color:var(--text-secondary, #888);opacity:.5}.ticker-item{display:grid;grid-template-columns:30px 30px 1fr auto;gap:12px;padding:5px;background:var(--background);border-radius:8px;transition:var(--transition);animation:slideUp .3s ease-out}.ticker-item.new{animation:tickerFadeIn .4s ease-out}.ticker-goal-team{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.ticker-goal-team-logo{width:18px;height:18px;max-width:18px;max-height:18px;object-fit:contain;border-radius:2px;flex-shrink:0}.ticker-goal-team-name{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.ticker-goal-player{display:flex;align-items:center;gap:.4rem;margin-top:.15rem}.ticker-goal-player-photo{width:30px;height:30px;max-width:30px;max-height:30px;border-radius:50%;object-fit:cover;border:1.5px solid var(--success, #10b981);flex-shrink:0;background:var(--surface-light)}.ticker-goal-player-name{font-size:.85rem;font-weight:600;color:var(--text-primary)}.ticker-goal-minute{font-family:Courier New,monospace;font-size:.75rem;font-weight:700;color:var(--success, #10b981);background:#00a86b1a;padding:.15rem .4rem;border-radius:4px;flex-shrink:0}.ticker-item.substitution .ticker-type-label{color:#3b82f6}.ticker-sub-team{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.ticker-sub-team-logo{width:18px;height:18px;max-width:18px;max-height:18px;object-fit:contain;border-radius:2px;flex-shrink:0}.ticker-sub-team-name{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.ticker-sub-player{display:flex;align-items:center;gap:.4rem;margin-top:.15rem}.ticker-sub-player-photo{width:22px;height:22px;max-width:22px;max-height:22px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--surface-light)}.ticker-sub-player-name{font-size:.85rem;font-weight:600}.ticker-sub-arrow{font-size:.7rem;font-weight:700;flex-shrink:0}.ticker-sub-out .ticker-sub-player-photo{border:1.5px solid #ef4444}.ticker-sub-out .ticker-sub-arrow,.ticker-sub-out .ticker-sub-player-name{color:#ef4444}.ticker-sub-in .ticker-sub-player-photo{border:1.5px solid #22c55e}.ticker-sub-in .ticker-sub-arrow,.ticker-sub-in .ticker-sub-player-name{color:#22c55e}.game-detail-header{text-align:center;padding-bottom:1rem}.game-detail-meta{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;font-size:.75rem;color:var(--text-secondary);margin-bottom:1rem;padding:.75rem}.game-detail-meta>span:not(:last-child):after{content:"•";margin-left:.5rem;color:var(--text-secondary);opacity:.5}.game-detail-league{font-weight:600;color:var(--primary)}.game-detail-scoreboard{display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:1rem 0}.game-detail-team{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1;min-width:0}.game-detail-logo{width:56px;height:56px;object-fit:contain;border-radius:8px;background:var(--surface-light);padding:4px}.game-detail-team-name{font-weight:700;font-size:.85rem;text-align:center;line-height:1.2;word-break:break-word;hyphens:auto;-webkit-hyphens:auto;max-width:140px;overflow-wrap:break-word}.game-detail-score-block{display:flex;flex-direction:column;align-items:center;gap:.5rem;min-width:80px}.game-detail-score{display:flex;align-items:center;gap:.25rem;font-size:2.5rem;font-weight:900;font-variant-numeric:tabular-nums}.game-detail-colon{color:var(--text-secondary)}.game-detail-halftime{font-size:.8rem;font-weight:600;color:var(--text-secondary);letter-spacing:.5px;margin-top:-.25rem}.game-detail-time{font-size:2rem;font-weight:700;color:var(--primary)}.game-detail-date{font-size:.8rem;color:var(--text-secondary)}.game-detail-status{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.7rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px}.game-detail-venue,.game-detail-datetime{font-size:.8rem;color:var(--text-secondary);margin-top:.25rem}.datetime-compact{display:none}@media(max-width:500px){.datetime-full{display:none}.datetime-compact{display:inline}}.game-detail-tabs{display:flex;border-bottom:2px solid var(--surface-light);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--primary) var(--surface-light)}.game-detail-tabs::-webkit-scrollbar{height:4px}.game-detail-tabs::-webkit-scrollbar-track{background:var(--surface-light)}.game-detail-tabs::-webkit-scrollbar-thumb{background:var(--primary);border-radius:2px}.game-detail-tab{flex:1;padding:.75rem 1rem;border:none;background:none;color:var(--text-secondary);font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s;border-bottom:3px solid transparent;white-space:nowrap;min-height:44px;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;user-select:none}.game-detail-tab:hover{color:var(--text-primary);background:var(--surface-light)}.game-detail-tab:active{background:var(--surface);transform:scale(.98)}.game-detail-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.game-detail-tab-content{display:none;padding:1rem}.game-detail-tab-content.active{display:block}.game-detail-empty{text-align:center;padding:2rem;color:var(--text-secondary);font-size:.875rem}.game-detail-timeline{display:flex;flex-direction:column;gap:.5rem}.timeline-event{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem;border-radius:8px;transition:background .15s;min-height:44px}.timeline-event:hover,.timeline-event:active{background:var(--surface-light);cursor:default}.timeline-home{flex-direction:row}.timeline-away{flex-direction:row-reverse;text-align:right}.timeline-minute{min-width:40px;font-size:.75rem;font-weight:700;color:var(--primary);font-variant-numeric:tabular-nums}.timeline-icon{font-size:1rem;line-height:1}.timeline-details{display:flex;flex-direction:column;gap:.15rem}.timeline-player{font-weight:600;font-size:.85rem}.timeline-info{font-size:.75rem;color:var(--text-secondary)}.timeline-assist{font-size:.7rem;color:var(--text-secondary);font-style:italic}.game-detail-lineups{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.lineup-column{display:block}.lineup-mobile-tabs{display:none;gap:.5rem;margin-bottom:1rem;padding:.5rem;background:var(--surface-light);border-radius:8px}.lineup-mobile-tab{flex:1;padding:.75rem 1rem;border:none;background:transparent;color:var(--text-secondary);font-weight:600;font-size:.85rem;border-radius:6px;cursor:pointer;transition:all .2s;-webkit-tap-highlight-color:transparent;user-select:none;min-height:44px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lineup-mobile-tab:active{transform:scale(.98)}.lineup-mobile-tab.active{background:var(--primary);color:#fff;font-weight:700}.lineup-team-title{font-size:.9rem;font-weight:700;color:var(--primary);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--primary)}.lineup-section h5{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:.75rem 0 .5rem}.lineup-player{display:flex;align-items:center;gap:.5rem;padding:.35rem 0;font-size:.8rem;border-bottom:1px solid var(--surface-light);min-height:44px;transition:background .15s}.lineup-player:hover{background:var(--surface-light);border-radius:6px;padding-left:.25rem;padding-right:.25rem}.lineup-player-photo{width:36px;height:36px;border-radius:50%;object-fit:cover;border:2px solid var(--surface-light);flex-shrink:0}.lineup-player.lineup-sub .lineup-player-photo,.lineup-player.lineup-sub{opacity:.7}.lineup-number{min-width:24px;font-weight:700;font-size:.75rem;color:var(--primary);font-variant-numeric:tabular-nums}.lineup-name{flex:1;font-weight:500}.lineup-captain{display:inline-block;background:var(--primary);color:var(--surface);font-size:.6rem;font-weight:700;padding:0 4px;border-radius:3px;margin-left:4px;vertical-align:middle}.lineup-position{font-size:.7rem;color:var(--text-secondary);font-weight:600}.lineup-coaches{margin-top:.75rem;padding-top:.75rem;border-top:2px solid var(--surface-light)}.lineup-coach{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--surface-light);transition:background .15s}.lineup-coach:hover{background:var(--surface-light);border-radius:6px;padding-left:.25rem;padding-right:.25rem}.lineup-coach-photo{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--primary);flex-shrink:0}.lineup-coach-info{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}.lineup-coach-name{font-weight:600;font-size:.8rem;line-height:1.2}.lineup-coach-role{font-size:.7rem;color:var(--text-secondary);font-style:italic}.game-detail-stats-grid{display:flex;flex-direction:column;gap:.25rem}.stat-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.6rem .75rem;border-bottom:1px solid var(--surface-light)}.stat-home,.stat-away{font-weight:700;font-size:1.1rem;font-variant-numeric:tabular-nums}.stat-home{text-align:left}.stat-away{text-align:right}.stat-label{text-align:center;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:0 1rem}.game-detail-playtime{margin-top:1.5rem}.game-detail-playtime h4{font-size:.85rem;margin-bottom:1rem;color:var(--text-primary)}.playtime-columns{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.playtime-col h5{font-size:.75rem;color:var(--text-secondary);margin-bottom:.5rem}.playtime-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.3rem}.playtime-name{min-width:80px;font-size:.7rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playtime-bar-bg{flex:1;height:8px;background:var(--surface-light);border-radius:4px;position:relative;overflow:hidden}.playtime-bar{position:absolute;top:0;height:100%;background:linear-gradient(90deg,var(--primary),#00d4aa);border-radius:4px;min-width:2px}.playtime-minutes{min-width:28px;font-size:.65rem;color:var(--text-secondary);text-align:right;font-variant-numeric:tabular-nums}@media(max-width:768px){.game-detail-meta{font-size:.7rem;gap:.4rem;padding:.5rem}.game-detail-scoreboard{gap:1rem}.game-detail-logo{width:48px;height:48px}.game-detail-score{font-size:2.25rem}.game-detail-team-name{font-size:.8rem}.game-detail-tab{padding:.85rem 1rem;font-size:.9rem;min-height:44px}.game-detail-lineups{gap:1rem}.lineup-mobile-tabs{display:none}}@media(max-width:600px){.game-detail-header{padding-bottom:.75rem}.game-detail-meta{font-size:.65rem;gap:.3rem;padding:.4rem;margin-bottom:.75rem}.game-detail-scoreboard{gap:.75rem;padding:.75rem 0}.game-detail-logo{width:40px;height:40px}.game-detail-score{font-size:2rem}.game-detail-time{font-size:1.75rem}.game-detail-team-name{font-size:.75rem;line-height:1.3}.game-detail-status{font-size:.65rem;padding:.15rem .5rem}.game-detail-venue,.game-detail-datetime{font-size:.75rem}.game-detail-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin}.game-detail-tab{padding:.75rem .85rem;font-size:.85rem;min-width:fit-content}.game-detail-tab-content{padding:.75rem}.timeline-event{padding:.4rem;gap:.4rem}.timeline-minute{min-width:35px;font-size:.7rem}.timeline-player{font-size:.8rem}.timeline-info{font-size:.7rem}.game-detail-lineups{grid-template-columns:1fr;gap:0;position:relative}.lineup-mobile-tabs{display:flex}.lineup-column{display:none;animation:fadeInLineup .3s ease-in-out}.lineup-column.active{display:block}@keyframes fadeInLineup{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.lineup-team-title{font-size:.85rem}.lineup-player{padding:.4rem 0;font-size:.78rem}.lineup-number{min-width:22px}.lineup-player-photo{width:32px;height:32px}.lineup-coach{padding:.4rem 0;gap:.6rem}.lineup-coach-photo{width:36px;height:36px}.lineup-coach-name{font-size:.78rem}.lineup-coach-role{font-size:.68rem}.stat-row{padding:.5rem}.stat-home,.stat-away{font-size:1rem}.stat-label{font-size:.7rem;padding:0 .5rem}.playtime-columns{grid-template-columns:1fr;gap:1.5rem}.playtime-name{min-width:60px;font-size:.68rem}.playtime-minutes{font-size:.62rem}}@media(max-width:400px){.game-detail-scoreboard{gap:.5rem}.game-detail-logo{width:36px;height:36px}.game-detail-score{font-size:1.75rem}.game-detail-time{font-size:1.5rem}.game-detail-team-name{font-size:.7rem}.game-detail-meta{flex-direction:column;gap:.2rem}.game-detail-tab{padding:.7rem;font-size:.8rem}.lineup-player{font-size:.75rem}.playtime-name{min-width:50px}}.scorers-page{max-width:720px;margin:0 auto;padding:1rem}.scorers-page-title{display:flex;align-items:center;gap:8px;color:var(--primary-color);font-size:18px;font-weight:700;margin:0 0 16px}.scorers-filters{background:var(--surface);border:1px solid var(--surface-light);border-radius:16px;padding:1rem;margin-bottom:1rem}.scorers-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.scorers-filter-group label{display:block;font-size:.6875rem;font-weight:600;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.scorers-filter-group select{width:100%;padding:8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:10px;font-size:.875rem;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2388888' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.scorers-filter-group select:focus{border-color:var(--primary-color)}.scorers-filter-bottom{display:flex;gap:.5rem;align-items:flex-end;grid-column:1 / -1}.scorers-filter-bottom .scorers-filter-group{flex:1}.scorers-filter-reset{padding:8px 14px;background:var(--surface-light);color:var(--text-secondary);border:1px solid var(--surface-light);border-radius:10px;font-size:.8125rem;cursor:pointer;white-space:nowrap;flex-shrink:0}.scorers-filter-reset:hover{background:var(--surface);color:var(--text-primary)}.scorers-count{font-size:.75rem;color:var(--text-secondary);text-align:center;margin-bottom:.75rem}.scorers-empty,.scorers-loading{text-align:center;padding:3rem 1rem;color:var(--text-secondary);font-size:.875rem}.scorers-table{width:100%;border-collapse:collapse;font-size:.8rem}.scorers-table thead tr{background:var(--surface-light);border-bottom:2px solid var(--primary)}.scorers-table th{padding:.5rem .4rem;font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.scorers-table th:first-child{text-align:center;width:32px}.scorers-table td{padding:.5rem .4rem;border-bottom:1px solid var(--surface-light);vertical-align:middle}.scorers-table tbody tr:hover{background:var(--surface-light)}.scorer-rank{text-align:center;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.scorer-rank-1{color:gold}.scorer-rank-2{color:silver}.scorer-rank-3{color:#cd7f32}.scorer-player-cell{display:flex;align-items:center;gap:.5rem}.scorer-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--surface-light)}.scorer-info{display:flex;flex-direction:column}.scorer-name{font-weight:600;font-size:.8rem;color:var(--text-primary)}.scorer-team{font-size:.7rem;color:var(--text-secondary);display:flex;align-items:center;gap:.3rem}.scorer-team-logo{width:14px;height:14px;object-fit:contain}.scorer-goals{text-align:center;font-weight:900;font-size:1rem;color:var(--primary);font-variant-numeric:tabular-nums}.scorer-assists{text-align:center;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.scorer-games{text-align:center;font-variant-numeric:tabular-nums;color:var(--text-secondary);font-size:.75rem}@media(max-width:600px){.scorers-page{padding:.75rem}.scorers-page-title{font-size:16px;margin-bottom:12px}.scorers-filter-row{grid-template-columns:1fr;gap:.625rem}.scorers-filter-bottom{flex-direction:row}.search-select-dropdown{position:fixed!important;inset:0!important;max-height:none!important;border-radius:0!important;border:none!important;z-index:9999;background:var(--surface)!important}.search-select.open .search-select-trigger{border-radius:10px}.search-select-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:9998}.search-select.open .search-select-overlay{display:block}.search-select-overlay-header{display:flex!important;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--surface-light);flex-shrink:0}.search-select-overlay-title{font-size:1rem;font-weight:700;color:var(--text-primary)}.search-select-overlay-close{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.search-select-search{padding:12px 16px}.search-select-search input{padding:10px 12px;font-size:1rem;border-radius:10px}.search-select-option{padding:12px 16px;font-size:.9375rem}.scorers-table{font-size:.75rem}.scorer-avatar{display:none}}.cards-page{max-width:720px;margin:0 auto;padding:1rem}.cards-page-title{display:flex;align-items:center;gap:8px;color:var(--primary-color);font-size:18px;font-weight:700;margin:0 0 16px}.cards-filters{background:var(--surface);border:1px solid var(--surface-light);border-radius:16px;padding:1rem;margin-bottom:1rem}.cards-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.cards-filter-group label{display:block;font-size:.6875rem;font-weight:600;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.cards-filter-group select{width:100%;padding:8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:10px;font-size:.875rem;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2388888' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.cards-filter-group select:focus{border-color:var(--primary-color)}.search-select{position:relative}.search-select-trigger{width:100%;padding:8px 30px 8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:10px;font-size:.875rem;outline:none;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:left;position:relative}.search-select-trigger:after{content:"";position:absolute;right:10px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid var(--text-secondary);pointer-events:none}.search-select-trigger.placeholder{color:var(--text-secondary)}.search-select-dropdown{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);border:1px solid var(--primary-color);border-top:none;border-radius:0 0 10px 10px;z-index:200;max-height:280px;overflow:hidden;box-shadow:0 8px 24px #0003;flex-direction:column}.search-select.open .search-select-trigger{border-color:var(--primary-color);border-bottom-left-radius:0;border-bottom-right-radius:0}.search-select.open .search-select-dropdown{display:flex}.search-select-overlay,.search-select-overlay-header{display:none}.search-select-search{padding:8px;border-bottom:1px solid var(--surface-light);flex-shrink:0}.search-select-search input{width:100%;padding:8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:8px;font-size:.875rem;outline:none;box-sizing:border-box}.search-select-search input:focus{border-color:var(--primary-color)}.search-select-search input::placeholder{color:var(--text-secondary)}.search-select-options{overflow-y:auto;flex:1}.search-select-option{padding:10px 12px;cursor:pointer;font-size:.875rem;color:var(--text-primary);border-bottom:1px solid var(--surface-light);display:flex;align-items:center;gap:10px}.search-select-option:last-child{border-bottom:none}.search-select-option:hover,.search-select-option.active{background:var(--surface-light)}.search-select-option.selected{color:var(--primary-color);font-weight:600}.search-select-option .option-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-select-empty{padding:16px;text-align:center;font-size:.875rem;color:var(--text-secondary)}.cards-filter-bottom{display:flex;gap:.5rem;align-items:flex-end;grid-column:1 / -1}.cards-filter-bottom .cards-filter-group{flex:1}.cards-filter-reset{padding:8px 14px;background:var(--surface-light);color:var(--text-secondary);border:1px solid var(--surface-light);border-radius:10px;font-size:.8125rem;cursor:pointer;white-space:nowrap;flex-shrink:0}.cards-filter-reset:hover{background:var(--surface);color:var(--text-primary)}.cards-count{font-size:.75rem;color:var(--text-secondary);text-align:center;margin-bottom:.75rem}.cards-empty,.cards-loading{text-align:center;padding:3rem 1rem;color:var(--text-secondary);font-size:.875rem}.cards-table{width:100%;border-collapse:collapse;font-size:.8rem}.cards-table thead tr{background:var(--surface-light);border-bottom:2px solid var(--primary)}.cards-table th{padding:.5rem .4rem;font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);text-align:center}.cards-table th:first-child{width:32px}.cards-table th:nth-child(2){text-align:left}.cards-table td{padding:.5rem .4rem;border-bottom:1px solid var(--surface-light);vertical-align:middle;text-align:center}.cards-table tbody tr:hover{background:var(--surface-light)}.card-rank{font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.card-player-cell{display:flex;align-items:center;gap:.5rem;text-align:left}.card-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--surface-light)}.card-info{display:flex;flex-direction:column}.card-name{font-weight:600;font-size:.8rem;color:var(--text-primary)}.card-team{font-size:.7rem;color:var(--text-secondary);display:flex;align-items:center;gap:.3rem}.card-team-logo{width:14px;height:14px;object-fit:contain}.card-yellow{font-weight:700;font-variant-numeric:tabular-nums;color:#eab308}.card-yellow-red{font-weight:700;font-variant-numeric:tabular-nums;color:#f97316}.card-red{font-weight:700;font-variant-numeric:tabular-nums;color:#ef4444}.card-total{font-weight:900;font-size:1rem;font-variant-numeric:tabular-nums;color:var(--primary)}.card-games{font-variant-numeric:tabular-nums;color:var(--text-secondary);font-size:.75rem}@media(max-width:600px){.cards-page{padding:.75rem}.cards-page-title{font-size:16px;margin-bottom:12px}.cards-filter-row{grid-template-columns:1fr;gap:.625rem}.cards-filter-bottom{flex-direction:row}.search-select-dropdown{position:fixed!important;inset:0!important;max-height:none!important;border-radius:0!important;border:none!important;z-index:9999;background:var(--surface)!important}.search-select.open .search-select-trigger{border-radius:10px}.search-select-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:9998}.search-select.open .search-select-overlay{display:block}.search-select-overlay-header{display:flex!important;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--surface-light);flex-shrink:0}.search-select-overlay-title{font-size:1rem;font-weight:700;color:var(--text-primary)}.search-select-overlay-close{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.search-select-search{padding:12px 16px}.search-select-search input{padding:10px 12px;font-size:1rem;border-radius:10px}.search-select-option{padding:12px 16px;font-size:.9375rem}.cards-table{font-size:.75rem}.card-avatar{display:none}}.assists-page{max-width:720px;margin:0 auto;padding:1rem}.assists-page-title{display:flex;align-items:center;gap:8px;color:var(--primary-color);font-size:18px;font-weight:700;margin:0 0 16px}.assists-filters{background:var(--surface);border:1px solid var(--surface-light);border-radius:16px;padding:1rem;margin-bottom:1rem}.assists-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.assists-filter-group label{display:block;font-size:.6875rem;font-weight:600;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.assists-filter-group select{width:100%;padding:8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:10px;font-size:.875rem;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2388888' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.assists-filter-group select:focus{border-color:var(--primary-color)}.assists-page .search-select{position:relative}.assists-page .search-select-trigger{width:100%;padding:8px 30px 8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:10px;font-size:.875rem;outline:none;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:left;position:relative}.assists-page .search-select-trigger:after{content:"";position:absolute;right:10px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid var(--text-secondary);pointer-events:none}.assists-page .search-select-trigger.placeholder{color:var(--text-secondary)}.assists-page .search-select-dropdown{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);border:1px solid var(--primary-color);border-top:none;border-radius:0 0 10px 10px;z-index:200;max-height:280px;overflow:hidden;box-shadow:0 8px 24px #0003;flex-direction:column}.assists-page .search-select.open .search-select-trigger{border-color:var(--primary-color);border-bottom-left-radius:0;border-bottom-right-radius:0}.assists-page .search-select.open .search-select-dropdown{display:flex}.assists-page .search-select-overlay,.assists-page .search-select-overlay-header{display:none}.assists-page .search-select-search{padding:8px;border-bottom:1px solid var(--surface-light);flex-shrink:0}.assists-page .search-select-search input{width:100%;padding:8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:8px;font-size:.875rem;outline:none;box-sizing:border-box}.assists-page .search-select-search input:focus{border-color:var(--primary-color)}.assists-page .search-select-search input::placeholder{color:var(--text-secondary)}.assists-page .search-select-options{overflow-y:auto;flex:1}.assists-page .search-select-option{padding:10px 12px;cursor:pointer;font-size:.875rem;color:var(--text-primary);border-bottom:1px solid var(--surface-light);display:flex;align-items:center;gap:10px}.assists-page .search-select-option:last-child{border-bottom:none}.assists-page .search-select-option:hover,.assists-page .search-select-option.active{background:var(--surface-light)}.assists-page .search-select-option.selected{color:var(--primary-color);font-weight:600}.assists-page .search-select-option .option-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assists-page .search-select-empty{padding:16px;text-align:center;font-size:.875rem;color:var(--text-secondary)}.assists-filter-bottom{display:flex;gap:.5rem;align-items:flex-end;grid-column:1 / -1}.assists-filter-bottom .assists-filter-group{flex:1}.assists-filter-reset{padding:8px 14px;background:var(--surface-light);color:var(--text-secondary);border:1px solid var(--surface-light);border-radius:10px;font-size:.8125rem;cursor:pointer;white-space:nowrap;flex-shrink:0}.assists-filter-reset:hover{background:var(--surface);color:var(--text-primary)}.assists-count{font-size:.75rem;color:var(--text-secondary);text-align:center;margin-bottom:.75rem}.assists-empty,.assists-loading{text-align:center;padding:3rem 1rem;color:var(--text-secondary);font-size:.875rem}.assists-table{width:100%;border-collapse:collapse;font-size:.8rem}.assists-table thead tr{background:var(--surface-light);border-bottom:2px solid var(--primary)}.assists-table th{padding:.5rem .4rem;font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);text-align:center}.assists-table th:first-child{width:32px}.assists-table th:nth-child(2){text-align:left}.assists-table td{padding:.5rem .4rem;border-bottom:1px solid var(--surface-light);vertical-align:middle;text-align:center}.assists-table tbody tr:hover{background:var(--surface-light)}.assist-rank{font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.assist-player-cell{display:flex;align-items:center;gap:.5rem;text-align:left}.assist-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--surface-light)}.assist-info{display:flex;flex-direction:column}.assist-name{font-weight:600;font-size:.8rem;color:var(--text-primary)}.assist-team{font-size:.7rem;color:var(--text-secondary);display:flex;align-items:center;gap:.3rem}.assist-team-logo{width:14px;height:14px;object-fit:contain}.assist-assists{font-weight:900;font-size:1rem;font-variant-numeric:tabular-nums;color:#f97316}.assist-goals{font-weight:700;font-variant-numeric:tabular-nums;color:var(--primary)}.assist-scorer{font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary);background:var(--surface-light);border-radius:6px;padding:2px 6px}.assist-games{font-variant-numeric:tabular-nums;color:var(--text-secondary);font-size:.75rem}@media(max-width:600px){.assists-page{padding:.75rem}.assists-page-title{font-size:16px;margin-bottom:12px}.assists-filter-row{grid-template-columns:1fr;gap:.625rem}.assists-filter-bottom{flex-direction:row}.assists-page .search-select-dropdown{position:fixed!important;inset:0!important;max-height:none!important;border-radius:0!important;border:none!important;z-index:9999;background:var(--surface)!important}.assists-page .search-select.open .search-select-trigger{border-radius:10px}.assists-page .search-select-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:9998}.assists-page .search-select.open .search-select-overlay{display:block}.assists-page .search-select-overlay-header{display:flex!important;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--surface-light);flex-shrink:0}.assists-page .search-select-overlay-title{font-size:1rem;font-weight:700;color:var(--text-primary)}.assists-page .search-select-overlay-close{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.assists-page .search-select-search{padding:12px 16px}.assists-page .search-select-search input{padding:10px 12px;font-size:1rem;border-radius:10px}.assists-page .search-select-option{padding:12px 16px;font-size:.9375rem}.assists-table{font-size:.75rem}.assist-avatar{display:none}}.calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 20px;flex-wrap:wrap}.calendar-filters{display:flex;gap:12px;flex:1;min-width:0}.calendar-filters .filter-select{flex:1;min-width:0;max-width:240px;padding:10px 36px 10px 14px;border-radius:12px;border:2px solid transparent;background:var(--surface-light);color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%234a4e69' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.calendar-filters .filter-select:hover{background:color-mix(in srgb,var(--primary-color) 8%,var(--surface-light))}.calendar-filters .filter-select:focus{outline:none;border-color:var(--primary-color);background:var(--surface);box-shadow:0 0 0 4px #00a86b1a}.calendar-view-toggle{display:flex;background:var(--surface-light);border-radius:12px;padding:4px;gap:4px;flex-shrink:0}.view-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:10px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.view-btn:hover{color:var(--text-primary);background:#ffffff1a}.view-btn.active{background:var(--primary-color);color:#fff;box-shadow:0 4px 12px #00a86b4d}.calendar-nav{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px 0 24px}.calendar-month-label{font-size:24px;font-weight:800;color:var(--text-primary);min-width:220px;text-align:center;letter-spacing:-.5px}.calendar-nav .btn-sm{min-width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:22px;padding:0;border-radius:12px;background:var(--surface-light);border:none;color:var(--text-primary);font-weight:600;cursor:pointer;transition:all .2s ease}.calendar-nav .btn-sm:hover{background:color-mix(in srgb,var(--primary-color) 15%,var(--surface-light));transform:scale(1.05)}.calendar-nav .btn-sm:active{transform:scale(.95)}.calendar-nav .btn-secondary{padding:0 18px;width:auto;font-size:14px;font-weight:700;letter-spacing:.3px}.calendar-grid-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:0 4px}@media(max-width:768px){.calendar-grid-wrapper{margin:0;padding:0;overflow-x:visible}}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:6px;min-width:700px}.calendar-weekdays span{text-align:center;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-secondary);padding:10px 0;opacity:.7}.calendar-weekdays .weekday-short{display:none!important}.calendar-weekdays .weekday-full{display:inline!important}@media(max-width:768px){.calendar-weekdays{min-width:unset}.calendar-weekdays span{font-size:10px;letter-spacing:1px}.calendar-weekdays .weekday-full{display:none!important}.calendar-weekdays .weekday-short{display:inline!important;font-size:12px;font-weight:900}.calendar-grid{gap:4px}}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;width:100%}.cal-day{min-height:120px;padding:10px;border-radius:14px;background:var(--surface);border:2px solid var(--surface-light);transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:relative;overflow:hidden;cursor:pointer}.cal-day:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:transparent;transition:all .25s ease}.cal-day:hover{border-color:color-mix(in srgb,var(--primary-color) 50%,transparent);box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.cal-day:hover:before{background:linear-gradient(90deg,var(--primary-color),color-mix(in srgb,var(--primary-color) 60%,transparent))}.cal-day.other-month{opacity:.3;background:transparent;border-color:transparent;pointer-events:none}.cal-day.today{background:linear-gradient(135deg,color-mix(in srgb,var(--primary-color) 8%,var(--surface)) 0%,var(--surface) 100%);border-color:var(--primary-color);box-shadow:0 0 0 1px var(--primary-color),0 8px 24px #00a86b26}.cal-day.today:before{background:var(--primary-color)}.cal-day.has-games{background:color-mix(in srgb,var(--primary-color) 3%,var(--surface))}.cal-day.has-games:after{content:"";position:absolute;bottom:8px;left:50%;transform:translate(-50%);width:6px;height:6px;border-radius:50%;background:var(--primary-color);opacity:.6}.cal-day-number{font-size:18px;font-weight:800;color:var(--text-primary);line-height:1;margin-bottom:8px;font-variant-numeric:tabular-nums}.cal-day.today .cal-day-number{color:var(--primary-color);font-size:20px}.cal-day.other-month .cal-day-number{color:var(--text-secondary);font-weight:600}.cal-day:nth-child(7n),.cal-day:nth-child(7n-1){background:color-mix(in srgb,var(--accent-gold) 2%,var(--surface))}.cal-day:nth-child(7n).today,.cal-day:nth-child(7n-1).today{background:linear-gradient(135deg,color-mix(in srgb,var(--primary-color) 8%,var(--surface)) 0%,var(--surface) 100%)}.cal-day-games{display:flex;flex-direction:column;gap:4px;flex:1}.cal-game-badge{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:5px 6px;border-radius:8px;background:var(--surface-light);text-decoration:none;color:var(--text-primary);font-size:11px;font-weight:700;transition:all .2s ease;min-height:26px;box-shadow:0 1px 3px #0000000d}.cal-game-badge:hover{background:color-mix(in srgb,var(--primary-color) 20%,var(--surface-light));transform:translate(2px) scale(1.02);box-shadow:0 2px 8px #0000001a}.cal-game-badge.status-live{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-red) 25%,var(--surface-light)),color-mix(in srgb,var(--accent-red) 15%,var(--surface-light)));animation:calLivePulse 2s ease-in-out infinite;box-shadow:0 0 12px #e106004d}.cal-game-badge.status-finished{background:linear-gradient(135deg,color-mix(in srgb,var(--success) 18%,var(--surface-light)),color-mix(in srgb,var(--success) 10%,var(--surface-light)))}.cal-game-badge.status-postponed,.cal-game-badge.status-cancelled{opacity:.5;filter:grayscale(.4)}.cal-game-logo{width:16px;height:16px;object-fit:contain;border-radius:4px;flex-shrink:0;box-shadow:0 1px 2px #0000001a}.cal-badge-score{font-weight:900;font-size:12px;color:var(--text-primary);letter-spacing:.3px;white-space:nowrap;flex:1;text-align:center;font-variant-numeric:tabular-nums}.cal-badge-time{font-weight:700;font-size:10px;color:var(--text-secondary);white-space:nowrap;flex:1;text-align:center;font-variant-numeric:tabular-nums}.cal-more-games{font-size:10px;font-weight:800;color:var(--primary-color);text-align:center;padding:4px 0 0;cursor:default;letter-spacing:.5px}.calendar-list-view{padding:8px 0}.cal-list-group{margin-bottom:20px;border-radius:16px;overflow:hidden;border:2px solid var(--surface-light);background:var(--surface);box-shadow:0 2px 8px #0000000a;transition:all .2s ease}.cal-list-group:hover{box-shadow:0 4px 16px #00000014}.cal-list-group.cal-list-today{border-color:var(--primary-color);box-shadow:0 0 0 1px var(--primary-color),0 4px 20px #00a86b1f}.cal-list-date{font-size:14px;font-weight:800;color:var(--text-primary);padding:14px 18px;background:var(--surface-light);letter-spacing:.3px;border-bottom:1px solid color-mix(in srgb,var(--surface-light) 80%,transparent)}.cal-list-today .cal-list-date{background:linear-gradient(135deg,color-mix(in srgb,var(--primary-color) 15%,var(--surface-light)),var(--surface-light));color:var(--primary-color)}.cal-list-game{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:16px;padding:14px 18px;text-decoration:none;color:var(--text-primary);transition:all .2s ease;border-top:1px solid color-mix(in srgb,var(--surface-light) 50%,transparent)}.cal-list-game:first-of-type{border-top:none}.cal-list-game:hover{background:color-mix(in srgb,var(--primary-color) 6%,var(--surface));transform:translate(4px)}.cal-list-game.status-live{background:linear-gradient(90deg,color-mix(in srgb,var(--accent-red) 8%,var(--surface)),var(--surface))}.cal-list-game.status-postponed,.cal-list-game.status-cancelled{opacity:.6}.cal-list-teams,.cal-list-matchup{display:flex;align-items:center;gap:8px;min-width:0}.cal-list-logo{width:28px;height:28px;object-fit:contain;flex-shrink:0;border-radius:6px;box-shadow:0 2px 4px #0000001a}.cal-list-team-name{font-size:14px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.cal-list-vs{font-size:12px;font-weight:900;color:var(--text-secondary);flex-shrink:0;padding:0 4px;opacity:.5}.cal-list-league{font-size:11px;font-weight:700;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;text-transform:uppercase;letter-spacing:.5px}.cal-list-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.cal-list-score{font-size:18px;font-weight:900;color:var(--text-primary);letter-spacing:.5px;font-variant-numeric:tabular-nums}.cal-list-score.cal-score-live{color:var(--accent-red);animation:calLivePulse 2s ease-in-out infinite}.cal-live-dot{width:10px;height:10px;background:var(--accent-red);border-radius:50%;animation:calDotBlink 1.2s ease-in-out infinite;flex-shrink:0;box-shadow:0 0 8px var(--accent-red)}.cal-list-kickoff{font-size:14px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--text-secondary);white-space:nowrap}.cal-list-status{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.8px;padding:5px 12px;border-radius:8px;white-space:nowrap}.cal-status-postponed{background:color-mix(in srgb,var(--warning) 20%,var(--surface-light));color:color-mix(in srgb,var(--warning) 150%,#000)}.cal-status-cancelled{background:color-mix(in srgb,var(--accent-red) 18%,var(--surface-light));color:var(--accent-red)}.cal-list-empty{text-align:center;padding:60px 20px;color:var(--text-secondary)}.cal-list-empty-icon{font-size:48px;margin-bottom:16px;line-height:1;opacity:.5}.cal-list-empty p{font-size:15px;font-weight:600;margin:0 0 20px;color:var(--text-secondary)}.cal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 20px;color:var(--text-secondary);font-size:14px;font-weight:600}.cal-spinner{width:40px;height:40px;border:4px solid var(--surface-light);border-top-color:var(--primary-color);border-radius:50%;animation:calSpin .8s linear infinite}@keyframes calSpin{to{transform:rotate(360deg)}}@keyframes calLivePulse{0%,to{opacity:1}50%{opacity:.75}}@keyframes calDotBlink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}@media(max-width:1024px){.calendar-month-label{font-size:20px;min-width:180px}.cal-day{min-height:100px}}@media(max-width:768px){.calendar-controls{flex-direction:column;align-items:stretch;gap:12px}.calendar-filters{flex-direction:column;gap:8px}.calendar-filters .filter-select{max-width:100%}.calendar-view-toggle{align-self:flex-end}.calendar-month-label{font-size:18px;min-width:140px}.calendar-nav .btn-sm{min-width:40px;height:40px}.cal-day{min-height:80px;padding:6px}.cal-day-number{font-size:14px}.cal-day.today .cal-day-number{font-size:16px}.cal-game-badge{padding:4px 5px;gap:3px}.cal-game-logo{width:14px;height:14px}.cal-badge-score,.cal-badge-time{font-size:10px}.cal-list-game{grid-template-columns:1fr auto;gap:10px;padding:12px 14px}.cal-list-league{display:none}.cal-list-team-name{font-size:13px;max-width:110px}.cal-list-logo{width:24px;height:24px}.cal-list-score{font-size:16px}}@media(max-width:480px){.calendar-controls{padding:0 0 12px}.calendar-nav{gap:10px;padding:12px 0 16px}.calendar-nav .btn-sm{min-width:36px;height:36px;font-size:18px}.calendar-month-label{font-size:16px;min-width:120px}.calendar-weekdays{gap:4px;margin-bottom:4px}.calendar-weekdays span{font-size:9px;padding:6px 0;letter-spacing:.5px}.calendar-weekdays .weekday-short{font-size:10px}.calendar-grid{gap:3px}.cal-day{min-height:70px;padding:5px;border-radius:10px}.cal-day-number{font-size:12px}.cal-day.today .cal-day-number{font-size:14px}.cal-game-logo{width:12px;height:12px}.cal-badge-score,.cal-badge-time,.cal-more-games{font-size:9px}.cal-list-team-name{max-width:80px;font-size:12px}.cal-list-vs{font-size:10px}.cal-list-matchup{gap:6px}.cal-list-score{font-size:14px}}@media(max-width:480px)and (orientation:landscape){.calendar-grid-wrapper{max-height:55vh;overflow-y:auto}}.team-dash-header{padding:1.25rem}.team-dash-info{display:flex;align-items:center;gap:1rem}.team-dash-logo{width:64px;height:64px;object-fit:contain;border-radius:10px;background:var(--surface-light);padding:6px}.team-dash-name{font-size:1.1rem;font-weight:700;margin:0 0 .15rem}.fav-star-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .15s,background .15s;color:var(--text-secondary);flex-shrink:0}.fav-star-btn:hover{background:#f5a6231f;transform:scale(1.15)}.fav-star-btn:active{transform:scale(.95)}.fav-star-pulse{animation:favStarPulse .4s ease-out}@keyframes favStarPulse{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}.team-dash-club{font-size:.8rem;color:var(--text-secondary);margin:0 0 .35rem}.team-dash-season-select{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--surface-light)}.team-dash-season-select label{font-size:.75rem;font-weight:600;color:var(--text-secondary)}.team-dash-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:.5rem;margin-bottom:.5rem}.stat-card{background:var(--card-bg, var(--surface));border:1px solid var(--surface-light);border-radius:10px;padding:.75rem .5rem;text-align:center;display:flex;flex-direction:column;gap:.2rem}.stat-card-value{font-size:1.4rem;font-weight:900;font-variant-numeric:tabular-nums;color:var(--primary)}.stat-card-label{font-size:.65rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.team-dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.5rem}.team-dash-grid .profile-section{padding:1rem .75rem}.dash-game-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-bottom:1px solid var(--surface-light);text-decoration:none;color:inherit;transition:background .15s;border-radius:6px}.dash-game-item:last-child{border-bottom:none}.dash-game-item:hover{background:var(--surface-light)}.dash-game-date{min-width:50px;font-size:.65rem;color:var(--text-secondary);text-align:center;font-variant-numeric:tabular-nums}.dash-game-date strong{display:block;font-size:.8rem;color:var(--text-primary)}.dash-game-teams{flex:1;min-width:0}.dash-game-matchup{display:flex;align-items:center;gap:.25rem;font-size:.8rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-game-logo{width:16px;height:16px;object-fit:contain;flex-shrink:0}.dash-game-league{font-size:.6rem;color:var(--text-secondary)}.dash-game-score{font-weight:700;font-size:.9rem;font-variant-numeric:tabular-nums;min-width:32px;text-align:center}.dash-game-result{font-size:.6rem;font-weight:700;padding:.1rem .35rem;border-radius:4px;text-transform:uppercase}.dash-result-W{background:#00a86b33;color:var(--success)}.dash-result-D{background:#8883;color:var(--text-secondary)}.dash-result-L{background:#ef444433;color:var(--error)}.form-recent{display:flex;overflow:hidden}.form-recent-labels{flex-shrink:0;display:flex;flex-direction:column;padding:.75rem 0 .75rem .75rem}.form-recent-chart-labels{height:96px;display:flex;flex-direction:column}.fr-label{flex:1;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;width:18px}.fr-label-W{color:var(--success)}.fr-label-D{color:var(--text-secondary)}.fr-label-L{color:var(--error)}.fr-label-spacer{height:62px}.form-recent-scroll{flex:1;overflow-x:auto;overflow-y:hidden;position:relative;padding:.75rem .75rem .75rem 0;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.form-recent-scroll::-webkit-scrollbar{height:4px}.form-recent-scroll::-webkit-scrollbar-thumb{background:var(--surface-light);border-radius:2px}.fr-grid-lines{position:absolute;top:.75rem;left:0;right:0;display:flex;flex-direction:column;pointer-events:none}.fr-grid-line{flex:1;border-bottom:1px solid var(--surface-light)}.fr-grid-line:last-child{border-bottom:none}.fr-connector-svg{position:absolute;top:.75rem;left:0;width:100%;pointer-events:none;z-index:1}.fr-columns{display:flex;position:relative;z-index:2}.fr-col{display:flex;flex-direction:column;align-items:center;width:80px;min-width:80px;text-decoration:none;color:inherit;cursor:pointer;transition:opacity .15s}.fr-col:hover{opacity:.8}.fr-chart-cell{position:relative;width:100%}.fr-dot{position:absolute;left:50%;transform:translate(-50%) translateY(-50%);width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2.5px solid;background:var(--surface);transition:transform .2s,box-shadow .2s}.fr-col:hover .fr-dot{transform:translate(-50%) translateY(-50%) scale(1.12)}.fr-dot-W{top:16.67%;border-color:var(--success);box-shadow:0 0 10px #00a86b59}.fr-dot-D{top:50%;border-color:var(--text-secondary);box-shadow:0 0 10px #8883}.fr-dot-L{top:83.33%;border-color:var(--error);box-shadow:0 0 10px #ef444459}.fr-logo{width:22px;height:22px;object-fit:contain;border-radius:50%}.fr-info{display:flex;flex-direction:column;align-items:center;padding:.5rem .25rem 0;gap:.15rem;border-top:2px solid var(--surface-light);margin-top:.4rem;width:64px;border-radius:0 0 8px 8px}.fr-info-W{border-top-color:var(--success)}.fr-info-D{border-top-color:var(--text-secondary)}.fr-info-L{border-top-color:var(--error)}.fr-date{font-size:.65rem;color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.fr-score{font-size:1.2rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1}.fr-info-W .fr-score{color:var(--success)}.fr-info-D .fr-score{color:var(--text-secondary)}.fr-info-L .fr-score{color:var(--error)}@media(min-width:600px){.fr-columns{justify-content:center}.fr-col{width:90px;min-width:90px}.fr-dot{width:38px;height:38px}.fr-logo{width:26px;height:26px}.fr-score{font-size:1.35rem}.fr-info{width:72px}}@media(max-width:480px){.fr-col{width:68px;min-width:68px}.fr-dot{width:30px;height:30px}.fr-logo{width:20px;height:20px}.fr-score{font-size:1.05rem}.fr-date{font-size:.6rem}.fr-info{width:56px}.fr-label{font-size:.6rem;width:14px}.form-recent-labels{padding-left:.4rem}.form-recent-scroll{padding-right:.4rem}}.dash-standings-table{width:100%;border-collapse:collapse;font-size:.75rem}.dash-standings-table th{padding:.3rem;font-weight:600;font-size:.65rem;color:var(--text-secondary);text-align:center;border-bottom:2px solid var(--primary)}.dash-standings-table th:nth-child(2){text-align:left}.dash-standings-table td{padding:.3rem;text-align:center;border-bottom:1px solid var(--surface-light)}.dash-standings-table td:nth-child(2){text-align:left}.dash-standings-table .current-team{background:#00a86b1a;font-weight:700}.dash-standings-team{display:flex;align-items:center;gap:.3rem}.dash-standings-logo{width:16px;height:16px;object-fit:contain}.dash-squad-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem}.dash-player-card{display:flex;align-items:center;gap:.5rem;padding:.4rem;border-radius:6px;background:var(--surface);border:1px solid var(--surface-light);transition:border-color .15s}.dash-player-card:hover{border-color:var(--primary)}.dash-player-photo{width:32px;height:32px;border-radius:50%;object-fit:cover;background:var(--surface-light);flex-shrink:0}.dash-player-number{min-width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;background:var(--primary);color:#fff;border-radius:50%}.dash-player-info{min-width:0;flex:1}.dash-player-name{font-size:.75rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-player-pos{font-size:.6rem;color:var(--text-secondary);font-weight:600}.dash-position-group{margin-bottom:.75rem}.dash-position-label{font-size:.7rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.35rem;padding-bottom:.25rem;border-bottom:1px solid var(--surface-light)}.dash-coach-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-bottom:1px solid var(--surface-light)}.dash-coach-item:last-child{border-bottom:none}.dash-coach-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;background:var(--surface-light)}.dash-coach-name{font-weight:600;font-size:.85rem}.dash-coach-role{font-size:.7rem;color:var(--text-secondary)}.dash-empty{text-align:center;padding:1rem;color:var(--text-secondary);font-size:.8rem}@media(max-width:768px){.team-dash-grid{gap:.75rem}}@media(max-width:568px){.team-dash-header.card,.team-dash-grid>.card{margin-left:0!important;margin-right:0!important;margin-bottom:.75rem!important;padding:0!important}.team-dash-header{padding:.75rem!important}.team-dash-grid>.card>.card-header{padding-left:.75rem!important;padding-right:.75rem!important}.team-dash-grid .profile-section{padding:.75rem 0!important}.team-dash-grid .profile-section>*{margin-left:0!important;margin-right:0!important}.dash-standings-table{margin-left:.75rem!important;margin-right:.75rem!important}.dash-standings-table th:first-child,.dash-standings-table td:first-child{padding-left:.3rem!important}.dash-standings-table th:last-child,.dash-standings-table td:last-child{padding-right:.3rem!important}.team-dash-grid .profile-section>div[style*="text-align:center"]{padding-left:0!important;padding-right:0!important}.dash-position-label,.dash-squad-grid,.dash-coach-item,.dash-empty{padding-left:0!important;padding-right:0!important}.team-dash-stats-row{margin-left:0;margin-right:0}}@media(max-width:600px){.team-dash-stats-row{grid-template-columns:repeat(3,1fr)}.dash-squad-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}@media(max-width:480px){.team-dash-header.card,.team-dash-grid>.card{padding:0!important}.team-dash-header{padding:.75rem!important}.team-dash-grid>.card>.card-header{padding-left:.75rem;padding-right:.75rem}.team-dash-grid .profile-section{padding:.5rem .75rem!important}.dash-game-item,.dash-coach-item{padding-left:0;padding-right:0;padding-top:.6rem;padding-bottom:.6rem}.dash-standings-table th:first-child,.dash-standings-table td:first-child{padding-left:.3rem!important}.dash-standings-table th:last-child,.dash-standings-table td:last-child{padding-right:.3rem!important}.dash-position-label,.dash-squad-grid{padding-left:0!important;padding-right:0!important}.team-dash-grid .profile-section>div[style*="text-align:center"]{padding-left:0!important;padding-right:0!important}.team-dash-stats-row{gap:.4rem;margin-bottom:.75rem}.team-dash-grid{gap:.75rem}.stat-card{padding:.6rem .4rem}.stat-card-value{font-size:1.2rem}.stat-card-label{font-size:.6rem}.dash-player-photo{width:28px;height:28px}}@media(max-width:400px){.team-dash-logo{width:52px;height:52px}.team-dash-name{font-size:1rem}.stat-card-value{font-size:1.1rem}.team-dash-grid .profile-section{padding:.5rem!important}.dash-standings-table th:first-child,.dash-standings-table td:first-child{padding-left:.3rem!important}.dash-standings-table th:last-child,.dash-standings-table td:last-child{padding-right:.3rem!important}.dash-position-label,.dash-squad-grid,.dash-coach-item,.dash-game-item,.dash-empty{padding-left:0!important;padding-right:0!important}.team-dash-grid>.card>.card-header{padding-left:.5rem!important;padding-right:.5rem!important}}.team-photo-section{margin-bottom:.5rem}.team-photo-section .card-header{display:flex;align-items:center;gap:.5rem}.team-photo-season-badge{font-size:.65rem;font-weight:600;padding:.15rem .5rem;border-radius:6px;background:var(--primary-color);color:#fff;margin-left:auto}.team-photo-container{padding:0}.team-photo-wrapper{position:relative;width:100%;overflow:hidden;border-radius:0 0 var(--border-radius, 16px) var(--border-radius, 16px)}.team-photo-wrapper:has(+.team-photo-actions){border-radius:0}.team-photo-img{width:100%;display:block;object-fit:cover;max-height:400px;background:var(--surface-light)}.team-photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem 1rem;color:var(--text-secondary)}.team-photo-placeholder p{margin:0;font-size:.8rem;opacity:.6}.team-photo-actions{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--surface-light)}.team-photo-upload-btn{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;font-size:.75rem!important;padding:.4rem .85rem!important;min-height:auto!important}.team-photo-delete-btn{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem!important;padding:.4rem .85rem!important;min-height:auto!important;margin-left:auto;color:var(--accent-red)!important;border-color:var(--accent-red)!important}.team-photo-delete-btn:hover{background:var(--accent-red)!important;color:#fff!important}.team-photo-status{padding:.5rem 1rem;font-size:.75rem;font-weight:600;text-align:center}.team-photo-status-info{color:var(--primary-color)}.team-photo-status-success{color:var(--success)}.team-photo-status-error{color:var(--accent-red)}@media(max-width:600px){.team-photo-img{max-height:260px}.team-photo-actions{flex-wrap:wrap}.team-photo-upload-btn,.team-photo-delete-btn{flex:1;justify-content:center;text-align:center}.team-photo-delete-btn{margin-left:0}}.competitions-page{max-width:720px;margin:0 auto;padding:1rem}.competitions-page-title{display:flex;align-items:center;gap:8px;color:var(--primary-color);font-size:18px;font-weight:700;margin:0 0 16px}.competitions-filters{background:var(--surface);border:1px solid var(--surface-light);border-radius:16px;padding:1rem;margin-bottom:1rem}.competitions-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.competitions-filter-group label{display:block;font-size:.6875rem;font-weight:600;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.competitions-filter-group select{width:100%;padding:8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:10px;font-size:.875rem;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2388888' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.competitions-filter-group select:focus{border-color:var(--primary-color)}.competitions-filter-bottom{display:flex;gap:.5rem;align-items:flex-end;grid-column:1 / -1}.competitions-filter-bottom .competitions-filter-group{flex:1}.competitions-filter-reset{padding:8px 14px;background:var(--surface-light);color:var(--text-secondary);border:1px solid var(--surface-light);border-radius:10px;font-size:.8125rem;cursor:pointer;white-space:nowrap;flex-shrink:0}.competitions-filter-reset:hover{background:var(--surface);color:var(--text-primary)}.competitions-count{font-size:.75rem;color:var(--text-secondary);text-align:center;margin-bottom:.75rem}.competitions-empty,.competitions-loading{text-align:center;padding:3rem 1rem;color:var(--text-secondary);font-size:.875rem}.comp-tiles{display:grid;grid-template-columns:1fr;gap:.75rem}.comp-tile{background:var(--surface-light);border-radius:16px;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1rem;text-decoration:none;color:inherit;cursor:pointer;transition:background .2s,border-color .2s,transform .15s;border:2px solid transparent;position:relative;overflow:hidden}.comp-tile:hover,.comp-tile:focus-visible{background:var(--surface-hover);border-color:var(--accent);transform:translateY(-2px)}.comp-tile:active{transform:translateY(0)}.comp-tile-icon{width:3.5rem;height:3.5rem;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.75rem;flex-shrink:0}.comp-tile-icon.green{background:#22c55e26;color:#22c55e}.comp-tile-icon.blue{background:#3b82f626;color:#3b82f6}.comp-tile-icon.orange{background:#f9731626;color:#f97316}.comp-tile-icon.gray{background:#6b728026;color:#6b7280}.comp-tile-icon.red{background:#ef444426;color:#ef4444}.comp-tile-body{flex:1;min-width:0}.comp-tile-title{font-size:1.125rem;font-weight:700;color:var(--text-primary);line-height:1.3}.comp-tile-desc{font-size:.8125rem;color:var(--text-secondary);margin-top:.25rem;line-height:1.4}.comp-tile-meta{display:flex;gap:.75rem;margin-top:.5rem;align-items:center;flex-wrap:wrap}.comp-tile-meta-item{display:flex;flex-direction:column;align-items:center}.comp-tile-meta-value{font-size:1.25rem;font-weight:700;color:var(--text-primary);line-height:1}.comp-tile-meta-label{font-size:.6875rem;color:var(--text-secondary);margin-top:.125rem}.comp-tile-arrow{color:var(--text-secondary);opacity:.4;transition:opacity .2s,transform .2s;flex-shrink:0}.comp-tile:hover .comp-tile-arrow{opacity:1;transform:translate(3px)}.comp-status-badge{font-size:.6875rem;font-weight:600;padding:.15rem .5rem;border-radius:6px;white-space:nowrap;display:inline-block}.comp-status-badge.active{background:#00a86b2e;color:#00a86b}.comp-status-badge.upcoming{background:#6b72802e;color:#9ca3af}.comp-status-badge.completed{background:#3b82f62e;color:#3b82f6}.comp-status-badge.cancelled{background:#ef44442e;color:#ef4444}@media(max-width:600px){.competitions-page{padding:.75rem}.competitions-page-title{font-size:16px;margin-bottom:12px}.competitions-filter-row{grid-template-columns:1fr;gap:.625rem}.competitions-filter-bottom{flex-direction:row}.comp-tile{padding:1rem 1.125rem;border-radius:14px}.comp-tile-icon{width:3rem;height:3rem;border-radius:12px;font-size:1.5rem}.comp-tile-title{font-size:1rem}}.pp-page{max-width:720px;margin:0 auto;padding:1rem}.pp-header-card{display:flex;gap:1.25rem;background:var(--surface);border:1px solid var(--surface-light);border-radius:16px;padding:1.25rem;margin-bottom:1rem}.pp-header-photo{position:relative;flex-shrink:0;width:100px;height:100px}.pp-header-photo img{width:100%;height:100%;object-fit:cover;border-radius:14px;background:var(--surface-light)}.pp-header-photo-placeholder{width:100%;height:100%;border-radius:14px;background:var(--surface-light);display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.pp-position-badge{position:absolute;bottom:-6px;right:-6px;padding:2px 8px;border-radius:6px;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:#fff;border:2px solid var(--surface)}.pp-position-badge.position-gk{background:#f59e0b}.pp-position-badge.position-df{background:#3b82f6}.pp-position-badge.position-mf{background:#10b981}.pp-position-badge.position-fw{background:#ef4444}.pp-photo-overlay{position:absolute;bottom:0;left:0;right:0;height:36px;background:linear-gradient(transparent,#000000a6);border:none;border-radius:0 0 14px 14px;color:#ffffffe6;cursor:pointer;display:flex;align-items:flex-end;justify-content:center;padding-bottom:5px;opacity:0;transition:opacity .2s ease}.pp-header-photo:hover .pp-photo-overlay,.pp-photo-overlay:active{opacity:1}.pp-photo-overlay.uploading{opacity:1;pointer-events:none}.pp-photo-overlay svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.pp-header-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.pp-name{margin:0;font-size:1.25rem;font-weight:800;color:var(--text-primary);line-height:1.2}.pp-meta-tags{display:flex;flex-wrap:wrap;gap:6px}.pp-tag{padding:2px 8px;border-radius:8px;font-size:.7rem;font-weight:600;background:var(--surface-light);color:var(--text-secondary);white-space:nowrap}.pp-tag-number{background:var(--primary-color);color:#fff;font-weight:800}.pp-current-team{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.pp-team-logo{width:28px;height:28px;object-fit:contain;border-radius:6px;background:var(--surface-light);padding:2px}.pp-team-name{font-size:.85rem;font-weight:700;color:var(--text-primary);line-height:1.2}.pp-club-name{font-size:.7rem;color:var(--text-secondary)}.pp-edit-btn{display:inline-flex;align-items:center;gap:6px;margin-top:.35rem;padding:6px 14px;background:var(--surface-light);color:var(--primary-color);border:1px solid var(--surface-light);border-radius:10px;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;align-self:flex-start}.pp-edit-btn:hover{background:transparent;border-color:var(--primary-color)}.pp-filter-bar{display:flex;align-items:center;gap:.75rem;background:var(--surface);border:1px solid var(--surface-light);border-radius:12px;padding:.75rem 1rem;margin-bottom:1rem}.pp-filter-bar label{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.pp-filter-bar select{flex:1;max-width:250px;padding:8px 28px 8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:10px;font-size:.875rem;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2388888' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.pp-filter-bar select:focus{border-color:var(--primary-color)}.pp-section{background:var(--surface);border:1px solid var(--surface-light);border-radius:16px;padding:1rem 1.25rem;margin-bottom:1rem}.pp-section-header{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--surface-light)}.pp-stat-loading{padding:1.5rem 0;text-align:center;color:var(--text-secondary);font-size:.8rem}.pp-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.pp-stat-box{background:var(--surface-light);border-radius:10px;padding:.75rem .5rem;text-align:center;display:flex;flex-direction:column;gap:.2rem}.pp-stat-value{font-size:1.3rem;font-weight:900;font-variant-numeric:tabular-nums;color:var(--primary-color);line-height:1}.pp-stat-value.goals-value{color:#10b981}.pp-stat-value.assists-value{color:#3b82f6}.pp-stat-value.yellow-value{color:#eab308}.pp-stat-value.red-value{color:#ef4444}.pp-stat-value.minutes-value{color:#8b5cf6}.pp-stat-label{font-size:.6rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.pp-stat-sub{font-size:.6rem;color:var(--text-secondary);margin-top:-2px}.pp-games-list{display:flex;flex-direction:column}.pp-game-item{display:flex;align-items:center;gap:.5rem;padding:.6rem .25rem;border-bottom:1px solid var(--surface-light);text-decoration:none;color:inherit;transition:background .15s;border-radius:6px}.pp-game-item:last-child{border-bottom:none}.pp-game-item:hover{background:var(--surface-light)}.pp-game-date{min-width:44px;font-size:.65rem;font-weight:600;color:var(--text-secondary);text-align:center;line-height:1.3}.pp-game-date-day{font-size:.8rem;font-weight:800;color:var(--text-primary)}.pp-game-teams{flex:1;min-width:0}.pp-game-matchup{font-size:.8rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-game-comp{font-size:.6rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-game-score{font-size:.9rem;font-weight:800;color:var(--text-primary);min-width:36px;text-align:center}.pp-game-score.win{color:#10b981}.pp-game-score.draw{color:#eab308}.pp-game-score.loss{color:#ef4444}.pp-game-events{display:flex;gap:4px;flex-shrink:0}.pp-game-event-badge{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border-radius:6px;font-size:.6rem;font-weight:700;background:var(--surface-light);color:var(--text-secondary);white-space:nowrap}.pp-game-event-badge.goal{background:#10b98126;color:#10b981}.pp-game-event-badge.assist{background:#3b82f626;color:#3b82f6}.pp-game-event-badge.yellow{background:#eab30826;color:#eab308}.pp-game-event-badge.red{background:#ef444426;color:#ef4444}.pp-game-event-badge.minutes{background:#8b5cf61a;color:#8b5cf6}.pp-career-list{display:flex;flex-direction:column;gap:5px}.pp-career-item{display:flex;align-items:center;gap:.5rem;padding:.55rem .5rem;border-radius:10px;background:var(--surface-light)}.pp-career-period{min-width:68px;flex-shrink:0}.pp-career-season{font-size:.7rem;font-weight:700;color:var(--primary-color);white-space:nowrap;line-height:1.2}.pp-career-duration{font-size:.6rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;margin-top:1px}.pp-career-logo{width:28px;height:28px;object-fit:contain;border-radius:6px;background:var(--surface);padding:2px;flex-shrink:0}.pp-career-logo-empty{width:28px;height:28px;flex-shrink:0}.pp-career-info{flex:1;min-width:0}.pp-career-team{font-size:.8rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-career-club{font-size:.65rem;color:var(--text-secondary)}.pp-career-number{font-size:.7rem;font-weight:800;color:var(--text-secondary);min-width:30px;text-align:right}.pp-career-current{background:#10b9811f;border-left:3px solid #10b981}.pp-empty{padding:1.5rem 0;text-align:center;color:var(--text-secondary);font-size:.8rem}.pp-empty svg{display:block;margin:0 auto .5rem;opacity:.4}.pp-load-more{display:block;width:100%;margin-top:.5rem;padding:10px 0;background:var(--surface-light);color:var(--primary-color);border:1px solid var(--surface-light);border-radius:10px;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;text-align:center}.pp-load-more:hover{background:transparent;border-color:var(--primary-color)}.pp-load-more:disabled{opacity:.5;cursor:default}.pp-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:500;padding:1rem}.pp-modal{background:var(--surface);border:1px solid var(--surface-light);border-radius:16px;width:100%;max-width:380px;overflow:hidden}.pp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--surface-light)}.pp-modal-header h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary)}.pp-modal-close{background:none;border:none;color:var(--text-secondary);font-size:1.25rem;cursor:pointer;padding:.25rem;line-height:1}.pp-modal-close:hover{color:var(--text-primary)}.pp-modal-body{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.pp-form-group label{display:block;font-size:.7rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.pp-form-group select,.pp-form-group input{width:100%;padding:8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:10px;font-size:.875rem;outline:none;box-sizing:border-box}.pp-form-group select:focus,.pp-form-group input:focus{border-color:var(--primary-color)}.pp-modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.75rem 1.25rem;border-top:1px solid var(--surface-light)}.pp-btn-cancel{padding:8px 16px;background:var(--surface-light);color:var(--text-secondary);border:1px solid var(--surface-light);border-radius:10px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s}.pp-btn-cancel:hover{background:var(--surface);border-color:var(--text-secondary)}.pp-btn-save{padding:8px 16px;background:var(--primary-color);color:#fff;border:1px solid var(--primary-color);border-radius:10px;font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity .15s}.pp-btn-save:hover{opacity:.9}@media(max-width:480px){.pp-header-card{flex-direction:column;align-items:center;text-align:center}.pp-header-info{align-items:center}.pp-meta-tags,.pp-current-team{justify-content:center}.pp-edit-btn{align-self:center}.pp-photo-overlay{opacity:1}.pp-stats-grid{grid-template-columns:repeat(2,1fr)}.pp-game-events{flex-wrap:wrap;max-width:70px}}.cp-page{max-width:720px;margin:0 auto;padding:1rem}.cp-header-card{display:flex;gap:1.25rem;background:var(--surface);border:1px solid var(--surface-light);border-radius:16px;padding:1.25rem;margin-bottom:1rem}.cp-header-photo{position:relative;flex-shrink:0;width:100px;height:100px}.cp-header-photo img{width:100%;height:100%;object-fit:cover;border-radius:14px;background:var(--surface-light)}.cp-header-photo-placeholder{width:100%;height:100%;border-radius:14px;background:var(--surface-light);display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.cp-role-badge{position:absolute;bottom:-6px;right:-6px;width:28px;height:28px;border-radius:50%;background:var(--surface);border:2px solid var(--surface);display:flex;align-items:center;justify-content:center;font-size:14px}.cp-photo-overlay{position:absolute;bottom:0;left:0;right:0;height:36px;background:linear-gradient(transparent,#000000a6);border:none;border-radius:0 0 14px 14px;color:#ffffffe6;cursor:pointer;display:flex;align-items:flex-end;justify-content:center;padding-bottom:5px;opacity:0;transition:opacity .2s ease}.cp-header-photo:hover .cp-photo-overlay,.cp-photo-overlay:active{opacity:1}.cp-photo-overlay.uploading{opacity:1;pointer-events:none}.cp-photo-overlay svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.cp-header-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.cp-name{margin:0;font-size:1.25rem;font-weight:800;color:var(--text-primary);line-height:1.2}.cp-meta-tags{display:flex;flex-wrap:wrap;gap:6px}.cp-tag{padding:2px 8px;border-radius:8px;font-size:.7rem;font-weight:600;background:var(--surface-light);color:var(--text-secondary);white-space:nowrap}.cp-tag-role{background:#3b82f626;color:#3b82f6;font-weight:700}.cp-tag-license{background:#f59e0b26;color:#f59e0b;font-weight:700}.cp-current-team{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.cp-team-logo{width:28px;height:28px;object-fit:contain;border-radius:6px;background:var(--surface-light);padding:2px}.cp-team-name{font-size:.85rem;font-weight:700;color:var(--text-primary);line-height:1.2}.cp-club-name{font-size:.7rem;color:var(--text-secondary)}.cp-filter-bar{display:flex;align-items:center;gap:.75rem;background:var(--surface);border:1px solid var(--surface-light);border-radius:12px;padding:.75rem 1rem;margin-bottom:1rem}.cp-filter-bar label{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.cp-filter-bar select{flex:1;max-width:250px;padding:8px 28px 8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:10px;font-size:.875rem;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2388888' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.cp-filter-bar select:focus{border-color:var(--primary-color)}.cp-section{background:var(--surface);border:1px solid var(--surface-light);border-radius:16px;padding:1rem 1.25rem;margin-bottom:1rem}.cp-section-header{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--surface-light)}.cp-stat-loading{padding:1.5rem 0;text-align:center;color:var(--text-secondary);font-size:.8rem}.cp-license-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.cp-license-item{display:flex;flex-direction:column;gap:.15rem}.cp-license-label{font-size:.6rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.cp-license-value{font-size:.85rem;font-weight:700;color:var(--text-primary)}.cp-license-value.cp-expired{color:#ef4444}.cp-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.cp-stat-box{background:var(--surface-light);border-radius:10px;padding:.75rem .5rem;text-align:center;display:flex;flex-direction:column;gap:.2rem}.cp-stat-value{font-size:1.3rem;font-weight:900;font-variant-numeric:tabular-nums;color:var(--primary-color);line-height:1}.cp-stat-value.wins-value{color:#10b981}.cp-stat-value.draws-value{color:#eab308}.cp-stat-value.losses-value{color:#ef4444}.cp-stat-value.goals-value{color:#3b82f6}.cp-stat-value.rate-value{color:#8b5cf6}.cp-stat-label{font-size:.6rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.cp-stat-sub{font-size:.6rem;color:var(--text-secondary);margin-top:-2px}.cp-winrate-bar{grid-column:1 / -1;background:var(--surface-light);border-radius:10px;padding:.75rem}.cp-winrate-label{font-size:.6rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.cp-winrate-track{height:12px;border-radius:6px;overflow:hidden;display:flex;background:var(--surface)}.cp-winrate-segment{height:100%;transition:width .4s ease}.cp-winrate-segment.win{background:#10b981}.cp-winrate-segment.draw{background:#eab308}.cp-winrate-segment.loss{background:#ef4444}.cp-winrate-legend{display:flex;justify-content:center;gap:1rem;margin-top:6px;font-size:.6rem;color:var(--text-secondary)}.cp-winrate-legend span:before{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px;vertical-align:middle}.cp-legend-win:before{background:#10b981}.cp-legend-draw:before{background:#eab308}.cp-legend-loss:before{background:#ef4444}.cp-career-list{display:flex;flex-direction:column;gap:5px}.cp-career-item{display:flex;align-items:center;gap:.5rem;padding:.55rem .5rem;border-radius:10px;background:var(--surface-light)}.cp-career-period{min-width:68px;flex-shrink:0}.cp-career-season{font-size:.7rem;font-weight:700;color:var(--primary-color);white-space:nowrap;line-height:1.2}.cp-career-duration{font-size:.6rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;margin-top:1px}.cp-career-logo{width:28px;height:28px;object-fit:contain;border-radius:6px;background:var(--surface);padding:2px;flex-shrink:0}.cp-career-logo-empty{width:28px;height:28px;flex-shrink:0}.cp-career-info{flex:1;min-width:0}.cp-career-team{font-size:.8rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cp-career-club{font-size:.65rem;color:var(--text-secondary)}.cp-career-role{font-size:.65rem;font-weight:600;color:var(--primary-color);white-space:nowrap}.cp-career-current{background:#10b9811f;border-left:3px solid #10b981}.cp-empty{padding:1.5rem 0;text-align:center;color:var(--text-secondary);font-size:.8rem}.cp-empty svg{display:block;margin:0 auto .5rem;opacity:.4}@media(max-width:480px){.cp-header-card{flex-direction:column;align-items:center;text-align:center}.cp-header-info{align-items:center}.cp-meta-tags,.cp-current-team{justify-content:center}.cp-stats-grid{grid-template-columns:repeat(2,1fr)}.cp-photo-overlay{opacity:1}.cp-license-grid{grid-template-columns:1fr 1fr}}.cp-edit-btn{display:inline-flex;align-items:center;gap:6px;margin-top:.35rem;padding:6px 14px;background:var(--surface-light);color:var(--primary-color);border:1px solid var(--surface-light);border-radius:10px;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;align-self:flex-start}.cp-edit-btn:hover{background:transparent;border-color:var(--primary-color)}.cp-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:500;padding:1rem}.cp-modal{background:var(--surface);border:1px solid var(--surface-light);border-radius:16px;width:100%;max-width:380px;overflow:hidden}.cp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--surface-light)}.cp-modal-header h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary)}.cp-modal-close{background:none;border:none;color:var(--text-secondary);font-size:1.25rem;cursor:pointer;padding:.25rem;line-height:1}.cp-modal-close:hover{color:var(--text-primary)}.cp-modal-body{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.cp-form-group label{display:block;font-size:.7rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.cp-form-group select,.cp-form-group input{width:100%;padding:8px 10px;background:var(--surface-light);color:var(--text-primary);border:1px solid var(--surface-light);border-radius:10px;font-size:.875rem;outline:none;box-sizing:border-box}.cp-form-group select:focus,.cp-form-group input:focus{border-color:var(--primary-color)}.cp-modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.75rem 1.25rem;border-top:1px solid var(--surface-light)}.cp-btn-cancel{padding:8px 16px;background:var(--surface-light);color:var(--text-secondary);border:1px solid var(--surface-light);border-radius:10px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s}.cp-btn-cancel:hover{background:var(--surface);border-color:var(--text-secondary)}.cp-btn-save{padding:8px 16px;background:var(--primary-color);color:#fff;border:1px solid var(--primary-color);border-radius:10px;font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity .15s}.cp-btn-save:hover{opacity:.9}@media(max-width:480px){.cp-edit-btn{width:100%;justify-content:center}}.results-list{display:flex;flex-direction:column;gap:12px}.result-card{background:var(--surface);border-radius:var(--border-radius);padding:16px}.result-time{font-size:12px;color:var(--text-secondary);margin-bottom:8px}.result-score{display:flex;justify-content:space-between;align-items:center;gap:12px}.result-score .team{flex:1;font-size:14px}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-state svg{margin-bottom:20px;opacity:.3}.empty-state p{margin:8px 0}.empty-state .hint{font-size:14px;opacity:.7}.pwa-install{position:fixed;bottom:80px;left:50%;transform:translate(-50%);max-width:400px;width:calc(100% - 32px);z-index:999}.install-prompt{background:var(--surface);border-radius:var(--border-radius);padding:24px;box-shadow:0 8px 32px #00000080;border:2px solid var(--primary-color)}.install-prompt h3,.prompt-content h3{margin-bottom:12px}.install-prompt p,.prompt-content p{color:var(--text-secondary);margin-bottom:20px}.install-prompt .btn,.prompt-content .btn{width:100%;margin-bottom:8px}.badge{display:inline-block;padding:.25rem .75rem;background:var(--accent-alpha);color:var(--accent);border-radius:12px;font-size:.875rem;font-weight:600}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100px)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes scorePulse{0%,to{opacity:1}50%{opacity:.85}}@keyframes scoreChange{0%{transform:scale(1)}50%{transform:scale(1.3);color:var(--primary-color)}to{transform:scale(1)}}@keyframes tickerFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.badge.live{animation:pulse 2s ease-in-out infinite}@media(max-width:568px){:root{--header-height: 56px}.main{padding-top:0!important;padding-left:.5rem;padding-right:.5rem}}@media(max-width:568px){.container{padding:0 12px 80px}.welcome h2{font-size:28px}.games-grid{grid-template-columns:1fr}.score{font-size:36px}}@media(max-width:568px){.container{padding:80px 12px}.menu-button{font-size:22px;width:36px;height:36px;border:0!important;box-shadow:none}.match-score{gap:16px}.team-logo{font-size:40px;width:70px;height:70px}.team-name{font-size:14px}.team-score{font-size:48px;min-width:60px}.score-divider{font-size:32px}.score-display{padding:12px 20px;gap:8px}.match-header{gap:12px;font-size:14px}.match-time{font-size:20px}.stat-grid{grid-template-columns:1fr}.ticker-item{grid-template-columns:30px 30px 1fr auto;gap:8px;padding:5px}}
