:root{--bg: #0f1114;--bg-card: #1a1d23;--bg-hover: #22262e;--border: #2a2e36;--text: #e4e4e7;--text-muted: #8b8d94;--accent: #22c55e;--accent-dim: #166534;--accent-glow: rgba(34, 197, 94, .15);--red: #ef4444;--amber: #f59e0b;--radius: 8px;--max-w: 1060px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.site-header{border-bottom:1px solid var(--border);padding:1rem 1.5rem}.site-header .inner{max-width:var(--max-w);margin:0 auto;display:flex;align-items:center;justify-content:space-between}.site-header .logo{font-size:1.25rem;font-weight:700;color:var(--accent);letter-spacing:-.5px}.site-header .logo:hover{text-decoration:none}.site-header nav{display:flex;gap:1.5rem}.site-header nav a{color:var(--text-muted);font-size:.9rem;font-weight:500;transition:color .15s}.site-header nav a:hover,.site-header nav a.active{color:var(--text);text-decoration:none}.nav-toggle{display:none;background:transparent;border:0;padding:.4rem;cursor:pointer;width:36px;height:36px;flex-direction:column;justify-content:center;gap:5px}.nav-toggle span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:transform .2s,opacity .2s}.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:640px){.site-header .inner{flex-wrap:wrap}.nav-toggle{display:flex}.site-header nav{display:none;flex-basis:100%;flex-direction:column;gap:0;margin-top:.85rem;padding-top:.75rem;border-top:1px solid var(--border)}.site-header nav.open{display:flex}.site-header nav a{padding:.7rem .25rem;font-size:1rem;border-bottom:1px solid var(--border)}.site-header nav a:last-child{border-bottom:none}}.site-footer{border-top:1px solid var(--border);padding:1.5rem;text-align:center;color:var(--text-muted);font-size:.8rem;margin-top:auto}.footer-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:1.25rem;margin-bottom:.75rem}.footer-nav-legal{gap:1rem;margin-bottom:1rem;padding-top:.75rem;border-top:1px solid var(--border)}.footer-nav-legal a{font-size:.72rem;opacity:.8}.footer-nav a{color:var(--text-muted);font-size:.78rem;font-weight:500;transition:color .15s}.footer-nav a:hover{color:var(--text);text-decoration:none}.footer-copy{margin-bottom:.5rem;font-size:.78rem}.site-footer .disclaimer{font-size:.7rem;line-height:1.55;max-width:680px;margin:.5rem auto 0;opacity:.6}.site-footer .disclaimer a{color:var(--text-muted);text-decoration:underline}.home-newsletter{text-align:center;padding:2.5rem 0 1rem;margin-top:1rem;border-top:1px solid var(--border)}.home-newsletter-sub{color:var(--text-muted);font-size:.95rem;max-width:480px;margin:0 auto 1.5rem}.home-newsletter-form{max-width:520px;margin:0 auto}.main{max-width:var(--max-w);margin:0 auto;padding:2rem 1.5rem}.hero{text-align:center;padding:3rem 0 2.5rem}.hero h1{font-size:2.25rem;font-weight:800;letter-spacing:-1px;margin-bottom:.5rem}.hero h1 .accent{color:var(--accent)}.hero p{color:var(--text-muted);font-size:1.1rem;max-width:520px;margin:0 auto}.section-title{font-size:1.1rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.search-wrap{position:relative;max-width:480px;margin:1.5rem auto 2.5rem}.search-input{width:100%;background:var(--bg-card);border:1px solid var(--border);color:var(--text);padding:.75rem 1rem;border-radius:var(--radius);font-size:1rem;outline:none;transition:border-color .15s}.search-input:focus{border-color:var(--accent)}.search-input::placeholder{color:var(--text-muted)}.search-results{position:absolute;top:100%;left:0;right:0;background:var(--bg-card);border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius) var(--radius);max-height:480px;overflow-y:auto;z-index:20;display:none}.search-results.open{display:block}.search-result-item{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;cursor:pointer;transition:background .1s;text-decoration:none;color:var(--text)}.search-result-item:hover{background:var(--bg-hover);text-decoration:none}.search-result-color{width:6px;height:28px;border-radius:3px;flex-shrink:0}.search-result-name{font-size:.9rem;font-weight:500}.search-result-meta{font-size:.75rem;color:var(--text-muted)}.search-results-group-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted);padding:.55rem 1rem .25rem;border-top:1px solid var(--border)}.search-results-group-label:first-child{border-top:none}.search-result-emoji{width:24px;font-size:1.05rem;text-align:center;flex-shrink:0;line-height:1}.section-title-row{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.section-title-link{margin-left:auto;font-size:.82rem;font-weight:500;color:var(--text-muted);text-decoration:none}.section-title-link:hover{color:var(--accent);text-decoration:none}.sport-icon-filters{display:flex;gap:.25rem}.sport-icon-btn{background:none;border:1px solid transparent;border-radius:6px;padding:.2rem .45rem;font-size:1rem;cursor:pointer;transition:all .1s;line-height:1;color:var(--text-muted)}.sport-icon-btn:hover{background:var(--bg-card)}.sport-icon-btn.active{background:var(--bg-card);border-color:var(--accent)}.sport-icon-btn[data-sport=""]{font-size:.75rem;font-weight:600;padding:.25rem .5rem}.league-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:2.5rem}.league-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1rem;text-align:center;transition:border-color .15s,background .15s;cursor:pointer;text-decoration:none;color:var(--text)}.league-card:hover{border-color:var(--accent);background:var(--bg-hover);text-decoration:none}.league-card .league-name{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.league-card .league-sport{font-size:.75rem;color:var(--text-muted);margin-top:.25rem}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.team-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;transition:border-color .15s;text-decoration:none;color:var(--text);display:flex;align-items:center;gap:.75rem}.team-card:hover{border-color:var(--accent);text-decoration:none}.team-color-bar{width:4px;height:36px;border-radius:2px;flex-shrink:0}.team-card-info{flex:1;min-width:0}.team-card-name{font-size:.95rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-card-detail{font-size:.78rem;color:var(--text-muted)}.division-group{margin-bottom:1.5rem}.division-title{font-size:.85rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.game-list{display:flex;flex-direction:column;gap:.5rem}.game-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:.85rem 1.1rem;transition:border-color .15s;text-decoration:none;color:var(--text);display:block}.game-card:hover{border-color:var(--accent);text-decoration:none}.game-card-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.game-card-teams{font-size:.95rem;font-weight:500;flex:1}.game-card-venue{font-size:.8rem;color:var(--text-muted);margin-top:.2rem}.game-card-date{font-size:.8rem;color:var(--text-muted);text-align:right;white-space:nowrap}.game-card-score{font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums}.status-badge{font-size:.7rem;padding:.15rem .5rem;border-radius:10px;font-weight:600;text-transform:uppercase}.status-badge.scheduled{background:var(--accent-glow);color:var(--accent)}.status-badge.live{background:#ef444426;color:var(--red)}.status-badge.final{background:var(--bg-hover);color:var(--text-muted)}.team-hero{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.team-color-swatch{width:48px;height:48px;border-radius:var(--radius);flex-shrink:0}.team-hero-info h1{font-size:1.5rem;font-weight:700;text-transform:capitalize}.team-hero-meta{font-size:.85rem;color:var(--text-muted)}.venue-detail{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.5rem}.venue-detail-name{font-size:1.1rem;font-weight:600;margin-bottom:.25rem}.venue-detail-location{font-size:.85rem;color:var(--text-muted);margin-bottom:.75rem}.venue-detail-grid{display:flex;flex-wrap:wrap;gap:1.5rem}.venue-detail-stat{display:flex;flex-direction:column;gap:.1rem}.venue-detail-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.venue-detail-value{font-size:.9rem;font-weight:500}.trip-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.trip-header h1{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.trip-header .trip-date{font-size:.95rem;color:var(--text-muted)}.trip-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:2rem}.trip-action-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;background:var(--accent);color:#000;padding:.85rem 1.25rem;border-radius:var(--radius);font-size:.95rem;font-weight:600;transition:opacity .15s;text-decoration:none}.trip-action-btn:hover{opacity:.9;text-decoration:none}.trip-action-btn.secondary{background:var(--bg-card);border:1px solid var(--border);color:var(--text)}.trip-action-btn.secondary:hover{border-color:var(--accent)}.venue-grid{display:flex;flex-direction:column;gap:.75rem}.venue-browse-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;transition:border-color .15s}.venue-browse-card:hover{border-color:var(--text-muted)}.venue-browse-name{font-size:1rem;font-weight:600}.venue-browse-location{font-size:.85rem;color:var(--text-muted)}.venue-browse-details{display:flex;flex-wrap:wrap;gap:1.25rem;margin-top:.5rem;font-size:.85rem}.venue-browse-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.venue-browse-tag{font-size:.7rem;padding:.1rem .45rem;border-radius:10px;border:1px solid var(--border);color:var(--text-muted)}.venue-browse-teams{font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.venue-map{height:350px;border-radius:var(--radius);border:1px solid var(--border);margin-bottom:1.5rem;z-index:1}.venue-pin{background:none;border:none}.venue-pin-dot{width:10px;height:10px;background:var(--accent);border:2px solid #fff;border-radius:50%;box-shadow:0 0 6px #22c55e80}.leaflet-popup-content-wrapper{background:var(--bg-card);color:var(--text);border-radius:var(--radius);border:1px solid var(--border);box-shadow:0 4px 12px #0006}.leaflet-popup-tip{background:var(--bg-card)}.leaflet-popup-content{font-size:.82rem;line-height:1.4;margin:.6rem .8rem}.leaflet-popup-content strong{color:var(--accent)}.filter-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.sport-btn{background:var(--bg-card);border:1px solid var(--border);color:var(--text-muted);padding:.4rem .9rem;border-radius:20px;cursor:pointer;font-size:.85rem;transition:all .15s}.sport-btn:hover{border-color:var(--text-muted)}.sport-btn.active{background:var(--accent);color:#000;border-color:var(--accent);font-weight:600}.sport-btn-icon{font-size:1.1rem;padding:.35rem .6rem;line-height:1}.filter-select{background:var(--bg-card);border:1px solid var(--border);color:var(--text);padding:.4rem 2rem .4rem .9rem;border-radius:20px;cursor:pointer;font-size:.85rem;outline:none;transition:border-color .15s;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%238b8d94' stroke-width='1.5'><path d='M3 5l3 3 3-3'/></svg>");background-repeat:no-repeat;background-position:right .7rem center;background-size:12px}.filter-select:hover{border-color:var(--text-muted)}.filter-select:focus{border-color:var(--accent)}.pager{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.5rem 0;margin-top:.5rem}.pager-btn{background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem 1.25rem;font-size:.88rem;cursor:pointer;transition:border-color .15s,background .15s}.pager-btn:hover:not(:disabled){border-color:var(--accent);background:var(--bg-hover)}.pager-btn:disabled{opacity:.35;cursor:default}.pager-info{font-size:.85rem;color:var(--text-muted)}.how-it-works{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2.5rem}.step-card{text-align:center;padding:1.5rem 1rem}.step-number{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--accent-glow);color:var(--accent);font-size:1.1rem;font-weight:700;margin-bottom:.75rem}.step-card h3{font-size:1rem;font-weight:600;margin-bottom:.35rem}.step-card p{font-size:.85rem;color:var(--text-muted)}.featured-games{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem;margin-bottom:2.5rem}.featured-game-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--text);transition:border-color .15s,transform .15s;display:flex;flex-direction:column}.featured-game-card:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}.fg-poster{width:100%;aspect-ratio:16 / 9;background:linear-gradient(135deg,#1a2a1a,#0f1114 60%,#1a1d23);overflow:hidden;flex-shrink:0}.fg-poster img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block}.fg-poster-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2rem;opacity:.5}.fg-body{padding:.85rem 1rem 1rem;display:flex;flex-direction:column;gap:.35rem;flex:1}.fg-sport{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.fg-title{font-size:1rem;font-weight:700;color:var(--accent);line-height:1.25}.fg-info{font-size:.75rem;color:var(--text-muted);margin-top:auto}.featured-venues{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;margin-bottom:2.5rem}.featured-venue{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color .15s,transform .15s;text-decoration:none;color:var(--text);display:block}.featured-venue:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}.featured-venue-img{height:100px;background:linear-gradient(135deg,#1a2a1a,#1a1d23);display:flex;align-items:center;justify-content:center}.featured-venue-img-icon{font-size:2rem;opacity:.3}.featured-venue-body{padding:.75rem 1rem}.featured-venue-name{font-size:.9rem;font-weight:600;margin-bottom:.15rem}.featured-venue-location{font-size:.78rem;color:var(--text-muted)}.featured-venue-capacity{font-size:.75rem;color:var(--accent);margin-top:.25rem}.about-section{margin-bottom:2.5rem}.about-section h2{font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.about-section p{color:var(--text-muted);font-size:.95rem;margin-bottom:.5rem;line-height:1.6}.tag{background:var(--accent-dim);color:var(--accent);padding:.15rem .5rem;border-radius:10px;font-size:.75rem;font-weight:500}.loading,.empty{text-align:center;padding:3rem;color:var(--text-muted)}.signup-cta{display:inline-block;margin-top:1rem;background:var(--accent);color:#000;padding:.65rem 1.5rem;border-radius:var(--radius);font-weight:600;font-size:.95rem;transition:opacity .15s}.signup-cta:hover{opacity:.9;text-decoration:none}.data-count{font-size:.8rem;color:var(--text-muted);margin-bottom:1rem}.data-search-input{width:100%;background:var(--bg-card);border:1px solid var(--border);color:var(--text);padding:.6rem .9rem;border-radius:var(--radius);font-size:.9rem;outline:none;transition:border-color .15s}.data-search-input:focus{border-color:var(--accent)}.data-search-input::placeholder{color:var(--text-muted)}.event-wiki{display:flex;gap:1rem;align-items:flex-start;background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:1rem}.event-wiki-body{flex:1;min-width:0}.event-wiki-label{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.45rem}.event-wiki-extract{font-size:.9rem;line-height:1.55;margin-bottom:.6rem;color:var(--text);opacity:.92}.event-wiki-link{font-size:.82rem;font-weight:600;color:var(--accent);text-decoration:none}.event-wiki-link:hover{text-decoration:underline}.event-wiki-thumb{width:110px;height:auto;max-height:140px;object-fit:cover;border-radius:4px;flex-shrink:0}@media(max-width:560px){.event-wiki{flex-direction:column-reverse}.event-wiki-thumb{width:100%;max-height:180px}}.event-wiki-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.6rem;margin-bottom:1.75rem}.event-wiki-fact{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:.65rem .85rem}.event-wiki-fact-label{font-size:.65rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.2rem}.event-wiki-fact-value{font-size:.88rem;font-weight:600;line-height:1.3;color:var(--text)}.trip-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:2rem}.trip-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem .85rem;text-decoration:none;color:var(--text);transition:border-color .15s,transform .15s,background .15s}.trip-btn:hover{border-color:var(--accent);background:var(--bg-hover);transform:translateY(-2px);text-decoration:none}.trip-btn-icon{font-size:1.4rem;line-height:1;margin-bottom:.25rem}.trip-btn-label{font-size:.9rem;font-weight:700;color:var(--accent)}.trip-btn-sub{font-size:.72rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}@media(max-width:600px){.hero h1{font-size:1.6rem}.team-grid,.trip-actions,.how-it-works{grid-template-columns:1fr}}
