*{margin:0;padding:0;box-sizing:border-box}:root{--primary-light:#10b981;--primary-dark:#059669;--primary-rgb:16,185,129}body,html{background:var(--bg-base,#ffffff)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;color:var(--text-primary,#1d1d1f);line-height:1.5;transition:background-color var(--transition-base),color var(--transition-base)}.header{display:none}.auth-section{position:absolute;top:20px;right:20px;display:flex;align-items:center;gap:12px}.login-btn{padding:8px 20px;background:rgba(255,255,255,.2);border:2px solid rgba(255,255,255,.3);border-radius:20px;text-decoration:none;font-size:14px}.login-btn:hover{background:rgba(255,255,255,.3);transform:translateY(-2px)}.user-info{display:flex;align-items:center;gap:12px;padding:8px 16px;background:rgba(255,255,255,.1);border-radius:30px}.user-name{font-weight:600;font-size:14px}.user-players{font-size:12px;opacity:.9}.logout-btn{padding:6px 16px;background:rgba(255,255,255,.2);color:white;border:1px solid rgba(255,255,255,.3);border-radius:16px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s}.logout-btn:hover{background:rgba(255,255,255,.3)}.parent-view .edit-driving-btn{display:block!important}.public-view .edit-btn,.public-view .edit-driving-btn,.public-view .swap-btn{display:none!important}.admin-view .admin-only{display:block!important}.parent-view .match-card[data-has-child=true]{border-left:4px solid #667eea}.parent-view .task-player.is-child{background:#f5f7ff;border-color:#667eea}.header h1{font-size:32px;font-weight:600;letter-spacing:-.5px;margin-bottom:8px}.header .subtitle{opacity:.9;font-size:18px}.status-indicator{display:inline-block;margin-left:10px;padding:4px 12px;background:rgba(255,255,255,.2);border-radius:20px;font-size:12px;font-weight:600}.status-indicator.online{background:#4ade80;color:#0a4f1f}.status-indicator.offline{background:#fbbf24;color:#713f12}.container{max-width:100%;margin:0 auto;padding:40px 0 0}.filter-section{background:#f5f5f7;border-radius:16px;padding:32px;margin-bottom:30px;box-shadow:0 2px 8px rgba(0,0,0,.05)}.filter-title{font-size:20px;font-weight:600;margin-bottom:16px;color:#1d1d1f}.filter-controls{align-items:flex-end}.filter-group{flex:1 1;min-width:200px}.filter-label{display:block;font-size:14px;color:#86868b;margin-bottom:6px;font-weight:500}.filter-input,.filter-select{width:100%;padding:10px 14px;border:1px solid #d1d1d6;border-radius:10px;font-size:15px;background:white;color:#1d1d1f;transition:all .2s}.filter-input:focus,.filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.1)}.filter-buttons{display:flex;gap:10px;margin-left:auto;align-items:flex-end}.btn{padding:10px 20px;border-radius:10px;border:none;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:#667eea;color:white}.btn-primary:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,126,234,.3)}.btn-secondary{background:white;color:#667eea;border:1px solid #667eea}.btn-secondary:hover{background:#f0f4ff}.btn-success{background:#4ade80;color:white}.btn-danger{background:#ef4444;color:white}.view-toggle{display:flex;gap:10px;margin-bottom:20px;background:#f5f5f7;padding:6px;border-radius:12px;width:-moz-fit-content;width:fit-content}.view-btn{padding:8px 16px;border:none;background:transparent;color:#86868b;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s}.view-btn.active{background:white;color:#1d1d1f;box-shadow:0 2px 8px rgba(0,0,0,.1)}.navbar{background:#2c3e50;color:white;padding:0;box-shadow:none;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.navbar-container{justify-content:space-between;max-width:1400px;margin:0 auto;padding:0 20px;height:56px}.navbar-container,.navbar-left{display:flex;align-items:center}.navbar-left{gap:24px}.app-brand{display:flex;align-items:center}.app-name{font-size:18px;font-weight:500;letter-spacing:-.5px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;color:#ecf0f1;text-decoration:none;transition:opacity .2s}.app-name:hover{opacity:.8}.app-name-parent{font-weight:600;display:flex;align-items:center;gap:8px}.app-name-child{font-weight:500;opacity:.9}.app-logo-desktop{width:24px;height:24px}.breadcrumb-separator{margin:0 8px;color:rgba(236,240,241,.5);font-weight:300}.app-logo-mobile{display:none;align-items:center;justify-content:center;color:white;text-decoration:none;transition:opacity .2s}.app-logo-mobile:hover{opacity:.8}.logo-icon{width:28px;height:28px}.navbar-right{gap:16px}.navbar-menu,.navbar-right{display:flex;align-items:center}.navbar-menu{gap:8px}.menu-item{position:relative}.menu-link{color:#ecf0f1;text-decoration:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:4px;background:transparent;border:none;cursor:pointer}.menu-link:hover{background:rgba(255,255,255,.1)}.dropdown-icon{width:16px;height:16px;transition:transform .2s ease}.dropdown.active .dropdown-icon{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:0;margin-top:4px;background:white;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);min-width:180px;overflow:hidden;z-index:1001}.dropdown-item{display:block;padding:10px 16px;color:#2c3e50;text-decoration:none;font-size:14px;transition:background .2s ease}.dropdown-item:hover{background:#f5f5f7}.user-dropdown-menu{min-width:280px;right:0;left:auto}.user-menu-header{padding:16px;border-bottom:1px solid #e5e5e7;background:#f9f9fb}.user-menu-section{padding:12px 0}.user-menu-section-title{padding:8px 16px;font-size:12px;font-weight:600;color:#86868b;text-transform:uppercase;letter-spacing:.5px}.user-menu-org-group{padding:8px 0}.user-menu-org-name{padding:6px 16px;font-size:13px;font-weight:600;color:#667eea}.user-menu-player{padding:6px 16px 6px 32px;font-size:14px;color:#2c3e50}.user-menu-divider{height:1px;background:#e5e5e7;margin:8px 0}.user-menu-logout{width:100%;padding:12px 16px;background:transparent;border:none;color:#dc2626;font-size:14px;font-weight:500;text-align:left;cursor:pointer;transition:background .2s ease;display:flex;align-items:center}.user-menu-logout:hover{background:#fee2e2}.user-menu-link{width:100%;padding:12px 16px;background:transparent;color:#1d1d1f;font-size:14px;font-weight:500;text-align:left;cursor:pointer;transition:background .2s ease;display:flex;align-items:center;text-decoration:none;border:none}.user-menu-link:hover{background:#f5f5f7}.user-menu-button{gap:4px}.user-menu,.user-menu-button{display:flex;align-items:center}.user-menu{gap:12px}.navbar .user-name{color:#ecf0f1;font-size:14px}.logout-btn-nav{background:rgba(255,255,255,.1);color:white;border:1px solid rgba(255,255,255,.2);padding:6px 12px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s ease}.logout-btn-nav:hover{background:rgba(255,255,255,.2)}.admin-dropdown-menu{min-width:240px;max-height:80vh;overflow-y:auto}.dropdown-section{padding:8px 0}.dropdown-section-title{padding:8px 16px 4px;font-size:11px;font-weight:700;color:#86868b;text-transform:uppercase;letter-spacing:.8px}.dropdown-divider{height:1px;background:#e5e5e7;margin:8px 0}.login-link{background:#3498db!important}.login-link:hover{background:#2980b9!important}.mobile-menu-toggle{display:none;background:none;border:none;color:white;padding:8px;cursor:pointer}.mobile-menu-toggle svg{width:24px;height:24px}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:#2c3e50;border-top:1px solid rgba(255,255,255,.1);padding:16px 0;z-index:100}.mobile-menu-header{padding:8px 20px;font-size:12px;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:600}.mobile-menu-item{display:block;padding:16px 20px;color:white;text-decoration:none;font-size:14px;transition:background .2s ease;border:none;background:none;width:100%;text-align:left;cursor:pointer;font-family:inherit;-webkit-tap-highlight-color:rgba(255,255,255,.1)}.mobile-menu-item:active,.mobile-menu-item:hover{background:rgba(255,255,255,.1)}@media (max-width:768px){.navbar-menu{display:none}.mobile-menu-toggle{display:block}.app-name-parent,.breadcrumb-separator{display:none}.app-logo-mobile{display:flex;margin-right:12px}}.nav-menu{display:inline-flex;gap:2px;background:rgba(143,143,147,.12);padding:3px;border-radius:12px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 2px 8px rgba(0,0,0,.04)}.nav-btn{padding:8px 20px;border:none;background:transparent;color:#515154;cursor:pointer;font-weight:600;font-size:14px;transition:all .25s cubic-bezier(.4,0,.2,1);border-radius:9px;position:relative;min-width:110px;text-align:center;letter-spacing:-.2px}.nav-btn:hover:not(.active){color:#1d1d1f;background:rgba(255,255,255,.3)}.nav-btn.active{background:white;color:#667eea;box-shadow:0 3px 8px rgba(0,0,0,.12),0 1px 3px rgba(0,0,0,.08),inset 0 1px 2px rgba(255,255,255,.8)}.nav-btn.active:before{content:"";position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);width:40px;height:3px;background:#667eea;border-radius:2px;opacity:0}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:20px;gap:20px;margin-bottom:30px}.stat-detail{margin-top:12px;padding-top:12px;border-top:1px solid #e5e5e7;font-size:13px;color:#515154}.content-section{background:white;border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 2px 8px rgba(0,0,0,.05);border:1px solid #e5e5e7}.section-title{font-size:22px}.matches-grid{display:grid;grid-gap:16px;gap:16px}.match-card{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:16px;padding:20px;border:1px solid #93c5fd;box-shadow:0 4px 16px rgba(59,130,246,.2),0 2px 4px rgba(59,130,246,.15);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}[data-theme=dark] .match-card{background:var(--bg-surface)!important;border:1px solid var(--border-default)!important;box-shadow:none!important}.match-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#3b82f6,#2563eb);opacity:1;transition:opacity .3s}[data-theme=dark] .match-card:before{background:var(--interactive-primary)}.match-card.standalone-task-card:before{display:none}.match-card:hover{background:var(--bg-surface-secondary)!important;box-shadow:0 2px 8px rgba(0,0,0,.06)!important;transform:none;border-color:var(--border-default)}.timeline-item-center[data-home=true] .match-card:hover{border-left-color:var(--interactive-primary-hover)!important}.timeline-item-center[data-home=false] .match-card:hover{border-left-color:var(--game-away-hover)!important}[data-theme=dark] .match-card:hover{background:var(--bg-surface-secondary)!important;box-shadow:0 2px 8px rgba(0,0,0,.06)!important;border-color:var(--border-default)!important}.match-card:hover:before{opacity:1}.match-card.today-match{background:linear-gradient(135deg,#fff7ed,#fed7aa);border:1px solid #fdba74;box-shadow:0 4px 16px rgba(251,146,60,.2),0 2px 4px rgba(251,146,60,.15)}.match-card.today-match:before{background:linear-gradient(90deg,#fb923c,#f97316)}[data-theme=dark] .match-card.today-match{background:var(--semantic-warning-subtle);border:1px solid var(--semantic-warning);box-shadow:var(--shadow-md)}[data-theme=dark] .match-card.today-match:before{background:var(--semantic-warning)}[data-theme=dark] .date-weekday{color:var(--text-secondary)}[data-theme=dark] .date-day{color:var(--text-primary)}[data-theme=dark] .date-month{color:var(--text-secondary)}[data-theme=dark] .center-timeline-dot{background:var(--bg-surface)}[data-theme=dark] .timeline-item-center:after{background:rgba(255,255,255,.1)}[data-theme=dark] .match-date-top{border-bottom-color:var(--border-subtle)}[data-theme=dark] .match-time-inline{color:var(--text-primary)}[data-theme=dark] .date-time-separator{color:var(--text-secondary)}[data-theme=dark] .center-timeline-info{background:var(--bg-surface)!important;box-shadow:0 2px 6px rgba(0,0,0,.3)!important}[data-theme=dark] .center-timeline-info .filtered-date{color:var(--text-primary)}[data-theme=dark] .center-timeline-info .filtered-opponent{color:var(--text-secondary)}[data-theme=dark] .timeline-date.filtered{color:var(--text-primary)}[data-theme=dark] .match-card.past-match{background:rgba(255,255,255,.02)!important;border-color:var(--border-subtle)!important}[data-theme=dark] .match-card.past-match:before{background:var(--border-default)!important;opacity:.5!important}[data-theme=dark] .match-date,[data-theme=dark] .opponent-name{color:var(--text-primary)}[data-theme=dark] .match-date-info,[data-theme=dark] .match-time-info{color:var(--text-secondary)}[data-theme=dark] .player-pill{background:rgba(255,255,255,.05);border-color:var(--border-default);color:var(--text-primary)}[data-theme=dark] .player-pill:hover{background:rgba(255,255,255,.08);border-color:var(--border-hover)}[data-theme=dark] .player-chip{background:rgba(255,255,255,.05);color:var(--text-primary)}[data-theme=dark] .player-chip:hover{background:rgba(255,255,255,.08)}[data-theme=dark] .player-chip.player-linked{background:rgba(59,130,246,.2);color:#93c5fd;border-color:rgba(59,130,246,.4)}[data-theme=dark] .player-chip.player-linked:hover{background:rgba(59,130,246,.3)}[data-theme=dark] .players-count{background:rgba(255,255,255,.1);color:var(--text-primary)}[data-theme=dark] .task-column{background:rgba(255,255,255,.02);border-color:var(--border-subtle)}[data-theme=dark] .task-column:hover{background:rgba(255,255,255,.05)}[data-theme=dark] .task-header{color:var(--text-secondary)}[data-theme=dark] .task-player{background:rgba(255,255,255,.05);border-color:var(--border-default);color:var(--text-primary)}[data-theme=dark] .task-player:hover{background:rgba(255,255,255,.08);border-color:var(--border-hover)}[data-theme=dark] .task-player.empty{background:transparent;color:var(--text-disabled)}[data-theme=dark] .task-player.empty:hover{background:transparent}[data-theme=dark] .task-player.highlight.is-child{background:rgba(59,130,246,.2);border-color:rgba(59,130,246,.4);color:#93c5fd}[data-theme=dark] .driving-section{background:rgba(255,255,255,.02);border-color:var(--border-subtle)}[data-theme=dark] .driving-header{color:var(--text-primary)}[data-theme=dark] .section-label{color:var(--text-secondary)}[data-theme=dark] .vehicle-type{background:rgba(255,255,255,.05);color:var(--text-secondary)}[data-theme=dark] .car-number{color:var(--text-primary)}[data-theme=dark] .driver-label{color:var(--text-secondary)}[data-theme=dark] .driver-name{background:rgba(255,255,255,.05);border-color:var(--border-default);color:var(--text-primary)}[data-theme=dark] .driver-name:hover{background:rgba(255,255,255,.08);border-color:var(--border-hover)}[data-theme=dark] .driver-name.linked{background:rgba(59,130,246,.2);border-color:rgba(59,130,246,.4);color:#93c5fd}[data-theme=dark] .driver-name.linked:hover{background:rgba(59,130,246,.3)}[data-theme=dark] .unassigned-row{background:rgba(239,68,68,.1);border-color:var(--border-subtle)}[data-theme=dark] .unassigned-row:hover{background:rgba(239,68,68,.15)}[data-theme=dark] .unassigned-label{color:#fca5a5}[data-theme=dark] .unassigned-player{background:rgba(255,255,255,.05);color:#fcd34d;border-color:rgba(252,211,77,.3)}[data-theme=dark] .unassigned-player.linked{background:rgba(255,255,255,.1);color:#fbbf24;border-color:rgba(251,191,36,.5)}[data-theme=dark] .edit-driving-btn{background:rgba(255,255,255,.05);border-color:var(--border-default);color:var(--text-secondary)}[data-theme=dark] .edit-driving-btn:hover{background:rgba(255,255,255,.1);color:var(--text-primary);border-color:var(--border-hover)}[data-theme=dark] .match-opponent{color:var(--text-primary)}[data-theme=dark] .match-details{color:var(--text-secondary)}[data-theme=dark] .venue-link{color:var(--text-secondary);border-bottom-color:var(--border-default)}[data-theme=dark] .venue-link:hover{color:var(--text-primary);border-bottom-color:var(--border-hover)}.matches-timeline{position:relative;padding:0 0 32px;margin-top:8px;max-width:900px;margin-left:auto;margin-right:auto}.timeline-item-center{position:relative;display:flex;align-items:flex-start;justify-content:center;transition:all .3s ease}.timeline-item-center[data-visible=true]{margin-bottom:40px;margin-top:0;position:relative}.timeline-item-center[data-visible=false]{margin-top:0;margin-bottom:0;padding-top:20px;padding-bottom:20px;min-height:50px;position:relative}.timeline-item-center[data-visible=false]+.timeline-item-center[data-visible=true]{margin-top:20px}.timeline-item-center[data-visible=true]+.timeline-item-center[data-visible=true]{margin-top:0}.timeline-item-center[data-visible=true]+.timeline-item-center[data-visible=false]{margin-top:-20px;padding-top:20px}.timeline-item-center[data-visible=false]+.timeline-item-center[data-visible=false]{padding-top:20px}.timeline-item-center:last-child{margin-bottom:0}.timeline-item-center[data-visible=true]:after{bottom:-40px}.timeline-item-center[data-visible=false]:after,.timeline-item-center[data-visible=true]:after{content:"";position:absolute;left:calc(50% - 425px - 5px);top:0;width:2px;background:var(--border-default);z-index:0}.timeline-item-center[data-visible=false]:after{bottom:-20px}.timeline-item-center[data-visible=false]+.timeline-item-center[data-visible=true]:before{content:"";position:absolute;left:calc(50% - 425px - 5px);top:-20px;height:20px;width:2px;background:var(--border-default);z-index:0}.timeline-item-center:last-child:after,.timeline-item-center[data-visible=true]+.timeline-item-center[data-visible=true]:before{display:none}.center-timeline-connector{position:absolute;left:calc(50% - 425px - 5px);transform:translateX(-50%);top:20px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;z-index:2;pointer-events:none}.timeline-item-center[data-visible=true] .center-timeline-connector{top:20px}.timeline-item-center[data-visible=false] .center-timeline-connector{top:50%;transform:translate(-50%,-50%)}.timeline-item-center[data-visible=true][data-status=past]:after{background:var(--interactive-primary)}.timeline-item-center[data-visible=true][data-status=today]:after{background:var(--semantic-success)}.timeline-item-center[data-visible=true][data-status=future]:after{background:var(--border-default)}.timeline-item-center[data-visible=false][data-status=past]:after{background:var(--interactive-primary)}.timeline-item-center[data-visible=false][data-status=future]:after,.timeline-item-center[data-visible=false][data-status=today]:after{background:var(--border-default)}.timeline-item-center[data-status=past] .center-timeline-dot{background:var(--interactive-primary);border-color:var(--interactive-primary);box-shadow:0 0 0 4px var(--interactive-primary-subtle)}.timeline-item-center[data-status=today] .center-timeline-dot{width:20px;height:20px;background:var(--semantic-success);border:3px solid var(--bg-surface);box-shadow:0 0 0 2px var(--semantic-success),0 0 0 8px var(--semantic-success-subtle);animation:pulse-today 2s ease-in-out infinite}.timeline-item-center[data-status=future] .center-timeline-dot{background:var(--bg-surface);border-color:var(--border-default)}.center-timeline-dot.filtered{opacity:.7;background:var(--text-disabled);border-color:var(--border-default);width:20px;height:20px;border-width:3px}.timeline-item-center[data-home=true] .center-timeline-dot.filtered:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--interactive-primary)}.timeline-item-center[data-home=false] .center-timeline-dot.filtered:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--game-away)}.timeline-dot{left:-7px;top:28px}.center-timeline-dot,.timeline-dot{position:absolute;width:16px;height:16px;border-radius:50%;background:white;border:2px solid #e5e7eb;z-index:3;transition:all .3s ease}.center-timeline-dot{top:50%;left:50%;transform:translate(-50%,-50%)}.timeline-item-center[data-visible=true] .center-timeline-connector:before{display:none}@keyframes pulse-today{0%,to{box-shadow:0 0 0 2px #10b981,0 0 0 8px rgba(16,185,129,.1)}50%{box-shadow:0 0 0 2px #10b981,0 0 0 12px rgba(16,185,129,.05)}}.timeline-date{position:absolute;left:-50px;top:28px;transform:translateY(-50%);z-index:2;transition:all .2s ease;background:white;padding:4px 8px;border-radius:8px}.timeline-date-stacked{display:flex;flex-direction:column;align-items:center;line-height:1}.date-weekday{color:#374151;text-transform:lowercase;margin-bottom:2px}.date-day{font-size:22px;color:#111827;margin-bottom:2px;line-height:.9}.date-month{color:#374151;text-transform:lowercase}.timeline-hidden-indicator{position:absolute;left:-3px;width:10px;height:10px;border-radius:50%;background:#e5e7eb;border:2px solid white;opacity:.5}.timeline-hidden-group{position:relative;height:30px;margin:8px 0}.timeline-hidden-text{position:absolute;left:28px;top:50%;transform:translateY(-50%);font-size:10px;color:#9ca3af;font-style:italic;white-space:nowrap}.timeline-item-center .match-card{flex:1 1;max-width:850px;margin:0 0 0 21px;transition:all .3s ease;border-left:3px solid transparent;position:relative}.match-card.past-match{opacity:.85;background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.match-card.past-match:before{background:linear-gradient(90deg,#64748b,#94a3b8);opacity:1}.badge-gameday{background:linear-gradient(135deg,#fb923c,#f97316);color:white;font-weight:600;box-shadow:0 2px 4px rgba(251,146,60,.3);animation:flash-gameday 2s infinite}@keyframes flash-gameday{0%,to{opacity:1;box-shadow:0 2px 4px rgba(251,146,60,.3)}50%{opacity:.6;box-shadow:0 4px 12px rgba(251,146,60,.6)}}.timeline-item-center.filtered-out .center-timeline-connector{min-height:40px}.center-timeline-info{position:absolute;left:calc(50% + 20px);top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:8px;white-space:nowrap;background:white;padding:4px 12px;border-radius:20px;box-shadow:0 2px 6px rgba(0,0,0,.1);z-index:2}.center-timeline-info .filtered-date{font-weight:600;color:#374151;font-size:13px}.center-timeline-info .filtered-opponent{font-weight:500;color:#6b7280;font-size:13px}.timeline-dot.filtered{opacity:.7;background:#9ca3af;border-color:#d1d5db;width:20px;height:20px;left:-9px;top:26px;border-width:3px}.timeline-date.filtered{opacity:.95;font-size:13px;color:#374151;font-weight:500;position:absolute;left:35px;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:2;display:flex;align-items:center;gap:4px}.timeline-date-text{font-weight:600;color:#1f2937;font-size:13px}.timeline-opponent{font-weight:500;color:#4b5563;font-size:13px;margin-left:2px}.timeline-serie{font-weight:400;color:#9ca3af;font-size:11px;margin-left:4px;font-style:italic}.active-filters{display:flex;justify-content:center;gap:8px;margin-bottom:24px;flex-wrap:wrap}.active-filter-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#fee;color:#666;border-radius:20px;font-size:13px;font-weight:500}.filter-remove{background:none;border:none;color:#999;font-size:18px;font-weight:700;cursor:pointer;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;line-height:1}.filter-remove:hover{color:#f87171}.badge-top.clickable{cursor:pointer;transition:all .2s}.badge-top.clickable:hover{transform:translateY(-1px);box-shadow:0 2px 6px rgba(0,0,0,.15)}.badge-clickable{border:none;font-family:inherit;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1)}.badge-clickable:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.2)}.badge-clickable:focus-visible{outline:2px solid var(--interactive-primary);outline-offset:2px}.badge-clickable:active{transform:translateY(0)}.calendar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;overflow-y:auto}@media (max-width:768px){.calendar-overlay{padding:0;align-items:flex-start}}.calendar-modal{background:white;border-radius:16px;width:100%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.3)}.calendar-header{justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.calendar-header h2{margin:0;font-size:24px;font-weight:600;color:#1f2937}.login-modal{max-width:440px;animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-close{position:absolute;top:20px;right:20px;background:transparent;border:none;font-size:28px;color:#86868b;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s;padding:0;line-height:1}.login-close:hover{background:#f5f5f7;color:#1d1d1f}.login-content{padding:32px 32px 40px}.login-title{font-size:28px;font-weight:700;color:#1d1d1f;margin:0 0 8px;text-align:center}.login-subtitle{font-size:15px;color:#86868b;margin:0 0 32px;text-align:center}.login-form{margin-bottom:0}.login-input-group{margin-bottom:20px}.login-label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:#1d1d1f}.login-input-wrapper{position:relative;width:100%}.login-input-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#86868b;pointer-events:none}.login-input{width:100%;padding:14px 16px 14px 48px;border:2px solid #e5e5e7;border-radius:12px;font-size:16px;transition:all .2s;font-family:inherit;background:#fafafa;color:#1d1d1f}.login-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px rgba(102,126,234,.1);background:#ffffff}.login-input:disabled{background:#f5f5f7;color:#86868b;cursor:not-allowed}.login-input-otp{font-size:24px;letter-spacing:8px;text-align:center;font-weight:600;padding-left:48px}.login-input-hint{font-size:13px;color:#86868b;margin-top:6px}.login-btn{width:100%;padding:14px 24px;color:white;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.login-btn,.login-btn:hover:not(:disabled){background:linear-gradient(135deg,#667eea,#764ba2)}.login-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,126,234,.4);color:white!important}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{background:#ccc;cursor:not-allowed;transform:none}.login-btn-secondary{width:100%;padding:12px;margin-top:12px;background:transparent;color:#667eea;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.login-btn-secondary:hover{background:#f5f5f7;color:#667eea}.login-message{margin-top:16px;padding:12px 16px;border-radius:12px;font-size:14px;font-weight:500;animation:fadeIn .3s ease-out}.login-message.success{background:#d4f4dd;color:#166534;border:1px solid #86efac}.login-message.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.calendar-close{background:none;font-size:32px;color:#9ca3af;padding:0;display:flex;align-items:center;justify-content:center;line-height:1;transition:color .2s}.calendar-close:hover{color:#4b5563}.calendar-content{overflow-y:auto;padding:20px 24px}.calendar-event{padding:16px;border-left:3px solid #3b82f6;background:#f9fafb;border-radius:8px;margin-bottom:12px}.calendar-event-date{color:#1f2937;margin-bottom:8px;font-size:14px}.calendar-event-details{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.calendar-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;color:white}.calendar-badge.badge-home{background:linear-gradient(135deg,#10b981,#059669)}.calendar-badge.badge-away{background:linear-gradient(135deg,#f59e0b,#d97706)}.calendar-opponent{font-weight:500;color:#374151}.calendar-location{color:#6b7280;font-size:13px}.filter-bar{margin-bottom:24px;display:flex;justify-content:center}.filter-controls{display:flex;align-items:center;gap:16px;padding:14px 18px;background:#f9fafb;border-radius:10px;border:1px solid #e5e7eb;flex-wrap:wrap}.filter-section{margin-top:40px}.filter-section-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin-bottom:12px}.player-pills{display:flex;flex-wrap:wrap;gap:8px}.player-pill{padding:6px 14px;background:#f9fafb;border:2px solid #e5e7eb;border-radius:20px;font-size:14px;font-weight:500;color:#4b5563;cursor:pointer;transition:all .2s}.player-pill:hover{background:#f3f4f6;border-color:#d1d5db}.player-pill.active{background:#3b82f6;border-color:#3b82f6;color:white}.player-pill.active:hover{background:#2563eb;border-color:#2563eb}.no-players-text{color:#9ca3af;font-size:14px;font-style:italic}.filter-controls-row{align-items:center}.filter-controls-row,.filter-toggles{display:flex;gap:20px;flex-wrap:wrap}.player-filter-dropdown{flex:1 1;min-width:180px;max-width:280px}.filter-clear-btn{padding:7px 16px;border:1px solid #e5e7eb;border-radius:8px;font-weight:500;color:#6b7280;white-space:nowrap}.filter-clear-btn:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.toggle-switch{position:relative;display:inline-flex;align-items:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle-switch input{opacity:0;width:0;height:0;position:absolute}.toggle-slider{position:relative;width:44px;height:24px;background:#cbd5e1;border-radius:34px;transition:all .3s ease;margin-right:8px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;top:3px;background:white;border-radius:50%;transition:all .3s ease;box-shadow:0 2px 4px rgba(0,0,0,.15)}.toggle-switch input:checked+.toggle-slider{background:#3b82f6}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-switch:hover .toggle-slider{box-shadow:0 0 8px rgba(59,130,246,.2)}.toggle-label{font-size:14px;font-weight:500;color:#4b5563}.filter-clear-btn{padding:10px 20px;background:white;border:2px solid #ef4444;border-radius:12px;font-size:14px;font-weight:600;color:#ef4444;cursor:pointer;transition:all .2s;margin-top:16px}.filter-clear-btn:hover{background:#ef4444;color:white}@keyframes pulse-task{0%,to{box-shadow:0 0 0 0 rgba(59,130,246,.4)}50%{box-shadow:0 0 0 8px rgba(59,130,246,0)}}@media (max-width:640px){.filter-wrapper{padding-left:16px}.filter-section-title{font-size:12px}.player-pill{font-size:13px;padding:5px 12px}.filter-clear-btn{width:100%}.players-row{flex-direction:column;align-items:flex-start;gap:8px}.player-chip{font-size:11px;padding:3px 8px}.cars-tasks{grid-template-columns:1fr}}.cleaning-documents-section{max-width:900px;margin:0 auto 40px;padding:0 20px}.documents-header{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:600;color:#1d1d1f;margin-bottom:16px}.documents-header .icon{width:20px;height:20px;color:#8b5cf6}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:12px;gap:12px}.document-card{display:flex;align-items:center;gap:16px;padding:16px;background:white;border:1px solid #e5e5e7;border-radius:12px;text-decoration:none;color:inherit;transition:all .2s;box-shadow:0 1px 3px rgba(0,0,0,.05)}.document-card:hover{border-color:#8b5cf6;box-shadow:0 4px 12px rgba(139,92,246,.15);transform:translateY(-2px)}.document-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-radius:10px}.document-icon svg{width:24px;height:24px;color:white}.document-name{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-description{font-size:12px;color:#6c757d;margin-bottom:4px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.document-meta{font-size:11px;color:#86868b;text-transform:uppercase;letter-spacing:.3px}.document-download{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f8f9fa;border-radius:8px;flex-shrink:0}.document-download svg{width:18px;height:18px;color:#8b5cf6}.document-card:hover .document-download{background:#8b5cf6}.document-card:hover .document-download svg{color:white}.cleaning-schedule-wrapper{max-width:900px;margin:0 auto;padding:0 20px}.cleaning-schedule-title{font-size:22px;font-weight:700;color:#1d1d1f;margin-bottom:24px;text-align:center}.cleaning-month-section{margin-bottom:28px}.cleaning-month-title{font-size:16px;font-weight:600;color:#1d1d1f;margin-bottom:12px;text-transform:capitalize}.cleaning-timeline{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:16px;gap:16px;position:relative}.cleaning-card{background:linear-gradient(135deg,#faf9fb,#ffffff);border-radius:12px;border:1px solid #e5e5e7;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 4px rgba(0,0,0,.04);padding:16px;position:relative;height:-moz-fit-content;height:fit-content}.cleaning-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#8b5cf6,#7c3aed);border-radius:12px 12px 0 0;opacity:.6;transition:opacity .3s}.cleaning-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.08);border-color:#d1d1d6;transform:translateY(-2px)}.cleaning-card:hover:before{opacity:1}.cleaning-card.highlight{border-color:#8b5cf6;background:linear-gradient(135deg,#f5f3ff,#faf5ff);box-shadow:0 4px 12px rgba(139,92,246,.15)}.cleaning-card.highlight:before{opacity:1;background:linear-gradient(90deg,#8b5cf6,#a78bfa)}.cleaning-date{display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%}.cleaning-day-group{display:flex;align-items:baseline;gap:6px}.cleaning-day{font-size:24px;font-weight:700;line-height:1;color:#1d1d1f}.cleaning-weekday{font-size:11px;color:#86868b;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.cleaning-time{font-size:12px;color:#8b5cf6;font-weight:600;white-space:nowrap}.cleaning-content{display:flex;flex-direction:column;gap:8px;width:100%}.cleaning-assignees{display:flex;flex-wrap:wrap;gap:8px}.cleaning-assignee{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#f5f5f7;border-radius:20px;transition:all .2s;font-size:13px;border:1px solid #e5e5e7}.cleaning-assignee.clickable:hover{background:#e8e8ed;border-color:#d1d1d6;transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.08)}.cleaning-assignee.clickable:active{transform:translateY(0)}.cleaning-assignee.highlight{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:#8b5cf6;color:white;box-shadow:0 2px 6px rgba(139,92,246,.25)}.cleaning-assignee.highlight.clickable:hover{background:linear-gradient(135deg,#9333ea,#8b5cf6);transform:translateY(-1px);box-shadow:0 3px 8px rgba(139,92,246,.35)}.cleaning-assignee.highlight .assignee-name{color:white}.cleaning-assignee.locked{background:#fff4e6;border-color:#fbbf24;position:relative}.assignee-name{color:#1d1d1f;font-weight:500;line-height:1.3}.cleaning-assignee:before{content:"";display:inline-block;width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236b7280'%3E%3Cpath fill-rule='evenodd' d='M10 9a3 3 0 100-6 3 3 0 000 6zm-7 9a7 7 0 1114 0H3z' clip-rule='evenodd'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;flex-shrink:0}.cleaning-assignee.highlight:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='white'%3E%3Cpath fill-rule='evenodd' d='M10 9a3 3 0 100-6 3 3 0 000 6zm-7 9a7 7 0 1114 0H3z' clip-rule='evenodd'/%3E%3C/svg%3E")}.lock-icon-small{width:14px;height:14px;fill:#f59e0b;margin-left:4px}.cleaning-description{width:100%;padding:10px 12px;background:#f8f9fa;border-left:3px solid #8b5cf6;border-radius:6px;color:#6b7280;font-size:13px;line-height:1.5;margin-top:4px}.match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.match-opponent-header{display:flex;align-items:center;gap:8px}.vs-text{font-size:18px;font-weight:400;color:#9ca3af;text-transform:lowercase;line-height:1}.opponent-name{font-size:22px;font-weight:700;color:#1f2937;letter-spacing:-.5px}.match-date-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.date-time-group{display:flex;align-items:baseline;gap:6px}.date-time-separator{color:#6b7280;margin:0 4px;font-size:16px;font-weight:500}.match-time-inline{font-size:16px;font-weight:600;color:#374151}.match-badges-top{display:flex;align-items:center;gap:8px}.badge-top{padding:4px 12px;border-radius:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 1px 2px rgba(0,0,0,.05)}.badge-top.badge-home{background:linear-gradient(135deg,#10b981,#059669);color:white;box-shadow:0 2px 4px rgba(16,185,129,.3)}.badge-top.badge-home.badge-clickable:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px rgba(16,185,129,.4)}.badge-top.badge-away{background:linear-gradient(135deg,#f59e0b,#d97706);color:white;box-shadow:0 2px 4px rgba(245,158,11,.3)}.badge-top.badge-away.badge-clickable:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 12px rgba(245,158,11,.4)}.badge-top.badge-active{opacity:.6;box-shadow:inset 0 2px 4px rgba(0,0,0,.2)}.badge-top.badge-cleaning{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:white;box-shadow:0 2px 4px rgba(139,92,246,.3)}.badge-top.badge-cup{background:linear-gradient(135deg,#eab308,#ca8a04);color:white;box-shadow:0 2px 4px rgba(234,179,8,.3)}.badge-top.badge-task{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:white;box-shadow:0 2px 4px rgba(139,92,246,.3)}.badge-top.badge-task.badge-clickable:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 4px 12px rgba(139,92,246,.4)}.badge-top.badge-recurring{background:linear-gradient(135deg,#ec4899,#db2777);color:white;box-shadow:0 2px 4px rgba(236,72,153,.3)}.date-weekday{font-size:14px;font-weight:600;color:#6b7280;text-transform:uppercase}.date-day{font-size:18px;font-weight:700;color:#1f2937}.date-month{font-size:14px;font-weight:600;color:#6b7280;text-transform:uppercase}.match-datetime{display:flex;gap:16px;margin-bottom:12px;padding:8px 0}.match-date-info,.match-time-info{display:flex;align-items:center;gap:6px;color:#4b5563;font-size:14px;font-weight:500}.icon-calendar,.icon-clock{width:16px;height:16px;opacity:.6}.match-date{font-weight:600;font-size:16px;color:#1d1d1f}.match-badges{display:flex;gap:8px;align-items:center}.badge{padding:4px 10px;border-radius:8px;font-size:12px;font-weight:600}.badge-home{background:#e8f4fd;color:#006bb3}.badge-away{background:#fff1e0;color:#d97706}.badge-serie{background:#f5f5f7;color:#515154}.match-opponent{font-size:20px;font-weight:500;margin-bottom:8px;color:#1d1d1f}.match-details{display:flex;gap:16px;margin-bottom:8px;margin-top:-2px;font-size:14px;color:#515154}.match-detail{display:flex;align-items:center;gap:4px}.venue-link{color:#515154;text-decoration:none;transition:all .2s ease;border-bottom:1px dotted #9ca3af}.venue-link:hover{color:#1f2937;border-bottom-style:solid;border-bottom-color:#6b7280}.icon{width:16px;height:16px;fill:currentColor}.players{font-size:14px;color:#515154;margin-top:8px;margin-bottom:12px;line-height:1.6}.players-label{font-weight:500;color:#1d1d1f;margin-right:4px}.home-tasks-section{margin-top:16px}.tasks-horizontal{display:flex;flex-direction:column;gap:8px}.task-column{display:flex;align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:10px 16px;border-radius:10px;border:1px solid #e2e8f0;transition:all .2s;box-shadow:0 1px 3px rgba(0,0,0,.04)}.task-column:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);box-shadow:0 2px 6px rgba(0,0,0,.08);transform:translateX(2px)}.task-column:first-child{border-left:3px solid #f59e0b}.task-column:nth-child(2){border-left:3px solid #8b5cf6}.task-column:nth-child(3){border-left:3px solid #10b981}.task-column.selected-player-task{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6;animation:pulse-task 2s ease-in-out infinite}.task-column.selected-player-task:hover{background:linear-gradient(135deg,#bfdbfe,#93c5fd)}.task-column.selected-player-task:first-child,.task-column.selected-player-task:nth-child(2),.task-column.selected-player-task:nth-child(3){border-left:3px solid #3b82f6}.task-header{font-weight:600;font-size:13px;color:#475569;min-width:100px;padding-right:16px;text-transform:uppercase;letter-spacing:.5px}.task-players{display:flex;flex-wrap:wrap;gap:8px;flex:1 1}.task-player{display:inline-block;padding:6px 12px;background:white;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;color:#1e293b;transition:all .2s ease;cursor:pointer;text-align:left}.task-player:hover{background:#f8fafc;border-color:#cbd5e1}.task-player.task-clickable:hover{background:#eff6ff;border-color:#3b82f6;transform:translateY(-1px);box-shadow:0 2px 4px rgba(59,130,246,.2)}.task-player.empty{color:#94a3b8;border-style:dashed;opacity:.6;cursor:default}.task-player.empty:hover{background:white;border-color:#e2e8f0}.task-player.highlight.is-child{background:#dbeafe;border-color:#3b82f6;color:#1e40af;font-weight:500}.task-player.selected-player-task{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fbbf24;color:#92400e;font-weight:600;box-shadow:0 2px 6px rgba(251,191,36,.3);transform:translateY(-1px)}.task-player.selected-player-task:hover{background:linear-gradient(135deg,#fde68a,#fcd34d);box-shadow:0 3px 8px rgba(251,191,36,.4)}body.user-anonymous .task-player:not(.empty){cursor:default}body.user-anonymous .task-player:not(.empty):hover{transform:none;box-shadow:none;border-color:#e5e7eb}body.user-anonymous .edit-driving-btn{display:none!important}body.user-anonymous .cleaning-assignee:not(.locked){cursor:default}body.user-anonymous .cleaning-assignee:not(.locked):hover{transform:none;background:white}body.user-anonymous .cleaning-assignee:not(.locked):hover:after,body.user-anonymous .task-player:not(.empty):hover:after{content:"Logga in för att ändra";position:absolute;top:-30px;left:50%;transform:translateX(-50%);background:#333;color:white;padding:4px 8px;border-radius:4px;font-size:12px;white-space:nowrap;z-index:1000;pointer-events:none}.lock-icon{position:absolute;top:8px;right:8px;width:14px;height:14px;fill:#9ca3af}.edit-driving-btn{position:absolute;bottom:16px;right:16px;background:#f5f5f7;border:1px solid #d1d1d6;padding:4px;cursor:pointer;color:#86868b;opacity:.3;transition:all .2s;border-radius:50%;z-index:10;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.match-card:hover .edit-driving-btn{opacity:.8}.edit-driving-btn:hover{opacity:1!important;background:#e5e5e7;color:#1d1d1f;border-color:#86868b}.edit-driving-btn svg{width:20px;height:20px}.players-section{margin-top:12px}.players-row{gap:12px}.players-label,.players-row{display:flex;align-items:center}.players-label{gap:6px;flex-shrink:0}.players-icon{width:16px;height:16px;color:#6b7280}.players-count{background:#e5e7eb;color:#374151;font-size:11px;font-weight:600;padding:2px 6px;border-radius:8px;min-width:18px;text-align:center}.players-names{display:flex;flex-wrap:wrap;gap:6px;flex:1 1}.player-chip{display:inline-block;padding:4px 10px;background:#f3f4f6;border-radius:12px;font-size:12px;font-weight:500;color:#374151;white-space:nowrap;transition:all .2s}.player-chip:hover{background:#e5e7eb}.player-chip.player-linked{background:#dbeafe;color:#1e40af;font-weight:600;border:1px solid #93c5fd}.player-chip.player-linked:hover{background:#bfdbfe}.player-chip.player-selected{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;font-weight:600;border:1px solid #fbbf24;box-shadow:0 2px 6px rgba(251,191,36,.3);transform:translateY(-1px)}.player-chip.player-selected:hover{background:linear-gradient(135deg,#fde68a,#fcd34d);box-shadow:0 3px 8px rgba(251,191,36,.4)}.driving-section{background:white;padding:16px;border-radius:8px;margin-top:12px;border:1px solid #e5e5e7}.driving-header{font-weight:600;color:#1d1d1f;margin-bottom:12px;font-size:16px}.driving-cars{display:flex;flex-direction:column;gap:12px}.car-assignment{background:#f9f9fb;padding:12px;border-radius:6px;border-left:3px solid #667eea}.car-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.car-number{color:#667eea}.car-driver{font-weight:500;color:#1d1d1f}.car-passengers{font-size:14px;color:#515154;padding-left:16px}.passengers-label{font-weight:500;margin-right:6px}.passenger-name{white-space:nowrap}.players-without-cars{background:#fff3cd;padding:12px;border-radius:6px;border-left:3px solid #ffc107}.no-car-label{font-weight:600;color:#856404;margin-right:8px}.no-car-player{color:#856404;font-weight:500}.no-driving-info{text-align:center;padding:20px;color:#86868b}.warning-text{color:#dc3545;font-weight:600;margin-top:8px}.driving-section-simple{margin-top:16px}.section-label{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#475569;margin-bottom:0;min-width:100px;padding-right:16px}.unassigned-row{margin-top:8px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-left:3px solid #ef4444;border-radius:10px;padding:14px 18px;font-size:14px;box-shadow:0 1px 3px rgba(0,0,0,.04);transition:all .2s}.unassigned-row:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);box-shadow:0 2px 6px rgba(0,0,0,.08);transform:translateX(2px)}.unassigned-row-content{display:flex;align-items:center;gap:8px;flex:1 1}.unassigned-label-section{min-width:100px;display:flex;align-items:center}.unassigned-label{font-size:13px;font-weight:600;color:#991b1b;text-transform:uppercase;letter-spacing:.5px}.unassigned-players-section{display:flex;flex-wrap:wrap;gap:8px;flex:1 1;align-items:center}.unassigned-player{display:inline-block;padding:4px 10px;background:rgba(255,255,255,.5);border-radius:12px;font-size:12px;font-weight:500;color:#92400e;white-space:nowrap;transition:all .2s;border:1px solid #fcd34d}.unassigned-player.linked{background:rgba(255,255,255,.8);color:#78350f;font-weight:600;border:1px solid #f59e0b}.cars-tasks{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:10px;gap:10px}.cars-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.task-column.task-driving{border-left:3px solid #fbbf24}.task-column.task-driving.selected-player-task{border-left-color:#3b82f6}.task-content{gap:8px;flex:1 1;position:relative}.car-info,.task-content{display:flex;align-items:center}.car-info{gap:4px;min-width:80px}.task-driving .vehicle-type{font-weight:600;color:#6b7280;background:#f3f4f6;padding:2px 6px;border-radius:4px;font-size:11px;text-transform:uppercase;letter-spacing:.3px;flex-shrink:0}.task-driving .car-number{font-weight:600;color:#374151;flex-shrink:0}.driver-section{display:flex;align-items:center;gap:4px;min-width:140px}.driver-label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.3px}.task-driving .driver-name{display:inline-block;padding:6px 12px;background:white;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;color:#1e293b;white-space:nowrap;transition:all .2s ease}.task-driving .driver-name:hover{background:#f8fafc;border-color:#cbd5e1}.task-driving .driver-name.task-clickable:hover{background:#eff6ff;border-color:#3b82f6;transform:translateY(-1px);box-shadow:0 2px 4px rgba(59,130,246,.2)}.task-driving .driver-name.linked{background:#dbeafe;border-color:#3b82f6;color:#1e40af;font-weight:500}.task-driving .driver-name.linked:hover{background:#bfdbfe}.vertical-separator{width:1px;height:20px;background-color:#d1d5db;flex-shrink:0;align-self:center}.passengers-section{display:flex;flex-wrap:wrap;gap:4px;flex:1 1;align-items:center}.task-driving .passenger-name{display:inline-block;padding:4px 10px;background:#f3f4f6;border-radius:12px;font-size:12px;font-weight:500;color:#374151;white-space:nowrap;transition:all .2s}.task-driving .passenger-name.linked{background:#dbeafe;color:#1e40af;font-weight:600;border:1px solid #93c5fd}.task-driving .driver-name.selected,.task-driving .passenger-name.selected,.unassigned-player.selected{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;font-weight:600;border:1px solid #fbbf24;box-shadow:0 2px 6px rgba(251,191,36,.3)}.task-driving .comma{color:#9ca3af;margin-right:4px}.no-passengers-text{color:#9ca3af;font-style:italic}.car-task{background:#f9fafb;border-radius:10px;border:1.5px solid #e5e7eb;overflow:hidden;transition:all .2s ease;cursor:pointer}.car-task:hover{background:white;border-color:#9ca3af;box-shadow:0 2px 8px rgba(0,0,0,.08);transform:translateY(-1px)}.car-task.has-linked{background:#fef3c7;border-color:#fbbf24}.car-task.selected-player-task{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6;animation:pulse-task 2s ease-in-out infinite}.car-task.selected-player-task .car-number,.car-task.selected-player-task .driver-name,.car-task.selected-player-task .passenger-count{color:white}.car-task.selected-player-task .car-icon,.car-task.selected-player-task .driver-icon,.car-task.selected-player-task .expand-toggle{color:rgba(255,255,255,.8)}.car-task.selected-player-task .car-task-details{background:rgba(255,255,255,.1);border-top-color:rgba(255,255,255,.2)}.car-task.selected-player-task .passengers-label{color:rgba(255,255,255,.9)}.car-task-header{display:flex;align-items:center;padding:8px 10px;gap:8px}.car-task-main{gap:10px;flex:1 1}.car-number,.car-task-main{display:flex;align-items:center}.car-number{gap:4px;font-weight:600;color:#374151;font-size:12px}.car-icon{width:14px;height:14px;color:#6b7280}.car-driver{display:flex;align-items:center;gap:4px;flex:1 1}.driver-icon{width:14px;height:14px;color:#6b7280}.driver-name{font-size:13px;font-weight:700;color:#1f2937}.car-capacity{display:flex;align-items:center;margin-left:auto}.passenger-count{background:#f3f4f6;color:#4b5563;font-size:12px;font-weight:600;padding:3px 8px;border-radius:10px}.expand-toggle{width:24px;height:24px;padding:0;background:transparent;border:none;cursor:pointer;color:#9ca3af;transition:all .2s;display:flex;align-items:center;justify-content:center}.expand-toggle:hover{color:#6b7280}.expand-toggle.expanded{transform:rotate(180deg)}.expand-toggle svg{width:20px;height:20px}.car-task-details{padding:0 12px 12px;border-top:1px solid #fed7aa;background:#fffbeb}.passengers-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#92400e;display:block;margin-bottom:6px}.passenger-chip{padding:3px 10px;background:white;border:1px solid #fed7aa;border-radius:10px;font-size:12px;font-weight:500;color:#78350f}.passenger-chip.linked{background:#dbeafe;border-color:#93c5fd;color:#1e40af;font-weight:600}.no-passengers{font-size:12px;color:#9ca3af;font-style:italic}.car-summary{display:flex;justify-content:space-between;align-items:center;padding:12px}.car-label{font-size:12px;color:#86868b;font-weight:500;text-transform:uppercase}.car-driver-name{font-size:14px;font-weight:600;color:#1d1d1f}.car-seats{font-size:13px;color:#515154;font-weight:500}.expand-btn{background:none;border:none;padding:4px;cursor:pointer;color:#86868b;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.expand-btn:hover{color:#1d1d1f}.expand-icon{width:20px;height:20px;transition:transform .2s ease}.expand-icon.expanded{transform:rotate(180deg)}.car-details{padding:0 12px 12px;border-top:1px solid #e5e5e7;animation:slideDown .2s ease}.passengers-list{display:flex;flex-wrap:wrap;gap:6px;padding-top:12px}.passenger-badge{background:white;color:#1d1d1f;padding:4px 10px;border-radius:12px;font-size:13px;font-weight:500;border:1px solid #e5e5e7}.driver-badge{background:#667eea;color:white;border:none}.players-without-cars-simple{background:rgba(255,193,7,.1);border:1px solid rgba(255,193,7,.2);border-radius:12px;padding:12px}.no-car-players{display:flex;flex-wrap:wrap;gap:6px}.player-badge-warning{background:#fff3cd;color:#856404;padding:4px 10px;border-radius:12px;font-size:13px;font-weight:500;border:1px solid rgba(255,193,7,.3)}.no-results{text-align:center;padding:60px 20px;color:#86868b}.no-results-icon{width:64px;height:64px;margin:0 auto 16px;fill:#d1d1d6}.content-wrapper{max-width:1200px;margin:0 auto;padding:0 20px}.summary-info{margin:16px 0;padding:12px;background:#f9f9fb;border-radius:8px;font-size:14px;color:#666}.summary-table{width:100%;border-collapse:collapse;margin-top:20px;background:white;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.1)}.summary-table thead{background:#f5f5f7}.summary-table th{padding:12px;text-align:left;font-weight:500;font-size:13px;color:#666;border-bottom:2px solid #e5e5e7}.summary-table th.col-matcher{background:#fff3cd}.summary-table th.col-hemma{background:#e8f4fd}.summary-table th.col-totalt{background:#f0fdf4}.summary-table th.col-kvot{background:#f3e5f5}.summary-table td{padding:12px;border-bottom:1px solid #e5e5e7;font-size:14px}.summary-table tbody tr.row-even{background:#ffffff}.summary-table tbody tr.row-odd{background:#fafafa}.summary-table tbody tr:hover{background:#f9f9fb}.summary-table .player-name{font-weight:500;color:#1d1d1f}.summary-table .count{text-align:center;font-weight:600;color:#667eea}.summary-table td.col-matcher{background:#fff3cd}.summary-table td.col-hemma{background:#e8f4fd}.summary-table td.col-totalt{background:#f0fdf4}.summary-table td.col-kvot{background:#f3e5f5}.summary-table tfoot{background:#f5f5f7;border-top:2px solid #ddd}.summary-table tfoot td{border-bottom:none}.summary-info-things{margin-bottom:32px;animation:fadeInUp .5s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.summary-description{font-size:15px;color:var(--text-secondary);margin:0 0 20px;line-height:1.6;font-weight:400;letter-spacing:-.1px}.summary-legend{display:flex;flex-direction:column;gap:12px}.legend-item{display:flex;align-items:baseline;gap:8px;padding:8px 0;border-bottom:1px solid var(--border-subtle)}.legend-item:last-child{border-bottom:none}.legend-label{font-weight:600;color:var(--text-primary);min-width:140px;flex-shrink:0}.legend-label,.legend-value{font-size:14px;letter-spacing:-.1px}.legend-value{color:var(--text-secondary);font-weight:400;line-height:1.5}.summary-table-things{width:100%;border-collapse:separate;border-spacing:0;margin-top:24px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.05);animation:fadeInUp .5s ease .1s both}.summary-table-things thead{background:var(--bg-surface-secondary)}.summary-table-things th{padding:14px 16px;text-align:left;font-weight:600;font-size:13px;color:var(--text-secondary);border-bottom:1px solid var(--border-subtle);letter-spacing:-.1px}.summary-table-things th:not(:first-child){text-align:center}.summary-table-things td{padding:14px 16px;border-bottom:1px solid var(--border-subtle);font-size:15px;color:var(--text-primary);letter-spacing:-.1px}.summary-table-things tbody tr{transition:all .2s cubic-bezier(.4,0,.2,1)}.summary-table-things tbody tr:hover{background:var(--interactive-primary-subtle)}.summary-table-things tbody tr:last-child td{border-bottom:none}.player-name-things{font-weight:500;color:var(--text-primary);letter-spacing:-.2px}.count-things{text-align:center;font-weight:500;color:var(--interactive-primary);letter-spacing:-.1px}.total-things{color:var(--text-primary)}.ratio-things,.total-things{font-weight:600}.summary-table-things tfoot{background:var(--bg-surface-secondary);border-top:2px solid var(--border-default)}.summary-table-things tfoot td{border-bottom:none;padding:16px}.footer-label-things{text-transform:uppercase;font-size:12px;letter-spacing:.5px}.footer-count-things,.footer-label-things{font-weight:600;color:var(--text-primary)}@media (max-width:768px){.summary-legend{gap:10px}.legend-item{flex-direction:column;gap:4px;padding:10px 0}.legend-label{min-width:auto}.legend-value{font-size:13px}.summary-table-things{font-size:13px;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.summary-table-things tbody,.summary-table-things tfoot,.summary-table-things thead,.summary-table-things tr{display:table;width:100%;table-layout:auto}.summary-table-things td,.summary-table-things th{padding:10px 8px;font-size:13px}.summary-table-things td:first-child,.summary-table-things th:first-child{position:-webkit-sticky;position:sticky;left:0;background:var(--bg-surface);z-index:1;box-shadow:2px 0 4px rgba(0,0,0,.05)}.summary-table-things tfoot td:first-child,.summary-table-things thead th:first-child{background:var(--bg-surface-secondary)}}@media (max-width:480px){.summary-description{font-size:14px}.legend-label,.legend-value{font-size:13px}.summary-table-things td,.summary-table-things th{padding:8px 6px;font-size:12px}}.calendar-sync-section{background:#667eea;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:24px;margin-bottom:24px;color:white!important;position:relative;box-shadow:0 4px 12px rgba(102,126,234,.2)}.calendar-sync-section *{color:white!important}.calendar-icon{font-size:48px;margin-bottom:16px}.calendar-content,.calendar-icon{text-align:center}.calendar-title{font-size:24px;margin-bottom:8px}.calendar-description{font-size:16px;opacity:.95;margin-bottom:20px}.calendar-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.btn-calendar{background:rgba(255,255,255,.2);color:white;border:2px solid rgba(255,255,255,.3);padding:12px 20px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.btn-calendar:hover{background:rgba(255,255,255,.3);transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.btn-icon{font-size:20px}.calendar-close{position:absolute;top:16px;right:16px;background:rgba(255,255,255,.2);border:none;color:white;width:32px;height:32px;border-radius:50%;font-size:18px;cursor:pointer;transition:all .2s}.calendar-close:hover{background:rgba(255,255,255,.3)}.calendar-link-section{margin-top:20px;padding:16px;background:rgba(255,255,255,.1);border-radius:12px}.calendar-link-label{font-size:14px;margin-bottom:8px;opacity:.9}.calendar-link-container{display:flex;gap:8px;margin-bottom:8px}.calendar-link-input{flex:1 1;padding:10px;border:1px solid rgba(255,255,255,.3);color:#1d1d1f;border-radius:8px;font-size:14px;font-family:monospace}.btn-copy,.calendar-link-input{background:rgba(255,255,255,.9)}.btn-copy{padding:10px 16px;color:#667eea;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-copy:hover{background:white}.calendar-hint{font-size:13px;opacity:.85}.calendar-help-content{max-width:600px}.help-section{margin-bottom:24px}.help-section h3{font-size:18px;margin-bottom:12px;color:#1d1d1f}.help-section ol{margin-left:20px;line-height:1.8;color:#515154}.help-section strong{color:#1d1d1f;font-weight:600}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);animation:fadeIn .2s}.modal.show{display:flex;align-items:center;justify-content:center}.modal-content{background:white;border-radius:16px;padding:32px;max-width:500px;width:90%;max-height:80vh;overflow-y:auto;animation:slideIn .3s}.modal-header{margin-bottom:24px}.modal-title{font-size:24px;color:#1d1d1f;margin-bottom:8px}.modal-subtitle{color:#86868b;font-size:14px}.modal-body{margin-bottom:24px}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:500;color:#515154;margin-bottom:8px}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;border:1px solid #d1d1d6;border-radius:10px;font-size:15px;background:white;color:#1d1d1f;transition:all .2s}.form-textarea{resize:vertical;min-height:80px}.modal-footer{display:flex;gap:12px;justify-content:flex-end}.swap-request-card{background:#f0f9ff;border:1px solid #0891b2;border-radius:8px;padding:16px;margin-bottom:16px}.swap-request-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:12px}.swap-request-title{font-weight:600;color:#0c4a6e}.swap-request-date{font-size:12px;color:#64748b}.swap-request-details{font-size:14px;color:#334155;margin-bottom:12px}.swap-request-actions{display:flex;gap:8px}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(0,0,0,.5)}.modal-container{background:white;border-radius:.75rem;box-shadow:0 20px 25px -5px rgba(0,0,0,.1);max-width:42rem;width:100%;max-height:90vh;overflow-y:auto;border:1px solid #e5e7eb}[data-theme=dark] .modal-container{background:#1f2937;border-color:#374151}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb}[data-theme=dark] .modal-header{border-bottom-color:#374151}.modal-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}[data-theme=dark] .modal-title{color:#f3f4f6}.modal-close-btn{background:none;border:none;cursor:pointer;color:#9ca3af;font-size:1.5rem;transition:color .2s;padding:0;line-height:1}.modal-close-btn:hover{color:#4b5563}[data-theme=dark] .modal-close-btn:hover{color:#d1d5db}.modal-close-btn:disabled{opacity:.5;cursor:not-allowed}.modal-form{padding:1.5rem}.modal-section{margin-bottom:1.5rem}.modal-section-divider{border-top:1px solid #e5e7eb;padding-top:1.5rem;margin-top:1.5rem}[data-theme=dark] .modal-section-divider{border-top-color:#374151}.modal-section-title{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 1rem}[data-theme=dark] .modal-section-title{color:#f3f4f6}.modal-label{display:block;font-size:.875rem;font-weight:500;color:#111827;margin-bottom:.5rem}[data-theme=dark] .modal-label{color:#f3f4f6}.modal-label-large{margin-bottom:.75rem}.modal-input{width:100%;padding:.625rem 1rem;border-radius:.5rem;border:1px solid #e5e7eb;background:white;color:#111827;font-size:.875rem;transition:all .2s}[data-theme=dark] .modal-input{border-color:#374151;background:#111827;color:#f3f4f6}.modal-input::placeholder{color:#9ca3af}[data-theme=dark] .modal-input::placeholder{color:#4b5563}.modal-input:focus{outline:none;ring:2px;ring-color:#3b82f6;border-color:transparent}.modal-input.error,[data-theme=dark] .modal-input.error{border-color:#ef4444}.modal-textarea{resize:none}.modal-error-text{margin-top:.375rem;font-size:.875rem;color:#dc2626}[data-theme=dark] .modal-error-text{color:#ef4444}.modal-slider{width:100%;height:.5rem;background:#e5e7eb;border-radius:.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;accent-color:#3b82f6}[data-theme=dark] .modal-slider{background:#374151}.modal-slider-labels{display:flex;justify-content:space-between;font-size:.75rem;color:#6b7280;margin-top:.5rem}[data-theme=dark] .modal-slider-labels{color:#6b7280}.modal-grid-2{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1rem;gap:1rem}.modal-grid-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.5rem;gap:.5rem}.modal-option-btn{padding:.625rem 1rem;border-radius:.5rem;border:1px solid #e5e7eb;background:white;color:#374151;font-weight:500;font-size:.875rem;transition:all .2s;cursor:pointer}[data-theme=dark] .modal-option-btn{border-color:#374151;background:#111827;color:#d1d5db}.modal-option-btn:hover{border-color:#d1d5db}[data-theme=dark] .modal-option-btn:hover{border-color:#4b5563}.modal-option-btn.selected{border-color:#3b82f6;background:#eff6ff;color:#1e40af}[data-theme=dark] .modal-option-btn.selected{background:#1e3a8a;color:#93c5fd}.modal-checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;margin-bottom:.75rem}.modal-checkbox{width:1rem;height:1rem;border-radius:.25rem;border:1px solid #d1d5db;color:#3b82f6;cursor:pointer}[data-theme=dark] .modal-checkbox{border-color:#374151}.modal-checkbox:focus{outline:none;ring:2px;ring-color:#3b82f6;ring-offset:0}.modal-checkbox-text{font-size:.875rem;color:#374151}[data-theme=dark] .modal-checkbox-text{color:#d1d5db}.modal-indent{margin-left:1.75rem;padding-top:.5rem}.modal-number-input{width:8rem}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}[data-theme=dark] .modal-actions{border-top-color:#374151}.modal-btn-cancel{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;color:#374151;background:white;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s}[data-theme=dark] .modal-btn-cancel{color:#d1d5db;background:#111827;border-color:#374151}.modal-btn-cancel:hover{background:#f9fafb}[data-theme=dark] .modal-btn-cancel:hover{background:#1f2937}.modal-btn-cancel:disabled{opacity:.5;cursor:not-allowed}.modal-btn-submit{padding:.625rem 1.5rem;background:#3b82f6;color:white;border:none;border-radius:.5rem;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.modal-btn-submit:hover{background:#2563eb}.modal-btn-submit:disabled{background:#93c5fd;cursor:not-allowed}.modal-value-highlight{color:#3b82f6}[data-theme=dark] .modal-value-highlight{color:#60a5fa}.animate-spin{animation:spin 1s linear infinite}.loading{text-align:center;padding:40px;color:#86868b}.spinner{border:3px solid #f3f3f3;border-top-color:#667eea;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 16px}.init-banner{background:#fef3c7;border:1px solid #f59e0b;border-radius:12px;padding:20px;margin-bottom:20px;text-align:center}.init-banner h3{color:#92400e;margin-bottom:8px}.init-banner p{color:#78350f;margin-bottom:16px}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}body{padding:10px;background:white!important;font-size:11pt}.controls,.filter-section,.lock-indicator,.modal,.next-match-section,.no-print,.status-indicator,button,footer{display:none!important}.header{background:none!important;padding:10px 0!important;border-bottom:2px solid #333;margin-bottom:20px}.header,.header h1{color:black!important}.header h1{font-size:20pt}.header .subtitle{color:#333!important;font-size:12pt}.container{max-width:100%;padding:0}.section{margin-bottom:20px;page-break-inside:avoid}.section-title{font-size:14pt;font-weight:700;border-bottom:1px solid #ccc;padding-bottom:5px;margin-bottom:10px;color:black!important}.match-grid,.matches-grid{display:block!important}.match-card{margin-bottom:15px!important;page-break-inside:avoid;break-inside:avoid;float:none!important;position:relative!important}.content-section,.content-section>div,.match-card{display:block!important;width:100%!important}.match{page-break-inside:avoid;break-inside:avoid;border:1px solid #999!important;margin-bottom:8px!important;padding:6px!important;background:white!important;display:block!important}.match-header{background:#f0f0f0!important;padding:3px 5px!important;margin:-6px -6px 6px!important;display:flex;justify-content:space-between;align-items:center}.match-info{margin-bottom:6px!important}.match-info h3{font-size:10pt!important;color:black!important;margin:0!important;display:inline}.match-date,.match-time,.match-venue{font-size:9pt!important;color:#333!important;margin:2px 0!important}.match-type{background:none!important;color:black!important;font-weight:700!important;padding:0!important;font-size:9pt!important}.assignments-section{margin-top:6px}.role-section{margin-bottom:4px;padding:3px 5px;background:#f9f9f9!important;border-left:2px solid #666;display:flex;justify-content:space-between;align-items:center}.role-title{font-weight:700;min-width:80px}.role-assigned,.role-title{font-size:9pt;color:black!important;margin:0!important}.role-assigned{text-align:right}.content-section{margin-bottom:15px!important}#content>div{display:block!important}.content-section,.match-container,.matches-container{height:auto!important;max-height:none!important;overflow:visible!important}.summary-section table{width:100%;border-collapse:collapse;font-size:9pt;page-break-inside:avoid}.summary-section td,.summary-section th{border:1px solid #999!important;padding:2px 4px!important;text-align:left;color:black!important;background:white!important}.summary-section th{background:#e0e0e0!important;font-weight:700;font-size:8pt}.summary-section td{font-size:8pt}.ratio-cell{background:white!important;color:black!important}.home-matches-section{page-break-before:auto}.away-matches-section,.summary-section{page-break-before:always}table,tr{page-break-inside:avoid}@page{margin:1cm;size:A4}.section-title:before{content:"";display:block;font-size:8pt;color:#666;margin-bottom:5px}p{margin:2px 0!important}h3{margin:4px 0!important}.driving-info{font-size:9pt!important;line-height:1.2!important}}@media (max-width:768px){.header h1{font-size:24px}.cleaning-schedule-wrapper{padding:0 16px}.cleaning-schedule-title{font-size:20px}.cleaning-timeline{grid-template-columns:1fr;gap:14px}.cleaning-card{padding:14px}.documents-grid{grid-template-columns:1fr}.cleaning-documents-section{padding:0 12px;margin-bottom:32px}.filter-controls{flex-direction:column}.filter-group{width:100%}.stats-cards{grid-template-columns:1fr}.view-toggle{width:100%;justify-content:center}.container{padding:0}.section-title{font-size:20px;margin-bottom:16px}.content-section{padding:0;border-radius:0;box-shadow:none}.timeline-item-center{padding-left:0;padding-right:0}.timeline-item-center .match-card{margin-left:0;max-width:100%}.center-timeline-dot,.timeline-item-center[data-visible=false]:after,.timeline-item-center[data-visible=true]:after{display:none}.center-timeline-connector{left:0;transform:none}.center-timeline-info,.timeline-item-center[data-visible=false] .center-timeline-connector{position:relative;top:auto;transform:none}.center-timeline-info{left:0;margin:8px 16px}.nav-menu{width:100%;flex-direction:column;gap:4px}.nav-btn{width:100%;min-width:unset}.match-card{margin:0;padding:12px}.match-date-top{flex-direction:column;align-items:flex-start;gap:12px}.date-time-group{width:100%}.match-badges-top{width:100%;justify-content:flex-start}.match-opponent-header{font-size:18px}.players-row{flex-direction:column;gap:8px}.players-names{width:100%}.tasks-horizontal{gap:8px}.task-column{flex-direction:column;align-items:flex-start}.task-header{min-width:unset;width:100%;padding-right:0;margin-bottom:8px}.task-players{width:100%}.task-driving{padding:12px;cursor:pointer}.task-content{flex-direction:column;gap:8px;align-items:flex-start}.task-driving .task-content{flex-direction:row;align-items:center;flex-wrap:wrap}.vertical-separator{display:none}.passengers-section{width:100%;justify-content:flex-start;display:none}.task-driving.expanded .passengers-section{display:flex}.unassigned-row-content{flex-direction:column;align-items:flex-start;gap:8px}.unassigned-players-section{width:100%;justify-content:flex-start}.filter-panel{padding:16px}.player-pills{gap:6px}.player-pill{padding:6px 12px}.player-pill,.summary-table{font-size:13px}.summary-table td,.summary-table th{padding:8px 4px}.summary-table td:first-child,.summary-table th:first-child{position:-webkit-sticky;position:sticky;left:0;background:white;z-index:1}.cleaning-timeline{grid-template-columns:1fr}.cleaning-day{font-size:20px}}@media (max-width:480px){.container{padding:8px}.navbar-container{padding:8px 12px}.app-name{font-size:16px}.match-card{padding:12px}.match-opponent-header,.opponent-name{font-size:16px}.badge-top{padding:4px 10px;font-size:11px}.player-chip{padding:4px 10px;font-size:12px}.task-player{padding:8px}.driver-name,.passenger-name,.task-player{font-size:13px}.filter-panel{padding:12px}.filter-section-title{font-size:13px}.summary-table{font-size:12px}.summary-table td,.summary-table th{padding:6px 3px}}@media (max-height:500px) and (orientation:landscape){.navbar{position:-webkit-sticky;position:sticky;top:0;z-index:100}.match-card{margin-bottom:12px}}.admin-container{min-height:100vh}.admin-container,.admin-page{background:#f5f5f7}.admin-header{background:linear-gradient(135deg,#667eea,#764ba2);color:white;padding:40px 20px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.admin-header-content{max-width:1200px;margin:0 auto}.admin-header h1{font-size:32px;color:white}.admin-header p{font-size:16px;margin:0 0 16px;opacity:.95}.admin-context{font-size:14px;opacity:.9;margin-top:12px}.context-separator{font-weight:300}.admin-content{max-width:1200px;padding:32px 20px}.admin-menu-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:20px;gap:20px;margin-bottom:40px}.admin-menu-item{background:white;border-radius:12px;padding:24px;color:#1d1d1f;border:1px solid #e5e5e7;box-shadow:0 1px 3px rgba(0,0,0,.05)}.admin-menu-item:hover{box-shadow:0 8px 16px rgba(102,126,234,.15);border-color:#667eea}.admin-menu-item.disabled{opacity:.5}.admin-menu-item.disabled:hover{box-shadow:0 1px 3px rgba(0,0,0,.05);border-color:#e5e5e7}.admin-menu-icon{font-size:32px;display:block}.admin-menu-title{font-size:18px;color:#1d1d1f}.admin-menu-description{font-size:14px;color:#6e6e73}.admin-footer{padding:32px 20px;color:#86868b;border-top:1px solid #e5e5e7}.admin-footer p{font-size:14px}.admin-footer-hint{opacity:.8}.loading-container{align-items:center;justify-content:center;min-height:100vh;background:#f5f5f7}.loading-container .loading{font-size:16px;color:#667eea}@media (max-width:768px){.admin-header{padding:24px 16px}.admin-header h1{font-size:24px}.admin-header p{font-size:14px}.admin-content{padding:20px 16px}.admin-menu-grid{grid-template-columns:1fr;gap:16px}.admin-menu-item{padding:20px}.admin-menu-icon{font-size:28px}.admin-menu-title{font-size:16px}.admin-menu-description{font-size:13px}}@media (max-width:480px){.admin-context{flex-direction:column;align-items:flex-start;gap:4px}.context-separator{display:none}}.admin-layout-wrapper{min-height:100vh;background:#0e0e10}.admin-layout{display:flex;min-height:calc(100vh - 60px);background:#0e0e10}.admin-sidebar{width:240px;background:#18181b;border-right:1px solid #26262c;display:flex;flex-direction:column;position:fixed;left:0;top:60px;bottom:0;z-index:100;transition:width .2s ease}.admin-sidebar.collapsed{width:60px}.admin-sidebar-header{padding:16px;border-bottom:1px solid #26262c}.admin-sidebar-logo{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-sidebar-title{font-size:18px;font-weight:700;color:#efeff1;white-space:nowrap}.admin-sidebar-toggle{background:transparent;border:none;color:#adadb8;cursor:pointer;padding:4px 8px;border-radius:4px;font-size:16px;transition:all .2s}.admin-sidebar-toggle:hover{background:#26262c;color:#efeff1}.admin-sidebar-nav{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:8px 0}.admin-sidebar-nav::-webkit-scrollbar{width:6px}.admin-sidebar-nav::-webkit-scrollbar-track{background:transparent}.admin-sidebar-nav::-webkit-scrollbar-thumb{background:#26262c;border-radius:3px}.admin-sidebar-nav::-webkit-scrollbar-thumb:hover{background:#3a3a3d}.admin-sidebar-section{margin-bottom:16px}.admin-sidebar-section-label{padding:8px 16px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#adadb8}.admin-sidebar-item{display:flex;align-items:center;gap:12px;padding:8px 12px;margin:2px 8px;color:#adadb8;text-decoration:none;border-radius:4px;transition:all .15s;position:relative;font-size:14px}.admin-sidebar-item:hover{background:#26262c;color:#efeff1}.admin-sidebar-item.active{background:#772ce8;color:#ffffff}.admin-sidebar-item.active:hover{background:#9147ff}.admin-sidebar-icon{font-size:18px;min-width:18px;text-align:center}.admin-sidebar-label{flex:1 1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-sidebar-indicator{position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:24px;background:#ffffff;border-radius:0 2px 2px 0}.admin-sidebar-footer{padding:12px 8px;border-top:1px solid #26262c}.admin-sidebar-back{display:flex;align-items:center;gap:12px;padding:8px 12px;color:#adadb8;text-decoration:none;border-radius:4px;transition:all .15s;font-size:14px}.admin-sidebar-back:hover{background:#26262c;color:#efeff1}.admin-sidebar-overlay{display:none}.admin-main{flex:1 1;margin-left:240px;background:#0e0e10;min-height:100vh;transition:margin-left .2s ease}.admin-sidebar.collapsed+.admin-main{margin-left:60px}.admin-page{min-height:100vh;background:#0e0e10}.admin-header{background:#18181b;border-bottom:1px solid #26262c;color:#efeff1;padding:24px 32px}.admin-header h1{font-size:28px;font-weight:700;margin:0 0 8px;color:#efeff1}.admin-header p{font-size:14px;margin:0 0 12px;color:#adadb8}.admin-context{display:flex;align-items:center;gap:8px;font-size:13px;color:#adadb8;margin-top:8px}.context-org{color:#9147ff;font-weight:600}.context-separator{color:#535353}.context-team{color:#efeff1;font-weight:500}.admin-content{max-width:1400px;margin:0 auto;padding:32px}.admin-menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:16px;gap:16px;margin-bottom:32px}.admin-menu-item{background:#18181b;border:1px solid #26262c;border-radius:8px;padding:20px;text-decoration:none;color:#efeff1;transition:all .2s ease;display:flex;flex-direction:column}.admin-menu-item:hover{background:#1f1f23;border-color:#9147ff;transform:translateY(-2px);box-shadow:0 4px 12px rgba(145,71,255,.2)}.admin-menu-item.disabled{opacity:.4;cursor:not-allowed}.admin-menu-item.disabled:hover{transform:none;box-shadow:none;border-color:#26262c;background:#18181b}.admin-menu-icon{font-size:28px;margin-bottom:12px}.admin-menu-title{font-size:16px;font-weight:600;margin:0 0 8px;color:#efeff1}.admin-menu-description{font-size:13px;color:#adadb8;margin:0;line-height:1.5;flex:1 1}.admin-footer{text-align:center;padding:24px;color:#53535f;border-top:1px solid #26262c}.admin-footer p{margin:4px 0;font-size:13px}.admin-footer-hint{font-size:12px;opacity:.7}.loading-container{background:#0e0e10}.loading-container .loading{color:#9147ff}@media (max-width:1024px){.admin-sidebar{transform:translateX(-100%);top:60px}.admin-sidebar.mobile-open{transform:translateX(0)}.admin-main{margin-left:0!important}.admin-sidebar-overlay{display:block;position:fixed;inset:0;top:60px;background:rgba(0,0,0,.7);z-index:99;opacity:0;pointer-events:none;transition:opacity .2s}.admin-sidebar.mobile-open~.admin-sidebar-overlay{opacity:1;pointer-events:all}}@media (max-width:768px){.admin-content{padding:20px 16px}.admin-menu-grid{grid-template-columns:1fr;gap:12px}.admin-header{padding:20px 16px}.admin-header h1{font-size:22px}}.admin-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 20px;min-height:50vh}.placeholder-icon{font-size:64px;margin-bottom:24px;opacity:.6}.admin-placeholder h2{font-size:24px;font-weight:600;color:#efeff1;margin:0 0 12px}.admin-placeholder p{font-size:16px;color:#adadb8;margin:0 0 32px;max-width:500px}.placeholder-link{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:#9147ff;color:white;text-decoration:none;border-radius:6px;font-weight:500;transition:all .2s}.placeholder-link:hover{background:#772ce8;transform:translateY(-2px);box-shadow:0 4px 12px rgba(145,71,255,.3)}.admin-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.admin-button:disabled{opacity:.5;cursor:not-allowed}.admin-button-primary{background:#9147ff;color:white}.admin-button-primary:hover:not(:disabled){background:#772ce8;transform:translateY(-1px);box-shadow:0 4px 12px rgba(145,71,255,.3)}.admin-button-secondary{background:#26262c;color:#efeff1}.admin-button-secondary:hover:not(:disabled){background:#3a3a3d}.admin-button-danger{background:#eb0400;color:white}.admin-button-danger:hover:not(:disabled){background:#c20300}.admin-button-success{background:#00c74d;color:white}.admin-button-success:hover:not(:disabled){background:#00a83e}.admin-button-warning{background:#ffab00;color:#0e0e10}.admin-button-warning:hover:not(:disabled){background:#e69500}.admin-button-sm{padding:6px 12px;font-size:12px}.admin-button-md{padding:10px 20px;font-size:14px}.admin-button-lg{padding:12px 24px;font-size:16px}.admin-button-icon{font-size:16px}.admin-button-spinner{animation:spin 1s linear infinite}.admin-card{background:#18181b;border:1px solid #26262c;border-radius:8px;overflow:hidden}.admin-card-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid #26262c}.admin-card-title{font-size:18px;font-weight:600;color:#efeff1;margin:0}.admin-card-subtitle{font-size:13px;color:#adadb8;margin:4px 0 0}.admin-card-actions{display:flex;gap:8px}.admin-card-body{padding:20px}.admin-card-body.no-padding{padding:0}.admin-table-container{overflow-x:auto;border-radius:8px;border:1px solid #26262c}.admin-table{width:100%;border-collapse:collapse;background:#18181b}.admin-table thead{background:#1f1f23;border-bottom:1px solid #26262c}.admin-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#adadb8;text-transform:uppercase;letter-spacing:.5px}.admin-table td{padding:12px 16px;font-size:14px;color:#efeff1;border-bottom:1px solid #26262c}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr.clickable{cursor:pointer}.admin-table tbody tr.clickable:hover{background:#1f1f23}.admin-table-empty,.admin-table-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#adadb8}.admin-table-spinner{font-size:32px;margin-bottom:16px;animation:spin 1s linear infinite}.admin-table-empty p{font-size:14px;margin:0}.admin-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.admin-modal{background:#18181b;border:1px solid #26262c;border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.5);max-height:90vh;display:flex;flex-direction:column}.admin-modal-sm{width:100%;max-width:400px}.admin-modal-md{width:100%;max-width:600px}.admin-modal-lg{width:100%;max-width:800px}.admin-modal-xl{width:100%;max-width:1200px}.admin-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid #26262c}.admin-modal-title{font-size:18px;font-weight:600;color:#efeff1;margin:0}.admin-modal-close{background:transparent;border:none;color:#adadb8;font-size:24px;cursor:pointer;padding:4px 8px;line-height:1;border-radius:4px;transition:all .2s}.admin-modal-close:hover{background:#26262c;color:#efeff1}.admin-modal-body{flex:1 1;padding:20px;overflow-y:auto}.admin-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:20px;border-top:1px solid #26262c}@media (max-width:768px){.admin-modal{max-height:95vh}.admin-modal-lg,.admin-modal-md,.admin-modal-sm,.admin-modal-xl{max-width:100%}.admin-table-container{overflow-x:scroll;-webkit-overflow-scrolling:touch}.admin-table td,.admin-table th{padding:8px 12px;font-size:12px}}.admin-input-wrapper,.admin-select-wrapper,.admin-textarea-wrapper{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.admin-input-label,.admin-select-label,.admin-textarea-label{font-size:.8125rem;font-weight:600;color:var(--text-secondary);letter-spacing:.2px;text-transform:uppercase}.admin-input,.admin-select,.admin-textarea{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:10px;color:var(--text-primary);padding:10px 12px;font-size:.9375rem;font-weight:400;letter-spacing:-.1px;transition:all .2s cubic-bezier(.4,0,.2,1);font-family:inherit}.admin-input::placeholder,.admin-select::placeholder,.admin-textarea::placeholder{color:var(--text-muted);opacity:1}.admin-input:disabled,.admin-select:disabled,.admin-textarea:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-surface-secondary)}.admin-input:focus,.admin-select:focus,.admin-textarea:focus{outline:none;border-color:var(--interactive-primary);box-shadow:0 0 0 3px var(--interactive-primary-subtle)}.admin-input-error,.admin-select-error,.admin-textarea-error{border-color:var(--semantic-error)}.admin-input-error:focus,.admin-select-error:focus,.admin-textarea-error:focus{border-color:var(--semantic-error);box-shadow:0 0 0 3px var(--semantic-error-subtle)}.admin-input-error-text,.admin-select-error-text,.admin-textarea-error-text{font-size:13px;color:var(--semantic-error-text);margin:0}.admin-input-helper,.admin-select-helper,.admin-textarea-helper{font-size:13px;color:var(--text-secondary);margin:0}.admin-textarea{min-height:100px;resize:vertical}.admin-select{cursor:pointer}.admin-checkbox-wrapper{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.admin-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.admin-checkbox{width:18px;height:18px;border:2px solid #26262c;border-radius:4px;background:#0e0e10;cursor:pointer;transition:all .2s;accent-color:#9147ff}.admin-checkbox:checked{background:#9147ff;border-color:#9147ff}.admin-checkbox:focus{outline:none;box-shadow:0 0 0 2px rgba(145,71,255,.2)}.admin-checkbox-text{font-size:14px;color:#efeff1}.admin-checkbox-helper{font-size:13px;color:#adadb8;margin:0 0 0 26px}.admin-toggle-wrapper{display:flex;align-items:center;justify-content:space-between;padding:24px;background:var(--bg-surface-secondary);border:1px solid var(--border-default);border-radius:12px;margin-bottom:16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.admin-toggle-label-group{display:flex;flex-direction:column;gap:4px;flex:1 1}.admin-toggle-title{font-size:.9375rem;font-weight:600;color:var(--text-primary);letter-spacing:-.1px}.admin-toggle-description{font-size:.8125rem;color:var(--text-secondary);font-weight:400;letter-spacing:-.1px}.admin-toggle{position:relative;width:48px;height:24px;background:var(--border-default);border-radius:12px;cursor:pointer;transition:background .2s cubic-bezier(.4,0,.2,1);flex-shrink:0}.admin-toggle.active{background:var(--interactive-primary)}.admin-toggle-handle{position:absolute;top:2px;left:2px;width:20px;height:20px;background:white;border-radius:50%;transition:transform .2s cubic-bezier(.4,0,.2,1)}.admin-toggle.active .admin-toggle-handle{transform:translateX(24px)}.admin-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.admin-badge-sm{padding:2px 8px;font-size:11px}.admin-badge-md{padding:4px 10px;font-size:12px}.admin-badge-lg{padding:6px 12px;font-size:13px}.admin-badge-default{background:#26262c;color:#adadb8}.admin-badge-primary{background:rgba(145,71,255,.2);color:#bf94ff}.admin-badge-success{background:rgba(0,229,153,.2);color:#00e599}.admin-badge-warning{background:rgba(255,176,0,.2);color:#ffb000}.admin-badge-danger{background:rgba(249,24,128,.2);color:#f91880}.admin-badge-info{background:rgba(0,173,239,.2);color:#00adef}.admin-stat-card{padding:16px;background:#26262c;border-radius:8px;border-left:4px solid #9147ff}.admin-stat-label{font-size:12px;color:#adadb8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.admin-stat-value{font-size:24px;font-weight:600;color:#efeff1}.admin-log-panel{background:#0e0e10;border:1px solid #26262c;color:#efeff1;padding:16px;border-radius:8px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:12px;max-height:300px;overflow-y:auto}.admin-log-entry{margin-bottom:4px}.admin-log-time{color:#adadb8}.admin-log-success{color:#00e599}.admin-log-error{color:#f91880}.admin-log-info{color:#9147ff}.admin-preview-tabs{display:flex;gap:8px;border-bottom:1px solid #26262c;padding-bottom:0}.admin-tab-btn{padding:8px 16px;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;font-weight:500;color:#adadb8;transition:all .2s}.admin-tab-btn.active{color:#9147ff;border-bottom-color:#9147ff}.admin-tab-btn:hover:not(.active){color:#efeff1}.admin-alert{padding:14px 16px;border-radius:6px;font-size:14px;margin-bottom:16px;display:flex;align-items:flex-start;gap:12px;line-height:1.5}.admin-alert-icon{font-size:18px;flex-shrink:0;margin-top:1px}.admin-alert-content{flex:1 1}.admin-alert-title{font-weight:600;margin:0 0 4px;font-size:14px}.admin-alert-message{margin:0;opacity:.95}.admin-alert-error{background:rgba(249,24,128,.15);border:1px solid rgba(249,24,128,.3);color:#ff4d8f}.admin-alert-warning{background:rgba(255,176,0,.15);border:1px solid rgba(255,176,0,.3);color:#ffb000}.admin-alert-success{background:rgba(0,229,153,.15);border:1px solid rgba(0,229,153,.3);color:#00e599}.admin-alert-info{background:rgba(0,173,239,.15);border:1px solid rgba(0,173,239,.3);color:#00adef}.admin-progress{justify-content:center;margin-bottom:24px;padding:20px}.admin-progress,.admin-progress-step{display:flex;align-items:center;gap:8px}.admin-progress-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;background:#26262c;color:#53535f;border:2px solid #26262c;transition:all .3s}.admin-progress-dot.active{background:#9147ff;color:white;border-color:#9147ff;box-shadow:0 0 0 4px rgba(145,71,255,.15)}.admin-progress-dot.completed{background:#00e599;color:#0e0e10;border-color:#00e599}.admin-progress-label{font-size:13px;color:#53535f;font-weight:500;white-space:nowrap}.admin-progress-label.active{color:#9147ff;font-weight:600}.admin-progress-label.completed{color:#00e599}.admin-progress-separator{width:40px;height:2px;background:#26262c;margin:0 4px}.admin-progress-separator.completed{background:#00e599}.admin-spinner{display:inline-block;width:16px;height:16px;border:2px solid #26262c;border-top-color:#9147ff;border-radius:50%;animation:admin-spin .8s linear infinite}.admin-spinner-sm{width:12px;height:12px;border-width:2px}.admin-spinner-md{width:16px;height:16px;border-width:2px}.admin-spinner-lg{width:24px;height:24px;border-width:3px}.admin-spinner-xl{width:32px;height:32px;border-width:3px}@keyframes admin-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.admin-loading-overlay{position:fixed;inset:0;background:rgba(14,14,16,.8);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;z-index:9999}.admin-loading-text{color:#efeff1;font-size:14px;font-weight:500}.admin-search-wrapper{position:relative;margin-bottom:16px}.admin-search-input{width:100%;padding:10px 12px 10px 40px;background:#0e0e10;border:1px solid #26262c;border-radius:6px;color:#efeff1;font-size:14px;transition:all .2s}.admin-search-input:focus{outline:none;border-color:#9147ff;box-shadow:0 0 0 2px rgba(145,71,255,.1)}.admin-search-input::placeholder{color:#53535f}.admin-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#53535f;font-size:16px;pointer-events:none}.admin-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:16px;gap:16px;margin-bottom:20px}.admin-info-item{display:flex;flex-direction:column;gap:6px}.admin-info-label{font-size:11px;font-weight:600;color:#adadb8;text-transform:uppercase;letter-spacing:.5px}.admin-info-value{font-size:14px;font-weight:500;color:#efeff1;word-break:break-word}.admin-detail-section{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #26262c}.admin-detail-section:last-of-type{border-bottom:none;padding-bottom:0}.admin-detail-label{font-size:11px;font-weight:600;color:#adadb8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.admin-detail-value{font-size:13px;color:#efeff1;word-break:break-all;line-height:1.5}.admin-url{color:#adadb8;background:#0e0e10;padding:10px 12px;border-radius:6px;border:1px solid #26262c}.admin-link,.admin-url{font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;word-break:break-all}.admin-link{color:#9147ff;text-decoration:none;transition:color .2s}.admin-link:hover{color:#a970ff;text-decoration:underline}.documents-page{min-height:100vh;background:#ffffff}.documents-header{background:#f5f5f7;padding:24px 20px;text-align:center;border-bottom:1px solid #e5e5e7;margin-bottom:40px}.documents-header h1{font-size:28px;font-weight:600;color:#1d1d1f;letter-spacing:-.5px;margin:0}.documents-container{max-width:900px;padding:20px}.documents-content-section{background:white;border-radius:16px;padding:32px;margin-bottom:20px;box-shadow:0 2px 8px rgba(0,0,0,.05);border:1px solid #e5e5e7}.document-item{padding:16px 20px;background:#f9f9fb;border:1px solid #e5e5e7;cursor:pointer;text-decoration:none;color:inherit;width:100%;text-align:left;font-family:inherit;position:relative}.document-item:hover:not(:disabled){background:white;box-shadow:0 4px 12px rgba(0,0,0,.08);border-color:#667eea}.document-item:disabled{opacity:.6;cursor:not-allowed}.document-icon{font-size:24px;width:32px;text-align:center;flex-shrink:0}.document-name{flex:1 1;font-size:15px;font-weight:500;color:#1d1d1f}.document-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tag{padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap}.tag-type{background:#f5f5f7;color:#515154;text-transform:uppercase}.tag-size{background:#fff1e0;color:#d97706}.tag-team{background:#e8f4fd;color:#006bb3}.tag-task{background:#f0f9ff;color:#0369a1}.downloading-indicator{position:absolute;right:20px;font-size:20px;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.documents-empty{text-align:center;padding:60px 20px;color:#86868b}.documents-empty .empty-icon{font-size:48px;margin-bottom:16px;opacity:.3}.documents-empty .empty-title{font-size:20px;font-weight:600;color:#515154;margin-bottom:8px}.documents-empty .empty-message{font-size:14px;color:#86868b}.documents-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;gap:16px}.documents-loading .spinner{width:40px;height:40px;border:3px solid #f5f5f7;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}.documents-loading p{color:#86868b;font-size:14px}.documents-error{text-align:center;padding:60px 20px}.documents-error .error-icon{font-size:48px;margin-bottom:16px;opacity:.5}.documents-error .error-title{font-size:24px;font-weight:600;color:#1d1d1f;margin-bottom:8px}.documents-error .error-message{font-size:16px;color:#86868b;margin-bottom:24px}.documents-error .error-retry-btn{display:inline-block;padding:10px 20px;background:#667eea;color:white;text-decoration:none;border:none;border-radius:10px;font-weight:500;font-size:15px;transition:all .2s;cursor:pointer;font-family:inherit}.documents-error .error-retry-btn:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,126,234,.3)}@media (max-width:768px){.documents-header h1{font-size:24px}.documents-content-section{padding:20px}.document-item{flex-wrap:wrap;padding:12px 16px}.document-name{width:100%;order:2;margin-top:8px}.document-tags{order:3;width:100%;margin-top:8px}}.admin-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:16px;gap:16px;margin-bottom:20px}.admin-message{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.admin-message-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.admin-message-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.cleaning-schedule-list{display:flex;flex-direction:column;gap:24px}.cleaning-month-group{background:#0e0e10;border-radius:12px;padding:20px;border:1px solid #26262c}.cleaning-month-header{font-size:18px;font-weight:600;color:#efeff1;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #26262c;display:flex;align-items:center;justify-content:space-between}.cleaning-month-count{font-size:14px;font-weight:400;color:#adadb8;margin-left:12px}.cleaning-schedules{display:grid;grid-gap:12px;gap:12px}.cleaning-schedule-item{background:#1f1f23;border:1px solid #26262c;border-radius:10px;padding:16px;display:flex;justify-content:space-between;align-items:center;transition:all .2s}.cleaning-schedule-item:hover{background:#26262c;box-shadow:0 4px 12px rgba(0,0,0,.3)}.cleaning-schedule-info{flex:1 1}.cleaning-schedule-date{font-weight:600;font-size:15px;color:#efeff1;margin-bottom:6px}.cleaning-schedule-description{font-size:14px;color:#adadb8;margin-bottom:6px}.cleaning-schedule-assigned{font-size:14px;font-weight:500;color:#9147ff;margin-top:6px}.cleaning-schedule-actions{display:flex;gap:10px;align-items:center}.admin-empty-state{text-align:center;padding:40px 20px;color:#adadb8}.driving-match-item{background:#1f1f23;border:1px solid #26262c;border-radius:10px;padding:16px;display:flex;justify-content:space-between;align-items:center;transition:all .2s}.driving-match-item:hover{background:#26262c}.driving-match-info{flex:1 1}.driving-match-date{font-size:14px;color:#adadb8;margin-bottom:4px}.driving-match-opponent{font-size:16px;font-weight:600;color:#efeff1;margin-bottom:4px}.driving-assigned-count{font-size:13px;color:#9147ff;margin-top:4px}.landing-page{min-height:100vh;background:#fafafa;display:flex;align-items:center;justify-content:center;padding:40px 20px}.landing-container{width:100%;max-width:600px;margin:0 auto}.landing-header{text-align:center;margin-bottom:48px}.landing-title-with-icon{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:8px}.landing-logo-icon{width:42px;height:42px;color:#667eea}.landing-title{font-size:36px;font-weight:700;color:#1d1d1f;margin:0;letter-spacing:-.5px}.landing-subtitle{font-size:18px;color:#6e6e73;font-weight:400}.teams-list{display:flex;flex-direction:column;gap:12px;margin-bottom:48px}.team-item{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:white;border:1px solid #e5e5e7;border-radius:12px;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer}.team-item:hover{border-color:#1d1d1f;box-shadow:0 4px 12px rgba(0,0,0,.08);transform:translateY(-2px)}.team-item:active{transform:translateY(0)}.team-info{flex:1 1;display:flex;flex-direction:column;gap:4px}.team-org{font-size:13px;color:#6e6e73;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.team-name{font-size:20px;font-weight:600;color:#1d1d1f;margin:0}.team-chevron{color:#6e6e73;transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0}.team-item:hover .team-chevron{color:#1d1d1f;transform:translateX(4px)}.no-teams{text-align:center;padding:60px 20px;color:#6e6e73;font-size:16px}.landing-footer{text-align:center;padding-top:32px;border-top:1px solid #e5e5e7}.footer-link{color:#1d1d1f;text-decoration:none;font-size:15px;font-weight:500;padding:10px 20px;border-radius:8px;display:inline-block;transition:all .2s}.footer-link:hover{background:#f5f5f7}@media (max-width:640px){.landing-page{padding:20px}.landing-title{font-size:28px}.landing-subtitle{font-size:16px}.team-item{padding:16px 20px}.team-name{font-size:18px}.team-org{font-size:12px}}.search-input{flex:1 1;min-width:250px;padding:12px 16px;border:2px solid rgba(255,255,255,.1);border-radius:12px;font-size:16px;background:rgba(255,255,255,.05);color:white;transition:all .2s}.search-input::placeholder{color:rgba(255,255,255,.5)}.search-input:focus{outline:none;border-color:#667eea;background:rgba(255,255,255,.08);box-shadow:0 0 0 4px rgba(102,126,234,.1)}.filter-select{padding:12px 16px;border:2px solid rgba(255,255,255,.1);border-radius:12px;font-size:16px;background:rgba(255,255,255,.05);color:white;cursor:pointer;transition:all .2s}.filter-select:focus{outline:none;border-color:#667eea;background:rgba(255,255,255,.08)}.filter-select option{background:#1a1a2e;color:white}.documents-grid{gap:32px}.document-section{background:rgba(255,255,255,.03);border-radius:16px;padding:24px;border:1px solid rgba(255,255,255,.1)}.section-title{font-size:20px;font-weight:600;color:white;margin-bottom:20px}.badge{background:rgba(102,126,234,.2);color:#a7b5ff;padding:4px 12px;border-radius:20px;font-size:14px;font-weight:500}.documents-list{display:flex;flex-direction:column;gap:12px}.document-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;transition:all .2s}.document-item:hover{background:rgba(255,255,255,.08);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.2)}.document-info{flex:1 1;min-width:0}.document-name{font-size:16px;font-weight:600;color:white;margin-bottom:4px}.document-description{font-size:14px;color:rgba(255,255,255,.6);margin-bottom:8px;line-height:1.5}.document-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:13px;color:rgba(255,255,255,.5);align-items:center}.team-name{color:#a7b5ff}.download-button{padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:white;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.download-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,.4)}.empty-state{text-align:center;padding:60px 20px;color:rgba(255,255,255,.5)}@media (max-width:768px){.document-item{flex-direction:column;align-items:flex-start}.download-button{width:100%}.filters-container{flex-direction:column}.search-input{width:100%}}.documents-page-content{min-height:100vh;background:#f5f5f7;padding:48px 0}.documents-container{max-width:1200px;margin:0 auto;padding:0 20px}.documents-empty-state{background:white;border-radius:16px;box-shadow:0 1px 3px rgba(0,0,0,.1);border:1px solid #e5e5e7;padding:48px;text-align:center}.empty-state-icon{width:64px;height:64px;background:#f5f5f7;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.empty-state-icon svg{width:32px;height:32px;color:#86868b}.empty-state-title{font-size:18px;font-weight:600;color:#1d1d1f;margin-bottom:8px}.empty-state-text{color:#6e6e73;font-size:14px}.documents-sections{gap:48px}.documents-section,.documents-sections{display:flex;flex-direction:column}.section-header{margin-bottom:24px}.section-title{font-size:28px;font-weight:700;color:#1d1d1f;display:flex;align-items:center;gap:12px;margin-bottom:4px}.section-icon{width:24px;height:24px;color:#667eea}.section-count{color:#6e6e73;font-size:14px;margin-top:4px}.documents-grid{display:flex;flex-direction:column;gap:16px}.document-card-modern{background:white;border-radius:12px;border:1px solid #e5e5e7;padding:24px;display:flex;align-items:flex-start;gap:16px;transition:all .2s ease}.document-card-modern:hover{border-color:#d0b3ff;box-shadow:0 4px 12px rgba(102,126,234,.15);transform:translateY(-2px)}.doc-card-icon{flex-shrink:0;width:48px;height:48px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;display:flex;align-items:center;justify-content:center;color:white;font-weight:700;font-size:10px;box-shadow:0 2px 4px rgba(102,126,234,.3)}.doc-card-content{flex:1 1;min-width:0}.doc-card-title{font-size:18px;font-weight:600;color:#1d1d1f;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-card-description{font-size:14px;color:#6e6e73;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.doc-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;color:#86868b}.doc-meta-size{font-weight:500}.doc-meta-separator{color:#d2d2d7}.doc-card-actions{flex-shrink:0;display:flex;align-items:center;gap:8px}.task-badge{padding:6px 12px;border-radius:6px;font-weight:500;font-size:13px}.task-badge-default{background:#f5f5f7;color:#6e6e73}.task-badge-blue{background:#e3f2fd;color:#1976d2}.task-badge-purple{background:#f3e5f5;color:#7b1fa2}.task-badge-green{background:#e8f5e9;color:#388e3c}.task-badge-orange{background:#fff3e0;color:#f57c00}.doc-download-btn{padding:6px 12px;background:white;color:#1e293b;border:1px solid #e2e8f0;border-radius:6px;font-weight:500;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.doc-download-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.doc-download-btn:disabled{opacity:.5;cursor:not-allowed}.download-icon,.spinner-icon{width:14px;height:14px}.spinner-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.document-card-modern{flex-direction:column;align-items:stretch}.doc-download-btn{width:100%;justify-content:center}.section-title{font-size:24px}}.calendar-subscription-section{margin:32px 0;padding:0}.calendar-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px}.calendar-header-icon{font-size:40px;flex-shrink:0}.calendar-header-content{flex:1 1}.calendar-title{font-size:28px;font-weight:600;color:#1d1d1f;margin:0 0 8px}.calendar-description{font-size:15px;color:#86868b;margin:0}.calendar-actions-card,.calendar-players-card,.calendar-preview-card{background:white;border:1px solid #e5e5e7;border-radius:16px;padding:24px;margin-bottom:16px;transition:all .2s ease}.calendar-actions-card:hover,.calendar-players-card:hover,.calendar-preview-card:hover{border-color:#d1d1d6;box-shadow:0 4px 12px rgba(0,0,0,.08)}.calendar-card-title{font-size:18px;font-weight:600;color:#1d1d1f;margin:0 0 16px}.calendar-players-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.calendar-player-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f5f5f7;border-radius:12px;border:1px solid #e5e5e7}.calendar-player-icon{width:20px;height:20px;color:#667eea;flex-shrink:0}.calendar-player-info{flex:1 1;min-width:0}.calendar-player-name{font-weight:600;font-size:14px;color:#1d1d1f;margin-bottom:2px}.calendar-player-team{font-size:13px;color:#86868b}.calendar-task-types{padding:12px 16px;background:#f5f5f7;border-radius:10px;font-size:13px;color:#515154;border-left:3px solid #667eea}.calendar-actions-buttons{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.calendar-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;border:none;transition:all .2s ease}.calendar-btn-icon{width:18px;height:18px}.calendar-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:white}.calendar-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,.4)}.calendar-btn-secondary{background:white;color:#1d1d1f;border:2px solid #e5e5e7}.calendar-btn-secondary:hover{background:#f5f5f7;border-color:#d1d1d6}.calendar-url-display{padding:16px;background:#f5f5f7;border-radius:10px;border:1px solid #e5e5e7;margin-bottom:12px}.calendar-url-code{display:block;padding:0;background:transparent;font-size:12px;color:#515154;word-break:break-all;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,monospace}.calendar-help-text{padding:12px 16px;background:#e3f2fd;border-radius:10px;font-size:13px;color:#1976d2;border-left:3px solid #1976d2}.calendar-events-grouped{display:flex;flex-direction:column;gap:24px}.calendar-org-group{border-left:3px solid #667eea;padding-left:16px}.calendar-org-name{font-size:16px;font-weight:700;color:#1d1d1f;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.calendar-player-group{margin-bottom:16px}.calendar-player-group-name{font-size:14px;font-weight:600;color:#515154;margin-bottom:8px;padding:6px 12px;background:#f5f5f7;border-radius:8px;display:inline-block}.calendar-events-list{display:flex;flex-direction:column;gap:8px}.calendar-event-item{padding:12px;background:white;border:1px solid #e5e5e7;border-radius:10px;transition:all .2s ease}.calendar-event-item:hover{border-color:#667eea;box-shadow:0 2px 8px rgba(102,126,234,.15)}.calendar-event-date{font-size:12px;font-weight:600;color:#86868b;text-transform:uppercase;margin-bottom:4px}.calendar-event-title{font-size:14px;font-weight:600;color:#1d1d1f;margin-bottom:4px}.calendar-event-role{display:inline-block;padding:4px 10px;background:#667eea;color:white;font-size:12px;font-weight:600;border-radius:6px}.calendar-loading{text-align:center;color:#86868b;padding:20px;font-size:14px}@media (max-width:768px){.calendar-header{flex-direction:column;gap:12px}.calendar-header-icon{font-size:32px}.calendar-title{font-size:24px}.calendar-players-list{grid-template-columns:1fr}.calendar-actions-buttons{flex-direction:column}.calendar-btn{width:100%;justify-content:center}.calendar-url-code{font-size:11px}}.calendar-modal-wide{max-width:900px;max-height:90vh;overflow-y:auto}.calendar-modal-wide .calendar-content{max-height:calc(90vh - 80px);overflow-y:auto}.calendar-modal .calendar-subscription-section{margin:0}.calendar-modal .calendar-header-icon{display:none}.calendar-modal .calendar-title{font-size:20px;margin-bottom:12px}.calendar-modal .calendar-description{font-size:14px;margin-bottom:20px}@media (max-width:768px){.calendar-modal-wide{max-width:95vw;max-height:95vh}}.calendar-modal-content{max-width:700px;width:95vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;background:white;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.3);margin:auto}@media (max-width:768px){.calendar-modal-content{max-width:100vw;width:100vw;max-height:100vh;height:100vh;border-radius:0;margin:0}}.task-switch-dialog{border:none;border-radius:16px;padding:0;max-width:320px;width:90vw;box-shadow:0 20px 60px rgba(0,0,0,.2);background:white;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0}.task-switch-dialog::-webkit-backdrop{background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease-out}.task-switch-dialog::backdrop{background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.task-switch-dialog[open]{animation:slideUp .25s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.dialog-content{padding:28px 24px 24px;text-align:center;position:relative}.dialog-close{position:absolute;top:12px;right:12px;background:none;border:none;font-size:20px;color:#9ca3af;cursor:pointer;padding:4px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .15s;z-index:1}.dialog-close:hover{background:#f3f4f6;color:#1f2937}.dialog-title{font-size:20px;font-weight:700;color:#1f2937;margin:0 0 6px;letter-spacing:-.3px}.current-player{font-size:13px;color:#6b7280;margin-bottom:6px}.dialog-subtitle{font-size:11px;color:#9ca3af;margin-bottom:20px;font-weight:400}.dialog-body{max-height:60vh;overflow-y:auto}.loading-container{display:flex;flex-direction:column;gap:10px}.no-players{text-align:center;padding:60px 20px;color:#9ca3af;font-size:15px}.players-list{display:flex;flex-direction:column;gap:6px}.player-button{width:100%;text-align:center;padding:12px 16px;border:none;border-radius:10px;background:#f9fafb;cursor:pointer;transition:all .15s cubic-bezier(.16,1,.3,1);position:relative}.player-button:hover:not(.disabled){background:#eff6ff;transform:scale(1.02)}.player-button:active:not(.disabled){transform:scale(.98)}.player-button.selected{background:linear-gradient(135deg,#3b82f6,#2563eb)}.player-button.selected .player-button-name{color:white}.player-button.selected .player-button-role{color:rgba(255,255,255,.9)}.player-button.disabled{opacity:.4;cursor:not-allowed}.player-button-name{font-size:14px;font-weight:600;color:#1f2937;margin-bottom:2px}.player-button-role{font-size:11px;color:#6b7280}.confirm-button{width:100%;margin-top:20px;padding:16px 24px;background:linear-gradient(135deg,#10b981,#059669);color:white;border:none;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px rgba(16,185,129,.3)}.confirm-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(16,185,129,.4)}.confirm-button:active{transform:translateY(0);box-shadow:0 2px 8px rgba(16,185,129,.3)}.message{margin-top:20px;padding:12px 16px;border-radius:10px;font-size:14px;font-weight:500;text-align:center}.message.success{background:#d1fae5;color:#065f46}.message.error{background:#fee2e2;color:#991b1b}.confirm-popup{border:none;border-radius:12px;padding:24px;max-width:280px;width:85vw;box-shadow:0 20px 60px rgba(0,0,0,.3);background:white;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;text-align:center}.confirm-popup::-webkit-backdrop{background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-popup::backdrop{background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-popup[open]{animation:popIn .2s cubic-bezier(.34,1.56,.64,1)}@keyframes popIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.confirm-popup-text{font-size:14px;color:#1f2937;margin-bottom:20px;line-height:1.5}.confirm-popup-buttons{display:flex;gap:10px}.confirm-popup-button{flex:1 1;padding:10px 16px;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.confirm-popup-button.confirm{background:linear-gradient(135deg,#10b981,#059669);color:white}.confirm-popup-button.confirm:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(16,185,129,.3)}.confirm-popup-button.cancel{background:#f3f4f6;color:#6b7280}.confirm-popup-button.cancel:hover{background:#e5e7eb}@media (max-width:640px){.task-switch-dialog{width:95vw;max-width:none}.dialog-content{padding:32px 24px 24px}.dialog-title{font-size:24px}.current-player{font-size:14px;margin-bottom:24px}.player-button{padding:16px 18px}.player-button-name{font-size:16px}}.task-hint{display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #93c5fd;border-radius:12px;margin-bottom:16px;max-width:850px;margin-left:auto;margin-right:auto;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.task-hint-icon{width:20px;height:20px;color:#3b82f6;flex-shrink:0}.task-hint span{flex:1 1;font-size:14px;color:#1e40af;font-weight:500}.task-hint-close{background:none;border:none;color:#3b82f6;font-size:20px;cursor:pointer;padding:4px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .15s;flex-shrink:0}.task-hint-close:hover{background:rgba(59,130,246,.1)}.login-prompt{display:flex;align-items:center;gap:12px;padding:16px 20px;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fbbf24;border-radius:12px;margin-bottom:20px;max-width:850px;margin-left:auto;margin-right:auto;box-shadow:0 4px 12px rgba(251,191,36,.15);animation:slideInBounce .4s cubic-bezier(.34,1.56,.64,1)}@keyframes slideInBounce{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.login-prompt-icon{width:22px;height:22px;color:#d97706;flex-shrink:0}.login-prompt span{flex:1 1;font-size:15px;color:#92400e;font-weight:600}.login-prompt-btn{padding:8px 16px;background:linear-gradient(135deg,#f59e0b,#d97706);color:white;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;flex-shrink:0}.login-prompt-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(217,119,6,.4)}.login-prompt-btn:active{transform:translateY(0)}@media (max-width:640px){.task-hint{padding:12px 14px;gap:10px}.task-hint span{font-size:13px}.login-prompt{padding:14px 16px;gap:10px}.login-prompt span{font-size:14px}.login-prompt-btn{padding:7px 14px;font-size:13px}}:root{--font-size-xs:12px;--font-size-sm:14px;--font-size-base:16px;--font-size-lg:18px;--font-size-xl:20px;--font-size-2xl:24px;--font-size-3xl:32px;--font-size-4xl:40px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:20px;--space-2xl:24px;--space-3xl:32px;--space-4xl:40px;--space-5xl:48px;--min-touch-target:44px}@media (max-width:768px){:root{--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:32px;--space-3xl:24px;--space-4xl:32px;--space-5xl:40px}}@media (max-width:480px){:root{--font-size-lg:16px;--font-size-xl:17px;--font-size-2xl:18px;--font-size-3xl:20px;--font-size-4xl:24px;--space-2xl:16px;--space-3xl:20px;--space-4xl:24px;--space-5xl:32px}}@media (max-width:768px){.driving-modal{max-height:95vh!important;border-radius:8px!important}.driving-modal>div:first-child,.driving-modal>div:nth-child(2){padding:16px!important}.driving-modal h2{font-size:1.25rem!important}.driving-modal h3{font-size:1rem!important}}@media (max-width:480px){.driving-modal{max-height:100vh!important;border-radius:0!important;margin:0!important}.driving-modal>div:first-child,.driving-modal>div:nth-child(2){padding:12px!important}.driving-modal h2{font-size:1.125rem!important}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.footer-badge{background:#000000!important}[data-theme=dark] .footer-badge{background:#374151!important}.template-page{min-height:100vh;background:#f9fafb;padding:2rem 1rem}[data-theme=dark] .template-page{background:#111827}.template-container{max-width:1280px;margin:0 auto}.template-header{margin-bottom:2rem}.template-breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280;margin-bottom:.5rem}[data-theme=dark] .template-breadcrumb{color:#9ca3af}.template-breadcrumb a{color:#6b7280;text-decoration:none}.template-breadcrumb a:hover{color:#111827}[data-theme=dark] .template-breadcrumb a:hover{color:#f3f4f6}.template-title{font-size:1.875rem;font-weight:700;color:#111827;margin:0 0 .5rem}[data-theme=dark] .template-title{color:#f3f4f6}.template-subtitle{font-size:.875rem;color:#6b7280;margin:0}[data-theme=dark] .template-subtitle{color:#9ca3af}.template-actions-bar{background:white;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;margin-bottom:1.5rem}[data-theme=dark] .template-actions-bar{background:#1f2937;border-color:#374151}.template-stats{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.template-count{font-size:1.5rem;font-weight:700;color:#111827;display:block}[data-theme=dark] .template-count{color:#f3f4f6}.template-count-label{font-size:.875rem;color:#6b7280}[data-theme=dark] .template-count-label{color:#9ca3af}.template-btn{padding:.625rem 1.25rem;background:#2563eb;color:white;border:none;border-radius:.5rem;font-weight:500;font-size:.875rem;cursor:pointer;transition:background .2s}.template-btn:hover{background:#1d4ed8}.template-btn:disabled{background:#93c5fd;cursor:not-allowed}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:1rem;gap:1rem}.template-card{background:white;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;transition:border-color .2s}.template-card:hover{border-color:#d1d5db}[data-theme=dark] .template-card{background:#1f2937;border-color:#374151}[data-theme=dark] .template-card:hover{border-color:#4b5563}.template-card-header{margin-bottom:1rem}.template-card-title{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 .5rem;display:flex;align-items:center;gap:.5rem}[data-theme=dark] .template-card-title{color:#f3f4f6}.template-card-description{font-size:.875rem;color:#6b7280;margin:0;line-height:1.5}[data-theme=dark] .template-card-description{color:#9ca3af}.template-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.template-stat-box{background:#f9fafb;padding:.75rem;border-radius:.5rem}[data-theme=dark] .template-stat-box{background:#111827}.template-stat-label{font-size:.75rem;color:#6b7280;display:block;margin-bottom:.25rem}[data-theme=dark] .template-stat-label{color:#9ca3af}.template-stat-value{font-size:.875rem;font-weight:600;color:#111827}[data-theme=dark] .template-stat-value{color:#f3f4f6}.template-card-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid #f3f4f6}[data-theme=dark] .template-card-actions{border-top-color:#374151}.template-card-btn{flex:1 1;padding:.5rem;background:white;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s}.template-card-btn:hover{background:#f9fafb}[data-theme=dark] .template-card-btn{background:#111827;border-color:#374151;color:#d1d5db}[data-theme=dark] .template-card-btn:hover{background:#1f2937}.template-empty-state{background:white;border:1px solid #e5e7eb;border-radius:.75rem;padding:3rem;text-align:center}[data-theme=dark] .template-empty-state{background:#1f2937;border-color:#374151}.template-empty-title{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 .5rem}[data-theme=dark] .template-empty-title{color:#f3f4f6}.template-empty-text{font-size:.875rem;color:#6b7280;max-width:28rem;margin:0 auto 1.5rem}[data-theme=dark] .template-empty-text{color:#9ca3af}.org-selector{background:white;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;margin-bottom:1.5rem}[data-theme=dark] .org-selector{background:#1f2937;border-color:#374151}.org-selector-label{display:block;font-size:.875rem;font-weight:500;color:#111827;margin-bottom:.5rem}[data-theme=dark] .org-selector-label{color:#f3f4f6}.org-selector-select{width:100%;max-width:16rem;padding:.5rem 1rem;background:white;border:1px solid #e5e7eb;border-radius:.5rem;color:#111827;font-size:.875rem}[data-theme=dark] .org-selector-select{background:#111827;border-color:#374151;color:#f3f4f6}.subscription-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;color:white;font-size:11px;font-weight:600;border-radius:6px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.subscription-badge-club{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 2px 4px rgba(249,115,22,.3)}.subscription-badge-family{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 4px rgba(16,185,129,.3)}.subscription-badge-team{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 2px 4px rgba(59,130,246,.3)}.mobile-filter-header{display:none}.desktop-filter-label{display:inline}@media (max-width:768px){.mobile-filter-header{display:inline!important}.desktop-filter-label{display:none!important}}