*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#0a0a1a;color:#e0e0e0;line-height:1.5}#root{display:flex;flex-direction:column;min-height:100vh}.world-map-bg{position:fixed;top:0;right:0;bottom:0;left:0;top:5rem;z-index:-1;pointer-events:none;display:flex;align-items:center;justify-content:center;opacity:.25;transition:opacity .4s ease}.world-map-bg.world-map-bg--visible{opacity:1}.location-pulse-outer{fill:#60a5fa;animation:pulse-ring 2s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes pulse-ring{0%,to{opacity:.6;transform:scale(1)}50%{opacity:0;transform:scale(2.5)}}.tour-page{display:flex;flex-direction:column;align-items:center;padding:1rem}.tour-map{width:100%;max-width:900px}.tour-map svg{pointer-events:none}.container{max-width:800px;margin:0 auto;padding:1rem;flex:1;width:100%}.nav{background:#1a1a2e;border-bottom:1px solid #2a2a3e;padding:.75rem 1rem}.nav-inner{max-width:800px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:.5rem}.nav-title{font-weight:700;font-size:1.25rem;color:#a78bfa;display:flex;align-items:center;gap:.4rem}.nav-logo{width:24px;height:24px}.nav-links{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:center}.nav-links a{color:#9ca3af;text-decoration:none;font-weight:500;padding:.2rem .55rem;border-radius:999px;background:transparent;font-size:.85rem;transition:color .15s,background .15s}.nav-links a:hover{background:#ffffff14;color:#d0d0d0}.nav-links a.active{background:#3d1d93;color:#fff}.header-row{display:flex;justify-content:space-between;align-items:center;margin:1rem 0}h2{color:#f0f0f0}h3{color:#d0d0d0;margin:1rem 0 .5rem}button{background:#3d1d93;color:#fff;border:none;padding:.4rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .15s}button:hover{background:#5b32c9}button:disabled{opacity:.5;cursor:default}.btn-sync{font-size:.85rem}.btn-delete{background:none;color:#ef4444;font-size:1.2rem;padding:0 .4rem;line-height:1}.btn-delete:hover{color:#f87171;background:none}.gw-nav{display:flex;align-items:center;gap:.25rem;margin-bottom:.5rem}.gw-arrow{flex-shrink:0;width:1.6rem;height:1.6rem;padding:0;font-size:1rem;line-height:1;border-radius:50%;background:transparent;border:none;color:#6b7280;display:flex;align-items:center;justify-content:center}.gw-arrow:hover:not(:disabled){color:#a78bfa}.gw-arrow:disabled{opacity:.2}.gw-tabs{display:flex;gap:.2rem;overflow-x:auto;flex:1;min-width:0;-webkit-overflow-scrolling:touch;scrollbar-width:none}.gw-tabs::-webkit-scrollbar{display:none}.gw-tab{padding:.2rem .55rem;font-size:.75rem;background:transparent;border:none;border-radius:999px;color:#6b7280;white-space:nowrap;flex-shrink:0}.gw-tab:hover{background:#1a1a2e;color:#9ca3af}.gw-tab.active{background:#3d1d93;color:#fff}.gw-this-week{flex-shrink:0;background:none;border:none;color:#a78bfa;font-size:.7rem;padding:.2rem .5rem;cursor:pointer;white-space:nowrap}.gw-this-week:hover{color:#c4b5fd;background:none}.fixture-list{background:#1a1a2e;border-radius:8px;padding:1rem;margin:1rem 0}.fixtures-grid{display:grid;gap:.4rem}.fixture{display:grid;grid-template-columns:1fr auto 1fr;gap:.5rem;align-items:center;padding:.3rem .5rem;font-size:.9rem}.fixture .team-name:first-child{justify-content:flex-end}.fixture .team-name:last-child{justify-content:flex-start}.fixture .team-name{display:flex;align-items:center;gap:.4rem}.fixture .score{text-align:center;color:#9ca3af;min-width:3rem}.badge-img{width:20px;height:20px;object-fit:contain;vertical-align:middle;flex-shrink:0}.badge-img-sm{width:14px;height:14px}.fixture .winner{color:#34d399;font-weight:600}.picks-section{margin:1rem 0}.pick-row{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:#1a1a2e;border-radius:6px;margin-bottom:.4rem}.pick-row.eliminated{opacity:.5}.pick-player{display:flex;align-items:center;gap:.5rem;min-width:100px}.pick-selection{flex:1;display:flex;justify-content:flex-end;align-items:center}.current-pick{display:flex;align-items:center;gap:.5rem}.eliminated-label{color:#f87171;font-weight:600;font-size:.85rem}.pfr-grid{display:grid;grid-template-columns:auto minmax(0,1fr) 24px auto 24px minmax(0,1fr);gap:.3rem .4rem;align-items:center;font-size:.85rem}.pfr-row{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;align-items:center;background:#1a1a2e;border-radius:6px;padding:.5rem .75rem}.pfr-row-winner{box-shadow:0 0 8px 2px #34d39966;border:1px solid rgba(52,211,153,.3)}.pfr-row-winner .pfr-player{color:#34d399}.pfr-row.eliminated{opacity:.5;padding:.3rem .75rem;font-size:.8rem}.pfr-player{white-space:nowrap}.pfr-no-pick{grid-column:2 / -1;text-align:center}.pfr-name{display:flex;align-items:center;gap:.3rem;color:#6b7280;white-space:nowrap}.pfr-home{justify-content:flex-end}.pfr-away{justify-content:flex-start}.pfr-name.picked{color:#f0f0f0;font-weight:600}.pfr-badge{display:flex;align-items:center;justify-content:center}.pfr-score{color:#9ca3af;text-align:center;min-width:2.5rem}.pfr-name .rival-icon{font-size:.75rem}@media(max-width:600px){.pfr-team-text{display:none}.pfr-grid{grid-template-columns:auto auto 24px auto 24px auto}.stats-table.teams-breakdown{min-width:700px}.stats-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.team-name-text{display:none}}.eliminated-section{margin-top:.5rem;padding:.4rem .75rem;font-size:.8rem;color:#6b7280}.eliminated-section .eliminated-label{color:#f87171;font-weight:600;font-size:.8rem}.btn-pick{font-size:.85rem;padding:.4rem .8rem}.btn-snooze{font-size:.75rem;padding:.3rem .6rem;background:#64748b;color:#fff;margin-left:.4rem}.btn-snooze:hover{background:#475569}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200}.modal-content{background:#1a1a2e;border:1px solid #3d1d93;border-radius:10px;padding:1rem 1.25rem;width:90%;max-width:360px;max-height:80vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.modal-header h3{margin:0;font-size:1rem}.modal-fixtures{display:flex;flex-direction:column;gap:.3rem}.pick-fixture{display:grid;grid-template-columns:1fr auto 1fr;gap:.3rem;align-items:center}.pick-fixture .pick-team-btn:first-child{justify-content:flex-end}.pick-fixture .pick-team-btn:last-child{justify-content:flex-start}.pick-vs{text-align:center;color:#6b7280;font-size:.75rem}.pick-team-btn{padding:.35rem .5rem;font-size:.8rem;border-radius:4px;background:#2a2a3e;color:#e0e0e0;border:1px solid transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem;transition:background .15s,border-color .15s}.pick-team-btn:hover:not(:disabled){background:#3d1d93;border-color:#5b32c9}.pick-team-btn.disabled,.pick-team-btn:disabled{opacity:.35;cursor:default}select{background:#2a2a3e;color:#e0e0e0;border:1px solid #4a4a6a;border-radius:6px;padding:.4rem .6rem;font-size:.85rem;max-width:280px}select option:disabled{color:#666}.badge{display:inline-block;padding:.1rem .5rem;border-radius:4px;font-size:.75rem;font-weight:700}.badge.win{background:#065f46;color:#34d399}.badge.loss{background:#7f1d1d;color:#f87171}.badge.draw{background:#78350f;color:#fbbf24}.badge.pending{background:#374151;color:#9ca3af}.badge-live{display:inline-flex;align-items:center;gap:.25rem;opacity:.85}.stats-section{margin-bottom:1.5rem;border-top:1px solid #2a2a3e}.stats-section>summary{list-style:none;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:.5rem;padding:.25rem 0}.stats-section>summary::-webkit-details-marker{display:none}.stats-section>summary:before{content:"▸";color:#9ca3af;font-size:.9rem;transition:transform .15s ease;display:inline-block}.stats-section[open]>summary:before{transform:rotate(90deg)}.stats-section>summary>h2{margin:0;display:inline}.stats-section h3{margin:1rem 0 .25rem;color:#9ca3af;font-size:.95rem;font-weight:600}table{width:100%;border-collapse:collapse;margin:.5rem 0 1.5rem;font-size:.9rem}th,td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #2a2a3e}th{color:#9ca3af;font-weight:600}td.win{color:#34d399}td.loss{color:#f87171}td.draw{color:#fbbf24}.muted{color:#6b7280}.standings-card{background:#1a1a2e;border-radius:10px;padding:.25rem .5rem;max-width:550px}.standings-table{margin:0}.standings-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;padding:.6rem .75rem;border-bottom:2px solid #2a2a3e}.standings-table td{padding:.6rem .75rem;text-align:center}.standings-table td:nth-child(2){text-align:left}.standings-table th:nth-child(2){text-align:left}.standings-rank{color:#6b7280;font-weight:700;width:1.5rem;text-align:center}.standings-pts{font-weight:700;font-size:1.05rem;color:#a78bfa}.standings-leader td{background:#a78bfa14}.standings-leader .standings-rank,.standings-leader .standings-pts{color:#fbbf24}.round-card{background:#1a1a2e;border-radius:8px;padding:.75rem 1rem;margin-bottom:.75rem}.round-card h4{color:#d0d0d0;margin-bottom:.3rem}.round-card-header{margin-bottom:.5rem}.round-winner{font-size:.85rem;color:#34d399;margin-top:.2rem}.round-table-wrap{overflow-x:auto}.round-detail-table{font-size:.8rem;margin:0}.round-detail-table th{font-size:.75rem;white-space:nowrap;text-align:center}.round-detail-table th:first-child{text-align:left}.round-detail-table td{white-space:nowrap;text-align:center}.round-detail-table td:first-child{text-align:left}.round-detail-table .pick-team{margin-right:.3rem}.round-detail-table .badge-img{width:18px;height:18px;vertical-align:middle}.round-detail-table .badge{font-size:.65rem;padding:.05rem .35rem;vertical-align:middle}.pick-cell{display:inline-grid;grid-template-columns:1.3rem 18px auto 18px 1.3rem;align-items:center;gap:.1rem;justify-items:center}.pc-result-slot{display:flex;justify-content:center;min-width:1.3rem}.pc-vs{color:#6b7280;font-size:.65rem}.pc-badge-slot{width:20px}.pc-dim{opacity:.5}.rival-cell{background:#fb922426;box-shadow:inset 0 0 8px #fb92244d,0 0 6px #fb641440;animation:fire-glow 2s ease-in-out infinite alternate}@keyframes fire-glow{0%{box-shadow:inset 0 0 6px #fb922440,0 0 4px #fb641433}to{box-shadow:inset 0 0 12px #fb641466,0 0 10px #ef441459}}.round-winner-row td{background:#34d39914}.round-detail-table .player-header{position:sticky;left:0;background:#1a1a2e;z-index:1;text-align:left}.round-detail-table .round-winner-row .player-header{color:#34d399;background:#1c2836}.pending-winner{display:flex;align-items:center;margin-top:.3rem;font-size:.85rem}.pending-winner select{font-size:.85rem;max-width:180px}.stats-table-wrap{overflow-x:auto}.stats-table th{white-space:nowrap;text-align:center}.stats-table th:first-child{text-align:left;position:sticky;left:0;background:#0a0a1a;z-index:1}.stats-table td{text-align:center;white-space:nowrap}.stats-table td:first-child{text-align:left;position:sticky;left:0;background:#0a0a1a;z-index:1}.stats-table.teams-breakdown td:last-child{text-align:left}.stats-table.teams-breakdown td,.stats-table.teams-breakdown th{text-align:left}.teams-cell{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.teams-grouped{display:flex;flex-direction:column;gap:.25rem}.teams-group-row{display:grid;grid-template-columns:1rem auto;gap:.15rem .3rem;align-items:start}.teams-group-badges{display:flex;flex-wrap:wrap;gap:.2rem;align-items:center}.team-count{display:inline-flex;align-items:center;gap:.15rem}.team-name-cell{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap}.stats-table.teams-grid td,.stats-table.teams-grid th{text-align:center}.stats-table.teams-grid td:first-child,.stats-table.teams-grid th:first-child{text-align:left}.teams-grid-wrap{max-height:70vh;overflow-y:auto}.stats-table.teams-grid thead th{position:sticky;top:0;background:#0a0a1a;z-index:2}.stats-table.teams-grid thead th:first-child{z-index:3}.stats-table.teams-grid .badge-img{width:28px;height:28px}.team-count-num{font-size:.75rem;color:#9ca3af;font-weight:600;min-width:1rem;line-height:20px}.player-tabs{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:1rem}.player-tab{color:#9ca3af;font-weight:500;background:#ffffff0d;border:none;border-radius:6px;padding:.35rem .75rem;font-size:.85rem;cursor:pointer;transition:color .15s,background .15s}.player-tab:hover{background:#ffffff14;color:#d0d0d0}.player-tab.active{background:#3d1d93;color:#fff}.history-round{margin-bottom:1.5rem}.history-round-header{margin-bottom:.4rem}.history-table{width:100%;border-collapse:collapse;font-size:.85rem}.history-table th{text-align:left;padding:.3rem .5rem;border-bottom:1px solid #2a2a3e;color:#9ca3af;font-weight:600;white-space:nowrap}.history-table td{padding:.35rem .5rem;border-bottom:1px solid #1a1a2e;white-space:nowrap}.history-eliminated td{color:#f87171;opacity:.5}.chart-section{margin:1.5rem 0}.chart-section h3{margin-bottom:.75rem}.chart-container{background:#1a1a2e;border-radius:8px;padding:1rem .5rem .5rem}.error{color:#f87171}.site-footer{text-align:center;padding:2rem 1rem 1rem;font-size:.6rem;color:#2a2a3e;display:flex;justify-content:center;gap:.4rem}.site-footer a{color:#2a2a3e;text-decoration:none}.site-footer a:hover{color:#4a4a6a}.dev-toolbar{position:fixed;bottom:1rem;right:1rem;z-index:1000}.dev-toggle{font-size:.75rem;padding:.3rem .6rem;background:#1a1a2e;border:1px solid #3d1d93;border-radius:4px;color:#9ca3af}.dev-toggle:hover{background:#2a2a3e}.dev-panel{position:absolute;bottom:100%;right:0;margin-bottom:.5rem;background:#1a1a2e;border:1px solid #3d1d93;border-radius:8px;padding:.75rem;display:flex;flex-direction:column;gap:.5rem;min-width:220px}.dev-row{display:flex;gap:.4rem;align-items:center}.dev-status{font-size:.8rem;color:#a78bfa;font-weight:600}.dev-input{background:#2a2a3e;color:#e0e0e0;border:1px solid #4a4a6a;border-radius:4px;padding:.3rem .5rem;font-size:.8rem;width:50px}.dev-btn{font-size:.75rem;padding:.3rem .6rem;background:#3d1d93}.dev-btn-reset{background:#7f1d1d}.dev-btn-reset:hover{background:#991b1b}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#ef4444;animation:live-pulse 1.5s ease-in-out infinite;flex-shrink:0}@keyframes live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.fixture.live .score{color:#f0f0f0;display:flex;align-items:center;justify-content:center;gap:.3rem}.live-score{font-size:.75rem;color:#9ca3af}.pfr-score-live{color:#f0f0f0;display:flex;align-items:center;justify-content:center;gap:.25rem}
