:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden}html{width:100%;max-width:100vw;overflow-x:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(max-width:768px){input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=date],textarea,select{font-size:16px!important}input,textarea,select{background-color:#fff!important;color:#333!important;-webkit-appearance:none;appearance:none}html{scroll-behavior:smooth}body{overflow-x:hidden;width:100%}}button,.btn,[role=button]{-webkit-tap-highlight-color:rgba(76,175,80,.1);tap-highlight-color:rgba(76,175,80,.1)}@supports (padding: max(0px)){.navbar,.modal-content{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.game-results{width:100%;max-width:1400px;margin:0 auto}.game-filter-bar{position:sticky;top:0;z-index:10;background:#fff;border:1px solid #e0e0e0;border-radius:0 0 12px 12px;padding:.75rem 1.25rem;margin-bottom:1.25rem;box-shadow:0 4px 12px #0000001a}.filter-level-row{margin-bottom:.75rem}.game-filter-bar .level-hint{display:none}.filter-controls-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.filter-search-wrap{position:relative;flex:1 1 220px;min-width:180px}.filter-search-icon{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);font-size:.85rem;pointer-events:none}.filter-search{width:100%;padding:.45rem 2rem;border:1px solid #ccc;border-radius:8px;font-size:.9rem;outline:none;box-sizing:border-box;transition:border-color .15s}.filter-search:focus{border-color:#667eea}.filter-search-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.1rem;color:#999;cursor:pointer;line-height:1;padding:0}.filter-search-clear:hover{color:#333}.filter-state-select{padding:.45rem 2rem .45rem .75rem;border:2px solid #667eea;border-radius:8px;font-size:.9rem;background:#f0f2ff;color:#3a3a5c;font-weight:600;cursor:pointer;outline:none;transition:border-color .15s,background .15s;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23667eea' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center}.filter-state-select:focus,.filter-state-select:hover{border-color:#4f5bd5;background-color:#e8ebff}.filter-state-select.has-value{background-color:#667eea;color:#fff;border-color:#667eea;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23ffffff' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")}.filter-toggle{display:flex;align-items:center;gap:.4rem;font-size:.88rem;color:#444;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.filter-toggle input[type=checkbox]{cursor:pointer;width:15px;height:15px;accent-color:#667eea}.filter-toggle-hint{font-size:.78rem;color:#888;font-weight:400}.filter-clear-btn{padding:.4rem .9rem;background:#f5f5f5;border:1px solid #ccc;border-radius:8px;font-size:.85rem;color:#555;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap}.filter-clear-btn:hover{background:#ebebeb;border-color:#999}.filter-clear-inline{background:none;border:none;color:#667eea;text-decoration:underline;cursor:pointer;font-size:inherit;padding:0}@media(max-width:600px){.filter-controls-row{flex-direction:column;align-items:flex-start}.filter-search-wrap{width:100%}}.results-summary{padding:1rem;background:#f5f5f5;border-radius:8px;margin-bottom:1.5rem;text-align:center;font-size:1.1rem}.calendar-view{display:flex;flex-direction:column;gap:1.5rem}.calendar-day{background:#fff;border:1px solid #e0e0e0;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000000d}.day-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center}.day-date{font-size:1.3rem;font-weight:600}.day-count{font-size:.9rem;opacity:.9;background:#fff3;padding:.25rem .75rem;border-radius:12px}.day-games{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;padding:1.5rem}.game-card{display:flex;flex-direction:column;border:2px solid #e0e0e0;border-radius:8px;padding:1rem;background:#fafafa;transition:all .2s ease;cursor:pointer}.game-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.game-card.selected{border-color:#28a745;background:#e8f5e9;box-shadow:0 4px 12px #28a74533}.game-card.selected:hover{border-color:#218838;box-shadow:0 6px 16px #28a7454d}.game-card.disabled{opacity:.5;cursor:not-allowed;background:#f5f5f5;border-color:#d0d0d0}.game-card.disabled:hover{border-color:#d0d0d0;box-shadow:none;transform:none}.selected-check{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:#28a745;color:#fff;border-radius:50%;font-size:.6rem;font-weight:700;margin-right:.25rem;vertical-align:middle;flex-shrink:0}.capacity-badge{display:inline-block;margin-left:.4rem;padding:.15rem .4rem;background:#ff5722;color:#fff;border-radius:4px;font-size:.7rem;font-weight:600}.selected-count{color:#28a745}.game-venue{font-size:.88rem;font-weight:700;color:#333;line-height:1.4;margin-bottom:.4rem;padding-bottom:.4rem;border-bottom:1px solid #eee}.game-matchup{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .35rem;margin-bottom:.45rem}.game-matchup .team{font-size:.92rem;font-weight:600;line-height:1.4}.game-matchup .at{font-size:.75rem;color:#bbb;flex-shrink:0}.card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.35rem;border-top:1px solid #eee}.game-time{font-size:.78rem;color:#777;font-weight:500}.card-badges{display:flex;gap:.3rem;align-items:center}.badge{display:inline-flex;align-items:center;font-size:.65rem;font-weight:700;padding:.2rem .45rem;border-radius:4px;background:#ff9800;color:#fff}.level-badge{display:inline-flex;align-items:center;font-size:.65rem;font-weight:700;letter-spacing:.03em;padding:.2rem .45rem;border-radius:4px;color:#fff;text-transform:uppercase}@media(max-width:768px){.day-games{grid-template-columns:1fr}.day-header{flex-direction:column;gap:.5rem;align-items:flex-start}}.loading,.no-results{text-align:center;padding:3rem;color:#666;font-size:1.1rem}.travel-inline{display:flex;align-items:center;justify-content:space-between;background:#f8f9fa;border-left:3px solid #6c757d;border-radius:3px;padding:.2rem .25rem;margin:.1rem 0 .25rem;font-size:.7rem;transition:all .2s ease;gap:.25rem}.travel-inline:hover{background:#f1f3f5}.travel-inline.feasible{border-left-color:#28a745;background:#f1f8f4}.travel-inline.warning{border-left-color:#ffc107;background:#fffbf0}.travel-inline.infeasible{border-left-color:#dc3545;background:#fef5f5}.travel-mode-compact{display:flex;gap:.15rem;flex-shrink:0}.travel-toggle-btn{width:22px;height:22px;border-radius:50%;border:1px solid #dee2e6;background:#e9ecef;color:#666;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.5;transition:all .2s ease;padding:0;flex-shrink:0;overflow:hidden}.travel-toggle-btn:hover{opacity:.7;transform:scale(1.1)}.travel-toggle-btn.active{background:#667eea;border-color:#667eea;color:#fff;opacity:1;box-shadow:0 0 2px #667eea40}.travel-toggle-btn.active:hover{transform:scale(1.05)}.travel-metrics{display:flex;align-items:center;gap:.25rem;justify-content:flex-end;flex:1;min-width:0}.travel-metrics .metric{font-weight:600;color:#333;white-space:nowrap;font-size:.68rem}.travel-metrics .metric.loading{color:#6c757d;font-weight:500;font-size:.7rem}.travel-metrics .metric.error{color:#dc3545;font-weight:500;font-size:.7rem}.feasibility-icon{font-size:.7rem;flex-shrink:0}.expand-btn{width:14px;height:14px;border:none;background:transparent;color:#666;cursor:pointer;font-size:.6rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0}.expand-btn:hover{color:#333;transform:scale(1.2)}.travel-details-expanded{background:#fff;border-radius:4px;padding:.35rem .5rem;margin:0 0 .35rem;border:1px solid #e0e0e0;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.detail-row{display:flex;justify-content:space-between;padding:.15rem 0;font-size:.7rem}.detail-row:not(:last-child){border-bottom:1px solid #f0f0f0}.detail-row .label{color:#666;font-weight:500}.detail-row .value{color:#333;font-weight:600}@media(max-width:968px){.travel-toggle-btn{width:26px;height:26px}.travel-toggle-btn svg{width:14px;height:14px}.travel-metrics{gap:.2rem}.travel-metrics .metric{font-size:.65rem}}.planning-map-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.planning-map-modal{display:flex;height:90vh;max-height:800px;width:95vw;max-width:1400px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #0000004d;position:relative;animation:slideUp .3s ease}.planning-map-container{flex:0 0 70%;position:relative;background:#e5e7eb}.planning-map-container .map{width:100%;height:100%}.planning-map-modal .map-legend{position:absolute;top:16px;left:16px;background:#fff;padding:12px 16px;border-radius:8px;box-shadow:0 2px 8px #00000026;z-index:100}.planning-map-modal .legend-item{display:flex;align-items:center;gap:8px;margin-bottom:6px}.planning-map-modal .legend-item:last-child{margin-bottom:0}.planning-map-modal .legend-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff}.planning-map-modal .legend-icon.completed{background:#22c55e}.planning-map-modal .legend-icon.partial{background:#f59e0b}.planning-map-modal .legend-icon.pending,.planning-map-modal .legend-icon.needed{background:#94a3b8}.venue-checklist .checklist-item.needed{background:#fafafa;border:1px dashed #cbd5e1}.venue-checklist .checklist-item.needed:hover{background:#f1f5f9;border-color:#94a3b8}.venue-checklist .checklist-item.needed .checklist-icon{background:#94a3b8}.planning-map-modal .legend-label{font-size:13px;color:#374151;font-weight:500}.planning-map-modal .loading-overlay,.planning-map-modal .error-overlay{position:absolute;inset:0;background:#fffffff2;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.planning-map-modal .loading-overlay .spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.planning-map-modal .loading-overlay p,.planning-map-modal .error-overlay p{margin-top:16px;color:#6b7280;font-size:14px}.planning-map-modal .error-overlay p{color:#ef4444}.planning-sidebar{flex:0 0 30%;display:flex;flex-direction:column;border-left:1px solid #e5e7eb;overflow-y:auto;background:#fff}.planning-sidebar .sidebar-header{padding:24px 20px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.planning-sidebar .sidebar-header h3{margin:0 0 12px;font-size:18px;font-weight:600;color:#111827}.planning-sidebar .progress-stats{font-size:14px;color:#6b7280;margin-bottom:12px}.planning-sidebar .progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.planning-sidebar .progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease;border-radius:4px}.venue-checklist{flex:1;overflow-y:auto;padding:8px}.venue-checklist .checklist-item{display:flex;align-items:center;gap:12px;padding:14px 12px;margin-bottom:6px;border-radius:8px;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.venue-checklist .checklist-item:hover{background:#f9fafb;border-color:#e5e7eb;transform:translate(2px)}.venue-checklist .checklist-item.completed{background:#f0fdf4}.venue-checklist .checklist-item.completed:hover{background:#dcfce7;border-color:#86efac}.venue-checklist .checklist-item.partial{background:#fef3c7}.venue-checklist .checklist-item.partial:hover{background:#fde68a;border-color:#fcd34d}.venue-checklist .checklist-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.venue-checklist .checklist-item.completed .checklist-icon{background:#22c55e}.venue-checklist .checklist-item.partial .checklist-icon{background:#f59e0b}.venue-checklist .checklist-item.pending .checklist-icon{background:#94a3b8}.venue-checklist .checklist-details{flex:1;min-width:0}.venue-checklist .venue-name{font-weight:600;font-size:14px;color:#111827;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.venue-checklist .venue-location{font-size:13px;color:#6b7280;margin-bottom:2px}.venue-checklist .game-count{font-size:12px;color:#9ca3af}.venue-checklist .empty-state{text-align:center;padding:40px 20px;color:#9ca3af}.venue-checklist .empty-state p{margin:0 0 4px}.planning-map-modal .error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.planning-map-modal .error-state p{color:#ef4444;margin-bottom:16px}@media(max-width:768px){.planning-map-modal{flex-direction:column;height:100vh;max-height:100vh;width:100vw;max-width:100vw;border-radius:0}.planning-map-container{flex:1}.planning-sidebar{position:absolute;bottom:0;left:0;right:0;height:60%;max-height:60%;border-left:none;border-top:1px solid #e5e7eb;border-radius:16px 16px 0 0;box-shadow:0 -4px 12px #0000001a;transform:translateY(calc(100% - 80px));transition:transform .3s ease;z-index:200}.planning-sidebar.expanded{transform:translateY(0)}.bottom-sheet-handle{width:40px;height:4px;background:#cbd5e1;border-radius:2px;margin:12px auto;cursor:pointer;flex-shrink:0}.planning-sidebar .sidebar-header{padding:16px}.planning-sidebar .sidebar-header h3{font-size:16px}.venue-checklist .checklist-item{padding:12px 10px;min-height:44px}.planning-map-modal .map-legend{top:70px;left:12px;padding:10px 12px}.planning-map-modal .legend-item{margin-bottom:4px}.planning-map-modal .legend-label{font-size:12px}}@media(max-width:480px){.venue-checklist .checklist-icon{width:28px;height:28px;font-size:10px}.venue-checklist .venue-name{font-size:13px}.venue-checklist .venue-location{font-size:12px}.venue-checklist .game-count{font-size:11px}.planning-sidebar .sidebar-header h3{font-size:15px}.planning-sidebar .progress-stats{font-size:13px}}.itinerary-sidebar{background:#fff;border-left:2px solid #e0e0e0;height:100%;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}.sidebar-header{padding:1.5rem;border-bottom:2px solid #e0e0e0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.sidebar-header h3{margin:0 0 .5rem;font-size:1.3rem}.trip-stats{display:flex;gap:.5rem;font-size:.9rem;opacity:.95}.stat-item{font-weight:500}.stat-divider{opacity:.6}.empty-itinerary{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;color:#999}.empty-itinerary p:first-child{font-size:3rem;margin-bottom:1rem}.sidebar-header-sticky{position:sticky;top:0;z-index:20;background:linear-gradient(135deg,#2d3748,#1a202c);color:#fff;padding:.65rem;border-bottom:2px solid #e0e0e0;box-shadow:0 2px 8px #0000001a}.header-top-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.header-top-row h3{margin:0;font-size:1.1rem;font-weight:600}.submit-btn-compact{padding:.4rem .8rem;font-size:.85rem;font-weight:600;border-radius:6px;border:2px solid white;background:#fff;color:#667eea;cursor:pointer;transition:all .2s ease;white-space:nowrap}.submit-btn-compact.active{background:#22c55e;color:#fff;border-color:#22c55e;box-shadow:0 0 12px #22c55e66}.submit-btn-compact.active:hover{background:#16a34a;border-color:#16a34a;transform:translateY(-1px)}.submit-btn-compact.disabled{background:#ffffff4d;color:#ffffffb3;border-color:#ffffff80;cursor:not-allowed}.header-stats-row{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.trip-stats-inline{display:flex;gap:.4rem}.trip-stats-inline .stat{opacity:.95;font-weight:500;white-space:nowrap}.progress-map-btn{display:flex;flex-direction:column;align-items:flex-end;gap:4px;cursor:pointer;padding:6px 10px;background:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:6px;transition:background .2s ease,border-color .2s ease;min-width:110px}.progress-map-btn:hover{background:#ffffff47;border-color:#ffffff73}.progress-bar-mini{width:100%;height:3px;border-radius:2px;transition:width .3s ease;min-width:60px}.progress-map-label{font-size:.7rem;font-weight:600;white-space:nowrap;color:#fff}.progress-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.progress-modal{background:#fff;border-radius:12px;width:90%;max-width:400px;max-height:80vh;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.progress-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,#2d3748,#1a202c);color:#fff}.progress-modal-header h4{margin:0;font-size:1.1rem}.modal-close-btn{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:50%;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;transition:background .2s ease}.modal-close-btn:hover{background:#ffffff4d}.progress-modal-body{padding:16px 20px;max-height:60vh;overflow-y:auto}.checklist{list-style:none;margin:0;padding:0}.checklist-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f0f0f0}.checklist-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.9rem;font-weight:700;flex-shrink:0}.checklist-item.complete .checklist-icon{background:#22c55e;color:#fff}.checklist-item.pending .checklist-icon{background:#e5e7eb;color:#9ca3af}.checklist-name{flex:1;font-size:.95rem;color:#333}.checklist-item.complete .checklist-name{color:#333}.checklist-item.pending .checklist-name{color:#6b7280}.checklist-count{font-size:.8rem;color:#9ca3af;font-weight:500}.itinerary-games{flex:1;overflow-y:auto;padding:.35rem}.itinerary-games h4{margin:0 0 .5rem;font-size:.8rem;color:#666;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;background:#fff;padding:.15rem 0;z-index:10}.itinerary-date-group{margin-bottom:.75rem}.itinerary-date-header{font-weight:600;font-size:.8rem;color:#667eea;margin-bottom:.35rem;padding-bottom:.2rem;border-bottom:1px solid #667eea;position:sticky;top:1.5rem;background:#fff;z-index:9}.game-card-compact{background:#f8f9fa;border:1px solid #e0e0e0;border-left:3px solid #667eea;border-radius:4px;padding:.3rem 1.5rem .3rem .35rem;margin-bottom:.35rem;position:relative;transition:all .2s ease}.game-card-compact:hover{border-left-color:#764ba2;background:#f1f3f5}.remove-btn-mini{position:absolute;top:50%;right:.3rem;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;background:#dc3545;color:#fff;border:none;font-size:.9rem;cursor:pointer;opacity:.7;transition:all .2s ease;padding:0;display:flex;align-items:center;justify-content:center;line-height:1}.remove-btn-mini:hover{opacity:1;transform:translateY(-50%) scale(1.15);background:#c82333}.game-primary{display:flex;align-items:center;gap:.4rem;margin-bottom:.15rem}.game-time{font-size:.68rem;font-weight:700;color:#666;text-transform:uppercase;min-width:40px;flex-shrink:0}.game-matchup{font-size:.78rem;font-weight:600;display:flex;align-items:center;gap:.2rem;flex:1;min-width:0}.game-matchup .away{color:#555}.game-matchup .at{color:#999;font-size:.7rem;font-weight:400}.game-matchup .home{color:#1976d2}.game-secondary{display:flex;align-items:center;gap:.2rem;font-size:.68rem;color:#666}.venue-icon{font-size:.6rem;flex-shrink:0}.venue-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.itinerary-game-card{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:.75rem 2.5rem .75rem .75rem;margin-bottom:.75rem;position:relative;transition:all .2s ease}.itinerary-game-card:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea26}.itinerary-game-card:last-child{margin-bottom:0}.remove-btn{position:absolute;top:50%;right:.5rem;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:#dc3545;color:#fff;border:none;font-size:1.2rem;line-height:0;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 0 1px;transition:all .2s ease;opacity:.8}.remove-btn:hover{background:#c82333;transform:translateY(-50%) scale(1.15);opacity:1}.itinerary-game-time{font-size:.75rem;color:#666;font-weight:600;text-transform:uppercase;margin-bottom:.5rem}.itinerary-game-matchup{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.itinerary-game-matchup .away{font-size:.9rem;color:#555;font-weight:500}.itinerary-game-matchup .vs{font-size:.7rem;color:#999}.itinerary-game-matchup .home{font-size:.9rem;color:#1976d2;font-weight:600}.itinerary-game-venue{font-size:.8rem;color:#666;padding-top:.5rem;border-top:1px solid #e0e0e0}.itinerary-games::-webkit-scrollbar{width:8px}.itinerary-games::-webkit-scrollbar-track{background:#f1f1f1}.itinerary-games::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.itinerary-games::-webkit-scrollbar-thumb:hover{background:#555}.submit-section{padding:1.5rem;border-top:2px solid #e0e0e0;background:#fff}.requirements-met{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;padding:.75rem;border-radius:8px;text-align:center;font-weight:600;margin-bottom:1rem;font-size:.95rem}.requirements-pending{background:#fff3cd;color:#856404;padding:.75rem;border-radius:8px;text-align:center;font-weight:500;margin-bottom:1rem;font-size:.85rem;border:1px solid #ffeaa7}.submit-trip-btn{width:100%;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #667eea4d}.submit-trip-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.submit-trip-btn:active:not(:disabled){transform:translateY(0)}.submit-trip-btn:disabled{background:#e0e0e0;color:#999;cursor:not-allowed;box-shadow:none}.submit-trip-btn.disabled{opacity:.6}.mobile-toggle-btn{display:none}@media(max-width:968px){.itinerary-sidebar{position:fixed;bottom:0;left:0;right:0;z-index:100;border-radius:16px 16px 0 0;box-shadow:0 -4px 20px #00000026;margin-bottom:0;background:#fff}.mobile-toggle-btn{display:block;width:100%;background:linear-gradient(135deg,#2d3748,#1a202c);color:#fff;border:none;padding:1rem;cursor:pointer;border-radius:16px 16px 0 0;box-shadow:0 -2px 10px #0000001a;transition:all .3s ease;position:relative;z-index:101}.mobile-toggle-btn:active{transform:scale(.98)}.bottom-sheet-handle{width:40px;height:4px;background:#ffffff80;border-radius:2px;margin:0 auto .5rem}.toggle-content{display:flex;justify-content:space-between;align-items:center;width:100%}.toggle-text{font-weight:600;font-size:1rem}.toggle-badge{background:#ffffff40;padding:.3rem .7rem;border-radius:20px;font-size:.85rem;font-weight:600}.sidebar-collapsible-content{max-height:0;overflow:hidden;transition:max-height .4s ease;background:#fff}.itinerary-sidebar.expanded .sidebar-collapsible-content{max-height:75vh;overflow-y:auto}.itinerary-sidebar.collapsed,.itinerary-sidebar.expanded{height:auto}.results-main{padding-bottom:120px}.itinerary-sidebar.expanded .itinerary-games{max-height:400px;overflow-y:auto}.game-card-compact{padding:.5rem 2rem .5rem .75rem}.remove-btn-mini{width:24px;height:24px}.submit-btn-compact{padding:.5rem 1rem;font-size:.8rem}.header-stats-row{font-size:.75rem}.trip-stats-inline{gap:.4rem}}.travel-segment{background:#f8f9fa;border-left:4px solid #6c757d;padding:.75rem;margin:.5rem 0;border-radius:6px;transition:all .3s ease}.travel-segment.feasible{border-left-color:#28a745;background:#f1f8f4}.travel-segment.warning{border-left-color:#ffc107;background:#fffbf0}.travel-segment.infeasible{border-left-color:#dc3545;background:#fef5f5}.travel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.travel-mode-buttons{display:flex;gap:.5rem}.mode-option{background:#e9ecef;color:#6c757d;border:2px solid #dee2e6;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.25rem;opacity:.5}.mode-option.active{background:#667eea;color:#fff;border-color:#667eea;opacity:1;box-shadow:0 2px 6px #667eea4d}.mode-option.inactive:hover{opacity:.7;border-color:#adb5bd;transform:scale(1.02)}.mode-option.active:hover{background:#5568d3;border-color:#5568d3}.feasibility-indicator{font-size:1.25rem;display:flex;align-items:center}.travel-loading{text-align:center;color:#6c757d;font-size:.85rem;padding:.5rem 0}.travel-error{color:#dc3545;font-size:.85rem;padding:.5rem;background:#f8d7da;border-radius:4px;text-align:center}.travel-details{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem}.travel-stat{display:flex;justify-content:space-between;align-items:center}.stat-label{color:#666;font-weight:500}.stat-value{color:#333;font-weight:600}.time-buffer{display:flex;justify-content:space-between;align-items:center;padding:.5rem;border-radius:4px;margin-top:.5rem;font-size:.85rem;font-weight:600}.time-buffer.positive{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.time-buffer.negative{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.buffer-label{font-weight:600}.buffer-value{font-weight:700}.travel-warning{background:#fff3cd;color:#856404;padding:.5rem;border-radius:4px;font-size:.8rem;line-height:1.4;margin-top:.25rem}.travel-error-msg{color:#dc3545;font-weight:600;padding:.5rem;text-align:center;font-size:.8rem;background:#f8d7da;border-radius:4px;margin-top:.25rem}@media(max-width:968px){.travel-segment{margin:.75rem 0}}.route-map-container{position:relative;width:100%;border-radius:8px;overflow:hidden;background-color:#f3f4f6}.route-map{position:relative;z-index:1}.route-map-loading{position:absolute;inset:0;background-color:#fffffff2;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10;gap:1rem}.route-map-loading p{margin:0;color:#4b5563;font-size:.875rem;font-weight:500}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.route-map-error{display:flex;align-items:center;justify-content:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:2rem}.error-message{text-align:center;color:#991b1b}.error-message p{margin:0;font-size:.875rem}@media(max-width:768px){.route-map-container{border-radius:6px}.route-map-loading{gap:.75rem}.loading-spinner{width:32px;height:32px;border-width:3px}.route-map-loading p{font-size:.8125rem}}@media(max-width:480px){.route-map-loading{gap:.5rem}.loading-spinner{width:28px;height:28px}}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;max-width:1000px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.trip-review-modal-content.modal-content{max-width:1000px!important}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e5e7eb;background:#fff}.modal-title-section{flex:1}.modal-title-section h2{margin:0;font-size:1.5rem;color:#111827;font-weight:700}.modal-subtitle{margin:.25rem 0 0;font-size:.875rem;color:#4b5563;font-weight:400}.modal-close{background:none;border:none;font-size:2rem;cursor:pointer;color:#6b7280;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background-color:#f3f4f6;color:#1f2937}.modal-body{overflow-y:auto;padding:2rem;flex:1}.review-section{margin-bottom:2rem}.review-section:last-child{margin-bottom:0}.review-section h3{margin-top:0;margin-bottom:1rem;font-size:1.25rem;color:#374151;border-bottom:2px solid #e5e7eb;padding-bottom:.5rem}.route-map-section{margin-bottom:2rem}.route-map-section .route-map-container{border:1px solid #e5e7eb;box-shadow:0 2px 4px #0000000d}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.summary-item{background-color:#f9fafb;padding:1rem;border-radius:8px;border:1px solid #e5e7eb}.summary-label{font-size:.875rem;color:#6b7280;margin-bottom:.25rem;font-weight:500}.summary-value{font-size:1.125rem;color:#1f2937;font-weight:600}.entity-list{display:flex;flex-direction:column;gap:.5rem}.entity-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.entity-name{font-weight:500;color:#374151}.entity-count{font-weight:600;color:#059669}.itinerary-list{display:flex;flex-direction:column;gap:1.5rem}.date-section{background-color:#f9fafb;border-radius:8px;padding:1rem;border:1px solid #e5e7eb}.date-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #d1d5db}.day-number{background-color:#3b82f6;color:#fff;padding:.25rem .75rem;border-radius:20px;font-weight:600;font-size:.875rem}.date-full{font-weight:600;color:#1f2937;font-size:1rem}.game-detail{background-color:#fff;padding:1rem;border-radius:6px;margin-bottom:.75rem;border:1px solid #e5e7eb}.game-time{font-size:.875rem;color:#6b7280;margin-bottom:.5rem;font-weight:500}.game-matchup{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.away-team{color:#374151}.vs{color:#9ca3af;font-size:.875rem;font-weight:500}.home-team{color:#1f2937}.game-venue{font-size:.875rem;color:#6b7280;margin-bottom:.25rem}.game-timezone{font-size:.75rem;color:#9ca3af}.travel-detail{padding:.75rem 1rem;margin-bottom:.75rem;background-color:#eff6ff;border-radius:6px;border-left:3px solid #3b82f6}.travel-detail:last-child{margin-bottom:0}.travel-mode{font-size:.875rem;color:#1e40af;font-weight:500}.modal-footer{padding:1.5rem 2rem;border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:flex-end}.btn-secondary{padding:.75rem 1.5rem;border:2px solid #d1d5db;background-color:#fff;color:#374151;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:1rem}.btn-secondary:hover{background-color:#f3f4f6;border-color:#9ca3af}.btn-primary{padding:.75rem 1.5rem;border:none;background-color:#3b82f6;color:#fff;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:1rem}.btn-primary:hover{background-color:#2563eb}.btn-primary:active{background-color:#1d4ed8}@media(max-width:768px){.modal-content{max-width:100%;max-height:100vh;border-radius:0}.modal-header,.modal-body,.modal-footer{padding:1.25rem}.modal-close{width:44px;height:44px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.summary-grid{grid-template-columns:1fr;gap:.875rem}.review-section{margin-bottom:1.5rem}.itinerary-list{gap:1.25rem}.modal-footer{flex-direction:column;gap:.75rem}.btn-secondary,.btn-primary{width:100%;padding:.875rem 1.5rem;min-height:44px}.route-map-section .route-map-container{height:300px!important}}@media(max-width:480px){.modal-header{padding:1rem 1.25rem}.modal-title-section h2{font-size:1.25rem}.modal-body{padding:1rem}.review-section h3{font-size:1.125rem}.summary-grid{gap:.75rem}.summary-item{padding:.75rem}.game-matchup{font-size:1rem}.modal-footer{padding:1rem 1.25rem;flex-direction:column;gap:.75rem}.btn-secondary,.btn-primary{width:100%}.route-map-section .route-map-container{height:250px!important}}.save-trip-nudge-modal{max-width:1400px!important;width:98%!important;padding:2rem 2.5rem;border-radius:16px;max-height:95vh;overflow-y:auto}.nudge-header{text-align:center;margin-bottom:1.5rem}.nudge-icon{font-size:3rem;margin-bottom:.5rem}.nudge-header h2{font-size:2rem;color:#2c3e50;margin-bottom:.75rem}.nudge-header p{color:#6c757d;font-size:1.1rem;max-width:500px;margin:0 auto}.tier-comparison{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:1.75rem}.tier-column{padding:1.5rem;border-radius:12px;border:2px solid #e9ecef;display:flex;flex-direction:column;position:relative;transition:all .2s;width:100%}.tier-column:hover{border-color:#4caf50;box-shadow:0 2px 8px #4caf501a}.tier-header{text-align:center;margin-bottom:1.25rem}.tier-header h3{font-size:1.25rem;margin-bottom:.5rem;color:#2c3e50;font-weight:600}.tier-header .price{font-size:1.5rem;font-weight:700;color:#2c3e50;line-height:1.4;display:flex;flex-direction:column;align-items:center;gap:.25rem}.tier-header .price .once{font-size:.85rem;font-weight:400;color:#6c757d}.tier-header .price .price-divider{display:none}.feature-list{list-style:none;padding:0;margin:0;flex:1}.feature-list li{margin-bottom:.65rem;font-size:.875rem;color:#495057;display:flex;align-items:flex-start;gap:.5rem;line-height:1.4}.feature-list li .check{color:#4caf50;font-weight:700}.nudge-actions{text-align:center}.btn-primary-large{width:100%;max-width:300px;padding:1rem 2rem;font-size:1.1rem;font-weight:600;background-color:#4caf50;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s;margin-bottom:1rem}.btn-primary-large:hover{background-color:#45a049;transform:translateY(-1px)}.login-prompt{color:#6c757d;font-size:.9rem}.link-button{background:none;border:none;color:#007bff;text-decoration:underline;cursor:pointer;padding:0;font:inherit}@media(max-width:900px){.tier-comparison{grid-template-columns:1fr;max-width:500px;margin-left:auto;margin-right:auto;gap:1.5rem}.save-trip-nudge-modal{max-width:700px;padding:2rem}}.validation-issues-modal{max-width:700px;width:90%;max-height:80vh;overflow-y:auto}.validation-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.validation-modal-header h2{margin:0;font-size:1.5rem;color:#111827}.modal-close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#6b7280;line-height:1;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.modal-close-btn:hover{background-color:#f3f4f6;color:#111827}.validation-modal-body{padding:1.5rem}.validation-loading{text-align:center;padding:2rem;color:#6b7280}.validation-success{text-align:center;padding:2rem}.success-icon{font-size:3rem;margin-bottom:1rem}.validation-success h3{margin:0 0 .5rem;color:#10b981;font-size:1.25rem}.validation-success p{color:#6b7280;margin:0}.validation-summary{margin-bottom:1.5rem;padding:1rem;background-color:#fef3c7;border-left:4px solid #f59e0b;border-radius:4px}.validation-summary p{margin:0;color:#92400e}.validation-issues-list{display:flex;flex-direction:column;gap:1rem}.validation-issue{border:1px solid #e5e7eb;border-radius:8px;padding:1rem;background-color:#fff}.validation-issue.warning{border-left:4px solid #f59e0b;background-color:#fffbeb}.validation-issue.error{border-left:4px solid #ef4444;background-color:#fef2f2}.issue-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.issue-icon{font-size:1.25rem;line-height:1}.issue-route{flex:1;display:flex;flex-direction:column;gap:.5rem}.issue-location{display:flex;flex-direction:column;gap:.25rem;font-weight:500;color:#111827}.issue-date{font-size:.875rem;font-weight:400;color:#6b7280}.issue-arrow{display:flex;align-items:center;gap:.5rem;color:#6b7280;font-size:.875rem;margin:.25rem 0}.issue-message{padding:.75rem;background-color:#00000005;border-radius:4px;font-size:.875rem;color:#374151;line-height:1.5}.validation-issue.warning .issue-message{background-color:#f59e0b0d}.validation-issue.error .issue-message{background-color:#ef44440d}.validation-footer-note{margin-top:1.5rem;padding:1rem;background-color:#eff6ff;border-left:4px solid #3b82f6;border-radius:4px}.validation-footer-note p{margin:0;font-size:.875rem;color:#1e40af}.validation-modal-footer{padding:1rem 1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.btn-close{padding:.625rem 1.5rem;background-color:#6b7280;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-close:hover{background-color:#4b5563}@media(max-width:768px){.validation-issues-modal{width:95%;max-height:95vh}.validation-modal-header,.validation-modal-body,.validation-modal-footer{padding:1.25rem}.issue-route{font-size:.9rem}.btn-close{padding:.75rem 1.5rem;min-height:44px}.modal-close-btn{width:44px;height:44px}}@media(max-width:480px){.validation-issues-modal{width:100%;max-height:100vh;border-radius:0}.validation-modal-header h2{font-size:1.25rem}.validation-modal-header,.validation-modal-body,.validation-modal-footer{padding:1rem}.modal-close-btn{width:44px;height:44px}.issue-route{font-size:.85rem}.issue-message{font-size:.8rem}}.trip-cal-container{background:#fff;border-radius:10px;border:1px solid #e0e0e0;overflow:hidden;box-shadow:0 2px 8px #0000000f}.trip-cal-loading{padding:3rem 2rem;text-align:center;color:#888;font-size:.9rem}.trip-cal-nav{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2)}.trip-cal-arrow{background:#fff3;border:none;color:#fff;font-size:1.375rem;width:30px;height:30px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;transition:background .15s;flex-shrink:0}.trip-cal-arrow:hover{background:#ffffff61}.trip-cal-month-title{flex:1;font-size:1rem;font-weight:700;color:#fff;text-align:center;letter-spacing:.01em}.trip-cal-clear-date{background:#ffffff26;border:1px solid rgba(255,255,255,.4);color:#fff;font-size:.75rem;padding:.2rem .65rem;border-radius:12px;cursor:pointer;transition:background .15s;white-space:nowrap}.trip-cal-clear-date:hover{background:#ffffff4d}.trip-cal-header-row{display:grid;grid-template-columns:repeat(7,1fr);background:#f4f6fb;border-bottom:1px solid #e4e4e4}.trip-cal-header-cell{text-align:center;font-size:.675rem;font-weight:700;color:#999;padding:.3rem 0;text-transform:uppercase;letter-spacing:.05em}.trip-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);border-left:1px solid #f0f0f0}.trip-cal-cell{min-height:72px;padding:.3rem .3rem .25rem;border-right:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0;cursor:default;position:relative;display:flex;flex-direction:column;gap:.15rem;transition:background .1s}.trip-cal-cell.other-month{background:#fafafa}.trip-cal-cell.other-month .trip-cal-date-num{color:#ccc}.trip-cal-cell.has-games{cursor:pointer}.trip-cal-cell.has-games:hover{background:#f0f4ff!important}.trip-cal-cell.today{background:#fdfaff}.trip-cal-cell.selected{background:#ede9fe!important;outline:2px solid #667eea;outline-offset:-2px;z-index:1}.trip-cal-cell.density-low{background:#f7f8ff}.trip-cal-cell.density-med{background:#eef1ff}.trip-cal-cell.density-high{background:#e2e8ff}.trip-cal-date-num{font-size:.75rem;font-weight:600;color:#555;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.trip-cal-cell.today .trip-cal-date-num{background:#667eea;color:#fff}.trip-cal-dots{display:flex;flex-wrap:wrap;gap:2px;margin-top:1px}.trip-cal-dot{width:7px;height:7px;border-radius:50%;opacity:.65;transition:transform .1s,opacity .1s,box-shadow .1s;flex-shrink:0}.trip-cal-dot.dot-selected{opacity:1;transform:scale(1.25);box-shadow:0 0 0 1.5px #fff,0 0 0 3px currentColor}.trip-cal-dot-more{font-size:.6rem;color:#aaa;font-weight:600;align-self:center;line-height:1}.trip-cal-sel-badge{font-size:.6rem;font-weight:700;color:#667eea;background:#ede9fe;border-radius:8px;padding:1px 5px;align-self:flex-start;margin-top:auto}.trip-cal-day-panel{border-top:2px solid #667eea;background:#fafafa}.trip-cal-day-panel-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.625rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2)}.trip-cal-day-title{font-size:.9375rem;font-weight:700;color:#fff}.trip-cal-day-count{font-size:.8rem;color:#ffffffd9;white-space:nowrap}.trip-cal-game-list{display:flex;flex-direction:column}.trip-cal-game-card{display:flex;align-items:flex-start;gap:.75rem;padding:.625rem 1rem;border-bottom:1px solid #eeeeee;cursor:pointer;transition:background .1s;position:relative;-webkit-user-select:none;user-select:none}.trip-cal-game-card:last-child{border-bottom:none}.trip-cal-game-card:hover{background:#f0f4ff}.trip-cal-game-card.game-selected{background:#ede9fe}.trip-cal-game-card.game-selected:hover{background:#e2dafc}.trip-cal-game-card.game-at-capacity{opacity:.45;cursor:not-allowed}.tcgc-check{width:18px;height:18px;border:2px solid #d0d0d0;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;color:#fff;background:#fff;flex-shrink:0;margin-top:3px;transition:all .12s}.game-selected .tcgc-check{background:#667eea;border-color:#667eea}.tcgc-body{flex:1;min-width:0}.tcgc-matchup{font-size:.875rem;font-weight:600;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tcgc-meta{display:flex;gap:.5rem;align-items:center;font-size:.775rem;color:#666;margin-top:2px}.tcgc-venue:before{content:"·";margin-right:.35rem}.tcgc-badges{display:flex;gap:.25rem;flex-wrap:wrap;margin-top:4px}.tcgc-level-badge{color:#fff;font-size:.625rem;font-weight:700;padding:1px 5px;border-radius:3px;letter-spacing:.02em}.tcgc-extra-badge{background:#e9ecef;color:#555;font-size:.625rem;font-weight:700;padding:1px 5px;border-radius:3px}.tcgc-status-badge{background:#fff3cd;color:#856404;font-size:.625rem;font-weight:700;padding:1px 5px;border-radius:3px}.tcgc-capacity-note{font-size:.7rem;color:#bbb;align-self:center;flex-shrink:0;font-style:italic}.trip-cal-legend{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;padding:.5rem 1rem;background:#f8f9fa;border-top:1px solid #eeeeee;font-size:.7rem;color:#888}.trip-cal-legend-label{font-weight:600;color:#aaa;text-transform:uppercase;letter-spacing:.05em;font-size:.625rem}.trip-cal-legend-item{padding:1px 7px;border-radius:4px;font-size:.68rem;font-weight:500}.density-low-pill{background:#eef1ff;color:#667eea}.density-med-pill{background:#e2e8ff;color:#4f5fb5}.density-high-pill{background:#ccd4ff;color:#3448a0}.trip-cal-legend-sep{width:1px;height:14px;background:#ddd;flex-shrink:0}.trip-cal-legend-dot-row{display:flex;align-items:center;gap:3px;color:#666}.trip-cal-legend-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:16px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:2rem;color:#666;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-close:hover{background:#f0f0f0;color:#333}.modal-body{padding:3rem 2rem 2rem;text-align:center}.modal-icon{font-size:4rem;margin-bottom:1rem}.modal-body h2{margin:0 0 1rem;color:#1a1a1a;font-size:1.75rem}.modal-body p{color:#666;font-size:1rem;line-height:1.5;margin-bottom:1.5rem}.benefits-list{list-style:none;padding:0;margin:0 0 2rem;text-align:left;max-width:350px;margin-left:auto;margin-right:auto}.benefits-list li{padding:.75rem 0;color:#333;font-size:1rem;border-bottom:1px solid #f0f0f0}.benefits-list li:last-child{border-bottom:none}.modal-actions{display:flex;flex-direction:column;gap:1rem}.btn-primary-large{background:#1a73e8;color:#fff;border:none;padding:1rem 2rem;font-size:1.1rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #1a73e84d}.btn-primary-large:hover{background:#1557b0;transform:translateY(-2px);box-shadow:0 6px 16px #1a73e866}.btn-secondary-large{background:#fff;color:#666;border:2px solid #e0e0e0;padding:.875rem 2rem;font-size:1rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease}.btn-secondary-large:hover{border-color:#999;color:#333;background:#f9f9f9}@media(max-width:768px){.modal-body{padding:2.5rem 1.5rem 1.5rem}.modal-body h2{font-size:1.5rem}.modal-icon{font-size:3rem}}.hero-deals{position:relative;display:flex;flex-direction:column;gap:.5rem;min-width:0}.hero-deals__nav{position:absolute;top:-2px;right:0;display:flex;align-items:center;gap:.4rem;flex-shrink:0;z-index:2}.hero-deals__nav-btn{width:32px;height:32px;border-radius:50%;border:1px solid #d6dee6;background:#fff;color:#1976d2;font-size:1.15rem;font-weight:700;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s ease,border-color .15s ease}.hero-deals__nav-btn:hover{background:#f0f7ff;border-color:#2196f3}.hero-deals__count{font-size:.8rem;font-variant-numeric:tabular-nums;color:#5a6b7c;min-width:36px;text-align:center}.hero-deals__stage{position:relative;min-height:180px}.hero-deals__card{display:flex;flex-direction:column;gap:.7rem;padding:1.1rem 1.2rem;background:#fff;border:1px solid #e3e9ef;border-radius:14px;box-shadow:0 4px 14px #0f1e320f;text-align:left;font:inherit;color:inherit;width:100%;animation:hero-deals-fade-in .3s ease}@keyframes hero-deals-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.hero-deals__plan-btn{margin-top:.5rem;padding:.7rem 1.1rem;font-family:inherit;font-size:.95rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#2196f3,#1976d2);border:none;border-radius:10px;cursor:pointer;box-shadow:0 4px 12px #2196f347;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.hero-deals__plan-btn:hover:not(:disabled),.hero-deals__plan-btn:focus-visible:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #2196f361;background:linear-gradient(135deg,#1e88e5,#1565c0);outline:none}.hero-deals__plan-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.hero-deals__card--skeleton{background:linear-gradient(90deg,#eef2f6,#f6f9fc,#eef2f6);background-size:200% 100%;animation:hero-deals-shimmer 1.2s linear infinite;cursor:default;pointer-events:none;min-height:180px}@keyframes hero-deals-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.hero-deals__card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.hero-deals__city-row{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}.hero-deals__city{font-weight:800;font-size:1.35rem;color:#1a2a3a;line-height:1.15;letter-spacing:-.01em}.hero-deals__dates{font-size:.82rem;font-weight:600;color:#1976d2;background:#e8f1fb;padding:.15rem .55rem;border-radius:999px;white-space:nowrap}.hero-deals__badge{background:#e8f5e9;color:#1b5e20;font-size:.72rem;font-weight:800;padding:.25rem .6rem;border-radius:999px;white-space:nowrap;margin-top:1.75rem}.hero-deals__matchup{margin-top:.2rem;font-size:.85rem;color:#5a6b7c;line-height:1.3}.hero-deals__pricing{display:flex;flex-direction:column;gap:.3rem}.hero-deals__pricing-row{display:flex;justify-content:space-between;font-size:.9rem;color:#3a4a5c}.hero-deals__pricing-label{color:#6a7989}.hero-deals__pricing-value{font-weight:600;font-variant-numeric:tabular-nums}.hero-deals__total{display:flex;justify-content:space-between;align-items:baseline;padding-top:.55rem;border-top:1px dashed #e3e9ef}.hero-deals__total-label{font-size:.75rem;color:#7a8694;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.hero-deals__total-value{font-size:1.35rem;font-weight:800;color:#1976d2;font-variant-numeric:tabular-nums}.hero-deals__dots{display:flex;justify-content:center;gap:.4rem;margin-top:.25rem}.hero-deals__dot{width:8px;height:8px;border-radius:50%;border:none;background:#cbd5df;cursor:pointer;padding:0;transition:background .15s ease,transform .15s ease}.hero-deals__dot.is-active{background:#1976d2;transform:scale(1.3)}@media(max-width:768px){.hero-deals__city,.hero-deals__total-value{font-size:1.2rem}}.puzzle-hero-card{background:linear-gradient(135deg,#1e40af,#0f1724);color:#fff;border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 8px 24px #0f172440;display:flex;flex-direction:column;gap:.75rem;position:relative;overflow:hidden}.puzzle-hero-card:before{content:"";position:absolute;top:-40%;right:-10%;width:60%;height:200%;background:radial-gradient(circle,rgba(251,191,36,.18) 0%,transparent 60%);pointer-events:none}.puzzle-hero-card.loading{min-height:200px}.phc-skeleton{background:linear-gradient(90deg,#1e293b,#334155,#1e293b);background-size:200% 100%;border-radius:8px;height:100%;flex:1;animation:phcShimmer 1.5s infinite}@keyframes phcShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.phc-tag{display:inline-flex;align-items:center;gap:.4rem;background:#fbbf242e;color:#fbbf24;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .65rem;border-radius:999px;align-self:flex-start}.phc-emoji{font-size:.9rem}.phc-theme{font-size:1.6rem;font-weight:800;line-height:1.1;color:#fff}.phc-desc{font-size:.85rem;color:#cbd5e1;line-height:1.35;max-width:520px}.phc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;background:#0f172466;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.6rem .75rem}.phc-stat{display:flex;flex-direction:column;gap:1px}.phc-stat-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-weight:600}.phc-stat-val{font-size:1.1rem;font-weight:800;color:#fbbf24}.phc-stat-val.small{font-size:.85rem}.phc-cta{background:#fbbf24;color:#0f1724;font-weight:800;font-size:.95rem;text-decoration:none;text-align:center;padding:.7rem 1rem;border-radius:8px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:.4rem;transition:background .15s,transform .1s;position:relative;z-index:1}.phc-cta:hover{background:#fcd34d;transform:translateY(-1px)}.phc-cta-secondary{background:#334155;color:#f8fafc}.phc-cta-secondary:hover{background:#475569}.phc-secondary-link{text-align:center;color:#cbd5e1;font-size:.8rem;text-decoration:underline;padding:.25rem 0}.phc-secondary-link:hover{color:#fff}@media(max-width:600px){.puzzle-hero-card{padding:1rem 1.1rem}.phc-theme{font-size:1.3rem}.phc-stats{grid-template-columns:1fr 1fr}.phc-stat:nth-child(3){grid-column:1 / -1}}.topup-modal-overlay{position:fixed;inset:0;background-color:#0f172a99;display:flex;align-items:center;justify-content:center;z-index:1100;padding:20px}.topup-modal-content{background:#fff;border-radius:14px;width:100%;max-width:760px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 64px #0f172a40;overflow:hidden}.topup-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 28px 18px;border-bottom:1px solid #e2e8f0;background:#1a1a2e;color:#fff;flex-shrink:0;gap:16px}.topup-modal-title h2{margin:0 0 6px;font-size:22px;font-weight:700}.topup-modal-subtitle{margin:0;font-size:13px;color:#cbd5e1}.topup-modal-subtitle--alert{color:#fde68a}.topup-modal-close{background:transparent;border:none;color:#cbd5e1;font-size:20px;cursor:pointer;padding:4px 8px;line-height:1;min-height:32px}.topup-modal-close:hover{color:#fff}.topup-modal-body{padding:24px 28px 22px;overflow-y:auto;flex:1}.topup-status,.topup-error{padding:16px;text-align:center;font-size:14px}.topup-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px}.topup-package-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.topup-package{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 14px 18px;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease;min-height:200px;font-family:inherit;color:inherit}.topup-package:hover:not(:disabled){border-color:#c89d4a;transform:translateY(-2px);box-shadow:0 8px 20px #0f172a1a}.topup-package:disabled{cursor:not-allowed;opacity:.6}.topup-package--featured{border-color:#c89d4a;background:linear-gradient(180deg,#fffbf0,#fff)}.topup-package__badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:#c89d4a;color:#fff;font-size:11px;font-weight:700;letter-spacing:.04em;padding:4px 10px;border-radius:999px;text-transform:uppercase;white-space:nowrap}.topup-package__credits{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:12px}.topup-package__credits-icon{font-size:24px;color:#c89d4a;line-height:1}.topup-package__credits-number{font-size:30px;font-weight:800;color:#1a1a2e;line-height:1.1;font-variant-numeric:tabular-nums}.topup-package__credits-label{font-size:12px;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.topup-package__price{font-size:22px;font-weight:700;color:#1a1a2e;margin-bottom:14px}.topup-package__cta{margin-top:auto;padding:8px 16px;background:#1a1a2e;color:#fff;border-radius:8px;font-size:13px;font-weight:600;width:100%}.topup-package--featured .topup-package__cta{background:#c89d4a}.topup-modal-footnote{margin:18px 0 0;font-size:12px;color:#94a3b8;text-align:center}@media(max-width:600px){.topup-modal-content{max-height:95vh}.topup-package-grid{grid-template-columns:1fr 1fr}.topup-package{min-height:180px;padding:18px 10px 14px}.topup-package__credits-number{font-size:26px}.topup-package__price{font-size:20px}.topup-modal-close{min-height:44px;min-width:44px}}@media(max-width:380px){.topup-package-grid{grid-template-columns:1fr}}.wizard-planner{max-width:860px;margin:0 auto;padding:4px}.wizard-header{position:relative;margin-bottom:16px}.wizard-header h2{margin:0 0 4px;font-size:1.5rem}.wizard-subtitle{margin:0;color:#5a6472;font-size:.95rem}.wizard-credits-badge{position:absolute;top:0;right:0;background:#eef4ff;color:#2456c7;border:1px solid #cdddfb;border-radius:999px;padding:4px 12px;font-size:.8rem;font-weight:600}.wizard-reset-link{position:absolute;top:44px;right:0;background:none;border:none;color:#6a7585;font-size:.8rem;text-decoration:underline;cursor:pointer;padding:4px}.wizard-reset-link:hover{color:#2456c7}.wizard-error{background:#fdecec;border:1px solid #f5b5b5;color:#a23030;border-radius:8px;padding:10px 14px;margin-bottom:12px;font-size:.9rem}.wizard-interview{display:flex;flex-direction:column;gap:12px}.wizard-thread{display:flex;flex-direction:column;gap:10px;min-height:240px;max-height:52vh;overflow-y:auto;padding:16px;background:#f7f9fc;border:1px solid #e3e9f2;border-radius:12px}.wizard-empty{color:#8a94a3;text-align:center;padding:32px 12px;font-size:.95rem}.wizard-bubble{max-width:85%;padding:10px 14px;border-radius:14px;font-size:.95rem;line-height:1.45;white-space:pre-wrap}.wizard-bubble-user{align-self:flex-end;background:#2456c7;color:#fff;border-bottom-right-radius:4px}.wizard-bubble-assistant{align-self:flex-start;background:#fff;border:1px solid #e3e9f2;border-bottom-left-radius:4px;white-space:normal}.wizard-bubble-assistant p{margin:0 0 10px}.wizard-bubble-assistant>*:last-child{margin-bottom:0}.wizard-bubble-assistant>*:first-child{margin-top:0}.wizard-bubble-assistant h1,.wizard-bubble-assistant h2,.wizard-bubble-assistant h3,.wizard-bubble-assistant h4{margin:14px 0 8px;font-size:1.05rem;line-height:1.3}.wizard-bubble-assistant ul,.wizard-bubble-assistant ol{margin:8px 0 12px;padding-left:22px}.wizard-bubble-assistant li{margin-bottom:6px}.wizard-bubble-assistant li:last-child{margin-bottom:0}.wizard-bubble-assistant li>p{margin:0}.wizard-bubble-assistant hr{border:none;border-top:1px solid #e3e9f2;margin:14px 0}.wizard-bubble-assistant table{border-collapse:collapse;margin:10px 0 14px;font-size:.88rem;width:100%}.wizard-bubble-assistant th,.wizard-bubble-assistant td{text-align:left;padding:6px 10px;border-bottom:1px solid #edf1f7}.wizard-bubble-assistant th{background:#f7f9fc;font-weight:600}.wizard-bubble-assistant blockquote{margin:8px 0;padding:6px 12px;border-left:3px solid #cdddfb;color:#5a6472}.wizard-bubble-assistant code{background:#f1f4f9;border-radius:4px;padding:1px 5px;font-size:.85em}.wizard-typing{color:#8a94a3;font-style:italic}.wizard-input-row{display:flex;gap:8px;align-items:flex-end}.wizard-input{flex:1;resize:none;border:1px solid #cdd6e2;border-radius:10px;padding:10px 12px;font-size:.95rem;font-family:inherit;min-height:44px}.wizard-input:focus{outline:none;border-color:#2456c7}.wizard-btn{border:none;border-radius:10px;padding:12px 20px;font-size:.95rem;font-weight:600;cursor:pointer;min-height:44px}.wizard-btn:disabled{opacity:.6;cursor:not-allowed}.wizard-btn-primary{background:#2456c7;color:#fff}.wizard-btn-primary:hover:not(:disabled){background:#1c46a5}.wizard-btn-ghost{background:transparent;color:#2456c7;border:1px solid #cdddfb}.wizard-send-btn{flex-shrink:0}.wizard-quote-card{border:2px solid #2456c7;border-radius:12px;padding:16px;background:#f4f8ff;display:flex;flex-direction:column;gap:10px}.wizard-quote-header{display:flex;justify-content:space-between;align-items:baseline}.wizard-quote-title{font-weight:700;font-size:1.05rem}.wizard-quote-price{font-weight:700;color:#2456c7;font-size:1.2rem}.wizard-quote-details{display:flex;flex-wrap:wrap;gap:8px}.wizard-quote-details span{background:#fff;border:1px solid #dbe5f5;border-radius:999px;padding:4px 12px;font-size:.82rem;color:#3a4554}.wizard-quote-note{margin:0;font-size:.8rem;color:#6a7585}.wizard-researching{text-align:center;padding:56px 16px;border:1px solid #e3e9f2;border-radius:12px;background:#f7f9fc}.wizard-spinner{width:44px;height:44px;margin:0 auto 16px;border:4px solid #dbe5f5;border-top-color:#2456c7;border-radius:50%;animation:wizard-spin .9s linear infinite}@keyframes wizard-spin{to{transform:rotate(360deg)}}.wizard-progress-label{color:#2456c7;font-weight:600;margin:4px 0}.wizard-researching-hint{color:#8a94a3;font-size:.85rem}.wizard-failed{text-align:center;padding:40px 16px;border:1px solid #f5b5b5;border-radius:12px;background:#fdf6f6}.wizard-refund-note{color:#2e7d32;font-weight:600}.wizard-report{border:1px solid #e3e9f2;border-radius:12px;background:#fff;padding:20px}.wizard-report-body{line-height:1.55}.wizard-report-body h1{font-size:1.45rem;margin:0 0 10px}.wizard-report-body h2,.wizard-report-body h3{margin:18px 0 8px}.wizard-report-body ul,.wizard-report-body ol{margin:8px 0 12px;padding-left:24px}.wizard-report-body li{margin-bottom:6px}.wizard-report-body hr{border:none;border-top:1px solid #e3e9f2;margin:16px 0}.wizard-report-body table{border-collapse:collapse;margin:10px 0 16px;font-size:.9rem;width:100%}.wizard-report-body th,.wizard-report-body td{text-align:left;padding:8px 10px;border-bottom:1px solid #edf1f7}.wizard-report-body th{background:#f7f9fc;font-weight:600}.wizard-report-tables{margin-top:20px}.wizard-report-tables h3{margin:18px 0 8px}.wizard-report-tables table{width:100%;border-collapse:collapse;font-size:.9rem}.wizard-report-tables th,.wizard-report-tables td{text-align:left;padding:8px 10px;border-bottom:1px solid #edf1f7}.wizard-report-tables th{background:#f7f9fc;font-weight:600}.wizard-mode-cell{white-space:nowrap}.wizard-report-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}@media(max-width:768px){.wizard-thread{max-height:48vh}.wizard-credits-badge{position:static;display:inline-block;margin-top:8px}.wizard-report-actions .wizard-btn{flex:1}}@media(max-width:480px){.wizard-bubble{max-width:92%}.wizard-quote-details span{font-size:.78rem}.wizard-header h2{font-size:1.25rem}}.wizard-modal-overlay{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px 16px}.wizard-modal{position:relative;background:#fff;border-radius:16px;width:100%;max-width:880px;max-height:calc(100vh - 48px);display:flex;flex-direction:column;box-shadow:0 24px 64px #0f172a4d}.wizard-modal-close{position:absolute;top:12px;right:12px;width:44px;height:44px;border:none;border-radius:50%;background:#f1f4f9;color:#3a4554;font-size:1rem;cursor:pointer;z-index:1}.wizard-modal-close:hover{background:#e3e9f2}.wizard-modal-body{overflow-y:auto;padding:20px}@media(max-width:768px){.wizard-modal-overlay{padding:0;align-items:stretch}.wizard-modal{border-radius:0;max-height:100vh}.wizard-modal-body{padding:16px 12px}}.stadium-map-container{width:100%;height:600px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.stadium-map-container svg{width:100%;height:100%}.stadium-marker{transition:all .2s ease}.stadium-marker:hover .marker-background{r:10;filter:drop-shadow(0 0 4px rgba(0,0,0,.3))}.stadium-marker:hover .marker-text{font-size:10px;font-weight:700}.marker-background,.marker-text{transition:all .2s ease}@media(max-width:768px){.stadium-map-container{height:400px}}.stadium-tracker{margin-top:2rem}.stadium-tracker .level-pills-container{margin-bottom:1.5rem}.view-toggle{display:flex;gap:1rem;margin-bottom:2rem;justify-content:center}.toggle-btn{padding:.75rem 2rem;border:2px solid #1a73e8;background:#fff;color:#1a73e8;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.toggle-btn:hover{background:#e8f0fe}.toggle-btn.active{background:#1a73e8;color:#fff}.stadium-stats{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 2px 4px #0000001a}.stadium-stats h3{margin:0 0 1rem;color:#1a1a1a;font-size:1.5rem}.progress-text{margin:0 0 1rem;color:#666;font-size:1rem}.progress-text strong{color:#1a73e8;font-size:1.2rem}.progress-bar{width:100%;height:24px;background-color:#e8f0fe;border-radius:12px;overflow:hidden;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,#1a73e8,#0d47a1);transition:width .3s ease;display:flex;align-items:center;justify-content:flex-end;padding-right:8px;color:#fff;font-weight:600;font-size:.875rem}.stadium-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.stadium-card{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #0000001a;cursor:pointer;transition:all .2s ease;border:2px solid transparent}.stadium-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026;border-color:#1a73e8}.stadium-card.visited{background:linear-gradient(135deg,#e8f5e9,#f1f8f4);border-color:#4caf50}.stadium-card-content{display:flex;align-items:flex-start;gap:1rem;position:relative}.team-logo-container{width:60px;height:60px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;background:#fff;box-shadow:0 2px 4px #0000001a}.team-logo{width:100%;height:100%;object-fit:contain;padding:8px;transition:filter .3s ease}.team-logo-container.grayscale .team-logo{filter:grayscale(100%) opacity(.5)}.team-logo-fallback{width:100%;height:100%;background:linear-gradient(135deg,#1a73e8,#0d47a1);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.25rem}.stadium-card.visited .team-logo-container.grayscale .team-logo{filter:none}.stadium-card.visited .team-logo-fallback{background:linear-gradient(135deg,#4caf50,#2e7d32)}.stadium-info{flex:1;min-width:0}.stadium-info h4{margin:0 0 .5rem;color:#1a1a1a;font-size:1.1rem;font-weight:600}.stadium-name{margin:0 0 .25rem;color:#666;font-size:.9rem}.stadium-location{margin:0;color:#999;font-size:.85rem}.visited-badge{position:absolute;top:-4px;right:-4px;width:32px;height:32px;background:#4caf50;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem;font-weight:700;box-shadow:0 2px 4px #0003}.stadium-tracker-loading{text-align:center;padding:3rem;color:#666;font-size:1.1rem}@media(max-width:768px){.stadium-grid{grid-template-columns:1fr}.stadium-stats{padding:1rem}.stadium-stats h3{font-size:1.25rem}}.tier-selector{margin:1.5rem 0}.tier-selector h3{text-align:center;margin-bottom:.5rem;color:#2c3e50;font-size:1.5rem}.tier-subtitle{text-align:center;color:#6c757d;font-size:.9rem;margin-bottom:1rem}.billing-toggle{display:flex;justify-content:center;gap:.5rem;margin-bottom:2rem;background-color:#f8f9fa;padding:.5rem;border-radius:8px;max-width:400px;margin-left:auto;margin-right:auto}.toggle-btn{flex:1;padding:.75rem 1rem;border:2px solid #dee2e6;background-color:#f8f9fa;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;color:#6c757d;position:relative;box-shadow:none}.toggle-btn:hover{background-color:#e9ecef;border-color:#adb5bd;color:#495057}.toggle-btn.active{background-color:#4caf50;border-color:#4caf50;color:#fff;box-shadow:0 2px 4px #4caf504d}.savings-badge{display:block;font-size:.7rem;color:#28a745;font-weight:700;margin-top:.25rem}.toggle-btn.active .savings-badge{color:#d4edda}.yearly-savings{background-color:#d4edda;color:#155724;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600;display:inline-block;margin-top:.5rem}.tiers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1.5rem}.tier-card{background:#fff;border:2px solid #e9ecef;border-radius:8px;padding:1.5rem;cursor:pointer;transition:all .3s ease;position:relative;display:flex;flex-direction:column}.tier-card:hover{border-color:#4caf50;box-shadow:0 4px 12px #4caf5026;transform:translateY(-2px)}.tier-card.selected{border-color:#4caf50;background-color:#f1f8f4;box-shadow:0 4px 12px #4caf5033}.tier-card.flexible{border-color:#6c757d}.tier-card.flexible.selected{border-color:#4caf50}.tier-card.exclusive{border-color:#28a745}.tier-card.exclusive.selected{border-color:#4caf50;background-color:#e8f5e9}.flexible-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#6c757d,#495057);color:#fff;padding:.25rem 1rem;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap}.exclusive-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff;padding:.25rem 1rem;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap}.inner-circle-urgency{margin-top:1.5rem;padding:1.25rem;background:linear-gradient(135deg,#fff3cd,#ffeeba);border:1px solid #ffc107;border-radius:8px;max-width:500px;margin-left:auto;margin-right:auto}.inner-circle-urgency .urgency-text{margin:0 0 .75rem;color:#856404;font-size:.95rem;line-height:1.5}.inner-circle-urgency .roi-text{margin:0;color:#5a4307;font-size:.9rem;line-height:1.5;font-style:italic}.tier-header{text-align:center;margin-bottom:1.5rem}.tier-header h4{font-size:1.25rem;margin-bottom:.5rem;color:#2c3e50}.tier-price{margin:1rem 0}.tier-price .price{font-size:2rem;font-weight:700;color:#2c3e50}.tier-price .period{font-size:1rem;color:#6c757d;font-weight:400}.tier-description{color:#6c757d;font-size:.9rem;margin:0}.tier-features{flex:1;margin-bottom:1rem}.feature-item{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.75rem;font-size:.9rem;color:#495057}.check-icon{width:20px;height:20px;flex-shrink:0;color:#4caf50;margin-top:2px}.tier-select-indicator{text-align:center;padding:.75rem;background-color:#e9ecef;border-radius:6px;font-weight:600;color:#495057;transition:all .2s}.tier-card.selected .tier-select-indicator{background-color:#4caf50;color:#fff}.tier-card:hover .tier-select-indicator{background-color:#d4edda}.tier-card.selected:hover .tier-select-indicator{background-color:#45a049}.coupon-section{margin-top:2rem;padding:1.5rem;background-color:#f8f9fa;border-radius:8px;max-width:500px;margin-left:auto;margin-right:auto}.coupon-label{display:block;font-weight:600;color:#495057;margin-bottom:.5rem;font-size:.95rem}.coupon-input-wrapper{position:relative;display:flex;align-items:center}.coupon-input{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:2px solid #dee2e6;border-radius:6px;font-size:1rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;transition:all .2s ease;background-color:#fff;color:#212529}.coupon-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.coupon-input::placeholder{text-transform:none;letter-spacing:normal;font-weight:400;color:#adb5bd}.coupon-clear-btn{position:absolute;right:.5rem;background:none;border:none;font-size:1.5rem;color:#6c757d;cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:4px;transition:all .2s ease}.coupon-clear-btn:hover{background-color:#e9ecef;color:#495057}.coupon-hint{margin-top:.5rem;font-size:.85rem;color:#6c757d;margin-bottom:0}@media(max-width:768px){.tiers-grid{grid-template-columns:1fr}.tier-card{max-width:400px;margin:0 auto;width:100%;padding:1.5rem;min-height:60px}.coupon-section{margin-top:1.5rem;padding:1rem;max-width:95%}.tier-select-indicator{min-height:44px;padding:.875rem}}@media(max-width:480px){.tier-selector h3{font-size:1.25rem}.billing-toggle{max-width:100%;padding:.35rem}.toggle-btn{padding:.625rem .75rem;font-size:.9rem}.savings-badge{font-size:.65rem}.tier-card{padding:1.25rem}.tier-header h4{font-size:1.125rem}.tier-price .price{font-size:1.75rem}.feature-item{font-size:.85rem}.coupon-section{padding:.75rem}.coupon-input{padding:.625rem 2.25rem .625rem .875rem;font-size:.9rem}}.chat-credits-panel{display:flex;flex-direction:column;gap:20px}.chat-credits-panel__top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.chat-credits-panel__totals{display:flex;flex-direction:column;gap:4px}.chat-credits-panel__total{display:flex;align-items:baseline;gap:8px}.chat-credits-panel__total-icon{font-size:24px;color:#c89d4a}.chat-credits-panel__total-number{font-size:36px;font-weight:800;color:#1a1a2e;font-variant-numeric:tabular-nums}.chat-credits-panel__total-label{font-size:14px;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.chat-credits-panel__breakdown{display:flex;align-items:center;gap:8px;font-size:13px;color:#475569}.chat-credits-panel__dot{color:#cbd5e1}.chat-credits-panel__refill{margin:4px 0 0;font-size:12px;color:#94a3b8}.chat-credits-panel__activity{border-top:1px solid #e2e8f0;padding-top:16px}.chat-credits-panel__activity h3{margin:0 0 10px;font-size:14px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.05em}.chat-credits-panel__empty,.chat-credits-panel__error{margin:0;font-size:13px;color:#94a3b8}.chat-credits-panel__error{color:#b91c1c}.chat-credits-panel__ledger{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.chat-credits-panel__ledger-row{display:grid;grid-template-columns:60px 1fr auto;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #f1f5f9;font-size:14px}.chat-credits-panel__ledger-row:last-child{border-bottom:none}.chat-credits-panel__delta{font-weight:700;font-variant-numeric:tabular-nums;text-align:right}.chat-credits-panel__delta--pos{color:#15803d}.chat-credits-panel__delta--neg{color:#64748b}.chat-credits-panel__reason{color:#1a1a2e}.chat-credits-panel__date{color:#94a3b8;font-size:12px}@media(max-width:600px){.chat-credits-panel__top{flex-direction:column;align-items:stretch}.chat-credits-panel__total-number{font-size:30px}}.alert-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.alert-modal{background:#fff;border-radius:12px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 12px 40px #0003}.alert-modal__header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #eee}.alert-modal__header h2{margin:0;font-size:20px;color:#1a1a2e}.alert-modal__close{background:none;border:none;font-size:28px;line-height:1;cursor:pointer;color:#666;padding:0 4px}.alert-modal__close:hover{color:#1a1a2e}.alert-modal__body{display:flex;flex-direction:column;gap:18px;padding:20px 24px 24px}.alert-modal__field{display:flex;flex-direction:column;gap:6px}.alert-modal__label{font-size:13px;font-weight:600;color:#444;text-transform:uppercase;letter-spacing:.04em}.alert-modal__body select{padding:10px 12px;border:1px solid #ccc;border-radius:8px;font-size:14px;background:#fff;color:#1a1a2e;min-height:44px}.alert-modal__body select option{color:#1a1a2e;background-color:#fff}.alert-modal__mode{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.alert-modal__radio{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid #ddd;border-radius:8px;cursor:pointer;transition:background .15s,border-color .15s}.alert-modal__radio:hover{background:#f7f7fa}.alert-modal__radio input{margin-top:3px}.alert-modal__radio span{display:flex;flex-direction:column}.alert-modal__radio strong{font-size:14px;color:#1a1a2e}.alert-modal__radio em{font-size:12px;color:#666;font-style:normal;margin-top:2px}.alert-modal__window-row{display:flex;gap:8px}.alert-modal__window-row select{flex:1}.alert-modal__hint{margin:4px 0 0;font-size:12px;color:#666}.alert-modal__error{margin:0;padding:10px 12px;background:#fdecec;color:#b3261e;border-radius:6px;font-size:13px}.alert-modal__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.alert-modal__atcap{align-items:flex-start}.alert-modal__atcap p{margin:0;font-size:14px;color:#444}@media(max-width:480px){.alert-modal{max-height:100vh;border-radius:0}}.city-alerts-panel{display:flex;flex-direction:column;gap:16px}.city-alerts-panel__top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.city-alerts-panel__summary{display:flex;flex-direction:column;gap:4px}.city-alerts-panel__count{display:flex;align-items:baseline;gap:8px}.city-alerts-panel__count-num{font-size:32px;font-weight:800;color:#1a1a2e;font-variant-numeric:tabular-nums}.city-alerts-panel__count-sep{color:#999;margin:0 2px;font-weight:600}.city-alerts-panel__count-label{font-size:14px;color:#666}.city-alerts-panel__sub{margin:0;font-size:13px;color:#666}.city-alerts-panel__empty,.city-alerts-panel__error{margin:0;padding:12px 14px;border-radius:8px;font-size:13px}.city-alerts-panel__empty{background:#f6f7fa;color:#555}.city-alerts-panel__error{background:#fdecec;color:#b3261e}.city-alerts-panel__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.city-alerts-panel__row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;background:#fafbfd;border:1px solid #e6e8ee;border-radius:10px;flex-wrap:wrap}.city-alerts-panel__row--paused{opacity:.6}.city-alerts-panel__row-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.city-alerts-panel__row-city{font-size:15px;font-weight:600;color:#1a1a2e;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.city-alerts-panel__row-meta{font-size:13px;color:#555}.city-alerts-panel__row-sent{margin-left:6px;color:#888}.city-alerts-panel__badge{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:4px;background:#eaecf2;color:#555}.city-alerts-panel__badge--trip{background:#e6f0ff;color:#1857c4}.city-alerts-panel__row-actions{display:flex;gap:6px}.city-alerts-panel__action{background:none;border:1px solid #ccd0d8;color:#444;font-size:13px;padding:6px 10px;border-radius:6px;cursor:pointer;min-height:32px}.city-alerts-panel__action:hover:not(:disabled){background:#f0f2f6}.city-alerts-panel__action:disabled{opacity:.5;cursor:not-allowed}.city-alerts-panel__action--danger{color:#b3261e;border-color:#f0c7c4}.city-alerts-panel__action--danger:hover:not(:disabled){background:#fdecec}@media(max-width:768px){.city-alerts-panel__row{flex-direction:column;align-items:stretch}.city-alerts-panel__row-actions{justify-content:flex-end}.city-alerts-panel__action{min-height:44px;padding:8px 14px}}.profile-page{min-height:calc(100vh - 150px);background-color:#f8f9fa;padding:2rem 0}.profile-container{max-width:1100px;margin:0 auto;padding:0 1rem}.profile-layout{display:grid;grid-template-columns:260px 1fr;gap:1.5rem;align-items:start}.profile-nav{background:#fff;border-radius:12px;padding:.5rem;box-shadow:0 2px 8px #00000014;position:sticky;top:1rem}.profile-nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.profile-nav-item{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem .875rem;background:transparent;border:none;border-radius:8px;font-size:.95rem;font-weight:500;color:#2c3e50;cursor:pointer;text-align:left;transition:background-color .15s ease,color .15s ease}.profile-nav-item:hover{background-color:#f1f3f5}.profile-nav-item.is-active{background-color:#e8f5e9;color:#2e7d32;font-weight:600}.profile-nav-icon{font-size:1.1rem;flex-shrink:0;width:1.5rem;text-align:center}.profile-nav-label{flex:1}.profile-nav-chevron{color:#adb5bd;font-size:1.25rem;line-height:1;display:none}.profile-detail{min-width:0}.profile-detail>.profile-section:first-of-type,.profile-detail>div:not(.profile-back-btn):first-of-type{margin-top:0}.profile-back-btn{display:none;background:transparent;border:none;color:#2e7d32;font-size:.95rem;font-weight:600;padding:.5rem 0;margin-bottom:.5rem;cursor:pointer}.profile-back-btn:hover{text-decoration:underline}.profile-header{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;gap:2rem}.profile-avatar{flex-shrink:0}.profile-avatar img{width:100px;height:100px;border-radius:50%;object-fit:cover}.avatar-placeholder{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,#4caf50,#45a049);display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:700;color:#fff}.profile-header-info{flex:1}.profile-header-info h1{margin:0 0 .5rem;color:#2c3e50;font-size:2rem}.profile-email{margin:0 0 1rem;color:#6c757d;font-size:1rem}.profile-badges{display:flex;gap:.5rem;flex-wrap:wrap}.badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.badge-provider{background-color:#e3f2fd;color:#1976d2}.badge-verified{background-color:#d4edda;color:#155724}.profile-section{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.profile-section h2{margin:0 0 1.5rem;color:#2c3e50;font-size:1.5rem}.section-header h2{margin:0}.subscription-card{background-color:#f8f9fa;border-radius:8px;padding:1.5rem}.subscription-tier{border-left:4px solid #4CAF50;padding-left:1.5rem;display:flex;justify-content:space-between;align-items:center}.tier-info h3{margin:0 0 .5rem;color:#2c3e50;font-size:1.5rem}.tier-billing,.tier-status{margin:.25rem 0;color:#6c757d;font-size:.95rem}.status-active{color:#28a745;font-weight:600;text-transform:capitalize}.tier-actions{display:flex;flex-direction:column;gap:.5rem}.info-card{background-color:#f8f9fa;border-radius:8px;padding:1.5rem}.info-display{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.info-item label{display:block;font-weight:600;color:#6c757d;font-size:.9rem;margin-bottom:.5rem}.info-item p{margin:0;color:#2c3e50;font-size:1rem}.edit-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.edit-form .form-group{margin-bottom:0}.edit-form .form-actions{grid-column:1 / -1;display:flex;gap:1rem;margin-top:.5rem}.form-group label{display:block;font-weight:600;color:#2c3e50;margin-bottom:.5rem;font-size:.9rem}.form-group input,.team-select{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:6px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.team-select:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.team-select{background-color:#fff;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem}.team-select option{padding:.5rem;background-color:#fff;color:#2c3e50}.team-select option:hover,.team-select option:checked{background-color:#4caf50;color:#fff}.settings-card{background-color:#f8f9fa;border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.setting-item{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.5rem;border-bottom:1px solid #dee2e6}.setting-item:last-child{border-bottom:none;padding-bottom:0}.setting-info h3{margin:0 0 .5rem;color:#2c3e50;font-size:1.1rem}.setting-info p{margin:0;color:#6c757d;font-size:.9rem}.text-muted{color:#6c757d;font-style:italic}.field-hint{display:block;margin-top:.25rem;color:#6c757d;font-size:.85rem}.airport-detail{color:#6c757d;font-weight:400}.error-message{background-color:#ffebee;color:#c62828;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem;border-left:4px solid #c62828}.success-message{background-color:#e8f5e9;color:#2e7d32;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem;border-left:4px solid #4CAF50}.btn-edit,.btn-upgrade,.btn-primary,.btn-secondary,.btn-danger,.btn-link,.btn-link-danger{padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.95rem}.btn-edit,.btn-upgrade{background-color:#4caf50;color:#fff}.btn-edit:hover,.btn-upgrade:hover{background-color:#45a049}.btn-primary{background-color:#4caf50;color:#fff}.btn-primary:hover{background-color:#45a049}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-link,.btn-link-danger{background:none;padding:.5rem 0;color:#007bff;font-weight:600}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link-danger{color:#dc3545}.btn-link-danger:hover{color:#c82333;text-decoration:underline}@media(max-width:768px){.profile-header{flex-direction:column;text-align:center}.profile-badges{justify-content:center}.subscription-tier{flex-direction:column;align-items:flex-start;gap:1rem}.tier-actions,.tier-actions button{width:100%}.setting-item{flex-direction:column;align-items:flex-start;gap:1rem}.setting-item button{width:100%}.info-display,.edit-form{grid-template-columns:1fr}.profile-layout{grid-template-columns:1fr;gap:0}.profile-nav{position:static;padding:.25rem}.profile-nav-chevron{display:inline}.profile-nav-item{padding:1rem .875rem;font-size:1rem}.profile-nav-item.is-active{background-color:transparent;color:#2c3e50;font-weight:500}.profile-layout.mobile-show-detail .profile-nav,.profile-layout.mobile-show-list .profile-detail{display:none}.profile-back-btn{display:inline-block}}.terms-page{min-height:calc(100vh - 80px);padding:2rem;background-color:#f8f9fa}.terms-container{max-width:800px;margin:0 auto;background:#fff;padding:3rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.terms-container h1{color:#1a1a1a;margin-bottom:.5rem;font-size:2.5rem}.last-updated{color:#6c757d;font-size:.9rem;margin-bottom:2rem;font-style:italic}.terms-container section{margin-bottom:2rem}.terms-container h2{color:#2c3e50;font-size:1.5rem;margin-bottom:.75rem;margin-top:1.5rem}.terms-container p{color:#495057;line-height:1.6;margin-bottom:1rem}.terms-container strong{color:#1a1a1a;font-weight:600}.terms-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid #e9ecef;text-align:center}.terms-footer .btn-primary{display:inline-block;padding:.75rem 2rem;text-decoration:none}@media(max-width:768px){.terms-page{padding:1rem}.terms-container{padding:1.5rem}.terms-container h1{font-size:2rem}.terms-container h2{font-size:1.25rem}}.payment-success-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.payment-success-container{background:#fff;border-radius:12px;padding:3rem;max-width:500px;width:100%;text-align:center;box-shadow:0 10px 40px #0000001a}.spinner{border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 1.5rem}.success-icon{width:80px;height:80px;border-radius:50%;background:#10b981;color:#fff;font-size:48px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-weight:700}.error-icon{width:80px;height:80px;border-radius:50%;background:#ef4444;color:#fff;font-size:48px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-weight:700}.payment-success-container h2{margin-bottom:1rem;color:#1f2937}.payment-success-container p{color:#6b7280;margin-bottom:1.5rem;line-height:1.6}.email-info{background:#f3f4f6;padding:1rem;border-radius:8px;margin:1.5rem 0}.email-info p{margin:0;color:#374151}.email-info strong{color:#1f2937}.action-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.btn-primary{background:#667eea;color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#5568d3}.btn-secondary{background:#6b7280;color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-secondary:hover{background:#4b5563}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:2rem;border-radius:8px;max-width:450px;width:90%;max-height:90vh;overflow-y:auto;position:relative}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;cursor:pointer;color:#666;line-height:1;padding:0;width:30px;height:30px}.modal-close:hover{color:#000}.modal-content h2{margin-top:0;margin-bottom:1.5rem;color:#333}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#4caf50}.form-group small{display:block;margin-top:.25rem;font-size:.875rem;color:#666}.error-message{background-color:#ffebee;color:#c62828;padding:.75rem;border-radius:4px;margin-bottom:1rem;font-size:.875rem}.btn-primary{width:100%;padding:.875rem;background-color:#4caf50;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-primary:hover:not(:disabled){background-color:#45a049}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.modal-footer{margin-top:1.5rem;text-align:center;padding-top:1.5rem;border-top:1px solid #eee}.modal-footer p{margin:0;color:#666}.link-button{background:none;border:none;color:#4caf50;cursor:pointer;font-weight:500;padding:0;text-decoration:underline}.link-button:hover{color:#45a049}.divider{text-align:center;margin:1.5rem 0;position:relative}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background-color:#ddd}.divider span{background-color:#fff;padding:0 1rem;position:relative;color:#666;font-size:.875rem}.btn-google{width:100%;padding:.875rem;background-color:#fff;color:#444;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:background-color .2s}.btn-google:hover{background-color:#f8f8f8}.form-group input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:24px;height:24px;min-width:24px;min-height:24px;border:2px solid #dee2e6;border-radius:4px;background-color:#fff;cursor:pointer;transition:all .2s ease;position:relative;margin:0;flex-shrink:0}.form-group input[type=checkbox]:hover{border-color:#4caf50}.form-group input[type=checkbox]:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.form-group input[type=checkbox]:checked{background-color:#4caf50;border-color:#4caf50}.form-group input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:16px;font-weight:700;line-height:1}.form-group label{cursor:pointer;-webkit-user-select:none;user-select:none}.form-group label:has(input[type=checkbox]:checked){background-color:#e8f5e9;border:2px solid #4CAF50;padding:.75rem;border-radius:6px;margin:0;transition:all .2s ease}.form-group label:has(input[type=checkbox]){border:2px solid transparent;padding:.75rem;border-radius:6px;transition:all .2s ease}.form-group label:has(input[type=checkbox]:checked) span{font-weight:600;color:#2e7d32}.btn-secondary{padding:.875rem;background-color:#6c757d;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-secondary:hover:not(:disabled){background-color:#5a6268}.btn-secondary:disabled{background-color:#ccc;cursor:not-allowed}@media(max-width:768px){.modal-overlay{padding:0}.modal-content{max-width:100%;max-height:100vh;min-height:100vh;border-radius:0;padding:1.5rem}.modal-close{width:44px;height:44px;min-width:44px;min-height:44px;top:.75rem;right:.75rem;display:flex;align-items:center;justify-content:center}.modal-content h2{font-size:1.5rem;margin-right:3rem}.form-group{margin-bottom:1rem}.form-group input:not([type=checkbox]){padding:.875rem;font-size:16px}.btn-primary,.btn-secondary{padding:1rem;font-size:1rem;min-height:44px}.divider{margin:1.25rem 0}.btn-google{padding:1rem;min-height:44px}.modal-footer{margin-top:1.25rem;padding-top:1.25rem}}@media(max-width:480px){.modal-content{padding:1rem}.modal-content h2{font-size:1.25rem}.form-group label{font-size:.9rem}.form-group input:not([type=checkbox]){font-size:16px}.form-group{margin-bottom:.875rem}.modal-footer{margin-top:1rem;padding-top:1rem}.divider{margin:1rem 0}}.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media(forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media(forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}@media(hover:hover){.maplibregl-ctrl button:not(:disabled):hover{background-color:#0000000d}}.maplibregl-ctrl button:not(:disabled):active{background-color:#0000000d}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-globe .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%23333' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='8.5'/%3E%3Cpath d='M17.5 11c0 4.819-3.02 8.5-6.5 8.5S4.5 15.819 4.5 11 7.52 2.5 11 2.5s6.5 3.681 6.5 8.5Z'/%3E%3Cpath d='M13.5 11c0 2.447-.331 4.64-.853 6.206-.262.785-.562 1.384-.872 1.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831 15.64 8.5 13.446 8.5 11s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872 1.777.522 1.565.853 3.76.853 6.206Z'/%3E%3Cpath d='M11 7.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138q.07-.058.224-.138c.299-.151.763-.302 1.379-.434C7.378 5.666 9.091 5.5 11 5.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428ZM4.486 6.436ZM11 16.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138 1.3 1.3 0 0 1 .224-.138c.299-.151.763-.302 1.379-.434C7.378 14.666 9.091 14.5 11 14.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138a1.3 1.3 0 0 1-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm-6.514-1.064ZM11 12.5c-2.46 0-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5 1.5 0 0 1-.39-.272.3.3 0 0 1-.047-.064.3.3 0 0 1 .048-.064c.066-.073.189-.167.389-.272.399-.21 1.009-.413 1.805-.59C6.328 9.722 8.54 9.5 11 9.5s4.672.222 6.256.574c.795.177 1.405.38 1.804.59.2.105.323.2.39.272a.3.3 0 0 1 .047.064.3.3 0 0 1-.048.064 1.4 1.4 0 0 1-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0 .018v.002zm17.002.002v-.002zm0-.018v-.002z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-globe-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%2333b5e5' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='8.5'/%3E%3Cpath d='M17.5 11c0 4.819-3.02 8.5-6.5 8.5S4.5 15.819 4.5 11 7.52 2.5 11 2.5s6.5 3.681 6.5 8.5Z'/%3E%3Cpath d='M13.5 11c0 2.447-.331 4.64-.853 6.206-.262.785-.562 1.384-.872 1.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831 15.64 8.5 13.446 8.5 11s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872 1.777.522 1.565.853 3.76.853 6.206Z'/%3E%3Cpath d='M11 7.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138q.07-.058.224-.138c.299-.151.763-.302 1.379-.434C7.378 5.666 9.091 5.5 11 5.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428ZM4.486 6.436ZM11 16.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138 1.3 1.3 0 0 1 .224-.138c.299-.151.763-.302 1.379-.434C7.378 14.666 9.091 14.5 11 14.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138a1.3 1.3 0 0 1-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm-6.514-1.064ZM11 12.5c-2.46 0-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5 1.5 0 0 1-.39-.272.3.3 0 0 1-.047-.064.3.3 0 0 1 .048-.064c.066-.073.189-.167.389-.272.399-.21 1.009-.413 1.805-.59C6.328 9.722 8.54 9.5 11 9.5s4.672.222 6.256.574c.795.177 1.405.38 1.804.59.2.105.323.2.39.272a.3.3 0 0 1 .047.064.3.3 0 0 1-.048.064 1.4 1.4 0 0 1-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0 .018v.002zm17.002.002v-.002zm0-.018v-.002z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media(forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media(forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media(forced-colors:active)and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:#0000000d}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active)and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:#000000bf;text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}[dir=rtl] .maplibregl-popup-anchor-left{flex-direction:row-reverse}[dir=rtl] .maplibregl-popup-anchor-right{flex-direction:row}[dir=rtl] .maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-end}[dir=rtl] .maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-start}[dir=rtl] .maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-end}[dir=rtl] .maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-start}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@media(prefers-reduced-motion:reduce){.maplibregl-user-location-dot:before{animation:none}}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:#0006;color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media(hover:none),(pointer:coarse){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}.hdm-overlay{position:fixed;inset:0;background:#0f172a99;z-index:1100;display:flex;align-items:center;justify-content:center;padding:16px}.hdm-card{background:#fff;border-radius:14px;width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px #0f172a40}.hdm-hero{position:relative;height:220px;background:#f1f5f9;flex-shrink:0}.hdm-hero-img{width:100%;height:100%;object-fit:cover;object-position:center}.hdm-hero-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:56px;color:#cbd5e1}.hdm-close{position:absolute;top:12px;right:12px;background:#0f172a80;border:none;color:#fff;border-radius:7px;width:30px;height:30px;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;transition:background .15s}.hdm-close:hover{background:#0f172ac7}.hdm-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.hdm-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.hdm-name{font-size:1.15rem;font-weight:700;color:#0f172a;margin:0 0 4px;line-height:1.3}.hdm-brand{font-size:.75rem;color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;padding:2px 8px;border-radius:4px}.hdm-score-pill{display:flex;flex-direction:column;align-items:center;background:#1a1a2e;color:#fff;border-radius:8px;padding:6px 12px;flex-shrink:0;min-width:54px;text-align:center}.hdm-score{font-size:1.2rem;font-weight:700;line-height:1}.hdm-score-word{font-size:.62rem;color:#94a3b8;margin-top:2px;text-transform:uppercase;letter-spacing:.05em}.hdm-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.82rem;color:#64748b}.hdm-stars{color:#f59e0b;letter-spacing:1px;font-size:.95rem}.hdm-reviews{color:#64748b}.hdm-review-source{font-size:.7rem;color:#94a3b8}.hdm-distance{color:#475569;font-weight:500}.hdm-section{display:flex;flex-direction:column;gap:8px}.hdm-section-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;margin:0}.hdm-amenities{display:flex;flex-wrap:wrap;gap:6px}.hdm-amenity-pill{font-size:.75rem;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;padding:3px 10px;border-radius:20px}.hdm-pricing-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:8px}.hdm-pricing-dates{font-size:.82rem;font-weight:600;color:#1a1a2e}.hdm-pricing-amounts{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px}.hdm-price-per-night{font-size:1.6rem;font-weight:800;color:#0f172a;line-height:1}.hdm-price-unit{font-size:.88rem;font-weight:500;color:#64748b}.hdm-price-total{font-size:.85rem;color:#64748b}.hdm-deal-badge{font-size:.7rem;font-weight:700;background:#eef2ff;color:#4338ca;border:1px solid #c7d2fe;padding:2px 8px;border-radius:10px;letter-spacing:.01em}.hdm-pricing-empty{font-size:.82rem;color:#94a3b8}.hdm-nightly-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(54px,1fr);gap:6px;margin-top:10px;overflow-x:auto;padding-bottom:2px}.hdm-nightly-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:6px 4px;min-width:54px}.hdm-nightly-date{font-size:.68rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.02em}.hdm-nightly-price{font-size:.95rem;font-weight:700;color:#0f172a;margin-top:2px}.hdm-pricing-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}.hdm-policy-badge{font-size:.75rem;font-weight:600;padding:2px 9px;border-radius:20px}.hdm-policy-badge.free-cancel{background:#eef2ff;color:#4338ca;border:1px solid #c7d2fe}.hdm-policy-badge.no-prepay{background:#f8fafc;color:#475569;border:1px solid #e2e8f0}.hdm-price-staleness{font-size:.72rem;color:#94a3b8}.hdm-footer{display:flex;align-items:center;gap:8px;padding:13px 20px;border-top:1px solid #e2e8f0;flex-shrink:0;background:#f8fafc}.hdm-footer-actions{display:flex;gap:8px;flex:1;flex-wrap:wrap;justify-content:flex-end}.hdm-btn-secondary{flex-shrink:0;padding:9px 15px;border:1px solid #e2e8f0;background:#fff;color:#475569;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.hdm-btn-secondary:hover{background:#f1f5f9;border-color:#94a3b8;color:#1a1a2e}.hdm-btn-website{padding:9px 13px;border:1px solid #e2e8f0;background:#fff;color:#475569;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.hdm-btn-website:hover{background:#f1f5f9;border-color:#94a3b8}.hdm-btn-check-price{padding:9px 13px;border:none;background:#667eea;color:#fff;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.hdm-btn-check-price:hover:not(:disabled){background:#5a6fd6;box-shadow:0 3px 10px #667eea47}.hdm-btn-check-price:disabled{opacity:.45;cursor:not-allowed}.hdm-btn-primary{padding:9px 15px;background:#1a1a2e;color:#fff;border:none;border-radius:8px;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .15s;white-space:nowrap;letter-spacing:.01em}.hdm-btn-primary:hover:not(:disabled){background:#2d2d4e;box-shadow:0 3px 10px #1a1a2e38}.hdm-btn-primary:disabled{opacity:.4;cursor:not-allowed}@media(max-width:480px){.hdm-card{max-height:95vh;border-radius:12px 12px 0 0;margin-top:auto}.hdm-overlay{align-items:flex-end;padding:0}.hdm-footer{flex-direction:column;align-items:stretch;background:#f8fafc}.hdm-footer-actions{flex-direction:column;justify-content:stretch}.hdm-btn-website,.hdm-btn-check-price,.hdm-btn-primary,.hdm-btn-secondary{width:100%;text-align:center}}.hotel-modal-overlay{position:fixed;inset:0;background-color:#0f172a99;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.hotel-modal-content{background:#fff;border-radius:14px;width:100%;max-width:980px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 64px #0f172a40;overflow:hidden}.hotel-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 28px 18px;border-bottom:1px solid #e2e8f0;background:#1a1a2e;color:#fff}.header-title h2{margin:0 0 4px;font-size:20px;font-weight:700;letter-spacing:.01em}.header-subtitle{margin:0;font-size:13px;color:#94a3b8}.modal-close-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);font-size:18px;color:#cbd5e1;cursor:pointer;padding:0;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .15s}.modal-close-btn:hover{background:#ffffff2e;color:#fff}.hotel-modal-body{flex:1;overflow-y:auto;padding:20px 28px}.search-summary{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:18px;font-size:13px}.date-range{color:#1a1a2e;font-weight:600}.results-count{color:#64748b;font-size:12px}.hotels-grid{display:flex;flex-direction:column;gap:12px}.no-results{text-align:center;padding:48px 20px;color:#64748b}.hotel-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;transition:all .15s ease}.hotel-card:hover{border-color:#667eea;box-shadow:0 2px 12px #667eea1f}.hotel-card-content{display:grid;grid-template-columns:96px 1fr;gap:14px}.hotel-thumbnail{width:96px;height:76px;border-radius:7px;overflow:hidden;background:#f1f5f9;flex-shrink:0}.hotel-thumbnail img{width:100%;height:100%;object-fit:cover}.thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:28px;color:#94a3b8}.hotel-info{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.hotel-header{display:flex;flex-direction:column;gap:3px}.hotel-name{margin:0;font-size:15px;font-weight:700;color:#0f172a;line-height:1.3}.hotel-rating{display:flex;align-items:center;gap:5px}.rating-score{background:#1a1a2e;color:#fff;font-size:12px;font-weight:700;padding:2px 7px;border-radius:5px;letter-spacing:.02em}.rating-word{font-size:12px;color:#475569;font-weight:500}.rating-count{font-size:11px;color:#64748b}.rating-attribution{font-size:10px;color:#94a3b8}.hotel-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.star-rating{display:inline-flex;gap:1px}.star{font-size:11px}.star.filled{color:#f59e0b}.star.empty{color:#cbd5e1}.stadium-distance{font-size:12px;color:#475569;font-weight:500}.brand-badge{display:inline-block;font-size:11px;color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;padding:2px 7px;border-radius:4px;max-width:fit-content}.amenities-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.amenity-pill{font-size:11px;color:#475569;background:#f8fafc;border:1px solid #e2e8f0;padding:2px 7px;border-radius:10px}.hotel-action{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid #f1f5f9}.price-section{display:flex;align-items:center;flex:1}.deal-badge{display:inline-block;font-size:11px;color:#4338ca;background:#eef2ff;border:1px solid #c7d2fe;padding:2px 7px;border-radius:4px;margin-bottom:4px;font-weight:600;letter-spacing:.01em}.price-display{display:flex;align-items:baseline;justify-content:flex-end;gap:2px}.price-amount{font-size:22px;font-weight:700;color:#0f172a;line-height:1}.price-label{font-size:12px;color:#64748b}.price-unavailable{font-size:13px;color:#94a3b8;font-style:italic}.price-staleness{font-size:10px;color:#94a3b8}.policy-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px}.policy-badge.free-cancel{background:#eef2ff;color:#4338ca;border:1px solid #c7d2fe}.hotel-toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%);padding:10px 20px;border-radius:24px;font-size:13px;font-weight:600;white-space:nowrap;z-index:2000;pointer-events:none;animation:hotel-toast-in .2s ease;box-shadow:0 4px 20px #0000002e}.hotel-toast--success{background:#0f172a;color:#fff}.hotel-toast--error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}@keyframes hotel-toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.card-action-btns{display:flex;gap:6px;align-items:center}.check-price-btn{background:transparent;color:#1a1a2e;border:1.5px solid #1a1a2e;padding:7px 12px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap;letter-spacing:.01em;min-width:48px}.check-price-btn:hover:not(:disabled){background:#1a1a2e;color:#fff}.check-price-btn:disabled{border-color:#cbd5e1;color:#94a3b8;cursor:not-allowed}.book-btn{background:#1a1a2e;color:#fff;border:none;padding:9px 22px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;letter-spacing:.01em}.book-btn:hover:not(:disabled){background:#2d2d4e;transform:translateY(-1px);box-shadow:0 4px 14px #1a1a2e40}.book-btn:disabled{background:#cbd5e1;cursor:not-allowed}.hotel-modal-footer{padding:14px 28px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:10px;background:#f8fafc}.btn-secondary{background:#fff;color:#475569;border:1px solid #e2e8f0;padding:9px 18px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.btn-secondary:hover{background:#f8fafc;border-color:#94a3b8;color:#1a1a2e}@media(max-width:768px){.hotel-modal-overlay{padding:0}.hotel-modal-content{max-width:100%;max-height:100vh;border-radius:0}.hotel-modal-header{padding:18px 20px}.hotel-modal-body{padding:14px 16px}.hotel-card-content{grid-template-columns:76px 1fr;gap:12px}.hotel-thumbnail{width:76px;height:62px}.search-summary{flex-direction:column;gap:6px;align-items:flex-start}.hotel-name{font-size:14px}.price-amount{font-size:20px}}@media(max-width:480px){.hotel-card-content{grid-template-columns:1fr}.hotel-thumbnail{width:100%;height:130px}}.filter-bar{display:flex;flex-direction:column;gap:8px;padding:10px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:12px}.filter-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.filter-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;min-width:52px;flex-shrink:0}.filter-chip{padding:3px 10px;border:1px solid #e2e8f0;background:#fff;color:#475569;border-radius:20px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.filter-chip:hover{border-color:#94a3b8;color:#1a1a2e}.filter-chip.active{background:#1a1a2e;border-color:#1a1a2e;color:#fff}.chain-count{display:inline-block;margin-left:4px;padding:1px 6px;border-radius:999px;background:#00000014;font-size:11px;font-weight:600;color:inherit;opacity:.85}.filter-chip.active .chain-count{background:#ffffff2e}.filter-chip-clear{color:#2563eb;font-weight:600}.filter-chip-clear:hover{text-decoration:underline}.view-toggle{display:flex;gap:0;padding:10px 0;margin-bottom:12px;border-bottom:1px solid #e2e8f0}.view-toggle-btn{flex:1;padding:8px 14px;border:none;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font-weight:500;font-size:13px;color:#64748b;transition:all .15s;margin-bottom:-1px}.view-toggle-btn:hover{color:#1a1a2e}.view-toggle-btn.active{color:#1a1a2e;border-bottom-color:#667eea;font-weight:600}.hotels-content.desktop-layout{display:flex;gap:16px;height:600px;margin-top:0}.map-section{flex:0 0 60%;height:100%;min-height:500px;border-radius:10px;overflow:hidden;box-shadow:0 1px 6px #0f172a14;border:1px solid #e2e8f0;background:#f8fafc;position:relative}.search-area-btn{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:10;background:#1a1a2e;color:#fff;border:none;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #0000002e;transition:background .15s,transform .1s}.search-area-btn:hover:not(:disabled){background:#2d2d4a;transform:translate(-50%) translateY(-1px)}.search-area-btn:disabled{opacity:.7;cursor:not-allowed}.bounds-result-banner{position:absolute;bottom:14px;left:50%;transform:translate(-50%);z-index:10;background:#fffffffa;color:#1a1a2e;border:1px solid #e2e8f0;border-radius:8px;padding:8px 14px;font-size:12.5px;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;gap:10px;max-width:92%}.bounds-reset-btn{background:transparent;color:#2563eb;border:none;font-size:12px;font-weight:600;cursor:pointer;padding:2px 4px}.bounds-reset-btn:hover{text-decoration:underline}.fetch-fresh-floating-btn{position:absolute;bottom:14px;left:50%;transform:translate(-50%);z-index:10;background:#1a1a2e;color:#fff;border:none;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;box-shadow:0 4px 12px #0000002e;transition:background .15s,transform .1s}.fetch-fresh-floating-btn:hover:not(:disabled){background:#2d2d4a;transform:translate(-50%) translateY(-1px)}.fetch-fresh-floating-btn:disabled{opacity:.7;cursor:not-allowed}.bounds-fetch-fresh-btn{background:#1a1a2e;color:#fff;border:none;border-radius:999px;padding:5px 12px;font-size:11.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}.bounds-fetch-fresh-btn:hover:not(:disabled){background:#2d2d4a}.bounds-fetch-fresh-btn:disabled{opacity:.7;cursor:not-allowed}@media(max-width:768px){.search-area-btn{font-size:12px;padding:9px 14px;min-height:44px}.bounds-result-banner{font-size:11.5px;padding:7px 10px}}.map-section.map-hidden{display:none}.map-section.map-hidden+.list-section{flex:1;max-width:100%}.hotel-map{width:100%;height:100%;border-radius:10px;position:relative}.list-section{flex:0 0 40%;overflow-y:auto;padding-right:4px}.list-section .hotels-grid{display:flex;flex-direction:column;gap:10px}.list-section .hotel-card-content{grid-template-columns:76px 1fr;gap:10px}.list-section .hotel-thumbnail{width:76px;height:62px}.hotel-card.highlighted{border-color:#667eea;background:#f5f7ff;box-shadow:0 2px 12px #667eea2e}.check-price-btn{padding:8px 14px;background:#667eea;color:#fff;border:none;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap;letter-spacing:.01em}.check-price-btn:hover:not(:disabled){background:#5a6fd6;transform:translateY(-1px);box-shadow:0 4px 12px #667eea47}.check-price-btn:disabled{opacity:.5;cursor:not-allowed}.cached-badge{display:inline-block;margin-left:6px;padding:2px 6px;background:#eef2ff;color:#4338ca;font-size:10px;border-radius:4px;font-weight:700;vertical-align:middle;border:1px solid #c7d2fe}.no-pricing{color:#94a3b8;font-size:12px;font-style:italic}@media(max-width:768px){.hotels-content.desktop-layout{flex-direction:column;height:auto}.hotels-content.desktop-layout .map-section:not(.map-hidden){height:380px;flex:none}.hotels-content.desktop-layout .map-section:not(.map-hidden)~.list-section{display:none}.list-section{padding-right:0}.view-toggle{margin-bottom:10px}}.planner-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.planner-modal-content{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000026;overflow:hidden}.planner-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff}.header-info h2{margin:0 0 4px;font-size:1.5rem;font-weight:600}.trip-range{margin:0;font-size:.9rem;opacity:.9}.planner-modal-header .modal-close-btn{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:background .2s}.planner-modal-header .modal-close-btn:hover{background:#ffffff4d}.planner-modal-body{flex:1;overflow-y:auto;padding:20px 24px}.planner-instructions{margin:0 0 20px;color:#6b7280;font-size:.95rem}.home-base-section{margin-bottom:20px;padding:14px 16px;background:#f0f4ff;border:1px solid #c7d7fe;border-radius:10px}.home-base-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}.home-base-icon{font-size:1.2rem;flex-shrink:0;margin-top:1px}.home-base-header-text{display:flex;flex-direction:column;gap:2px}.home-base-title{font-weight:600;color:#1e40af;font-size:.95rem}.home-base-hint{color:#4b5563;font-size:.82rem}.home-base-select{width:100%;padding:9px 36px 9px 12px;border:1px solid #93c5fd;border-radius:7px;background:#fff;font-size:.9rem;color:#1f2937;cursor:pointer;outline:none;transition:border-color .2s;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.home-base-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.home-base-applied-note{margin:8px 0 0;font-size:.82rem;color:#1e40af}.optional-night-toggle-row{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:2px dashed #d1d5db;border-radius:8px;background:#fff;cursor:pointer;text-align:left;color:#6b7280;font-size:.875rem;transition:all .2s}.optional-night-toggle-row:hover{border-color:#6366f1;background:#f5f3ff;color:#4338ca}.optional-night-plus{font-size:1.25rem;font-weight:700;color:#6366f1;line-height:1;flex-shrink:0}.optional-night-toggle-text{flex:1}.optional-night-subtext{margin-left:4px;color:#9ca3af;font-size:.8rem}.night-card.optional-night{border-left:4px solid #8b5cf6;background:#faf5ff}.night-card.optional-night:hover{border-color:#7c3aed;background:#f3eeff}.night-header-left,.night-header-right{display:flex;align-items:center;gap:8px}.optional-badge{padding:2px 8px;border-radius:12px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.optional-badge.arrival{background:#8b5cf6;color:#fff}.optional-badge.departure{background:#0891b2;color:#fff}.remove-optional-btn{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:.8rem;padding:2px 5px;border-radius:4px;line-height:1;transition:all .2s}.remove-optional-btn:hover{background:#fee2e2;color:#ef4444}.city-option.home-base-option{border-color:#bfdbfe;background:#eff6ff}.city-option.home-base-option.selected{border-color:#3b82f6;background:#dbeafe}.home-base-badge{color:#2563eb;font-size:.78rem;font-weight:500}.recommended-badge{color:#059669;font-size:.78rem;font-weight:500}.planner-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:.9rem}.nights-list{display:flex;flex-direction:column;gap:12px}.night-card{border:1px solid #e5e7eb;border-radius:8px;padding:16px;background:#fafafa;transition:all .2s}.night-card:hover{border-color:#3b82f6;background:#fff}.night-card.needs-selection{border-color:#f59e0b;background:#fffbeb}.night-card.post-trip{border-left:4px solid #10b981}.night-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:8px}.night-number{font-weight:600;color:#1f2937;font-size:.95rem}.night-date{color:#6b7280;font-size:.875rem}.night-context{margin:0 0 12px;color:#4b5563;font-size:.875rem}.city-options{display:flex;gap:12px;flex-wrap:wrap}.city-option{display:flex;align-items:center;gap:8px;padding:10px 16px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;background:#fff;transition:all .2s;flex:1;min-width:140px}.city-option:hover{border-color:#93c5fd;background:#eff6ff}.city-option.selected{border-color:#3b82f6;background:#eff6ff}.city-option input[type=radio]{width:24px;height:24px;min-width:24px;min-height:24px;accent-color:#3b82f6;cursor:pointer;flex-shrink:0}.city-label{font-size:.9rem;color:#374151}.city-option.selected .city-label{color:#1e40af;font-weight:500}.planner-modal-footer{padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb}.summary-section{margin-bottom:16px}.summary-text{margin:0;color:#4b5563;font-size:.9rem}.summary-text strong{color:#1f2937}.footer-actions{display:flex;justify-content:flex-end;gap:12px}.footer-actions .btn-secondary{padding:10px 20px;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s}.footer-actions .btn-secondary:hover{background:#f3f4f6;border-color:#9ca3af}.footer-actions .btn-primary{padding:10px 20px;border:none;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s}.footer-actions .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px)}.footer-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.search-queue-info{padding:12px 24px;background:#fef3c7;border-top:1px solid #fcd34d}.search-queue-info p{margin:0;color:#92400e;font-size:.85rem}@media(max-width:768px){.planner-modal-overlay{padding:0}.planner-modal-content{max-width:100%;max-height:100vh;border-radius:0}.planner-modal-header{padding:18px}.header-info h2{font-size:1.35rem}.planner-modal-body{padding:18px}.night-card{padding:14px}.city-options{flex-direction:column;gap:10px}.city-option{min-width:100%;padding:12px 18px;min-height:44px}.city-option input[type=radio]{width:20px;height:20px}.planner-modal-footer{padding:14px 18px}.footer-actions{flex-direction:column-reverse}.footer-actions button{width:100%;padding:12px 20px;min-height:44px}}@media(max-width:480px){.header-info h2{font-size:1.2rem}.planner-modal-header,.planner-modal-body,.planner-modal-footer,.night-card{padding:12px}.city-option{padding:10px 14px;font-size:.95rem}.footer-actions button{font-size:.9rem}.footer-actions button{width:100%}.home-base-section{padding:12px}.home-base-select{font-size:.95rem}.optional-night-toggle-row{padding:12px;min-height:44px}}.flight-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.flight-modal-content{background:#fff;border-radius:16px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;overflow:hidden;position:relative}.flight-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 28px 20px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff}.header-title h2{margin:0 0 4px;font-size:22px;font-weight:700}.header-subtitle{margin:0;font-size:14px;opacity:.85}.leg-type-badge{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#fff3;padding:4px 10px;border-radius:4px;margin-bottom:8px}.modal-close-btn{background:#ffffff26;border:none;font-size:16px;font-weight:700;color:#fff;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.modal-close-btn:hover{background:#ffffff40}.flight-modal-body{flex:1;overflow-y:auto;padding:20px 28px}.search-summary{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:#f8fafc;border-radius:10px;margin-bottom:16px;font-size:14px}.date-info{color:#374151;font-weight:500}.results-count{color:#6b7280}.summary-right{display:flex;align-items:center;gap:10px}.filter-trigger-btn{display:flex;align-items:center;gap:6px;padding:.3rem .85rem;border-radius:20px;border:1px solid #d0d0d0;background:#fff;color:#444;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.filter-trigger-btn:hover{border-color:#667eea;color:#667eea}.filter-trigger-btn.active{background:#667eea;border-color:#667eea;color:#fff}.filter-active-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#ffffff4d;font-size:11px;font-weight:700;line-height:1}.filter-trigger-btn:not(.active) .filter-active-badge{background:#667eea;color:#fff}.filter-panel-overlay{position:absolute;inset:0;background:#00000059;z-index:100;display:flex;align-items:flex-start;justify-content:flex-end;border-radius:16px;overflow:hidden}.filter-panel-drawer{width:320px;max-width:100%;height:100%;background:#fff;display:flex;flex-direction:column;box-shadow:-4px 0 24px #0000001f}.filter-panel-header{display:flex;align-items:center;gap:8px;padding:18px 20px;border-bottom:1px solid #f0f0f0}.filter-panel-title{font-size:16px;font-weight:700;color:#1a1a2e;flex:1}.filter-clear-btn{padding:.25rem .7rem;border-radius:20px;border:1px solid #d0d0d0;background:#fff;color:#888;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.filter-clear-btn:hover{border-color:#e53935;color:#e53935}.filter-panel-close{width:30px;height:30px;border-radius:50%;border:none;background:#f3f4f6;color:#555;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.filter-panel-close:hover{background:#e5e7eb}.filter-panel-body{flex:1;overflow-y:auto;padding:8px 0}.filter-section{padding:16px 20px;border-bottom:1px solid #f0f0f0}.filter-section:last-child{border-bottom:none}.filter-section-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#888;margin-bottom:12px}.filter-price-val{font-size:14px;font-weight:700;color:#667eea;text-transform:none;letter-spacing:0}.filter-stops{display:flex;gap:8px;flex-wrap:wrap}.stop-pill{padding:.4rem 1rem;border-radius:20px;border:1px solid #d0d0d0;background:#fff;color:#444;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.stop-pill:hover{border-color:#667eea;color:#667eea}.stop-pill.active{background:#667eea;border-color:#667eea;color:#fff}.filter-check-grid{display:flex;flex-direction:column;gap:2px}.filter-check-row{display:flex;align-items:center;gap:10px;padding:6px 4px;cursor:pointer;border-radius:6px;transition:background .1s}.filter-check-row:hover{background:#f7f7fb}.filter-check-row input[type=checkbox]{width:15px;height:15px;accent-color:#667eea;cursor:pointer;flex-shrink:0}.filter-check-label{font-size:13px;color:#222;font-weight:500}.filter-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.time-bucket-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;border-radius:8px;border:1px solid #d0d0d0;background:#fff;cursor:pointer;transition:all .15s}.time-bucket-btn:hover{border-color:#667eea;background:#f7f7fb}.time-bucket-btn.active{border-color:#667eea;background:#eeecfd}.time-bucket-label{font-size:13px;font-weight:600;color:#222}.time-bucket-btn.active .time-bucket-label{color:#4f46e5}.time-bucket-sub{font-size:11px;color:#999}.price-slider{width:100%;accent-color:#667eea;cursor:pointer;margin-bottom:4px}.price-slider-range{display:flex;justify-content:space-between;font-size:11px;color:#bbb;margin-top:4px}.filter-panel-footer{padding:14px 20px;border-top:1px solid #f0f0f0;background:#fff}.filter-apply-btn{width:100%;padding:11px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.filter-apply-btn:hover{background:#5a6fd6}.price-insights{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.price-insights.price-level-low{background-color:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.price-insights.price-level-typical{background-color:#fefce8;border:1px solid #fde047;color:#a16207}.price-insights.price-level-high{background-color:#fef2f2;border:1px solid #fca5a5;color:#dc2626}.insights-label{font-weight:600}.flights-section{margin-bottom:24px}.section-title{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 12px}.flights-list{display:flex;flex-direction:column;gap:12px}.flight-card{display:grid;grid-template-columns:90px 1fr auto;gap:0 16px;padding:18px 20px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;transition:all .2s ease;align-items:center}.flight-card:hover{border-color:#3b82f6;box-shadow:0 4px 16px #3b82f61f}.flight-card.best-flight{border-color:#3b82f6;background:linear-gradient(to right,#eff6ff,#fff)}.flight-airline{display:flex;flex-direction:column;align-items:center;gap:6px}.airline-badge-wrap{position:relative}.airline-logo{width:44px;height:44px;object-fit:contain;border-radius:8px}.airline-code-badge{width:44px;height:44px;border-radius:8px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;letter-spacing:1px}.airline-name{font-size:13px;color:#374151;text-align:center;line-height:1.2;font-weight:500}.flight-center{display:flex;flex-direction:column;gap:6px}.flight-times{display:flex;align-items:center;gap:10px}.time-block{display:flex;flex-direction:column;align-items:center;min-width:65px}.time-block .time{font-size:18px;font-weight:700;color:#1f2937}.time-block .airport{font-size:13px;color:#6b7280;font-weight:500}.next-day-badge{font-size:11px;font-weight:600;color:#6b7280;vertical-align:super;margin-left:2px}.flight-path{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:70px;max-width:120px}.duration{font-size:12px;color:#4b5563;font-weight:600}.path-line{display:flex;align-items:center;width:100%}.path-dot{width:7px;height:7px;border-radius:50%;background:#3b82f6;border:2px solid #3b82f6;flex-shrink:0}.path-dot.stop{width:9px;height:9px;background:#fff;border:2px solid #f59e0b}.path-connector{flex:1;height:2px;background:#d1d5db}.stops-label{font-size:11px;color:#6b7280}.layover-details{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fef3c7;border-radius:6px;border-left:3px solid #f59e0b}.layover-label{font-size:12px;font-weight:600;color:#92400e}.layover-item{font-size:12px;color:#78350f}.layover-duration{font-weight:700;color:#b45309}.layover-airport{margin-left:4px;color:#92400e}.layover-separator{color:#d97706}.flight-action{display:flex;flex-direction:column;align-items:flex-end;gap:6px;min-width:170px}.price-row{display:flex;align-items:center;gap:12px}.price-amount{font-size:28px;font-weight:800;color:#1f2937;line-height:1;letter-spacing:-.5px}.price-type{font-size:11px;color:#6b7280;text-align:right}.price-breakdown{display:flex;align-items:center;gap:4px;justify-content:flex-end}.price-base{font-size:11px;color:#6b7280;font-weight:400}.price-divider{font-size:11px;color:#9ca3af}.price-taxes{font-size:11px;color:#6b7280;font-weight:400}.select-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.select-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.select-btn:disabled{background:#d1d5db;cursor:not-allowed}.flight-extensions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:6px;padding-top:8px;border-top:1px solid #f3f4f6;margin-top:8px}.extension-badge{font-size:11px;color:#374151;background:#f3f4f6;padding:3px 8px;border-radius:4px}.other-flights-toggle{background:none;border:1px solid #d1d5db;color:#4b5563;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:12px}.other-flights-toggle:hover{background:#f9fafb;border-color:#9ca3af}.no-results{text-align:center;padding:48px 20px;color:#6b7280}.no-results p{margin:8px 0}.no-results-hint{font-size:13px;color:#9ca3af}.btn-retry{margin-top:16px;padding:10px 24px;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s}.btn-retry:hover{background:#1d4ed8}.retry-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:spin .7s linear infinite;margin:0 auto 12px}.flight-modal-footer{padding:16px 28px;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f8fafc}.google-flights-link{color:#3b82f6;text-decoration:none;font-size:14px;font-weight:500}.google-flights-link:hover{text-decoration:underline}.btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f3f4f6;border-color:#9ca3af}@media(max-width:768px){.flight-modal-overlay{padding:0}.flight-modal-content{max-width:100%;max-height:100vh;border-radius:0}.flight-modal-header{padding:20px}.flight-modal-body{padding:16px}.flight-card{grid-template-columns:1fr;gap:12px}.flight-airline{flex-direction:row;justify-content:flex-start;gap:10px}.airline-logo,.airline-code-badge{width:34px;height:34px;font-size:13px}.flight-times{flex-direction:column;align-items:stretch;gap:8px}.time-block{flex-direction:row;justify-content:space-between}.flight-path{order:-1;flex-direction:row;justify-content:space-between;max-width:none}.path-line{display:none}.flight-action{border-top:1px solid #f3f4f6;padding-top:12px;margin-top:4px;align-items:stretch}.price-row{justify-content:space-between}.price-breakdown{justify-content:flex-start}.layover-details{flex-wrap:wrap}.search-summary{flex-direction:column;gap:8px;align-items:flex-start}.filter-panel-overlay{align-items:flex-end;justify-content:stretch;border-radius:0}.filter-panel-drawer{width:100%;height:auto;max-height:85vh;border-radius:16px 16px 0 0}.price-amount{font-size:24px}.select-btn,.btn-secondary{min-height:44px;padding:12px 20px}.modal-close-btn{width:44px;height:44px}.flight-modal-footer{flex-direction:column-reverse;gap:12px}.google-flights-link{order:1}.btn-secondary{width:100%}}@media(max-width:480px){.flight-modal-header h2{font-size:1.25rem}.flight-modal-header,.flight-modal-body,.flight-modal-footer{padding:14px}.flight-card{padding:12px}.select-btn{padding:10px 18px;font-size:.85rem}.price-amount{font-size:18px}}.flight-planner-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.flight-planner-content{background:#fff;border-radius:12px;width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000026;overflow:hidden}.flight-planner-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px;background:linear-gradient(135deg,#0c4a6e,#0284c7);color:#fff;flex-shrink:0}.fp-header-info h2{margin:0 0 4px;font-size:1.4rem;font-weight:600}.fp-trip-name{margin:0;font-size:.875rem;opacity:.85}.fp-close-btn{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0}.fp-close-btn:hover{background:#ffffff4d}.flight-planner-body{flex:1;overflow-y:auto;padding:20px 24px}.fp-home-airport-section{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin-bottom:16px}.fp-home-icon{font-size:1.2rem;flex-shrink:0}.fp-home-text{display:flex;align-items:center;gap:8px}.fp-home-label{font-size:.82rem;color:#64748b;font-weight:500}.fp-home-code{font-size:1rem;font-weight:700;color:#0c4a6e;letter-spacing:.05em}.fp-home-hint{font-size:.78rem;color:#94a3b8;margin-left:auto}.fp-instructions{margin:0 0 18px;color:#6b7280;font-size:.9rem}.fp-legs-list{display:flex;flex-direction:column;gap:12px}.fp-leg-card{border:1px solid #e5e7eb;border-radius:10px;padding:16px;background:#fafafa;transition:border-color .2s}.fp-leg-card:hover{border-color:#93c5fd;background:#fff}.fp-leg-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;flex-wrap:wrap;gap:6px}.fp-leg-route{font-weight:600;color:#1f2937;font-size:.95rem}.fp-leg-badge{padding:3px 10px;border-radius:12px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.fp-leg-badge.outbound_home{background:#dbeafe;color:#1d4ed8}.fp-leg-badge.return_home{background:#dcfce7;color:#15803d}.fp-leg-badge.trip_leg{background:#ede9fe;color:#7c3aed}.fp-leg-badge.round_trip_home{background:#e0f2fe;color:#0369a1}.fp-leg-row{display:flex;align-items:center;gap:12px;margin-bottom:10px}.fp-leg-row:last-child{margin-bottom:0}.fp-row-label{font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;width:50px;flex-shrink:0}.fp-airport-chips{display:flex;flex-wrap:wrap;gap:6px}.fp-airport-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:2px solid #e5e7eb;border-radius:20px;background:#fff;cursor:pointer;font-size:.82rem;transition:all .15s;line-height:1}.fp-airport-chip:hover{border-color:#93c5fd;background:#eff6ff}.fp-airport-chip.selected{border-color:#2563eb;background:#dbeafe;color:#1e40af}.chip-code{font-weight:700;letter-spacing:.04em;font-size:.85rem}.chip-dist{font-size:.7rem;color:#9ca3af;font-weight:400}.fp-airport-chip.selected .chip-dist{color:#60a5fa}.fp-date-input{padding:7px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#1f2937;outline:none;transition:border-color .2s;background:#fff}.fp-date-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.flight-planner-footer{padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb;display:flex;justify-content:flex-end;gap:12px;flex-shrink:0}.fp-btn-secondary{padding:10px 20px;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s}.fp-btn-secondary:hover{background:#f3f4f6;border-color:#9ca3af}.fp-btn-primary{padding:10px 20px;border:none;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s}.fp-btn-primary:hover{background:linear-gradient(135deg,#0369a1,#075985);transform:translateY(-1px)}@media(max-width:768px){.flight-planner-overlay{padding:0}.flight-planner-content{max-width:100%;max-height:100vh;border-radius:0}.flight-planner-header,.flight-planner-body,.flight-planner-footer{padding:16px}.fp-home-hint{display:none}.fp-leg-card{padding:14px}.fp-leg-row{flex-wrap:wrap}.fp-row-label{width:44px}.flight-planner-footer{flex-direction:column-reverse}.fp-btn-secondary,.fp-btn-primary{width:100%;padding:12px 20px;min-height:44px;text-align:center}}@media(max-width:480px){.fp-header-info h2{font-size:1.2rem}.fp-airport-chip{padding:6px 10px;min-height:36px}.fp-date-input{font-size:.9rem}}.progress-map-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.progress-map-modal{display:flex;height:90vh;max-height:800px;width:95vw;max-width:1400px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #0000004d;position:relative;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close-btn{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:#fff;border:none;font-size:24px;line-height:1;cursor:pointer;z-index:1000;box-shadow:0 2px 8px #00000026;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close-btn:hover{background:#f3f4f6;transform:scale(1.05)}.progress-map-container{flex:0 0 70%;position:relative;background:#e5e7eb}.progress-map-container .map{width:100%;height:100%}.map-legend{position:absolute;top:16px;left:16px;background:#fff;padding:12px 16px;border-radius:8px;box-shadow:0 2px 8px #00000026;z-index:100}.legend-item{display:flex;align-items:center;gap:8px;margin-bottom:6px}.legend-item:last-child{margin-bottom:0}.legend-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff}.legend-icon.completed{background:#22c55e}.legend-icon.pending{background:#94a3b8}.legend-label{font-size:13px;color:#374151;font-weight:500}.loading-overlay,.error-overlay{position:absolute;inset:0;background:#fffffff2;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.loading-overlay .spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.loading-overlay p,.error-overlay p{margin-top:16px;color:#6b7280;font-size:14px}.error-overlay p{color:#ef4444}.progress-sidebar{flex:0 0 30%;display:flex;flex-direction:column;border-left:1px solid #e5e7eb;overflow-y:auto;background:#fff}.sidebar-header{padding:24px 20px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.sidebar-header h3{margin:0 0 12px;font-size:18px;font-weight:600;color:#111827}.progress-stats{font-size:14px;color:#6b7280;margin-bottom:12px}.progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease;border-radius:4px}.stadium-checklist{flex:1;overflow-y:auto;padding:8px}.checklist-item{display:flex;align-items:center;gap:12px;padding:14px 12px;margin-bottom:6px;border-radius:8px;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.checklist-item:hover{background:#f9fafb;border-color:#e5e7eb;transform:translate(2px)}.checklist-item.completed{background:#f0fdf4}.checklist-item.completed:hover{background:#dcfce7;border-color:#86efac}.checklist-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff;flex-shrink:0}.checklist-item.completed .checklist-icon{background:#22c55e}.checklist-item.pending .checklist-icon{background:#94a3b8}.checklist-details{flex:1;min-width:0}.stadium-name{font-weight:600;font-size:14px;color:#111827;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stadium-location{font-size:13px;color:#6b7280;margin-bottom:2px}.game-date{font-size:12px;color:#9ca3af}.empty-state{text-align:center;padding:40px 20px;color:#9ca3af}.encouragement-message,.completion-message{padding:16px;margin:12px;border-radius:8px;text-align:center;font-size:14px;font-weight:500}.encouragement-message{background:#fef3c7;color:#92400e}.completion-message{background:#d1fae5;color:#065f46}.completion-message p,.encouragement-message p{margin:0}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.error-state p{color:#ef4444;margin-bottom:16px}@media(max-width:768px){.progress-map-modal{flex-direction:column;height:100vh;max-height:100vh;width:100vw;max-width:100vw;border-radius:0}.progress-map-container{flex:1}.progress-sidebar{position:absolute;bottom:0;left:0;right:0;height:60%;max-height:60%;border-left:none;border-top:1px solid #e5e7eb;border-radius:16px 16px 0 0;box-shadow:0 -4px 12px #0000001a;transform:translateY(calc(100% - 80px));transition:transform .3s ease;z-index:200}.progress-sidebar.expanded{transform:translateY(0)}.bottom-sheet-handle{width:40px;height:4px;background:#cbd5e1;border-radius:2px;margin:12px auto;cursor:pointer;flex-shrink:0}.sidebar-header{padding:16px}.sidebar-header h3{font-size:16px}.checklist-item{padding:12px 10px;min-height:44px}.modal-close-btn{width:44px;height:44px;top:12px;right:12px}.map-legend{top:70px;left:12px;padding:10px 12px}.legend-item{margin-bottom:4px}.legend-label{font-size:12px}}@media(max-width:480px){.checklist-icon{width:28px;height:28px;font-size:12px}.stadium-name{font-size:13px}.stadium-location{font-size:12px}.game-date{font-size:11px}.sidebar-header h3{font-size:15px}.progress-stats{font-size:13px}}.export-game-view{width:1200px;min-height:800px;background:linear-gradient(170deg,#0f0f1a,#1a1a2e 40%,#16213e);color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;flex-direction:column;position:relative;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.egv-glow-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at 20% 0%,rgba(102,126,234,.08) 0%,transparent 60%),radial-gradient(ellipse at 80% 100%,rgba(118,75,162,.06) 0%,transparent 60%);pointer-events:none}.egv-header{display:flex;align-items:center;gap:20px;padding:40px 48px 28px;position:relative;z-index:1}.egv-header-icon{font-size:40px;line-height:1}.egv-header-text{flex:1;min-width:0;overflow:hidden}.egv-header-text h1{margin:0;font-size:32px;font-weight:700;letter-spacing:-.5px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.egv-date-range{margin:4px 0 0;font-size:16px;color:#fff9;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.egv-header-badge{background:#667eea33;border:1px solid rgba(102,126,234,.3);color:#a5b4fc;padding:10px 24px;border-radius:24px;font-size:15px;font-weight:600;letter-spacing:.3px;white-space:nowrap;flex-shrink:0}.egv-games{flex:1;padding:16px 48px 24px;display:flex;flex-direction:column;gap:0;position:relative;z-index:1}.egv-travel-connector{display:flex;align-items:center;gap:12px;padding:8px 0;margin-left:48px}.egv-travel-line{flex:1;min-width:40px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent)}.egv-travel-badge{display:flex;align-items:center;gap:6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);padding:4px 14px;border-radius:16px;flex-shrink:0}.egv-travel-icon{font-size:14px}.egv-travel-distance{font-size:13px;color:#ffffff8c;font-weight:500}.egv-game-card{display:flex;align-items:center;gap:24px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-left:4px solid #667eea;border-radius:12px;padding:20px 24px;transition:none;min-width:0}.egv-game-sequence{width:36px;height:36px;background:#667eea26;border:1px solid rgba(102,126,234,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#a5b4fc;flex-shrink:0}.egv-matchup{display:flex;align-items:center;gap:20px;flex-shrink:0;min-width:0;max-width:420px}.egv-team{display:flex;align-items:center;gap:10px;min-width:0;max-width:160px;overflow:hidden}.egv-away{justify-content:flex-end}.egv-home{justify-content:flex-start}.egv-team-logo{width:40px;height:40px;object-fit:contain;flex-shrink:0}.egv-team-name{font-size:15px;font-weight:600;color:#ffffffe6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.egv-vs{font-size:14px;font-weight:600;color:#ffffff59;flex-shrink:0;width:24px;text-align:center}.egv-game-details{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.egv-venue{font-size:15px;font-weight:600;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.egv-location{font-size:13px;color:#ffffff73;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.egv-datetime{font-size:13px;color:#ffffff8c;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.egv-footer{padding:24px 48px 32px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1}.egv-stats{display:flex;align-items:center;gap:20px}.egv-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.egv-stat-value{font-size:22px;font-weight:700;color:#fff}.egv-stat-label{font-size:12px;font-weight:500;color:#ffffff73;text-transform:uppercase;letter-spacing:.5px}.egv-stat-divider{width:1px;height:32px;background:#ffffff1f}.egv-branding{display:flex;align-items:center}.egv-branding-logo{height:44px;width:auto;object-fit:contain;opacity:.6}.export-map-view{width:1200px;height:900px;position:relative;overflow:hidden;background:#0f0f1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.emv-map-container{width:100%;height:100%;position:absolute;inset:0}.emv-header{position:absolute;top:0;left:0;right:0;z-index:10;padding:20px 32px;background:linear-gradient(180deg,rgba(15,15,26,.85) 0%,rgba(15,15,26,.4) 70%,transparent 100%);pointer-events:none}.emv-header-content{display:flex;align-items:center;gap:14px}.emv-icon{font-size:28px}.emv-header h1{margin:0;font-size:24px;font-weight:700;color:#fff;letter-spacing:-.3px}.emv-header p{margin:2px 0 0;font-size:14px;color:#fff9}.emv-footer{position:absolute;bottom:0;left:0;right:0;z-index:10;padding:20px 32px;background:linear-gradient(0deg,rgba(15,15,26,.9) 0%,rgba(15,15,26,.5) 60%,transparent 100%);display:flex;align-items:flex-end;justify-content:space-between;pointer-events:none}.emv-legend{display:flex;align-items:center;gap:20px}.emv-legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#ffffffb3;font-weight:500}.emv-legend-line{display:inline-block;width:28px;height:3px;border-radius:2px}.emv-legend-drive{background:#667eea}.emv-legend-fly{background:#f97316;background:repeating-linear-gradient(90deg,#f97316 0px,#f97316 6px,transparent 6px,transparent 10px)}.emv-stats{font-size:14px;font-weight:600;color:#ffffffb3}.emv-branding{display:flex;align-items:center}.emv-branding-logo{height:36px;width:auto;object-fit:contain;opacity:.5}.tem-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.tem-modal{background:#fff;border-radius:16px;width:100%;max-width:720px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;overflow:hidden}.tem-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px}.tem-header h2{margin:0;font-size:20px;font-weight:700;color:#1f2937}.tem-close{width:36px;height:36px;border:none;background:#f3f4f6;border-radius:50%;cursor:pointer;font-size:16px;color:#6b7280;display:flex;align-items:center;justify-content:center;transition:background .15s}.tem-close:hover{background:#e5e7eb;color:#374151}.tem-tabs{display:flex;gap:4px;padding:0 24px;margin-bottom:16px}.tem-tab{flex:1;padding:10px 16px;border:none;background:#f3f4f6;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;color:#6b7280;transition:all .15s}.tem-tab:hover{background:#e5e7eb;color:#374151}.tem-tab-active{background:#1e40af;color:#fff}.tem-tab-active:hover{background:#1e3a8a;color:#fff}.tem-preview-area{flex:1;overflow-y:auto;padding:0 24px 16px;min-height:0}.tem-preview-scroll,.tem-preview-wrapper{position:relative}.tem-preview-scale{transform-origin:top left;border-radius:8px;overflow:hidden;box-shadow:0 4px 20px #00000026;border:1px solid #e5e7eb}.tem-preview-game{transform:scale(.56);width:1200px;margin-bottom:-40%}.tem-preview-map{transform:scale(.56);width:1200px;height:900px;margin-bottom:-396px}.tem-map-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#f9fafbe6;border-radius:8px;font-size:14px;color:#6b7280;font-weight:500}.tem-controls{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb}.tem-format-selector{display:flex;align-items:center;gap:8px}.tem-format-label{font-size:13px;font-weight:600;color:#6b7280}.tem-format-btn{padding:6px 14px;border:1px solid #d1d5db;background:#fff;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;color:#374151;transition:all .15s}.tem-format-btn:hover{border-color:#9ca3af}.tem-format-active{background:#1e40af;color:#fff;border-color:#1e40af}.tem-format-active:hover{background:#1e3a8a;border-color:#1e3a8a}.tem-download-btn{display:flex;align-items:center;gap:8px;padding:10px 24px;border:none;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;transition:all .15s;box-shadow:0 2px 8px #1e40af4d}.tem-download-btn:hover:not(:disabled){box-shadow:0 4px 16px #1e40af66;transform:translateY(-1px)}.tem-download-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.tem-spinner{width:28px;height:28px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:tem-spin .7s linear infinite}.tem-spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:tem-spin .7s linear infinite;display:inline-block}@keyframes tem-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.tem-overlay{padding:0;align-items:flex-end}.tem-modal{max-width:100%;max-height:95vh;border-radius:16px 16px 0 0}.tem-preview-game{transform:scale(.28);margin-bottom:-72%}.tem-preview-map{transform:scale(.28);margin-bottom:-648px}.tem-controls{flex-direction:column;gap:12px}.tem-download-btn{width:100%;justify-content:center}}.tpt-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.tpt-modal{background:#fff;border-radius:12px;width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 12px 40px #0003}.tpt-modal__header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #eee;flex-shrink:0}.tpt-modal__title{display:flex;align-items:center;gap:10px}.tpt-modal__title h2{margin:0;font-size:18px;color:#1a1a2e}.tpt-modal__close{background:none;border:none;font-size:28px;line-height:1;cursor:pointer;color:#666;padding:0 4px}.tpt-modal__close:hover{color:#1a1a2e}.tpt-modal__body{padding:18px 22px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.tpt-modal__meta{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.tpt-modal__sub{margin:0;font-size:13px;color:#555;flex:1 1 240px}.tpt-modal__slots{font-size:13px;color:#555;padding:4px 10px;background:#f6f7fa;border-radius:999px;white-space:nowrap;font-variant-numeric:tabular-nums}.tpt-modal__slots strong{color:#1a1a2e;margin-right:4px}.tpt-modal__error,.tpt-modal__warn,.tpt-modal__success,.tpt-modal__all-tracked,.tpt-modal__empty{margin:0;padding:8px 12px;border-radius:6px;font-size:13px}.tpt-modal__empty{background:#f6f7fa;color:#555}.tpt-modal__error{background:#fdecec;color:#b3261e}.tpt-modal__warn{background:#fff4d6;color:#8a5a00}.tpt-modal__success{background:#e8f6e8;color:#1b5e1f}.tpt-modal__all-tracked{background:#f6f7fa;color:#555}.tpt-modal__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.tpt-modal__row{background:#fafbfd;border:1px solid #e6e8ee;border-radius:8px;transition:border-color .15s,background .15s}.tpt-modal__row--selected{border-color:#1857c4;background:#f0f6ff}.tpt-modal__row--tracked{opacity:.6}.tpt-modal__row-label{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;width:100%;flex-wrap:wrap;min-height:44px}.tpt-modal__row--tracked .tpt-modal__row-label{cursor:not-allowed}.tpt-modal__row-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#1857c4}.tpt-modal__row-city{font-size:14px;font-weight:600;color:#1a1a2e;flex:1 1 auto}.tpt-modal__row-dates{font-size:13px;color:#666;font-variant-numeric:tabular-nums}.tpt-modal__row-badge{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:4px;background:#e6f0ff;color:#1857c4}.tpt-modal__footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;border-top:1px solid #eee;flex-wrap:wrap;flex-shrink:0}.tpt-modal__bulk{display:flex;gap:12px}.tpt-modal__actions{display:flex;gap:8px;margin-left:auto}.tpt-modal__actions--single{margin-left:auto}.tpt-modal__link{background:none;border:none;color:#1857c4;font-size:13px;cursor:pointer;padding:4px 0}.tpt-modal__link:hover:not(:disabled){text-decoration:underline}.tpt-modal__link:disabled{opacity:.5;cursor:not-allowed}@media(max-width:480px){.tpt-modal{max-height:100vh;border-radius:0}.tpt-modal__footer{flex-direction:column;align-items:stretch}.tpt-modal__actions{width:100%;margin-left:0}.tpt-modal__actions .action-button,.tpt-modal__actions .btn-secondary{flex:1;min-height:44px}}.itinerary-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f8f9fa;min-height:100vh;padding:2rem}.itinerary-page.embedded{min-height:0;padding:1.25rem 1.5rem;background-color:transparent;width:100%}.itinerary-page.embedded .legal-pad{max-width:none;box-shadow:none;border:1px solid #e0e0e0}.page-actions{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.back-button{font-family:inherit;background:none;border:none;color:#1976d2;font-size:1rem;cursor:pointer;padding:.5rem 1rem;display:inline-flex;align-items:center;gap:.25rem;text-decoration:none;font-weight:500;border-radius:6px;transition:background .2s}.back-button:hover{background:#e3f2fd;color:#1565c0}.legal-pad{max-width:900px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.pad-header{background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;padding:1.5rem 2rem}.pad-header h1{font-family:inherit;font-size:1.75rem;font-weight:700;margin:0 0 .5rem;color:#fff}.trip-dates{font-size:1rem;font-weight:400;color:#ffffffe6}.trip-summary-stats{display:flex;flex-wrap:wrap;gap:2rem;padding:1.5rem 2rem;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.875rem;color:#6c757d;font-weight:500}.stat-value{font-size:1.25rem;color:#1976d2;font-weight:700}.pad-content{padding:2rem}.planner-section{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:2px solid #e0e0e0}.planner-section:last-child{border-bottom:none;margin-bottom:0}.section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}.section-icon{font-size:1.5rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#f8f9fa;border-radius:50%;box-shadow:0 2px 4px #0000000d}.section-title{font-size:1.5rem;font-weight:700;color:#2c3e50;margin:0}.section-content{margin-left:.5rem}.checklist-item{display:flex;align-items:center;gap:1rem;padding:.875rem 0;border-bottom:1px solid #e0e0e0}.checklist-item:last-child{border-bottom:none}.checklist-info{flex:1;min-width:0}.checklist-title{font-weight:600;color:#2c3e50;font-size:.95rem;margin-bottom:.125rem}.checklist-details{font-size:.85rem;color:#6c757d}.checklist-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.completion-checkbox{display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.completion-checkbox input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.completion-checkbox .checkbox-custom{width:20px;height:20px;border:2px solid #adb5bd;border-radius:4px;background:#fff;display:flex;align-items:center;justify-content:center;transition:all .15s ease;position:relative}.completion-checkbox input[type=checkbox]:checked+.checkbox-custom{background:#28a745;border-color:#28a745}.completion-checkbox input[type=checkbox]:checked+.checkbox-custom:after{content:"✓";color:#fff;font-size:12px;font-weight:700}.completion-checkbox:hover .checkbox-custom{border-color:#28a745}.completion-checkbox input[type=checkbox]:disabled+.checkbox-custom{opacity:.6;cursor:not-allowed}.completion-checkbox .checkbox-custom.updating{opacity:.6}.completion-checkbox .checkbox-custom .spinner{width:12px;height:12px;border:2px solid #e0e0e0;border-top-color:#28a745;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.completion-badge{background:#e8f5e9;color:#2e7d32;font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:12px;margin-left:auto}.ticket-item{display:flex;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid #e0e0e0}.ticket-item:last-child{border-bottom:none}.ticket-info{flex:1}.ticket-game{font-weight:600;color:#2c3e50;font-size:1rem;margin-bottom:.25rem}.ticket-details{font-size:.9rem;color:#6c757d}.ticket-venue{font-weight:400}.purchased-badge{background:#28a745;color:#fff;padding:.375rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}.action-button{font-family:inherit;padding:.625rem 1.25rem;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a;display:inline-flex;align-items:center;gap:.5rem}.action-button.primary{background:linear-gradient(135deg,#1976d2,#1565c0);color:#fff}.action-button.primary:hover{background:linear-gradient(135deg,#1565c0,#0d47a1)}.action-button.success{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.action-button.success:hover{background:linear-gradient(135deg,#218838,#1ea080)}.action-button.secondary{background:linear-gradient(135deg,#4b5563,#374151);color:#fff}.action-button.secondary:hover{background:linear-gradient(135deg,#374151,#1f2937)}.action-button.small{padding:.375rem .75rem;font-size:.875rem}.action-button.danger{color:#dc3545;border-color:#dc3545}.action-button.danger:hover{background:#dc3545;color:#fff}.action-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.lodging-item{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid #e0e0e0}.lodging-item:last-child{border-bottom:none}.lodging-date{min-width:80px;font-weight:600;color:#1976d2}.lodging-city{flex:1;color:#6c757d}.lodging-city.skipped{text-decoration:line-through;opacity:.6}.lodging-status{font-size:1.2rem}.lodging-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.plan-button-container{margin-bottom:1.25rem}.no-content-message{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#f8f9fa;border-radius:8px;border:1px solid #e0e0e0;color:#6c757d;font-style:italic}.no-content-icon{font-size:1.5rem;opacity:.7}.travel-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;border-bottom:1px solid #e0e0e0;border-radius:8px;margin-bottom:.5rem;transition:background .2s}.travel-item:hover{background:#f8f9fa}.travel-item:last-child{border-bottom:none}.travel-item.has-booking{background:#e8f5e9;border:1px solid #c8e6c9}.travel-icon-badge{width:48px;height:48px;background:#f8f9fa;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 2px 4px #0000000d;flex-shrink:0}.travel-info{flex:1}.travel-route{font-weight:600;color:#2c3e50;font-size:1rem;margin-bottom:.25rem}.travel-details{font-size:.9rem;color:#6c757d}.alt-airports{font-size:.85rem;color:#6c757d;margin-top:.25rem;font-style:italic}.alt-airports-inline{color:#6c757d;font-style:italic}.text-link{font-family:inherit;background:none;border:none;color:#1976d2;font-size:.95rem;cursor:pointer;text-decoration:underline;padding:.25rem .5rem;transition:color .2s}.text-link:hover{color:#1565c0}.text-link.danger{color:#dc3545}.text-link.danger:hover{color:#c82333}.link-actions{display:flex;gap:1rem;margin-top:.75rem}.round-trip-banner{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#e3f2fd;border-radius:8px;margin-bottom:1rem;font-size:.95rem;color:#1565c0;border:1px solid #90caf9}.banner-icon{font-size:1.2rem}.saved-bookings{margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.subsection-title{font-family:inherit;font-size:1rem;color:#2c3e50;margin:0 0 .75rem;font-weight:600}.saved-booking-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid #e0e0e0}.saved-booking-item:last-child{border-bottom:none}.booking-icon{width:36px;height:36px;background:#e8f5e9;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.booking-info{flex:1}.booking-route{font-weight:600;color:#2c3e50;font-size:.95rem}.booking-details{font-size:.85rem;color:#6c757d;margin-top:.125rem}.booking-actions{display:flex;gap:.5rem}@media(max-width:768px){.itinerary-page{padding:1rem}.pad-header{padding:1.25rem 1.5rem}.trip-summary-stats{padding:1.25rem 1.5rem;gap:1.5rem}.pad-content{padding:1.5rem}.ticket-item,.lodging-item,.travel-item{flex-wrap:wrap}.action-button{width:100%;justify-content:center}.lodging-actions{flex-direction:column}}.my-trips-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f8f9fa;min-height:100vh;padding:2rem 0}.legal-pad-with-margin{max-width:100%;margin:0 auto;display:flex;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;min-height:calc(100vh - 100px)}.trip-margin{width:260px;background:#f8f9fa;border-right:1px solid #e0e0e0;padding:1.5rem 1rem;display:flex;flex-direction:column;gap:.75rem;flex-shrink:0}.margin-header{font-size:.875rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;font-weight:600;padding-bottom:.75rem;border-bottom:2px solid #e0e0e0;margin-bottom:.75rem}.trip-tab{padding:.75rem;border-radius:8px;cursor:pointer;transition:all .2s;border:1px solid transparent;background:transparent;text-align:left;position:relative}.trip-tab:hover{background:#e9ecef;border-color:#dee2e6}.trip-tab.selected{background:#fff;border-color:#1976d2;box-shadow:0 2px 4px #0000000d}.trip-tab-name{font-size:.9rem;font-weight:600;color:#2c3e50;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trip-tab-dates{font-size:.78rem;font-weight:500;color:#495057;margin-bottom:.2rem}.trip-tab-meta{display:flex;align-items:center;gap:.35rem;font-size:.72rem;color:#6c757d}.trip-tab-meta-dot{color:#adb5bd}.trip-tab-bullet{display:inline-block;width:6px;height:6px;background:#1976d2;border-radius:50%;margin-right:.5rem;vertical-align:middle}.trip-tab.activated{border-left:3px solid #28a745}.activation-badge{position:absolute;top:.5rem;right:.5rem;width:18px;height:18px;background:#28a745;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.new-trip-tab{margin-top:auto;padding:.75rem;border:2px dashed #dee2e6;border-radius:8px;background:transparent;color:#6c757d;font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;text-align:center}.new-trip-tab:hover{background:#e9ecef;border-color:#1976d2;color:#1976d2}.legal-pad-main{flex:1;display:flex;flex-direction:column}.trip-manage-bar{display:flex;align-items:center;padding:.6rem 1.5rem;background:#fff;border-bottom:1px solid #e9ecef;min-height:48px}.trip-manage-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.trip-manage-btn{font-family:inherit;font-size:.82rem;font-weight:500;padding:.4rem .7rem;border:1px solid #ced4da;background:#fff;color:#495057;border-radius:7px;cursor:pointer;transition:all .15s}.trip-manage-btn:hover:not(:disabled){border-color:#1976d2;color:#1565c0;background:#f5faff}.trip-manage-btn.danger:hover:not(:disabled){border-color:#dc3545;color:#dc3545;background:#fff5f5}.trip-manage-btn:disabled{opacity:.5;cursor:not-allowed}.trip-locked-note{font-size:.8rem;color:#856404;background:#fff3cd;border:1px solid #ffe69c;border-radius:7px;padding:.35rem .6rem}.trip-rename-row{display:flex;align-items:center;gap:.5rem;width:100%}.trip-rename-input{font-family:inherit;font-size:.9rem;padding:.45rem .65rem;border:1px solid #1976d2;border-radius:7px;flex:1;max-width:360px}.trip-rename-input:focus{outline:none;box-shadow:0 0 0 2px #1976d226}.action-button.small{padding:.4rem .8rem;font-size:.82rem}.pad-header{background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;padding:1rem 1.5rem}.pad-header h1{font-family:inherit;font-size:1.4rem;font-weight:700;margin:0 0 .25rem;color:#fff}.activation-counter{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.5rem .75rem;background:#ffffff26;border-radius:6px;font-size:.875rem}.activation-count{font-weight:600}.activation-season{opacity:.9;font-size:.8rem}.trip-details-body{padding:1.25rem 1.5rem;flex:1}.selected-trip-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #e0e0e0}.selected-trip-name{font-size:1.4rem;font-weight:700;color:#2c3e50;margin:0 0 .25rem}.selected-trip-dates{font-size:.9rem;color:#6c757d;margin:0 0 .75rem}.trip-stats-row{display:flex;gap:1.25rem;flex-wrap:wrap}.trip-stat{display:flex;align-items:baseline;gap:.3rem}.trip-stat-value{font-size:1.2rem;font-weight:700;color:#1976d2}.trip-stat-label{font-size:.85rem;color:#6c757d}.games-itinerary{margin-bottom:1rem}.games-itinerary-title{font-size:1.1rem;font-weight:700;color:#2c3e50;margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.game-item{display:flex;align-items:flex-start;gap:.75rem;padding:.6rem 0;border-bottom:1px solid #e0e0e0}.game-item:last-child{border-bottom:none}.game-number-circle{width:30px;height:30px;background:#1976d2;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0}.game-info{flex:1}.game-venue-name{font-size:.95rem;font-weight:600;color:#2c3e50;margin:0 0 .15rem}.game-matchup{font-size:.85rem;font-weight:500;color:#495057;margin-bottom:.2rem}.game-meta{font-size:.8rem;color:#6c757d;display:flex;gap:.75rem;flex-wrap:wrap}.travel-leg-connector{display:flex;align-items:center;padding:.25rem 0 .25rem 2.25rem;color:#6c757d;font-size:.8rem}.travel-leg-line{width:2px;height:16px;background:#dee2e6;margin-right:.5rem}.travel-leg-info{display:flex;align-items:center;gap:.35rem;background:#f8f9fa;padding:.25rem .6rem;border-radius:6px;border:1px solid #e0e0e0}.travel-leg-icon{font-size:1rem}.travel-leg-text{font-weight:500}.trip-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.action-button{font-family:inherit;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a;display:inline-flex;align-items:center;gap:.5rem}.action-button:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.action-button:active{transform:translateY(0)}.action-button.primary{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.action-button.primary:hover{background:linear-gradient(135deg,#218838,#1ea080)}.action-button.secondary{background:linear-gradient(135deg,#1976d2,#1565c0);color:#fff}.action-button.secondary:hover{background:linear-gradient(135deg,#1565c0,#0d47a1)}.action-button.outline{background:#fff;color:#1976d2;border:2px solid #1976d2}.action-button.outline:hover{background:#1976d2;color:#fff}.action-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.itinerary-locked{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-top:1rem}.lock-icon{font-size:1.5rem}.lock-message{flex:1}.lock-message-title{font-weight:600;color:#856404;margin:0 0 .25rem}.lock-message-text{font-size:.9rem;color:#856404;margin:0}.activation-info{display:block;margin-top:.25rem;font-size:.85rem;color:#1976d2;font-weight:600}.empty-trip-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center}.empty-trip-icon{font-size:4rem;margin-bottom:1rem}.empty-trip-title{font-size:1.5rem;font-weight:700;color:#2c3e50;margin:0 0 .5rem}.empty-trip-text{color:#6c757d;margin:0 0 1.5rem}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;font-family:inherit}.spinner{width:48px;height:48px;border:4px solid #e0e0e0;border-top-color:#1976d2;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.error-container h2{color:#dc3545;margin-bottom:.5rem}.error-container p{color:#6c757d;margin-bottom:1rem}.modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;position:relative;max-width:90%;max-height:90vh;overflow-y:auto}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.75rem;color:#6c757d;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-family:Arial,sans-serif;border-radius:50%;transition:background .2s}.modal-close:hover{background:#f8f9fa;color:#2c3e50}.upsell-modal{max-width:500px;padding:2rem}.upsell-header{text-align:center;margin-bottom:1.5rem}.upsell-icon{font-size:3rem;display:block;margin-bottom:1rem}.upsell-header h2{font-size:1.5rem;margin:0;color:#2c3e50}.upsell-body{text-align:center}.upsell-message{font-size:1rem;color:#6c757d;margin-bottom:1.5rem;line-height:1.5}.upsell-features{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;text-align:left}.upsell-features h3{font-size:1.1rem;margin:0 0 .75rem;color:#2c3e50}.upsell-features ul{list-style:none;padding:0;margin:0}.upsell-features li{padding:.5rem 0;font-size:.95rem;color:#2c3e50}.upsell-actions{display:flex;gap:.75rem;justify-content:center}@media(max-width:768px){.my-trips-page{padding:1rem}.legal-pad-with-margin{flex-direction:column}.trip-margin{width:100%;flex-direction:row;flex-wrap:wrap;border-right:none;border-bottom:1px solid #e0e0e0;padding:1rem}.margin-header{width:100%;margin-bottom:.5rem}.trip-tab{flex:1;min-width:100px}.new-trip-tab{margin-top:0;flex:1;min-width:100px}.trip-stats-row{gap:1rem}.trip-actions{flex-direction:column}.action-button{width:100%;justify-content:center}.upsell-modal{padding:1.5rem;max-width:90%}.upsell-actions{flex-direction:column}.upsell-actions .action-button{width:100%}}.stadium-pin{display:flex;flex-direction:column;align-items:center;cursor:pointer;transform:translateY(-50%);-webkit-user-select:none;user-select:none}.stadium-pin__logo{width:28px;height:28px;display:block;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.stadium-pin__price{margin-top:2px;padding:2px 6px;border-radius:9px;font:700 11px/1 system-ui,-apple-system,sans-serif;color:#fff;white-space:nowrap;border:1.5px solid;pointer-events:none;box-shadow:0 1px 2px #0003}.stadium-pin__price--tier-1{background:#16a34a;border-color:#15803d}.stadium-pin__price--tier-2{background:#eab308;border-color:#ca8a04}.stadium-pin__price--tier-3{background:#f97316;border-color:#ea580c}.stadium-pin__price--tier-4{background:#dc2626;border-color:#b91c1c}@media(max-width:900px){.stadium-pin__logo{width:34px;height:34px}}@media(max-width:768px){.stadium-pin__logo{width:39px;height:39px}}@media(max-width:480px){.stadium-pin__logo{width:42px;height:42px}}.trip-pin{position:relative;cursor:pointer;transform:translateY(-50%);-webkit-user-select:none;user-select:none}.trip-pin__logo{width:32px;height:32px;display:block;filter:drop-shadow(0 1px 3px rgba(0,0,0,.3))}.trip-pin__badge{position:absolute;bottom:-2px;right:-4px;min-width:18px;height:18px;padding:0 4px;background:#2e7d32;color:#fff;border:2px solid #fff;border-radius:9px;font:700 11px/14px system-ui,sans-serif;display:flex;align-items:center;justify-content:center}.trip-pin--circle{width:30px;height:30px;border-radius:50%;background:#2e7d32;border:2px solid #1B5E20;color:#fff;font:700 13px/1 system-ui,sans-serif;display:flex;align-items:center;justify-content:center;cursor:pointer;transform:translate(-50%,-50%)}.overnight-pin{width:0;height:0;cursor:pointer;border-left:10px solid transparent;border-right:10px solid transparent;border-top:16px solid #7B1FA2;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));transform:translate(-50%,-100%)}.hotel-pin{width:22px;height:22px;border-radius:50% 50% 50% 0;background:#1565c0;border:1px solid #0D47A1;transform:translate(-50%,-100%) rotate(-45deg);cursor:pointer;box-shadow:0 1px 3px #0000004d}.team-stop-pin{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font:700 13px/1 system-ui,sans-serif;cursor:pointer;transform:translate(-50%,-50%);box-shadow:0 1px 3px #0000004d}.team-stop-pin--home{background:#ff6f00;border:2px solid #BF360C}.team-stop-pin--away{background:#5c6bc0;border:2px solid #303F9F}.dd-anchor-pin{width:44px;height:44px;cursor:pointer;transform:translate(-50%,-50%);filter:drop-shadow(0 2px 4px rgba(0,0,0,.35))}.dd-anchor-pin__logo{width:100%;height:100%;display:block}.dd-anchor-pin--circle{width:30px;height:30px;border-radius:50%;background:#f59e0b;border:2.5px solid #92400e;transform:translate(-50%,-50%);cursor:pointer}.dd-nearby-pin{width:32px;height:32px;cursor:pointer;transform:translate(-50%,-50%);filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.dd-nearby-pin__logo{width:100%;height:100%;display:block}.dd-nearby-pin--circle{width:18px;height:18px;border-radius:50%;background:#6366f1;border:2px solid #4338ca;transform:translate(-50%,-50%);cursor:pointer}.maplibregl-popup-content{padding:12px 16px;max-width:280px;font-family:system-ui,-apple-system,sans-serif}.maplibregl-popup-content h3{margin:0 0 6px;font-size:15px}.hover-popup,.hover-popup .maplibregl-popup-content,.hover-popup .maplibregl-popup-tip{pointer-events:none}.maplibregl-popup-content p{margin:3px 0;font-size:13px;color:#555}.flights-section{padding:12px}.flights-header h3{margin:0 0 10px;font-size:15px;color:#2563eb}.flights-origin-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;background:#eff6ff;color:#1e3a8a;border:1px solid #bfdbfe;border-radius:6px;cursor:pointer;font-size:14px;margin:0 0 10px}.flights-origin-btn:hover{background:#dbeafe}.flights-origin-btn strong{font-size:15px;letter-spacing:.5px}.flights-origin-picker{display:flex;flex-wrap:wrap;gap:6px;padding:8px 0}.flights-origin-picker input{flex:1 1 100px;padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-family:ui-monospace,monospace;text-transform:uppercase;font-size:14px}.flights-origin-picker button{padding:6px 12px;background:#2563eb;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500}.flights-origin-picker button:disabled{background:#cbd5e1;cursor:not-allowed}.flights-origin-reset{background:transparent!important;color:#6b7280!important;border:1px solid #d1d5db!important}.flights-locked,.flights-empty{padding:12px;background:#f9fafb;border-radius:6px;font-size:14px;color:#374151}.flights-locked p,.flights-empty p{margin:0 0 4px}.flights-region-filter{margin-top:8px}.flights-region-label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.flights-region-pills{display:flex;flex-wrap:wrap;gap:4px}.flights-region-pill{padding:4px 9px;background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb;border-radius:12px;font-size:12px;cursor:pointer;transition:all .15s}.flights-region-pill:hover{background:#e5e7eb}.flights-region-pill.active{background:#2563eb;color:#fff;border-color:#1d4ed8}.flights-sort-row{display:flex;align-items:center;gap:8px;margin:10px 0 6px}.flights-sort-label{font-size:12px;color:#6b7280;font-weight:500}.flights-sort-select{flex:1;padding:4px 8px;border:1px solid #d1d5db;border-radius:4px;background:#fff;font-size:13px;color:#1f2937;font-weight:500}.flights-sort-select option{color:#1f2937;background:#fff}.flights-list{max-height:480px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding-right:2px}.flights-empty-row{padding:16px;color:#6b7280;font-size:13px;text-align:center}.flights-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:#fff;cursor:pointer;border:1px solid transparent;border-radius:6px;text-align:left;transition:background .15s,border-color .15s}.flights-row:hover{background:#f3f4f6;border-color:#e5e7eb}.flights-row--noprice{opacity:.6}.flights-row--noprice:hover{opacity:1}.flights-row__dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto;border:1.5px solid}.flights-row__main{flex:1;display:flex;flex-direction:column;min-width:0}.flights-row__city{font-weight:600;font-size:14px;color:#1f2937}.flights-row__state{color:#6b7280;font-weight:400}.flights-row__meta{font-size:11px;color:#6b7280;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flights-row__price{font-weight:700;font-size:14px;color:#1f2937;display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right;white-space:nowrap}.flights-row__price-main{line-height:1.1}.flights-row__price-tag{font-size:10px;font-weight:600;color:#6b7280;margin-left:2px}.flights-row__price-split{font-size:10px;font-weight:500;color:#6b7280}.flights-triptype-toggle{display:flex;gap:0;margin-top:8px;padding:2px;background:#f1f5f9;border-radius:8px}.flights-triptype-btn{flex:1;padding:6px 10px;background:transparent;border:none;border-radius:6px;font-size:12px;font-weight:600;color:#475569;cursor:pointer;transition:background .12s,color .12s}.flights-triptype-btn.active{background:#fff;color:#1f2937;box-shadow:0 1px 2px #0000000f}.flights-triptype-btn:hover:not(.active){color:#1f2937}.flights-daybyday__leg{margin-top:10px}.flights-daybyday__leg-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin-bottom:6px}.flights-daybyday{padding-top:4px}.flights-back-btn{background:none;border:none;color:#2563eb;cursor:pointer;font-size:13px;font-weight:500;padding:4px 0;margin-bottom:4px}.flights-back-btn:hover{color:#1d4ed8}.flights-daybyday__title{margin:4px 0 10px;font-size:14px;color:#1f2937}.flights-daybyday__empty{padding:16px;background:#f9fafb;border-radius:6px;color:#6b7280;font-size:13px}.flights-daybyday__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.flights-daybyday__row{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#fff;border-radius:4px;border:1px solid #e5e7eb}.flights-daybyday__row.cheapest{background:#ecfdf5;border-color:#6ee7b7}.flights-daybyday__date{flex:1;font-size:13px;color:#374151}.flights-daybyday__price{font-weight:700;font-size:14px;color:#1f2937}.flights-daybyday__badge{font-size:10px;font-weight:700;text-transform:uppercase;color:#065f46;background:#d1fae5;padding:1px 6px;border-radius:9px;letter-spacing:.3px}.flights-daybyday__updated{margin-top:8px;font-size:11px;color:#9ca3af;text-align:right}.flights-origin-pin{padding:4px 8px;background:#1e3a8a;color:#fff;border:2px solid #fff;border-radius:6px;font:700 12px/1 ui-monospace,monospace;letter-spacing:.5px;transform:translate(-50%,-50%);cursor:default;box-shadow:0 2px 6px #0000004d}.flights-dest-pin{display:flex;flex-direction:column;align-items:center;gap:2px;transform:translate(-50%,-50%);cursor:pointer;-webkit-user-select:none;user-select:none}.flights-dest-pin__iata{padding:1px 5px;background:#fff;color:#1f2937;border:1px solid #cbd5e1;border-radius:3px;font:600 10px/1.2 ui-monospace,monospace;letter-spacing:.3px;box-shadow:0 1px 2px #00000026}.flights-dest-pin__noprice{padding:1px 6px;background:#e5e7eb;color:#6b7280;border-radius:9px;font:500 11px/1.3 system-ui,sans-serif}.map-mode-selector{display:flex;padding:.75rem 1rem;border-bottom:2px solid #e0e0e0;background:#f8f9fa;gap:0}.map-mode-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.55rem .25rem;border:1px solid #d0d0d0;background:#fff;cursor:pointer;font-size:.72rem;color:#555;transition:background .15s,color .15s,border-color .15s;line-height:1.2}.map-mode-btn:first-child{border-radius:6px 0 0 6px}.map-mode-btn:last-child{border-radius:0 6px 6px 0}.map-mode-btn+.map-mode-btn{border-left:none}.map-mode-btn.active{background:#4285f4;color:#fff;border-color:#4285f4;z-index:1}.map-mode-btn:hover:not(.active){background:#f0f4ff;color:#4285f4;border-color:#4285f4;z-index:1}.map-mode-icon{font-size:1.1rem;line-height:1}.map-mode-label{font-weight:600;letter-spacing:.01em}@media(max-width:480px){.map-mode-selector{padding:.5rem .75rem}.map-mode-btn{font-size:.68rem;padding:.5rem .15rem}.map-mode-icon{font-size:1rem}}.interactive-map-page{display:flex;width:calc(100% + 4rem);height:calc(100vh - 120px);min-height:500px;margin-left:-2rem;margin-right:-2rem}.map-container{flex:1;position:relative;min-height:0}.map{width:100%;height:100%;min-height:400px}.map-sidebar{width:400px;background:#fff;border-left:1px solid #e0e0e0;display:flex;flex-direction:column;overflow-y:auto;box-shadow:-2px 0 8px #0000001a}.sidebar-header{padding:1.5rem;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.sidebar-header h2{margin:0;font-size:1.5rem;color:#333}.clear-routes-btn{padding:.5rem 1rem;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem}.clear-routes-btn:hover{background:#c82333}.route-totals{padding:.75rem 1rem;margin:0 1rem .5rem;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border-radius:8px;border:1px solid #4285F4}.total-row{display:flex;justify-content:space-between;padding:.2rem 0;font-size:.8rem}.total-row.total-main{padding-bottom:.35rem;margin-bottom:.25rem;border-bottom:1px solid rgba(66,133,244,.3)}.total-label{color:#555;font-weight:500}.total-value{color:#333;font-weight:600}.total-row.total-time{margin-top:.35rem;padding-top:.35rem;border-top:1px solid #4285F4}.total-time .total-label,.total-time .total-value{color:#4285f4;font-weight:700;font-size:.85rem}.error-message{padding:1rem;margin:1rem;background:#fee;color:#c33;border-radius:4px;border:1px solid #fcc}.map-loading,.map-error{display:flex;align-items:center;justify-content:center;height:100%;flex-direction:column}.map-error h2{color:#c33}.map-loading-overlay{position:absolute;inset:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:1000;font-size:1.125rem;color:#666}.route-segments{padding:1rem;flex:1;overflow-y:auto;min-height:0}.empty-state{padding:2rem;text-align:center;color:#666}.empty-state .hint{font-size:.875rem;margin-top:.5rem;color:#999}.route-start{padding:1rem;background:#e3f2fd;border:1px solid #4285F4;border-radius:8px;margin-bottom:1rem;text-align:center}.route-start p{margin:.5rem 0;color:#333}.route-start .hint{font-size:.875rem;color:#666}.route-segment{background:#f8f9fa;border:2px solid #4285F4;border-radius:8px;padding:1rem;margin-bottom:1rem;box-shadow:0 2px 4px #4285f433}.segment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.segment-header-actions{display:flex;align-items:center;gap:.5rem}.expand-btn{width:24px;height:24px;border:none;background:transparent;color:#666;cursor:pointer;font-size:.75rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0;border-radius:4px}.expand-btn:hover{color:#4285f4;background:#e3f2fd}.segment-number{font-weight:700;color:#4285f4;font-size:1.125rem}.remove-segment-btn{background:none;border:none;font-size:1.5rem;color:#999;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.remove-segment-btn:hover{color:#c33}.segment-cities{margin-bottom:.75rem}.segment-teams{font-weight:700;font-size:1rem;color:#1a1a1a;margin-bottom:.25rem}.segment-stadiums{font-weight:500;font-size:.875rem;color:#666}.segment-controls{display:flex;gap:.5rem;margin-bottom:.75rem}.mode-btn{flex:1;padding:.5rem;border:2px solid #e0e0e0;background:#fff;border-radius:4px;cursor:pointer;font-size:.875rem;transition:all .2s}.mode-btn:hover{border-color:#4285f4}.mode-btn.active{background:#4285f4;color:#fff;border-color:#4285f4}.flight-info,.drive-info{padding:.75rem;background:#fff;border-radius:4px;font-size:.875rem}.drive-info{display:flex;align-items:center;gap:.5rem}.drive-distance,.drive-time{font-weight:600;color:#4285f4}.drive-separator{color:#999}.flight-summary{font-weight:500;margin-bottom:.75rem}.ground-transport-note{font-size:.75rem;color:#666;font-weight:400}.flight-breakdown{margin-top:.75rem;padding:.75rem;background:#f8f9fa;border-radius:4px;border-left:3px solid #4285F4}.breakdown-header{font-weight:600;font-size:.8rem;color:#333;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.breakdown-item{display:flex;justify-content:space-between;padding:.25rem 0;font-size:.8rem;border-bottom:1px solid #e0e0e0}.breakdown-item:last-child{border-bottom:none}.breakdown-item.breakdown-total{margin-top:.5rem;padding-top:.5rem;border-top:2px solid #4285F4;border-bottom:none;font-weight:600}.breakdown-item.breakdown-airport-only{margin-top:.25rem;padding-top:.25rem;border-top:1px solid #4285F4;border-bottom:none;font-weight:500;color:#4285f4}.breakdown-label{color:#666}.breakdown-value{color:#333;font-weight:500}.layover-options{margin-top:.5rem}.layover-options label{display:block;margin-bottom:.25rem;font-size:.75rem;color:#666}.layover-options select{width:100%;padding:.5rem;border:1px solid #e0e0e0;border-radius:4px;font-size:.875rem}.stadium-list{border-top:1px solid #e0e0e0;padding:.75rem;max-height:30vh;overflow-y:auto}.stadium-list h3{margin:0 0 .75rem;font-size:.95rem;color:#333;font-weight:600}.stadium-items{display:flex;flex-direction:column;gap:.35rem}.stadium-item{padding:.5rem;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;transition:all .2s}.stadium-item:hover{background:#f8f9fa;border-color:#4285f4}.stadium-item.selected{background:#e3f2fd;border-color:#4285f4}.stadium-team{display:flex;align-items:center;gap:.4rem;margin-bottom:.15rem}.team-logo-small{width:18px;height:18px}.stadium-name{font-weight:500;font-size:.875rem;color:#333}.stadium-location{font-size:.75rem;color:#666}.stadium-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:2rem;border-radius:8px;max-width:500px;width:90%;position:relative}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#999}.modal-close:hover{color:#333}.modal-content h2{margin:0 0 .5rem;color:#333}.modal-content p{margin:.5rem 0;color:#666}.modal-content button{margin-top:1rem;padding:.75rem 1.5rem;background:#4285f4;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.modal-content button:hover{background:#357ae8}@media(max-width:900px){.map-sidebar{width:340px}.expand-btn{width:36px;height:36px;font-size:.875rem}.remove-segment-btn{width:36px;height:36px;font-size:1.75rem}.total-row{font-size:.75rem}.total-time .total-value{font-size:.8rem}}.level-toggle-section{padding:.75rem 1rem;border-bottom:1px solid #e0e0e0}.level-toggle-label{font-size:.75rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.level-toggle-section .level-pills-container{margin-bottom:0}.level-toggle-section .level-pills{justify-content:flex-start;gap:.375rem}.level-toggle-section .level-pill{font-size:.8125rem;padding:.375rem .75rem}.home-game-date-section{padding:.75rem 1rem;border-bottom:1px solid #e0e0e0}.home-game-date-row{display:flex;align-items:center;gap:.5rem}.home-game-date-input{flex:1;padding:.4rem .5rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.8125rem;color:#333;background:#fff;cursor:pointer;transition:border-color .15s}.home-game-date-input:focus{outline:none;border-color:#1a73e8}.home-game-date-clear{background:none;border:none;color:#999;font-size:1rem;cursor:pointer;padding:.25rem .4rem;border-radius:4px;line-height:1;transition:color .15s,background .15s}.home-game-date-clear:hover{color:#d32f2f;background:#fce4ec}.home-game-date-hint{font-size:.75rem;color:#888;margin-top:.375rem}.level-toggle{display:flex;gap:4px}.level-btn{flex:1;padding:.375rem .25rem;border:2px solid #e0e0e0;background:#fff;border-radius:4px;cursor:pointer;font-size:.8125rem;font-weight:500;color:#555;transition:all .15s ease;text-align:center}.level-btn:hover{border-color:#2e7d32;color:#2e7d32}.level-btn.active{background:#2e7d32;color:#fff;border-color:#2e7d32}.level-btn-short{display:none}@media(max-width:768px){.interactive-map-page{flex-direction:column}.map-container{flex:1;width:100%;height:100%}.map-sidebar{position:fixed;bottom:0;left:0;right:0;width:100%;height:auto;max-height:20vh;border-left:none;border-top:1px solid #e0e0e0;border-top-left-radius:16px;border-top-right-radius:16px;box-shadow:0 -4px 12px #00000026;z-index:100;transition:max-height .4s ease}.map-sidebar.expanded{max-height:65vh}.mobile-bottom-sheet-toggle{width:100%;background:linear-gradient(to bottom,#f8f9fa,#fff);border:none;border-bottom:1px solid #e0e0e0;padding:.75rem 1rem;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.5rem;transition:background .2s ease;min-height:60px}.mobile-bottom-sheet-toggle:active{background:linear-gradient(to bottom,#e9ecef,#f8f9fa)}.bottom-sheet-handle{width:40px;height:4px;background:#cbd5e0;border-radius:2px}.toggle-content{display:flex;align-items:center;gap:.5rem;width:100%;justify-content:center}.toggle-title{font-weight:600;font-size:.9375rem;color:#333}.segment-badge{background:#4285f4;color:#fff;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600}.sidebar-collapsible-content{max-height:0;overflow-y:auto;overflow-x:hidden;transition:max-height .4s ease}.map-sidebar.expanded .sidebar-collapsible-content{max-height:calc(65vh - 60px)}.mobile-bottom-sheet-toggle,.expand-btn,.remove-segment-btn,.mode-btn,.stadium-item{-webkit-tap-highlight-color:transparent}.expand-btn{width:44px;height:44px;font-size:1rem}.remove-segment-btn{width:44px;height:44px;font-size:1.75rem}.mode-btn{padding:.75rem;min-height:44px;font-size:.9375rem}.level-toggle-section{padding:.5rem .75rem}.level-btn{min-height:44px;padding:.5rem .25rem;font-size:.8125rem}.level-btn-full{display:none}.level-btn-short{display:inline}.level-btn,.level-toggle-section{-webkit-tap-highlight-color:transparent}.level-btn:active{transform:scale(.96)}.level-btn.active:active{transform:scale(.96);background:#1b5e20}.clear-routes-btn{padding:.625rem 1.125rem;font-size:.9375rem}.total-row{font-size:.75rem;padding:.25rem 0}.total-time .total-value{font-size:.85rem}.sidebar-header h2{font-size:1.25rem}.stadium-item{padding:.75rem;min-height:60px}.team-logo-small{width:24px;height:24px}.stadium-name{font-size:1rem}.stadium-location{font-size:.875rem}input[type=checkbox]{width:20px;height:20px}.breakdown-item{font-size:.75rem;padding:.25rem 0}.breakdown-header{font-size:.75rem}.route-segment{padding:.75rem;margin-bottom:.75rem}.segment-cities{margin-bottom:.55rem}.segment-teams{font-size:.95rem}.segment-stadiums{font-size:.8125rem}.expand-btn:active{transform:scale(.95);background:#d3d3d3}.remove-segment-btn:active{transform:scale(.95);background:#e63946}.mode-btn:active{transform:scale(.96)}.mode-btn.active:active{transform:scale(.96);background:#357ae8}.stadium-item:active{transform:scale(.98);background:#e8f4fd}.clear-routes-btn:active{transform:scale(.96);background:#c62828}.expand-btn,.remove-segment-btn,.mode-btn,.level-btn,.stadium-item,.clear-routes-btn{transition:transform .1s ease,background .1s ease}}@media(max-width:480px){.expand-btn{width:48px;height:48px;font-size:1.125rem}.remove-segment-btn{width:48px;height:48px;font-size:2rem}.mode-btn{padding:.875rem;min-height:48px}.level-btn{min-height:48px;font-size:.75rem}.route-totals{padding:.625rem .875rem}.total-row{flex-direction:column;align-items:flex-start;padding:.25rem 0;font-size:.75rem}.total-label{margin-bottom:.125rem}.total-value{font-size:1rem;font-weight:700}.total-time .total-label,.total-time .total-value{font-size:.875rem}.total-time .total-value{font-size:1.0625rem}.sidebar-header{padding:1rem}.sidebar-header h2{font-size:1.1rem}.clear-routes-btn{padding:.5rem .875rem;font-size:.875rem}.stadium-item{padding:1rem;min-height:68px}.stadium-name{font-size:1.05rem}.breakdown-item{flex-direction:column;align-items:flex-start;padding:.375rem 0}.breakdown-label{font-size:.75rem;margin-bottom:.125rem}.breakdown-value{font-size:.875rem;font-weight:600}.segment-controls{gap:.625rem}.segment-cities{line-height:1.4}.segment-teams{font-size:1rem}.segment-stadiums{font-size:.875rem}.route-segments{padding:.65rem}}.stadium-list-toggle{width:100%;padding:.875rem 1rem;background:#f8f9fa;border:none;border-bottom:1px solid #e0e0e0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:1rem;font-weight:600;color:#333;transition:background .2s ease}.stadium-list-toggle:hover{background:#e9ecef}.stadium-list-toggle:active{background:#dee2e6}.stadium-list-title{font-size:1.0625rem}.stadium-list-icon{font-size:.875rem;color:#666}.stadium-items.collapsed{max-height:0;overflow:hidden;transition:max-height .3s ease}.stadium-items.expanded{max-height:400px;overflow-y:auto;transition:max-height .3s ease}.trip-button-list{display:flex;flex-direction:column;gap:.625rem;margin-top:.5rem}.trip-button{width:100%;min-height:56px;padding:.75rem 1rem;background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease;font-size:.9375rem;color:#333}.trip-button:hover{border-color:#4285f4;background:#f0f7ff}.trip-button.active{background:#4285f4;border-color:#4285f4;color:#fff}.trip-button:disabled{opacity:.5;cursor:not-allowed}.trip-button-name{font-weight:600;text-align:left;flex:1}.trip-button.active .trip-button-name{color:#fff}.trip-button-badge{padding:.25rem .625rem;background:#e3f2fd;border-radius:12px;font-size:.8125rem;font-weight:500;color:#1976d2}.trip-button.active .trip-button-badge{background:#ffffff40;color:#fff}.trip-clear-button{width:100%;padding:.75rem;min-height:48px;background:#f44336;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9375rem;font-weight:600;transition:background .2s ease}.trip-clear-button:hover{background:#d32f2f}.trip-clear-button:active{transform:scale(.98);background:#c62828}@media(max-width:768px){.stadium-list-toggle{min-height:48px;font-size:1rem}.stadium-items.expanded{max-height:350px}}@media(max-width:480px){.stadium-list-toggle{min-height:52px;padding:1rem}.stadium-list-title{font-size:1.125rem}.trip-button{min-height:60px;padding:.875rem 1rem;font-size:1rem}.trip-button-badge{font-size:.875rem;padding:.3rem .75rem}}.trip-overlay-section{padding:1rem;border-bottom:1px solid #e0e0e0}.trip-tabs{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:2px solid #e0e0e0}.trip-tab{flex:1;padding:.75rem 1rem;background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:.9rem;font-weight:500;color:#666;transition:all .2s ease;margin-bottom:-2px}.trip-tab:hover{color:#2e7d32;background:#2e7d320d}.trip-tab.active{color:#2e7d32;border-bottom-color:#2e7d32;font-weight:600}.trip-selector{margin-top:.5rem}.trip-select{width:100%;padding:.625rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.9375rem;cursor:pointer;transition:border-color .2s ease}.trip-select:hover{border-color:#2e7d32}.trip-select:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.trip-loading{text-align:center;padding:1rem;color:#666;font-size:.875rem;font-style:italic}.trip-overlay-info{margin-top:1rem;padding:1rem;background:#2e7d320d;border:1px solid rgba(46,125,50,.2);border-radius:8px}.trip-overlay-name{font-weight:600;color:#2e7d32;margin-bottom:.625rem;font-size:1.0625rem}.trip-overlay-stats{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.875rem;color:#555;margin-bottom:.875rem}.trip-overlay-stats span{white-space:nowrap}.stats-separator{color:#999;font-weight:300}.trip-overlay-mileage{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.8125rem;color:#555;margin-top:.375rem;padding-top:.5rem;border-top:1px dashed rgba(46,125,50,.15)}.mileage-total{font-weight:600;color:#2e7d32;width:100%}.mileage-detail{font-size:.75rem;color:#666}.mileage-drive:before{content:"";display:inline-block;width:10px;height:3px;background:#2e7d32;margin-right:4px;vertical-align:middle;border-radius:2px}.mileage-flight:before{content:"";display:inline-block;width:10px;height:3px;background:#1565c0;margin-right:4px;vertical-align:middle;border-radius:2px}.trip-overlay-legend{margin-top:.875rem;padding-top:.875rem;border-top:1px solid rgba(46,125,50,.2);display:flex;flex-direction:column;gap:.5rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#666}.legend-marker{width:14px;height:14px;border-radius:50%;flex-shrink:0}.legend-marker.stadium-marker{background:#2e7d32;border:2px solid #1B5E20}.legend-marker.overnight-marker{background:#7b1fa2;border:2px solid #4A148C}.legend-line{width:24px;height:3px;flex-shrink:0}.legend-line.drive-line{background:#2e7d32}.legend-line.flight-line{background:#ff6f00}.no-trips-message{text-align:center;padding:2rem 1rem;color:#666}.no-trips-message p{margin:.5rem 0}.no-trips-message .hint{font-size:.8125rem;color:#999}.sidebar-divider{height:1px;background:#e0e0e0;margin:.5rem 0}@media(max-width:768px){.trip-overlay-stats{font-size:.8125rem;gap:.4rem}.stats-separator{margin:0 .125rem}.trip-overlay-mileage{font-size:.75rem}.mileage-detail{font-size:.6875rem}}@media(max-width:480px){.trip-overlay-section{padding:.875rem}.trip-overlay-stats{font-size:.75rem;gap:.375rem}.stats-separator{margin:0}.trip-overlay-mileage{font-size:.6875rem;gap:.375rem}}.follow-team-section{padding:1rem}.team-select{width:100%;padding:.625rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.9375rem;color:#333;cursor:pointer;transition:border-color .2s ease;background:#fff}.team-select:hover{border-color:#ff6f00}.team-select:focus{outline:none;border-color:#ff6f00;box-shadow:0 0 0 3px #ff6f001a}.team-route-info{margin-top:1rem}.team-route-legend{display:flex;flex-wrap:wrap;gap:.5rem .75rem;margin-top:.75rem;padding:.5rem 0;font-size:.75rem}.team-route-set-all{display:flex;align-items:center;gap:.375rem;margin-top:.5rem}.team-route-set-all .set-all-label{font-size:.75rem;color:#666;margin-right:.25rem}.team-route-set-all .set-all-btn{min-height:24px;padding:.125rem .5rem;font-size:.6875rem}.team-leg-layover{font-size:.625rem;color:#888;padding:0 .5rem .25rem 1.25rem;font-style:italic}.clear-highlight-btn{display:block;width:100%;margin-top:.5rem;padding:.375rem .75rem;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;font-size:.75rem;color:#555;cursor:pointer;transition:all .2s}.clear-highlight-btn:hover{background:#eee;border-color:#ccc}.team-route-legs{margin-top:.75rem;border:1px solid #eee;border-radius:6px}.team-route-leg{padding:.375rem .5rem;border-bottom:1px solid #f0f0f0;display:flex;flex-direction:column;gap:.25rem;cursor:pointer;transition:background .15s,opacity .15s}.team-route-leg:last-child{border-bottom:none}.team-route-leg:hover{background:#f8f8f8}.team-route-leg.highlighted{background:#fff3e0;border-left:3px solid #FF6F00}.team-route-leg.dimmed{opacity:.35}.team-leg-header{display:flex;align-items:center;gap:.375rem}.team-leg-type-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.team-leg-cities{font-size:.75rem;font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-leg-controls{display:flex;align-items:center;gap:.25rem;padding-left:1.125rem}.team-leg-controls .mode-btn{flex:0 0 auto;padding:.125rem .5rem;font-size:.6875rem;min-height:22px;border:1.5px solid #e0e0e0;background:#fff;border-radius:3px;cursor:pointer;transition:all .2s}.team-leg-controls .mode-btn:hover{border-color:#ff6f00}.team-leg-controls .mode-btn.active{background:#ff6f00;color:#fff;border-color:#ff6f00}.team-leg-controls .mode-btn.fly.active{background:#ea4335;border-color:#ea4335}.team-leg-controls .mode-btn:disabled{opacity:.4;cursor:not-allowed}.team-leg-stat{margin-left:auto;font-size:.6875rem;color:#666;font-weight:500;white-space:nowrap}@media(max-width:768px){.follow-team-section{padding:.875rem}.team-select{font-size:1rem;padding:.75rem;min-height:44px}.team-route-leg{padding:.5rem .625rem}.team-leg-controls .mode-btn{min-height:32px;padding:.25rem .625rem;font-size:.75rem}}@media(max-width:480px){.follow-team-section{padding:.75rem}.team-route-legend{gap:.375rem .5rem;font-size:.6875rem}.team-leg-controls .mode-btn{min-height:36px;padding:.25rem .5rem}}.trip-marker-label{background:#2e7d32;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:11px!important;line-height:1;margin-top:-6px;margin-left:12px;border:1.5px solid #fff;box-shadow:0 1px 3px #0000004d}.dd-lock-badge{position:absolute;top:2px;right:3px;font-size:.6rem;line-height:1}.dd-mode-btn{position:relative}.dd-locked-card{margin:1.25rem 1rem;padding:1.25rem;background:linear-gradient(135deg,#fefce8,#f0fdf4);border:1.5px solid #fbbf24;border-radius:10px;text-align:center}.dd-locked-icon{font-size:2rem;margin-bottom:.5rem}.dd-locked-card h3{margin:0 0 .5rem;font-size:1.1rem;color:#1a1a1a}.dd-locked-card p{margin:0 0 .5rem;font-size:.8rem;color:#555;line-height:1.4}.dd-locked-sub{color:#444!important}.dd-locked-tier{font-weight:600;color:#d97706!important}.double-dip-section{padding:0;display:flex;flex-direction:column}.dd-sub-tabs{display:flex;border-bottom:1px solid #e0e0e0}.dd-sub-tab{flex:1;padding:.65rem .5rem;border:none;background:none;cursor:pointer;font-size:.8rem;font-weight:500;color:#666;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.dd-sub-tab.active{color:#4285f4;border-bottom-color:#4285f4}.dd-sub-tab:hover:not(.active){color:#333}.dd-time-row{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-bottom:1px solid #f0f0f0;background:#fafafa}.dd-time-label{font-size:.75rem;color:#666;white-space:nowrap;flex-shrink:0}.dd-time-buttons{display:flex;gap:4px}.dd-time-btn{padding:.25rem .55rem;border:1px solid #d0d0d0;border-radius:4px;background:#fff;cursor:pointer;font-size:.72rem;color:#555;transition:background .12s,color .12s}.dd-time-btn.active{background:#4285f4;color:#fff;border-color:#4285f4}.dd-time-btn:hover:not(.active){background:#f0f4ff;color:#4285f4;border-color:#4285f4}.dd-empty-hint{padding:1.25rem 1rem;font-size:.8rem;color:#888;text-align:center;line-height:1.5}.dd-no-pairings{padding:.6rem 1rem;font-size:.75rem;color:#aaa;text-align:center}.dd-anchor-header{display:flex;flex-direction:column;gap:.2rem;padding:.6rem 1rem .4rem;font-size:.85rem;background:#f8fff8;border-bottom:1px solid #e8f5e9}.dd-anchor-header-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.dd-anchor-sub{font-size:.75rem;color:#666}.dd-clear-btn{font-size:.7rem;padding:.2rem .55rem;border:1px solid #d1d5db;border-radius:4px;background:#fff;color:#6b7280;cursor:pointer;white-space:nowrap;flex-shrink:0}.dd-clear-btn:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.dd-venue-list{overflow-y:auto;max-height:420px;border-bottom:1px solid #eee}.dd-venue-item{border-bottom:1px solid #f0f0f0}.dd-venue-item:last-child{border-bottom:none}.dd-venue-item.expanded{background:#fafcff}.dd-venue-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.55rem 1rem;background:none;border:none;cursor:pointer;text-align:left;gap:.5rem}.dd-venue-row:hover{background:#f5f8ff}.dd-venue-row-left{flex:1;min-width:0}.dd-venue-chevron{font-size:1.1rem;color:#999;transition:transform .2s;flex-shrink:0;line-height:1}.dd-venue-chevron.open{transform:rotate(90deg)}.dd-venue-top{display:flex;align-items:center;gap:.4rem;margin-bottom:.15rem;flex-wrap:wrap}.dd-venue-name{font-size:.82rem;font-weight:600;color:#222}.dd-venue-level{font-size:.65rem;background:#e8f5e9;color:#2e7d32;padding:1px 5px;border-radius:3px;font-weight:600}.dd-venue-pairing-badge{font-size:.65rem;background:#fff3cd;color:#92400e;padding:1px 5px;border-radius:3px;font-weight:700}.dd-venue-meta{font-size:.72rem;color:#777;margin-bottom:.15rem}.dd-venue-team{color:#999}.dd-venue-drive{font-size:.72rem;color:#15803d;font-weight:500}.dd-venue-detail{padding:.25rem 1rem .75rem;border-top:1px solid #e8f0fe;background:#f0f4ff}.dd-pairings-section{padding:.5rem 0}.dd-pairings-header{padding:.4rem 1rem .3rem;font-size:.78rem;font-weight:700;color:#d97706;background:#fffbeb;border-top:1px solid #fde68a;border-bottom:1px solid #fde68a}.dd-pairing-card{margin:.5rem 1rem;padding:.6rem .75rem;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;font-size:.75rem}.dd-pairing-date{font-weight:700;color:#92400e;margin-bottom:.35rem;font-size:.78rem}.dd-pairing-game{display:flex;flex-direction:column;gap:2px}.dd-pairing-teams{color:#1a1a1a;font-weight:500}.dd-pairing-venue{color:#666;font-size:.7rem}.dd-pairing-gametime{color:#b45309;font-size:.7rem;font-weight:600}.dd-pairing-arrow{text-align:center;color:#d97706;font-weight:600;padding:.3rem 0;font-size:.75rem}.dd-pairing-card.infeasible{background:#fff5f5;border-color:#fca5a5}.dd-pairing-time{color:#b45309;font-weight:400}.dd-feasibility-note{margin-top:.4rem;padding:.25rem .4rem;border-radius:4px;font-size:.68rem;font-weight:500}.dd-feasibility-note.ok{background:#d1fae5;color:#065f46}.dd-feasibility-note.warn{background:#fee2e2;color:#991b1b}.dd-hub-level-row{display:flex;align-items:flex-start;gap:.5rem;padding:.6rem 1rem;border-bottom:1px solid #f0f0f0;background:#fafafa;flex-wrap:wrap}.dd-hub-level-pills{display:flex;flex-wrap:wrap;gap:4px}.dd-level-pill{padding:.2rem .55rem;border:1px solid #d0d0d0;border-radius:12px;background:#fff;cursor:pointer;font-size:.7rem;color:#555;transition:background .12s,color .12s}.dd-level-pill.active{background:#4285f4;color:#fff;border-color:#4285f4}.dd-level-pill:hover:not(.active){background:#f0f4ff;color:#4285f4}.dd-hub-list{overflow-y:auto}.dd-hub-item{display:flex;align-items:center;gap:.6rem;padding:.6rem 1rem;border-bottom:1px solid #f5f5f5;cursor:pointer;transition:background .12s}.dd-hub-item:hover{background:#f8f9fa}.dd-hub-item.selected{background:#e8f0fe}.dd-hub-rank{font-size:.8rem;font-weight:700;color:#4285f4;min-width:28px}.dd-hub-info{flex:1;min-width:0}.dd-hub-name{font-size:.82rem;font-weight:600;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dd-hub-meta{font-size:.7rem;color:#888}.dd-hub-count{display:flex;flex-direction:column;align-items:center;min-width:36px}.dd-hub-count-num{font-size:1.1rem;font-weight:700;color:#22c55e;line-height:1.1}.dd-hub-count-label{font-size:.6rem;color:#aaa;text-transform:uppercase;letter-spacing:.03em}@media(max-width:768px){.dd-venue-list{max-height:320px}.dd-hub-level-row{padding:.4rem .75rem}}.deal-loading-spinner{display:inline-block;width:10px;height:10px;border:2px solid #d1d5db;border-top-color:#2563eb;border-radius:50%;animation:deal-spin .7s linear infinite}@keyframes deal-spin{to{transform:rotate(360deg)}}.trip-map-page{display:flex;width:100%;height:calc(100vh - 120px);min-height:500px}.trip-map-page .map-container{flex:1;position:relative;min-height:0}.trip-map-page .map{width:100%;height:100%;min-height:400px}.trip-map-page .map-sidebar{width:360px;background:#fff;border-left:1px solid #e0e0e0;display:flex;flex-direction:column;overflow-y:auto;box-shadow:-2px 0 8px #0000001a}.trip-map-page .sidebar-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e0e0e0;background:linear-gradient(135deg,#f8f9fa,#fff)}.trip-map-page .sidebar-header h2{margin:0;font-size:1.25rem;color:#333}.trip-map-page .sidebar-subtitle{margin:.25rem 0 0;font-size:.8rem;color:#666;font-weight:400}.trip-overlays{padding:1rem 1.5rem;border-bottom:1px solid #e0e0e0}.overlay-section-label{display:block;margin-bottom:.75rem;font-size:.75rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.trip-list{display:flex;flex-direction:column;gap:.5rem}.trip-overlay-item{display:flex;align-items:center;padding:.75rem;border-radius:8px;background:#f8f9fa;transition:background .2s;border:2px solid transparent}.trip-overlay-item:hover{background:#e3f2fd}.trip-overlay-item.selected{background:#e3f2fd;border-color:#1976d2}.trip-checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;flex:1}.trip-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#1976d2}.trip-color-indicator{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:2px solid white;box-shadow:0 1px 3px #0000004d}.trip-info{flex:1;min-width:0}.trip-name{font-size:.9rem;font-weight:600;color:#333;margin-bottom:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trip-dates{font-size:.75rem;color:#666}.loading-spinner{font-size:.9rem;margin-left:.5rem}.no-trips-message{padding:1rem;text-align:center;color:#999;font-size:.85rem}.trip-selector{padding:1rem 1.5rem;border-bottom:1px solid #e0e0e0;background:#fafafa}.trip-selector label{display:block;margin-bottom:.5rem;font-size:.8rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.trip-selector select{width:100%;padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:.9rem;color:#333;background:#fff;cursor:pointer;transition:border-color .2s}.trip-selector select:hover{border-color:#4285f4}.trip-selector select:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 3px #4285f41a}.hotels-toggle{padding:1rem 1.5rem;border-bottom:1px solid #e0e0e0}.toggle-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:.9rem}.toggle-label input[type=checkbox]{width:18px;height:18px;accent-color:#9C27B0;cursor:pointer}.toggle-text{color:#333;font-weight:500}.loading-indicator{font-size:.75rem;color:#9c27b0;margin-left:auto}.trip-stats{padding:1rem 1.5rem;border-bottom:1px solid #e0e0e0}.trip-stats h3{margin:0 0 1rem;font-size:1rem;color:#333;font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.trip-stats .stat-item{display:flex;flex-direction:column;padding:.75rem;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border-radius:8px;text-align:center}.trip-stats .stat-value{font-size:1.25rem;font-weight:700;color:#1a73e8}.trip-stats .stat-label{font-size:.7rem;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.map-legend{padding:1rem 1.5rem;background:#fafafa;border-top:1px solid #e0e0e0;margin-top:auto}.map-legend h4{margin:0 0 .75rem;font-size:.8rem;color:#666;text-transform:uppercase;letter-spacing:.5px}.legend-item{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;font-size:.8rem;color:#555}.legend-marker{width:16px;height:16px;border-radius:50%;flex-shrink:0}.stadium-marker{background:#1a73e8;border:2px solid white;box-shadow:0 1px 3px #0000004d}.overnight-marker{background:orange;border:2px solid white;box-shadow:0 1px 3px #0000004d}.hotel-booked-marker{background:#34a853;border:2px solid white;box-shadow:0 1px 3px #0000004d}.hotel-nearby-marker{background:#9c27b0;border:2px solid white;box-shadow:0 1px 3px #0000004d}.legend-line{width:24px;height:4px;border-radius:2px;flex-shrink:0}.drive-line{background:#4285f4}.flight-line{background:#ea4335}.trip-map-page .error-message{padding:1rem;margin:1rem;background:#fee;color:#c33;border-radius:4px;border:1px solid #fcc;font-size:.875rem}.trip-map-page .map-loading,.trip-map-page .map-error{display:flex;align-items:center;justify-content:center;height:100%;flex-direction:column;padding:2rem}.trip-map-page .map-error h2{color:#c33;text-align:center}.trip-map-page .map-loading-overlay{position:absolute;inset:0 400px 0 0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:1000;font-size:1rem;color:#666}.trip-map-page .empty-state{padding:2rem 1.5rem;text-align:center;color:#666}.trip-map-page .empty-state p{margin:.5rem 0}.trip-map-page .empty-state .hint{font-size:.85rem;color:#999}@media(max-width:900px){.trip-map-page{flex-direction:column}.trip-map-page .map-container{height:50vh;min-height:300px}.trip-map-page .map-sidebar{width:100%;height:auto;max-height:50vh;border-left:none;border-top:1px solid #e0e0e0}.trip-map-page .map-loading-overlay{right:0}.stats-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.stats-grid{grid-template-columns:repeat(2,1fr)}.trip-stats .stat-value{font-size:1rem}}.team-previews-page{max-width:1600px;margin:0 auto;padding:24px 20px 60px}.team-previews-header{text-align:center;margin-bottom:32px}.team-previews-header h1{font-size:28px;font-weight:700;color:#1a1a2e;margin:0 0 8px}.team-previews-header p{font-size:15px;color:#666;margin:0}.team-previews-loading,.team-previews-error{text-align:center;padding:60px 20px;color:#666;font-size:16px}.team-previews-error{color:#c62828}.division-section{margin-bottom:32px;max-width:1100px;margin-left:auto;margin-right:auto}.division-title{font-size:16px;font-weight:600;color:#333;text-transform:uppercase;letter-spacing:.5px;margin:0 0 14px;padding-bottom:6px;border-bottom:2px solid #e0e0e0}.team-cards-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;max-width:1100px;margin:0 auto}.team-card{border-radius:10px;overflow:hidden;transition:transform .15s,box-shadow .15s;background:#fff;border:1px solid #e8e8e8}.team-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.team-card.coming-soon{opacity:.6}.team-card-link{display:flex;flex-direction:column;align-items:center;padding:20px 16px;text-decoration:none;color:inherit}.team-card-link.disabled{cursor:default;pointer-events:none}.team-card-logo{width:80px;height:80px;object-fit:contain;margin-bottom:10px}.team-card-info{text-align:center}.team-card-name{display:block;font-size:15px;font-weight:600;color:#1a1a2e;line-height:1.3}.team-card-location{display:block;font-size:11px;color:#888;margin-top:2px}.team-card-badge.coming-soon-badge{display:inline-block;font-size:10px;font-weight:600;color:#fff;background:#9e9e9e;padding:2px 8px;border-radius:10px;margin-top:4px}.milb-card-logo-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;margin-bottom:10px}.milb-card-logo-wrap .team-card-logo{margin-bottom:0}.milb-parent-logo{position:absolute;bottom:-4px;right:-8px;width:28px;height:28px;object-fit:contain;opacity:.45;filter:drop-shadow(0 1px 2px rgba(0,0,0,.15))}.teams-level-tabs{display:flex;border-bottom:2px solid #e0e0e0;margin-bottom:28px;max-width:1100px;margin-left:auto;margin-right:auto}.teams-level-tab{padding:10px 20px;background:none;border:none;font-size:13px;font-weight:700;color:#999;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s;text-transform:uppercase;letter-spacing:.4px}.teams-level-tab:hover{color:#333}.teams-level-tab.active{color:#1565c0;border-bottom-color:#1565c0}.team-preview-page{display:flex;flex-direction:column;min-height:calc(100vh - 60px);overflow-x:hidden;margin-left:-2rem;margin-right:-2rem;width:calc(100% + 4rem)}.team-preview-loading,.team-preview-error{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:min(480px,calc(100vh - 120px));gap:12px;color:#666;font-size:16px}.team-preview-error{color:#c62828}.team-preview-header{display:flex;align-items:center;gap:16px;padding:12px 20px;background:#fff;border-bottom:1px solid #e0e0e0;flex-shrink:0}.back-link{font-size:13px;color:#1565c0;text-decoration:none;white-space:nowrap}.back-link:hover{text-decoration:underline}.team-header-content{display:flex;align-items:center;gap:12px}.team-header-logo{width:40px;height:40px;object-fit:contain}.team-header-info h1{font-size:20px;font-weight:700;color:#1a1a2e;margin:0;line-height:1.2}.team-header-division{font-size:12px;color:#888}.all-routes-toggle{display:flex;align-items:center;gap:12px;margin-left:auto}.toggle-checkbox{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;font-weight:600;color:#333;white-space:nowrap}.toggle-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#1565C0;cursor:pointer}.toggle-label{-webkit-user-select:none;user-select:none}.all-routes-mode-toggle{display:flex;align-items:center;gap:6px}.all-routes-mode-toggle .mode-btn{font-size:11px;font-weight:600;padding:3px 10px;border:1px solid #ccc;border-radius:4px;background:#fff;color:#666;cursor:pointer;transition:all .15s}.all-routes-mode-toggle .mode-btn.active{background:#1565c0;color:#fff;border-color:#1565c0}.all-routes-mode-toggle .mode-btn.fly.active{background:#ff6f00;border-color:#ff6f00}.routes-loading-indicator{font-size:11px;color:#999;font-style:italic}.team-preview-content{display:flex;flex:1;overflow:hidden}.team-preview-map-container{flex:1;min-height:0}.team-preview-sidebar{width:460px;flex-shrink:0;background:#fff;border-left:1px solid #e0e0e0;display:flex;flex-direction:column;overflow:hidden}.level-tabs{display:flex;border-bottom:2px solid #e0e0e0;flex-shrink:0;background:#f8f9fa}.level-tab{flex:1;padding:8px 4px;background:none;border:none;font-size:10px;font-weight:700;color:#999;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s;white-space:nowrap;text-transform:uppercase;letter-spacing:.3px}.level-tab:hover{color:#333}.level-tab.active{color:#1565c0;border-bottom-color:#1565c0;background:#fff}.affiliate-level-header{border-left:3px solid #ccc;padding:12px 12px 12px 14px;background:#fafafa;border-radius:0 6px 6px 0;margin-bottom:16px}.affiliate-level-team-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.affiliate-level-team-text{flex:1}.affiliate-level-team-name{font-size:15px;font-weight:700;color:#1a1a2e;margin:0 0 2px}.affiliate-level-stadium{font-size:12px;color:#555;margin:0 0 2px}.affiliate-level-location{font-size:12px;color:#888;margin:0}.affiliate-level-travel{display:flex;gap:10px;flex-wrap:wrap}.affiliate-games-section{margin-top:4px}.affiliate-games-heading{font-size:13px;font-weight:700;color:#1a1a2e;margin:0 0 10px;text-transform:uppercase;letter-spacing:.4px}.preview-tabs{display:flex;border-bottom:2px solid #e0e0e0;flex-shrink:0}.preview-tab{flex:1;padding:10px 6px;background:none;border:none;font-size:12px;font-weight:600;color:#888;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s;white-space:nowrap}.preview-tab:hover{color:#333}.preview-tab.active{color:#1565c0;border-bottom-color:#1565c0}.tab-content{flex:1;overflow-y:auto;padding:16px}.tab-loading,.tab-empty{text-align:center;padding:32px 16px;color:#999;font-size:14px}.opening-series-header{margin-bottom:16px}.opening-series-header h3{font-size:16px;font-weight:700;color:#1a1a2e;margin:0 0 4px}.series-dates{font-size:13px;color:#666;margin:0}.series-opponent{font-size:14px;font-weight:600;color:#333;margin:4px 0 0}.opening-series-games{display:flex;flex-direction:column;gap:10px}.game-card{border:1px solid #e8e8e8;border-radius:8px;padding:12px;background:#fafafa}.game-card-date{display:flex;align-items:center;gap:8px;margin-bottom:8px}.game-date{font-size:13px;font-weight:600;color:#333}.game-time{font-size:12px;color:#666}.day-night-badge{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;text-transform:uppercase}.day-night-badge.day{background:#fff3e0;color:#e65100}.day-night-badge.night{background:#e8eaf6;color:#283593}.game-card-opponent{display:flex;align-items:center;gap:8px;margin-bottom:8px}.opponent-logo{width:28px;height:28px;object-fit:contain}.opponent-name{font-size:13px;font-weight:500;color:#333}.game-card-tickets{display:flex;align-items:center;gap:8px}.price-badge{font-size:13px;font-weight:700;color:#2e7d32;background:#e8f5e9;padding:3px 8px;border-radius:4px}.get-tickets-btn{display:inline-block;font-size:12px;font-weight:600;color:#fff;background:#1565c0;padding:5px 12px;border-radius:6px;text-decoration:none;transition:background .15s}.get-tickets-btn:hover{background:#0d47a1}.tickets-unavailable{font-size:12px;color:#999}.hotels-header{margin-bottom:16px}.hotels-header h3{font-size:16px;font-weight:700;color:#1a1a2e;margin:0 0 4px}.hotels-subtitle{font-size:13px;color:#666;margin:0}.hotel-cards{display:flex;flex-direction:column;gap:10px}.hotel-card{border:1px solid #e8e8e8;border-radius:8px;padding:12px;background:#fafafa}.hotel-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.hotel-brand-badge{font-size:10px;font-weight:700;color:#fff;padding:2px 8px;border-radius:4px;text-transform:uppercase}.hotel-distance{font-size:12px;color:#888}.hotel-name{font-size:14px;font-weight:600;color:#1a1a2e;margin:0 0 2px}.hotel-brand-name{font-size:12px;color:#888;margin:0 0 8px}.hotel-card-footer{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.hotel-price{font-size:18px;font-weight:700;color:#333}.hotel-price small{font-size:12px;font-weight:400;color:#666}.hotel-price-na{font-size:13px;color:#999}.hotel-rating{font-size:13px;font-weight:600;color:#ff6f00}.hotel-book-btn{display:block;text-align:center;font-size:12px;font-weight:600;color:#fff;background:#2e7d32;padding:6px 12px;border-radius:6px;text-decoration:none;transition:background .15s}.hotel-book-btn:hover{background:#1b5e20}.season-route-header h3{font-size:16px;font-weight:700;color:#1a1a2e;margin:0 0 12px}.team-preview-sidebar .route-totals{background:#f5f5f5;border-radius:8px;padding:10px 12px;margin-bottom:12px}.team-preview-sidebar .total-row{display:flex;justify-content:space-between;font-size:13px;padding:2px 0}.team-preview-sidebar .total-row.total-main{font-weight:700;font-size:14px;padding-bottom:4px;margin-bottom:4px;border-bottom:1px solid #ddd}.team-preview-sidebar .total-label{color:#666}.team-preview-sidebar .total-value{color:#333;font-weight:600}.team-preview-sidebar .team-route-legend{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px;font-size:12px}.team-preview-sidebar .legend-item{display:flex;align-items:center;gap:4px}.team-preview-sidebar .legend-marker{display:inline-block;width:12px;height:12px;border-radius:50%}.team-preview-sidebar .legend-line{display:inline-block;width:16px;height:3px;border-radius:2px}.team-preview-sidebar .team-route-set-all{display:flex;align-items:center;gap:8px;margin-bottom:12px}.team-preview-sidebar .set-all-label{font-size:12px;color:#666}.team-preview-sidebar .set-all-btn{font-size:11px;padding:4px 10px}.team-preview-sidebar .mode-btn{font-size:10px;font-weight:600;padding:2px 6px;border:1px solid #ccc;border-radius:4px;background:#fff;color:#666;cursor:pointer;transition:all .15s}.team-preview-sidebar .mode-btn.active{background:#1565c0;color:#fff;border-color:#1565c0}.team-preview-sidebar .mode-btn.fly.active{background:#ff6f00;border-color:#ff6f00}.team-preview-sidebar .mode-btn:disabled{opacity:.4;cursor:not-allowed}.team-preview-sidebar .clear-highlight-btn{display:block;width:100%;padding:6px;background:#e3f2fd;color:#1565c0;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;margin-bottom:8px}.team-preview-sidebar .team-route-legs{display:flex;flex-direction:column;gap:4px}.team-preview-sidebar .team-route-leg{padding:6px 8px;border:1px solid #e8e8e8;border-radius:6px;cursor:pointer;transition:all .15s;background:#fff}.team-preview-sidebar .team-route-leg:hover{background:#f5f5f5}.team-preview-sidebar .team-route-leg.highlighted{border-color:#1565c0;background:#e3f2fd}.team-preview-sidebar .team-route-leg.dimmed{opacity:.4}.team-preview-sidebar .team-leg-header{display:flex;align-items:center;gap:6px;margin-bottom:4px}.team-preview-sidebar .team-leg-type-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.team-preview-sidebar .team-leg-cities{font-size:11px;font-weight:600;color:#333}.team-preview-sidebar .team-leg-controls{display:flex;align-items:center;gap:4px}.team-preview-sidebar .team-leg-stat{font-size:10px;color:#888;margin-left:auto;white-space:nowrap}.team-preview-sidebar .team-leg-layover{font-size:11px;color:#999;margin-top:2px;padding-left:14px}.affiliates-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.affiliates-header h3{font-size:16px;font-weight:700;color:#1a1a2e;margin:0}.affiliates-mode-toggle{display:flex;align-items:center;gap:4px}.affiliate-cards{display:flex;flex-direction:column;gap:10px}.affiliate-card{border:1px solid #e8e8e8;border-radius:8px;padding:12px;background:#fafafa;cursor:pointer;transition:border-color .15s,background .15s}.affiliate-card:hover{border-color:silver;background:#f0f0f0}.affiliate-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.affiliate-level-badge{font-size:10px;font-weight:700;color:#fff;padding:2px 8px;border-radius:4px;text-transform:uppercase}.affiliate-distance{font-size:12px;color:#888;font-weight:500}.affiliate-team-info{display:flex;align-items:center;gap:10px;margin-bottom:6px}.affiliate-team-logo{width:28px;height:28px;object-fit:contain;flex-shrink:0}.affiliate-team-name{font-size:14px;font-weight:600;color:#1a1a2e;margin:0}.affiliate-stadium-name{font-size:12px;color:#666;margin:2px 0 0}.affiliate-location{font-size:12px;color:#888;margin:0 0 4px}.affiliate-travel-stats{display:flex;gap:12px;margin-top:4px}.affiliate-drive-time{font-size:12px;color:#666}.affiliate-flight-time{font-size:12px;color:#ff6f00;font-weight:500}.affiliates-empty{text-align:center;padding:24px 16px;color:#999;font-size:13px}.spring-training-section{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.spring-training-heading{font-size:14px;font-weight:600;color:#1a1a2e;margin:0 0 10px}.spring-training-badge{background-color:#2e7d32!important}.spring-training-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:10px 12px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.spring-training-card:hover{border-color:#2e7d32;box-shadow:0 2px 8px #2e7d321f}.spring-training-locked{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px;background:#f8f9fa;border-radius:8px;text-align:center}.spring-training-locked .lock-icon{font-size:24px}.spring-training-locked .lock-title{font-size:13px;font-weight:700;color:#1a1a2e;margin:0}.spring-training-locked .lock-desc{font-size:12px;color:#666;margin:0;line-height:1.4}.bottom-sheet-handle{display:flex;justify-content:center;padding:10px 0 6px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex-shrink:0}.bottom-sheet-handle:active{cursor:grabbing}.handle-bar{width:36px;height:4px;background:#ccc;border-radius:2px}.promotions-header{margin-bottom:12px}.promotions-header h3{font-size:15px;font-weight:700;color:#333;margin:0 0 4px}.promotions-subtitle{font-size:12px;color:#888;margin:0}.promo-cards{display:flex;flex-direction:column;gap:10px}.promo-card{border:1px solid #e8e8e8;border-radius:8px;padding:12px;background:#fafafa}.promo-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.promo-headline{font-size:14px;font-weight:700;color:#333}.promo-type-badge{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;background:#f3e5f5;color:#7b1fa2;text-transform:capitalize;white-space:nowrap}.promo-card-game{display:flex;align-items:center;gap:8px;margin-bottom:8px}.promo-game-details{display:flex;flex-direction:column;gap:2px}.promo-date{font-size:13px;font-weight:600;color:#333}.promo-opponent{font-size:12px;color:#666}.promo-description{font-size:12px;color:#555;margin:0 0 8px;line-height:1.4}.promo-image{width:100%;max-height:160px;object-fit:contain;border-radius:6px;margin-bottom:8px;background:#fff}.promo-card-footer{display:flex;align-items:center;gap:8px}@media(max-width:768px){.team-cards-grid{grid-template-columns:repeat(3,1fr);gap:8px}.team-card-logo{width:44px;height:44px}.team-card-name{font-size:11px}.team-previews-header h1{font-size:22px}.team-preview-header{padding:6px 10px;gap:8px}.back-link{font-size:12px}.team-header-logo{width:24px;height:24px}.team-header-info h1{font-size:14px}.team-header-division{display:none}.all-routes-toggle{gap:4px;flex-wrap:nowrap}.toggle-checkbox{font-size:11px;gap:4px}.toggle-checkbox input[type=checkbox]{width:14px;height:14px}.toggle-label{font-size:10px}.all-routes-mode-toggle .mode-btn{font-size:10px;padding:2px 6px}.team-preview-content{flex-direction:column;position:relative}.team-preview-map-container{flex:1;min-height:0}.team-preview-sidebar{width:100%;position:absolute;bottom:0;left:0;right:0;border-left:none;border-top:none;border-radius:14px 14px 0 0;box-shadow:0 -2px 12px #0000001f;z-index:20;transition:height .3s cubic-bezier(.25,.46,.45,.94);will-change:height}.team-preview-sidebar.dragging{transition:none}.preview-tab{font-size:11px;padding:8px 4px}.tab-content{padding:12px}.affiliate-card{padding:10px}.affiliate-team-info{gap:8px;margin-bottom:4px}.affiliate-team-logo{width:24px;height:24px}.affiliate-team-name{font-size:13px}.affiliate-stadium-name{font-size:11px}.affiliate-location{font-size:11px;margin:0 0 2px}.affiliate-travel-stats{gap:8px;margin-top:2px}.affiliate-drive-time,.affiliate-flight-time{font-size:11px}}@media(max-width:480px){.team-cards-grid{grid-template-columns:repeat(2,1fr)}.team-preview-header{padding:4px 8px;gap:6px}.team-header-logo{width:20px;height:20px}.team-header-info h1{font-size:13px}.get-tickets-btn,.hotel-book-btn,.promo-card-footer .get-tickets-btn{min-height:44px;display:flex;align-items:center;justify-content:center}.scouting-report-btn{font-size:11px;padding:4px 10px}.marketing-modal{width:95%;max-height:90vh;margin:5vh auto}.marketing-modal-header{padding:16px;gap:10px}.marketing-modal-logo{width:40px;height:40px}.marketing-modal-header h2{font-size:18px}.marketing-stats-section{flex-direction:column}}.parent-team-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1.5px solid;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap;flex-shrink:0;transition:background .15s;text-transform:uppercase;letter-spacing:.3px}.parent-team-btn:hover{background:#ffffff26}.parent-team-btn-logo{width:22px;height:22px;object-fit:contain}.scouting-report-btn{background:transparent;border:1.5px solid;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,transform .1s;flex-shrink:0}.scouting-report-btn:hover{background:#ffffff26;transform:translateY(-1px)}.marketing-modal-overlay{position:fixed;inset:0;background:#0000008c;z-index:9000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.marketing-modal{background:#fff;border-radius:14px;width:560px;max-width:95vw;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .25s ease;position:relative}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.marketing-modal-close{position:absolute;top:10px;right:14px;background:#0003;border:none;color:#fff;font-size:22px;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;z-index:10;transition:background .15s}.marketing-modal-close:hover{background:#0006}.marketing-modal-header{display:flex;align-items:center;gap:14px;padding:24px 24px 20px;border-radius:14px 14px 0 0}.marketing-modal-logo{width:52px;height:52px;object-fit:contain;flex-shrink:0}.marketing-modal-header h2{font-size:22px;font-weight:700;margin:0;line-height:1.2}.marketing-modal-subtitle{font-size:13px;font-weight:500;opacity:.8;letter-spacing:.5px;text-transform:uppercase}.marketing-modal-body{padding:24px}.marketing-blurb{font-size:15px;line-height:1.65;color:#333;margin:0 0 24px}.marketing-stats-section{display:flex;gap:14px;margin-bottom:24px}.marketing-stat-card{flex:1;background:#f5f7fa;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:4px}.marketing-stat-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#888}.marketing-stat-value{font-size:17px;font-weight:700;color:#1a1a2e}.marketing-stat-desc{font-size:12px;color:#999}.marketing-section-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#888;margin:0 0 8px}.marketing-food-section{margin-bottom:24px;padding:16px;background:#fffbf0;border-radius:10px;border-left:4px solid #FF8F00}.marketing-food-name{font-size:16px;font-weight:700;color:#1a1a2e;margin:0 0 4px}.marketing-food-desc{font-size:14px;line-height:1.5;color:#555;margin:0}.marketing-outlook-section{margin-bottom:8px}.marketing-outlook-text{font-size:14px;line-height:1.7;color:#444;margin:0}.snapshot-section{margin-bottom:24px}.snapshot-grid{display:flex;gap:12px;margin-bottom:12px}.snapshot-grid--team-stats{display:flex;flex-wrap:nowrap;gap:6px;margin-bottom:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.snapshot-grid--team-stats .snapshot-card{flex:1 1 0;min-width:0;padding:8px 6px;border-radius:8px}.snapshot-grid--team-stats .marketing-stat-label{font-size:9px;letter-spacing:.04em;line-height:1.2}.snapshot-grid--team-stats .marketing-stat-value{font-size:13px;line-height:1.25;word-break:break-word}.snapshot-grid--team-stats .marketing-stat-desc,.snapshot-grid--team-stats .snapshot-subdued{font-size:10px;line-height:1.25}.snapshot-section--attendance-only .snapshot-grid--team-stats{overflow-x:visible}.snapshot-section--attendance-only .snapshot-grid--team-stats .snapshot-card{flex:0 1 auto;min-width:120px;max-width:200px}@media(max-width:768px){.snapshot-grid--team-stats{flex-wrap:wrap;overflow-x:visible}.snapshot-grid--team-stats .snapshot-card{flex:1 1 calc(50% - 3px);min-width:min(100%,140px)}}.snapshot-card{flex:1;background:#f5f7fa;border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}.snapshot-subrow{display:flex;gap:8px;align-items:center;margin-top:4px}.snapshot-streak{font-size:12px;font-weight:700;padding:2px 8px;border-radius:20px}.streak-win{background:#e8f5e9;color:#2e7d32}.streak-loss{background:#fce4ec;color:#c62828}.snapshot-l10{font-size:12px;color:#888}.snapshot-subdued{font-size:13px;font-weight:400;color:#888}.diff-positive{color:#2e7d32}.diff-negative,.luck-over{color:#c62828}.luck-under{color:#2e7d32}.snapshot-no-data{font-size:14px;color:#999;margin-bottom:20px;font-style:italic}@media(max-width:480px){.snapshot-grid:not(.snapshot-grid--team-stats){flex-direction:column}}.team-preview-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,400px);gap:28px;max-width:none;width:100%;margin:0 auto;padding:20px 24px 48px;box-sizing:border-box;align-items:start}.team-preview-main-column{min-width:0}.team-preview-sidebar-column{position:sticky;top:12px;display:flex;flex-direction:column;min-height:0}.sidebar-tabs-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e8e8e8;border-radius:12px;overflow:hidden;min-height:0}.preview-tabs-sidebar{flex-shrink:0;border-bottom:2px solid #e0e0e0}.preview-tabs-sidebar .preview-tab{font-size:11px;padding:10px 4px;letter-spacing:-.02em}.tab-content-sidebar{max-height:min(58vh,540px);overflow-y:auto;padding:14px 16px 18px;-webkit-overflow-scrolling:touch}.tab-content-sidebar .sidebar-tab-heading{margin:0 0 4px;font-size:16px;font-weight:700;color:#1a1a2e}.tab-content-sidebar .sidebar-tab-sub{margin:0 0 12px;font-size:12px;color:#888}.preview-section{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:20px 22px;margin-bottom:20px}.preview-section h2{margin:0 0 12px;font-size:18px;font-weight:700;color:#1a1a2e}.preview-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.preview-section-head h2{margin:0}.preview-section.team-stats-section h2.team-stats-section-title{margin:0 0 10px;font-size:18px;font-weight:700;color:#1a1a2e}.snapshot-section--attendance-only{margin-top:12px}.preview-section.team-stats-section .snapshot-section{margin-top:0;margin-bottom:0}.preview-subhead{margin:-4px 0 14px;font-size:13px;color:#666}.preview-section--player-stats{scroll-margin-top:96px}.player-stats-dugout-link-wrap{margin-top:1.25rem}.team-stats-cta{display:inline-block;margin-top:12px;padding:10px 18px;font-size:14px;font-weight:700;color:#fff;background:#1565c0;border-radius:8px;text-decoration:none;transition:background .15s}.team-stats-cta:hover{background:#0d47a1;color:#fff}.preview-muted{font-size:14px;color:#888;margin:0}.preview-error{font-size:14px;color:#c62828}.standings-inline-meta{font-size:13px;color:#666;margin:0 0 10px}.standings-inline .standings-table-wrap{max-height:320px;overflow:auto}.standings-row-highlight{background:#1565c014;font-weight:600}.player-leaders-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.leader-table-title{margin:0 0 8px;font-size:14px;font-weight:600;color:#333}.mini-stat-table{width:100%;border-collapse:collapse;font-size:13px}.mini-stat-table th,.mini-stat-table td{padding:6px 8px;text-align:left;border-bottom:1px solid #eee}.mini-stat-table th{color:#888;font-weight:600;font-size:11px;text-transform:uppercase}.sidebar-prospects-panel{margin-top:16px}.sidebar-prospects-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.sidebar-prospects-header .sidebar-tab-heading{margin:0}.prospects-season{font-size:10.5px;color:#888;font-weight:600;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.prospects-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:520px;overflow-y:auto;scrollbar-gutter:stable}.prospect-row{display:grid;grid-template-columns:28px 36px minmax(0,1fr);gap:8px;align-items:center;padding:6px 4px;border-bottom:1px solid #f3f3f6}.prospect-row:last-child{border-bottom:none}.prospect-row--clickable{cursor:pointer;border-radius:6px}.prospect-row--clickable:hover{background:#0000000a}.prospect-rank{font-weight:800;font-size:11px;color:#1a1a2e;text-align:center;background:#f4f4f8;border-radius:6px;padding:4px 0}.prospect-headshot{width:36px;height:36px;border-radius:50%;object-fit:cover;background:#eaeaef;border:1px solid #e3e3eb}.prospect-headshot-placeholder{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#ececf2,#d6d6e0)}.prospect-body{min-width:0;display:flex;flex-direction:column;gap:2px}.prospect-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.prospect-name{font-weight:600;font-size:12.5px;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prospect-top100-badge{font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#c9a44c,#e0bf69);padding:1px 6px;border-radius:999px;white-space:nowrap}.prospect-meta{display:flex;flex-wrap:wrap;gap:2px 6px;font-size:11px;color:#666}.prospect-meta-item{white-space:nowrap}.prospect-meta-item+.prospect-meta-item:before{content:"·";color:#bbb;margin-right:6px}.prospect-submeta{display:flex;flex-wrap:wrap;gap:2px 8px;font-size:10.5px;color:#888;margin-top:1px;line-height:1.3}.prospect-current-team{color:#4a5fc1;text-decoration:none;font-weight:500}.prospect-current-team:hover{text-decoration:underline}.sidebar-panel{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:16px 18px}.sidebar-panel-title{margin:0 0 4px;font-size:15px;font-weight:700;color:#1a1a2e}.sidebar-panel-sub{margin:0 0 12px;font-size:12px;color:#888}.sidebar-schedule-list{list-style:none;margin:0;padding:0}.sidebar-schedule-item{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid #f0f0f0;font-size:13px}.sidebar-schedule-item:last-child{border-bottom:none}.sidebar-schedule-date{flex:0 0 88px;color:#666}.sidebar-schedule-body{display:flex;align-items:center;gap:8px;min-width:0}.sidebar-schedule-homeaway{font-weight:700;color:#1565c0;width:22px}.sidebar-schedule-logo{width:24px;height:24px;object-fit:contain}.sidebar-schedule-opp{font-weight:600;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-promo-list{list-style:none;margin:0;padding:0}.sidebar-promo-item{padding:10px 0;border-bottom:1px solid #f0f0f0}.sidebar-promo-item:last-child{border-bottom:none}.sidebar-promo-headline{font-size:13px;font-weight:600;color:#333;line-height:1.35}.sidebar-promo-date{font-size:11px;color:#888;margin-top:4px}.affiliate-parent-link{display:flex;align-items:center;gap:12px;padding:10px 12px;margin-bottom:12px;border-radius:8px;background:#f8f9fa;text-decoration:none;color:inherit;border:1px solid #e0e0e0}.affiliate-parent-link:hover{background:#f0f4f8}.affiliate-parent-logo{width:40px;height:40px;object-fit:contain}.affiliate-parent-label{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:#888}.affiliate-parent-name{font-size:14px;font-weight:700;color:#1a1a2e}.sidebar-affiliate-list{list-style:none;margin:0;padding:0}.sidebar-affiliate-link{display:flex;align-items:center;gap:10px;padding:8px 0;text-decoration:none;color:inherit;border-bottom:1px solid #f0f0f0}.sidebar-affiliate-link:last-child{border-bottom:none}.sidebar-affiliate-logo{width:32px;height:32px;object-fit:contain}.sidebar-affiliate-team{font-size:13px;font-weight:600;color:#1a1a2e}.sidebar-affiliate-meta{font-size:11px;color:#888}.spring-training-sidebar{margin-top:12px;padding-top:12px;border-top:1px solid #eee;font-size:12px;color:#555}.spring-training-sidebar-title{font-weight:700;text-transform:uppercase;font-size:10px;letter-spacing:.4px;color:#888;margin-bottom:4px}.roster-subheading{margin:12px 0 8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#666}.roster-subheading:first-of-type{margin-top:0}.roster-list{list-style:none;margin:0;padding:0;max-height:220px;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}.roster-list-compact{max-height:160px}.roster-row{display:grid;grid-template-columns:36px minmax(0,1fr) minmax(2.75rem,auto);gap:8px;align-items:baseline;font-size:12px;padding:4px 0;border-bottom:1px solid #f5f5f5}.roster-row--clickable{cursor:pointer;border-radius:4px}.roster-row--clickable:hover{background:#0000000a}.roster-num{color:#888;font-variant-numeric:tabular-nums}.roster-name{font-weight:500;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roster-pos{justify-self:end;text-align:right;color:#777;font-size:11px;padding-right:10px;white-space:nowrap}@media(max-width:1024px){.team-preview-layout{grid-template-columns:1fr}.team-preview-sidebar-column{position:static}.player-leaders-grid{grid-template-columns:1fr}}.prospect-badge{display:inline-block;vertical-align:middle;margin-left:4px;flex-shrink:0;filter:drop-shadow(0 1px 1px rgba(0,0,0,.18))}@media(max-width:768px){.prospect-badge{width:16px;height:19px;margin-left:3px}}.player-card-modal-overlay{position:fixed;inset:0;background:#000000a6;display:flex;align-items:flex-start;justify-content:center;z-index:1100;padding:24px 0;overflow-y:auto;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.player-card-modal-content{background:#fff;border-radius:16px;width:92%;max-width:540px;max-height:min(90vh,920px);overflow-y:auto;position:relative;box-shadow:0 20px 60px #00000059}.player-card-modal-actions-top{position:absolute;top:12px;right:12px;z-index:2;display:flex;align-items:flex-start;gap:8px}.player-card-add-list-wrap{position:relative}.player-card-add-list-btn{width:36px;height:36px;border:none;border-radius:50%;background:#ffffff40;color:#fff;font-size:1.35rem;font-weight:600;line-height:1;cursor:pointer;transition:background .15s}.player-card-add-list-btn:hover{background:#fff6}.player-card-add-list-panel{position:absolute;top:42px;right:0;width:min(280px,72vw);padding:10px;background:#fff;color:#1a1a2e;border-radius:10px;box-shadow:0 8px 28px #00000040;font-size:.85rem;z-index:5}.player-card-add-list-row{display:flex;gap:6px;align-items:center}.player-card-add-list-row select{flex:1;min-width:0;padding:6px 8px;border-radius:6px;border:1px solid #ccc}.player-card-add-list-add{padding:6px 10px;border:none;border-radius:6px;background:#667eea;color:#fff;font-weight:600;cursor:pointer;white-space:nowrap}.player-card-add-list-add:disabled{opacity:.45;cursor:not-allowed}.player-card-add-list-new{margin-top:8px;padding:0;border:none;background:none;color:#667eea;font-size:.8rem;cursor:pointer;text-decoration:underline}.player-card-add-list-create{margin-top:8px;display:flex;flex-direction:column;gap:6px}.player-card-add-list-create input{padding:6px 8px;border-radius:6px;border:1px solid #ccc}.player-card-add-list-create button{padding:6px 10px;border:none;border-radius:6px;background:#333;color:#fff;cursor:pointer}.player-card-list-msg{margin:8px 0 0;font-size:.78rem;color:#444}.player-card-modal-close{width:36px;height:36px;flex-shrink:0;border:none;border-radius:50%;background:#fff3;color:#fff;font-size:1.5rem;line-height:1;cursor:pointer;transition:background .15s}.player-card-modal-close:hover{background:#ffffff59}.player-card-header{display:flex;align-items:flex-start;gap:14px;padding:24px 20px 20px;border-radius:16px 16px 0 0;color:#fff}.player-card-headshot-wrap{flex-shrink:0;width:80px;height:80px;border-radius:10px;overflow:hidden;background:#0003}.player-card-headshot{width:100%;height:100%;object-fit:cover}.player-card-team-logo{width:44px;height:44px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.35))}.player-card-header-text{flex:1;min-width:0}.player-card-name{margin:0 0 3px;font-size:1.3rem;font-weight:700;line-height:1.2}.player-card-sub,.player-card-team-line{margin:0;font-size:.88rem;opacity:.9}.player-card-badges{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.player-card-body{padding:0 20px 20px}.player-card-pad{padding:24px 20px}.player-card-muted{color:#666;font-size:.9rem}.player-card-muted-sm{color:#999;font-size:.82rem;margin:8px 0 0}.player-card-error{color:#b00020;padding:24px 20px}.player-card-bio-detail{padding:12px 0 10px;border-bottom:1px solid #f0f0f0;margin-bottom:0}.player-card-dl{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:5px 16px;margin:0;font-size:.85rem}.player-card-dl dt{color:#888;font-weight:600;text-transform:uppercase;font-size:.72rem;letter-spacing:.04em;align-self:center}.player-card-dl dd{margin:0;font-weight:500;color:#1a1a1a;align-self:center}.player-card-tabs{display:flex;gap:2px;padding:12px 0 0;border-bottom:2px solid #eee;margin-bottom:16px}.player-card-tab{background:none;border:none;padding:8px 14px;font-size:.82rem;font-weight:600;color:#888;cursor:pointer;border-radius:8px 8px 0 0;letter-spacing:.02em;transition:color .15s,background .15s;position:relative;bottom:-2px;border-bottom:2px solid transparent}.player-card-tab:hover{color:#444;background:#f5f5f5}.player-card-tab.active{color:#1565c0;border-bottom:2px solid #1565c0;background:none}.player-card-level-block{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.player-card-level-block:last-of-type{border-bottom:none}.player-card-level-title{margin:0 0 14px;font-size:.95rem;font-weight:700;color:#222;text-transform:uppercase;letter-spacing:.05em}.player-card-level-teams{font-weight:400;color:#666;font-size:.88rem;text-transform:none;letter-spacing:0}.player-card-role-heading{margin:0 0 10px;font-size:.78rem;font-weight:700;color:#999;text-transform:uppercase;letter-spacing:.06em}.player-card-role-block,.player-card-stat-section{margin-bottom:16px}.player-card-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 8px;margin:0;list-style:none;padding:0}.player-card-stat-grid>div{display:flex;flex-direction:column;gap:2px;min-width:0}.player-card-stat-grid dt{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-card-stat-grid dd{margin:0;font-size:1rem;font-weight:700;color:#111;font-variant-numeric:tabular-nums;line-height:1.1}@media(max-width:400px){.player-card-stat-grid{grid-template-columns:repeat(3,1fr)}.player-card-stat-grid dd{font-size:.95rem}}.player-card-sc-group{margin-bottom:16px}.player-card-sc-h{margin:0 0 10px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#444;padding-bottom:5px;border-bottom:1px solid #e8e8e8}.player-card-statcast .player-card-stat-grid{grid-template-columns:repeat(4,1fr)}.player-card-adv-h{margin-top:18px}.player-card-arsenal-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.player-card-arsenal-table{width:100%;border-collapse:collapse;font-size:.82rem}.player-card-arsenal-table th,.player-card-arsenal-table td{padding:5px 10px 5px 0;text-align:right;border-bottom:1px solid #f0f0f0;white-space:nowrap}.player-card-arsenal-table th:first-child,.player-card-arsenal-table td:first-child{text-align:left;font-weight:600}.player-card-arsenal-table th{color:#999;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.player-notes-section{margin-top:4px}.player-notes-loading{padding:12px 0}.player-notes-wrap{display:flex;flex-direction:column;gap:8px}.player-notes-textarea{width:100%;box-sizing:border-box;padding:12px;border:1px solid #ddd;border-radius:10px;font-size:.9rem;font-family:inherit;line-height:1.55;resize:vertical;min-height:120px;color:#1a1a1a;background:#fafafa;transition:border-color .15s}.player-notes-textarea:focus{outline:none;border-color:#1565c0;background:#fff}.player-notes-footer{display:flex;align-items:center;justify-content:space-between}.player-notes-char{font-size:.75rem;color:#bbb}.player-notes-actions{display:flex;gap:8px}.player-notes-save{padding:7px 18px;border:none;border-radius:8px;background:#1565c0;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.player-notes-save:hover:not(:disabled){background:#1251a3}.player-notes-save:disabled{opacity:.45;cursor:not-allowed}.player-notes-delete{padding:7px 14px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;color:#c62828;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.player-notes-delete:hover:not(:disabled){background:#fff5f5;border-color:#c62828}.player-notes-delete:disabled{opacity:.45;cursor:not-allowed}.player-notes-msg{margin:0;font-size:.8rem;color:#2e7d32}.player-notes-msg-err{color:#c62828}.player-notes-updated{margin:0;font-size:.75rem;color:#bbb}.player-card-footer-link{margin-top:16px;text-align:center}.player-card-footer-link a{color:#1565c0;font-size:.88rem;text-decoration:none}.player-card-footer-link a:hover{text-decoration:underline}@media(max-width:480px){.player-card-modal-overlay{padding:0;align-items:flex-end}.player-card-modal-content{width:100%;max-width:100%;border-radius:20px 20px 0 0;max-height:92vh}.player-card-header{padding:20px 16px 16px}.player-card-body{padding:0 16px 24px}.player-card-dl{grid-template-columns:auto 1fr auto 1fr}.player-card-tab{padding:8px 10px;font-size:.78rem}}.team-stats-page{max-width:1400px;margin:0 auto;padding-bottom:48px}.team-stats-loading,.team-stats-error{text-align:center;padding:48px 20px;color:#666}.team-stats-error{color:#c62828}.team-stats-error a{display:inline-block;margin-top:12px;color:#1565c0}.team-stats-header{padding:16px 20px 20px;margin-bottom:0}.team-stats-header-top{margin-bottom:8px}.team-stats-back{font-size:14px;font-weight:600;text-decoration:none}.team-stats-back:hover{text-decoration:underline}.team-stats-header-main{display:flex;align-items:center;gap:16px}.team-stats-logo{width:64px;height:64px;object-fit:contain}.team-stats-title{margin:0;font-size:24px;font-weight:800}.team-stats-subtitle{margin:4px 0 0;font-size:14px}.team-stats-body{padding:20px 20px 0}.team-stats-body--embedded{padding:0;margin-top:.75rem}.stats-mode-row{margin-bottom:16px}.stats-variant-row{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.stats-variant-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#888}.stats-filters-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px 24px;margin-bottom:16px;padding:0 4px}.stats-filter-field{display:flex;flex-direction:column;gap:4px;min-width:0}.stats-filter-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#888}.stats-filter-input{padding:8px 10px;font-size:14px;border:1px solid #d0d7de;border-radius:8px;min-width:200px;max-width:100%;box-sizing:border-box}.stats-filter-input--narrow{min-width:88px;max-width:120px}.stats-filter-input:focus{outline:none;border-color:#1565c0;box-shadow:0 0 0 2px #1565c026}.stats-toggle-group{display:inline-flex;border-radius:10px;border:1px solid #d0d7de;overflow:hidden;background:#fff}.stats-toggle-group--compact .stats-toggle-btn{padding:8px 14px;font-size:13px}.stats-toggle-btn{padding:10px 20px;border:none;background:#fff;font-size:14px;font-weight:700;color:#555;cursor:pointer;transition:background .15s,color .15s}.stats-toggle-btn+.stats-toggle-btn{border-left:1px solid #d0d7de}.stats-toggle-btn:hover:not(:disabled){background:#f6f8fa;color:#222}.stats-toggle-btn.active{background:#e3f2fd;color:#1565c0}.stats-toggle-btn.muted{color:#bbb;cursor:not-allowed}.stats-toggle-btn:disabled:not(.muted){opacity:1}.stats-table-panel{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:12px 0 0}.stats-table-note{padding:24px 20px;margin:0;color:#888;font-size:14px}.stats-table-scroll{max-width:100%;max-height:calc(100vh - 260px);overflow:auto;-webkit-overflow-scrolling:touch}.stats-table{width:max-content;border-collapse:collapse;font-size:13px;min-width:920px}.stats-table--hitting-advanced{min-width:1100px}.stats-table--pitching-advanced{min-width:1320px}.stats-table--hitting-statcast,.stats-table--pitching-statcast{min-width:0}.stats-table th,.stats-table td{padding:8px 10px;text-align:right;border-bottom:1px solid #f0f0f0;white-space:nowrap}.stats-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#666;background:#fafafa;vertical-align:bottom}.stats-th-sort{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;width:100%;max-width:100%;padding:0;margin:0;border:none;background:transparent;font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;text-align:right;white-space:nowrap}.stats-th-sort:hover,.stats-th-sort.is-active{color:#1565c0}.stats-th-sort-label{flex:0 1 auto}.stats-sort-caret{flex:0 0 auto;font-size:9px;opacity:.85}.stats-table th.sticky-col .stats-th-sort{justify-content:flex-start;text-align:left}.stats-table th.sticky-col,.stats-table td.sticky-col{text-align:left;position:sticky;left:0;z-index:1;background:#fff;box-shadow:4px 0 8px -4px #00000014;min-width:9rem;max-width:14rem}.stats-table thead th.sticky-col{background:#fafafa;z-index:2}.stats-table thead th.sticky-col .stats-th-sort{background:transparent}.stats-table--hitting-statcast[data-statcast-hitting=battedBall] .statcast-col--expected,.stats-table--hitting-statcast[data-statcast-hitting=battedBall] .statcast-col--batTracking,.stats-table--hitting-statcast[data-statcast-hitting=battedBall] .statcast-col--discipline,.stats-table--hitting-statcast[data-statcast-hitting=expected] .statcast-col--battedBall,.stats-table--hitting-statcast[data-statcast-hitting=expected] .statcast-col--batTracking,.stats-table--hitting-statcast[data-statcast-hitting=expected] .statcast-col--discipline,.stats-table--hitting-statcast[data-statcast-hitting=batTracking] .statcast-col--battedBall,.stats-table--hitting-statcast[data-statcast-hitting=batTracking] .statcast-col--expected,.stats-table--hitting-statcast[data-statcast-hitting=batTracking] .statcast-col--discipline,.stats-table--hitting-statcast[data-statcast-hitting=discipline] .statcast-col--battedBall,.stats-table--hitting-statcast[data-statcast-hitting=discipline] .statcast-col--expected,.stats-table--hitting-statcast[data-statcast-hitting=discipline] .statcast-col--batTracking,.stats-table--pitching-statcast[data-statcast-pitching=arsenal] .statcast-col--discipline,.stats-table--pitching-statcast[data-statcast-pitching=arsenal] .statcast-col--contactAllowed,.stats-table--pitching-statcast[data-statcast-pitching=discipline] .statcast-col--arsenal,.stats-table--pitching-statcast[data-statcast-pitching=discipline] .statcast-col--contactAllowed,.stats-table--pitching-statcast[data-statcast-pitching=contactAllowed] .statcast-col--arsenal,.stats-table--pitching-statcast[data-statcast-pitching=contactAllowed] .statcast-col--discipline{display:none}.stats-table thead th{position:sticky;top:0;z-index:4;box-shadow:0 1px #e8e8e8}.stats-table thead th.sticky-col{z-index:7}.stats-name{font-weight:600;color:#1a1a2e;max-width:220px;display:flex;align-items:center;gap:2px}.stats-name .player-name-link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.stats-table tbody tr:hover td{background:#f9fcff}.stats-table tbody tr:hover td.sticky-col{background:#f0f7ff}.stats-filter-field--toggle{justify-content:flex-end}.stats-age-toggle{padding:7px 14px;font-size:13px;font-weight:600;border:1px solid #d0d7de;border-radius:8px;background:#fff;color:#555;cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.stats-age-toggle:hover{background:#f6f8fa;border-color:#bbb;color:#222}.stats-age-toggle.active{background:#e8f5e9;border-color:#66bb6a;color:#2e7d32}.stats-league-avg-badge{font-size:12px;color:#777;margin-bottom:12px;padding:0 4px}.stats-league-avg-badge strong{color:#333}.stats-age-delta{font-weight:600;font-variant-numeric:tabular-nums}.stats-age-delta.younger{color:#2e7d32}.stats-age-delta.older{color:#c62828}@media(max-width:600px){.stats-toggle-btn{padding:10px 14px;font-size:13px}}.deal-calendar{display:flex;flex-direction:column;gap:14px;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.deal-calendar-status{padding:16px;color:#6b7280;font-size:14px}.deal-calendar-status.error{color:#b91c1c}.deal-calendar-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.deal-calendar-title{margin:0 0 4px;font-size:16px;font-weight:700;color:#111827}.deal-calendar-subtitle{margin:0;font-size:12px;color:#6b7280}.deal-calendar-locked-pill{font-size:11px;font-weight:600;color:#1f2937;background:#fef3c7;border:1px solid #fcd34d;padding:4px 8px;border-radius:999px;white-space:nowrap}.deal-calendar-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(34px,1fr);gap:2px;overflow-x:auto;padding-bottom:4px}.deal-calendar-cell{position:relative;border:1px solid rgba(0,0,0,.05);border-radius:4px;height:52px;min-width:34px;cursor:pointer;display:flex;align-items:flex-end;justify-content:center;padding:4px 0;overflow:hidden;transition:transform .08s ease,box-shadow .08s ease}.deal-calendar-cell:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.deal-calendar-cell.selected{outline:2px solid #111827;outline-offset:1px}.deal-calendar-cell.no-data{background-image:repeating-linear-gradient(45deg,#e5e7eb 0 4px,#f3f4f6 4px 8px);border-color:#e5e7eb}.deal-calendar-cell-label{font-size:9px;font-weight:600;color:#111827d9;pointer-events:none;position:relative;z-index:2}.deal-calendar-cell-logos{position:absolute;top:4px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:1px;pointer-events:none;opacity:.55;z-index:1}.deal-calendar-cell-logo{width:22px;height:22px;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(255,255,255,.6))}.deal-calendar-cell-logos.count-2 .deal-calendar-cell-logo{width:18px;height:18px}.deal-calendar-cell-logos.count-3 .deal-calendar-cell-logo{width:14px;height:14px}.deal-calendar-cell-logo-more{font-size:9px;font-weight:700;color:#111827d9}.deal-calendar-cell.no-data .deal-calendar-cell-logos{opacity:.4}.deal-calendar-cell.selected .deal-calendar-cell-logos{opacity:.75}.deal-calendar-cell.dimmed{opacity:.32}.deal-calendar-cell.dimmed.selected{opacity:.55}.deal-calendar-cell.dimmed:hover{opacity:.6}.deal-calendar-smart-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.deal-calendar-team-filter-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.deal-calendar-smart-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border:1px solid #fcd34d;background:#fef3c7;border-radius:999px;font-size:11px;color:#1f2937;cursor:pointer;white-space:nowrap}.deal-calendar-smart-pill:hover{background:#fde68a}.deal-calendar-smart-pill strong{font-weight:700}.deal-calendar-smart-pill-price{font-weight:700;font-variant-numeric:tabular-nums}.deal-calendar-smart-pill-suffix{font-size:10px}.deal-calendar-team-filter{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.deal-calendar-team-pill{display:inline-flex;align-items:center;justify-content:center;padding:2px;width:26px;height:26px;border:1px solid #d1d5db;background:#fff;border-radius:999px;cursor:pointer;opacity:.55;transition:opacity .1s ease,border-color .1s ease,transform .1s ease}.deal-calendar-team-pill:hover{opacity:.85}.deal-calendar-team-pill.active{opacity:1;border-color:#111827;box-shadow:0 0 0 1px #111827 inset}.deal-calendar-team-pill-logo{width:100%;height:100%;object-fit:contain}.deal-calendar-team-pill-clear{padding:2px 6px;border:none;background:transparent;font-size:10px;color:#6b7280;cursor:pointer;text-decoration:underline}.deal-calendar-home-games{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.deal-calendar-home-game{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;padding:6px 8px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;font-size:12px}.deal-calendar-home-game-logo{width:24px;height:24px;object-fit:contain}.deal-calendar-home-game-matchup{color:#111827;font-weight:600}.deal-calendar-home-game-time{font-size:11px;font-variant-numeric:tabular-nums}.deal-calendar-home-game-dn{text-transform:capitalize}.deal-calendar-legend{display:flex;flex-wrap:wrap;gap:10px 14px;font-size:11px;color:#4b5563}.deal-calendar-legend-item{display:inline-flex;align-items:center;gap:6px}.deal-calendar-legend-text{display:inline-flex;flex-direction:column;line-height:1.2}.deal-calendar-legend-label{font-size:11px;color:#4b5563}.deal-calendar-legend-range{font-size:10px;color:#6b7280;font-variant-numeric:tabular-nums}.deal-calendar-legend-swatch{width:14px;height:14px;border-radius:3px;border:1px solid rgba(0,0,0,.1)}.deal-calendar-legend-swatch.no-data{background-image:repeating-linear-gradient(45deg,#e5e7eb 0 3px,#f3f4f6 3px 6px)}.deal-calendar-detail{border-top:1px solid #e5e7eb;padding-top:12px;display:flex;flex-direction:column;gap:12px}.deal-calendar-detail-header{display:flex;justify-content:space-between;align-items:center}.deal-calendar-detail-header h5{margin:0;font-size:14px;font-weight:700}.deal-calendar-detail-tier{font-size:11px;font-weight:600;color:#374151;background:#f3f4f6;padding:3px 8px;border-radius:999px}.deal-calendar-detail-prices,.deal-calendar-hotels-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.deal-calendar-detail-prices>div,.deal-calendar-hotels-summary>div{display:flex;flex-direction:column;gap:2px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:8px 10px}.deal-calendar-detail-prices strong,.deal-calendar-hotels-summary strong{font-size:14px;font-weight:700;color:#111827}.deal-calendar-detail-prices .dim,.deal-calendar-hotels-summary .dim{font-size:11px;color:#6b7280}.deal-calendar-filters{display:flex;flex-wrap:wrap;gap:10px}.deal-calendar-filters label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:600;color:#374151}.deal-calendar-filters select{padding:6px 8px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#111827;font-size:13px;min-height:32px;appearance:auto;-webkit-appearance:auto}.deal-calendar-filters select option{color:#111827;background:#fff}@media(max-width:480px){.deal-calendar-detail-prices,.deal-calendar-hotels-summary{grid-template-columns:1fr 1fr}.deal-calendar-cell{min-width:28px;min-height:44px}}.deal-calendar-range{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:10px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.deal-calendar-range label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:600;color:#374151}.deal-calendar-range input[type=date]{padding:6px 8px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#111827;font-size:13px;min-height:32px;font-family:inherit}.deal-calendar-range input[type=date]::-webkit-datetime-edit,.deal-calendar-range input[type=date]::-webkit-datetime-edit-fields-wrapper,.deal-calendar-range input[type=date]::-webkit-datetime-edit-text,.deal-calendar-range input[type=date]::-webkit-datetime-edit-month-field,.deal-calendar-range input[type=date]::-webkit-datetime-edit-day-field,.deal-calendar-range input[type=date]::-webkit-datetime-edit-year-field{color:#111827}.deal-calendar-range-apply,.deal-calendar-range-reset{padding:6px 14px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;min-height:32px;border:1px solid transparent}.deal-calendar-range-apply{background:#111827;color:#fff;border-color:#111827}.deal-calendar-range-apply:hover{background:#1f2937}.deal-calendar-range-reset{background:#fff;color:#374151;border-color:#d1d5db}.deal-calendar-range-reset:hover{background:#f3f4f6}.deal-calendar-range-error{flex-basis:100%;font-size:12px;color:#b91c1c}.deal-calendar-carriers{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.deal-calendar-carriers-header{font-size:12px;margin-bottom:6px}.deal-calendar-carriers-note{font-size:11px;color:#94a3b8;font-style:italic;margin-top:2px;line-height:1.4}.deal-calendar-hotels-freshness{font-size:11px;margin-top:6px;text-align:right}.deal-calendar-carriers-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.deal-calendar-carrier-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:6px 8px;border-radius:6px;font-size:13px;background:#f9fafb}.deal-calendar-carrier-row.aging{opacity:.75}.deal-calendar-carrier-row.stale{opacity:.5}.deal-calendar-carrier-row .carrier-name{font-weight:500;color:#111827}.deal-calendar-carrier-row .ulcc-tag{color:#6b7280;font-weight:400;font-size:11px}.deal-calendar-carrier-row .carrier-price{display:inline-flex;align-items:baseline;gap:6px;font-variant-numeric:tabular-nums}.deal-calendar-carrier-row .est-badge{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;border:1px solid #d1d5db;border-radius:3px;padding:1px 4px}.deal-calendar-carrier-row .carrier-conf{font-size:12px;color:#6b7280;min-width:12px;text-align:center;cursor:help}.deal-calendar-live{margin-top:10px}.deal-calendar-live-btn{width:100%;background:#111827;color:#fff;border:1px solid #111827;border-radius:6px;padding:8px 12px;font-size:13px;cursor:pointer}.deal-calendar-live-btn:hover:not(:disabled){background:#1f2937}.deal-calendar-live-btn:disabled{opacity:.6;cursor:default}.deal-calendar-live-error{margin-top:6px;font-size:12px;color:#b91c1c}.deal-calendar-live-empty{margin-top:8px;font-size:12px}.deal-calendar-live-results{margin-top:10px}.deal-calendar-live-results-header{font-size:11px;margin-bottom:4px}.deal-calendar-live-results ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.deal-calendar-live-row{display:grid;grid-template-columns:1.1fr 1.4fr 1.2fr auto;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;background:#f3f4f6;font-size:12px;font-variant-numeric:tabular-nums}.deal-calendar-live-row .airline{font-weight:600;color:#111827}.deal-calendar-live-row .times{color:#374151}.deal-calendar-live-row .meta{color:#6b7280}.deal-calendar-live-row .price{font-weight:600;color:#111827}.deal-calendar-mode-toggle{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:stretch}.deal-calendar-mode-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;background:#f9fafb;color:#374151;font-size:13px;font-weight:600;cursor:pointer;text-align:left;transition:background .12s ease,border-color .12s ease,color .12s ease}.deal-calendar-mode-btn:hover{background:#f3f4f6}.deal-calendar-mode-btn.active{background:#111827;border-color:#111827;color:#fff}.deal-calendar-mode-price{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}.deal-calendar-mode-suffix{font-size:11px;font-weight:500}.deal-calendar-mode-btn.active .dim{color:#ffffffb3}.deal-calendar-mode-total{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding:10px 12px;border:1px dashed #d1d5db;border-radius:8px;background:#fff}.deal-calendar-mode-total strong{font-size:15px;color:#111827;font-variant-numeric:tabular-nums}.deal-calendar-mode-total .dim{font-size:11px}.deal-calendar-hotels-section{display:flex;flex-direction:column;gap:10px}.deal-calendar-hotels-header{font-size:12px}.deal-calendar-hotels-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.deal-calendar-hotel-tier{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb}.deal-calendar-hotel-tier.empty{opacity:.6}.deal-calendar-hotel-tier-label{font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.deal-calendar-hotel-tier-avg{font-size:16px;font-weight:700;color:#111827;font-variant-numeric:tabular-nums}.deal-calendar-hotel-tier-unit{font-size:11px;font-weight:500}.deal-calendar-hotel-tier-meta{font-size:11px}.deal-calendar-hotel-tier-empty{font-size:12px}@media(max-width:480px){.deal-calendar-mode-toggle{grid-template-columns:1fr 1fr}.deal-calendar-mode-total{grid-column:1 / -1;align-items:flex-start}.deal-calendar-hotels-tiers{grid-template-columns:1fr}}.city-guides-page{min-height:calc(100vh - 120px);background:#fff;color:#1e293b}.city-guides-header{padding:32px 40px 16px}.city-guides-header h1{font-size:28px;font-weight:700;margin:0 0 6px;color:#0f172a}.city-guides-header p{font-size:15px;color:#64748b;margin:0}.free-demo-callout{margin:0 40px 16px;padding:12px 16px;background:linear-gradient(90deg,#fef9c3,#fef3c7);border:1px solid #f59e0b;border-radius:10px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:14px;color:#78350f}.free-demo-callout-badge{background:#f59e0b;color:#fff;font-weight:700;font-size:11px;letter-spacing:.5px;padding:3px 8px;border-radius:4px;flex-shrink:0}.free-demo-callout-text{flex:1;line-height:1.5}.free-demo-link{background:none;border:none;padding:0;font:inherit;color:#b45309;font-weight:700;text-decoration:underline;cursor:pointer}.free-demo-link:hover{color:#92400e}@media(max-width:768px){.free-demo-callout{margin:0 16px 12px}}.city-guides-loading{padding:80px;text-align:center;color:#94a3b8;font-size:16px}.city-guides-map-wrap{position:relative;margin:0 40px;background:#f1f5f9;border-radius:14px;overflow:hidden;border:1px solid #e2e8f0;box-shadow:0 2px 12px #0000000f;height:480px}.city-guides-map-chart{position:absolute;inset:0}.city-guides-map-chart svg{display:block;width:100%;height:100%}.city-guides-tooltip{position:absolute;pointer-events:none;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 14px;min-width:160px;z-index:10;box-shadow:0 4px 20px #0000001f}.tooltip-name{font-size:14px;font-weight:600;color:#0f172a;margin-bottom:3px}.tooltip-region{font-size:12px;font-weight:500;margin-bottom:3px}.tooltip-venues{font-size:12px;color:#64748b}.city-guides-legend{position:absolute;bottom:14px;left:16px;display:flex;flex-wrap:wrap;gap:6px 4px;max-width:360px;background:#ffffffeb;border-radius:10px;padding:10px 12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(226,232,240,.8);box-shadow:0 2px 10px #00000014}.legend-item{display:flex;align-items:center;gap:5px;background:none;border:1px solid transparent;border-radius:20px;padding:3px 8px 3px 4px;cursor:pointer;transition:background .15s,border-color .15s}.legend-item:hover{background:#0000000a;border-color:#00000014}.legend-item.active{background:color-mix(in srgb,var(--region-color) 12%,transparent);border-color:color-mix(in srgb,var(--region-color) 40%,transparent)}.legend-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;transition:transform .15s}.legend-label{font-size:11px;color:#475569;white-space:nowrap;font-weight:500}.legend-item.active .legend-label{color:#0f172a;font-weight:600}.legend-reset{display:block;width:100%;background:none;border:none;font-size:11px;color:#64748b;cursor:pointer;text-align:left;padding:4px 4px 0;margin-top:2px;transition:color .15s}.legend-reset:hover{color:#0f172a}.city-guides-browse{padding:40px 40px 60px}.city-guides-browse h2{font-size:20px;font-weight:600;color:#0f172a;margin:0 0 28px}.region-section{margin-bottom:32px;border-radius:10px;padding:0;transition:background .2s}.region-section.highlighted{background:#f8fafc;padding:16px;margin-left:-16px;margin-right:-16px;border:1px solid #e2e8f0}.region-heading{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border-left:3px solid;padding-left:10px;margin:0 0 14px;cursor:pointer;-webkit-user-select:none;user-select:none}.region-heading:hover{opacity:.8}.region-count{font-size:11px;font-weight:500;color:#94a3b8;text-transform:none;letter-spacing:0;margin-left:8px}.region-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.region-area-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;text-align:left;cursor:pointer;transition:background .15s,border-color .15s,transform .1s,box-shadow .15s;display:flex;flex-direction:column;gap:3px}.region-area-card:hover{background:#fff;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 3px 10px #00000014}.area-name{font-size:13px;font-weight:600;color:#1e293b}.area-count{font-size:11px;color:#94a3b8}@media(max-width:768px){.city-guides-header{padding:20px 16px 12px}.city-guides-map-wrap{margin:0 16px;border-radius:10px;display:flex;flex-direction:column;height:auto;min-height:0}.city-guides-map-chart{position:relative;flex:0 0 auto;height:min(52vw,320px);min-height:240px}.city-guides-legend{position:relative;bottom:auto;left:auto;max-width:none;width:100%;box-sizing:border-box;border-radius:0;border:none;border-top:1px solid rgba(226,232,240,.9);padding:6px 8px 8px;gap:6px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-shrink:0}.city-guides-legend .legend-item{flex-shrink:0;padding:2px 7px 2px 3px}.city-guides-legend .legend-label{font-size:10px}.city-guides-legend .legend-dot{width:8px;height:8px}.city-guides-legend .legend-reset{flex-shrink:0;width:auto;margin-top:0;padding:4px 8px;white-space:nowrap;align-self:center}.city-guides-browse{padding:24px 16px 40px}.region-section.highlighted{margin-left:0;margin-right:0}.region-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}@media(max-width:480px){.city-guides-map-chart{height:min(58vw,280px);min-height:220px}.region-grid{grid-template-columns:repeat(2,1fr)}}.deal-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:12px 24px;margin:0 auto 8px;max-width:1280px;font-size:14px;color:#475569}.deal-controls-label{font-weight:600;color:#1e293b}.deal-mode-toggle{display:inline-flex;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;background:#fff}.deal-mode-btn{padding:6px 14px;border:none;background:transparent;color:#475569;font-size:13px;font-weight:500;cursor:pointer;min-height:44px;transition:background .15s,color .15s}.deal-mode-btn:hover{background:#f1f5f9}.deal-mode-btn.active{background:#1e293b;color:#fff}.deal-legend{display:inline-flex;align-items:center;gap:4px;margin-left:auto;font-size:12px;color:#64748b}.deal-legend-pip{display:inline-flex;align-items:center}.deal-legend-dot{display:inline-block;width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.12)}.deal-legend-bookends{margin-left:8px;font-style:italic}.deal-last-minute-pill{margin-left:12px;padding:4px 10px;background:linear-gradient(90deg,#fef08a,#fde047);border:1px solid #ca8a04;border-radius:999px;font-size:12px;font-weight:600;color:#713f12;white-space:nowrap;cursor:help}.tooltip-deal{display:flex;flex-direction:column;gap:2px;margin:4px 0;padding:4px 0;border-top:1px solid rgba(0,0,0,.08);border-bottom:1px solid rgba(0,0,0,.08)}.tooltip-deal-tier{font-weight:600;font-size:12px}.tooltip-deal-price{font-size:13px;color:#0f172a;font-weight:600}.tooltip-deal-locked{font-size:11px;color:#94a3b8;font-style:italic}@media(max-width:768px){.deal-controls{padding:10px 12px;gap:10px}.deal-legend{margin-left:0;width:100%;justify-content:center}}.city-deal-drawer-backdrop{position:fixed;inset:0;background:#0f172a73;z-index:1000;animation:city-deal-fade .15s ease}.city-deal-drawer{position:fixed;top:0;right:0;height:100vh;width:min(480px,100vw);background:#f9fafb;z-index:1001;display:flex;flex-direction:column;box-shadow:-8px 0 24px #0000002e;animation:city-deal-slide .22s ease}.city-deal-drawer-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 18px;border-bottom:1px solid #e5e7eb;background:#fff}.city-deal-drawer-eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.city-deal-drawer-heading{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.city-deal-drawer-title-link{margin:0;padding:0;font-size:20px;font-weight:700;color:#111827;background:transparent;border:none;text-align:left;cursor:pointer;line-height:1.2}.city-deal-drawer-title-link:hover{color:#1d4ed8;text-decoration:underline;text-underline-offset:4px}.city-deal-drawer-guide-pill{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;background:#111827;color:#fff;border:none;border-radius:999px;font-size:12px;font-weight:600;cursor:pointer;min-height:30px}.city-deal-drawer-guide-pill:hover{background:#1d4ed8}.city-deal-drawer-close{background:transparent;border:none;font-size:28px;line-height:1;color:#6b7280;cursor:pointer;padding:4px 10px;min-height:44px;min-width:44px}.city-deal-drawer-close:hover{color:#111827}.city-deal-drawer-body{flex:1;overflow-y:auto;padding:16px}@keyframes city-deal-slide{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes city-deal-fade{0%{opacity:0}to{opacity:1}}@media(max-width:768px){.city-deal-drawer{width:100vw;height:88vh;top:auto;bottom:0;border-radius:16px 16px 0 0;animation:city-deal-slide-up .22s ease}@keyframes city-deal-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}}.city-guide-page{display:flex;flex-direction:column;height:calc(100vh - 60px);background:#fff;overflow:hidden}.city-guide-header{padding:8px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.city-guide-chat-btn{background:#1a1a2e;color:#fff;border:none;padding:8px 14px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,transform .1s;white-space:nowrap}.city-guide-chat-btn:hover{background:#2a2a4e}.city-guide-chat-btn:active{transform:translateY(1px)}@media(max-width:768px){.city-guide-chat-btn{padding:10px 14px;min-height:44px;font-size:14px}}.city-guide-back{background:none;border:none;color:#64748b;font-size:13px;cursor:pointer;padding:4px 0;transition:color .15s}.city-guide-back:hover{color:#0f172a}.city-guide-body{display:flex;flex:1;overflow:hidden;height:100%;position:relative}.city-guide-map-container{flex:1;min-width:0;height:100%;position:relative}.city-guide-map-canvas{position:absolute;inset:0}.city-guide-sidebar{width:50%;background:#fff;border-left:1px solid #e2e8f0;display:flex;flex-direction:column;overflow:hidden;flex-shrink:0;min-height:0}.city-guide-sidebar-scroll{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}.city-guide-sidebar-header{padding:20px 20px 12px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.city-guide-sidebar-header h2{font-size:20px;font-weight:700;color:#0f172a;margin:0 0 6px}.region-badge{font-size:11px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.07em}.city-guide-tabs{display:flex;border-bottom:2px solid #e2e8f0;flex-shrink:0;position:sticky;top:0;z-index:5;background:#fff}.city-guide-tab{flex:1;padding:11px 8px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:13px;font-weight:500;color:#94a3b8;cursor:pointer;transition:color .15s,border-color .15s}.city-guide-tab.active{color:#1565c0;border-bottom-color:#1565c0}.city-guide-tab:hover:not(.active){color:#475569}.city-guide-tab-content{flex:1 1 auto;min-height:min-content;overflow:visible;padding:16px}.city-guide-map-controls{display:flex;flex-wrap:wrap;gap:12px 20px;margin-bottom:16px;padding:12px 14px;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0}.city-guide-map-toggle{display:flex;align-items:center;gap:8px;font-size:13px;color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none}.city-guide-map-toggle input{width:16px;height:16px;accent-color:#1565c0;cursor:pointer}.city-guide-map-toggle input:disabled{cursor:not-allowed;opacity:.45}.city-guide-poi-legend{margin:-4px 0 16px;padding:10px 12px;background:#fafafa;border-radius:10px;border:1px dashed #e2e8f0}.city-guide-poi-legend-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.city-guide-poi-legend-title{font-size:10px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em}.city-guide-poi-legend-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.city-guide-poi-legend-actions-sep{color:#cbd5e1;font-size:12px;-webkit-user-select:none;user-select:none}.city-guide-poi-legend-link{background:none;border:none;padding:0;font-size:11px;font-weight:600;color:#1565c0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.city-guide-poi-legend-link:hover{color:#0d47a1}.city-guide-poi-legend-items{display:flex;flex-wrap:wrap;gap:8px 14px}.city-guide-poi-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#475569;line-height:1.25}.city-guide-poi-legend-togglable{cursor:pointer;-webkit-user-select:none;user-select:none}.city-guide-poi-legend-check{width:14px;height:14px;margin:0;accent-color:#1565c0;cursor:pointer;flex-shrink:0}.city-guide-poi-legend-label{flex:1;min-width:0}.city-guide-poi-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;border:2px solid #fff;box-shadow:0 0 0 1px #0f172a1f}.city-guide-poi-legend--map-overlay{position:absolute;top:10px;left:10px;right:10px;z-index:30;margin:0;max-height:none;padding:8px 10px 10px;background:#fffffff0;border:1px solid rgba(226,232,240,.95);border-radius:12px;box-shadow:0 4px 18px #0f172a1f;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.city-guide-poi-legend--map-overlay .city-guide-poi-legend-header{margin-bottom:6px}.city-guide-poi-legend--map-overlay .city-guide-poi-legend-title{font-size:9px;letter-spacing:.08em}.city-guide-poi-legend--map-overlay .city-guide-poi-legend-link{font-size:12px;font-weight:600;padding:6px 4px;margin:-6px -4px;min-height:40px;display:inline-flex;align-items:center}.city-guide-poi-legend--map-overlay .city-guide-poi-legend-actions-sep{margin:0 2px}.city-guide-poi-legend--map-overlay .city-guide-poi-legend-items{flex-wrap:nowrap;gap:6px 8px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-x;padding-bottom:2px;scrollbar-width:thin}.city-guide-poi-legend--map-overlay .city-guide-poi-legend-item{flex:0 0 auto;max-width:min(200px,72vw);padding:5px 8px 5px 5px;border-radius:999px;background:#f8fafcf2;border:1px solid #e2e8f0;font-size:10px;gap:5px}.city-guide-poi-legend--map-overlay .city-guide-poi-legend-check{width:15px;height:15px;flex-shrink:0}.city-guide-poi-legend--map-overlay .city-guide-poi-legend-dot{width:8px;height:8px}.city-guide-poi-legend--map-overlay .city-guide-poi-legend-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.city-guide-admin-pois{margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.city-guide-admin-hint{font-size:11px;color:#94a3b8;line-height:1.45;margin:0 0 12px}.city-guide-admin-hint code{font-size:10px;background:#f1f5f9;padding:1px 5px;border-radius:4px;color:#64748b}.city-guide-map-hint{font-size:12px;color:#94a3b8;margin:-8px 0 14px;line-height:1.4}.venue-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:0 0 10px}.venue-section-blurb{font-size:12px;color:#94a3b8;margin:-4px 0 12px;line-height:1.45}.venue-distance-pill{display:inline-block;margin-top:6px;font-size:10px;font-weight:600;color:#64748b;background:#f1f5f9;border-radius:6px;padding:3px 8px}.venue-card-nearby{border-style:dashed}.venues-list-nearby{margin-bottom:8px}.venue-team-logo-sm{width:36px;height:36px}.venues-list{display:flex;flex-direction:column;gap:10px}.venue-card{display:flex;align-items:center;gap:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.venue-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.venue-card-left{width:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.venue-team-logo{width:36px;height:36px;object-fit:contain}.venue-card-info{flex:1;min-width:0}.venue-stadium-name{font-size:13px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.venue-team-name{font-size:12px;color:#94a3b8;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.venue-level-badge{display:inline-block;font-size:10px;font-weight:700;color:#fff;border-radius:4px;padding:2px 7px;margin-top:5px;letter-spacing:.03em}.venue-team-link{font-size:12px;color:#60a5fa;text-decoration:none;white-space:nowrap;flex-shrink:0;transition:color .15s}.venue-team-link:hover{color:#93c5fd}.airports-intro{font-size:13px;color:#94a3b8;margin:0 0 14px}.airports-empty{font-size:13px;color:#475569}.airports-list{display:flex;flex-direction:column;gap:10px}.airport-card{display:flex;align-items:center;gap:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px}.airport-iata{font-size:20px;font-weight:800;color:#1565c0;width:44px;flex-shrink:0;letter-spacing:.04em}.airport-info{flex:1}.airport-name{font-size:13px;font-weight:600;color:#0f172a}.airport-city{font-size:12px;color:#64748b;margin-top:2px}.airport-distance{font-size:12px;color:#94a3b8;white-space:nowrap;flex-shrink:0}.airport-primary-badge{font-size:10px;font-weight:700;background:#1d4ed8;color:#bfdbfe;border-radius:4px;padding:2px 7px;flex-shrink:0}.city-guide-map-loading{position:absolute;top:0;left:0;width:50%;height:100%;display:flex;align-items:center;justify-content:center;background:#f1f5f9;font-size:15px;color:#94a3b8;z-index:5;pointer-events:none}@media(max-width:768px){.city-guide-map-loading{width:100%}}.city-guide-loading,.city-guide-error{padding:80px;text-align:center;color:#94a3b8;font-size:16px;background:#fff;min-height:calc(100vh - 120px)}@media(max-width:768px){.city-guide-body{flex-direction:column}.city-guide-map-container{flex:1}.city-guide-sidebar.mobile-sheet{position:absolute;bottom:0;left:0;right:0;width:100%;border-left:none;border-top:1px solid #e2e8f0;border-radius:16px 16px 0 0;box-shadow:0 -4px 24px #0000001f;transition:height .3s cubic-bezier(.25,.46,.45,.94);z-index:20}.city-guide-sidebar.mobile-sheet.dragging{transition:none}.city-guide-page{position:relative}}.sheet-handle-bar{padding:10px 0 6px;cursor:grab;display:flex;justify-content:center;flex-shrink:0}.sheet-handle{width:36px;height:4px;background:#cbd5e1;border-radius:2px}.city-guide-poi-reader{margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.city-guide-poi-reader-intro{margin:0 0 12px;font-size:13px;line-height:1.45;color:#64748b}.city-guide-poi-search-input{width:100%;box-sizing:border-box;padding:10px 12px;margin-bottom:14px;font-size:14px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#0f172a;outline:none;transition:border-color .15s,box-shadow .15s}.city-guide-poi-search-input::placeholder{color:#94a3b8}.city-guide-poi-search-input:focus{border-color:#1565c0;background:#fff;box-shadow:0 0 0 3px #1565c01f}.city-guide-poi-reader-list{display:flex;flex-direction:column;gap:0}.city-guide-poi-reader-card.stadium-poi-card{margin-bottom:12px}.city-guide-poi-reader-card{display:block;width:100%;text-align:left;font:inherit;cursor:pointer;border:1px solid #e0e0e0;transition:box-shadow .15s ease,border-color .15s ease,background .15s ease}.city-guide-poi-reader-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0f172a0f}.city-guide-poi-reader-card:focus-visible{outline:none;box-shadow:0 0 0 3px #1565c040}.city-guide-poi-reader-card--focused{border-color:#fbbf24;background:linear-gradient(90deg,#fbbf2414,#fff 48%);box-shadow:0 0 0 1px #fbbf2473,0 4px 14px #0f172a14}.city-guide-poi-search-empty{margin:0;padding:12px 14px;font-size:13px;color:#64748b;background:#f8fafc;border-radius:8px;border:1px dashed #e2e8f0}.city-guide-poi-search-count{margin:8px 0 0;font-size:12px;color:#94a3b8}.city-guide-hotel-filters{margin:-8px 0 16px;padding:10px 12px;background:#fafafa;border-radius:10px;border:1px dashed #e2e8f0;display:flex;flex-direction:column;gap:8px}.city-guide-hotel-filter-row{display:flex;align-items:flex-start;gap:10px}.city-guide-hotel-filter-label{font-size:10px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;padding-top:5px;min-width:44px}.city-guide-hotel-dates{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.city-guide-hotel-dates input[type=date]{font-size:12px;padding:4px 8px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;font-family:inherit}.city-guide-hotel-dates-sep{color:#94a3b8;font-weight:600;font-size:12px}.city-guide-hotel-dates-nights{font-size:11px;color:#64748b;font-weight:600;margin-left:4px}.city-guide-hotel-summary{display:flex;flex-direction:column;gap:8px;background:linear-gradient(135deg,#f0fdf4,#ecfeff);border:1px solid #bbf7d0;border-radius:10px;padding:10px 12px;margin-bottom:4px}.city-guide-hotel-summary-head{font-size:11px;font-weight:700;color:#047857;text-transform:uppercase;letter-spacing:.05em}.city-guide-hotel-summary-stats{display:flex;gap:14px;flex-wrap:wrap;align-items:baseline}.city-guide-hotel-summary-stat{display:flex;flex-direction:column;line-height:1.1}.city-guide-hotel-summary-stat-value{font-size:18px;font-weight:800;color:#0f172a}.city-guide-hotel-summary-stat-label{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.city-guide-hotel-summary-stretches{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.city-guide-hotel-summary-stretch{font-size:11px;font-weight:600;color:#065f46;background:#fff;border:1px solid #bbf7d0;border-radius:16px;padding:3px 9px}.city-guide-hotel-summary-empty{font-size:11px;color:#64748b;font-style:italic}.city-guide-hotel-filter-pills{display:flex;flex-wrap:wrap;gap:6px;flex:1}.city-guide-hotel-pill{background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:500;color:#334155;cursor:pointer;display:inline-flex;align-items:center;gap:5px;line-height:1.3;min-height:28px}.city-guide-hotel-pill:hover{border-color:#94a3b8}.city-guide-hotel-pill.active{background:#334155;border-color:#334155;color:#fff}.city-guide-hotel-pill-count{font-size:10px;font-weight:700;background:#0f172a14;color:#475569;padding:1px 6px;border-radius:999px}.city-guide-hotel-pill.active .city-guide-hotel-pill-count{background:#fff3;color:#fff}.city-guide-hotel-filter-clear{align-self:flex-start;background:none;border:none;padding:0;font-size:11px;font-weight:600;color:#1565c0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.chat-modal-overlay{position:fixed;inset:0;background-color:#0f172a99;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.chat-modal-content{background:#fff;border-radius:14px;width:100%;max-width:720px;height:80vh;max-height:720px;display:flex;flex-direction:column;box-shadow:0 24px 64px #0f172a40;overflow:hidden}.chat-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 28px 18px;border-bottom:1px solid #e2e8f0;background:#1a1a2e;color:#fff;flex-shrink:0}.chat-modal-header .header-title h2{margin:0 0 4px;font-size:20px;font-weight:700}.chat-modal-header .header-subtitle{margin:0;font-size:13px;color:#cbd5e1}.chat-modal-header .header-actions{display:flex;align-items:center;gap:10px}.chat-buy-credits-link{background:#c89d4a2e;border:1px solid rgba(200,157,74,.55);color:#f5e6c8;font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:background .12s,color .12s,transform .12s}.chat-buy-credits-link:hover{background:#c89d4a;color:#1a1a2e;transform:translateY(-1px)}.chat-model-toggle{display:inline-flex;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;overflow:hidden;font-size:11px;letter-spacing:.02em}.chat-model-toggle__btn{background:transparent;border:none;color:#cbd5e1;padding:6px 10px;cursor:pointer;font-weight:600;transition:background .12s,color .12s}.chat-model-toggle__btn:hover{background:#ffffff0f;color:#fff}.chat-model-toggle__btn--active{background:#c89d4a;color:#1a1a2e}.chat-model-toggle__btn--active:hover{background:#d9ae5b;color:#1a1a2e}.chat-modal-header .modal-close-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);font-size:18px;color:#cbd5e1;cursor:pointer;padding:0;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .15s}.chat-modal-header .modal-close-btn:hover{background:#ffffff2e;color:#fff}.chat-modal-body{display:flex;flex-direction:column;flex:1;overflow:hidden;background:#f8fafc}.chat-modal-messages{flex:1;overflow-y:auto;padding:20px 28px;display:flex;flex-direction:column;gap:12px}.chat-status,.chat-empty-state{color:#64748b;font-size:14px;text-align:center;padding:24px 12px}.chat-empty-state p{margin:0 0 8px}.chat-empty-hint{font-size:13px;color:#94a3b8;max-width:480px;margin:0 auto!important;line-height:1.5}.chat-message{display:flex;flex-direction:column;width:100%;gap:4px}.chat-message--user{align-items:flex-end}.chat-message--assistant{align-items:flex-start}.chat-message__model-tag{font-size:10px;font-family:ui-monospace,SF Mono,Menlo,monospace;color:#94a3b8;padding:2px 6px;border-radius:4px;background:#f1f5f9;border:1px solid #e2e8f0;align-self:flex-start}.chat-message__bubble{max-width:80%;padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.5;word-wrap:break-word}.chat-message--user .chat-message__bubble{background:#1a1a2e;color:#fff;border-bottom-right-radius:4px;white-space:pre-wrap}.chat-message--assistant .chat-message__bubble{background:#fff;color:#0f172a;border:1px solid #e2e8f0;border-bottom-left-radius:4px}.chat-message--assistant .chat-message__bubble>:first-child{margin-top:0}.chat-message--assistant .chat-message__bubble>:last-child{margin-bottom:0}.chat-message--assistant .chat-message__bubble p{margin:0 0 10px}.chat-message--assistant .chat-message__bubble strong{font-weight:700;color:#0f172a}.chat-message--assistant .chat-message__bubble em{font-style:italic}.chat-message--assistant .chat-message__bubble h1,.chat-message--assistant .chat-message__bubble h2,.chat-message--assistant .chat-message__bubble h3,.chat-message--assistant .chat-message__bubble h4{margin:14px 0 6px;font-weight:700;color:#0f172a;line-height:1.3}.chat-message--assistant .chat-message__bubble h1{font-size:17px}.chat-message--assistant .chat-message__bubble h2{font-size:15px;padding-bottom:4px;border-bottom:1px solid #e2e8f0}.chat-message--assistant .chat-message__bubble h3,.chat-message--assistant .chat-message__bubble h4{font-size:14px}.chat-message--assistant .chat-message__bubble ul,.chat-message--assistant .chat-message__bubble ol{margin:6px 0 10px;padding-left:22px}.chat-message--assistant .chat-message__bubble li{margin:4px 0;line-height:1.5}.chat-message--assistant .chat-message__bubble li>p{margin:0 0 4px}.chat-message--assistant .chat-message__bubble hr{border:none;border-top:1px solid #e2e8f0;margin:12px 0}.chat-message--assistant .chat-message__bubble a{color:#2563eb;text-decoration:underline}.chat-message--assistant .chat-message__bubble code{background:#f1f5f9;padding:1px 5px;border-radius:4px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px;color:#1e293b}.chat-message--assistant .chat-message__bubble pre{background:#0f172a;color:#e2e8f0;padding:10px 12px;border-radius:8px;overflow-x:auto;margin:8px 0;font-size:12.5px;line-height:1.5}.chat-message--assistant .chat-message__bubble pre code{background:transparent;color:inherit;padding:0;border-radius:0;font-size:inherit}.chat-message--assistant .chat-message__bubble blockquote{margin:8px 0;padding:4px 0 4px 12px;border-left:3px solid #c89d4a;color:#475569;font-style:italic}.chat-message--assistant .chat-message__bubble table{border-collapse:collapse;margin:8px 0;width:100%;font-size:13px}.chat-message--assistant .chat-message__bubble th,.chat-message--assistant .chat-message__bubble td{text-align:left;padding:6px 10px;border-bottom:1px solid #e2e8f0;vertical-align:top}.chat-message--assistant .chat-message__bubble th{background:#f8fafc;font-weight:600;color:#334155}.chat-message--pending .chat-message__bubble{opacity:.6}.chat-message__bubble--typing{display:inline-flex;align-items:center;gap:4px;padding:12px 16px}.chat-message__bubble--typing .dot{width:6px;height:6px;border-radius:50%;background:#94a3b8;animation:chat-dot-bounce 1.2s infinite ease-in-out}.chat-message__bubble--typing .dot:nth-child(2){animation-delay:.15s}.chat-message__bubble--typing .dot:nth-child(3){animation-delay:.3s}@keyframes chat-dot-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}.chat-error{margin:0 28px 8px;padding:10px 14px;background:#fef2f2;color:#991b1b;border:1px solid #fecaca;border-radius:8px;font-size:13px}.chat-modal-input{display:flex;gap:10px;padding:16px 28px 20px;border-top:1px solid #e2e8f0;background:#fff;flex-shrink:0}.chat-input{flex:1 1 auto;min-width:0;resize:none;padding:10px 12px;border:1px solid #cbd5e1;border-radius:10px;font-size:14px;font-family:inherit;line-height:1.4;color:#0f172a;background:#f8fafc;transition:border-color .15s,background .15s}.chat-input::placeholder{color:#94a3b8}.chat-input:focus{outline:none;border-color:#1a1a2e;background:#fff}.chat-input:disabled{opacity:.6;cursor:not-allowed}.chat-send-btn{flex:0 0 auto;align-self:stretch;padding:0 18px;background:#1a1a2e;color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,transform .1s}.chat-send-btn:hover:not(:disabled){background:#2a2a4e}.chat-send-btn:active:not(:disabled){transform:translateY(1px)}.chat-send-btn:disabled{background:#94a3b8;cursor:not-allowed}@media(max-width:768px){.chat-modal-overlay{padding:0}.chat-modal-content{height:100vh;max-height:100vh;border-radius:0;max-width:100%}.chat-modal-header{padding:16px 18px}.chat-modal-messages{padding:16px}.chat-modal-input{padding:12px 16px 16px}.chat-input{font-size:16px}.chat-send-btn{min-height:44px}}.sidebar-stadium-header{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:0;position:sticky;top:0;z-index:5}.sidebar-back-btn{background:#fff3;border:none;color:#fff;font-size:18px;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s ease}.sidebar-back-btn:hover{background:#ffffff59}.sidebar-stadium-logo{width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 1px 3px rgba(0,0,0,.3));flex-shrink:0}.sidebar-stadium-header-text{color:#fff;min-width:0}.sidebar-stadium-header-text h3{margin:0;font-size:15px;font-weight:700;line-height:1.2;text-shadow:0 1px 2px rgba(0,0,0,.2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-stadium-header-text p{margin:2px 0 0;font-size:12px;opacity:.85}.sidebar-stadium-body{padding:16px 16px 32px;flex:1;overflow-y:auto;min-height:0;-webkit-overflow-scrolling:touch}.stadium-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.stadium-stat-card{display:flex;flex-direction:column;align-items:center;padding:10px;background:#f8f9fa;border-radius:8px;border:1px solid #eee}.stat-value{font-size:18px;font-weight:700;color:#1a1a2e;margin-bottom:4px;line-height:1.2}.stat-value-sm{font-size:14px}.stat-label{font-size:11px;color:#999;text-transform:uppercase;letter-spacing:.3px}.sidebar-stadium-body .stadium-stats-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:24px}.sidebar-stadium-body .stat-value{font-size:17px}.sidebar-stadium-body .stat-value-sm{font-size:13px}.sidebar-stadium-body .detail-row{padding:10px 0}.sidebar-stadium-body .detail-label{font-size:12px}.sidebar-stadium-body .detail-value{font-size:13px}.sidebar-stadium-body .stadium-dimensions-section,.sidebar-stadium-body .stadium-details-section{margin-bottom:24px}.sidebar-stadium-body .section-title{margin-bottom:14px;margin-top:4px}.stadium-detail-rows{display:flex;flex-direction:column;gap:0}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f0f0f0}.detail-row:last-child{border-bottom:none}.detail-label{font-size:13px;color:#888;flex-shrink:0}.detail-value{font-size:13px;color:#333;font-weight:500;text-align:right}.stadium-details-content{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.section-title{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;padding-bottom:6px;border-bottom:2px solid #eee}.dimensions-visual{background:#f8f9fa;border-radius:10px;padding:16px;border:1px solid #eee}.dimensions-row{display:flex;justify-content:space-between;align-items:flex-end;gap:8px}.dim-item{display:flex;flex-direction:column;align-items:center;flex:1}.dim-item-center{position:relative}.dim-item-center .dim-value{font-size:20px;color:#1a1a2e}.dim-value{font-size:16px;font-weight:700;color:#333;line-height:1.2}.dim-label{font-size:10px;color:#999;text-transform:uppercase;margin-top:4px;letter-spacing:.3px}.stadium-concessions-section,.stadium-pois-section{margin-bottom:20px}.stadium-section-toggle{cursor:pointer;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none}.stadium-section-arrow{font-size:12px;margin-left:8px}.stadium-section-content{margin-top:12px}.stadium-section-loading,.stadium-section-empty{padding:16px;text-align:center;color:#999;font-size:14px;background:#f8f9fa;border-radius:8px;border:1px solid #eee}.stadium-concession-card{display:flex;gap:12px;padding:12px;background:#f8f9fa;border-radius:10px;border:1px solid #eee;margin-bottom:12px}.stadium-concession-img{width:72px;height:72px;object-fit:cover;border-radius:8px;flex-shrink:0}.stadium-concession-info{flex:1;min-width:0}.stadium-concession-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px}.stadium-concession-name{font-weight:600;color:#1a1a2e;font-size:14px;line-height:1.3}.stadium-signature-badge{color:gold;margin-right:4px}.stadium-concession-price{color:#00897b;font-weight:600;font-size:13px;white-space:nowrap}.stadium-concession-desc{margin:4px 0;color:#555;font-size:13px;line-height:1.4}.stadium-concession-meta{display:flex;gap:12px;margin-top:6px;font-size:11px;color:#999}.stadium-concession-location:before{content:"📍 "}.stadium-concession-vendor:before{content:"🏪 "}.stadium-concession-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.stadium-concession-tag{display:inline-block;padding:2px 6px;background:#e8f5e9;color:#2e7d32;border-radius:4px;font-size:10px;font-weight:600;text-transform:capitalize}.stadium-poi-card{padding:12px;background:#fff;border-radius:10px;border:1px solid #e0e0e0;margin-bottom:12px}.stadium-poi-card-clickable{cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.stadium-poi-card-clickable:hover{border-color:#00897b;box-shadow:0 2px 8px #00897b26}.stadium-poi-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px}.stadium-poi-name{font-weight:600;color:#1a1a2e;font-size:14px;line-height:1.3;flex:1}.stadium-poi-distance{color:#00897b;font-size:12px;font-weight:600;white-space:nowrap}.stadium-poi-type{display:inline-block;padding:2px 8px;background:#e0f2f1;color:#00695c;border-radius:4px;font-size:11px;font-weight:600;text-transform:capitalize;margin-bottom:6px}.stadium-poi-desc{margin:4px 0;color:#555;font-size:13px;line-height:1.4}.stadium-poi-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:6px;font-size:11px;color:#999}.stadium-poi-website-link{font-size:11px;font-weight:600;color:#1d4ed8;text-decoration:none}.stadium-poi-website-link:hover{text-decoration:underline}.stadium-poi-address:before{content:"📍 "}.stadium-poi-walk-time:before{content:"🚶 "}.stadium-poi-map-hint{display:inline-block;margin-top:6px;font-size:11px;color:#00897b;font-weight:600}.stadium-poi-type-badge{display:inline-block;padding:3px 8px;background:#e0f2f1;color:#00695c;border-radius:4px;font-size:10px;font-weight:600;text-transform:capitalize;margin-bottom:6px}.stadium-poi-info{display:flex;flex-direction:column}.stadium-poi-name a{color:#00897b;text-decoration:none;font-weight:600}.stadium-poi-name a:hover{text-decoration:underline}.stadium-external-link{font-size:11px;margin-left:2px}.stadium-poi-highlights{margin:6px 0 0;font-size:12px;color:#666;font-style:italic}.stadium-poi-distance,.stadium-poi-walk{margin-right:8px}.stadium-pois-locked{display:flex;align-items:center;gap:12px;padding:16px;background:#f8f9fa;border-radius:8px;border:1px solid #eee}.stadium-pois-lock-icon{font-size:32px;flex-shrink:0;opacity:.6}.stadium-pois-lock-message{flex:1}.stadium-pois-lock-title{font-weight:600;color:#1a1a2e;margin:0 0 4px;font-size:14px}.stadium-pois-lock-text{margin:0;color:#666;font-size:13px;line-height:1.4}.stadium-games-section{margin-bottom:20px}.stadium-games-grid{display:flex;flex-direction:column;gap:12px}.stadium-game-card{display:flex;flex-direction:column;gap:10px;padding:14px;background:#fff;border-radius:10px;border:1px solid #e0e0e0;transition:border-color .2s ease,box-shadow .2s ease}.stadium-game-card:hover{border-color:#1976d2;box-shadow:0 2px 8px #1976d21f}.stadium-game-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.stadium-game-date{display:flex;flex-direction:column;gap:2px}.stadium-game-date-text{font-size:13px;font-weight:600;color:#1a1a2e}.stadium-game-time-text{font-size:12px;color:#666}.stadium-game-promo-badge{font-size:10px;background:gold;color:#333;padding:4px 8px;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.stadium-game-matchup{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 0;border-top:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0}.stadium-game-team{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.stadium-game-team-logo{width:28px;height:28px;object-fit:contain;flex-shrink:0}.stadium-game-team-name{font-size:13px;font-weight:600;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stadium-game-vs{font-size:11px;color:#999;font-weight:600;text-transform:uppercase;flex-shrink:0}.stadium-game-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.stadium-game-price{font-size:14px;font-weight:700;color:#00897b}.stadium-game-cta{display:inline-block;padding:8px 16px;background:#1976d2;color:#fff;text-decoration:none;border-radius:6px;font-size:13px;font-weight:600;transition:background .2s ease;white-space:nowrap}.stadium-game-cta:hover{background:#1565c0}.stadium-game-no-tickets{font-size:12px;color:#999;font-style:italic}.stadium-diet-tag{display:inline-block;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:600}.stadium-tag-veg{background:#e8f5e9;color:#2e7d32}.stadium-tag-gf{background:#fff3e0;color:#e65100}.stadium-food-tag{display:inline-block;padding:2px 6px;background:#e3f2fd;color:#1565c0;border-radius:4px;font-size:10px;font-weight:600;text-transform:capitalize}.stadium-coming-soon-sections{margin-top:20px}.coming-soon-card{display:flex;align-items:center;gap:12px;padding:14px;background:#f8f9fa;border-radius:8px;border:1px dashed #ccc}.coming-soon-icon{font-size:24px;opacity:.5}.coming-soon-text{font-size:13px;color:#999;font-weight:500}@media(max-width:768px){.sidebar-back-btn{min-width:44px;min-height:44px}.stadium-concession-img{width:60px;height:60px}.stadium-poi-card,.stadium-concession-card,.stadium-game-card{padding:10px}.stadium-game-cta{padding:10px 14px;min-height:44px;display:flex;align-items:center;justify-content:center}.stadium-game-team-name{font-size:12px}}@media(max-width:480px){.stadium-concession-card{flex-direction:column}.stadium-concession-img{width:100%;height:120px}.stadium-section-toggle{min-height:44px}}.admin-error-banner{display:flex;align-items:center;justify-content:space-between;background:#fee2e2;border:1px solid #fca5a5;color:#991b1b;font-size:.82rem;padding:8px 12px;border-radius:6px;margin:0 0 10px;gap:8px}.admin-error-dismiss{background:none;border:none;cursor:pointer;color:#991b1b;font-size:1rem;line-height:1;padding:0 2px}.admin-card-controls{display:flex;gap:4px;position:absolute;top:8px;right:8px;z-index:2}.stadium-concession-card,.stadium-poi-card{position:relative}.admin-icon-btn{background:#ffffffeb;border:1px solid #d1d5db;border-radius:5px;cursor:pointer;font-size:.85rem;line-height:1;padding:3px 5px;transition:background .15s}.admin-icon-btn:hover{background:#f3f4f6}.admin-delete-btn:hover{background:#fee2e2;border-color:#fca5a5}.admin-add-btn{display:block;width:100%;margin-top:10px;padding:9px 0;background:#f0fdf4;border:1.5px dashed #86efac;border-radius:8px;color:#15803d;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.admin-add-btn:hover{background:#dcfce7;border-color:#4ade80}.admin-form{padding:12px 0 4px}.admin-form-section-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:0 0 8px}.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin-bottom:8px}.admin-form-grid label,.admin-form-full{display:flex;flex-direction:column;font-size:.75rem;font-weight:600;color:#374151;gap:3px}.admin-form-full{margin-bottom:8px}.admin-form-grid input,.admin-form-grid select,.admin-form-full textarea,.admin-form-full input{font-size:.82rem;padding:5px 8px;border:1px solid #d1d5db;border-radius:5px;background:#fff;color:#111827;outline:none;transition:border-color .15s}.admin-form-grid input:focus,.admin-form-grid select:focus,.admin-form-full textarea:focus{border-color:#6366f1}.admin-form-full textarea{resize:vertical;min-height:52px}.admin-form-checkboxes{display:flex;flex-wrap:wrap;gap:10px 18px;margin-bottom:10px}.admin-form-checkbox{display:flex;align-items:center;gap:5px;font-size:.8rem;font-weight:500;color:#374151;cursor:pointer}.admin-form-checkbox input[type=checkbox]{width:15px;height:15px;cursor:pointer}.admin-form-tags-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px}.admin-form-tags-label{font-size:.75rem;font-weight:600;color:#6b7280}.admin-tag-toggle{padding:3px 10px;border-radius:20px;font-size:.75rem;font-weight:500;background:#f3f4f6;border:1px solid #d1d5db;color:#374151;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.admin-tag-toggle.active{background:#4f46e5;border-color:#4f46e5;color:#fff}.admin-form-actions{display:flex;gap:8px;padding-top:4px}.admin-btn{padding:7px 18px;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;border:none;transition:opacity .15s,background .15s}.admin-btn:disabled{opacity:.6;cursor:not-allowed}.admin-btn-save{background:#4f46e5;color:#fff}.admin-btn-save:hover:not(:disabled){background:#4338ca}.admin-btn-cancel{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.admin-btn-cancel:hover:not(:disabled){background:#e5e7eb}@media(max-width:480px){.admin-form-grid{grid-template-columns:1fr}.admin-card-controls{top:6px;right:6px}}.cg-hero{position:relative;flex-shrink:0;overflow:hidden;cursor:pointer;border-bottom:1px solid #e2e8f0;max-height:83px;transition:max-height .5s cubic-bezier(.4,0,.2,1)}.cg-hero--expanded{max-height:min(10000px,1000vh);overflow:visible;cursor:default}.cg-hero__photo{position:absolute;inset:0;background-size:cover;background-position:center 35%;background-color:#0d2d1f}.cg-hero__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#08120e80,#08120ebf 55%,#08120ef2);transition:opacity .2s}.cg-hero:not(.cg-hero--expanded):hover .cg-hero__overlay{opacity:.85}.cg-hero__eyebrow{font-size:7px;letter-spacing:.18em;text-transform:uppercase;color:#ffffff80;font-family:system-ui,sans-serif;margin-bottom:4px}.cg-hero__eyebrow--exp{margin-bottom:8px}.cg-hero__collapsed{position:relative;z-index:2;padding:10px 14px;min-height:83px;display:flex;flex-direction:column;justify-content:center;gap:2px;transition:opacity .2s}.cg-hero__collapsed--hidden{opacity:0;pointer-events:none}.cg-hero__headline{font-family:Poppins,system-ui,sans-serif;font-size:12px;font-weight:700;color:#fff;line-height:1.2}.cg-hero__subhead{font-family:Georgia,Times New Roman,serif;font-size:9px;font-style:italic;color:#fff9;line-height:1.4;margin-top:1px}.cg-hero__cta{display:inline-flex;align-items:center;gap:4px;margin-top:4px;font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:#5dcaa5;font-family:system-ui,sans-serif}.cg-hero__cta svg{width:10px;height:10px;transition:transform .2s}.cg-hero:not(.cg-hero--expanded):hover .cg-hero__cta svg{transform:translateY(2px)}.cg-hero__expanded{position:relative;z-index:2;opacity:0;pointer-events:none;transition:opacity .3s .2s}.cg-hero__expanded--visible{opacity:1;pointer-events:auto}.cg-hero__collapse-bar{position:sticky;top:0;z-index:8;display:flex;justify-content:flex-end;align-items:center;padding:6px 10px;background:#0f172ae6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.12)}.cg-hero__close--bar{margin:0;padding:8px 12px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#fffffff2;border-radius:8px;background:#ffffff1a}.cg-hero__close--bar:hover{color:#fff;background:#ffffff2e}.cg-hero__close--bar svg{flex-shrink:0}.cg-hero__exp-header{padding:20px 18px 16px;min-height:170px;display:flex;flex-direction:column;justify-content:flex-end}.cg-hero__exp-headline{font-family:Poppins,system-ui,sans-serif;font-size:22px;font-weight:700;line-height:1.1;color:#fff;margin:0 0 6px}.cg-hero__exp-subhead{font-family:Georgia,Times New Roman,serif;font-size:12px;font-style:italic;color:#ffffffa6;line-height:1.5;margin:0}.cg-hero__exp-body{background:#fff;padding:16px 18px 18px;border-top:1px solid rgba(255,255,255,.08)}.cg-hero__prose-p{font-family:Georgia,Times New Roman,serif;font-size:13px;font-weight:400;line-height:1.75;color:#1a1a1a;margin:0 0 .9em}.cg-hero__prose-p:last-of-type{margin-bottom:0}.cg-hero__prose-p--drop:first-letter{font-family:Poppins,Georgia,serif;font-size:3.4em;font-weight:700;float:left;line-height:.78;margin:.08em .08em 0 0;color:#0f172a}.cg-hero__pullquote{border-left:2px solid #1D9E75;padding:2px 0 2px 12px;margin:.9em 0}.cg-hero__pullquote p{font-family:Georgia,Times New Roman,serif;font-size:12.5px;font-style:italic;color:#475569;line-height:1.55;margin:0}.cg-hero__close{display:inline-flex;align-items:center;gap:5px;margin-top:14px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;cursor:pointer;background:none;border:none;padding:0;font-family:system-ui,sans-serif;transition:color .15s}.cg-hero__close--footer:hover{color:#475569}@media(max-width:768px){.cg-hero__headline{font-size:11px}.cg-hero__subhead{font-size:8px}.cg-hero__exp-headline{font-size:18px}.cg-hero__prose-p--drop:first-letter{font-size:2.8em}}.playbook-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f8f9fa;min-height:100vh;padding:2rem 0}.playbook-header{text-align:center;margin-bottom:2rem}.playbook-header h1{font-size:2rem;font-weight:700;color:#1a1a2e;margin:0 0 .5rem}.playbook-subtitle{color:#6c757d;font-size:1.05rem;margin:0 0 1rem}.btn-promote{background:#2d6a4f;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-promote:hover{background:#1b4332}.playbook-filters{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem}.filter-btn{background:#fff;border:1px solid #dee2e6;padding:.45rem 1rem;border-radius:20px;font-size:.85rem;color:#495057;cursor:pointer;transition:all .2s}.filter-btn:hover{border-color:#2d6a4f;color:#2d6a4f}.filter-btn.active{background:#2d6a4f;color:#fff;border-color:#2d6a4f}.playbook-loading,.playbook-empty{text-align:center;padding:3rem;color:#6c757d;font-size:1rem}.playbook-error{text-align:center;padding:1rem;color:#dc3545;background:#fff5f5;border-radius:8px;margin-bottom:1rem}.playbook-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.playbook-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;position:relative}.playbook-card:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0000001f}.playbook-card.unpublished{opacity:.75;border:2px dashed #dee2e6}.card-cover{height:160px;background-size:cover;background-position:center}.card-cover-placeholder{background:linear-gradient(135deg,#2d6a4f,#1b4332);display:flex;align-items:center;justify-content:center}.card-cover-placeholder span{font-size:3rem}.card-body{padding:1rem 1.25rem 1.25rem;flex:1}.card-category{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#2d6a4f;margin-bottom:.35rem}.card-title{font-size:1.15rem;font-weight:700;color:#1a1a2e;margin:0 0 .4rem;line-height:1.3}.card-description{font-size:.88rem;color:#6c757d;margin:0 0 .75rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-stats{display:flex;gap:1rem;font-size:.82rem;color:#495057;font-weight:500;margin-bottom:.35rem}.card-dates{font-size:.8rem;color:#868e96;margin-bottom:.5rem}.card-tags{display:flex;gap:.35rem;flex-wrap:wrap}.tag{background:#e9f5ef;color:#2d6a4f;font-size:.72rem;font-weight:500;padding:.2rem .55rem;border-radius:12px}.card-draft-badge{position:absolute;top:10px;right:10px;background:#ffc107;color:#1a1a2e;font-size:.7rem;font-weight:700;padding:.2rem .6rem;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.card-admin-actions{display:flex;gap:.5rem;padding:.75rem 1.25rem;border-top:1px solid #f0f0f0;background:#fafafa}.btn-admin-sm{flex:1;padding:.4rem .6rem;border:1px solid #dee2e6;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;background:#fff;transition:all .2s}.btn-publish{color:#2d6a4f;border-color:#2d6a4f}.btn-publish:hover{background:#2d6a4f;color:#fff}.btn-unpublish{color:#868e96}.btn-unpublish:hover{background:#868e96;color:#fff}.btn-delete{color:#dc3545;border-color:#dc3545}.btn-delete:hover{background:#dc3545;color:#fff}.playbook-gate{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.gate-icon{font-size:3rem;margin-bottom:1rem}.playbook-gate h2{font-size:1.5rem;color:#1a1a2e;margin:0 0 .75rem}.playbook-gate p{color:#6c757d;font-size:1rem;max-width:480px;margin:0 auto 1.5rem;line-height:1.5}.btn-primary{background:#2d6a4f;color:#fff;border:none;padding:.7rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-secondary{background:#fff;color:#495057;border:1px solid #dee2e6;padding:.7rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.promote-modal{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;position:relative}.modal-close{position:absolute;top:.75rem;right:1rem;background:none;border:none;font-size:1.5rem;color:#6c757d;cursor:pointer;line-height:1}.modal-close:hover{color:#1a1a2e}.promote-modal h2{font-size:1.25rem;color:#1a1a2e;margin:0 0 1.25rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.85rem;font-weight:600;color:#495057;margin-bottom:.35rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem .75rem;border:1px solid #dee2e6;border-radius:8px;font-size:.9rem;color:#1a1a2e;background:#fff;box-sizing:border-box}.form-group textarea{resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2d6a4f;box-shadow:0 0 0 3px #2d6a4f1f}.promote-error{color:#dc3545;background:#fff5f5;padding:.6rem .8rem;border-radius:6px;font-size:.85rem;margin-bottom:1rem}.promote-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem}@media(max-width:768px){.playbook-page{padding:1rem}.playbook-header h1{font-size:1.5rem}.playbook-grid{grid-template-columns:1fr}.playbook-filters{gap:.35rem}.filter-btn{padding:.4rem .75rem;font-size:.8rem}.promote-modal{padding:1.25rem}}@media(max-width:480px){.card-stats{flex-wrap:wrap;gap:.5rem}}.playbook-detail-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f8f9fa;min-height:100vh;padding:2rem;max-width:800px;margin:0 auto}.btn-back{background:none;border:none;color:#2d6a4f;font-size:.9rem;font-weight:600;cursor:pointer;padding:0;margin-bottom:1.25rem;display:inline-block}.btn-back:hover{color:#1b4332;text-decoration:underline}.detail-hero{border-radius:12px;overflow:hidden;position:relative;margin-bottom:1.5rem}.hero-image{height:240px;background-size:cover;background-position:center}.hero-placeholder{background:linear-gradient(135deg,#2d6a4f,#1b4332);display:flex;align-items:center;justify-content:center}.hero-placeholder span{font-size:4rem}.hero-overlay{position:absolute;bottom:0;left:0;right:0;padding:1rem 1.25rem;background:linear-gradient(transparent,#0009);display:flex;gap:.5rem;align-items:center}.hero-category{background:#ffffffe6;color:#2d6a4f;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:.25rem .65rem;border-radius:4px}.hero-draft-badge{background:#ffc107;color:#1a1a2e;font-size:.7rem;font-weight:700;padding:.25rem .6rem;border-radius:4px;text-transform:uppercase}.detail-header{margin-bottom:1rem}.detail-header h1{font-size:1.75rem;font-weight:700;color:#1a1a2e;margin:0 0 .5rem}.detail-description{color:#495057;font-size:1rem;line-height:1.6;margin:0}.detail-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1.25rem}.detail-tags .tag{background:#e9f5ef;color:#2d6a4f;font-size:.78rem;font-weight:500;padding:.25rem .6rem;border-radius:12px}.admin-controls{display:flex;gap:.5rem;margin-bottom:1.5rem}.btn-admin{padding:.5rem 1rem;border:1px solid #dee2e6;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;background:#fff;color:#495057;transition:all .2s}.btn-admin:hover{background:#f8f9fa}.btn-admin.btn-publish{color:#2d6a4f;border-color:#2d6a4f}.btn-admin.btn-publish:hover{background:#2d6a4f;color:#fff}.btn-admin.btn-unpublish{color:#868e96}.btn-admin.btn-unpublish:hover{background:#868e96;color:#fff}.detail-stats{display:flex;gap:1.5rem;padding:1.25rem;background:#fff;border-radius:10px;box-shadow:0 1px 4px #0000000f;margin-bottom:.75rem}.stat{display:flex;flex-direction:column;align-items:center;flex:1}.stat-value{font-size:1.4rem;font-weight:700;color:#1a1a2e}.stat-label{font-size:.78rem;color:#6c757d;text-transform:uppercase;letter-spacing:.3px}.detail-dates{text-align:center;color:#868e96;font-size:.9rem;margin-bottom:2rem}.detail-itinerary{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1.5rem}.detail-itinerary h2{font-size:1.15rem;font-weight:700;color:#1a1a2e;margin:0 0 1.25rem}.travel-leg{display:flex;align-items:center;gap:.75rem;padding:.5rem 0 .5rem 1.25rem}.travel-leg-line{width:2px;height:20px;background:#dee2e6}.travel-leg-info{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:#868e96}.travel-leg-icon{font-size:.9rem}.game-card{display:flex;align-items:flex-start;gap:.85rem;padding:.75rem;border-radius:8px;transition:background .15s}.game-card:hover{background:#f8f9fa}.game-number{width:32px;height:32px;background:#2d6a4f;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;flex-shrink:0;margin-top:2px}.game-details{flex:1;min-width:0}.game-venue{font-size:.95rem;font-weight:600;color:#1a1a2e;margin:0 0 .25rem}.game-meta{display:flex;gap:.85rem;flex-wrap:wrap;font-size:.82rem;color:#6c757d}.edit-section{background:#fff;border:1px solid #dee2e6;border-radius:10px;padding:1.25rem}.edit-section .form-group{margin-bottom:.85rem}.edit-section .form-group label{display:block;font-size:.82rem;font-weight:600;color:#495057;margin-bottom:.3rem}.edit-section .form-group input,.edit-section .form-group select,.edit-section .form-group textarea{width:100%;padding:.55rem .7rem;border:1px solid #dee2e6;border-radius:8px;font-size:.88rem;color:#1a1a2e;box-sizing:border-box}.edit-section .form-group textarea{resize:vertical}.edit-section .form-group input:focus,.edit-section .form-group select:focus,.edit-section .form-group textarea:focus{outline:none;border-color:#2d6a4f;box-shadow:0 0 0 3px #2d6a4f1f}.edit-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.btn-primary{background:#2d6a4f;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer}.btn-primary:hover{background:#1b4332}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#fff;color:#495057;border:1px solid #dee2e6;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer}.btn-secondary:hover{background:#f8f9fa}.detail-loading,.detail-error{text-align:center;padding:3rem;color:#6c757d}.detail-error p{color:#dc3545;margin-bottom:1rem}@media(max-width:768px){.playbook-detail-page{padding:1rem}.detail-header h1{font-size:1.35rem}.hero-image{height:180px}.detail-stats{gap:.75rem;padding:1rem}.stat-value{font-size:1.1rem}.game-meta{flex-direction:column;gap:.2rem}.admin-controls{flex-wrap:wrap}}@media(max-width:480px){.detail-stats{flex-wrap:wrap}.stat{flex:0 0 45%}}.schedule-page{display:flex;width:calc(100% + 4rem);height:calc(100vh - 120px);min-height:500px;margin-left:-2rem;margin-right:-2rem;overflow:hidden}.schedule-main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#f8f9fa;min-width:0}.schedule-sidebar{width:400px;background:#fff;border-left:1px solid #e0e0e0;display:flex;flex-direction:column;overflow-y:auto;box-shadow:-2px 0 8px #00000014;flex-shrink:0}.schedule-toolbar{padding:.625rem 1rem;background:#fff;border-bottom:2px solid #e0e0e0;display:flex;flex-direction:column;gap:.5rem;flex-shrink:0;z-index:5}.toolbar-top-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.toolbar-filter-row{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap}.filter-divider{width:1px;height:20px;background:#e0e0e0;flex-shrink:0}.view-toggle{display:flex;border:1px solid #e0e0e0;border-radius:6px;overflow:hidden;flex-shrink:0}.view-toggle-btn{padding:.3125rem .75rem;font-size:.8125rem;font-weight:600;background:#fff;border:none;cursor:pointer;color:#666;transition:background .15s,color .15s}.view-toggle-btn:first-child{border-right:1px solid #e0e0e0}.view-toggle-btn.active{background:#667eea;color:#fff}.view-toggle-btn:hover:not(.active){background:#f0f4ff;color:#667eea}.calendar-nav{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.nav-btn{width:26px;height:26px;border:1px solid #e0e0e0;border-radius:50%;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;color:#555;transition:background .15s,border-color .15s;flex-shrink:0}.nav-btn:hover{background:#f0f4ff;border-color:#667eea;color:#667eea}.calendar-title{font-size:.9375rem;font-weight:700;color:#333;min-width:140px;text-align:center}.today-btn{padding:.25rem .625rem;font-size:.75rem;font-weight:600;border:1px solid #667eea;border-radius:5px;background:#fff;color:#667eea;cursor:pointer;transition:background .15s,color .15s;flex-shrink:0}.today-btn:hover{background:#667eea;color:#fff}.loading-indicator{font-size:.75rem;color:#888;font-style:italic}.schedule-level-pills{display:flex;gap:.3rem;flex-wrap:wrap;align-items:center}.schedule-level-pills .level-pill{padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:700;cursor:pointer;border:1.5px solid;transition:all .15s;white-space:nowrap;background:#fff}.schedule-level-pills .level-pill.pill-all{border-color:#667eea;color:#667eea}.schedule-level-pills .level-pill.pill-mlb{border-color:#4285f4;color:#4285f4}.schedule-level-pills .level-pill.pill-aaa{border-color:#28a745;color:#28a745}.schedule-level-pills .level-pill.pill-aa{border-color:#fd7e14;color:#fd7e14}.schedule-level-pills .level-pill.pill-higha{border-color:#6f42c1;color:#6f42c1}.schedule-level-pills .level-pill.pill-singlea{border-color:#dc3545;color:#dc3545}.schedule-level-pills .level-pill.active{color:#fff}.schedule-level-pills .level-pill.active.pill-all{background:#667eea}.schedule-level-pills .level-pill.active.pill-mlb{background:#4285f4}.schedule-level-pills .level-pill.active.pill-aaa{background:#28a745}.schedule-level-pills .level-pill.active.pill-aa{background:#fd7e14}.schedule-level-pills .level-pill.active.pill-higha{background:#6f42c1}.schedule-level-pills .level-pill.active.pill-singlea{background:#dc3545}.schedule-level-pills .level-pill:hover:not(.active){opacity:.75}.filter-chip-container{position:relative;flex-shrink:0}.filter-chip-box{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;padding:.25rem .5rem;border:1px solid #e0e0e0;border-radius:6px;background:#fff;min-width:170px;max-width:320px;cursor:text;transition:border-color .15s}.filter-chip-box:focus-within{border-color:#667eea}.filter-chip-box input{border:none;outline:none;font-size:.8125rem;color:#333;background:transparent;min-width:80px;flex:1;padding:.125rem 0}.filter-chip-box input::placeholder{color:#aaa}.filter-chip{display:inline-flex;align-items:center;gap:.25rem;background:var(--chip-color, #667eea);color:#fff;border-radius:10px;padding:.1rem .4rem .1rem .6rem;font-size:.725rem;font-weight:600;white-space:nowrap;flex-shrink:0}.filter-chip-remove{background:#ffffff40;border:none;color:#fff;cursor:pointer;font-size:.875rem;line-height:1;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s}.filter-chip-remove:hover{background:#ffffff73}.filter-chip-dropdown{position:absolute;top:calc(100% + 4px);left:0;width:260px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 16px #0000001f;list-style:none;margin:0;padding:.25rem 0;z-index:100;max-height:240px;overflow-y:auto}.filter-chip-dropdown li{padding:.4375rem .75rem;font-size:.8125rem;cursor:pointer;color:#333;display:flex;align-items:center;gap:.5rem;transition:background .1s}.filter-chip-dropdown li:hover{background:#f0f4ff}.dropdown-tag{font-size:.625rem;font-weight:700;background:#e9ecef;color:#555;border-radius:4px;padding:.1rem .3rem;flex-shrink:0}.toolbar-checkbox-row{display:flex;align-items:center;padding-top:.25rem;border-top:1px dashed #e8e8e8}.home-venue-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.8125rem;color:#444}.home-venue-checkbox input[type=checkbox]{width:15px;height:15px;accent-color:#667eea;cursor:pointer;flex-shrink:0}.checkbox-label-text{font-weight:600;color:#555}.home-venue-names{color:#667eea;font-size:.75rem;font-weight:500;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:400px}.calendar-header-row{display:grid;grid-template-columns:repeat(7,1fr);background:#fff;border-bottom:2px solid #e0e0e0;flex-shrink:0}.calendar-day-header{padding:.4rem .5rem;text-align:center;font-size:.6875rem;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.04em;border-right:1px solid #f0f0f0}.calendar-day-header:last-child{border-right:none}.calendar-scroll-area{flex:1;overflow-y:auto}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);border-left:1px solid #e8e8e8;border-top:1px solid #e8e8e8}.calendar-cell{border-right:1px solid #e8e8e8;border-bottom:1px solid #e8e8e8;padding:.375rem .5rem;min-height:88px;cursor:default;background:#fff;transition:background .1s;position:relative}.calendar-cell.has-games{cursor:pointer}.calendar-cell.has-games:hover{background:#f5f7ff}.calendar-cell.other-month{background:#fafafa}.calendar-cell.other-month .cell-date-number{color:#ccc}.calendar-cell.today{background:#fdfaff}.calendar-cell.today .cell-date-number{background:#667eea;color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.75rem}.calendar-cell.selected{background:#667eea!important}.calendar-cell.selected .cell-date-number{color:#fff;background:#ffffff40;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.75rem}.calendar-cell.selected .cell-game-dots .level-dot{border:1px solid rgba(255,255,255,.4)}.calendar-cell.selected .cell-game-count{color:#ffffffd9}.cell-date-number{font-size:.8125rem;font-weight:600;color:#444;line-height:1;margin-bottom:.3rem}.cell-game-dots{display:flex;flex-wrap:wrap;gap:3px;margin-top:.2rem}.level-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.level-dot.dot-mlb{background:#4285f4}.level-dot.dot-aaa{background:#28a745}.level-dot.dot-aa{background:#fd7e14}.level-dot.dot-higha{background:#6f42c1}.level-dot.dot-singlea{background:#dc3545}.level-dot.dot-other{background:#aaa}.cell-game-count{font-size:.65rem;color:#888;margin-top:.2rem;font-weight:500}.week-scroll-area{flex:1;overflow:hidden;display:flex;flex-direction:column}.week-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:1fr;border-left:1px solid #e8e8e8;border-top:1px solid #e8e8e8;flex:1;min-height:0}.week-cell{border-right:1px solid #e8e8e8;border-bottom:1px solid #e8e8e8;padding:.5rem .375rem;cursor:default;background:#fff;transition:background .1s;display:flex;flex-direction:column;overflow-y:auto;min-height:0}.week-cell.has-games{cursor:pointer}.week-cell.has-games:hover{background:#f5f7ff}.week-cell.today{background:#fdfaff}.week-cell.today .cell-date-number{background:#667eea;color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.75rem}.week-cell.selected{background:#f0f4ff!important;box-shadow:inset 0 0 0 2px #667eea}.week-games-inner{display:flex;flex-direction:column;gap:.25rem;margin-top:.3rem;flex:1;min-height:0}.week-game-row{border-left:3px solid #667eea;border-radius:0 4px 4px 0;padding:.25rem .35rem;font-size:.6875rem;line-height:1.35;color:#333;background:#f0f4ff;flex-shrink:0}.week-game-row.level-mlb{border-left-color:#4285f4;background:#e8f0fe}.week-game-row.level-aaa{border-left-color:#28a745;background:#e8f5ec}.week-game-row.level-aa{border-left-color:#fd7e14;background:#fff3e8}.week-game-row.level-higha{border-left-color:#6f42c1;background:#f0ecfa}.week-game-row.level-singlea{border-left-color:#dc3545;background:#fce8ea}.week-game-time{display:block;font-size:.625rem;font-weight:600;color:#666;margin-bottom:.1rem}.week-game-matchup{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-no-games{color:#ddd;font-size:1rem;text-align:center;margin-top:.5rem}.sidebar-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;text-align:center;color:#aaa}.sidebar-empty-state .empty-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.6}.sidebar-empty-state p{font-size:.875rem;margin:0;line-height:1.5}.sidebar-day-panel{display:flex;flex-direction:column;flex:1;min-height:0}.sidebar-day-header{padding:1.125rem 1rem .875rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex-shrink:0}.sidebar-day-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.sidebar-day-header h2{margin:0 0 .25rem;font-size:1rem;font-weight:700;line-height:1.3}.sidebar-close-btn{background:#fff3;border:none;border-radius:50%;color:#fff;width:26px;height:26px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.sidebar-close-btn:hover{background:#ffffff59}.game-count-text{font-size:.8125rem;opacity:.85}.sidebar-games-list{flex:1;overflow-y:auto;padding:.75rem}.game-card{background:#f8f9fa;border:1px solid #e8e8e8;border-radius:8px;padding:.75rem;margin-bottom:.625rem;transition:box-shadow .15s}.game-card:last-child{margin-bottom:0}.game-card:hover{box-shadow:0 2px 8px #00000014}.game-matchup{font-size:.9375rem;font-weight:700;color:#222;margin-bottom:.3rem;line-height:1.25}.game-venue{font-size:.8rem;color:#666;margin-bottom:.2rem}.game-time{font-size:.8rem;color:#444;margin-bottom:.375rem}.game-meta{display:flex;gap:.375rem;align-items:center;flex-wrap:wrap;margin-top:.375rem}.game-level-badge{display:inline-block;padding:.125rem .5rem;border-radius:10px;font-size:.6875rem;font-weight:700;color:#fff;letter-spacing:.02em}.badge-mlb{background:#4285f4}.badge-aaa{background:#28a745}.badge-aa{background:#fd7e14}.badge-higha{background:#6f42c1}.badge-singlea{background:#dc3545}.badge-other{background:#888}.status-badge{display:inline-block;padding:.125rem .4rem;border-radius:4px;font-size:.65rem;font-weight:700;letter-spacing:.02em}.status-postponed{background:#dc3545;color:#fff}.status-cancelled{background:#6c757d;color:#fff}.status-final{background:#e9ecef;color:#555}.status-suspended{background:#fd7e14;color:#fff}.series-info{font-size:.725rem;color:#999;font-style:italic}.doubleheader-badge{font-size:.65rem;font-weight:700;background:#fff3cd;color:#856404;border:1px solid #ffc107;border-radius:4px;padding:.1rem .35rem}@media(max-width:768px){.schedule-page{flex-direction:column;height:calc(100vh - 120px)}.schedule-main{height:100%;overflow:hidden}.schedule-sidebar{position:fixed;bottom:0;left:0;right:0;width:100%;height:auto;max-height:18vh;border-left:none;border-top:2px solid #e0e0e0;border-top-left-radius:16px;border-top-right-radius:16px;box-shadow:0 -4px 20px #00000026;z-index:100;transition:max-height .35s ease;overflow:hidden}.schedule-sidebar.expanded{max-height:65vh;overflow-y:auto}.calendar-cell{min-height:54px;padding:.25rem}.cell-date-number{font-size:.75rem}.level-dot{width:6px;height:6px}.calendar-title{min-width:110px;font-size:.875rem}.team-search-box{min-width:140px}.schedule-venue-search input{width:120px}}@media(max-width:480px){.calendar-day-header{font-size:.6rem;padding:.3rem .2rem}.calendar-cell{min-height:44px;padding:.2rem}.level-dot{width:5px;height:5px}.schedule-venue-search input{width:90px;font-size:.75rem}}.standings-tab{padding:1.5rem 2rem;max-width:1200px;margin:0 auto}.standings-controls{margin-bottom:1.5rem}.standings-loading,.standings-error,.standings-empty{text-align:center;padding:3rem 1rem;color:#999;font-size:.95rem}.standings-error{color:#e53935}.league-section{margin-bottom:2.5rem}.league-name{font-size:1rem;font-weight:700;color:#333;margin:0 0 1rem;text-transform:uppercase;letter-spacing:.05em}.division-section{margin-bottom:1.5rem}.division-name{font-size:.75rem;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .5rem}.standings-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid #e0e0e0}.standings-table{width:100%;border-collapse:collapse;font-size:.875rem;background:#fff}.standings-table thead tr{background:#f5f5f5;border-bottom:1px solid #e0e0e0}.standings-table th{padding:.6rem .75rem;text-align:right;color:#888;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;-webkit-user-select:none;user-select:none}.standings-table th.sortable{cursor:pointer}.standings-table th.sortable:hover{color:#444}.standings-table th.sortable.active{color:#667eea}.standings-table th.col-team{text-align:left;min-width:160px}.standings-table td{padding:.55rem .75rem;border-bottom:1px solid #f0f0f0;color:#333}.standings-table td.col-team{display:flex;align-items:center;gap:.4rem}.standings-table td.num{text-align:right;font-variant-numeric:tabular-nums}.standings-table tbody tr:last-child td{border-bottom:none}.standings-table tbody tr:hover{background:#fafafa}.leader-dot{width:6px;height:6px;border-radius:50%;background:#667eea;flex-shrink:0}td.diff.pos{color:#2e7d32}td.diff.neg{color:#c62828}td.streak.win{color:#2e7d32}td.streak.loss{color:#c62828}.standings-note{text-align:right;font-size:.75rem;color:#bbb;margin-top:1rem}@media(max-width:768px){.standings-tab{padding:1rem}}.att-race-backdrop{position:fixed;inset:0;z-index:2000;background:#1a1a2e73;display:flex;align-items:center;justify-content:center;padding:1rem;animation:att-race-fade-in .15s ease-out}@keyframes att-race-fade-in{0%{opacity:0}to{opacity:1}}.att-race-modal{background:#fff;border-radius:12px;max-width:1180px;width:100%;max-height:calc(100vh - 2rem);overflow:auto;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column}.att-race-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.25rem .75rem;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff;z-index:1}.att-race-header h2{margin:0 0 .35rem;font-size:1.25rem;font-weight:700;color:#1a1a2e}.att-race-desc{margin:0;font-size:.8rem;line-height:1.5;color:#666;max-width:52rem}.att-race-close{flex-shrink:0;width:2.25rem;height:2.25rem;border:none;border-radius:8px;background:#f2f2f2;color:#555;font-size:1.4rem;line-height:1;cursor:pointer;transition:background .15s,color .15s}.att-race-close:hover{background:#e8e8e8;color:#1a1a2e}.att-race-chart-wrap{padding:.5rem .5rem 0;min-height:540px}.att-race-state{padding:3rem 1.5rem;text-align:center;color:#888;font-size:.9rem}.att-race-error{color:#c62828}.att-race-footer{padding:.65rem 1.25rem 1rem;font-size:.72rem;color:#aaa;text-align:right}.att-race-tooltip{background:#1a1a2e;color:#f0f0f0;padding:.65rem .85rem;border-radius:8px;font-size:.78rem;max-width:240px;box-shadow:0 6px 24px #00000040}.att-race-tooltip-team{font-weight:700;color:#fff;margin-bottom:.35rem}.att-race-tooltip-meta{color:#b8b8d0;margin-bottom:.45rem;font-size:.74rem}.att-race-tooltip-row{display:flex;justify-content:space-between;gap:.75rem;margin-top:.2rem}.att-race-tooltip-row .muted{color:#8c8ca8}.att-race-tooltip-row .num{font-weight:600;font-variant-numeric:tabular-nums}.att-race-tooltip-row.cumulative{margin-top:.4rem;padding-top:.4rem;border-top:1px solid rgba(255,255,255,.12)}@media(max-width:768px){.att-race-header{flex-direction:column-reverse;align-items:stretch}.att-race-close{align-self:flex-end}.att-race-chart-wrap{min-height:420px}}.attendance-tab{padding:1.5rem 2rem;max-width:1100px;margin:0 auto}.att-controls{margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.75rem}.att-control-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.level-pills{display:flex;gap:.4rem;flex-wrap:wrap}.level-pill{padding:.3rem .8rem;border-radius:20px;border:1px solid #d0d0d0;background:#fff;color:#666;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s}.att-header-actions{display:flex;align-items:center;gap:.75rem;margin-left:auto;flex-wrap:wrap}.att-race-btn{padding:.4rem .95rem;border-radius:8px;border:1px solid #667eea;background:#fff;color:#667eea;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.att-race-btn:hover:not(:disabled){background:#667eea;color:#fff}.att-race-btn:disabled{opacity:.45;cursor:not-allowed}.sort-toggle{display:flex;border:1px solid #d0d0d0;border-radius:6px;overflow:hidden}.sort-btn{padding:.35rem .9rem;background:#fff;border:none;color:#666;font-size:.82rem;cursor:pointer;transition:all .15s;white-space:nowrap}.sort-btn:hover{color:#333;background:#f5f5f5}.sort-btn.active{background:#667eea;color:#fff}.att-filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.filter-group{display:flex;align-items:center;gap:.35rem}.filter-label{font-size:.72rem;color:#aaa;text-transform:uppercase;letter-spacing:.06em;margin-right:.15rem}.filter-pill{padding:.25rem .65rem;border-radius:14px;border:1px solid #d0d0d0;background:#fff;color:#666;font-size:.78rem;cursor:pointer;transition:all .15s}.filter-pill:hover{border-color:#667eea;color:#667eea}.filter-pill.active{background:#eef0ff;border-color:#667eea;color:#667eea}.opponent-select{background:#fff;border:1px solid #d0d0d0;border-radius:6px;color:#444;font-size:.8rem;padding:.25rem .5rem;cursor:pointer}.clear-filters{background:transparent;border:1px solid #d0d0d0;border-radius:14px;color:#999;font-size:.78rem;padding:.25rem .65rem;cursor:pointer;transition:all .15s}.clear-filters:hover{color:#e53935;border-color:#e53935}.att-loading,.att-error,.att-empty{text-align:center;padding:3rem 1rem;color:#999}.att-error{color:#e53935}.att-meta{font-size:.78rem;color:#bbb;margin-bottom:1rem}.att-meta strong{color:#666}.att-meta-hint{color:#999}.team-cards{display:flex;flex-direction:column;gap:.5rem}.team-card-block{display:flex;flex-direction:column;gap:0}.team-card{display:flex;align-items:center;gap:1rem;background:#fff;border:1px solid #e8e8e8;border-radius:8px;padding:.75rem 1rem;transition:box-shadow .15s,border-color .15s}.team-card-trigger{width:100%;text-align:left;font:inherit;cursor:pointer;margin:0}.team-card:hover{box-shadow:0 2px 8px #00000012}.team-card.expanded{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-color:#f0f0f0;box-shadow:none}.card-rank{font-size:.95rem;font-weight:700;color:#ccc;width:2.2rem;text-align:right;flex-shrink:0}.card-info{flex:1;min-width:0}.card-header{display:flex;align-items:baseline;gap:.6rem;margin-bottom:.4rem;flex-wrap:wrap}.card-expand-hint{margin-left:auto;font-size:.7rem;color:#bbb;flex-shrink:0}.team-card.expanded .card-expand-hint{color:#667eea}.card-team{font-weight:600;color:#1a1a2e;font-size:.95rem}.card-venue{font-size:.78rem;color:#999}.card-bar-wrap{height:4px;background:#f0f0f0;border-radius:2px;margin-bottom:.5rem;overflow:hidden}.card-bar{height:100%;background:linear-gradient(90deg,#667eea,#9575cd);border-radius:2px;transition:width .4s ease}.card-stats{display:flex;gap:1.25rem;flex-wrap:wrap}.stat-item{display:flex;flex-direction:column;gap:.1rem}.stat-label{font-size:.68rem;color:#aaa;text-transform:uppercase;letter-spacing:.05em}.stat-val{font-size:.88rem;font-weight:600;color:#333;font-variant-numeric:tabular-nums}.pct-stat.pct-hot .stat-val{color:#2e7d32}.pct-stat.pct-warm .stat-val{color:#e65100}.att-chart-panel{background:#fff;border:1px solid #e8e8e8;border-top:none;border-radius:0 0 8px 8px;padding:1rem 1rem .5rem;margin-top:-1px}.team-card-block:has(.team-card.expanded) .att-chart-panel{box-shadow:0 4px 12px #0000000f}.att-chart-label{font-size:.8rem;font-weight:600;color:#444;margin-bottom:.5rem}.att-chart-sublabel{font-weight:400;color:#999;font-size:.72rem}.att-chart-viz{width:100%;min-height:260px}.att-chart-loading,.att-chart-empty,.att-chart-error{font-size:.85rem;color:#888;padding:2rem 1rem;text-align:center}.att-chart-error{color:#e53935}.att-chart-tooltip{background:#1a1a2e;color:#f5f5f5;padding:.65rem .85rem;border-radius:8px;font-size:.78rem;line-height:1.45;max-width:260px;box-shadow:0 4px 20px #0003}.att-chart-tooltip-head{font-weight:600;margin-bottom:.45rem;color:#fff}.att-chart-tooltip-row{display:flex;justify-content:space-between;gap:1rem;margin-top:.2rem}.att-chart-tooltip-muted{color:#9e9eb5}.att-chart-tooltip-num{font-weight:600;font-variant-numeric:tabular-nums;color:#e8e8ff}.att-chart-tooltip-cumulative{margin-top:.35rem;padding-top:.35rem;border-top:1px solid rgba(255,255,255,.12)}.att-chart-tooltip-foot{margin-top:.45rem;font-size:.72rem;color:#8888a8}@media(max-width:768px){.attendance-tab{padding:1rem}.att-control-row{flex-direction:column;align-items:flex-start}.att-header-actions{margin-left:0;width:100%;justify-content:space-between}.card-stats{gap:.75rem}}.my-lists-page{max-width:1100px;margin:0 auto;padding:32px 20px 60px}.my-lists-gate{text-align:center;padding:80px 20px}.my-lists-gate h2{margin:0 0 20px;color:#333}.my-lists-header{display:flex;align-items:center;gap:16px;margin-bottom:28px;flex-wrap:wrap}.my-lists-title{margin:0;font-size:1.65rem;font-weight:800;color:#1a1a2e;flex:1}.my-lists-new-btn{padding:9px 20px;border:none;border-radius:8px;background:#1565c0;color:#fff;font-size:.88rem;font-weight:700;cursor:pointer;transition:background .15s}.my-lists-new-btn:hover{background:#1251a3}.my-lists-create-row{display:flex;gap:8px;align-items:center}.my-lists-create-input{padding:8px 12px;border:1px solid #ccc;border-radius:8px;font-size:.9rem;min-width:200px}.my-lists-create-save{padding:8px 16px;border:none;border-radius:8px;background:#1565c0;color:#fff;font-weight:700;cursor:pointer}.my-lists-create-save:disabled{opacity:.45;cursor:not-allowed}.my-lists-create-cancel{padding:8px 14px;border:1px solid #ddd;border-radius:8px;background:#fff;color:#555;cursor:pointer}.my-lists-muted{color:#888;font-size:.92rem}.my-lists-empty{padding:48px 0;text-align:center;color:#666}.my-lists-layout{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:start}.my-lists-sidebar{display:flex;flex-direction:column;gap:4px;background:#f8f9fa;border-radius:14px;padding:10px}.my-lists-sidebar-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:9px;cursor:pointer;transition:background .13s}.my-lists-sidebar-item:hover{background:#eef0f4}.my-lists-sidebar-item.active{background:#1565c0;color:#fff}.my-lists-sidebar-name{font-size:.88rem;font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-lists-sidebar-count{font-size:.78rem;font-weight:700;background:#00000014;border-radius:20px;padding:2px 8px;flex-shrink:0}.my-lists-sidebar-item.active .my-lists-sidebar-count{background:#ffffff38}.my-lists-rename-row{display:flex;gap:4px;align-items:center;width:100%}.my-lists-rename-input{flex:1;min-width:0;padding:4px 8px;border:1px solid #bbb;border-radius:6px;font-size:.85rem}.my-lists-rename-save,.my-lists-rename-cancel{padding:4px 8px;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:700}.my-lists-rename-save{background:#1565c0;color:#fff}.my-lists-rename-cancel{background:#eee;color:#555}.my-lists-main{min-width:0}.my-lists-panel-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.my-lists-panel-title{margin:0;font-size:1.25rem;font-weight:800;color:#1a1a2e;flex:1}.my-lists-panel-actions{display:flex;gap:8px}.my-lists-action-btn{padding:7px 14px;border:1px solid #ddd;border-radius:8px;background:#fff;color:#444;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .13s}.my-lists-action-btn:hover{background:#f5f5f5}.my-lists-action-danger{color:#c62828;border-color:#e0e0e0}.my-lists-action-danger:hover{background:#fff5f5;border-color:#c62828}.my-lists-players{display:flex;flex-direction:column;gap:0}.my-lists-player-row{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:start;padding:16px 0;border-bottom:1px solid #f0f0f0}.my-lists-player-row:last-child{border-bottom:none}.my-lists-player-info{display:flex;align-items:center;gap:10px;cursor:pointer;flex-shrink:0;width:200px}.my-lists-player-info:hover .my-lists-player-name{color:#1565c0}.my-lists-player-avatar{width:40px;height:40px;border-radius:8px;overflow:hidden;flex-shrink:0}.my-lists-player-avatar img{width:100%;height:100%;object-fit:cover}.my-lists-player-text{display:flex;flex-direction:column;min-width:0}.my-lists-player-name{font-size:.9rem;font-weight:700;color:#1a1a2e;transition:color .13s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.my-lists-player-team{font-size:.78rem;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.my-lists-player-window{margin-top:2px;display:inline-block;font-size:.72rem;font-weight:600;color:#06c;background:#0066cc14;padding:2px 8px;border-radius:999px;width:fit-content;letter-spacing:.01em}.my-lists-note-area{min-width:0}.my-lists-note-add-btn{padding:6px 14px;border:1px dashed #ccc;border-radius:8px;background:none;color:#888;font-size:.82rem;cursor:pointer;transition:border-color .13s,color .13s}.my-lists-note-add-btn:hover{border-color:#1565c0;color:#1565c0}.my-lists-note-preview{cursor:pointer;padding:10px 12px;background:#f8f9fa;border-radius:8px;border:1px solid #eee;transition:border-color .13s;position:relative}.my-lists-note-preview:hover{border-color:#1565c0}.my-lists-note-text{margin:0;font-size:.85rem;color:#333;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}.my-lists-note-edit-hint{font-size:.72rem;color:#aaa;margin-top:4px;display:block}.my-lists-note-editor{display:flex;flex-direction:column;gap:8px}.my-lists-note-textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #1565c0;border-radius:8px;font-size:.88rem;font-family:inherit;line-height:1.5;resize:vertical;background:#fff}.my-lists-note-textarea:focus{outline:none}.my-lists-note-editor-actions{display:flex;align-items:center;gap:8px}.my-lists-note-char{font-size:.73rem;color:#bbb;flex:1}.my-lists-note-cancel{padding:6px 14px;border:1px solid #ddd;border-radius:7px;background:#fff;color:#555;font-size:.82rem;cursor:pointer}.my-lists-note-save{padding:6px 16px;border:none;border-radius:7px;background:#1565c0;color:#fff;font-size:.82rem;font-weight:700;cursor:pointer}.my-lists-note-save:disabled{opacity:.5;cursor:not-allowed}.my-lists-remove-btn{width:30px;height:30px;border:none;border-radius:50%;background:#f5f5f5;color:#bbb;font-size:.8rem;cursor:pointer;transition:background .13s,color .13s;flex-shrink:0;margin-top:4px}.my-lists-remove-btn:hover{background:#fff0f0;color:#c62828}@media(max-width:768px){.my-lists-layout{grid-template-columns:1fr}.my-lists-sidebar{flex-direction:row;flex-wrap:wrap;gap:6px;padding:8px}.my-lists-sidebar-item{padding:8px 12px}.my-lists-player-row{grid-template-columns:1fr auto;grid-template-rows:auto auto}.my-lists-player-info{width:auto}.my-lists-note-area{grid-column:1 / -1}}@media(max-width:480px){.my-lists-page{padding:20px 14px 48px}.my-lists-title{font-size:1.35rem}}.dugout-page{min-height:100vh;background:#f8f9fa}.dugout-header{background:#fff;border-bottom:1px solid #e0e0e0;padding:1.5rem 2rem 0;position:sticky;top:0;z-index:50}.dugout-title{font-size:1.5rem;font-weight:700;color:#1a1a2e;margin:0 0 1rem;letter-spacing:.02em}.dugout-tabs{display:flex;gap:0}.dugout-tab{padding:.6rem 1.4rem;background:transparent;border:none;border-bottom:3px solid transparent;color:#666;font-size:.9rem;font-weight:500;cursor:pointer;transition:color .2s,border-color .2s;white-space:nowrap}.dugout-tab:hover{color:#333}.dugout-tab.active{color:#1a1a2e;border-bottom-color:#667eea;font-weight:600}.dugout-content{flex:1}.dugout-content .schedule-page{padding-top:0}.dugout-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 2rem;text-align:center}.dugout-gate .gate-icon{font-size:3rem;margin-bottom:1rem}.dugout-gate h2{font-size:1.4rem;font-weight:700;color:#1a1a2e;margin:0 0 .75rem}.dugout-gate p{color:#666;max-width:400px;margin:0 0 1.5rem;line-height:1.6}.dugout-gate .btn-primary{background:#667eea;color:#fff;border:none;border-radius:8px;padding:.7rem 1.6rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.dugout-gate .btn-primary:hover{background:#5a6fd6}.league-leaders-page{max-width:1400px;margin:0 auto;padding:2rem 20px 48px}.leaders-page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem}.leaders-page-title{font-size:1.6rem;font-weight:800;color:#1a1a2e;margin:0 0 .2rem}.leaders-page-season{font-size:.85rem;color:#999;margin:0}.back-to-dugout{font-size:.82rem;color:#667eea;text-decoration:none;font-weight:500;margin-top:.4rem;white-space:nowrap}.back-to-dugout:hover{text-decoration:underline}.leaders-page-controls{display:flex;align-items:center;gap:1.25rem;margin-bottom:1rem;flex-wrap:wrap}.leaders-team-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1rem;margin-bottom:1rem}.leaders-team-filter{display:flex;align-items:center;gap:.5rem}.leaders-team-filter-label{font-size:.8rem;font-weight:600;color:#555}.leaders-team-select{min-width:200px;max-width:320px;padding:.45rem .6rem;font-size:.85rem;border:1px solid #ccc;border-radius:6px;background:#fff;color:#1a1a2e}.leaders-team-filter-hint{font-size:.78rem;color:#666}.leaders-secondary-controls{margin-bottom:1rem}.league-leaders-page .stats-variant-row{overflow-x:auto;overflow-y:hidden;padding-bottom:2px;-webkit-overflow-scrolling:touch}.league-leaders-page .stats-variant-row .stats-toggle-group{flex-shrink:0}.col-team-name{text-align:left!important;color:#777;font-size:.82rem;white-space:nowrap;max-width:11rem;overflow:hidden;text-overflow:ellipsis}.col-level-abbrev{font-size:.8rem;font-weight:600;color:#555;white-space:nowrap}.stats-table th.col-team-name .stats-th-sort{justify-content:flex-start;text-align:left}.player-name-link{color:inherit;text-decoration:none}.player-name-link:hover{color:#1565c0;text-decoration:underline}button.player-name-link{background:none;border:none;padding:0;margin:0;font:inherit;cursor:pointer;text-align:left}.league-leaders-page .stats-name-with-actions{display:flex;align-items:center;justify-content:space-between;gap:.35rem;min-width:0}.league-leaders-page .stats-name-block{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.25rem;min-width:0}.leaders-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.25rem;flex-wrap:wrap}.leaders-pagination-range{font-size:.88rem;color:#555}.leaders-page-btn{padding:.45rem 1rem;font-size:.85rem;border:1px solid #c5c9d6;border-radius:8px;background:#f4f5f9;color:#1a1a2e;cursor:pointer}.leaders-page-btn:hover:not(:disabled){background:#667eea;border-color:#5a6fd6;color:#fff}.leaders-page-btn:disabled{background:#f0f0f0;border-color:#e0e0e0;color:#9e9e9e;opacity:1;cursor:not-allowed}.leader-filter-open-btn,.league-leaders-page .stats-age-toggle{padding:8px 12px;border:1px solid #d0d7de;border-radius:8px;background:#fff;color:#555;font-size:13px;font-weight:700;cursor:pointer}.leader-filter-open-btn:hover,.league-leaders-page .stats-age-toggle:hover{border-color:#667eea;color:#667eea}.leader-filter-open-btn.active,.league-leaders-page .stats-age-toggle.active{background:#e3f2fd;border-color:#90caf9;color:#1565c0}.leader-active-filter-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:-.25rem 4px .75rem}.leader-active-filter-chip{padding:.25rem .5rem;border-radius:999px;background:#f1f5ff;color:#274690;font-size:.78rem;font-weight:700}.leader-filter-ignored-note{margin:-.25rem 4px .75rem;padding:.5rem .65rem;border:1px solid #f0d28a;border-radius:8px;background:#fff8e1;color:#7a5700;font-size:.82rem}.leader-filter-modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0c12207a}.leader-filter-modal{width:min(980px,100%);max-height:min(86vh,820px);display:flex;flex-direction:column;border-radius:16px;background:#fff;box-shadow:0 20px 60px #00000038;overflow:hidden}.leader-filter-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.4rem 1rem;border-bottom:1px solid #edf0f5}.leader-filter-modal-header h2{margin:0 0 .25rem;color:#1a1a2e;font-size:1.2rem}.leader-filter-modal-header p{margin:0;color:#666;font-size:.86rem}.leader-filter-close-btn{border:none;background:transparent;color:#777;font-size:1.8rem;line-height:1;cursor:pointer}.leader-filter-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1.4rem;border-bottom:1px solid #edf0f5;color:#666;font-size:.84rem}.leader-filter-modal-actions button,.leader-filter-add-btn,.leader-filter-remove-btn{border:1px solid #d0d7de;border-radius:8px;background:#fff;color:#1a1a2e;font-size:.82rem;font-weight:700;cursor:pointer}.leader-filter-modal-actions button{padding:.4rem .75rem}.leader-filter-modal-actions button:disabled,.leader-filter-add-btn:disabled{opacity:.5;cursor:not-allowed}.leader-filter-modal-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1rem 1.4rem 1.4rem;overflow-y:auto}.leader-filter-group{border:1px solid #edf0f5;border-radius:12px;padding:.85rem;background:#fbfcff}.leader-filter-group-header{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;margin-bottom:.75rem}.leader-filter-group-header h3{margin:0 0 .15rem;font-size:.95rem;color:#1a1a2e}.leader-filter-group-header p,.leader-filter-empty{margin:0;color:#777;font-size:.78rem}.leader-filter-add-btn{flex-shrink:0;padding:.4rem .65rem}.leader-filter-rules{display:flex;flex-direction:column;gap:.65rem}.leader-filter-rule{display:grid;grid-template-columns:minmax(150px,1fr) 76px 92px auto;align-items:end;gap:.5rem}.leader-filter-rule label{display:flex;flex-direction:column;gap:.25rem;min-width:0}.leader-filter-rule span{color:#888;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.leader-filter-rule select,.leader-filter-rule input{width:100%;min-width:0;box-sizing:border-box;padding:.42rem .5rem;border:1px solid #d0d7de;border-radius:7px;background:#fff;color:#1a1a2e;font-size:.82rem}.leader-filter-remove-btn{padding:.42rem .6rem;color:#b42318}.level-pills--disabled{opacity:.55;pointer-events:none}.level-pills{display:flex;gap:.5rem;flex-wrap:wrap}.level-pill{padding:.35rem .9rem;border-radius:20px;border:1px solid #d0d0d0;background:#fff;color:#666;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s}.level-pill:hover{border-color:#667eea;color:#667eea}.level-pill.active{background:#667eea;border-color:#667eea;color:#fff}@media(max-width:768px){.league-leaders-page{padding:1rem 12px 48px}.leaders-page-header{flex-direction:column;gap:.5rem}.leaders-page-controls{gap:.75rem}.leader-filter-modal{max-height:92vh}.leader-filter-modal-body{grid-template-columns:1fr;padding:.9rem}.leader-filter-rule{grid-template-columns:1fr 70px 86px}.leader-filter-remove-btn{grid-column:1 / -1}}.player-list-bar{margin-bottom:1rem;padding:.75rem 1rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px}.player-list-bar.full{background:#f4f6fb;border:1px solid #dce3f0;color:#1a1a2e}.player-list-bar.full .player-list-bar-tier,.player-list-bar.full .player-list-bar-active{color:#555}.player-list-bar.full .player-list-bar-select{background:#fff;color:#1a1a2e;border-color:#ccc}.player-list-bar--guest{font-size:.9rem;opacity:.85}.player-list-bar-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.player-list-bar-label{font-size:.85rem;font-weight:600}.player-list-bar-select{min-width:200px;padding:.35rem .5rem;border-radius:6px;border:1px solid rgba(255,255,255,.15);background:#00000040;color:inherit}.player-list-bar-btn{padding:.35rem .75rem;border-radius:6px;border:none;background:#c94c4c;color:#fff;font-weight:600;cursor:pointer;font-size:.85rem}.player-list-bar-btn:disabled{opacity:.45;cursor:not-allowed}.player-list-bar-btn.secondary{background:#ffffff1f;color:inherit}.player-list-bar-btn.danger{background:#7a2e2e;margin-right:auto}.player-list-bar-tier,.player-list-bar-active{margin:.5rem 0 0;font-size:.8rem;opacity:.9;line-height:1.4}.player-list-bar-error{color:#ff8a8a;font-size:.85rem;margin:.5rem 0 0}.player-list-modal-backdrop{position:fixed;inset:0;background:#0000008c;z-index:10000;display:flex;align-items:center;justify-content:center;padding:1rem}.player-list-modal{background:#1a1f2e;color:#e8eaef;border-radius:10px;padding:1.25rem;max-width:420px;width:100%;box-shadow:0 12px 40px #00000073}.player-list-modal.wide{max-width:520px;max-height:85vh;overflow:auto}.player-list-modal h3,.player-list-modal h4{margin:0 0 .75rem}.player-list-modal label{display:block;font-size:.85rem;margin-bottom:.75rem}.player-list-modal input,.player-list-modal textarea{display:block;width:100%;margin-top:.25rem;padding:.4rem .5rem;border-radius:6px;border:1px solid rgba(255,255,255,.15);background:#0000004d;color:inherit;box-sizing:border-box}.player-list-modal-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;margin-top:1rem}.player-list-search-label{font-size:.85rem;margin-bottom:.5rem}.player-list-search-status{font-size:.8rem;opacity:.85;margin:0 0 .5rem}.player-list-search-results{list-style:none;padding:0;margin:0 0 1rem;max-height:200px;overflow:auto;border:1px solid rgba(255,255,255,.08);border-radius:6px}.player-list-search-results li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .5rem;border-bottom:1px solid rgba(255,255,255,.06)}.player-list-search-results li:last-child{border-bottom:none}.player-list-search-hit{font-size:.85rem;min-width:0}.player-list-search-team{font-weight:400;opacity:.85}.player-list-add-one{flex-shrink:0;padding:.25rem .55rem!important;font-size:.78rem!important}.player-list-remove-hint{font-size:.8rem;opacity:.85;margin:0 0 .5rem}.player-list-id-list{list-style:none;padding:0;margin:0;max-height:280px;overflow:auto}.player-list-id-list li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem 0;border-bottom:1px solid rgba(255,255,255,.06)}.player-list-roster-line{font-size:.85rem;min-width:0;padding-right:.25rem}.player-list-remove-one{font-size:.75rem;padding:.2rem .5rem;border-radius:4px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#ffb4b4;cursor:pointer}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:calc(100vh - 64px);background:#f6f7f9}.admin-sidebar{background:#0f1724;color:#e6edf3;padding:1.5rem .75rem;display:flex;flex-direction:column;gap:.25rem;border-right:1px solid #1c2532}.admin-sidebar-title{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;padding:.5rem .75rem .25rem}.admin-nav-link{display:block;padding:.6rem .75rem;border-radius:6px;color:#cbd5e1;text-decoration:none;font-size:.95rem;font-weight:500;min-height:44px;display:flex;align-items:center}.admin-nav-link:hover{background:#1e293b;color:#fff}.admin-nav-link.active{background:#2563eb;color:#fff}.admin-nav-link.disabled{color:#475569;cursor:not-allowed;pointer-events:none}.admin-content{padding:1.5rem 2rem;max-width:1400px;width:100%}.admin-page-title{font-size:1.6rem;font-weight:700;margin:0 0 1.25rem;color:#0f1724}@media(max-width:768px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{flex-direction:row;overflow-x:auto;padding:.5rem;gap:.25rem}.admin-sidebar-title{display:none}.admin-nav-link{white-space:nowrap}.admin-content{padding:1rem}}.deals-toolbar{display:flex;gap:.75rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.deals-compare-link{background:#2563eb;color:#fff;border:none;border-radius:6px;padding:.5rem .9rem;font-weight:600;font-size:.85rem;cursor:pointer;white-space:nowrap}.deals-compare-link:hover{background:#1d4ed8}.deals-toolbar label{font-size:.85rem;color:#475569}.deals-toolbar input,.deals-toolbar select{padding:.45rem .6rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.9rem}.deals-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:1100px){.deals-grid{grid-template-columns:1fr}}.deals-table-wrap{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000f;overflow:hidden}.deals-table{width:100%;border-collapse:collapse;font-size:.9rem}.deals-table th,.deals-table td{padding:.55rem .75rem;text-align:left;border-bottom:1px solid #eef2f7}.deals-table th{background:#f8fafc;color:#475569;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}.deals-table tbody tr{cursor:pointer}.deals-table tbody tr:hover{background:#f1f5f9}.tier-badge{display:inline-block;min-width:22px;text-align:center;padding:2px 6px;border-radius:10px;font-size:.75rem;font-weight:700;color:#fff}.tier-1{background:#16a34a}.tier-2{background:#65a30d}.tier-3{background:#ca8a04}.tier-4{background:#ea580c}.tier-5{background:#dc2626}.tier-none{background:#94a3b8}.seg-control{display:inline-flex;background:#e2e8f0;border-radius:8px;padding:3px;gap:2px}.seg-btn{background:transparent;border:none;padding:.4rem .85rem;font-size:.85rem;font-weight:600;color:#475569;border-radius:6px;cursor:pointer;min-height:36px}.seg-btn:hover{color:#0f172a}.seg-btn.active{background:#2563eb;color:#fff;box-shadow:0 1px 3px #2563eb59}.level-pill{display:inline-block;padding:2px 8px;border-radius:10px;font-size:.72rem;font-weight:800;letter-spacing:.05em;color:#fff;background:#64748b}.level-mlb{background:#1e40af}.level-aaa{background:#0891b2}.level-aa{background:#0ea5e9}.level-a{background:#38bdf8;color:#0c4a6e}.level-other{background:#94a3b8}.deals-map{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000f;height:600px;overflow:hidden}.deals-planner{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000f;padding:1rem 1.25rem 1.25rem;margin-bottom:1.5rem}.deals-planner-head{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin-bottom:.5rem}.deals-planner-city{display:flex;flex-direction:column;gap:.35rem;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#475569}.deals-planner-city select{padding:.5rem .7rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.95rem;font-weight:500;text-transform:none;letter-spacing:0;min-width:260px;color:#0f172a}.deals-planner-card-btn{margin-left:auto;background:#2563eb;color:#fff;border:none;border-radius:8px;padding:.55rem 1rem;font-size:.9rem;font-weight:700;cursor:pointer;box-shadow:0 1px 3px #2563eb59}.deals-planner-card-btn:hover{background:#1d4ed8}.deals-planner-hint{color:#64748b;font-size:.9rem;margin:.75rem 0 .25rem}.deals-section-title{font-size:.95rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin:0 0 .75rem}.deals-table tbody tr.row-selected{background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.deals-section-toggle{display:flex;align-items:center;gap:.5rem;width:100%;background:none;border:none;border-top:1px solid #e2e8f0;padding:.85rem 0;margin-top:.5rem;font-size:.95rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:#64748b;cursor:pointer}.deals-section-toggle:hover{color:#0f172a}.deals-section-caret{display:inline-block;transition:transform .15s ease;font-size:.8rem}.deals-section-caret.open{transform:rotate(90deg)}.deals-section-toggle-hint{margin-left:auto;font-size:.7rem;font-weight:600;letter-spacing:.02em;text-transform:none;color:#94a3b8}.deals-save-badge{display:inline-block;padding:2px 8px;border-radius:8px;background:#dcfce7;color:#15803d;font-weight:800;font-size:.85rem;white-space:nowrap}.deals-compare{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.deals-compare-head{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap;margin-bottom:.6rem}.deals-compare-title{margin:0;font-size:1rem;font-weight:800;color:#0f172a}.deals-compare-bench{font-size:.85rem;font-weight:700;color:#2563eb}.deals-compare-bench-hint{font-weight:500;color:#94a3b8}.deals-compare-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.deals-compare-row{display:grid;grid-template-columns:1fr 22px auto 76px auto;align-items:center;gap:.6rem;padding:.5rem .75rem;border-radius:8px;background:#f8fafc;font-size:.9rem}.deals-compare-row.is-cheapest{background:#f0fdf4}.deals-compare-row.is-priciest{background:#fef2f2}.deals-compare-row.is-bench{box-shadow:inset 3px 0 #2563eb}.deals-compare-row .wk-date{font-weight:600;color:#0f172a}.deals-compare-row .wk-home{text-align:center}.deals-compare-row .wk-total{font-weight:800;color:#0f172a;text-align:right}.deals-compare-row .wk-delta{text-align:right;font-weight:700;font-size:.82rem;color:#64748b}.deals-compare-row .wk-delta.down{color:#15803d}.deals-compare-row .wk-delta.up{color:#b91c1c}.deals-compare-row .wk-tags{display:flex;gap:4px;justify-content:flex-end}.wk-tag{padding:1px 7px;border-radius:999px;font-size:.68rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.wk-tag.cheap{background:#dcfce7;color:#15803d}.wk-tag.pricey{background:#fee2e2;color:#b91c1c}.deals-planner-card-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.deals-compare-hint{margin:.85rem 0 0;padding:.7rem .9rem;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:#92400e;font-size:.88rem;line-height:1.45}.detail-layout{display:grid;grid-template-columns:320px 1fr;gap:1.25rem}@media(max-width:1000px){.detail-layout{grid-template-columns:1fr}}.detail-controls{background:#fff;padding:1rem;border-radius:8px;box-shadow:0 1px 3px #0000000f;display:flex;flex-direction:column;gap:.75rem}.detail-controls label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:#475569}.detail-controls input,.detail-controls select{padding:.45rem .6rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.9rem}.controls-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.nights-readout{font-size:.8rem;color:#64748b}.weekend-picker-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.weekend-picker-title{font-size:.8rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#0f172a}.weekend-picker-sub{font-size:.72rem;color:#94a3b8}.weekend-picker-empty{font-size:.82rem;color:#64748b;padding:.5rem 0}.weekend-picker-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;max-height:260px;overflow-y:auto}.weekend-row{display:flex;align-items:stretch;gap:4px}.weekend-pick{flex:1;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.45rem .6rem;cursor:pointer;text-align:left}.weekend-pick:hover{background:#eef2f7}.weekend-row.is-trip .weekend-pick{background:#eff6ff;border-color:#2563eb;box-shadow:inset 2px 0 #2563eb}.weekend-row.is-cmp .weekend-pick{background:#fffbeb;border-color:#f59e0b}.weekend-date{font-size:.85rem;font-weight:600;color:#0f172a}.weekend-home{font-size:.8rem}.weekend-price{font-size:.85rem;font-weight:800;text-align:right}.weekend-price.has-total{color:#15803d}.weekend-price.hotel-only{color:#b45309;font-weight:700}.weekend-price.no-data{color:#94a3b8;font-weight:600}.weekend-price-note{font-size:.68rem;font-weight:600;color:#94a3b8}.weekend-vs{flex:0 0 auto;min-width:38px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;font-size:.74rem;font-weight:800;color:#64748b;cursor:pointer}.weekend-vs:hover:not(:disabled){border-color:#f59e0b;color:#b45309}.weekend-vs.active{background:#f59e0b;border-color:#f59e0b;color:#fff}.weekend-vs:disabled{opacity:.35;cursor:not-allowed}.weekend-picker-summary{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem;font-size:.78rem;font-weight:700}.wps-trip{color:#2563eb}.wps-vs{color:#b45309}.cmp-status{margin-top:.4rem;padding:.5rem .65rem;border-radius:6px;font-size:.8rem;line-height:1.35;font-weight:600}.cmp-status.cmp-save{background:#dcfce7;color:#15803d}.cmp-status.cmp-small{background:#fef9c3;color:#854d0e}.cmp-status.cmp-cheaper{background:#e0f2fe;color:#075985}.cmp-status.cmp-unpriced{background:#fee2e2;color:#b91c1c}.controls-caption{font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#94a3b8;border-top:1px solid #eef2f7;padding-top:.6rem}.homestand-chips{display:flex;flex-direction:column;gap:.35rem;max-height:220px;overflow-y:auto;margin-top:.25rem}.homestand-chip{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:.4rem .55rem;font-size:.78rem;color:#0f172a;cursor:pointer;text-align:left;line-height:1.3}.homestand-chip:hover{background:#e2e8f0}.homestand-chip strong{display:block;font-size:.85rem}.capture-btn{background:#2563eb;color:#fff;border:none;border-radius:6px;padding:.7rem 1rem;font-weight:600;cursor:pointer;min-height:44px}.capture-btn:hover{background:#1d4ed8}.capture-btn:disabled{background:#94a3b8;cursor:not-allowed}.card-stage{overflow:auto;background:#e2e8f0;padding:1rem;border-radius:8px;display:flex;justify-content:center}.social-card{position:relative;background:linear-gradient(155deg,#1e2a5a,#2c3e7a 45%,#7a1f1f);color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;padding:56px 56px 48px;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden}.social-card .brand-title{font-size:30px;letter-spacing:.18em;text-transform:uppercase;color:#93c5fd;font-weight:800;margin-bottom:6px}.social-card .city{font-size:84px;line-height:1;font-weight:800;margin:4px 0;letter-spacing:-.02em}.social-card .dates{font-size:24px;color:#cbd5e1}.social-card .airport-row{margin-top:14px;font-size:20px;color:#cbd5e1;line-height:1.2}.social-card .airport-iata{display:inline-block;vertical-align:middle;background:#ffffff24;color:#fff;font-weight:800;letter-spacing:.08em;padding:6px 14px;border-radius:8px;font-size:22px;white-space:nowrap;margin-right:16px}.social-card .airport-name{display:inline-block;vertical-align:middle;font-size:20px;color:#cbd5e1}.social-card .map-section{margin-top:20px;display:flex;gap:16px;flex:1;min-height:380px}.social-card .map-thumb{flex:1;min-width:0;border-radius:16px;overflow:hidden;background:#0a1530;border:1px solid rgba(255,255,255,.08);position:relative}.social-card .arcs-list{width:250px;flex-shrink:0;background:#0b1a3a;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:14px 14px 12px;display:flex;flex-direction:column;gap:4px}.social-card .arcs-list-title{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#93c5fd;font-weight:700;padding-bottom:8px;margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.15);line-height:1.3}.social-card .arc-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06);flex:1 1 auto;min-height:0}.social-card .arc-row:last-child{border-bottom:none}.social-card .arc-rank{width:22px;height:22px;border-radius:50%;background:#1e40af;color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.social-card .arc-cell{flex:1;min-width:0}.social-card .arc-iata{font-size:22px;font-weight:800;color:#fff;letter-spacing:.06em;line-height:1.1}.social-card .arc-city{font-size:14px;color:#cbd5e1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.social-card .arc-price{font-size:22px;font-weight:800;color:#4ade80}.social-card .arc-empty{font-size:13px;color:#cbd5e1;font-style:italic}.social-card .arc-fresh{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 10px 8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;border-top:1px solid rgba(255,255,255,.08);margin-bottom:10px}.social-card .arc-fresh-dot{width:7px;height:7px;border-radius:50%;background:#22d3ee;box-shadow:0 0 6px #22d3eecc;flex-shrink:0}.social-card .arc-fresh+.arc-more{margin-top:0}.social-card .arc-more{margin-top:auto;padding:16px 14px 14px;border-radius:12px;background:linear-gradient(135deg,#22d3ee38,#22d3ee1a);border:1.5px solid rgba(34,211,238,.55);color:#fff;font-size:22px;font-weight:900;text-align:center;letter-spacing:.02em;line-height:1.25;box-shadow:0 0 18px #22d3ee2e}.social-card .arc-more-url{display:inline-block;margin-top:8px;font-size:16px;font-weight:700;color:#a5f3fc;letter-spacing:.04em}.social-card .map-legend{position:absolute;bottom:10px;left:12px;z-index:2;font-size:12px;color:#ffffffa6;letter-spacing:.05em;text-transform:uppercase;background:#00000059;padding:4px 8px;border-radius:4px}.social-card .total-block{margin-top:20px;display:flex;flex-direction:column;background:linear-gradient(135deg,#22c55e33,#22d3ee1f);border:1.5px solid rgba(74,222,128,.55);border-radius:16px;padding:18px 24px 16px;box-shadow:0 0 24px #4ade8026}.social-card .total-block .total-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.social-card .total-block .total-label{font-size:14px;color:#bbf7d0;text-transform:uppercase;letter-spacing:.1em}.social-card .total-block .total-value{font-size:78px;font-weight:800;line-height:1;color:#4ade80;margin-top:4px;letter-spacing:-.02em}.social-card .total-block .ingredients{display:flex;align-items:center;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14);color:#e2e8f0;font-size:16px}.social-card .total-block .ingredient{display:inline-flex;align-items:center;gap:6px}.social-card .total-block .ingredient svg{color:#67e8f9;flex-shrink:0}.social-card .total-block .ingredient-value{font-weight:800;color:#fff}.social-card .total-block .ingredient-label{color:#94a3b8;font-size:13px;letter-spacing:.02em}.social-card .total-block .ingredient-sep{color:#475569;font-weight:700}.social-card .savings{text-align:center;line-height:1.1;padding:8px 16px 10px;border-radius:12px;background:linear-gradient(135deg,#f59e0b,#fbbf24);border:2px solid #fcd34d;box-shadow:0 4px 14px #f59e0b73,0 0 0 4px #fbbf242e;flex-shrink:0}.social-card .savings-amount{font-size:34px;font-weight:900;color:#1f1300;letter-spacing:.01em;text-shadow:0 1px 0 rgba(255,255,255,.35);line-height:1}.social-card .savings-vs{font-size:11px;color:#422006;font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-top:5px}.social-card .badge{background:#16a34a;color:#fff;font-size:16px;font-weight:700;padding:4px 12px;border-radius:999px;text-transform:uppercase;letter-spacing:.08em;display:inline-block;margin-left:8px}.social-card .footer{margin-top:18px;display:flex;justify-content:space-between;align-items:center}.social-card .wordmark img{height:102px;width:auto;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4))}.social-card .game-tag{font-size:16px;color:#cbd5e1;text-align:right;display:flex;align-items:center;gap:14px}.social-card .game-tag .matchup-text{line-height:1.25}.social-card .game-tag .matchup-text strong{color:#fff;font-size:18px;display:block}.social-card .game-tag .matchup-text .meta{opacity:.75;font-size:13px;margin-top:2px}.social-card .game-tag .team-logo{width:72px;height:72px;border-radius:14px;background:#fff;padding:8px;box-sizing:border-box}.compare-warn{font-size:.8rem;color:#b91c1c;font-weight:600}.social-card .compare-brand{white-space:nowrap;letter-spacing:.12em;font-size:26px}.social-card .compare-headline{font-size:64px;line-height:1;font-weight:800;margin:6px 0;letter-spacing:-.02em}.social-card .compare-map{position:relative;margin-top:18px;width:100%;height:420px;border-radius:16px;overflow:hidden;background:#0a1530;border:1px solid rgba(255,255,255,.08)}.compare-pin{display:flex;flex-direction:column;align-items:center;gap:2px}.compare-pin-label{margin-top:2px;font-size:15px;font-weight:800;letter-spacing:.02em;color:#fff;background:#0f172ac7;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:2px 8px;white-space:nowrap}.compare-pin-label.is-winner{color:#052e16;background:#4ade80;border-color:#bbf7d0}.social-card .compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px;flex:1;min-height:0}.social-card .compare-col{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:18px 14px 16px;border-radius:16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1)}.social-card .compare-col.is-winner{background:linear-gradient(135deg,#22c55e38,#22d3ee1f);border:1.5px solid rgba(74,222,128,.65);box-shadow:0 0 24px #4ade802e}.social-card .compare-rank{width:30px;height:30px;border-radius:50%;background:#ffffff1f;color:#cbd5e1;font-size:15px;font-weight:800;display:flex;align-items:center;justify-content:center}.social-card .compare-badge{background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#1f1300;font-size:14px;font-weight:900;letter-spacing:.08em;padding:5px 14px;border-radius:999px;text-transform:uppercase;box-shadow:0 4px 14px #f59e0b73}.social-card .compare-city{font-size:30px;font-weight:800;line-height:1.05;letter-spacing:-.01em;margin-top:6px}.social-card .compare-iata{font-size:15px;font-weight:700;letter-spacing:.1em;color:#93c5fd}.social-card .compare-total{font-size:56px;font-weight:800;line-height:1;letter-spacing:-.02em;color:#4ade80;margin-top:8px}.social-card .compare-breakdown{font-size:15px;color:#94a3b8;margin-top:4px}.social-card .compare-savings{margin-top:8px;font-size:16px;font-weight:800;color:#fbbf24;letter-spacing:.01em}.social-card .compare-matchup{margin-top:auto;padding-top:8px;font-size:14px;color:#cbd5e1;line-height:1.2}.social-card .compare-cta{text-align:right;font-size:30px;font-weight:900;color:#a5f3fc;line-height:1.25}.social-card .compare-cta-url{font-size:22px;font-weight:700;color:#67e8f9;letter-spacing:.03em}.rt-card{position:relative;width:1080px;height:1350px;background:linear-gradient(155deg,#1e2a5a,#2c3e7a 45%,#7a1f1f);color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;padding:56px 56px 48px;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden}.rt-card .rt-brand-title{font-size:30px;letter-spacing:.18em;text-transform:uppercase;color:#93c5fd;font-weight:800;margin-bottom:6px}.rt-card .rt-headline{font-size:72px;line-height:1;font-weight:800;margin:4px 0;letter-spacing:-.02em}.rt-card .rt-dates{font-size:24px;color:#cbd5e1;margin-top:8px}.rt-card .rt-fly-row{margin-top:14px;font-size:20px;color:#cbd5e1;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rt-card .rt-iata-pill{display:inline-block;vertical-align:middle;background:#ffffff24;color:#fff;font-weight:800;letter-spacing:.08em;padding:6px 14px;border-radius:8px;font-size:22px;white-space:nowrap}.rt-card .rt-fly-origin{color:#94a3b8;font-size:18px;margin-left:6px}.rt-card .rt-map-section{margin-top:20px;display:flex;gap:16px;flex:1;min-height:480px}.rt-card .rt-map-thumb{flex:1;min-width:0;border-radius:16px;overflow:hidden;background:#0a1530;border:1px solid rgba(255,255,255,.08);position:relative}.rt-card .rt-pin{filter:drop-shadow(0 0 8px rgba(34,211,238,.75)) drop-shadow(0 3px 6px rgba(0,0,0,.5));pointer-events:none}.rt-card .rt-itinerary-rail{width:320px;flex-shrink:0;background:#0b1a3a;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px 18px 14px;display:flex;flex-direction:column}.rt-card .rt-itin-title{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#93c5fd;font-weight:700;padding-bottom:10px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.15)}.rt-card .rt-itin-row{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06);flex:1 1 auto;min-height:0}.rt-card .rt-itin-row:last-child{border-bottom:none}.rt-card .rt-itin-num{width:28px;height:28px;border-radius:50%;background:#1e40af;color:#fff;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.rt-card .rt-itin-cell{flex:1;min-width:0}.rt-card .rt-itin-date{font-size:12px;font-weight:700;color:#93c5fd;letter-spacing:.08em}.rt-card .rt-itin-matchup{font-size:19px;font-weight:800;color:#fff;margin-top:3px;line-height:1.2}.rt-card .rt-itin-venue{font-size:13px;color:#cbd5e1;margin-top:3px}.rt-card .rt-itin-travel{margin-top:8px;font-size:12px;letter-spacing:.04em;color:#94a3b8;background:#00000059;border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:4px 10px;display:inline-block}.rt-card .rt-itin-travel.drive{color:#67e8f9;border-color:#22d3ee66}.rt-card .rt-itin-travel.fly{color:#93c5fd;border-color:#60a5fa66}.rt-card .rt-total-block{margin-top:20px;display:flex;flex-direction:column;background:linear-gradient(135deg,#22c55e33,#22d3ee1f);border:1.5px solid rgba(74,222,128,.55);border-radius:16px;padding:18px 24px 16px;box-shadow:0 0 24px #4ade8026}.rt-card .rt-total-label{font-size:14px;color:#bbf7d0;text-transform:uppercase;letter-spacing:.1em}.rt-card .rt-total-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.rt-card .rt-total-value{font-size:78px;font-weight:800;line-height:1;color:#4ade80;margin-top:4px;letter-spacing:-.02em}.rt-card .rt-per-game{font-size:32px;font-weight:800;color:#4ade80;letter-spacing:-.01em}.rt-card .rt-per-game-label{font-size:18px;font-weight:600;color:#bbf7d0;margin-left:4px}.rt-card .rt-ingredients{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14);color:#e2e8f0;font-size:16px}.rt-card .rt-ingredient{display:inline-flex;align-items:baseline;gap:6px}.rt-card .rt-ingredient-value{font-weight:800;color:#fff;font-size:18px}.rt-card .rt-ingredient-label{color:#94a3b8;font-size:14px;letter-spacing:.02em}.rt-card .rt-ingredient-sep{color:#475569;font-weight:700}.rt-card .rt-footer{margin-top:18px;display:flex;justify-content:space-between;align-items:center}.rt-card .rt-wordmark img{height:102px;width:auto;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4))}.rt-card .rt-headline-game{display:flex;align-items:center;gap:14px;font-size:16px;color:#cbd5e1;text-align:right}.rt-card .rt-headline-text{line-height:1.25}.rt-card .rt-headline-text strong{color:#fff;font-size:18px;display:block}.rt-card .rt-headline-meta{opacity:.75;font-size:13px;margin-top:2px}.rt-card .rt-headline-logo{width:72px;height:72px;border-radius:14px;background:#fff;padding:8px;box-sizing:border-box}.rt-card-stage{background:#e2e8f0;padding:16px;border-radius:8px;margin-top:16px;overflow:hidden;display:flex;justify-content:center}.rt-card-shrink{width:1080px;height:1350px;transform:scale(.5);transform-origin:top left;margin-right:-540px;margin-bottom:-675px}.rt-export-btn{background:#2563eb;color:#fff;border:none;border-radius:6px;padding:.7rem 1rem;font-weight:600;cursor:pointer;min-height:44px;margin-top:12px;width:100%}.rt-export-btn:hover{background:#1d4ed8}.rt-export-btn:disabled{background:#94a3b8;cursor:not-allowed}.rtb-layout{display:grid;grid-template-columns:380px 1fr;gap:1.25rem;align-items:start}@media(max-width:1100px){.rtb-layout{grid-template-columns:1fr}}.rtb-picker,.rtb-working{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000f;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.rtb-section-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#475569;font-weight:700;margin-top:.5rem}.rtb-section-hint{font-weight:500;color:#94a3b8;text-transform:none;letter-spacing:0}.rtb-results-title{display:flex;justify-content:space-between;align-items:baseline}.rtb-spinner{font-size:.75rem;color:#94a3b8;font-weight:500;text-transform:none;letter-spacing:0}.rtb-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;font-size:.8rem;padding:.5rem .6rem;border-radius:6px}.rtb-row-2{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.rtb-picker label,.rtb-working label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:#475569}.rtb-picker input[type=date],.rtb-picker input[type=number],.rtb-picker input[type=text],.rtb-picker select,.rtb-working input[type=text],.rtb-working select{padding:.4rem .55rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.9rem;font-family:inherit}.rtb-chip-row{display:flex;flex-wrap:wrap;gap:.35rem}.rtb-chip{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:999px;padding:.25rem .7rem;font-size:.78rem;font-weight:600;color:#0f172a;cursor:pointer;-webkit-user-select:none;user-select:none}.rtb-chip:hover{background:#e2e8f0}.rtb-chip.active{background:#1e40af;color:#fff;border-color:#1e40af}.rtb-inline-check,.rtb-inline-label{flex-direction:row;align-items:center;gap:.5rem;font-size:.85rem;color:#0f172a}.rtb-game-list{display:flex;flex-direction:column;gap:.4rem;max-height:560px;overflow-y:auto;padding-right:.25rem}.rtb-game-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.55rem .65rem;display:flex;flex-direction:column;gap:.2rem;font-size:.85rem}.rtb-game-row.added{background:#ecfeff;border-color:#67e8f9}.rtb-game-row-head{display:flex;align-items:center;gap:.45rem;font-size:.72rem;color:#475569;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.rtb-game-date{color:#0f172a}.rtb-game-level{background:#e2e8f0;border-radius:4px;padding:.05rem .35rem;font-size:.65rem}.rtb-flag{font-size:.95rem;line-height:1}.rtb-game-matchup{font-size:.95rem;font-weight:700;color:#0f172a;line-height:1.2}.rtb-game-venue{font-size:.78rem;color:#64748b}.rtb-game-metrics{display:flex;flex-wrap:wrap;gap:.65rem;font-size:.78rem;color:#334155;margin-top:.15rem}.rtb-metric{display:inline-flex;align-items:baseline;gap:.25rem}.rtb-delta.cheap{color:#15803d;font-weight:700}.rtb-delta.expensive{color:#b91c1c;font-weight:700}.rtb-alt-airports{color:#64748b;font-style:italic}.rtb-add-btn{align-self:flex-start;margin-top:.3rem;background:transparent;border:1px solid #22d3ee;color:#0e7490;font-size:.78rem;font-weight:600;border-radius:6px;padding:.3rem .7rem;cursor:pointer}.rtb-add-btn:hover{background:#ecfeff}.rtb-add-btn.added{background:#22d3ee;color:#083344;border-color:#22d3ee}.rtb-empty{font-size:.85rem;color:#94a3b8;font-style:italic;padding:.5rem}.rtb-empty-large{padding:2rem;text-align:center;border:1.5px dashed #cbd5e1;border-radius:8px;background:#f8fafc;margin-top:.5rem}.rtb-working-head{display:flex;justify-content:space-between;align-items:baseline}.rtb-clear-btn{background:transparent;border:none;color:#64748b;font-size:.78rem;cursor:pointer;text-decoration:underline}.rtb-clear-btn:hover{color:#0f172a}.rtb-selected-strip{display:flex;flex-direction:column;gap:.25rem}.rtb-leg-card{display:grid;grid-template-columns:auto 1fr auto;gap:.65rem;align-items:start;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.65rem .75rem}.rtb-leg-num{width:26px;height:26px;border-radius:50%;background:#1e40af;color:#fff;font-size:.85rem;font-weight:800;display:flex;align-items:center;justify-content:center}.rtb-leg-body{font-size:.85rem}.rtb-leg-date{font-size:.72rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.06em}.rtb-leg-matchup{font-size:1rem;font-weight:700;color:#0f172a;margin-top:.1rem}.rtb-leg-venue{font-size:.8rem;color:#64748b;margin-top:.1rem}.rtb-leg-hotel{font-size:.8rem;color:#334155;margin-top:.25rem}.rtb-remove-btn{background:transparent;border:none;color:#94a3b8;font-size:1.2rem;cursor:pointer;padding:0;line-height:1;width:22px;height:22px}.rtb-remove-btn:hover{color:#b91c1c}.rtb-leg-travel{padding:.35rem .5rem .35rem 38px;font-size:.78rem;color:#475569;border-left:2px dashed #94a3b8;margin-left:12px}.rtb-leg-travel.drive{border-left-color:#22d3ee}.rtb-leg-travel.fly{border-left-color:#1e40af}.rtb-leg-warn{color:#b45309;font-weight:600;margin-left:.4rem}.rtb-headline-input{width:100%;font-size:1rem;font-weight:600}.rtb-totals{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem .85rem;display:flex;flex-direction:column;gap:.35rem;margin-top:.5rem}.rtb-total-row{display:flex;justify-content:space-between;font-size:.88rem;color:#334155}.rtb-total-row.muted{color:#94a3b8}.rtb-total-row.total{border-top:1px solid #cbd5e1;padding-top:.4rem;margin-top:.2rem;font-size:1.1rem;font-weight:800;color:#0f172a}.rtb-per-game{text-align:right;font-size:.85rem;color:#15803d;font-weight:700}.rtb-warnings{margin-top:.4rem;padding-top:.4rem;border-top:1px dashed #fcd34d;font-size:.78rem;color:#92400e;display:flex;flex-direction:column;gap:.2rem}.rtb-card-placeholder{margin-top:1rem;padding:3rem 1rem;border:1.5px dashed #cbd5e1;border-radius:8px;text-align:center;color:#94a3b8;font-size:.85rem;font-style:italic}.puzzle-queue-admin{padding:1.5rem;max-width:1100px}.pq-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.25rem}.pq-hint{color:#64748b;font-size:.85rem;margin:0 0 1.25rem;max-width:720px}.pq-section{margin-top:1.5rem}.pq-section-title{font-size:1rem;color:#0f1724;margin:0 0 .5rem;letter-spacing:.02em}.pq-empty{color:#94a3b8;font-size:.9rem;background:#fff;border:1px dashed #e2e8f0;border-radius:8px;padding:1rem 1.25rem}.pq-btn{background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#0f1724;font-size:.85rem;padding:.45rem .85rem;cursor:pointer;font-weight:500;min-height:36px}.pq-btn:hover:not(:disabled){background:#f1f5f9}.pq-btn:disabled{opacity:.5;cursor:not-allowed}.pq-btn-primary{background:#1e40af;border-color:#1e40af;color:#fff}.pq-btn-primary:hover:not(:disabled){background:#1d4ed8}.pq-btn-accent{background:#f59e0b;border-color:#d97706;color:#1f2937}.pq-btn-accent:hover:not(:disabled){background:#fbbf24}.pq-btn-danger{border-color:#fca5a5;color:#b91c1c}.pq-btn-danger:hover:not(:disabled){background:#fef2f2}.pq-btn-sm{padding:.35rem .7rem;font-size:.8rem;min-height:32px}.pq-form{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem 1.25rem 1rem;margin:.5rem 0 1.5rem;box-shadow:0 1px 3px #0000000a}.pq-form-title{margin:0 0 1rem;font-size:1rem;color:#0f1724}.pq-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1rem}.pq-field{display:flex;flex-direction:column;gap:.25rem}.pq-field>span{font-size:.78rem;color:#64748b;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.pq-field input,.pq-field textarea{background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;padding:.5rem .65rem;font-size:.9rem;color:#0f1724;font-family:inherit}.pq-field input:focus,.pq-field textarea:focus{outline:none;border-color:#1e40af;background:#fff}.pq-field-block{margin-bottom:1rem}.pq-team-picker-label{margin-bottom:.5rem}.pq-level-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.pq-level-chip{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:999px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;letter-spacing:.04em;color:#475569;cursor:pointer}.pq-level-chip:hover{background:#e2e8f0}.pq-level-chip.active{background:#1e40af;border-color:#1e40af;color:#fff}.pq-team-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.85rem}.pq-team-group{display:flex;flex-direction:column;gap:.35rem}.pq-team-group-title{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#475569;margin-bottom:.25rem;padding-bottom:.25rem;border-bottom:1px solid #e2e8f0}.pq-team-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#0f1724;cursor:pointer;padding:.25rem 0}.pq-team-checkbox input{accent-color:#1e40af;width:16px;height:16px}.pq-form-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.pq-list{display:flex;flex-direction:column;gap:.5rem}.pq-row{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 2px #00000008;overflow:hidden}.pq-row-today{border-color:#1e40af;box-shadow:0 0 0 1px #1e40af inset,0 1px 3px #1e40af1f}.pq-row-main{display:grid;grid-template-columns:130px 1fr auto auto;gap:1rem;align-items:center;padding:.85rem 1rem}.pq-row-date{font-size:.9rem;font-weight:600;color:#0f1724;display:flex;flex-direction:column;gap:.25rem}.pq-today-pill{align-self:flex-start;background:#1e40af;color:#fff;font-size:.65rem;letter-spacing:.08em;padding:.1rem .4rem;border-radius:4px;font-weight:700}.pq-row-content{display:flex;flex-direction:column;gap:.3rem;min-width:0}.pq-row-theme{font-size:.95rem;font-weight:600;color:#0f1724}.pq-row-desc{font-size:.8rem;color:#64748b;line-height:1.3}.pq-row-teams{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.15rem}.pq-team-tag{background:#f1f5f9;color:#334155;border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:600;letter-spacing:.04em}.pq-row-status{display:flex;flex-direction:column;gap:.25rem;align-items:flex-end;min-width:110px}.pq-status{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.15rem .5rem;border-radius:999px}.pq-status-queued{background:#e2e8f0;color:#475569}.pq-status-solving{background:#fef3c7;color:#92400e}.pq-status-ready{background:#d1fae5;color:#047857}.pq-status-failed{background:#fee2e2;color:#991b1b}.pq-ai-score{font-size:.75rem;color:#475569;font-weight:500}.pq-row-actions{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}.pq-row-expanded{border-top:1px solid #e2e8f0;background:#f8fafc;padding:1rem}.pq-details{display:flex;flex-direction:column;gap:.75rem}.pq-details-block{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.6rem .8rem}.pq-details-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-bottom:.4rem}.pq-details pre{margin:0;font-family:SF Mono,Menlo,Consolas,monospace;font-size:.75rem;color:#0f1724;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;padding:.5rem .7rem;overflow:auto;max-height:360px;white-space:pre-wrap;word-break:break-word}.pq-details-empty{color:#94a3b8;font-size:.85rem}.pq-meta-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.5rem;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.6rem .8rem}.pq-meta-strip>div{display:flex;flex-direction:column;gap:.1rem}.pq-meta-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:600}.pq-meta-strip strong{font-size:.95rem;color:#0f1724}.pq-commentary{background:#fff;border:1px solid #e2e8f0;border-left:3px solid #1e40af;border-radius:6px;padding:.6rem .8rem}.pq-commentary p{margin:.25rem 0 0;font-size:.85rem;color:#0f1724;font-style:italic}.pq-route-block{background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.pq-route-title{display:flex;align-items:center;gap:.5rem;padding:.5rem .8rem;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#0f1724}.pq-route-model{font-weight:600;font-size:.65rem;color:#64748b;background:#e2e8f0;border-radius:999px;padding:.1rem .5rem;text-transform:none;letter-spacing:0}.pq-route-summary{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.78rem;color:#475569;padding:.45rem .8rem;border-bottom:1px solid #f1f5f9}.pq-route-summary strong{color:#1e40af}.pq-route-table{width:100%;border-collapse:collapse;font-size:.8rem}.pq-route-table th,.pq-route-table td{padding:.45rem .55rem;text-align:left;border-bottom:1px solid #f1f5f9;vertical-align:top}.pq-route-table th{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-weight:700;background:#fafafa}.pq-route-table tr:last-child td{border-bottom:none}.pq-route-table .pq-right{text-align:right}.pq-route-team{display:flex;align-items:center;gap:.35rem;font-weight:600;color:#0f1724}.pq-route-team-abbr{background:#e0e7ff;color:#1e3a8a;font-size:.6rem;font-weight:700;padding:.05rem .35rem;border-radius:4px}.pq-route-venue{font-size:.7rem;color:#64748b;margin-top:1px}.pq-route-date{font-weight:600}.pq-route-time{font-size:.7rem;color:#64748b}.pq-mode-pill{font-size:.7rem;font-weight:700;padding:.15rem .55rem;border-radius:999px;white-space:nowrap}.pq-mode-start{background:#e2e8f0;color:#475569}.pq-mode-drive{background:#dbeafe;color:#1e3a8a}.pq-mode-fly{background:#fef3c7;color:#92400e}.pq-raw-block{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.4rem .6rem}.pq-raw-block summary{cursor:pointer;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;padding:.15rem 0}.pq-raw-block pre{margin:.4rem 0 0;font-family:SF Mono,Menlo,Consolas,monospace;font-size:.72rem;color:#0f1724;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;padding:.5rem .7rem;overflow:auto;max-height:320px;white-space:pre-wrap;word-break:break-word}@media(max-width:768px){.pq-row-main{grid-template-columns:1fr;gap:.6rem}.pq-row-status,.pq-row-actions{justify-content:flex-start;align-items:flex-start}}.mkt-page{display:flex;flex-direction:column;gap:1.25rem}.mkt-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:1.25rem}.mkt-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem 1.25rem 1.5rem;box-shadow:0 1px 2px #0f17240a}.mkt-card-title{font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#475569;margin:0 0 1rem}.mkt-field{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.mkt-field>span{font-size:.85rem;font-weight:600;color:#334155}.mkt-field input[type=text],.mkt-field input[type=email],.mkt-test input[type=email]{width:100%;padding:.6rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.95rem;min-height:44px;box-sizing:border-box}.mkt-tier-list{display:flex;flex-direction:column;gap:.4rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.6rem .75rem}.mkt-tier-row,.mkt-verified-row{display:flex;align-items:center;gap:.6rem;padding:.35rem 0;min-height:36px;cursor:pointer}.mkt-tier-row input,.mkt-verified-row input{width:18px;height:18px;cursor:pointer}.mkt-tier-label{display:flex;flex-direction:column;line-height:1.2;flex:1}.mkt-tier-label strong{color:#0f1724;font-size:.95rem}.mkt-tier-sub{font-size:.75rem;color:#64748b}.mkt-tier-count{font-size:.85rem;color:#475569;font-variant-numeric:tabular-nums}.mkt-verified-row{border-top:1px dashed #cbd5e1;margin-top:.25rem;padding-top:.5rem;font-size:.9rem;color:#334155}.mkt-reach{margin-top:.5rem;font-size:.9rem;color:#1e293b}.mkt-reach strong{color:#2563eb;font-size:1.05rem}.mkt-editor-wrap{border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;background:#fff}.mkt-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;padding:.4rem .5rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}.mkt-tb-btn{border:1px solid transparent;background:transparent;color:#334155;border-radius:5px;padding:.3rem .55rem;font-size:.85rem;cursor:pointer;min-width:32px;min-height:32px}.mkt-tb-btn:hover{background:#e2e8f0}.mkt-tb-btn.active{background:#2563eb;color:#fff}.mkt-tb-sep{width:1px;height:22px;background:#cbd5e1;margin:0 .3rem}.mkt-editor{min-height:320px;max-height:600px;overflow-y:auto;padding:.75rem 1rem;font-size:.95rem;line-height:1.55;color:#0f1724}.mkt-editor .ProseMirror{outline:none;min-height:280px}.mkt-editor .ProseMirror p{margin:0 0 .7em}.mkt-editor .ProseMirror h1{font-size:1.6rem;margin:.5em 0 .4em}.mkt-editor .ProseMirror h2{font-size:1.25rem;margin:.5em 0 .4em}.mkt-editor .ProseMirror img{max-width:100%;height:auto;border-radius:6px}.mkt-editor .ProseMirror a{color:#2563eb;text-decoration:underline}.mkt-editor .ProseMirror blockquote{border-left:3px solid #cbd5e1;margin:.5em 0;padding:.2em .9em;color:#475569}.mkt-hint{font-size:.8rem;color:#64748b;margin:.4rem 0 0}.mkt-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;flex-wrap:wrap}.mkt-test{display:flex;align-items:center;gap:.5rem;flex:1;min-width:280px}.mkt-test input{flex:1}.mkt-btn{border:0;border-radius:6px;padding:.7rem 1.2rem;font-weight:600;font-size:.95rem;cursor:pointer;min-height:44px}.mkt-btn:disabled{opacity:.55;cursor:not-allowed}.mkt-btn-primary{background:#2563eb;color:#fff}.mkt-btn-primary:hover:not(:disabled){background:#1d4ed8}.mkt-btn-secondary{background:#e2e8f0;color:#1e293b}.mkt-btn-secondary:hover:not(:disabled){background:#cbd5e1}.mkt-progress{margin-top:1rem;padding:.85rem 1rem;border:1px solid #cbd5e1;border-radius:8px;background:#f8fafc}.mkt-progress-head{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:#0f1724;margin-bottom:.5rem}.mkt-progress-pct{font-variant-numeric:tabular-nums;color:#64748b}.mkt-progress-bar{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.mkt-progress-fill{height:100%;background:linear-gradient(90deg,#2563eb,#3b82f6);transition:width .4s ease}.mkt-progress-failed{margin-top:.5rem;font-size:.82rem;color:#b91c1c}.mkt-banner{margin-top:1rem;padding:.6rem .9rem;border-radius:6px;font-size:.9rem}.mkt-banner-ok{background:#ecfdf5;border:1px solid #6ee7b7;color:#047857}.mkt-banner-err{background:#fef2f2;border:1px solid #fca5a5;color:#b91c1c}.mkt-hint-inline{font-size:.75rem;font-weight:400;text-transform:none;letter-spacing:0;color:#94a3b8;margin-left:.4rem}.mkt-header-grid{display:block}.mkt-header-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem;align-items:start}.mkt-header-fields>.mkt-toggle-row{grid-column:1 / -1}.mkt-header-fields>button{grid-column:1 / -1;justify-self:start}.mkt-toggle-row{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#334155}.mkt-toggle-row input{width:18px;height:18px}.mkt-logo-row{display:flex;align-items:center;gap:.85rem;padding:.6rem;background:#0f1724;border-radius:8px;min-height:72px}.mkt-logo-thumb{max-height:56px;max-width:220px;object-fit:contain;background:transparent}.mkt-logo-empty{color:#94a3b8;font-size:.85rem;border:1px dashed #475569;padding:.5rem .8rem;border-radius:6px}.mkt-logo-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.mkt-color-row{display:flex;align-items:center;gap:.5rem}.mkt-color-row input[type=color]{width:44px;height:44px;border:1px solid #cbd5e1;border-radius:6px;padding:2px;background:#fff;cursor:pointer}@media(max-width:700px){.mkt-header-fields{grid-template-columns:1fr}}.mkt-preview-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:.75rem}.mkt-btn-sm{padding:.4rem .75rem;font-size:.85rem;min-height:36px}.mkt-preview-frame{width:100%;min-height:520px;border:1px solid #e2e8f0;border-radius:8px;background:#f4f6fa}.mkt-preview-box{border:1px solid #e2e8f0;border-radius:8px;padding:1rem;min-height:320px;background:#f8fafc;font-size:.95rem;line-height:1.55;color:#0f1724;word-wrap:break-word}.mkt-preview-box img{max-width:100%;height:auto;border-radius:6px}.mkt-preview-box a{color:#2563eb}.mkt-history-table{width:100%;border-collapse:collapse;font-size:.9rem}.mkt-history-table th,.mkt-history-table td{text-align:left;padding:.55rem .6rem;border-bottom:1px solid #e5e7eb}.mkt-history-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#64748b;background:#f8fafc}.mkt-subj{font-weight:500;color:#0f1724}.mkt-link{background:none;border:0;color:#2563eb;cursor:pointer;padding:.3rem .5rem;font-size:.9rem}.mkt-link:hover{text-decoration:underline}.mkt-empty{color:#64748b;margin:0}.mkt-user-search{width:100%;padding:.6rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.95rem;min-height:44px;box-sizing:border-box;margin-bottom:.75rem}.mkt-user-list{max-height:420px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px}.mkt-user-table{font-size:.88rem}.mkt-user-table thead th{position:sticky;top:0;z-index:1}.mkt-user-name{background:none;border:0;padding:0;color:#2563eb;cursor:pointer;font-size:.9rem;font-weight:600;text-align:left}.mkt-user-name:hover:not(:disabled){text-decoration:underline}.mkt-user-name:disabled{color:#94a3b8;cursor:default}.mkt-user-badge{display:inline-block;margin-left:.5rem;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#b45309;background:#fef3c7;border-radius:4px;padding:.1rem .35rem;vertical-align:middle}@media(max-width:600px){.mkt-user-table th:nth-child(4),.mkt-user-table td:nth-child(4),.mkt-user-table th:nth-child(5),.mkt-user-table td:nth-child(5){display:none}}.mkt-modal-backdrop{position:fixed;inset:0;background:#0f17248c;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.mkt-modal{background:#fff;border-radius:10px;width:100%;max-width:720px;max-height:88vh;overflow:hidden;display:flex;flex-direction:column}.mkt-modal-head{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.mkt-modal-head h3{margin:0;font-size:1.05rem}.mkt-modal-close{background:none;border:0;font-size:1.6rem;line-height:1;cursor:pointer;color:#64748b;padding:0 .4rem}.mkt-modal-meta{padding:.6rem 1.25rem;font-size:.82rem;color:#64748b;background:#f8fafc;border-bottom:1px solid #e5e7eb}.mkt-modal-body{padding:1.25rem;overflow-y:auto}.mkt-modal-body img{max-width:100%;height:auto}@media(max-width:980px){.mkt-grid{grid-template-columns:1fr}}@media(max-width:600px){.mkt-history .mkt-history-table th:nth-child(3),.mkt-history .mkt-history-table td:nth-child(3),.mkt-history .mkt-history-table th:nth-child(6),.mkt-history .mkt-history-table td:nth-child(6){display:none}}.pi{color:#0f1724}.pi-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.pi-toolbar-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.pi-select{min-height:40px;padding:0 .75rem;border:1px solid #cbd5e1;border-radius:6px;background:#fff;font-size:.9rem;color:#0f1724;max-width:320px}.pi-pill{font-size:.78rem;padding:.35rem .7rem;border-radius:999px;font-weight:600;white-space:nowrap}.pi-pill-fresh{background:#dcfce7;color:#166534}.pi-pill-stale{background:#fef3c7;color:#92400e}.pi-pill-none{background:#e2e8f0;color:#475569}.pi-btn{min-height:40px;padding:0 1rem;border-radius:6px;border:1px solid #cbd5e1;background:#fff;color:#0f1724;font-weight:600;font-size:.88rem;cursor:pointer}.pi-btn:hover{background:#f1f5f9}.pi-btn:disabled{opacity:.6;cursor:default}.pi-btn-primary{background:#2563eb;border-color:#2563eb;color:#fff}.pi-btn-primary:hover{background:#1d4ed8}.pi-btn-sm{min-height:32px;padding:0 .6rem;font-size:.8rem}.pi-toast{background:#0f1724;color:#e6edf3;padding:.6rem 1rem;border-radius:6px;font-size:.85rem;margin-bottom:.75rem}.pi-tabs{display:flex;gap:.25rem;border-bottom:1px solid #e2e8f0;margin-bottom:1.25rem}.pi-tab{padding:.6rem 1rem;text-decoration:none;color:#64748b;font-weight:600;font-size:.92rem;border-bottom:2px solid transparent;margin-bottom:-1px}.pi-tab:hover{color:#0f1724}.pi-tab.active{color:#2563eb;border-bottom-color:#2563eb}.pi-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000f;padding:1rem 1.25rem}.pi-metrics{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.pi-metric-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.06em}.pi-metric-value{font-size:1.7rem;font-weight:700;margin-top:4px}.pi-muted{color:#64748b}.pi-empty{color:#64748b;padding:2rem;text-align:center}.pi-error{color:#991b1b;background:#fef2f2;padding:.75rem 1rem;border-radius:6px}.pi-section-title{font-size:1.05rem;font-weight:700;margin:1.5rem 0 .75rem}.pi-heatmap{display:flex;flex-wrap:wrap;gap:4px}.pi-heat-cell{width:46px;height:52px;border-radius:5px;cursor:pointer;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.62rem;color:#1e293b;border:2px solid transparent;-webkit-user-select:none;user-select:none}.pi-heat-cell.game{border-color:#0f1724}.pi-heat-cell .pi-heat-dom{font-weight:700;font-size:.7rem}.pi-heat-legend{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;font-size:.75rem;color:#64748b}.pi-heat-swatch{width:18px;height:12px;border-radius:2px}.pi-wb{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1.25rem;align-items:start}@media(max-width:1100px){.pi-wb{grid-template-columns:1fr}}.pi-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.pi-chip{padding:.35rem .7rem;border-radius:999px;border:1px solid #cbd5e1;background:#fff;font-size:.78rem;font-weight:600;cursor:pointer;color:#475569}.pi-chip:hover{background:#f1f5f9}.pi-chip.active{background:#2563eb;border-color:#2563eb;color:#fff}.pi-list{display:flex;flex-direction:column;gap:.4rem}.pi-row{display:grid;grid-template-columns:14px 1fr auto auto auto;align-items:center;gap:.6rem;background:#fff;border:1px solid #e2e8f0;border-radius:7px;padding:.55rem .75rem;cursor:pointer}.pi-row:hover{border-color:#94a3b8}.pi-row.recessed{opacity:.55}.pi-dot{width:12px;height:12px;border-radius:50%}.pi-row-main{min-width:0}.pi-row-name{font-weight:600;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pi-row-sub{font-size:.74rem;color:#64748b}.pi-row-num{font-weight:700;font-size:.85rem;text-align:right;white-space:nowrap}.pi-row-num small{font-weight:500;color:#64748b}.pi-flags{display:flex;gap:3px;font-size:.85rem}.pi-stale-pill{font-size:.62rem;background:#fef3c7;color:#92400e;padding:1px 5px;border-radius:999px;font-weight:700}.pi-queue-btn{min-height:30px;padding:0 .6rem;border-radius:6px;border:1px solid #2563eb;background:#fff;color:#2563eb;font-weight:700;font-size:.76rem;cursor:pointer;white-space:nowrap}.pi-queue-btn:hover{background:#eff6ff}.pi-queue-btn.queued{background:#16a34a;border-color:#16a34a;color:#fff;cursor:default}.pi-pagination{display:flex;align-items:center;gap:.75rem;margin-top:1rem;font-size:.85rem;color:#475569}.pi-drawer-backdrop{position:fixed;inset:0;background:#0f172459;z-index:60}.pi-drawer{position:fixed;top:0;right:0;bottom:0;width:min(640px,92vw);background:#f6f7f9;z-index:61;box-shadow:-4px 0 24px #0000002e;overflow-y:auto;padding:1.25rem}.pi-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.pi-drawer-title{font-size:1.15rem;font-weight:700}.pi-drawer-close{background:none;border:none;font-size:1.4rem;cursor:pointer;color:#64748b;line-height:1}.pi-kv{display:grid;grid-template-columns:auto 1fr;gap:.25rem .75rem;font-size:.82rem}.pi-kv dt{color:#64748b}.pi-kv dd{margin:0;font-weight:600}.pi-table{width:100%;border-collapse:collapse;font-size:.8rem}.pi-table th,.pi-table td{text-align:left;padding:.4rem .6rem;border-bottom:1px solid #e2e8f0}.pi-table th{color:#64748b;font-weight:600;text-transform:uppercase;font-size:.68rem;letter-spacing:.04em}.pi-table tr.err td{background:#fef2f2}.pi-table details summary{cursor:pointer;color:#2563eb}.pi-table pre{white-space:pre-wrap;font-size:.7rem;color:#991b1b;margin:.25rem 0 0}.pi-input,.pi-textarea{width:100%;border:1px solid #cbd5e1;border-radius:6px;padding:.4rem .6rem;font-size:.85rem;font-family:inherit}.pi-textarea{min-height:60px;resize:vertical}.htp-overlay{position:fixed;inset:0;background:#020617b8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:2000;animation:htp-fade .15s ease-out}@keyframes htp-fade{0%{opacity:0}to{opacity:1}}.htp-modal{position:relative;width:100%;max-width:540px;max-height:calc(100vh - 40px);overflow-y:auto;background:#0f1724;color:#e2e8f0;border:1px solid #1e293b;border-radius:16px;box-shadow:0 24px 60px #0000008c;padding:28px;animation:htp-pop .18s ease-out}@keyframes htp-pop{0%{transform:translateY(8px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.htp-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:none;border-radius:8px;background:#1e293b;color:#cbd5e1;font-size:22px;line-height:1;cursor:pointer;transition:background .12s ease,color .12s ease}.htp-close:hover{background:#334155;color:#f8fafc}.htp-eyebrow{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#60a5fa}.htp-title{margin:6px 0 10px;font-size:24px;font-weight:800;color:#f8fafc}.htp-goal{margin:0;font-size:14.5px;line-height:1.55;color:#cbd5e1}.htp-goal strong{color:#f1f5f9}.htp-bar{margin:20px 0 8px;padding:16px 18px;border-radius:12px;background:linear-gradient(135deg,#fbbf2424,#fbbf240f);border:1px solid rgba(251,191,36,.4);text-align:center}.htp-bar-label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fde68a}.htp-bar-value{margin:4px 0 2px;font-size:38px;font-weight:800;color:#fbbf24;line-height:1.1}.htp-bar-note{font-size:12.5px;color:#94a3b8}.htp-section{margin-top:20px}.htp-h3{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#93c5fd}.htp-h3-sub{font-weight:600;text-transform:none;letter-spacing:0;color:#64748b;font-size:12px}.htp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.htp-list li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.45;color:#cbd5e1}.htp-list strong{color:#f1f5f9}.htp-ico{flex:0 0 auto;width:22px;text-align:center;font-size:16px}.htp-list-rules li{display:list-item;margin-left:18px;list-style:disc;color:#94a3b8}.htp-list-rules strong{color:#cbd5e1}.htp-tip{margin:10px 0 0;padding:10px 12px;border-radius:8px;background:#1e40af2e;border-left:3px solid #3b82f6;font-size:13px;line-height:1.5;color:#bfdbfe}.htp-tip em{color:#e0f2fe;font-style:italic}.htp-cta{margin-top:24px;width:100%;padding:13px;border:none;border-radius:10px;background:#2563eb;color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:background .12s ease}.htp-cta:hover{background:#1d4ed8}@media(max-width:480px){.htp-modal{padding:22px 18px;border-radius:14px}.htp-title{font-size:21px}.htp-bar-value{font-size:32px}}.daily-puzzle-page{height:calc(100vh - 64px);background:#0f1724;overflow:hidden}.daily-puzzle-experience{display:grid;grid-template-columns:320px 1fr;height:100%;background:#f6f7f9}.dpe-main{display:grid;grid-template-columns:1fr 420px;min-height:0;overflow:hidden}.dpe-map-strip{position:relative;border-right:1px solid #e2e8f0;background:#e2e8f0;min-width:0}.dpe-cal-area{overflow-y:auto;padding:.75rem;min-height:0;background:#f6f7f9}.dpe-loading,.dpe-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:2rem;color:#cbd5e1;background:#0f1724}.dpe-error h2{color:#fff;margin:0 0 .5rem}.dpe-side{background:#fff;border-right:1px solid #e2e8f0;padding:1.25rem 1rem;display:flex;flex-direction:column;gap:1rem;overflow-y:auto;min-height:0}.dpe-side .score-panel{flex-shrink:0;margin-top:0}.dpe-header{display:flex;flex-direction:column;gap:.4rem}.dpe-header-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.dpe-howto-btn{flex:0 0 auto;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;font-size:.72rem;font-weight:700;padding:.22rem .6rem;border-radius:999px;cursor:pointer;transition:background .12s ease,border-color .12s ease}.dpe-howto-btn:hover{background:#dbeafe;border-color:#93c5fd}.dpe-header-actions{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;justify-content:flex-end}.dpe-date-picker{display:inline-flex;align-items:center;gap:.25rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:.1rem .5rem;cursor:pointer}.dpe-date-picker:hover{border-color:#cbd5e1;background:#f1f5f9}.dpe-date-icon{font-size:.8rem;line-height:1}.dpe-date-picker input[type=date]{border:none;background:transparent;font-size:.72rem;color:#334155;font-family:inherit;cursor:pointer;padding:.2rem 0}.dpe-date-picker input[type=date]:focus{outline:none}.dpe-leaderboard-btn{flex:0 0 auto;background:#fffbeb;color:#b45309;border:1px solid #fde68a;font-size:.78rem;font-weight:600;padding:.3rem .7rem;border-radius:999px;text-decoration:none;white-space:nowrap;transition:background .12s ease,border-color .12s ease}.dpe-leaderboard-btn:hover{background:#fef3c7;border-color:#fcd34d}.dpe-pill-tag{margin-left:.4rem;background:#fde68a;color:#92400e;border-radius:999px;padding:0 .4rem;font-size:.62rem}.dpe-replay-note{font-size:.76rem;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:.4rem .6rem}.dpe-replay-note a{color:#b45309;font-weight:600}.dpe-theme-pill{display:inline-flex;align-items:center;align-self:flex-start;background:#e0e7ff;color:#1e3a8a;font-size:.7rem;font-weight:700;letter-spacing:.08em;padding:.15rem .55rem;border-radius:999px;text-transform:uppercase}.dpe-theme-name{margin:0;font-size:1.4rem;line-height:1.2;color:#0f1724}.dpe-theme-desc{margin:0;color:#475569;font-size:.85rem;line-height:1.35}.dpe-window{font-size:.78rem;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.45rem .6rem}.dpe-already-played{background:#fef3c7;border:1px solid #fde68a;color:#92400e;font-size:.8rem;padding:.5rem .7rem;border-radius:6px}.dpe-map-area{position:relative;background:#e2e8f0}.puzzle-map-container,.puzzle-map{position:absolute;inset:0}.puzzle-map-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#64748b;background:#e2e8f0;z-index:10}.dpe-popup-overlay{position:absolute;top:1rem;right:1rem;z-index:20;max-height:calc(100% - 2rem)}.puzzle-game-popup{width:320px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 30px #0f172426;max-height:70vh;overflow:hidden;display:flex;flex-direction:column}.pgp-header{display:flex;align-items:flex-start;justify-content:space-between;padding:.75rem .9rem;border-bottom:1px solid #e2e8f0}.pgp-team-name{font-weight:700;color:#0f1724}.pgp-venue{font-size:.75rem;color:#64748b;margin-top:2px}.pgp-close{background:transparent;border:none;font-size:1.5rem;line-height:1;color:#94a3b8;cursor:pointer;min-width:32px;min-height:32px}.pgp-close:hover{color:#0f1724}.pgp-games{overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.35rem}.pgp-empty{padding:1rem;color:#94a3b8;font-size:.85rem}.pgp-game-row{display:grid;grid-template-columns:1fr auto;gap:.25rem .5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.55rem .7rem;text-align:left;cursor:pointer;font-family:inherit}.pgp-game-row:hover:not(:disabled){background:#e0e7ff;border-color:#c7d2fe}.pgp-game-row:disabled{opacity:.5;cursor:not-allowed}.pgp-game-date{display:flex;flex-direction:column;gap:1px;font-size:.85rem;color:#0f1724}.pgp-game-time{font-size:.72rem;color:#64748b}.pgp-game-opp{grid-column:1 / 2;font-size:.8rem;color:#475569}.pgp-game-tag{font-size:.65rem;font-weight:700;letter-spacing:.06em;padding:.1rem .4rem;border-radius:999px;text-transform:uppercase;align-self:start}.pgp-game-tag-day{background:#fef3c7;color:#92400e}.pgp-game-tag-night,.pgp-game-tag-evening{background:#1f2937;color:#fde68a}.pgp-picked-label{grid-column:1 / -1;font-size:.7rem;color:#047857;margin-top:2px}.rsp-empty{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;padding:1rem;color:#64748b;font-size:.85rem}.rsp-empty strong{color:#0f1724;display:block;margin-bottom:.25rem}.rsp-empty p{margin:0;line-height:1.35}.rsp-list{display:flex;flex-direction:column;gap:.25rem}.rsp-row{display:flex;flex-direction:column}.rsp-row-invalid .rsp-stop-line{background:#fef2f2;border-color:#fecaca}.rsp-segment{display:flex;flex-direction:column;gap:.25rem;padding-left:1.65rem;margin:.3rem 0}.rsp-mode-toggle{display:inline-flex;background:#f1f5f9;border-radius:6px;padding:2px;width:fit-content;border:1px solid #e2e8f0}.rsp-mode-btn{background:transparent;border:none;font-size:.75rem;padding:.3rem .6rem;border-radius:4px;cursor:pointer;color:#475569;font-weight:500}.rsp-mode-btn.active{background:#1e40af;color:#fff}.rsp-error{font-size:.72rem;color:#b91c1c;background:#fef2f2;border-left:3px solid #ef4444;padding:.35rem .5rem;border-radius:0 4px 4px 0}.rsp-stop-line{display:grid;grid-template-columns:28px 1fr auto;gap:.6rem;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.55rem .6rem}.rsp-stop-index{width:28px;height:28px;border-radius:50%;background:#0f1724;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700}.rsp-stop-content{display:flex;flex-direction:column;gap:1px;min-width:0}.rsp-stop-team{font-size:.88rem;font-weight:600;color:#0f1724}.rsp-stop-meta{font-size:.72rem;color:#64748b;display:flex;gap:.25rem}.rsp-dot{opacity:.4}.rsp-remove-btn{background:transparent;border:none;font-size:1.2rem;color:#94a3b8;cursor:pointer;width:28px;height:28px;border-radius:4px}.rsp-remove-btn:hover{color:#b91c1c;background:#fef2f2}.score-panel{background:#0f1724;color:#fff;border-radius:10px;padding:1rem 1rem .85rem;display:flex;flex-direction:column;gap:.75rem;margin-top:auto}.sp-progress{display:flex;justify-content:space-between;font-size:.8rem;color:#cbd5e1}.sp-progress strong{color:#fff}.sp-live-score{display:flex;flex-direction:column;align-items:center;background:#1e293b;border-radius:8px;padding:.7rem .75rem;text-align:center}.sp-live-score.building{padding:.85rem .75rem;gap:.5rem}.sp-build-hint{font-size:.75rem;color:#cbd5e1;line-height:1.35}.sp-build-hint strong{color:#fbbf24}.sp-score-label{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.sp-live-val{font-size:2.5rem;font-weight:800;line-height:1;color:#fbbf24;margin:.15rem 0}.sp-live-val.invalid{color:#f87171}.sp-score-baseline{font-size:.7rem;color:#94a3b8}.sp-score-verdict{font-size:.75rem;font-weight:700;letter-spacing:.04em;padding:.2rem .55rem;border-radius:999px;margin-top:.25rem}.sp-score-verdict.beating{background:#064e3b;color:#6ee7b7}.sp-score-verdict.tied{background:#1e3a5f;color:#93c5fd}.sp-score-verdict.losing{background:#7f1d1d;color:#fca5a5}.sp-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}.sp-stat{background:#1e293b;border-radius:6px;padding:.5rem}.sp-stat-good{background:#064e3b}.sp-stat-label{font-size:.65rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.sp-stat-val{font-size:1rem;font-weight:700}.sp-breakdown-toggle{background:transparent;border:1px solid #334155;color:#cbd5e1;border-radius:6px;padding:.5rem .75rem;font-size:.78rem;font-weight:600;cursor:pointer;font-family:inherit;width:100%;text-align:center}.sp-breakdown-toggle:hover{background:#1e293b;color:#fff;border-color:#475569}.sp-breakdown-backdrop{position:fixed;inset:0;background:#0f17248c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:sp-bp-fade .15s ease-out}@keyframes sp-bp-fade{0%{opacity:0}to{opacity:1}}.sp-breakdown-popover{background:#fff;color:#0f1724;border-radius:12px;width:min(440px,100%);max-height:85vh;overflow-y:auto;box-shadow:0 20px 50px #00000059;display:flex;flex-direction:column}.sp-bp-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem 1.1rem .75rem;border-bottom:1px solid #e2e8f0}.sp-bp-title{font-size:1rem;font-weight:800;color:#0f1724}.sp-bp-subtitle{font-size:.85rem;color:#64748b;margin-top:.2rem}.sp-bp-subtitle strong{color:#0f1724;font-weight:700}.sp-bp-diff-good{color:#047857;font-weight:700}.sp-bp-diff-bad{color:#b91c1c;font-weight:700}.sp-bp-close{background:transparent;border:none;color:#94a3b8;font-size:1.6rem;line-height:1;cursor:pointer;width:32px;height:32px;border-radius:6px;flex-shrink:0}.sp-bp-close:hover{background:#f1f5f9;color:#0f1724}.sp-breakdown-popover .sp-breakdown-list{padding:.85rem 1.1rem 1.1rem;font-size:.85rem}.sp-breakdown-popover .sp-breakdown-head,.sp-breakdown-popover .sp-breakdown-row{grid-template-columns:110px 1fr 100px 80px;gap:.5rem}.sp-validation{background:#fef2f2;color:#7f1d1d;border-radius:6px;padding:.5rem .7rem;font-size:.75rem}.sp-validation-title{font-weight:700;margin-bottom:.25rem}.sp-validation ul{margin:0;padding-left:1rem}.sp-validation li{margin:.15rem 0}.sp-submit-btn{background:#fbbf24;color:#0f1724;border:none;border-radius:8px;padding:.85rem;font-size:.95rem;font-weight:700;cursor:pointer;min-height:48px}.sp-submit-btn:disabled{background:#475569;color:#94a3b8;cursor:not-allowed}.sp-submit-btn:hover:not(:disabled){background:#fcd34d}.sp-submit-error{background:#7f1d1d;color:#fecaca;border-radius:6px;padding:.5rem .7rem;font-size:.8rem}.score-panel.result{background:#fff;color:#0f1724;border:2px solid #fbbf24}.score-panel.result.beat{border-color:#10b981}.score-panel.result.tied{border-color:#3b82f6}.score-panel.result.lost{border-color:#f87171}.sp-result-title{font-size:1.3rem;font-weight:800;text-align:center}.sp-result-scores{display:grid;grid-template-columns:1fr auto 1fr;gap:.5rem;align-items:center;background:#f8fafc;border-radius:8px;padding:.75rem}.sp-score-block{display:flex;flex-direction:column;align-items:center}.sp-score-block .sp-score-label{color:#64748b}.sp-score-val{font-size:2rem;font-weight:800}.sp-score-divider{font-size:.85rem;color:#94a3b8}.sp-rank{text-align:center;color:#475569;font-size:.85rem}.sp-breakdown{border-top:1px solid #e2e8f0;padding-top:.6rem}.sp-breakdown-title{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.4rem}.sp-breakdown-list{display:flex;flex-direction:column;gap:.15rem;font-size:.78rem}.sp-breakdown-head,.sp-breakdown-row{display:grid;grid-template-columns:90px 1fr 90px 70px;gap:.4rem;align-items:baseline}.sp-breakdown-head{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-weight:700;padding-bottom:.15rem;border-bottom:1px solid #e2e8f0;margin-bottom:.2rem}.sp-row-label{font-weight:600;color:#0f1724}.sp-row-detail{color:#475569}.sp-row-rate{color:#94a3b8;font-size:.72rem;font-style:italic}.sp-right{text-align:right}.sp-breakdown-total{font-weight:800;border-top:1px solid #e2e8f0;padding-top:.35rem;margin-top:.25rem}.sp-breakdown-row .good{color:#047857;font-weight:700}.sp-breakdown-row .bad{color:#b91c1c;font-weight:700}.sp-score-formula{margin-top:.75rem;padding:.55rem .7rem;background:#f1f5f9;border-radius:6px;display:flex;flex-direction:column;gap:.2rem;font-size:.78rem}.sp-formula-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#475569;text-align:center;margin-bottom:.2rem}.sp-formula-line{display:flex;justify-content:space-between;color:#475569}.sp-formula-total{border-top:1px solid #cbd5e1;padding-top:.3rem;margin-top:.15rem;color:#0f1724;font-weight:700}.sp-formula-total strong{color:#1e40af;font-size:1rem}.sp-formula-vs{color:#64748b;font-weight:500;font-size:.75rem}.score-panel.result-summary{background:#fff;color:#0f1724;border:2px solid #fbbf24;gap:.5rem;padding:.85rem .95rem}.score-panel.result-summary.beat{border-color:#10b981}.score-panel.result-summary.tied{border-color:#3b82f6}.score-panel.result-summary.lost{border-color:#f87171}.sp-summary-title{font-size:.95rem;font-weight:800;text-align:center;line-height:1.25}.sp-summary-scores{display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.85rem;color:#475569;background:#f8fafc;border-radius:6px;padding:.45rem}.sp-summary-scores strong{color:#0f1724;font-weight:800;font-size:.95rem}.sp-summary-divider{color:#94a3b8;font-size:.8rem}.sp-summary-rank{text-align:center;font-size:.78rem;color:#475569}.sp-summary-view-btn{background:#1e40af;color:#fff;border:none;border-radius:8px;padding:.6rem;font-size:.85rem;font-weight:700;cursor:pointer;font-family:inherit}.sp-summary-view-btn:hover{background:#1e3a8a}.sp-result-backdrop{position:fixed;inset:0;background:#0f1724a6;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:sp-bp-fade .18s ease-out;overflow-y:auto}.sp-result-modal{position:relative;background:#fff;color:#0f1724;border-radius:14px;width:min(720px,100%);max-height:calc(100vh - 2rem);overflow-y:auto;box-shadow:0 24px 60px #0006;padding:1.5rem 1.5rem 1.25rem;display:flex;flex-direction:column;gap:1rem;border-top:6px solid #fbbf24}.sp-result-modal.beat{border-top-color:#10b981}.sp-result-modal.tied{border-top-color:#3b82f6}.sp-result-modal.lost{border-top-color:#f87171}.sp-result-close{position:absolute;top:.65rem;right:.85rem;background:transparent;border:none;color:#94a3b8;font-size:1.8rem;line-height:1;cursor:pointer;width:36px;height:36px;border-radius:6px;font-family:inherit}.sp-result-close:hover{background:#f1f5f9;color:#0f1724}.sp-result-hero{display:flex;flex-direction:column;gap:.75rem;align-items:stretch;text-align:center;padding-top:.5rem}.sp-result-modal .sp-result-title{font-size:1.45rem;font-weight:800;letter-spacing:-.01em;line-height:1.2}.sp-result-modal .sp-result-scores{background:#f8fafc;border-radius:10px;padding:1rem}.sp-result-modal .sp-score-val{font-size:2.25rem}.sp-result-section{display:flex;flex-direction:column;gap:.5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem 1.1rem}.sp-result-modal .sp-breakdown-list,.sp-result-modal .sp-vs-table{font-size:.88rem}.sp-result-modal .sp-breakdown-head,.sp-result-modal .sp-breakdown-row{grid-template-columns:110px 1fr 100px 90px}.sp-result-modal .sp-vs-head,.sp-result-modal .sp-vs-row{grid-template-columns:minmax(110px,1.4fr) 1fr 1fr 1fr}@media(max-width:640px){.sp-result-modal{padding:1.15rem 1rem 1rem;gap:.85rem}.sp-result-modal .sp-result-title{font-size:1.15rem}.sp-result-modal .sp-score-val{font-size:1.75rem}.sp-result-modal .sp-breakdown-head,.sp-result-modal .sp-breakdown-row,.sp-result-modal .sp-vs-head,.sp-result-modal .sp-vs-row{grid-template-columns:88px 1fr 80px 70px;font-size:.78rem}}.sp-ai-locked{background:linear-gradient(135deg,#1e3a8a,#1e293b);color:#fff;border-radius:12px;padding:1.5rem 1.25rem 1.25rem;text-align:center;display:flex;flex-direction:column;gap:.5rem;align-items:center;position:relative;overflow:hidden}.sp-ai-locked:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at top,rgba(251,191,36,.15),transparent 60%);pointer-events:none}.sp-ai-locked-icon{font-size:2rem;line-height:1}.sp-ai-locked-title{font-size:1.1rem;font-weight:800;color:#fff}.sp-ai-locked-sub{font-size:.85rem;color:#cbd5e1;line-height:1.45;max-width:380px;margin:0 auto}.sp-ai-locked-actions{display:flex;gap:.6rem;margin-top:.5rem;flex-wrap:wrap;justify-content:center;position:relative;z-index:1}.sp-ai-locked-btn{border:none;border-radius:8px;padding:.7rem 1.1rem;font-size:.88rem;font-weight:700;cursor:pointer;font-family:inherit;transition:transform .1s,background .15s}.sp-ai-locked-btn:hover{transform:translateY(-1px)}.sp-ai-locked-btn.primary{background:#fbbf24;color:#0f1724}.sp-ai-locked-btn.primary:hover{background:#fcd34d}.sp-ai-locked-btn.ghost{background:transparent;color:#cbd5e1;border:1px solid #475569}.sp-ai-locked-btn.ghost:hover{background:#ffffff14;color:#fff}.sp-share-block{background:#0f1724;color:#f1f5f9;border-radius:10px;padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.65rem}.sp-share-title{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#cbd5e1}.sp-share-preview{background:#1e293b;border:1px solid #334155;border-radius:8px;padding:.7rem .85rem;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;color:#e2e8f0;white-space:pre-wrap;word-break:break-word;line-height:1.5;max-height:200px;overflow-y:auto}.sp-share-actions{display:flex;flex-wrap:wrap;gap:.5rem}.sp-share-btn{display:inline-flex;align-items:center;gap:.35rem;border:none;border-radius:8px;padding:.6rem .95rem;font-size:.85rem;font-weight:700;cursor:pointer;font-family:inherit;text-decoration:none;transition:transform .1s,background .15s}.sp-share-btn:hover{transform:translateY(-1px)}.sp-share-btn.primary{background:#fbbf24;color:#0f1724;flex:1;min-width:110px;justify-content:center}.sp-share-btn.primary:hover{background:#fcd34d}.sp-share-btn.primary.copied{background:#10b981;color:#fff}.sp-share-btn.x{background:#fff;color:#0f1724}.sp-share-btn.x:hover{background:#f1f5f9}.sp-share-btn.native{background:#1e40af;color:#fff}.sp-share-btn.native:hover{background:#1e3a8a}.sp-share-hint{font-size:.72rem;color:#94a3b8;line-height:1.4}.sp-share-hint strong{color:#fbbf24;font-weight:700}.sp-streak{border-radius:10px;padding:.85rem 1rem;text-align:center;display:flex;flex-direction:column;gap:.35rem}.sp-streak-milestone{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;box-shadow:0 4px 12px #f59e0b40}.sp-streak-streak{background:linear-gradient(135deg,#ffedd5,#fed7aa);border:2px solid #ea580c}.sp-streak-replay{background:#f1f5f9;border:1px solid #cbd5e1}.sp-streak-title{font-size:1.05rem;font-weight:800;color:#0f1724;letter-spacing:-.01em}.sp-streak-sub{font-size:.82rem;color:#475569;font-weight:600}.sp-streak-rewards{display:flex;justify-content:center;gap:1.25rem;margin-top:.25rem}.sp-streak-reward{display:flex;flex-direction:column;align-items:center}.sp-streak-reward-val{font-size:1.4rem;font-weight:800;color:#b45309;line-height:1}.sp-streak-reward-label{font-size:.7rem;color:#78350f;text-transform:uppercase;letter-spacing:.05em;font-weight:700;margin-top:2px}.sp-ai-reveal{border-top:1px solid #e2e8f0;padding-top:.85rem;margin-top:.25rem;display:flex;flex-direction:column;gap:.85rem}.sp-ai-route{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.sp-ai-stop{display:grid;grid-template-columns:28px 1fr;gap:.55rem;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.45rem .6rem}.sp-ai-stop-idx{width:28px;height:28px;border-radius:50%;background:#1e40af;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}.sp-ai-stop-body{min-width:0}.sp-ai-stop-team{font-weight:600;color:#0f1724;font-size:.85rem}.sp-ai-stop-meta{font-size:.72rem;color:#64748b;margin-top:1px;display:flex;flex-wrap:wrap;gap:.15rem;align-items:baseline}.sp-ai-stop-cost{color:#1e40af;font-weight:600}.sp-vs-table{display:flex;flex-direction:column;gap:.15rem}.sp-vs-title{margin-bottom:.1rem}.sp-vs-head,.sp-vs-row{display:grid;grid-template-columns:minmax(90px,1.4fr) 1fr 1fr 1fr;gap:.3rem;font-size:.78rem;align-items:baseline;padding:.2rem 0}.sp-vs-head{font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-weight:700;border-bottom:1px solid #e2e8f0;padding-bottom:.2rem;margin-bottom:.1rem}.sp-vs-total{border-top:1px solid #e2e8f0;padding-top:.35rem;margin-top:.2rem;font-weight:800}.sp-vs-row .sp-right{color:#475569;font-variant-numeric:tabular-nums}.sp-vs-row .sp-right.good{color:#047857;font-weight:700}.sp-vs-row .sp-right.bad{color:#b91c1c;font-weight:700}.sp-leaderboard-link{display:block;text-align:center;color:#1e40af;font-size:.85rem;font-weight:700;text-decoration:none;padding:.5rem 0;border-top:1px solid #e2e8f0;margin-top:.5rem}.sp-leaderboard-link:hover{text-decoration:underline}.sched-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;overflow-y:auto;display:flex;flex-direction:column;min-height:0;flex:1 1 auto}.sched-header{background:#fff;padding:.55rem .85rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#475569;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:2}.sched-team-section{border-bottom:1px solid #e2e8f0;transition:background .3s ease}.sched-team-section:last-child{border-bottom:none}.sched-team-section.highlight{background:#fef3c7}.sched-team-header{display:flex;justify-content:space-between;align-items:center;padding:.55rem .85rem;background:#fff;position:sticky;top:36px;z-index:1;border-bottom:1px solid #f1f5f9}.sched-team-section.highlight .sched-team-header{background:#fde68a}.sched-team-name{font-weight:700;color:#0f1724;font-size:.88rem;display:flex;align-items:center;gap:.4rem}.sched-team-level{background:#e2e8f0;color:#475569;font-size:.6rem;font-weight:700;letter-spacing:.04em;padding:.1rem .35rem;border-radius:4px}.sched-team-count{font-size:.7rem;color:#64748b}.sched-picked-tag{background:#d1fae5;color:#047857;font-weight:700;padding:.1rem .45rem;border-radius:999px;font-size:.65rem;letter-spacing:.05em}.sched-count-tag{color:#94a3b8}.sched-empty{padding:.55rem .85rem;font-size:.78rem;color:#94a3b8}.sched-games{display:flex;flex-direction:column}.sched-game-row{display:grid;grid-template-columns:110px 1fr auto auto;gap:.5rem;align-items:center;background:#fff;border:none;border-top:1px solid #f1f5f9;padding:.45rem .85rem;text-align:left;cursor:pointer;font-family:inherit;font-size:.78rem;color:#0f1724}.sched-game-row:hover:not(:disabled):not(.picked){background:#e0e7ff}.sched-game-row.picked{background:#f0fdf4;color:#475569}.sched-game-when{display:flex;flex-direction:column;gap:1px}.sched-game-date{font-weight:600}.sched-game-time{font-size:.7rem;color:#64748b}.sched-game-opp{color:#334155;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sched-game-tag{width:18px;height:18px;border-radius:4px;font-size:.62rem;font-weight:800;display:flex;align-items:center;justify-content:center}.sched-game-tag-day{background:#fef3c7;color:#92400e}.sched-game-tag-night,.sched-game-tag-evening{background:#1f2937;color:#fde68a}.sched-check{color:#047857;font-weight:700}.leaderboard-panel{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0000000a;display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.lbp-loading,.lbp-error,.lbp-empty{padding:1rem;text-align:center;color:#64748b;font-size:.85rem}.lbp-error{color:#b91c1c}.lbp-header{display:flex;align-items:center;justify-content:space-between;padding:.65rem .85rem;background:linear-gradient(135deg,#1e40af,#1e293b);color:#fff}.lbp-title{margin:0;font-size:.95rem;font-weight:700}.lbp-count{font-size:.75rem;color:#cbd5e1}.lbp-rows{display:flex;flex-direction:column}.lbp-row{display:grid;grid-template-columns:42px 1fr 60px 50px 60px;align-items:center;gap:.5rem;padding:.5rem .85rem;border-bottom:1px solid #f1f5f9;font-size:.85rem}.lbp-row:last-child{border-bottom:none}.lbp-row-head{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;background:#f8fafc}.lbp-row.is-you{background:#ede9fe;font-weight:600}.lbp-rank{font-weight:700;color:#0f1724}.lbp-name{display:flex;align-items:center;gap:.4rem;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lbp-you-tag{background:#1e40af;color:#fff;font-size:.6rem;letter-spacing:.05em;padding:.1rem .4rem;border-radius:999px;font-weight:700;text-transform:uppercase}.lbp-guest-tag{background:#e2e8f0;color:#64748b;font-size:.6rem;letter-spacing:.05em;padding:.1rem .4rem;border-radius:999px;font-weight:600}.lbp-score{font-weight:800;color:#1e40af}.lbp-right{text-align:right}.lbp-pager{display:flex;align-items:center;justify-content:space-between;padding:.5rem .85rem;border-top:1px solid #e2e8f0;background:#f8fafc;font-size:.75rem}.lbp-page-btn{background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:.3rem .65rem;cursor:pointer;font-size:.75rem;font-weight:600;color:#0f1724}.lbp-page-btn:disabled{opacity:.4;cursor:not-allowed}.lbp-page-info{color:#64748b}.pmap-venue-marker{width:18px;height:18px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 4px #00000059;cursor:pointer;transition:transform .15s}.pmap-venue-marker:hover{transform:scale(1.15)}.pmap-venue-marker.selected{transform:scale(1.35);box-shadow:0 0 0 3px #f59e0b66,0 1px 6px #00000073}.pmap-stop-overlay{width:28px;height:28px;border-radius:50%;background:#0f1724;color:#fff;border:2px solid #fff;box-shadow:0 1px 4px #00000059;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;cursor:pointer}.pcal-container{background:#fff;border-radius:10px;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 4px #0000000a}.pcal-nav{display:flex;align-items:center;gap:.5rem;padding:.5rem .85rem;background:linear-gradient(135deg,#1e40af,#1e293b)}.pcal-arrow{background:#fff3;border:none;color:#fff;width:28px;height:28px;border-radius:50%;font-size:1.2rem;line-height:1;cursor:pointer}.pcal-arrow:disabled{opacity:.3;cursor:not-allowed}.pcal-arrow:not(:disabled):hover{background:#ffffff59}.pcal-month-title{flex:1;text-align:center;font-size:.95rem;font-weight:700;color:#fff;letter-spacing:.02em}.pcal-header-row{display:grid;grid-template-columns:repeat(7,1fr);background:#f8fafc;border-bottom:1px solid #e2e8f0}.pcal-header-cell{font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;text-align:center;padding:.3rem 0}.pcal-grid{display:grid;grid-template-columns:repeat(7,1fr);border-left:1px solid #f1f5f9}.pcal-cell{min-height:64px;padding:.25rem .3rem;border-right:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9;display:flex;flex-direction:column;gap:.15rem;position:relative;cursor:default}.pcal-cell.other-month{background:#fafafa}.pcal-cell.other-month .pcal-date-num{color:#cbd5e1}.pcal-cell.out-of-window{background:#f8fafc;opacity:.6}.pcal-cell.has-games{cursor:pointer}.pcal-cell.has-games:hover{background:#eef2ff}.pcal-cell.selected{background:#ede9fe!important;outline:2px solid #1e40af;outline-offset:-2px;z-index:1}.pcal-date-num{font-size:.72rem;font-weight:600;color:#475569}.pcal-dots{display:flex;flex-wrap:wrap;gap:2px}.pcal-dot{width:8px;height:8px;border-radius:50%;opacity:.85}.pcal-dot.dot-picked{width:10px;height:10px;box-shadow:0 0 0 1.5px #fff,0 0 0 3px currentColor}.pcal-dot-more{font-size:.55rem;color:#94a3b8;font-weight:600;align-self:center}.pcal-sel-badge{position:absolute;bottom:2px;right:4px;font-size:.6rem;color:#047857;background:#d1fae5;border-radius:999px;padding:0 4px;font-weight:700}.pcal-day-panel{border-top:2px solid #1e40af;background:#fafafa}.pcal-day-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .85rem;background:linear-gradient(135deg,#1e40af,#1e293b);color:#fff}.pcal-day-title{font-weight:700;font-size:.9rem}.pcal-day-close{background:#ffffff26;border:none;color:#fff;width:24px;height:24px;border-radius:50%;cursor:pointer;font-size:1rem;line-height:1}.pcal-day-list{display:flex;flex-direction:column}.pcal-game-card{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:.7rem;padding:.55rem .85rem;border:none;border-bottom:1px solid #e2e8f0;background:#fff;cursor:pointer;text-align:left;font-family:inherit}.pcal-game-card:hover:not(:disabled){background:#eef2ff}.pcal-game-card.picked{background:#ede9fe}.pcal-game-card.disabled{opacity:.5;cursor:not-allowed;background:#f8fafc}.pcal-game-dot{width:12px;height:12px;border-radius:50%}.pcal-game-body{min-width:0}.pcal-game-team{font-weight:700;font-size:.88rem;color:#0f1724}.pcal-game-meta{display:flex;gap:.3rem;font-size:.75rem;color:#64748b;align-items:center;margin-top:1px}.pcal-dot-sep{opacity:.5}.pcal-dn{font-size:.6rem;font-weight:700;padding:.05rem .35rem;border-radius:999px;margin-left:.3rem}.pcal-dn-day{background:#fef3c7;color:#92400e}.pcal-dn-night,.pcal-dn-evening{background:#1f2937;color:#fde68a}.pcal-game-note{font-size:.7rem;color:#b91c1c;margin-top:2px}.pcal-check{color:#1e40af;font-size:1.1rem;font-weight:800}.pcal-legend{display:flex;flex-wrap:wrap;gap:.4rem .75rem;padding:.55rem .85rem;border-top:1px solid #e2e8f0;background:#f8fafc;font-size:.72rem;color:#475569}.pcal-legend-item{display:inline-flex;align-items:center;gap:.3rem;font-weight:600}.pcal-legend-item.used{opacity:.55;text-decoration:line-through}.pcal-legend-dot{width:9px;height:9px;border-radius:50%}.dpe-mobile-status{display:none}@media(max-width:768px){.daily-puzzle-page{height:auto;min-height:calc(100vh - 64px);overflow:visible}.daily-puzzle-experience{display:flex;flex-direction:column;height:auto;min-height:100%}.dpe-side,.dpe-main{display:contents}.dpe-mobile-status{display:flex;flex-direction:column;gap:2px;position:sticky;top:0;z-index:30;background:#0f1724;color:#fff;padding:.55rem .85rem;box-shadow:0 2px 8px #00000040;order:1}.dpe-ms-theme{font-size:.78rem;font-weight:700;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dpe-ms-scores{display:flex;align-items:baseline;gap:.4rem;font-size:.85rem;font-weight:700}.dpe-ms-you{color:#fbbf24}.dpe-ms-ai{color:#cbd5e1;font-weight:600}.dpe-ms-sep{color:#475569}.dpe-ms-progress{margin-left:auto;font-size:.72rem;font-weight:600;color:#cbd5e1;background:#1e293b;padding:.1rem .5rem;border-radius:999px}.dpe-mobile-status.verdict-beating{background:#064e3b}.dpe-mobile-status.verdict-beating .dpe-ms-you{color:#6ee7b7}.dpe-mobile-status.verdict-losing{background:#7f1d1d}.dpe-mobile-status.verdict-losing .dpe-ms-you{color:#fca5a5}.dpe-header{order:2;padding:.85rem;background:#fff;border-bottom:1px solid #e2e8f0}.dpe-already-played{order:2;margin:.5rem .85rem 0}.dpe-map-strip{order:3;height:50vh;min-height:320px;border-right:none;border-bottom:1px solid #e2e8f0}.dpe-cal-area{order:4;padding:.5rem}.rsp-list,.rsp-empty{order:5}.score-panel{order:6;margin:.5rem .85rem 0}.leaderboard-panel{order:7;margin:.5rem .85rem}.dpe-side>div:not(.score-panel):not(.leaderboard-panel){order:5;margin:.5rem .85rem 0}.daily-puzzle-experience:after{content:"";order:99;height:1.5rem;flex-shrink:0}.dpe-header h1.dpe-theme-name{font-size:1.15rem}.dpe-theme-desc{font-size:.8rem}.pcal-cell{min-height:56px}.sched-game-row{grid-template-columns:90px 1fr auto auto;font-size:.76rem}.lbp-row{grid-template-columns:36px 1fr 56px 44px 56px;font-size:.78rem;padding:.4rem .6rem}}.daily-leaderboard-page{max-width:720px;margin:1.5rem auto;padding:0 1rem;display:flex;flex-direction:column;gap:1rem}.dlp-header{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.dlp-title{margin:0;font-size:1.5rem;color:#0f1724}.dlp-controls{display:flex;align-items:flex-end;gap:.75rem}.dlp-date{display:flex;flex-direction:column;gap:.2rem;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.dlp-date input{font-size:.9rem;padding:.4rem .55rem;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f1724;font-family:inherit}.dlp-play-btn{background:#1e40af;color:#fff;text-decoration:none;font-weight:700;font-size:.85rem;padding:.55rem 1rem;border-radius:6px;min-height:38px;display:flex;align-items:center}.dlp-play-btn:hover{background:#1d4ed8}.dlp-footnote{font-size:.78rem;color:#94a3b8;text-align:center}@media(max-width:600px){.dlp-header,.dlp-controls{flex-direction:column;align-items:stretch}.dlp-play-btn{justify-content:center}}.credits-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg,#f5e6c8,#e8c878);color:#4a3618;border:1px solid #c89d4a;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;min-height:32px;line-height:1}.credits-badge:hover{transform:translateY(-1px);box-shadow:0 2px 8px #c89d4a4d}.credits-badge:active{transform:translateY(0)}.credits-badge__icon{font-size:14px;color:#c89d4a}.credits-badge__count{font-variant-numeric:tabular-nums}@media(max-width:768px){.credits-badge{padding:8px 14px;min-height:44px;font-size:14px}}.psb{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .7rem;border-radius:999px;font-size:.82rem;font-weight:700;text-decoration:none;line-height:1.1;transition:transform .15s,box-shadow .15s;white-space:nowrap}.psb:hover{transform:translateY(-1px);box-shadow:0 4px 10px #00000026}.psb-emoji{font-size:.9rem;line-height:1}.psb-streak{display:inline-flex;align-items:center;gap:.25rem}.psb-streak-val{color:inherit;font-weight:800;font-variant-numeric:tabular-nums}.psb-cta{background:#1e40af;color:#fff;border:1px solid #1e3a8a}.psb-cta:hover{background:#1e3a8a;color:#fff}.psb-cta-text{color:#fff}.psb-done{background:#fef3c7;color:#92400e;border:1px solid #f59e0b}.psb-done:hover{background:#fde68a;color:#78350f}.psb-callback{background:#fff;color:#ea580c;border:1.5px solid #ea580c}.psb-callback:hover{background:#fff7ed;color:#c2410c}.psb-callback-text{font-weight:700}@media(max-width:640px){.psb{padding:.3rem .55rem;font-size:.78rem}.psb-emoji{font-size:.85rem}}.navbar{background:#fff;box-shadow:0 2px 8px #0000001a;position:sticky;top:0;z-index:1000}.navbar-container{max-width:1600px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;height:60px}.navbar-top{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.navbar-bottom{display:flex;align-items:center;margin:0 auto;height:100%}.navbar-brand{display:flex;align-items:center;text-decoration:none;color:#2c3e50;font-weight:700;font-size:1.25rem;transition:color .2s;flex-shrink:0}.navbar-brand:hover{color:#4caf50}.brand-logo{height:50px;width:auto;margin-right:.75rem;object-fit:contain}.brand-text{white-space:nowrap;font-size:1.25rem;flex-shrink:0}.navbar-links{display:flex;gap:2rem;align-items:center;height:100%}.nav-link{text-decoration:none;color:#6c757d;font-weight:600;font-size:1rem;padding:0 .25rem;height:100%;display:flex;align-items:center;border-bottom:3px solid transparent;transition:all .2s;white-space:nowrap}.nav-link:hover{color:#4caf50}.nav-link.active{color:#4caf50;border-bottom-color:#4caf50}.nav-dropdown{position:relative;height:100%;display:flex;align-items:center}.nav-dropdown-trigger{background:none;border:none;cursor:pointer;font:inherit}.nav-dropdown-icon{display:inline-flex;flex-direction:column;justify-content:space-between;width:22px;height:16px}.nav-dropdown-icon span{display:block;height:2px;background:currentColor;border-radius:1px}.nav-dropdown-menu{position:absolute;top:100%;right:0;min-width:180px;background:#fff;box-shadow:0 4px 16px #0000001f;border-radius:8px;padding:.5rem 0;z-index:1100}.nav-dropdown-item{display:block;padding:.6rem 1rem;color:#2c3e50;text-decoration:none;font-weight:500;font-size:.95rem}.nav-dropdown-item:hover{background:#f5f7fa;color:#4caf50}.navbar-actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.user-menu{display:flex;align-items:center;gap:.75rem}.user-profile-link{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:#2c3e50;padding:.5rem .75rem;border-radius:8px;transition:background-color .2s}.user-profile-link:hover{background-color:#f8f9fa}.user-dropdown{position:relative;display:flex;align-items:center}.user-avatar-btn{background:none;border:none;padding:2px;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:box-shadow .2s}.user-avatar-btn:hover,.user-avatar-btn[aria-expanded=true]{box-shadow:0 0 0 2px #4caf50}.user-dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:#fff;box-shadow:0 4px 16px #0000001f;border-radius:8px;padding:.5rem 0;z-index:1100}.user-dropdown-header{padding:.5rem 1rem .6rem;font-weight:700;color:#2c3e50;border-bottom:1px solid #f0f0f0;margin-bottom:.3rem}.user-dropdown-item{display:block;width:100%;text-align:left;background:none;border:none;padding:.6rem 1rem;color:#2c3e50;text-decoration:none;font-weight:500;font-size:.95rem;cursor:pointer;font-family:inherit}.user-dropdown-item:hover{background:#f5f7fa;color:#4caf50}.user-dropdown-signout{color:#c0392b;border-top:1px solid #f0f0f0;margin-top:.3rem}.user-dropdown-signout:hover{background:#fdecea;color:#c0392b}.user-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.user-avatar-placeholder{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#4caf50,#45a049);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:#fff}.user-name{font-weight:600;font-size:.95rem}.auth-buttons{display:flex;gap:.75rem}.btn-login,.btn-register,.btn-logout{padding:.625rem 1.25rem;border-radius:6px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s;border:none}.btn-login{background-color:transparent;color:#4caf50;border:2px solid #4CAF50}.btn-login:hover{background-color:#4caf50;color:#fff}.btn-register{background-color:#4caf50;color:#fff;border:2px solid #4CAF50}.btn-register:hover{background-color:#45a049;border-color:#45a049}.btn-logout{background-color:#6c757d;color:#fff;border:2px solid #6c757d}.btn-logout:hover{background-color:#5a6268;border-color:#5a6268}.hamburger-menu-btn{display:none;flex-direction:column;justify-content:space-between;width:44px;height:44px;padding:10px;background:transparent;border:none;cursor:pointer;z-index:1001}.hamburger-line{width:24px;height:3px;background-color:#2c3e50;border-radius:2px;transition:all .3s ease}.hamburger-menu-btn:hover .hamburger-line{background-color:#4caf50}.mobile-drawer-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1100;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.mobile-drawer-overlay.open{opacity:1;visibility:visible}.mobile-drawer{position:fixed;top:0;right:-300px;width:280px;max-width:85vw;height:100%;background:#fff;box-shadow:-4px 0 12px #00000026;z-index:1101;transition:right .3s ease;overflow-y:auto;padding:20px}.mobile-drawer.open{right:0}.drawer-close-btn{position:absolute;top:15px;right:15px;width:44px;height:44px;background:transparent;border:none;font-size:2rem;color:#6c757d;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.drawer-close-btn:hover{background-color:#f8f9fa;color:#2c3e50}.mobile-nav-links{display:flex;flex-direction:column;gap:0;margin-top:60px}.mobile-nav-link{padding:16px 20px;text-decoration:none;color:#2c3e50;font-weight:600;font-size:1.1rem;border-bottom:1px solid #f0f0f0;transition:background-color .2s,color .2s;min-height:44px;display:flex;align-items:center}.mobile-nav-link:hover{background-color:#f8f9fa;color:#4caf50}.mobile-nav-link.active{color:#4caf50;background-color:#f1f8f4;border-left:4px solid #4CAF50;padding-left:16px}@media(max-width:1024px){.navbar-container{padding:0 1rem}.navbar-links{gap:1.5rem}.nav-link{font-size:.95rem}}@media(max-width:900px){.navbar-container{padding:0 .75rem}.navbar-links{gap:1.25rem}.nav-link{font-size:.9rem}.brand-logo{height:45px}}@media(max-width:1100px){.navbar-container{padding:0 1rem}.hamburger-menu-btn{display:flex}.navbar-bottom{display:none}.navbar-top{border-bottom:none}}@media(max-width:768px){.brand-logo{height:40px}.brand-text{font-size:1rem}.user-name{display:none}.btn-login,.btn-register,.btn-logout{padding:.5rem 1rem;font-size:.85rem;min-height:44px}}@media(max-width:480px){.brand-logo{height:36px}.brand-text{display:none}.auth-buttons{gap:.5rem}.btn-login,.btn-register{padding:.5rem .75rem;font-size:.8rem;min-height:44px}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#fff;color:#333;line-height:1.6;display:block;place-items:unset}#root{max-width:1600px;margin:0 auto;padding:2rem}.app-header{margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid #f0f0f0}.hero-band{display:grid;grid-template-columns:minmax(320px,1fr) minmax(420px,1.3fr);gap:2rem;align-items:center;max-width:1400px;margin:1rem auto 1.5rem}.hero-band__left{display:flex;align-items:center;gap:1.5rem;min-width:0}.hero-band__logo{width:200px;height:auto;flex-shrink:0;animation:subtle-bounce 3s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0,0,0,.12))}.hero-band__text{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.65rem;min-width:0}.hero-band__brand{font-family:Poppins,sans-serif;font-size:2.6rem;font-weight:800;color:#2c3e50;margin:0;line-height:1.05;letter-spacing:-1px}.hero-band__slogan{font-family:Poppins,sans-serif;font-size:1.15rem;font-weight:500;color:#475569;margin:.4rem auto 0;line-height:1.4;max-width:42ch}.hero-band__cta{padding:1.1rem 2.2rem;font-family:Poppins,sans-serif;font-size:1.1rem;font-weight:700;letter-spacing:.01em;color:#fff;background:linear-gradient(135deg,#2196f3,#1976d2);border:none;border-radius:12px;cursor:pointer;transition:all .25s ease;box-shadow:0 6px 18px #2196f359;white-space:nowrap}.hero-band__cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2196f366;background:linear-gradient(135deg,#1e88e5,#1565c0)}.hero-band__cta:focus-visible{outline:2px solid #2196F3;outline-offset:2px}.hero-band__right{min-width:0}@media(max-width:1023px){.hero-band__brand{font-size:2.1rem}.hero-band__slogan{font-size:1rem}.hero-band__logo{width:160px}}@media(max-width:768px){.hero-band__logo{width:130px}.hero-band__brand{font-size:1.7rem}.hero-band__slogan{font-size:.95rem}.hero-band__cta{padding:.95rem 1.5rem;font-size:1rem}}.hero-integrated{display:flex;align-items:center;justify-content:center;gap:2rem;margin:1.6rem auto;max-width:1000px}.hero-logo{width:420px;height:auto;flex-shrink:0;animation:subtle-bounce 3s ease-in-out infinite;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}@keyframes subtle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.hero-text{text-align:center}.hero-brand{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:800;color:#2c3e50;margin:0 0 .3rem;line-height:1.1;letter-spacing:-.5px}.hero-slogan{font-family:Poppins,sans-serif;font-size:1.4rem;font-weight:600;color:#555;margin:0;line-height:1.4;letter-spacing:.2px}.hero-cta-btn{margin-top:1.5rem;padding:1rem 2.5rem;font-family:Poppins,sans-serif;font-size:1.1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#2196f3,#1976d2);border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #2196f34d;text-transform:none;letter-spacing:.3px}.hero-cta-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2196f366;background:linear-gradient(135deg,#1e88e5,#1565c0)}.hero-cta-btn:active{transform:translateY(0);box-shadow:0 2px 8px #2196f34d}.hero-cta-btn:focus{outline:2px solid #2196F3;outline-offset:2px}.hero-subtext{font-family:Poppins,sans-serif;font-size:.55rem;font-weight:400;color:#888;margin:.4rem 0 0;line-height:1.5;max-width:420px}.hero-brand{max-width:1200px;margin:1.75rem auto;padding:0 1.5rem}.hero-brand__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;text-align:left}@media(max-width:768px){.hero-brand{padding:0 1rem}.hero-brand__inner{grid-template-columns:auto 1fr;gap:1.25rem}.hero-brand__inner .hero-band__cta{grid-column:1 / -1;justify-self:stretch}}.hp-actions-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;max-width:1400px;margin:0 auto 1.5rem;padding:0 1rem;align-items:stretch}.hp-actions-row>*{min-width:0}@media(max-width:1023px){.hp-actions-row{grid-template-columns:1fr;gap:1rem}}.how-it-works{max-width:1100px;margin:2rem auto 3rem;padding:2.5rem;background:linear-gradient(145deg,#5a7a9a,#6b8cad,#7a9cbd);border-radius:20px;box-shadow:0 6px 24px #5a7a9a33}.how-it-works h2{text-align:center;font-size:2rem;color:#fff;margin-bottom:2rem;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.2)}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:2.5rem}.step-card{background:#fffffff2;padding:1.25rem 1rem;border-radius:16px;text-align:center;box-shadow:0 4px 20px #00000026;transition:transform .3s ease,box-shadow .3s ease;border:2px solid transparent}.step-card:hover{transform:translateY(-6px);box-shadow:0 8px 30px #0003;border-color:#4caf50}.step-number{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff;border-radius:50%;font-size:1.4rem;font-weight:800;margin-bottom:.75rem;box-shadow:0 4px 12px #4caf5066}.step-card h3{font-size:1rem;color:#1a365d;margin-bottom:.5rem;font-weight:700}.step-card p{font-size:.85rem;color:#4a5568;line-height:1.4;margin:0}.value-highlight{background:#fffffff2;padding:2rem;border-radius:16px;margin-bottom:2rem;box-shadow:0 4px 20px #0000001a}.value-highlight h3{text-align:center;font-size:1.4rem;color:#1a365d;margin-bottom:1.5rem;font-weight:700}.benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.benefit{display:flex;align-items:center;gap:.75rem;font-size:1rem;color:#2d3748;padding:.75rem 1rem;background:linear-gradient(135deg,#f0fff4,#c6f6d5);border-radius:10px;border-left:4px solid #4CAF50;font-weight:500}.benefit-icon{font-size:1.25rem}.example-trips h3{text-align:center;font-size:1.4rem;color:#fff;margin-bottom:1.25rem;font-weight:700}.trips-grid.two-col{grid-template-columns:repeat(2,1fr)}.example-trip.featured{background:linear-gradient(145deg,#fff,#f7fafc);padding:1.5rem;border-radius:16px;text-align:center;border:none;box-shadow:0 4px 20px #00000026;position:relative;overflow:hidden}.example-trip.featured:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0003}.trip-badge{display:inline-block;background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.example-trip.featured strong{display:block;font-size:1.15rem;color:#1a365d;margin-bottom:.5rem;font-weight:700}.example-trip.featured p{font-size:.9rem;color:#4a5568;margin:0 0 .75rem;line-height:1.4}.example-trip.featured .trip-route{display:inline-block;background:#edf2f7;color:#2d3748;padding:.35rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600}.trips-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.example-trip{background:#fff;padding:1rem;border-radius:8px;text-align:center;border:1px solid #dee2e6;transition:border-color .2s ease}.example-trip:hover{border-color:#4caf50}.example-trip strong{display:block;font-size:.95rem;color:#2c3e50;margin-bottom:.25rem}.example-trip p{font-size:.85rem;color:#666;margin:0 0 .5rem}.trip-route{display:block;font-size:.75rem;color:#4caf50;font-weight:500}@media(max-width:900px){.steps-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.steps-grid,.benefits-grid,.trips-grid,.trips-grid.two-col{grid-template-columns:1fr}.hero-subtext{font-size:.85rem;max-width:100%}.hero-cta-btn{padding:.875rem 2rem;font-size:1rem}.how-it-works{padding:1.5rem;margin:1.5rem auto 2rem}.how-it-works h2{font-size:1.5rem}.value-highlight h3,.example-trips h3{font-size:1.2rem}}@media(max-width:480px){.how-it-works{padding:1rem;margin:1rem auto 2rem;border-radius:12px}.step-card{padding:1rem .75rem}.step-number{width:40px;height:40px;font-size:1.2rem}.benefit{font-size:.9rem;padding:.6rem .75rem}.how-it-works h2{font-size:1.5rem}}.header-content{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.header-left{text-align:left}.app-header h1{font-size:2.5rem;color:#2c3e50;margin-bottom:.5rem}.app-header p{font-family:Poppins,sans-serif;font-size:1.7rem;font-weight:700;color:#333;text-align:center;margin:1.6rem auto;letter-spacing:.45px;max-width:800px;line-height:1.3;text-shadow:0 1px 2px rgba(0,0,0,.1)}.header-right{display:flex;align-items:center}.auth-buttons{display:flex;gap:1rem}.btn-login,.btn-register{padding:.625rem 1.25rem;font-size:.95rem;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-login{background-color:#fff;color:#007bff;border:2px solid #007bff}.btn-login:hover{background-color:#007bff;color:#fff}.btn-register{background-color:#28a745;color:#fff}.btn-register:hover{background-color:#218838}.user-menu{display:flex;align-items:center;gap:1rem}.user-greeting{color:#2c3e50;font-weight:500}.btn-logout{padding:.625rem 1.25rem;font-size:.95rem;border-radius:6px;font-weight:500;background-color:#dc3545;color:#fff;border:none;cursor:pointer;transition:background-color .2s}.btn-logout:hover{background-color:#c82333}.app-nav{text-align:center;margin-top:1rem}.nav-link{color:#007bff;text-decoration:none;margin:0 1rem;font-weight:500}.nav-link:hover{text-decoration:underline}.wizard-cta-banner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#1e3a8a,#2456c7);border-radius:8px;color:#fff}.wizard-cta-text{display:flex;flex-direction:column;gap:.25rem}.wizard-cta-text strong{font-size:1.1rem}.wizard-cta-text span{font-size:.9rem;opacity:.85}.wizard-cta-btn{flex-shrink:0;border:none;border-radius:8px;padding:.85rem 1.5rem;min-height:44px;background:#fff;color:#2456c7;font-weight:700;font-size:.95rem;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.wizard-cta-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000040}@media(max-width:768px){.wizard-cta-banner{flex-direction:column;align-items:stretch;text-align:center;gap:.75rem}}.progress-indicator{display:flex;justify-content:center;gap:2rem;margin-bottom:3rem;padding:1rem;background-color:#f8f9fa;border-radius:8px}.step{padding:.75rem 1.5rem;border-radius:6px;font-weight:500;background-color:#e9ecef;color:#6c757d}.step.active{background-color:#007bff;color:#fff}.step.completed{background-color:#28a745;color:#fff}.step-section{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem}.step-section h2{color:#2c3e50;margin-bottom:1rem;font-size:1.8rem}.step-section h3{color:#34495e;margin-bottom:1rem;font-size:1.3rem}button{background-color:#007bff;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;cursor:pointer;transition:background-color .2s}button:hover:not(:disabled){background-color:#0056b3}button:disabled{background-color:#6c757d;cursor:not-allowed}.proceed-btn,.search-btn{background-color:#28a745;font-size:1.1rem;padding:1rem 2rem;margin-top:1.5rem}.proceed-btn:hover:not(:disabled),.search-btn:hover:not(:disabled){background-color:#218838}.reset-btn{background-color:#dc3545}.reset-btn:hover{background-color:#c82333}.step-actions{display:flex;gap:1rem;align-items:center;margin-top:1.5rem}.step-actions .proceed-btn,.step-actions .search-btn{margin-top:0}.back-btn{background-color:#6c757d;font-size:1rem;padding:.75rem 1.5rem}.back-btn:hover{background-color:#5a6268}.month-suggestions{margin-top:2rem;padding:1.5rem;background-color:#f8f9fa;border-radius:8px}.month-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem}.month-btn{background-color:#6c757d;padding:1rem}.month-btn:hover{background-color:#5a6268}input[type=date]{padding:.75rem;border:2px solid #dee2e6;border-radius:6px;font-size:1rem}input[type=date]:focus{outline:none;border-color:#007bff}.trip-name-section{background-color:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.trip-name-label{display:block;font-weight:600;color:#2c3e50;margin-bottom:.5rem;font-size:1rem}.trip-name-input{width:100%;padding:.875rem 1rem;border:2px solid #dee2e6;border-radius:6px;font-size:1rem;transition:border-color .2s;font-family:inherit}.trip-name-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.trip-name-input::placeholder{color:#adb5bd}.trip-name-hint{margin-top:.5rem;font-size:.875rem;color:#6c757d;font-style:italic}.date-range-picker{background-color:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:1rem}.date-inputs{display:flex;gap:2rem;margin-top:1rem}.date-inputs label{display:flex;flex-direction:column;gap:.5rem;font-weight:500}.search-mode-selector{text-align:center;margin:2rem 0}.mode-buttons{display:flex;justify-content:center;gap:1rem;margin-top:1rem}.mode-btn{padding:.875rem 2rem;background-color:#e9ecef;color:#495057;border:2px solid #dee2e6;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:140px}.mode-btn:hover{background-color:#dee2e6;transform:translateY(-1px)}.mode-btn.active{background-color:#007bff;color:#fff;border-color:#007bff;box-shadow:0 2px 8px #007bff4d}.level-pills-container{text-align:center;margin-bottom:1.5rem}.level-pills{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem}.level-pill{padding:.5rem 1.25rem;background-color:#e9ecef;color:#495057;border:2px solid #dee2e6;border-radius:20px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.level-pill:hover:not(:disabled){background-color:#dee2e6;transform:translateY(-1px)}.level-pill.active{background-color:#007bff;color:#fff;border-color:#007bff;box-shadow:0 2px 8px #007bff4d}.level-pill.locked{opacity:.5;cursor:not-allowed}.level-pill .lock-icon{margin-left:.35rem;font-size:.75rem}.level-hint{margin-top:.75rem;font-size:.85rem;color:#6c757d}.team-selector,.venue-selector{margin:1.5rem 0}.venue-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.venue-header h3{margin:0}.select-all-btn{padding:.4rem .85rem;font-size:.82rem;font-weight:600;border:2px solid #0d6efd;border-radius:6px;background:transparent;color:#0d6efd;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.select-all-btn:hover{background:#0d6efd;color:#fff}.divisions-grid,.states-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:1rem}.division-group,.state-group{background-color:#f8f9fa;padding:1rem;border-radius:8px}.division-group h4,.state-group h4{color:#495057;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #dee2e6}.team-option,.venue-option{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem;margin:.25rem 0;cursor:pointer;border-radius:4px;transition:all .2s;border:2px solid transparent;word-break:break-word}.team-option input[type=checkbox],.venue-option input[type=checkbox]{flex-shrink:0;margin-top:3px}.affiliate-tag{font-size:.75rem;color:#6c757d;font-weight:400;font-style:italic}.team-option:hover,.venue-option:hover{background-color:#e9ecef}.team-option:has(input:checked),.venue-option:has(input:checked){background-color:#e7f3ff;border-color:#007bff}.team-option:has(input:checked) span,.venue-option:has(input:checked) span{font-weight:600;color:#007bff}.team-option.disabled,.venue-option.disabled{opacity:.5;cursor:not-allowed}.team-option.disabled span,.venue-option.disabled span{text-decoration:line-through;color:#6c757d}.results-section{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.results-header-left{display:flex;align-items:center;gap:1rem}.results-view-toggle{display:flex;background:#f0f1f5;border-radius:7px;padding:3px;gap:2px}.view-toggle-btn{padding:.25rem .75rem;border:none;background:transparent;border-radius:5px;font-size:.8125rem;font-weight:600;color:#888;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.view-toggle-btn:hover{color:#555}.view-toggle-btn.active{background:#fff;color:#667eea;box-shadow:0 1px 3px #0000001f}.validation-issues-btn{padding:.5rem 1rem;background-color:#fef3c7;color:#92400e;border:1px solid #f59e0b;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.validation-issues-btn:hover{background-color:#fde68a;border-color:#d97706;transform:translateY(-1px)}.results-layout{display:grid;grid-template-columns:1fr 420px;gap:2rem;min-height:500px}.results-main{overflow-y:auto;max-height:70vh;min-height:400px;padding-right:1rem}.results-main::-webkit-scrollbar{width:8px}.results-main::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.results-main::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.results-main::-webkit-scrollbar-thumb:hover{background:#555}.results-sidebar{position:sticky;top:2rem;height:70vh;min-height:400px;overflow-y:auto}@media(max-width:1200px){.results-layout{grid-template-columns:1fr 350px}}@media(max-width:968px){.results-layout{grid-template-columns:1fr;gap:1.5rem}.results-sidebar{position:relative;top:0;height:auto;min-height:auto;order:-1;overflow:visible}.results-main{max-height:none;min-height:auto}}.loading{text-align:center;padding:2rem;color:#6c757d}.error{background-color:#f8d7da;color:#721c24;padding:1rem;border-radius:6px;margin:1rem 0}.leagues-grid{display:flex;flex-direction:column;gap:2rem;margin-top:1rem}.league-group{background-color:#f8f9fa;padding:1.5rem;border-radius:8px;border:2px solid #dee2e6}.league-group h3{color:#495057;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #dee2e6;font-size:1.4rem}.division-group{background-color:#fff;padding:1rem;border-radius:6px;margin-bottom:1rem;border:1px solid #dee2e6}.division-group h4{color:#6c757d;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #e9ecef;font-size:1.1rem}.date-filter-info{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;padding:8px 12px;margin-bottom:16px}.date-filter-info .info-text{margin:0;font-size:14px;color:#856404}.spring-training-section{background-color:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:1.5rem;text-align:center}.spring-training-toggle-main{display:inline-flex;align-items:center;gap:.75rem;cursor:pointer;font-size:1.2rem;font-weight:600;padding:1rem 2rem;background-color:#e9ecef;border-radius:8px;transition:all .2s}.spring-training-toggle-main:hover{background-color:#dee2e6}.spring-training-toggle-main input{width:1.25rem;height:1.25rem;cursor:pointer}.spring-training-toggle-main input:checked+span{color:#28a745}.toggle-description{margin-top:.75rem;color:#6c757d;font-size:.95rem}.game-results{margin-top:1rem}.results-summary{text-align:center;font-size:1.1rem;color:#495057;margin-bottom:2rem;padding:1rem;background-color:#e8f5e9;border-radius:8px}.games-list{display:flex;flex-direction:column;gap:2rem}.date-group{background-color:#f8f9fa;border-radius:12px;overflow:hidden;border:1px solid #dee2e6}.date-header{background-color:#2c3e50;color:#fff;padding:1rem 1.5rem;margin:0;font-size:1.1rem;font-weight:600}.date-games{padding:1rem;display:flex;flex-direction:column;gap:.75rem}.game-card{display:flex;align-items:stretch;background-color:#fff;border-radius:8px;border:1px solid #e9ecef;overflow:hidden;transition:box-shadow .2s}.game-card:hover{box-shadow:0 4px 12px #0000001a}.game-time-badge{display:flex;align-items:center;justify-content:center;min-width:90px;padding:1rem;background-color:#007bff;color:#fff;font-weight:600;font-size:.95rem}.game-info{flex:1;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.5rem}.game-matchup{display:flex;align-items:center;gap:.5rem;font-size:1.1rem}.away-team{color:#495057;font-weight:500}.at{color:#adb5bd;font-size:.9rem}.home-team{color:#2c3e50;font-weight:700}.game-details{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.venue{color:#6c757d;font-size:.9rem}.game-type-badge{display:inline-block;padding:.25rem .6rem;background-color:#e3f2fd;color:#1565c0;border-radius:4px;font-size:.8rem;font-weight:500}.doubleheader-badge{display:inline-block;padding:.25rem .6rem;background-color:#fff3e0;color:#e65100;border-radius:4px;font-size:.8rem;font-weight:500}.no-results{text-align:center;padding:3rem;color:#6c757d;background-color:#f8f9fa;border-radius:8px;font-size:1.1rem}.visit-count-selector{margin:1.5rem 0}.visit-count-description{color:#6c757d;margin-bottom:1.5rem;font-size:1rem}.visit-counts-list{display:flex;flex-direction:column;gap:1rem;background-color:#f8f9fa;padding:1.5rem;border-radius:8px}.visit-count-item{display:flex;align-items:center;background-color:#fff;padding:1rem;border-radius:6px;border:1px solid #dee2e6}.visit-count-label{display:flex;align-items:center;justify-content:space-between;width:100%;cursor:default}.item-name{font-weight:500;color:#2c3e50;flex:1}.count-controls{display:flex;align-items:center;gap:.75rem}.count-btn{width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;background-color:#007bff;border-radius:4px;transition:all .2s}.count-btn:hover:not(:disabled){background-color:#0056b3;transform:scale(1.05)}.count-btn:disabled{background-color:#e9ecef;color:#adb5bd;cursor:not-allowed}.count-input{width:60px;text-align:center;padding:.5rem;border:2px solid #dee2e6;border-radius:4px;font-size:1rem;font-weight:600;color:#2c3e50;background-color:#fff}.count-input:focus{outline:none;border-color:#007bff}.count-input::-webkit-outer-spin-button,.count-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.count-input[type=number]{-moz-appearance:textfield;appearance:textfield}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;position:relative;max-width:450px;width:90%;max-height:90vh;overflow-y:auto}.activation-confirmation-modal{max-width:550px;padding:40px}.activation-confirmation-header{text-align:center;margin-bottom:24px}.activation-confirmation-icon{font-size:64px;display:block;margin-bottom:16px}.activation-confirmation-header h2{font-size:28px;margin:0;color:#2c3e50;font-weight:600}.activation-confirmation-body{text-align:center}.activation-confirmation-message{font-size:18px;color:#555;margin-bottom:24px;line-height:1.6}.activation-status-info{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:16px;margin-bottom:24px;text-align:left}.activation-slots{margin:0 0 8px;font-size:15px;color:#333}.activation-remaining{margin:0;font-size:14px;color:#666}.activation-benefits{background:#e7f3ff;border:1px dashed #3498db;border-radius:8px;padding:20px;margin-bottom:24px;text-align:left}.activation-benefits h3{font-size:18px;margin:0 0 12px;color:#2c3e50;font-weight:600}.activation-benefits ul{list-style:none;padding:0;margin:0}.activation-benefits li{padding:6px 0;font-size:15px;color:#333}.activation-confirmation-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.activation-confirmation-actions .action-button{width:100%;padding:14px 24px;font-size:16px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;border:none}.activation-confirmation-actions .action-button.primary{background:#3498db;color:#fff}.activation-confirmation-actions .action-button.primary:hover{background:#2980b9;transform:translateY(-1px)}.activation-confirmation-actions .action-button.outline{background:#fff;color:#666;border:2px solid #ddd}.activation-confirmation-actions .action-button.outline:hover{background:#f8f9fa;border-color:#999}.activation-note{margin:0;color:#999;font-size:13px}@media(max-width:768px){.hero-integrated{flex-direction:column;gap:1rem;text-align:center}.hero-text{text-align:center}.hero-logo{width:300px}.hero-brand{font-size:2rem}.hero-slogan{font-size:1.2rem}.hero-cta-btn{margin-top:1.25rem;padding:.875rem 2rem;font-size:1rem;display:inline-block;min-height:44px}.divisions-grid,.states-grid{grid-template-columns:1fr;gap:1rem}.month-buttons{grid-template-columns:1fr;gap:.75rem}.activation-confirmation-modal{padding:24px;max-width:95%}.activation-confirmation-header h2{font-size:24px}.activation-confirmation-icon{font-size:48px}}@media(max-width:480px){.hero-logo{width:260px}.hero-brand{font-size:1.75rem}.hero-slogan{font-size:1.1rem}.hero-cta-btn{margin-top:1rem;padding:1rem 2rem;font-size:.95rem;width:90%;max-width:320px;min-height:48px}.divisions-grid,.states-grid{gap:.75rem}.level-pills{gap:.375rem}.level-pill{padding:.5rem .875rem;font-size:.8rem;min-height:44px}}@media(max-width:375px){.hero-cta-btn{width:95%;max-width:100%;padding:1rem 1.25rem;font-size:.9rem}}
