.landing-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:2rem}.landing-content{max-width:800px;width:100%;text-align:center}.landing-header{margin-bottom:3rem}.landing-icon{font-size:5rem;margin-bottom:1rem;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.landing-title{font-size:4rem;font-weight:800;color:var(--text-primary);margin:0 0 1rem;text-shadow:0 2px 4px rgba(0,0,0,.1)}.landing-subtitle{font-size:1.5rem;color:var(--text-secondary);margin:0}.landing-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin:3rem 0}.feature{padding:2rem;background:var(--bg-secondary);border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease}.feature:hover{transform:translateY(-4px);box-shadow:0 4px 12px #00000026}.feature-icon{font-size:2.5rem;display:block;margin-bottom:1rem}.feature h3{font-size:1.25rem;color:var(--text-primary);margin:0 0 .5rem}.feature p{color:var(--text-secondary);margin:0;font-size:.95rem}.email-form{margin:2rem 0;max-width:600px;margin-left:auto;margin-right:auto}.email-input-group{display:flex;flex-direction:column;gap:1rem;margin-bottom:.5rem}.email-input{width:100%;padding:1rem 1.5rem;font-size:1.1rem;border:2px solid var(--border-color);border-radius:50px;background:var(--bg-secondary);color:var(--text-primary);outline:none;transition:all .3s ease}.email-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.email-input:disabled{opacity:.6;cursor:not-allowed}.submit-button{background:linear-gradient(135deg,#1e3a8a,#3b82f6);color:#fff;border:none;padding:1rem 2.5rem;font-size:1.1rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #3b82f64d;white-space:nowrap}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666;background:linear-gradient(135deg,#1e40af,#60a5fa)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{opacity:.6;cursor:not-allowed}.error-message{color:#ef4444;font-size:.95rem;margin:.5rem 0 0;text-align:left;padding-left:1rem}.landing-info{margin-top:2rem;color:var(--text-secondary)}.landing-info p{margin:.5rem 0;font-size:.95rem}.teams-info{font-size:.85rem;opacity:.8}body.dark .feature{background:var(--bg-card)}body.dark .submit-button{background:linear-gradient(135deg,#2563eb,#60a5fa)}body.dark .submit-button:hover:not(:disabled){background:linear-gradient(135deg,#3b82f6,#93c5fd)}@media(max-width:768px){.landing-title{font-size:3rem}.landing-subtitle{font-size:1.25rem}.landing-features{grid-template-columns:1fr}.login-button{padding:.875rem 2rem;font-size:1.1rem}}.theme-toggle{background:none;border:none;font-size:24px;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease;width:40px;height:40px}.theme-toggle:hover{background-color:#ffffff1a}.theme-toggle:active{transform:scale(.95)}.home-screen{flex:1;display:flex;flex-direction:column;background-color:var(--bg-primary)}.header{background-color:var(--bg-header);padding:20px;color:#fff}.header-content{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.header-left,.header-right{display:flex;align-items:center;gap:12px}.feedback-button{padding:8px 16px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.feedback-button:hover{background:#fff3;border-color:#ffffff4d}.logout-button{padding:8px 16px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.logout-button:hover{background:#fff3;border-color:#ffffff4d}.header-icon{font-size:32px}.title{font-size:28px;font-weight:700;color:#fff;margin:0}.subtitle{font-size:14px;color:#ffffffb3;margin:0;padding-left:44px}.games-container{flex:1;padding:16px;max-width:800px;margin:0 auto;width:100%}.section{margin-bottom:16px}.section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.section-title{font-size:22px;font-weight:700;color:var(--text-heading);margin:0 0 4px}.section-subtitle{font-size:14px;color:var(--text-muted);margin:0}.favorites-toggle-container{margin:16px 0;display:flex;justify-content:center}.favorites-toggle{display:flex;align-items:center;gap:8px;padding:12px 24px;background:var(--bg-card);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.favorites-toggle:hover:not(:disabled){border-color:#f59e0b;background:var(--bg-secondary)}.favorites-toggle.active{background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#fff;border-color:#f59e0b}.favorites-toggle:disabled{opacity:.5;cursor:not-allowed}.favorites-icon{font-size:18px}.stream-tester-bottom{display:flex;justify-content:center;margin:32px 0 24px;padding-top:24px;border-top:1px solid var(--border-color)}.tester-button{padding:12px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;box-shadow:0 2px 4px #10b98133}.tester-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #10b9814d}@media(max-width:640px){.section-header{flex-direction:column;align-items:stretch}.tester-button{width:100%}}.teams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-bottom:24px}.upcoming-games-header{font-size:18px;font-weight:600;color:var(--text-heading);margin:24px 0 16px;padding-top:24px;border-top:1px solid var(--border-color)}.team-card{background:var(--bg-secondary);border-radius:12px;padding:16px;transition:all .2s;box-shadow:var(--shadow-sm);display:flex;align-items:stretch;gap:12px}.team-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.team-card-content{flex:1;cursor:pointer}.favorite-button{background:none;border:none;font-size:24px;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;line-height:1;align-self:flex-start}.favorite-button:hover{background:#f59e0b1a;transform:scale(1.1)}.favorite-button:active{transform:scale(.95)}.team-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.team-card-name{font-size:18px;font-weight:600;color:var(--text-primary);margin:0;flex:1}.team-card-sport{font-size:12px;color:var(--text-muted);background:var(--bg-primary);padding:4px 8px;border-radius:6px;white-space:nowrap}.team-card-radio{font-size:14px;color:var(--text-secondary);margin:0}@media(max-width:640px){.teams-grid{grid-template-columns:1fr}}.filters-container{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:6px;flex:1;min-width:200px}.filter-label{font-size:13px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.filter-select{padding:10px 12px;border-radius:8px;border:2px solid var(--gray-200);background-color:var(--bg-secondary);color:var(--text-primary);font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none}.filter-select:hover{border-color:var(--byu-royal)}.filter-select:focus{border-color:var(--byu-royal);box-shadow:0 0 0 3px #0062b81a}.filter-select option{background-color:var(--bg-secondary);color:var(--text-primary);padding:8px}.date-section{margin-bottom:32px}.date-header{margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid var(--gray-200)}.date-title{font-size:18px;font-weight:600;color:var(--text-heading);margin:0 0 2px}.date-subtitle{font-size:13px;color:var(--text-muted);margin:0}.games-list{display:flex;flex-direction:column;gap:12px}.game-card{background-color:var(--bg-secondary);border-radius:12px;padding:16px;border-left:4px solid var(--byu-navy);box-shadow:0 2px 4px var(--shadow);cursor:pointer;transition:transform .2s,box-shadow .2s,background-color .3s ease}.game-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow)}.game-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.sport-badge{display:flex;align-items:center;gap:6px;background-color:var(--byu-royal);padding:6px 12px;border-radius:16px;color:#fff}.sport-icon{font-size:16px}.sport-text{font-size:12px;font-weight:600}.game-time{font-size:16px;font-weight:700;color:var(--text-heading)}.game-details{text-align:center;margin-bottom:12px}.team-name{font-size:20px;font-weight:700;color:var(--text-heading);margin:0 0 4px}.vs-text{font-size:12px;color:var(--text-muted);display:block;margin:2px 0}.opponent{font-size:18px;color:var(--text-secondary);margin:0;font-weight:500}.game-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--border-color)}.location-info{display:flex;flex-direction:column;gap:4px}.location{font-size:12px;color:var(--text-muted)}.tv-channel{font-size:12px;color:var(--text-accent);font-weight:600}.home-badge{background-color:var(--bg-info);color:var(--text-info);font-size:10px;font-weight:700;padding:4px 8px;border-radius:4px;transition:background-color .3s ease}.empty-state{text-align:center;padding:60px 20px}.empty-icon{font-size:64px;display:block;margin-bottom:16px}.empty-text{font-size:18px;color:var(--text-secondary);font-weight:600;margin:0 0 8px}.empty-subtext{font-size:14px;color:var(--text-muted);margin:0}.warning-box{display:flex;align-items:flex-start;gap:12px;background-color:var(--bg-warning);padding:16px;border-radius:8px;border-left:4px solid var(--border-warning);margin-top:16px;transition:background-color .3s ease}.warning-icon{font-size:24px;flex-shrink:0}.warning-content{flex:1}.warning-title{font-size:14px;font-weight:600;color:var(--text-warning);margin:0 0 6px}.warning-text{font-size:13px;color:var(--text-warning-content);margin:0;line-height:1.5}.info-box{display:flex;align-items:center;gap:8px;background-color:var(--bg-info);padding:12px;border-radius:8px;margin-top:16px;transition:background-color .3s ease}.info-icon{font-size:20px}.info-text{font-size:13px;color:var(--text-info);margin:0;flex:1}.player-screen{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-primary)}.player-header{background-color:var(--bg-header);display:flex;align-items:center;justify-content:space-between;padding:16px 20px;color:#fff}.back-button{color:#fff;font-size:16px;padding:8px;cursor:pointer;background:transparent;border:none}.back-button:hover{opacity:.8}.header-title{font-size:18px;font-weight:700;color:#fff;margin:0}.placeholder{width:60px}.player-content{flex:1;max-width:800px;margin:0 auto;width:100%}.game-info{background-color:var(--byu-navy);padding:24px;text-align:center;color:#fff}.sport-badge{display:inline-block;background-color:var(--byu-royal);padding:8px 16px;border-radius:20px;margin-bottom:16px;color:#fff;font-size:14px;font-weight:600}.game-info .team-name{font-size:24px;font-weight:700;color:#fff;margin:0 0 8px}.game-info .team-mode-subtitle{font-size:14px;color:#ffffffb3;margin:8px 0 0}.game-info .vs-text{font-size:14px;color:#ffffffb3;display:block;margin:4px 0}.game-info .opponent{font-size:20px;color:#fff;margin:0;font-weight:500}.game-meta-info{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px}.time-icon{font-size:16px}.game-time{font-size:14px;color:#ffffffb3}.station-info{display:flex;align-items:center;justify-content:center;gap:8px;background-color:var(--bg-secondary);padding:12px;margin:-20px 16px 0;border-radius:8px;box-shadow:0 2px 4px var(--shadow);transition:background-color .3s ease}.station-icon{font-size:20px}.station-name{font-size:16px;font-weight:600;color:var(--text-accent)}.switch-button{margin-left:auto;background-color:var(--bg-primary);color:var(--text-accent);font-size:12px;font-weight:600;padding:6px 12px;border-radius:16px;border:none;cursor:pointer;transition:background-color .2s ease}.switch-button:hover{opacity:.8}.delay-indicator{text-align:center;padding:24px;margin-top:8px}.delay-label{font-size:14px;color:var(--text-muted);margin:0 0 8px}.delay-value{font-size:36px;font-weight:700;color:var(--text-primary);margin:8px 0}.delay-value.live{color:var(--green)}.buffer-message{font-size:12px;color:var(--text-accent);margin-top:8px;font-style:italic}.live-dot{display:inline-block;width:12px;height:12px;border-radius:50%;background-color:var(--green);margin-top:8px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.player-controls{display:flex;align-items:center;justify-content:center;padding:24px}.play-button{width:80px;height:80px;border-radius:50%;background-color:var(--byu-royal);color:#fff;font-size:32px;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;box-shadow:0 4px 8px #0003;transition:transform .2s}.play-button:hover{transform:scale(1.05)}.play-button:active{transform:scale(.95)}.loading-spinner{width:40px;height:40px;border:4px solid var(--spinner-border);border-top-color:var(--byu-royal);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.delay-controls{background-color:var(--bg-card);margin:16px;padding:20px;border-radius:12px;box-shadow:0 2px 4px var(--shadow);transition:background-color .3s ease}.controls-title{font-size:18px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.controls-subtitle{font-size:14px;color:var(--text-muted);margin:0 0 16px}.sync-instructions{background-color:var(--bg-info);border-left:4px solid var(--byu-royal);border-radius:8px;padding:16px;margin-top:20px;display:flex;flex-direction:column;gap:16px}.sync-scenario{display:flex;align-items:flex-start;gap:12px}.scenario-icon{font-size:24px;flex-shrink:0;margin-top:2px}.scenario-text{display:flex;flex-direction:column;gap:4px;flex:1}.scenario-text strong{color:var(--text-primary);font-size:15px}.scenario-hint{color:var(--text-info);font-size:13px}.scenario-action{color:var(--text-secondary);font-size:14px;margin-top:2px}.scenario-action strong{color:var(--text-accent);font-weight:700}.sync-note{margin:8px 0 0;padding-top:12px;border-top:1px solid var(--border-color);color:var(--text-muted);font-size:13px;font-style:italic;line-height:1.5}.controls-section{margin-bottom:20px}.section-label{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.button-row{display:flex;gap:8px;flex-wrap:wrap}.delay-button{flex:1;min-width:70px;background-color:var(--byu-royal);color:#fff;padding:18px 8px;border-radius:8px;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;transition:background-color .2s,opacity .2s}.delay-button.backward{background-color:var(--green)}.delay-button:hover:not(:disabled){opacity:.9}.delay-button:disabled{background-color:var(--gray-300);color:var(--text-muted);cursor:not-allowed}.delay-icon{font-size:32px}.delay-label{font-size:16px;font-weight:700}.volume-control{background-color:var(--bg-card);margin:16px;padding:20px;border-radius:12px;box-shadow:0 2px 4px var(--shadow);transition:background-color .3s ease}.volume-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.volume-icon{font-size:20px}.volume-label{font-size:16px;font-weight:600;color:var(--text-primary);flex:1}.volume-value{font-size:14px;font-weight:600;color:var(--text-accent);min-width:45px;text-align:right}.volume-slider{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to right,var(--byu-royal) 0%,var(--byu-royal) var(--volume-percent, 100%),var(--gray-300) var(--volume-percent, 100%),var(--gray-300) 100%);border-radius:3px;outline:none;cursor:pointer}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;background:#fff;border:3px solid var(--byu-royal);border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0003;transition:transform .2s}.volume-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.volume-slider::-moz-range-thumb{width:20px;height:20px;background:#fff;border:3px solid var(--byu-royal);border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0003;transition:transform .2s}.volume-slider::-moz-range-thumb:hover{transform:scale(1.1)}.help-box{display:flex;align-items:flex-start;gap:12px;background-color:var(--bg-info);padding:16px;margin:16px;border-radius:8px;transition:background-color .3s ease}.help-icon{font-size:20px}.help-text{font-size:13px;color:var(--text-accent);margin:0;flex:1;line-height:1.5}.warning-box{display:flex;align-items:flex-start;gap:12px;background-color:var(--bg-warning);padding:16px;margin:16px;border-radius:8px;border-left:4px solid var(--border-warning);transition:background-color .3s ease}.warning-icon{font-size:20px}.warning-text{font-size:13px;color:var(--text-warning-content);margin:0;flex:1;line-height:1.5}.stream-config-box{margin:16px;padding:20px;background:linear-gradient(135deg,#10b9811a,#0596690d);border:2px solid #10b981;border-radius:12px}.config-icon{font-size:24px;display:block;margin-bottom:8px}.config-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.config-text{font-size:14px;color:var(--text-accent);line-height:1.5;margin:0 0 16px}.config-form{display:flex;flex-direction:column;gap:12px}.config-label{font-size:14px;font-weight:600;color:var(--text-primary)}.config-input,.config-select{padding:12px;border:1px solid var(--border);border-radius:8px;font-size:14px;background:var(--card-bg);color:var(--text-primary);font-family:Courier New,monospace}.config-input:focus,.config-select:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 2px #10b9811a}.config-buttons{display:flex;gap:12px;margin-top:8px}.save-stream-button{flex:1;padding:12px 20px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.save-stream-button:hover{transform:translateY(-1px);box-shadow:0 4px 8px #10b9814d}.cancel-button{padding:12px 20px;background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-button:hover{background:var(--bg-hover)}.config-hint{font-size:13px;color:var(--text-muted);margin:8px 0 0;line-height:1.4}.info-box{margin:16px;padding:16px;background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:12px;display:flex;align-items:center;gap:12px}.info-icon{font-size:20px;flex-shrink:0}.info-text{font-size:14px;color:var(--text-accent);margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.link-button{background:none;border:none;color:#3b82f6;text-decoration:underline;cursor:pointer;font-size:14px;padding:0;font-weight:600}.link-button:hover{color:#2563eb}@media(max-width:640px){.delay-button{min-width:60px;padding:12px 6px}.delay-icon{font-size:18px}.delay-label{font-size:11px}}@media(max-width:480px){.button-row{gap:6px}.delay-button{min-width:50px;padding:10px 4px}.delay-icon{font-size:16px}.delay-label{font-size:10px}}.stream-tester{flex:1;display:flex;flex-direction:column;background-color:var(--bg-primary);min-height:100vh}.tester-header{background:linear-gradient(135deg,var(--byu-navy) 0%,var(--byu-royal) 100%);padding:24px;color:#fff}.back-button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:16px}.back-button:hover{background:#ffffff4d;transform:translate(-2px)}.tester-title{font-size:28px;font-weight:700;margin:0 0 8px}.tester-subtitle{font-size:14px;color:#fffc;margin:0}.tester-container{flex:1;padding:24px;max-width:900px;margin:0 auto;width:100%}.test-section{background-color:var(--bg-secondary);border-radius:12px;padding:24px;box-shadow:0 2px 8px var(--shadow);margin-bottom:24px}.input-label{display:block;font-size:13px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.url-input-group{display:flex;gap:12px;margin-bottom:20px}.stream-input{flex:1;padding:12px 16px;border:2px solid var(--gray-200);border-radius:8px;background-color:var(--bg-primary);color:var(--text-primary);font-size:14px;font-family:Courier New,monospace;transition:border-color .2s}.stream-input:focus{outline:none;border-color:var(--byu-royal);box-shadow:0 0 0 3px #0062b81a}.stream-input::placeholder{color:var(--text-muted);opacity:.6}.test-button{padding:12px 24px;background:linear-gradient(135deg,var(--byu-royal) 0%,var(--byu-navy) 100%);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.test-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0062b84d}.test-button:disabled{opacity:.6;cursor:not-allowed}.status-card{display:flex;align-items:flex-start;gap:16px;padding:20px;border-radius:12px;border:2px solid var(--gray-200);background-color:var(--bg-primary);transition:all .3s}.status-card.status-loading{border-color:#f59e0b;background-color:#f59e0b0d}.status-card.status-playing{border-color:#10b981;background-color:#10b9810d}.status-card.status-error{border-color:#ef4444;background-color:#ef44440d}.status-icon{font-size:32px;line-height:1}.status-content{flex:1}.status-title{font-size:18px;font-weight:600;color:var(--text-heading);margin:0 0 8px}.error-text{color:#ef4444;font-size:14px;margin:8px 0 0}.stream-details{margin-top:12px}.stream-detail{font-size:14px;color:var(--text-primary);margin:4px 0}.success-text{color:#10b981;font-weight:600;margin-top:12px}.stop-button{width:100%;padding:12px;background-color:#ef4444;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;margin-top:16px;transition:all .2s}.stop-button:hover{background-color:#dc2626;transform:translateY(-1px)}.examples-section{background-color:var(--bg-secondary);border-radius:12px;padding:24px;box-shadow:0 2px 8px var(--shadow);margin-bottom:24px}.examples-title{font-size:20px;font-weight:600;color:var(--text-heading);margin:0 0 4px}.examples-subtitle{font-size:14px;color:var(--text-muted);margin:0 0 16px}.examples-list{display:flex;flex-direction:column;gap:12px}.example-card{background-color:var(--bg-primary);border:2px solid var(--gray-200);border-radius:8px;padding:16px;cursor:pointer;transition:all .2s}.example-card:hover{border-color:var(--byu-royal);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow)}.example-card:active{transform:translateY(0)}.example-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.example-name{font-size:15px;font-weight:600;color:var(--text-heading)}.example-format{font-size:12px;font-weight:600;color:var(--byu-royal);background-color:#0062b81a;padding:4px 8px;border-radius:4px}.example-url{font-size:13px;font-family:Courier New,monospace;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-section{background-color:var(--bg-secondary);border-radius:12px;padding:24px;box-shadow:0 2px 8px var(--shadow)}.info-title{font-size:18px;font-weight:600;color:var(--text-heading);margin:0 0 12px}.info-list{margin:0 0 20px;padding-left:24px;color:var(--text-primary);line-height:1.8}.info-list li{font-size:14px;margin-bottom:8px}.warning-box{display:flex;gap:12px;background-color:#f59e0b1a;border-left:4px solid #f59e0b;padding:16px;border-radius:8px}.warning-icon{font-size:24px;line-height:1}.warning-title{font-size:14px;font-weight:600;color:var(--text-heading);margin:0 0 8px}.warning-text{font-size:13px;color:var(--text-primary);margin:0;line-height:1.6}@media(max-width:640px){.url-input-group{flex-direction:column}.test-button{width:100%}.example-header{flex-direction:column;align-items:flex-start;gap:8px}}.radiogarden-info{background:var(--bg-primary);border:1px solid var(--gray-200);border-radius:8px;padding:1rem;margin-bottom:1rem}.radiogarden-description{margin:0 0 1rem;color:var(--text-primary);line-height:1.5}.radiogarden-description a{color:var(--byu-royal);text-decoration:none}.radiogarden-description a:hover{text-decoration:underline}.radiogarden-format{background:var(--bg-secondary);padding:.75rem;border-radius:4px;font-size:.9rem}.radiogarden-format code{background:var(--bg-primary);padding:.2rem .4rem;border-radius:3px;font-family:Courier New,monospace;color:var(--byu-royal);word-break:break-all}.radiogarden-stations{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.radiogarden-card{background:var(--bg-primary);border:2px solid var(--gray-200);border-radius:8px;padding:1rem;cursor:pointer;transition:all .2s ease}.radiogarden-card:hover{border-color:var(--byu-royal);background:var(--bg-secondary);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow)}.radiogarden-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;gap:1rem;flex-wrap:wrap}.radiogarden-name{font-weight:600;color:var(--text-heading)}.radiogarden-location{font-size:.85rem;color:var(--text-muted)}.radiogarden-id{font-size:.85rem;color:var(--text-muted);margin-bottom:.5rem;font-family:Courier New,monospace}.radiogarden-links{margin-top:.5rem}.radiogarden-link{display:inline-block;font-size:.85rem;color:var(--byu-royal);text-decoration:none;padding:.25rem .5rem;border:1px solid var(--byu-royal);border-radius:4px;transition:all .2s ease}.radiogarden-link:hover{background:var(--byu-royal);color:#fff}.method-section{margin-bottom:1.5rem}.method-title{font-size:1rem;font-weight:600;color:var(--text-heading);margin-bottom:.5rem}.method-section code{background:var(--bg-primary);padding:.1rem .3rem;border-radius:3px;font-family:Courier New,monospace;font-size:.85rem;color:var(--byu-royal)}.method-section a{color:var(--byu-royal);text-decoration:none}.method-section a:hover{text-decoration:underline}.app{min-height:100vh;background-color:var(--gray-100);display:flex;flex-direction:column}:root{--byu-navy: #002E5D;--byu-royal: #0062B8;--byu-white: #FFFFFF;--gray-100: #F5F5F5;--gray-200: #EEEEEE;--gray-300: #E0E0E0;--gray-600: #666666;--gray-700: #999999;--green: #00AA00;--bg-primary: #F5F5F5;--bg-secondary: #FFFFFF;--bg-header: #002E5D;--bg-card: #FFFFFF;--bg-info: #E8F4F8;--bg-warning: #FFF4E6;--text-primary: #000000;--text-secondary: #333333;--text-muted: #666666;--text-heading: #002E5D;--text-accent: #0062B8;--text-info: #0062B8;--text-warning: #E65100;--text-warning-content: #6B4423;--border-color: #EEEEEE;--border-warning: #FF9800;--shadow: rgba(0, 0, 0, .1);--spinner-border: #E0E0E0}[data-theme=dark]{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-header: #0a1929;--bg-card: #2d2d2d;--bg-info: #1e3a50;--bg-warning: #3d2f1f;--text-primary: #ffffff;--text-secondary: #f0f0f0;--text-muted: #b8b8b8;--text-heading: #5ab3ff;--text-accent: #66bdff;--text-info: #80d4ff;--text-warning: #ffa866;--text-warning-content: #e0b080;--border-color: #505050;--border-warning: #e68a00;--shadow: rgba(0, 0, 0, .4);--spinner-border: #505050}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}#root{min-height:100vh;display:flex;flex-direction:column}button{cursor:pointer;border:none;background:none;font-family:inherit}button:disabled{cursor:not-allowed;opacity:.5}
