@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;max-width:400px;padding:40px;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{margin-bottom:30px;text-align:center}.login-header h2{color:#333;font-size:28px;font-weight:600;margin:0 0 10px}.login-header p{color:#666;font-size:14px;margin:0}.login-form{gap:20px}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{font-size:14px;font-weight:500}.form-group input{border:2px solid #e1e5e9;border-radius:8px;font-size:16px;padding:12px 16px;transition:border-color .2s ease}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;font-size:14px;padding:12px}.success-message{background-color:#efe;border:1px solid #cfc;border-radius:8px;color:#363;font-size:14px;padding:12px}.login-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 24px;transition:transform .2s ease,box-shadow .2s ease}.login-button:hover:not(:disabled){box-shadow:0 8px 20px #667eea4d;transform:translateY(-2px)}.login-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.login-footer{border-top:1px solid #e1e5e9;color:#666;font-size:12px;margin-top:30px;padding-top:20px;text-align:center}.login-footer p{margin:4px 0}.login-footer strong{color:#333}.form-switch{margin-top:20px;text-align:center}.switch-button{background:none;border:none;color:#667eea;cursor:pointer;font-size:14px;padding:8px;text-decoration:underline;transition:color .2s ease}.switch-button:hover:not(:disabled){color:#5a6fd8}.switch-button:disabled{cursor:not-allowed;opacity:.6}.continue-without-account-button{background:none;border:none;color:#999;cursor:pointer;font-size:13px;margin-bottom:10px;padding:6px;text-decoration:none;transition:color .2s ease}.continue-without-account-button:hover:not(:disabled){color:#777}.continue-without-account-button:disabled{cursor:not-allowed;opacity:.6}.social-login{display:flex;flex-direction:column;gap:12px}.social-button{align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:10px;justify-content:center;padding:12px 16px;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.social-button.google{background:#ea4335;box-shadow:0 8px 20px #ea433540}.social-button:hover:not(:disabled){box-shadow:0 10px 24px #0000002e;transform:translateY(-1px)}.social-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.navigation{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nav-container{gap:24px;height:60px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.nav-brand,.nav-container{align-items:center;display:flex}.nav-brand{flex-shrink:0;gap:16px}.brand-link{align-items:center;color:#2d3748;display:flex;font-size:20px;font-weight:700;text-decoration:none;transition:color .2s ease}.brand-link:hover{color:#4299e1}.brand-icon{height:24px;margin-right:8px;object-fit:contain;width:24px}.brand-text{font-size:18px}.current-league-badge{align-items:center;border-radius:20px;box-shadow:0 2px 4px #0003;color:#fff;display:flex;font-size:.9rem;font-weight:600;gap:8px;padding:6px 16px}.nav-links{flex:1 1;gap:20px}.nav-actions,.nav-links{align-items:center;display:flex}.nav-actions{flex-shrink:0;gap:18px}.nav-link{border-radius:6px;color:#4a5568;font-size:16px;font-weight:500;padding:8px 14px;position:relative;text-decoration:none;transition:all .2s ease;white-space:nowrap}.nav-link.nav-utility{font-weight:600}.nav-link:hover{background-color:#f7fafc;color:#2d3748}.nav-link.active{background-color:#ebf8ff;color:#4299e1}.nav-link.active:after{background-color:#4299e1;border-radius:1px;bottom:-1px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:20px}.nav-user{align-items:center;display:flex;gap:15px}.user-info{color:#4a5568}.logout-btn,.user-info{font-size:14px;font-weight:500}.logout-btn{background:#e53e3e;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:8px 16px;transition:all .2s ease}.logout-btn:hover{background:#c53030;transform:translateY(-1px)}@media (max-width:1024px){.nav-container{flex-wrap:wrap;height:auto;padding:12px 20px 16px}.nav-links{flex-wrap:wrap;gap:12px;justify-content:center;order:3;width:100%}.nav-actions{gap:12px;justify-content:flex-end;order:2;width:100%}.nav-brand{order:1}}@media (max-width:768px){.nav-actions{align-items:stretch;flex-direction:column}.nav-user{justify-content:space-between}.nav-links{flex-direction:column}.logout-btn,.user-info{font-size:12px}.logout-btn{padding:6px 12px}}.landing-page{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;min-height:100vh}.landing-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-bottom:1px solid #fff3;padding:20px 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-left{gap:20px}.red-flag-logo{filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));height:80px;width:auto}.header-text h1{color:#fff;font-size:36px;font-weight:700;margin:0;text-shadow:0 2px 4px #0000004d}.header-text p{color:#fff;font-size:16px;margin:5px 0 0;opacity:.9}.header-right{gap:15px}.header-link{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:2px solid #fff3;border-radius:8px;color:#fff;font-weight:600;padding:9px 18px;text-decoration:none;transition:all .2s ease}.header-link:hover{background:#fff3;border-color:#ffffff73;transform:translateY(-2px)}.login-toggle-btn,.logout-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .2s ease}.login-toggle-btn:hover,.logout-btn:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}.login-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.login-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-width:400px;padding:30px;width:100%}.landing-main{align-items:center;display:flex;flex:1 1;justify-content:center;padding:40px 20px}.landing-container{max-width:1200px;width:100%}.platform-selection{margin-bottom:60px}.platform-selection h2{color:#fff;font-size:32px;margin-bottom:40px;text-align:center;text-shadow:0 2px 4px #0000004d}.platform-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:40px}.platform-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;color:#fff;cursor:pointer;display:block;overflow:hidden;padding:40px;position:relative;text-align:center;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease}.platform-card:hover{box-shadow:0 20px 40px #0003;transform:translateY(-10px)}.platform-card.ftc-nfl{background:linear-gradient(135deg,#ffd7001a,#ff8c001a);border-color:#ffd7004d}.platform-card.ftc-live{background:linear-gradient(135deg,#22c55e1a,#10b9811a);border-color:#22c55e4d}.platform-icon{display:block;font-size:60px;margin-bottom:20px}.platform-card h3{font-size:28px;font-weight:700;margin:0 0 15px}.platform-card p{font-size:18px;margin:0 0 25px;opacity:.9}.platform-features{list-style:none;margin:0 0 30px;padding:0;text-align:left}.platform-features li{font-size:16px;padding:8px 0 8px 25px;position:relative}.platform-features li:before{color:#4ade80;content:"✓";font-weight:700;left:0;position:absolute}.platform-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-block;font-size:16px;font-weight:600;padding:15px 30px;text-decoration:none;transition:all .3s ease;width:100%}.platform-button:hover{box-shadow:0 10px 25px #667eea66;transform:translateY(-2px)}.platform-button.coming-soon{background:linear-gradient(135deg,#6b7280,#4b5563);cursor:not-allowed;opacity:.7}.platform-button.coming-soon:hover{box-shadow:none;transform:none}.features{margin-top:40px}.features h2{color:#fff;font-size:28px;margin-bottom:30px;text-align:center;text-shadow:0 2px 4px #0000004d}.feature-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.feature-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;color:#fff;padding:25px;transition:transform .2s ease,box-shadow .2s ease}.feature-card:hover{box-shadow:0 10px 30px #0003;transform:translateY(-5px)}.feature-icon{font-size:40px;margin-bottom:15px}.feature-card h3{font-size:20px;margin:0 0 10px}.feature-card p{font-size:14px;opacity:.9}.welcome-container{max-width:800px;width:100%}.welcome-card{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;padding:40px;text-align:center}.welcome-header h1{color:#2d3748;font-size:36px;font-weight:700;margin:0 0 10px}.welcome-header p{color:#718096;font-size:18px;margin:0 0 30px}.welcome-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:40px}.action-button{border-radius:8px;display:inline-block;font-size:16px;font-weight:600;padding:12px 24px;text-decoration:none;transition:all .2s ease}.action-button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.action-button.primary:hover{box-shadow:0 8px 20px #667eea4d;transform:translateY(-2px)}.action-button.secondary{background:#f7fafc;border:2px solid #e2e8f0;color:#4a5568}.action-button.secondary:hover{background:#edf2f7;transform:translateY(-2px)}.welcome-info{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:25px;text-align:left}.welcome-info h3{color:#2d3748;font-size:20px;margin:0 0 15px}.welcome-info ul{color:#4a5568;margin:0;padding-left:20px}.welcome-info li{font-size:16px;margin-bottom:8px}@media (max-width:768px){.header-content{flex-direction:column;gap:20px;text-align:center}.header-left{flex-direction:column;gap:15px}.red-flag-logo{height:60px}.header-text h1{font-size:28px}.feature-grid,.platform-grid{grid-template-columns:1fr}.welcome-actions{align-items:center;flex-direction:column}.action-button{width:200px}.platform-card{padding:30px 20px}.platform-icon{font-size:50px}.platform-card h3{font-size:24px}}.app-layout{display:flex;flex-direction:column;min-height:100vh}.main-content{background-color:#f7fafc;flex:1 1}.league-selector{flex-direction:column;gap:32px}.league-selector--standalone{background:radial-gradient(circle at 12% 18%,#4f46e51f,#0000 55%),radial-gradient(circle at 88% 12%,#0ea5e91a,#0000 45%),linear-gradient(180deg,#eef2ff,#f8fafc 45%,#f1f5f9);color:#0f172a;min-height:100vh;padding-bottom:80px}.league-selector--embedded{color:#0f172a}.league-selector--embedded .league-selector-body{padding:0}.league-selector--embedded .league-selection h2,.league-selector--embedded .league-selection-subtitle{color:#0f172a}.league-selector-hero{margin:0 auto;max-width:1200px;padding:72px 24px 48px}.hero-content{background:linear-gradient(135deg,#0f172aeb,#1e40afeb);border:1px solid #1e3a8a59;border-radius:24px;box-shadow:0 32px 70px #0f172a59;color:#f8fafc;gap:32px;padding:48px}.hero-content,.hero-header{display:flex;flex-direction:column}.hero-header{gap:20px;max-width:720px}.hero-eyebrow{color:#e2e8f0b3;font-size:.75rem;font-weight:600;letter-spacing:.35em;text-transform:uppercase}.hero-content h1{font-size:3rem;font-weight:700;line-height:1.1;margin:0}.hero-subtitle{color:#e2e8f0d1;font-size:1.15rem;line-height:1.6;margin:0}.hero-actions{align-items:center}.hero-primary{background:linear-gradient(135deg,#6366f1,#7c3aed);border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:1.05rem;font-weight:600;padding:16px 28px;transition:transform .2s ease,box-shadow .2s ease}.hero-primary:hover{box-shadow:0 18px 34px #6366f159;transform:translateY(-1px)}.hero-secondary-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-link{align-items:center;border:1px solid #94a3b84d;border-radius:999px;color:#e2e8f0e6;display:inline-flex;font-weight:500;gap:6px;padding:10px 18px;text-decoration:none;transition:all .2s ease}.hero-link:hover{background:#94a3b82e;border-color:#94a3b88c;color:#f8fafc}.hero-metrics{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.hero-metric{background:#0f172aa6;border:1px solid #1e3a8a59;border-radius:18px;display:flex;flex-direction:column;gap:8px;padding:18px 20px}.hero-metric span{color:#e2e8f0a3;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.hero-metric strong{color:#f8fafc;font-size:1.75rem;font-weight:700}.hero-highlights{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.highlight-card{background:#0f172a8c;border:1px solid #1e40af4d;border-radius:18px;color:#e2e8f0eb;display:flex;flex-direction:column;gap:12px;padding:24px}.highlight-card h3{color:#f8fafc;font-size:1.15rem;margin:0}.highlight-card p{line-height:1.55;margin:0}.highlight-links{display:flex;flex-wrap:wrap;gap:12px}.highlight-links a{color:#cbd5f5;font-size:.95rem;font-weight:600;text-decoration:none}.highlight-links a:hover{text-decoration:underline}.league-selector-body{margin:0 auto;max-width:1200px;padding:0 24px 72px}.league-selection{margin-bottom:60px}.league-selection h2{color:#0f172a;font-size:2rem;font-weight:700;margin-bottom:8px;text-align:center}.league-selection-subtitle{color:#1f2937;font-size:1.05rem;margin-bottom:40px;text-align:center}.league-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));margin-bottom:40px}.league-card{background:#fff;border:2px solid #0000;border-radius:18px;box-shadow:0 10px 25px #0f172a14;cursor:pointer;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.league-card:hover{border-color:inherit;box-shadow:0 24px 40px #0f172a29;transform:translateY(-6px)}.league-card-header{align-items:center;color:#fff;display:flex;gap:16px;padding:24px}.league-icon{font-size:2.5rem}.league-card-header h3{font-size:1.75rem;font-weight:700;margin:0}.league-card-body{color:#1f2937;padding:24px}.league-card-body h4{font-size:1.25rem;font-weight:600;margin:0 0 6px}.league-sport{color:#4b5563;font-size:.95rem;font-weight:500;margin:0 0 16px}.league-description{color:#4a5568;font-size:1rem;line-height:1.5;margin:0}.league-card-footer{padding:0 24px 24px}.select-league-btn{border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 20px;transition:transform .2s ease;width:100%}.select-league-btn:hover{transform:translateY(-1px)}.platform-overview{background:#fff;border-radius:20px;box-shadow:0 20px 45px #0f172a1f;margin-bottom:40px;padding:44px}.platform-overview h2{color:#1f2937;font-size:2.1rem;font-weight:700;margin:0 0 32px;text-align:center}.features-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.feature-card{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:14px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{box-shadow:0 14px 28px #0f172a1a;transform:translateY(-4px)}.feature-icon{font-size:3rem;margin-bottom:16px}.feature-card h3{color:#1f2937;font-weight:600;margin:0 0 12px}.feature-card p{color:#4b5563;font-size:1rem;line-height:1.5;margin:0}.getting-started{border-radius:20px;box-shadow:0 20px 45px #0f172a1f;padding:44px}.getting-started h2{color:#1f2937;font-size:2.1rem;font-weight:700;margin:0 0 32px;text-align:center}.steps-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.step-card{background:linear-gradient(135deg,#6366f1,#7c3aed);border-radius:14px;color:#fff;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.step-card:hover{box-shadow:0 18px 32px #4f46e547;transform:translateY(-4px)}.step-number{background:#fff3;border:2px solid #fff;font-size:1.5rem;height:52px;margin:0 auto 16px;width:52px}.step-card h3{margin:0 0 12px}.step-card p{opacity:.95}@media (max-width:1024px){.hero-content{padding:36px}.hero-content h1{font-size:2.4rem}}@media (max-width:768px){.hero-actions{align-items:stretch;flex-direction:column}.hero-secondary-actions{width:100%}.hero-link{justify-content:center}.features-grid,.hero-highlights,.league-grid,.steps-grid{grid-template-columns:1fr}.getting-started,.platform-overview{padding:28px}}.ftc-home{background:linear-gradient(180deg,#fff,#f8fafc 35%,#f1f5f9);display:flex;flex-direction:column;gap:32px;min-height:calc(100vh - 60px);padding:32px 24px 48px}.home-hero{grid-gap:24px;background:linear-gradient(135deg,#1e3a8a,#312e81);border-radius:24px;box-shadow:0 28px 60px #1e40af47;color:#f8fafc;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));padding:40px}.home-hero-content{display:flex;flex-direction:column;gap:18px}.home-eyebrow{color:#e2e8f0b3;font-size:.75rem;letter-spacing:.32em;text-transform:uppercase}.home-hero h1{font-size:2.6rem;font-weight:700;line-height:1.1;margin:0}.home-hero p{color:#e2e8f0e6;font-size:1.1rem;margin:0}.home-hero-actions{display:flex;flex-wrap:wrap;gap:12px}.home-action{align-items:center;border-radius:999px;display:inline-flex;font-weight:600;justify-content:center;padding:12px 24px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.home-action.primary{background:#f8fafc;box-shadow:0 14px 28px #0f172a2e;color:#1e3a8a}.home-action.secondary{background:#0f172a33;color:#f8fafc}.home-action:hover{transform:translateY(-1px)}.home-hero-panels{grid-gap:16px;display:grid;gap:16px}.home-panel{background:#0f172a59;border:1px solid #94a3b866;border-radius:18px;display:flex;flex-direction:column;gap:10px;padding:20px 22px}.home-panel h3{font-size:1.15rem;font-weight:600;margin:0}.home-panel p{font-size:1.05rem;font-weight:600;margin:0}.home-panel-footnote{color:#e2e8f0cc;font-size:.85rem}.home-panel ul{grid-gap:6px;display:grid;gap:6px;margin:0;padding-left:18px}.home-main{grid-gap:24px;display:grid;gap:24px;grid-template-columns:2.25fr 1fr}.home-primary{background:#fff;border-radius:20px;box-shadow:0 18px 45px #0f172a1f;padding:28px}.home-sidebar{gap:20px}.home-sidebar,.sidebar-card{display:flex;flex-direction:column}.sidebar-card{background:#fff;border-radius:18px;box-shadow:0 12px 30px #0f172a14;gap:12px;padding:22px}.sidebar-card h3{color:#0f172a;font-size:1.2rem;font-weight:600;margin:0}.sidebar-card p{color:#475569;line-height:1.5;margin:0}.sidebar-card ol{grid-gap:6px;color:#1f2937;display:grid;font-weight:500;gap:6px;margin:0;padding-left:18px}.sidebar-links{display:flex;gap:12px}.sidebar-links a{color:#1e3a8a;font-weight:600;text-decoration:none}.sidebar-links a:hover{text-decoration:underline}@media (max-width:1024px){.home-main{grid-template-columns:1fr}}@media (max-width:768px){.ftc-home{padding:24px 16px 36px}.home-hero{padding:28px}.home-hero h1{font-size:2.1rem}.home-primary{padding:20px}}.league-dashboard{background:#f7fafc;min-height:100vh}.league-dashboard-header{box-shadow:0 2px 4px #0000001a;color:#fff;padding:40px 20px}.league-title{align-items:center;display:flex;gap:24px}.league-icon-large{font-size:4rem}.league-dashboard-header h1{font-size:2.5rem;font-weight:700;margin:0 0 8px}.league-subtitle{font-size:1.25rem;margin:0;opacity:.95}.league-dashboard-content{margin:0 auto;max-width:1400px;padding:40px 20px}.quick-actions{margin-bottom:40px}.quick-actions h2{color:#2d3748;font-size:1.75rem;font-weight:600;margin:0 0 24px}.action-cards{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.action-card{background:#fff;border-radius:12px;border-top:4px solid;box-shadow:0 2px 4px #0000001a;color:inherit;padding:32px;text-decoration:none;transition:all .3s ease}.action-card:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-4px)}.action-card .card-icon{font-size:3rem;margin-bottom:16px}.action-card h3{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0 0 8px}.action-card p{color:#718096;font-size:1rem;line-height:1.5;margin:0}.recent-activity{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:40px;padding:32px}.recent-activity h2{color:#2d3748;font-size:1.75rem;font-weight:600;margin:0 0 24px}.activity-list{display:flex;flex-direction:column;gap:16px}.activity-item{background:#f7fafc;border-radius:8px;gap:16px;padding:16px}.activity-icon,.activity-item{align-items:center;display:flex}.activity-icon{border-radius:50%;color:#fff;font-size:1.5rem;height:48px;justify-content:center;width:48px}.activity-content{flex:1 1}.activity-content p{color:#2d3748;margin:0 0 4px}.activity-time{color:#718096;font-size:.875rem}.league-info{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:40px;padding:32px}.league-info h2{color:#2d3748;font-size:1.75rem;font-weight:600;margin:0 0 24px}.info-card{display:flex;flex-direction:column;gap:16px}.info-row{background:#f7fafc;border-radius:8px;padding:16px}.info-label{font-weight:600;min-width:150px}.getting-started{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:32px}.getting-started h2{color:#2d3748;font-size:1.75rem;font-weight:600;margin:0 0 24px}.steps-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.step-card{background:#f7fafc;border-left:4px solid;border-radius:12px;padding:24px}.step-number{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:1.25rem;font-weight:700;height:40px;justify-content:center;margin-bottom:16px;width:40px}.step-card h3{color:#2d3748;font-size:1.25rem;font-weight:600;margin:0 0 8px}.step-card p{color:#4a5568;font-size:1rem;line-height:1.5;margin:0}.league-dashboard-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:100vh}@media (max-width:768px){.league-title{align-items:flex-start;flex-direction:column;gap:16px}.league-icon-large{font-size:3rem}.league-dashboard-header h1{font-size:2rem}.action-cards,.steps-grid{grid-template-columns:1fr}.info-row{flex-direction:column;gap:8px}}.agd-container{background:#f1f5f9;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh;padding:32px}.agd-header{background:#fff;border:1px solid #94a3b826;border-radius:16px;box-shadow:0 6px 24px #0f172a14;display:flex;flex-direction:column;gap:16px;padding:24px}.agd-header-text h1{color:#0f172a;font-size:28px;margin:8px 0}.agd-header-text p{color:#475569;line-height:1.5;margin:0;max-width:620px}.agd-breadcrumb{align-items:center;color:#64748b;display:inline-flex;font-size:13px;gap:8px}.agd-breadcrumb a{color:#2563eb;font-weight:600;text-decoration:none}.agd-breadcrumb span:last-child{color:#0f172a;font-weight:600}.agd-header-controls{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px}.agd-header-actions{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-top:16px}.agd-header-timestamps{color:#475569;display:flex;flex-direction:column;font-size:14px;gap:6px;min-width:220px}.agd-header-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.agd-header-button{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:6px;box-shadow:0 8px 20px #2563eb40;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:transform .15s ease,box-shadow .15s ease,background .2s ease}.agd-header-button:hover:not(:disabled){box-shadow:0 12px 24px #2563eb4d;transform:translateY(-1px)}.agd-header-button:disabled{background:#94a3b8;box-shadow:none;cursor:not-allowed}.agd-header-button.secondary{background:#4b5563;box-shadow:0 8px 20px #47556940}.agd-header-button.secondary:hover:not(:disabled){box-shadow:0 12px 24px #4755694d}.agd-header-button.tertiary{background:#0f172a;box-shadow:0 8px 24px #0f172a40;color:#fff}.agd-header-button.tertiary:hover:not(:disabled){box-shadow:0 12px 28px #0f172a59}.agd-header-button.ghost{background:linear-gradient(135deg,#e2e8f0,#cbd5f5);box-shadow:0 6px 18px #94a3b847;color:#0f172a}.agd-header-button.ghost:hover:not(:disabled){box-shadow:0 10px 22px #94a3b857}.agd-header-button.ghost:disabled{background:#e2e8f0;box-shadow:none;color:#94a3b8}.agd-field{display:flex;flex-direction:column;gap:6px}.agd-field-inline-help label{align-items:center;display:flex;gap:8px}.agd-help-trigger{align-items:center;background:#2563eb1f;border:none;border-radius:999px;color:#1d4ed8;cursor:pointer;display:inline-flex;font-weight:700;height:24px;justify-content:center;transition:background .2s ease,transform .2s ease;width:24px}.agd-help-trigger:hover{background:#2563eb38;transform:translateY(-1px)}.agd-field label{color:#475569;font-size:12px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}.agd-field input,.agd-field select{background:#fff;border:1px solid #cbd5e0;border-radius:8px;box-shadow:inset 0 1px 2px #0f172a0d;color:#1e293b;font-size:14px;height:36px;min-width:160px;padding:6px 10px}.agd-field input:focus,.agd-field select:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb26;outline:none}.agd-meta{color:#475569;display:flex;flex-direction:column;font-size:13px;gap:4px}.agd-refresh{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;box-shadow:0 8px 20px #2563eb40;color:#fff;cursor:pointer;font-weight:600;padding:10px 18px;transition:transform .15s ease,box-shadow .15s ease}.agd-refresh:disabled{background:#94a3b8;box-shadow:none;cursor:not-allowed}.agd-refresh:not(:disabled):hover{box-shadow:0 12px 26px #2563eb47;transform:translateY(-1px)}.agd-error{background:#fee2e2;border:1px solid #fecaca;border-radius:12px;color:#b91c1c;margin-top:20px;padding:14px 18px}.agd-main{display:flex;flex-direction:column;gap:24px;margin-top:24px}.agd-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.agd-stats-row{margin-bottom:4px}.agd-stat{background:#fff;border:1px solid #94a3b82e;border-radius:12px;box-shadow:0 4px 14px #0f172a14;padding:14px;text-align:center}.agd-stat span{color:#64748b;display:block;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.agd-stat strong{color:#0f172a;display:block;font-size:22px;margin-top:6px}.agd-filters{background:#fff;border:1px solid #94a3b829;border-radius:14px;box-shadow:0 6px 20px #0f172a0f;padding:20px}.agd-filters-grid{grid-gap:16px;align-items:flex-end;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.agd-filter-actions{display:flex;gap:10px;grid-column:1/-1;justify-content:flex-end}.agd-filter-actions button{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:8px 14px}.agd-filter-actions button[type=submit]{background:#2563eb;color:#fff}.agd-filter-actions button[type=button]{background:#e2e8f0;color:#1e293b}.agd-filter-actions button:disabled{cursor:not-allowed;opacity:.6}.agd-warning{background:#fff8e6;border:1px solid #fcd34d;border-radius:10px;color:#92400e;font-size:13px;padding:12px 16px}.agd-warning-inline{margin-top:-8px}.agd-table-card{background:#fff;border:1px solid #94a3b82e;border-radius:16px;box-shadow:0 10px 28px #0f172a14;flex:1 1;padding:24px}.agd-table-summary{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.agd-summary-card{background:#f8fafc;border:1px solid #94a3b838;border-radius:12px;box-shadow:inset 0 1px 0 #ffffffbf;flex:0 0 auto;min-width:120px;padding:10px 14px;text-align:center}.agd-summary-card span{color:#64748b;display:block;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.agd-summary-card strong{color:#0f172a;display:block;font-size:20px;margin-top:6px}.agd-loading{align-items:center;color:#475569;display:flex;flex-direction:column;gap:12px;padding:80px 0}.agd-spinner{animation:agd-spin .8s linear infinite;border:4px solid #cbd5f5;border-radius:50%;border-top-color:#2563eb;height:32px;width:32px}@keyframes agd-spin{to{transform:rotate(1turn)}}.agd-active-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.agd-pill{background:#dcfce7;border:1px solid #16653426;border-radius:999px;box-shadow:inset 0 1px 0 #fff9,0 6px 12px #1665341f;color:#166534;font-size:13px;font-weight:600;padding:8px 14px}.agd-active-empty{align-items:center;background:#f8fafc;border:1px dashed #cbd5f5;border-radius:12px;color:#475569;display:flex;gap:12px;margin-bottom:20px;padding:14px 16px}.agd-active-empty-icon{font-size:22px}.agd-table-container{border:1px solid #94a3b838;border-radius:12px;overflow-x:auto}.agd-table-container table{border-collapse:collapse;font-size:14px;min-width:1080px;width:100%}.agd-table-container td,.agd-table-container th{border-bottom:1px solid #e2e8f0;padding:12px 14px;text-align:left}.agd-table-container th{background:#f8fafc;color:#0f172a;font-weight:600}.agd-table-container td.numeric-col,.agd-table-container th.numeric-col{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.agd-table-container tbody tr:hover{background:#f1f5f9}.agd-table-container tbody tr.agd-row-link{cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.agd-table-container tbody tr.agd-row-link:focus-visible{outline:2px solid #0284c7;outline-offset:-2px}.agd-row-active{background:#f0fdf4;box-shadow:inset 3px 0 0 #22c55e}.agd-row-active:hover{background:#dcfce7}.agd-row-inactive:hover{background:#f1f5f9}.agd-empty-row{color:#475569;font-size:14px;padding:24px 16px;text-align:center}.agd-help-overlay{align-items:center;background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1200}.agd-help-content{background:#fff;border:1px solid #94a3b840;border-radius:16px;box-shadow:0 24px 48px #0f172a40;display:flex;flex-direction:column;width:min(420px,100%)}.agd-help-header{align-items:center;border-bottom:1px solid #94a3b833;display:flex;justify-content:space-between;padding:18px 22px 12px}.agd-help-header h2{color:#0f172a;font-size:20px;margin:0}.agd-help-close{background:none;border:none;color:#475569;cursor:pointer;font-size:20px;transition:color .2s ease}.agd-help-close:hover{color:#1d4ed8}.agd-help-body{color:#334155;font-size:15px;line-height:1.6;padding:18px 22px}.agd-help-footer{border-top:1px solid #94a3b833;display:flex;justify-content:flex-end;padding:16px 22px 22px}.agd-help-footer button{background:#2563eb;border:none;border-radius:8px;box-shadow:0 8px 16px #2563eb33;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px}.agd-last-update{color:#475569;font-size:14px}.agd-polling-overview{background:linear-gradient(135deg,#0e749014,#3b82f60d);border:1px solid #0e74902e;border-radius:18px;box-shadow:0 12px 28px #0f172a14;margin:32px 0;padding:24px}.agd-polling-header{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.agd-polling-header h2{color:#0f172a;font-size:22px;font-weight:700;margin:0}.agd-polling-header p{color:#334155;font-size:14px;margin:4px 0 0}.agd-polling-meta{color:#1d4ed8;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:6px}.agd-polling-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.agd-metric-card{background:#fff;border:1px solid #94a3b84d;border-radius:16px;box-shadow:0 10px 24px #0f172a0f;display:flex;flex-direction:column;gap:6px;padding:18px}.agd-metric-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}.agd-metric-card strong{color:#0f172a;font-size:22px}.agd-metric-sub{color:#475569;font-size:13px}@media (max-width:1080px){.agd-layout{flex-direction:column}.agd-sidebar{width:100%}.agd-header-controls{align-items:flex-start;flex-direction:column}.agd-header-actions{align-items:flex-start;gap:16px}.agd-meta{flex-direction:row;flex-wrap:wrap;gap:12px}}@media (max-width:768px){.agd-polling-header{align-items:flex-start;flex-direction:column}.agd-polling-meta{flex-direction:row;flex-wrap:wrap;gap:12px}}.agd-pipeline{margin:36px 0}.agd-pipeline h2{color:#0f172a;font-size:22px;font-weight:700;margin-bottom:12px}.agd-pipeline-intro{color:#475569;font-size:14px;margin:0 0 18px}.agd-pipeline-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.agd-pipeline-card{background:#fff;border:1px solid #94a3b840;border-radius:18px;box-shadow:0 12px 28px #0f172a14;display:flex;flex-direction:column;gap:14px;padding:20px}.agd-pipeline-card.status-warning{border-color:#eab30873;box-shadow:0 12px 30px #eab30826}.agd-pipeline-card.status-error{border-color:#ef444473;box-shadow:0 12px 30px #ef444426}.agd-pipeline-card__header{align-items:center;display:flex;gap:12px;justify-content:space-between}.agd-pipeline-card__title{color:#0f172a;font-weight:700}.agd-status-pill{background:#94a3b826;border-radius:999px;color:#1f2937;font-size:12px;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.agd-status-pill.status-warning{background:#fbbf242e;color:#d97706}.agd-status-pill.status-error{background:#f8717133;color:#dc2626}.agd-pipeline-card__description{color:#475569;font-size:14px;line-height:1.5;margin:0}.agd-pipeline-card__metrics{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.agd-pipeline-card__metrics li{color:#0f172a;display:flex;font-size:13px;justify-content:space-between}.agd-pipeline-card__metrics li span{color:#475569}.agd-pipeline-card__footer{color:#475569;display:flex;flex-direction:column;font-size:12px;gap:6px}.agd-pipeline-card__cost{color:#0f172a;font-weight:600}.agd-health-visuals{margin:40px 0}.agd-health-card{background:#fff;border:1px solid #94a3b840;border-radius:18px;box-shadow:0 12px 28px #0f172a14;padding:20px}.agd-health-card__header{margin-bottom:14px}.agd-health-card__header h3{color:#0f172a;font-size:20px;margin:0}.agd-health-card__header p{color:#475569;font-size:13px;margin:4px 0 0}.agd-health-empty{color:#64748b;font-size:14px;padding:24px;text-align:center}.agd-config-panel{margin:40px 0}.agd-config-panel h2{color:#0f172a;font-size:22px;font-weight:700;margin-bottom:12px}.agd-config-intro{color:#475569;font-size:14px;margin:0 0 16px}.agd-config-card{background:#fff;border:1px solid #94a3b840;border-radius:18px;box-shadow:0 12px 28px #0f172a14;padding:18px}@media (max-width:900px){.agd-pipeline-grid{grid-template-columns:1fr}}.active-polling-view{margin:0 auto;max-width:1200px;padding:24px}.active-polling-header{margin-bottom:24px}.active-polling-header h1{font-size:28px;font-weight:700;margin:0 0 12px}.active-polling-header p{color:#4a5568;line-height:1.6;margin:0}.active-polling-view select{background:#f8fafc;border:1px solid #cbd5e0;border-radius:6px;font-size:14px;height:36px;padding:6px 10px}.aws-infrastructure-unified{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.unified-header{background:#fff;box-shadow:0 2px 10px #0000001a;padding:20px 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{max-width:1400px}.unified-header h1{color:#2d3748;font-size:32px;font-weight:700;margin:0}.refresh-button{padding:10px 20px}.unified-content{margin:0 auto;max-width:1400px;padding:30px 20px}.tab-navigation{border:2px solid #e2e8f0}.tab-button{align-items:center;display:flex;font-weight:600;gap:8px;justify-content:center;padding:16px 24px}.tab-button.active{box-shadow:0 2px 8px #4299e14d}.tab-button.active:hover{background:#3182ce}.tab-content{border:2px solid #e2e8f0;min-height:600px;padding:30px}.overview-tab{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.overview-section{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:24px}.overview-section h3{color:#2d3748;font-size:20px;font-weight:600;margin:0 0 16px}.metric-card{background:#fff;padding:20px;transition:all .2s ease}.metric-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.metric-value{font-size:32px;margin-bottom:8px}.metric-label{font-size:14px;letter-spacing:.5px}.resources-tab{display:flex;flex-direction:column;gap:30px}.resources-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}.config-tab{display:flex;flex-direction:column;gap:30px}.config-section{background:#f7fafc}.status-tab{display:flex;flex-direction:column;gap:30px}.polling-status-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.status-card{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .2s ease}.status-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.status-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.status-card-title{color:#2d3748;font-size:16px;font-weight:600;margin:0}.status-badge{font-size:12px;font-weight:700;padding:4px 12px}.status-badge.healthy{background:#10b981;color:#fff}.status-badge.warning{background:#f59e0b;color:#fff}.status-badge.error{background:#ef4444;color:#fff}.status-badge.active{background:#4299e1;color:#fff}.status-badge.inactive{background:#6b7280;color:#fff}.status-details{color:#4a5568;font-size:14px;line-height:1.5}.metric-card.highlight-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #4299e1}.metric-card.cost-card{background:linear-gradient(135deg,#f0fff4,#c6f6d5);border:2px solid #10b981}.metric-description{color:#718096;font-size:12px;font-style:italic;margin-top:4px}.infrastructure-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:20px}.service-summary-card{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .2s ease}.service-summary-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.service-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.service-header h4{color:#2d3748;font-size:18px;font-weight:600;margin:0}.service-count{background:#4299e1;border-radius:20px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.service-metrics{display:flex;gap:15px;justify-content:space-between}.service-metric{align-items:center;display:flex;flex-direction:column;gap:4px}.service-metric.cost{border-left:2px solid #e2e8f0;padding-left:15px}.metric-icon{font-size:20px}.service-metric span:last-child{color:#4a5568;font-size:14px;font-weight:600}.resource-actions{border-top:1px solid #e2e8f0;display:flex;gap:8px;margin-top:12px;padding-top:12px}.edit-config-btn,.execute-btn,.view-details-btn{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s ease}.view-details-btn:hover{transform:translateY(-1px)}.execute-btn{background:#10b981;color:#fff}.execute-btn:hover{background:#059669;transform:translateY(-1px)}.edit-config-btn{background:#8b5cf6;color:#fff}.edit-config-btn:hover{background:#7c3aed;transform:translateY(-1px)}.modal-content-detail{max-width:800px}.modal-content-detail,.modal-content-execution{border-radius:12px;box-shadow:0 20px 40px #0000004d}.modal-content-execution{max-width:500px}.modal-header,.modal-header-detail{align-items:center;background:#f7fafc;border-bottom:2px solid #e2e8f0;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:20px 25px}.modal-title-section{align-items:center;gap:12px}.modal-header h2{color:#2d3748;font-size:20px;font-weight:600;margin:0}.modal-close-btn{background:none;border-radius:4px;color:#718096;font-size:24px;padding:4px}.modal-close-btn:hover{background:#e2e8f0;color:#4a5568}.modal-body,.modal-body-detail{padding:25px}.resource-type-badge-modal{border-radius:20px;font-size:12px}.detail-section{margin-bottom:25px}.detail-section-title{border-bottom:2px solid #e2e8f0;margin:0 0 15px;padding-bottom:8px}.detail-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-value{font-size:16px;font-weight:500}.status-value{font-weight:700}.cost-highlight{font-size:18px;font-weight:700}.status-details-box{border:2px solid #e2e8f0;margin-top:15px;padding:15px}.status-details-box h4{color:#2d3748;font-size:14px;font-weight:600;margin:0 0 8px}.status-details-box p{font-size:14px;line-height:1.5}.functionality-text,.purpose-text{background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;color:#4a5568;font-size:14px;line-height:1.6;padding:15px}.metrics-grid-detail{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.metric-card-detail{background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;padding:15px;text-align:center}.metric-card-detail .metric-label{color:#718096;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.metric-card-detail .metric-value{color:#2d3748;font-size:20px;font-weight:700}.dependency-list,.dependents-list,.recommendations-list{display:flex;flex-direction:column;gap:8px}.dependency-item,.dependent-item,.recommendation-item{background:#f7fafc;border:2px solid #e2e8f0;border-radius:6px;color:#4a5568;font-size:14px;padding:10px 12px;transition:all .2s ease}.dependency-item:hover,.dependent-item:hover,.recommendation-item:hover{background:#edf2f7;border-color:#cbd5e0}.execution-options{grid-gap:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:15px}.execution-option-btn{background:#fff;border:2px solid #e2e8f0;color:#4a5568;font-size:14px;font-weight:500;padding:12px 16px;text-align:center}.execution-option-btn:hover{background:#f7fafc;border-color:#4299e1;color:#2d3748;transform:translateY(-1px)}.resource-section-accordion{background:#f7fafc}.accordion-header{padding:20px}.accordion-header:hover{background:#edf2f7}.accordion-title{gap:12px}.expand-icon{font-weight:700}.resource-count-badge{font-size:12px}.resource-card{background:#fff;border:2px solid #e2e8f0;border-radius:8px;padding:16px;transition:all .2s ease}.resource-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.resource-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.resource-header h4{color:#2d3748;font-size:16px;font-weight:600;margin:0}.resource-details p{color:#4a5568;font-size:14px;margin:4px 0}.no-resources-message{color:#718096;font-style:italic;padding:40px;text-align:center}.config-row{border-bottom:1px solid #e2e8f0;padding:8px 0}.config-label{flex:1 1;font-weight:600}.config-value{text-align:right}.config-input{border:2px solid #e2e8f0;max-width:200px;padding:4px 8px}.config-boolean.true{color:#10b981;font-weight:600}.config-boolean.false{color:#ef4444;font-weight:600}.config-edit-actions{border-top:2px solid #e2e8f0;display:flex;gap:10px;margin-top:15px;padding-top:15px}.config-grid{grid-template-columns:repeat(3,1fr)}.modal-content-config{max-height:80vh;max-width:600px;overflow-y:auto}.config-settings{margin-bottom:20px}.config-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:25px;padding:20px}.config-group h3{color:#2d3748;font-size:16px;font-weight:600;margin:0 0 15px}.config-field{align-items:center;display:flex;gap:15px;margin-bottom:15px}.config-field label{color:#4a5568;font-size:14px;font-weight:500;min-width:180px}.config-field input,.config-field select{background:#fff;border:2px solid #e2e8f0;border-radius:6px;flex:1 1;font-size:14px;padding:8px 12px;transition:border-color .2s ease}.config-field input:focus,.config-field select:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.config-actions{border-top:1px solid #e2e8f0;gap:12px;justify-content:flex-end;padding-top:20px}.save-config-btn{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.save-config-btn:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.cancel-config-btn{background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.cancel-config-btn:hover{background:#4b5563;transform:translateY(-1px)}@media (max-width:1200px){.overview-tab{grid-template-columns:1fr}.config-grid,.resources-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.header-content{gap:15px;text-align:center}.header-content,.tab-navigation{flex-direction:column}.tab-button{width:100%}.status-filter-cards{grid-template-columns:repeat(2,1fr)}.config-grid,.polling-status-grid,.resources-grid{grid-template-columns:1fr}}.config-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.config-header-main{background:#fff;box-shadow:0 2px 10px #0000001a;padding:20px 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.config-header-main h1{color:#2d3748;font-size:28px;font-weight:700;margin:0}.header-actions{align-items:flex-start;flex-wrap:wrap;justify-content:flex-end}.header-timestamps{display:flex;flex-direction:column;gap:6px;min-width:220px}.header-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.refresh-button.secondary{background:#4b5563}.refresh-button.secondary:hover:not(:disabled){background:#374151}.config-content-main{margin:0 auto;max-width:1200px;padding:30px 20px}.config-grid{grid-gap:25px;grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}.config-grid,.config-grid-3col{display:grid;gap:25px;margin-bottom:40px}.config-grid-3col{grid-gap:25px;grid-template-columns:repeat(3,1fr)}.polling-config-section{margin-bottom:48px}.polling-config-card{background:#fff;border:1px solid #94a3b829;border-radius:16px;box-shadow:0 8px 20px #0f172a14;padding:12px 18px}.config-section{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:25px;transition:all .2s ease}.config-section:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.config-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.config-header h3{color:#2d3748;font-size:20px;font-weight:600;margin:0}.config-actions{display:flex;gap:10px}.cancel-btn,.edit-btn,.save-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:6px 12px;transition:all .2s ease}.edit-btn{background:#4299e1;color:#fff}.edit-btn:hover{background:#3182ce;transform:translateY(-1px)}.save-btn{background:#10b981;color:#fff}.save-btn:hover{background:#059669;transform:translateY(-1px)}.cancel-btn{background:#6b7280;color:#fff}.cancel-btn:hover{background:#4b5563;transform:translateY(-1px)}.edit-actions{display:flex;gap:8px}.config-content{display:flex;flex-direction:column;gap:15px}.config-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:12px 0}.config-row:last-child{border-bottom:none}.config-label{color:#4a5568;font-size:14px;font-weight:500;min-width:150px}.config-value{background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;flex:1 1;margin-left:15px;padding:8px 12px;word-break:break-all}.config-input,.config-value{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px}.config-input{background:#fff;border:2px solid #4299e1;border-radius:4px;padding:6px 8px;width:100%}.config-input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #4299e11a;outline:none}.config-actions-main{border-top:2px solid #e2e8f0;display:flex;gap:20px;justify-content:center;margin-top:40px;padding-top:30px}.export-btn,.reset-btn,.save-all-btn{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .2s ease}.save-all-btn{background:#10b981;color:#fff}.save-all-btn:hover{background:#059669;transform:translateY(-1px)}.reset-btn{background:#f59e0b;color:#fff}.reset-btn:hover{background:#d97706;transform:translateY(-1px)}.export-btn{background:#6366f1;color:#fff}.export-btn:hover{background:#4f46e5;transform:translateY(-1px)}.error p,.loading p{margin:0 0 10px}.retry-btn{background:#4299e1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.retry-btn:hover{background:#3182ce;transform:translateY(-1px)}.status-filter-section{margin-bottom:30px}.status-filter-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.status-filter-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;cursor:pointer;display:flex;gap:12px;padding:16px 20px;text-align:left;transition:all .2s ease}.status-filter-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.status-filter-card.active{box-shadow:0 6px 20px #00000026;transform:translateY(-2px)}.status-filter-icon{flex-shrink:0;font-size:24px}.status-filter-content{flex:1 1;min-width:0}.status-filter-label{color:#2d3748;font-size:14px;font-weight:600;margin-bottom:4px}.status-filter-count{font-size:20px;font-weight:700;line-height:1}@media (max-width:768px){.status-filter-cards{gap:10px;grid-template-columns:repeat(2,1fr)}.status-filter-card{padding:12px 16px}.status-filter-icon{font-size:20px}.status-filter-label{font-size:13px}.status-filter-count{font-size:18px}}.resource-section-accordion{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 20px #00000014;margin-bottom:20px;overflow:hidden;transition:all .3s ease}.resource-section-accordion:hover{box-shadow:0 6px 25px #0000001f}.accordion-header{align-items:center;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #e2e8f0;cursor:pointer;display:flex;justify-content:space-between;padding:20px 25px;transition:all .2s ease}.accordion-header:hover{background:linear-gradient(135deg,#edf2f7,#e2e8f0)}.accordion-title{align-items:center;display:flex;gap:15px}.expand-icon{color:#4299e1;font-size:16px;transition:transform .3s ease}.accordion-title h3{color:#2d3748;font-size:22px;font-weight:600;margin:0}.resource-count-badge{background:#4299e1;border-radius:20px;color:#fff;font-size:13px;font-weight:600;padding:4px 12px}.accordion-actions{display:flex;gap:10px}.collapse-all-btn{background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 14px;transition:all .2s ease}.collapse-all-btn:hover{background:#4b5563;transform:translateY(-1px)}.resources-grid-3col{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);padding:25px}@media (max-width:1200px){.resources-grid-3col{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.resources-grid-3col{grid-template-columns:1fr}}.resource-card-config{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 10px #0000000d;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all .3s ease}.resource-card-config:hover{border-color:#4299e1;box-shadow:0 8px 30px #00000026;transform:translateY(-4px)}.card-header{background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #e2e8f0;justify-content:space-between;padding:15px}.card-header,.status-indicator{align-items:center;display:flex}.status-icon-large{font-size:28px}.status-badge-card{border-radius:20px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.card-body{display:flex;flex-direction:column;flex-grow:1;gap:12px;padding:16px}.resource-name-card{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#2d3748;display:-webkit-box;font-size:16px;font-weight:600;line-height:1.3;margin:0;overflow:hidden;text-overflow:ellipsis}.resource-type-badge-card{background:#edf2f7;border-radius:6px;color:#4a5568;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px;width:-webkit-fit-content;width:fit-content}.resource-quick-info{display:flex;flex-direction:column;font-size:13px;gap:6px}.info-row{gap:8px}.info-label{color:#718096;flex-shrink:0}.info-value{font-weight:600;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.resource-purpose-snippet{background:#f7fafc;border-left:3px solid #4299e1;border-radius:6px;color:#4a5568;font-size:12px;line-height:1.4;padding:10px}.resource-purpose-snippet strong{color:#2d3748}.card-footer{background:#f7fafc;border-top:2px solid #e2e8f0;display:flex;gap:6px;padding:12px}.edit-resource-btn,.execute-resource-btn,.view-details-btn{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:12px;font-weight:600;padding:8px 12px;transition:all .2s ease;white-space:nowrap}.view-details-btn{background:#4299e1;color:#fff}.view-details-btn:hover{background:#3182ce;transform:scale(1.05)}.edit-resource-btn{background:#10b981;color:#fff}.edit-resource-btn:hover{background:#059669;transform:scale(1.05)}.execute-resource-btn{background:#f59e0b;color:#fff}.execute-resource-btn:hover{background:#d97706;transform:scale(1.05)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px}.modal-content-detail{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow-y:auto;width:100%}.modal-header-detail{align-items:center;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;padding:24px 28px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-title-section{display:flex;flex-direction:column;gap:8px}.modal-title-section h2{color:#2d3748;font-size:24px;font-weight:700;margin:0}.resource-type-badge-modal{background:#4299e1;border-radius:6px;color:#fff;display:inline-block;font-size:13px;font-weight:600;padding:4px 12px;width:-webkit-fit-content;width:fit-content}.modal-close-btn{align-items:center;background:#e53e3e;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.modal-close-btn:hover{background:#c53030;transform:scale(1.1)}.modal-body-detail{display:flex;flex-direction:column;gap:24px;padding:24px 28px}.detail-section{border-bottom:1px solid #e2e8f0;padding-bottom:20px}.detail-section:last-child{border-bottom:none}.detail-section-title{border-left:4px solid #4299e1;color:#2d3748;font-size:18px;font-weight:600;margin:0 0 16px;padding-left:12px}.detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.detail-label{font-size:13px;letter-spacing:.5px}.detail-value{font-size:15px;font-weight:600}.detail-value.status-value{font-size:16px}.cost-highlight{color:#10b981!important;font-size:18px!important}.status-details-box{background:#f7fafc;border-left:4px solid #4299e1;border-radius:8px;margin-top:16px;padding:16px}.status-details-box strong{color:#2d3748;display:block;margin-bottom:8px}.status-details-box p{color:#4a5568;line-height:1.6;margin:0}.functionality-text,.purpose-text{margin-bottom:16px}.functionality-text strong,.purpose-text strong{color:#2d3748;display:block;margin-bottom:8px}.functionality-text p,.purpose-text p{color:#4a5568;line-height:1.7;margin:0}.metrics-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.metric-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:8px;padding:16px;text-align:center}.metric-label{color:#718096;font-size:12px;font-weight:600;margin-bottom:8px;text-transform:uppercase}.metric-value{color:#2d3748;font-size:24px;font-weight:700}.dependencies-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.dependency-list,.dependents-list{list-style:none;margin:8px 0 0;padding:0}.dependency-list li,.dependents-list li{background:#f7fafc;border-radius:6px;color:#4a5568;font-weight:500;margin:4px 0;padding:8px 12px}.dependency-list li{border-left:3px solid #4299e1}.dependents-list li{border-left:3px solid #10b981}.tags-container{display:flex;flex-wrap:wrap;gap:10px}.tag-item{background:#edf2f7;border-radius:20px;display:flex;font-size:13px;gap:6px;padding:8px 14px}.tag-key{color:#4a5568;font-weight:600}.tag-value{color:#2d3748;font-weight:500}.modal-footer-detail{background:#f7fafc;border-top:2px solid #e2e8f0;bottom:0;display:flex;justify-content:flex-end;padding:20px 28px;position:-webkit-sticky;position:sticky}.modal-close-btn-footer{background:#6b7280;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.modal-close-btn-footer:hover{background:#4b5563;transform:translateY(-1px)}.modal-content-execution{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:600px;width:100%}.modal-header-execution{align-items:center;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;padding:24px 28px}.modal-header-execution h2{color:#2d3748;font-size:20px;font-weight:700;margin:0}.modal-body-execution{padding:24px 28px}.execution-description{color:#4a5568;font-size:15px;margin:0 0 20px}.execution-options{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.execution-option-btn{background:#4299e1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px 20px;text-align:left;transition:all .2s ease}.execution-option-btn:hover{background:#3182ce;transform:translateX(4px)}.execution-warning{background:#fef3c7;border:2px solid #f59e0b;border-radius:8px;color:#92400e;font-size:13px;line-height:1.5;padding:14px}.execution-warning strong{color:#78350f}.modal-footer-execution{background:#f7fafc;border-top:2px solid #e2e8f0;display:flex;justify-content:flex-end;padding:20px 28px}.modal-cancel-btn{background:#e53e3e;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.modal-cancel-btn:hover{background:#c53030;transform:translateY(-1px)}.no-resources-message-full{color:#718096;font-size:16px;grid-column:1/-1;padding:60px 20px;text-align:center}@media (max-width:1024px){.config-grid-3col{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.header-content{flex-direction:column;gap:15px;text-align:center}.header-actions{flex-wrap:wrap;justify-content:center}.config-content-main{padding:20px 15px}.config-grid,.config-grid-3col{grid-template-columns:1fr}.config-row{align-items:flex-start;flex-direction:column;gap:8px}.config-value{margin-left:0;width:100%}.config-actions-main{align-items:center;flex-direction:column}.export-btn,.reset-btn,.save-all-btn{max-width:300px;width:100%}.dependencies-grid,.detail-grid{grid-template-columns:1fr}.modal-content-detail,.modal-content-execution{max-width:95%}.card-footer{flex-direction:column}.edit-resource-btn,.execute-resource-btn,.view-details-btn{width:100%}}.user-management{margin:0 auto;max-width:1400px;padding:20px}.user-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.user-header h2{color:#333;font-size:28px;margin:0}.refresh-btn{background-color:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .3s}.refresh-btn:hover{background-color:#45a049}.loading{color:#666;font-size:16px;padding:40px;text-align:center}.error-message{background-color:#ffebee;border-left:4px solid #c62828;color:#c62828}.action-message,.error-message{border-radius:6px;margin-bottom:16px;padding:12px 16px}.action-message{align-items:center;background-color:#e8f5e9;border-left:4px solid #4caf50;color:#2e7d32;display:flex;justify-content:space-between}.action-message button{background:none;border:none;color:#2e7d32;cursor:pointer;font-size:20px;padding:0 8px}.users-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.summary-card{background:#013369;border:3px solid #0000;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#fff;cursor:pointer;padding:20px;transition:all .3s ease}.summary-card:hover{box-shadow:0 4px 12px #0003}.summary-card.active{background:#00b140;border-color:#fff;box-shadow:0 6px 16px #0000004d}.summary-number{color:#fff;font-size:32px;font-weight:700;margin-bottom:8px}.summary-label{color:#fff;opacity:1}.chart-container{background-color:#fff;border:2px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.chart-title{color:#333;font-size:20px;font-weight:600;margin:0 0 20px}.filter-info{align-items:center;background-color:#e3f2fd;border-radius:6px;color:#1976d2;display:flex;font-size:14px;font-weight:500;justify-content:space-between;margin-bottom:16px;padding:12px 16px}.clear-filter-btn{background-color:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:background-color .3s}.clear-filter-btn:hover{background-color:#1565c0}.no-users{background-color:#f5f5f5;border-radius:8px;color:#666;font-size:16px;padding:40px;text-align:center}.user-list{display:flex;flex-direction:column;gap:12px}.user-item{background-color:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;padding:16px;transition:all .3s}.user-item:hover{border-color:#2196f3;box-shadow:0 2px 8px #2196f333}.user-item.selected{background-color:#e3f2fd;border-color:#2196f3}.user-item.locked{background-color:#fff3e0;border-color:#ff9800}.user-main-info{display:flex;flex-direction:column;gap:6px}.user-name{align-items:center;display:flex;flex-wrap:wrap;font-size:16px;gap:8px}.role-badge{border-radius:12px;font-size:11px;font-weight:600;padding:3px 8px;text-transform:uppercase}.role-badge.admin{background-color:#f44336;color:#fff}.role-badge.monitor{background-color:#ff9800;color:#fff}.role-badge.user{background-color:#4caf50;color:#fff}.status-badge{border-radius:12px;font-size:11px;font-weight:500;padding:3px 8px}.status-badge.locked{background-color:#ffebee;color:#c62828}.status-badge.unverified{background-color:#fff3e0;color:#f57c00}.status-badge.password-change{background-color:#e1f5fe;color:#0277bd}.user-email{color:#666;font-size:14px}.user-meta{color:#999;font-size:12px}.user-details{border-top:1px solid #e0e0e0;margin-top:16px;padding-top:16px}.details-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item.full-width{grid-column:1/-1}.detail-item label{color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-item span{color:#333;font-size:14px}.error-text{color:#c62828!important;font-weight:500}.user-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.action-btn{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .3s}.action-btn.unlock{background-color:#4caf50;color:#fff}.action-btn.unlock:hover{background-color:#45a049}.action-btn.send-email{background-color:#2196f3;color:#fff}.action-btn.send-email:hover{background-color:#1976d2}.action-btn.password{background-color:#ff9800;color:#fff}.action-btn.password:hover{background-color:#f57c00}.action-btn.force-change{background-color:#9c27b0;color:#fff}.action-btn.force-change:hover{background-color:#7b1fa2}.action-btn.delete{background-color:#f44336;color:#fff}.action-btn.delete:hover{background-color:#d32f2f}.action-btn.verify-email{background-color:#1976d2;color:#fff}.action-btn.verify-email:hover{background-color:#1565c0;transform:translateY(-1px)}.action-btn.bypass-verification{background-color:#388e3c;color:#fff}.action-btn.bypass-verification:hover{background-color:#2e7d32;transform:translateY(-1px)}.warning-text{color:#f44336!important;font-weight:500}.role-selector{align-items:center;display:flex;gap:8px}.role-dropdown{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px}.role-badge-text{border-radius:4px;font-size:13px;font-weight:500;padding:4px 12px;text-transform:capitalize}.role-badge-text.admin{background-color:#ffebee;color:#c62828}.role-badge-text.monitor{background-color:#fff3e0;color:#e65100}.role-badge-text.user{background-color:#e3f2fd;color:#1565c0}.btn-edit-role{background:none;border:none;border-radius:4px;color:#1976d2;cursor:pointer;font-size:14px;padding:4px 8px;transition:background-color .2s}.btn-edit-role:hover{background-color:#e3f2fd}.btn-save-role{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:6px 12px;transition:background-color .2s}.btn-save-role:hover{background-color:#45a049}.btn-cancel-role{background-color:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:6px 12px;transition:background-color .2s}.btn-cancel-role:hover{background-color:#d32f2f}.password-dialog{background-color:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;margin-top:16px;padding:16px}.password-dialog h4{color:#333;font-size:14px;margin:0 0 12px}.password-input{border:1px solid #ccc;border-radius:4px;font-size:14px;margin-bottom:12px;padding:10px 12px;width:100%}.password-input:focus{border-color:#2196f3;outline:none}.dialog-actions{display:flex;gap:8px}.btn-cancel,.btn-save{border-radius:4px;font-size:13px;padding:8px 16px}@media (max-width:768px){.user-management{padding:12px}.users-summary{grid-template-columns:repeat(2,1fr)}.chart-container{padding:16px}.chart-title{font-size:18px}.details-grid{grid-template-columns:1fr}.user-actions{flex-direction:column}.action-btn{width:100%}}.maintenance-tools{display:flex;flex-direction:column;gap:1.5rem}.maintenance-intro h2{color:#1f2937;font-size:1.6rem;margin:0 0 .5rem}.maintenance-intro p{color:#4b5563;line-height:1.6;margin:.25rem 0}.maintenance-intro code{background-color:#f3f4f6;border-radius:4px;color:#1f2937;font-size:.9rem;padding:.15rem .4rem}.maintenance-note{color:#2563eb;font-size:.95rem}.maintenance-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.playbyplay-section h2{color:#1f2937;font-size:1.5rem;margin:0 0 .75rem}.playbyplay-section p{color:#4b5563;line-height:1.6;margin:0 0 1rem}.maintenance-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 12px #0f172a0a;display:flex;flex-direction:column;gap:.75rem;padding:1.25rem}.maintenance-card h3{color:#1f2937;font-size:1.2rem;margin:0}.maintenance-card p{color:#4b5563;line-height:1.5;margin:0}.maintenance-command{background:#111827;border-radius:8px;color:#f9fafb;font-size:.95rem;margin:0;overflow-x:auto;padding:.75rem 1rem}.maintenance-command-block{display:flex;flex-direction:column;gap:.5rem}.maintenance-actions{align-items:center;display:flex;gap:.75rem}.command-button{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;padding:.5rem 1rem;transition:background .2s ease}.command-button:hover{background:#1d4ed8}.docs-link{color:#2563eb;font-size:.9rem;text-decoration:none}.docs-link:hover{text-decoration:underline}.maintenance-status{border-radius:8px;font-size:.95rem;padding:.75rem 1rem}.maintenance-status.success{background-color:#ecfdf5;color:#047857}.maintenance-status.error{background-color:#fef2f2;color:#b91c1c}@media (max-width:640px){.maintenance-actions{align-items:flex-start;flex-direction:column}.docs-link{padding-left:0}}.documentation-explorer{display:flex;flex-direction:column;gap:1.5rem}.documentation-header{align-items:baseline;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.documentation-title h2{color:#1f2937;font-size:1.75rem;margin:0}.documentation-title p{color:#4b5563;margin:.25rem 0 0}.documentation-meta{color:#6b7280;display:flex;font-size:.95rem;gap:1rem}.documentation-body{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:minmax(260px,320px) 1fr;min-height:520px}.documentation-sidebar{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;display:flex;flex-direction:column;gap:1rem;overflow:hidden;padding:1rem}.documentation-search input{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;padding:.65rem .85rem;width:100%}.documentation-empty,.documentation-error,.documentation-loading{border-radius:8px;font-size:.95rem;padding:1rem}.documentation-loading{background-color:#eef2ff;color:#4338ca}.documentation-empty{background-color:#fefce8;color:#92400e}.documentation-error{background-color:#fef2f2;color:#b91c1c}.documentation-error-details{color:#7f1d1d;font-size:.85rem;margin:.25rem 0 .5rem}.documentation-list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;overflow-y:auto;padding:0}.documentation-list-item{background-color:#fff;border:1px solid #0000;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:.35rem;padding:.75rem;transition:border-color .2s ease,box-shadow .2s ease}.documentation-list-item:hover{border-color:#6366f1;box-shadow:0 2px 12px #6366f11a}.documentation-list-item.active{border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e526}.doc-item-title{color:#1f2937;font-weight:600}.doc-item-meta{color:#6b7280;display:flex;font-size:.78rem;justify-content:space-between}.doc-item-excerpt{color:#4b5563;font-size:.85rem}.documentation-content{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;flex-direction:column;min-height:520px;padding:1.25rem}.documentation-placeholder{color:#6b7280;font-size:1rem;margin:auto}.documentation-viewer{display:flex;flex-direction:column;gap:1rem;height:100%}.documentation-viewer-header h3{color:#111827;font-size:1.5rem;margin:0}.viewer-subtitle{color:#6b7280;display:flex;flex-wrap:wrap;font-size:.9rem;gap:.5rem;margin-top:.35rem}.viewer-subtitle a{color:#2563eb;text-decoration:none}.viewer-subtitle a:hover{text-decoration:underline}.documentation-content-loading{background-color:#eef2ff;border-radius:8px;color:#4338ca;padding:1rem}.documentation-markdown{flex:1 1;overflow-y:auto;padding-right:.5rem}.documentation-markdown h1,.documentation-markdown h2,.documentation-markdown h3{color:#111827;margin-top:1.25rem}.documentation-markdown pre{background-color:#1f2937;border-radius:8px;color:#f9fafb;overflow-x:auto;padding:.75rem}.documentation-markdown code{background-color:#37415114;border-radius:4px;padding:.2rem .4rem}.documentation-markdown table{border-collapse:collapse;margin:1rem 0;width:100%}.documentation-markdown td,.documentation-markdown th{border:1px solid #d1d5db;padding:.5rem;text-align:left}.documentation-markdown blockquote{background-color:#6366f114;border-left:4px solid #6366f1;color:#374151;margin:1rem 0;padding:.5rem 1rem}@media (max-width:1100px){.documentation-body{grid-template-columns:1fr}.documentation-sidebar{max-height:240px}}.admin-dashboard{background:#f7fafc;min-height:100vh}.admin-header{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 4px #0000001a;color:#fff;padding:40px 20px;text-align:center}.admin-header h1{font-size:2.5rem;font-weight:700;margin:0 0 12px}.admin-header p{font-size:1.25rem;margin:0;opacity:.95}.admin-dashboard .MuiBox-root{background:#fff}.admin-dashboard .MuiTabs-root{padding:0 20px}.admin-dashboard .MuiTab-root{min-height:64px;padding:16px 24px}.admin-dashboard .MuiTab-root.Mui-selected{color:#667eea}.admin-dashboard .MuiTabs-indicator{background-color:#667eea;height:3px}.stats-container{margin:0 auto;max-width:1200px;padding:20px}.stats-container .MuiTabs-root{border-bottom:1px solid #e0e0e0;margin-bottom:20px}.stats-container .MuiTab-root{font-weight:500;min-width:120px;text-transform:none}.stats-container .MuiTab-root.Mui-selected{color:#1976d2}.stats-container .MuiTable-root{margin-top:20px}.stats-container .MuiTableHead-root{background-color:#f5f5f5}.stats-container .MuiTableCell-head{color:#333;font-weight:600}.stats-container .MuiTableRow-root:hover{background-color:#f9f9f9}.stats-container .MuiChip-root{font-weight:500}.stats-container .MuiChip-colorSuccess{background-color:#4caf50;color:#fff}.stats-container .MuiChip-colorError{background-color:#f44336;color:#fff}.stats-container .MuiChip-colorWarning{background-color:#ff9800;color:#fff}.stats-container .MuiPaper-root{border-radius:8px;box-shadow:0 2px 8px #0000001a}.stats-container .MuiTypography-h4{color:#333;font-weight:600;margin-bottom:20px}.stats-container .MuiAlert-root{margin:20px 0}.stats-container .MuiCircularProgress-root{color:#1976d2}@media (max-width:768px){.stats-container{padding:10px}.stats-container .MuiTableContainer-root{overflow-x:auto}.stats-container .MuiTab-root{font-size:.875rem;min-width:80px}}.your-calls{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:0}.your-calls.embedded{background:#0000;min-height:0;min-height:auto}.your-calls.embedded .calls-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000;border-bottom:none;margin-bottom:1.5rem;padding:1.5rem 0 1rem}.your-calls.embedded .header-content{padding:0}.your-calls.embedded .filters-section-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000;border-top:none;padding:0 0 1.25rem}.your-calls.embedded .filters-section{background:#fff;border:1px solid #e2e8f0;box-shadow:0 12px 24px #0f172a14}.your-calls.embedded .calls-content{padding:0}.your-calls.embedded .calls-table{background:#fff;border-radius:12px;box-shadow:0 10px 24px #0f172a0f}.calls-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #fff3;margin-bottom:2rem;padding:2rem 0}.header-content{padding:0 2rem}.calls-header h1{color:#1a202c;font-size:2.5rem;font-weight:700;margin:0}.calls-summary{color:#4a5568;font-size:1.1rem;margin:.5rem 0 0}.header-actions{gap:1rem}.refresh-button{border-radius:8px;font-size:.9rem;padding:.75rem 1.5rem}.calls-content{margin:0 auto;max-width:1400px;padding:0 2rem 2rem}.filters-section{background:#fffffff2;box-shadow:0 4px 6px #0000001a;margin-bottom:2rem;padding:1.5rem}.filters-section,.filters-section-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.filters-section-header{background:#ffffff26;border-top:1px solid #fff3;margin:0 auto;max-width:1200px;padding:1.5rem 2rem}.user-calls-filters-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,minmax(140px,1fr));margin-bottom:0}@media (max-width:1200px){.user-calls-filters-grid{grid-template-columns:repeat(4,minmax(140px,1fr))}}@media (max-width:900px){.user-calls-filters-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}}.filter-group{gap:.5rem}.filter-group label{color:#2d3748;font-size:.9rem}.filter-select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:.9rem;padding:.75rem;transition:border-color .2s ease}.filter-select:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.filter-summary{color:#4a5568;font-size:.9rem}.calls-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:1.5rem}.calls-list{display:flex;flex-direction:column;gap:1rem}.call-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;transition:all .2s ease}.call-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.call-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.call-actions{gap:1rem}.action-buttons{display:flex;gap:.5rem}.delete-btn,.edit-btn{font-size:1.2rem;padding:.25rem}.call-type{align-items:center;display:flex;gap:.5rem}.flag-icon{font-size:1.5rem}.flag-text{font-size:1.1rem;font-weight:600}.call-time{color:#718096;font-size:.9rem}.call-game{background:#f7fafc;border-radius:8px;justify-content:space-between;margin-bottom:1rem;padding:1rem}.call-game,.game-info{align-items:center;display:flex}.game-info{gap:1rem}.game-teams{gap:.5rem}.team-logo-small{height:32px;width:32px}.vs{margin:0 .5rem}.game-details{display:flex;flex-direction:column;gap:.25rem}.game-name{color:#2d3748;font-size:1rem;font-weight:600}.game-score{align-items:center;color:#4a5568;display:flex;font-size:.9rem;gap:.5rem}.quarter{background:#4299e1;border-radius:4px;color:#fff;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.view-game-btn{background:#48bb78;font-size:.9rem;font-weight:600;padding:.5rem 1rem}.view-game-btn:hover{background:#38a169}.call-play{background:#edf2f7;border-left:4px solid #4299e1;border-radius:8px;margin-bottom:1rem;padding:1rem}.play-label{color:#2d3748;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.play-description{color:#4a5568;line-height:1.5}.call-details{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.call-detail{display:flex;flex-direction:column;gap:.25rem}.detail-label{color:#718096;font-size:.8rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.detail-value{font-size:.9rem}.calls-table{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 8px #00000014;overflow:hidden}.calls-table-header{background:#667eea;color:#fff;display:grid;font-size:14px;font-weight:600;grid-template-columns:100px 160px 50px 80px 1fr 80px 110px 90px;padding:0}.calls-table-header .call-cell{font-weight:600;letter-spacing:.5px;padding:15px 8px;text-transform:uppercase}.call-row{border-bottom:1px solid #e2e8f0;display:grid;grid-template-columns:100px 160px 50px 80px 1fr 80px 110px 90px;transition:background-color .2s ease}.call-row:hover{background:#f7fafc}.call-row:last-child{border-bottom:none}.call-cell{align-items:center;color:#2d3748;display:flex;font-size:14px;padding:12px 8px}.date-cell{color:#4a5568;font-size:13px}.game-cell{padding:8px!important}.game-teams-compact{align-items:center;display:flex;font-size:13px;gap:4px}.team-logo-tiny{height:18px;object-fit:contain;width:18px}.team-abbr-text{color:#2d3748;font-size:12px;font-weight:600}.vs-small{color:#718096;font-size:11px;margin:0 2px}.play-text-cell{color:#4a5568;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-cell{color:#2d3748}.call-badge-compact{align-items:center;border-radius:4px;display:inline-flex;font-size:11px;font-weight:700;gap:4px;justify-content:center;min-width:80px;padding:4px 8px;white-space:nowrap}.call-badge-compact.call-good{background:#d1fae5;color:#065f46}.call-badge-compact.call-bad{background:#fee2e2;color:#991b1b}.call-badge-compact.call-missed{background:#fef3c7;color:#92400e}.actions-cell{gap:6px}.delete-btn-small,.edit-btn-small{background:none;border:none;border-radius:4px;cursor:pointer;font-size:1rem;padding:4px;transition:background-color .2s}.edit-btn-small:hover{background-color:#e3f2fd}.delete-btn-small:hover{background-color:#ffebee}.error,.loading,.no-calls,.no-calls-filtered{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.error p,.loading p,.no-calls p,.no-calls-filtered p{color:#4a5568;font-size:1.1rem;margin:0}.error h2,.no-calls h2,.no-calls-filtered h3{color:#2d3748;font-size:1.5rem;margin:0 0 1rem}.no-calls-icon{font-size:4rem;margin-bottom:1rem}.browse-games-btn,.clear-filters-btn,.retry-button{background:#4299e1;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-block;font-size:.9rem;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.browse-games-btn:hover,.clear-filters-btn:hover,.retry-button:hover{background:#3182ce;transform:translateY(-1px)}@media (max-width:768px){.header-content{flex-direction:column;gap:1rem;text-align:center}.calls-header h1{font-size:2rem}.user-calls-filters-grid{grid-template-columns:1fr}.call-game{align-items:stretch;flex-direction:column;gap:1rem}.game-info{justify-content:center}.call-details{grid-template-columns:1fr}}.statistics-dashboard{background:#f7fafc;min-height:100vh}.statistics-header{background:linear-gradient(135deg,#3182ce,#63b3ed);box-shadow:0 2px 8px #3182ce40;color:#fff;padding:40px 20px;text-align:center}.statistics-header h1{font-size:2.4rem;font-weight:700;margin:0 0 10px}.statistics-header p{font-size:1.2rem;margin:0;opacity:.95}.statistics-view-toggle{display:flex;gap:16px;justify-content:center;margin:20px auto 0;max-width:480px}.statistics-view-toggle button{background:#ffffffe6;border:1px solid #3182ce59;border-radius:999px;box-shadow:0 4px 12px #3182ce26;color:#1a365d;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:12px 16px;transition:all .2s ease}.statistics-view-toggle button:hover{box-shadow:0 6px 16px #3182ce33;transform:translateY(-1px)}.statistics-view-toggle button.active{background:linear-gradient(135deg,#3182ce,#63b3ed);border-color:#0000;box-shadow:0 8px 20px #3182ce40;color:#fff}.statistics-content{background:#fff;border-radius:16px;box-shadow:0 10px 35px #0f172a14;margin:30px auto;max-width:1280px;padding:32px}@media (max-width:992px){.statistics-content{margin:20px;padding:24px}}@media (max-width:640px){.statistics-content{margin:16px;padding:16px}.statistics-header{padding:28px 16px}.statistics-header h1{font-size:1.9rem}.statistics-header p{font-size:1rem}}.auth-callback{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;max-width:420px;padding:32px 40px;text-align:center;width:100%}.auth-card h2{color:#1f2937;font-size:24px;margin-top:24px}.auth-card p{color:#4b5563;font-size:15px;margin-top:12px}.spinner{animation:spin .8s linear infinite;border:4px solid #667eea33;border-top-color:#667eea;height:48px;margin:0 auto;width:48px}.retry-button{background:#667eea;margin-top:24px;padding:12px 18px;transition:background .2s ease}.retry-button:hover{background:#5a6fd8}.games-list{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.games-header{background:#fff;box-shadow:0 2px 10px #0000001a;padding:20px 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{justify-content:space-between}.games-header h1{color:#2d3748;font-size:28px;font-weight:700;margin:0}.games-content{margin:0 auto;max-width:1200px;padding:30px 20px}.filters-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;margin-bottom:30px;overflow:visible;padding:25px;position:relative;z-index:50}.games-filters-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:20px}.filter-group label{font-size:12px;font-weight:500;margin-bottom:2px}.filter-input,.filter-select{background:#fff;border:2px solid #e2e8f0;border-radius:6px;font-size:13px;padding:6px 8px;transition:border-color .2s ease}.filter-input:focus,.filter-select:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.filter-group.multi-select{position:relative;z-index:500}.filter-multiselect-trigger{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:6px;color:#2d3748;cursor:pointer;display:flex;font-size:13px;gap:8px;justify-content:space-between;padding:6px 10px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;width:100%}.filter-multiselect-trigger:hover{background:#f8fafc;border-color:#cbd5e0}.filter-multiselect-trigger:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e126;outline:none}.filter-multiselect-text{flex:1 1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.filter-multiselect-placeholder{color:#a0aec0;font-style:italic}.multi-select-caret{color:#718096;font-size:10px;transition:transform .2s ease}.filter-multiselect-trigger[aria-expanded=true] .multi-select-caret{transform:rotate(-180deg)}.filter-multiselect-menu{background:#fff;border:1px solid #cbd5e0;border-radius:10px;box-shadow:0 18px 40px #0f172a2e;left:0;max-height:260px;overflow-y:auto;padding:10px;position:absolute;right:0;top:calc(100% + 8px);z-index:5000}.filter-multiselect-option{align-items:center;border-radius:6px;color:#2d3748;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:6px 4px}.filter-multiselect-option:hover{background:#f1f5f9}.filter-multiselect-option input{accent-color:#4299e1;cursor:pointer}.filter-summary{border-top:1px solid #e2e8f0;color:#718096;font-size:14px;font-style:italic;padding-top:15px;text-align:center}.games-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:25px}.games-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.game-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px 16px;position:relative;transition:all .2s ease}.game-card:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.game-header{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:2px solid #e2e8f0;border-radius:8px 8px 0 0;display:flex;flex-direction:column;margin-bottom:20px;padding:20px;text-align:center}.game-header-compact{margin-bottom:10px}.header-row-top{font-size:13px;margin-bottom:6px}.header-row-bottom,.header-row-top{align-items:center;display:flex;justify-content:space-between}.header-row-bottom{color:#4a5568;font-size:12px}.header-top{display:flex;justify-content:center;margin-bottom:16px}.header-bottom{gap:12px}.header-bottom,.header-left,.header-right{align-items:center;display:flex;justify-content:center}.header-bottom .game-status,.header-bottom .game-time{margin:0}.game-week{background:#ebf8ff;border-radius:4px;color:#4299e1;font-size:13px;font-weight:700;padding:4px 10px}.game-time{color:#2d3748;font-size:13px;font-weight:600}.game-status{align-items:center;gap:6px}.status-text{color:#4a5568}.game-teams{margin-bottom:8px;padding:8px 0}.team{gap:8px}.team-info{align-items:center;gap:6px;justify-content:center;width:100%}.team-details{align-items:center;display:flex;flex-direction:column;gap:1px}.team-logo{flex-shrink:0;height:40px;width:40px}.team-name{font-size:14px;font-weight:600}.team-name-link{color:inherit;cursor:pointer;text-decoration:none;transition:color .2s ease}.team-name-link:hover .team-name{color:#4299e1;text-decoration:underline}.team-abbr{font-size:11px}.team-record{color:#a0aec0;font-size:10px}.team-details *,.team-record{text-shadow:none!important}.team-score{word-wrap:break-word;background:#edf2f7;border-radius:4px;box-sizing:border-box;font-size:18px;max-width:50px;min-width:35px;padding:4px 8px}.vs{font-size:13px;margin:0 8px}.game-venue-compact{color:#2d3748;font-size:12px;font-weight:600}.weather-info-compact{color:#4299e1;font-size:12px}.game-footer-compact{margin-top:8px;text-align:center}.stadium-link{border-radius:6px;display:block;overflow:hidden;transition:all .2s ease;width:100%}.stadium-link:hover{box-shadow:0 4px 12px #00000026;opacity:.9;transform:scale(1.02)}.stadium-image-compact{border-radius:6px;display:block;height:120px;object-fit:cover;width:100%}.view-summary-btn-compact{background:#4299e1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s ease;width:100%}.view-summary-btn-compact:hover{background:#3182ce}.game-info{text-align:center}.game-date{color:#4a5568;font-size:14px;font-weight:500;margin-bottom:4px}.game-venue{color:#718096;font-size:12px;margin-bottom:4px}.game-weather{color:#4299e1;font-style:italic}.view-game-btn{border-radius:6px;display:inline-block;font-size:14px;font-weight:500;padding:10px 20px;text-align:center;text-decoration:none;transition:all .2s ease}.view-game-btn:hover{color:#fff;text-decoration:none}.loading,.no-games{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.loading p,.no-games p{color:#718096;font-size:16px;margin:0 0 10px}.no-games-icon{font-size:48px;margin-bottom:20px}.no-games h3{color:#4a5568;font-size:20px;font-weight:600;margin:0 0 10px}.clear-filters-btn{background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.clear-filters-btn:hover{background:#4b5563;transform:translateY(-1px)}.weather-info{align-items:center;display:flex;gap:8px}.weather-icon{font-size:16px}.weather-details{display:flex;flex-direction:column;gap:2px}.weather-temp{color:#2d3748;font-size:14px;font-weight:600}.weather-desc{color:#718096;font-size:11px}.weather-wind{color:#a0aec0;font-size:10px}.game-venue{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:16px;justify-content:space-between;margin:16px 0;padding:12px}.venue-content{display:flex;flex:1 1;flex-direction:column;gap:8px}.venue-name{color:#2d3748;font-size:16px;font-weight:600;margin:0}.venue-actions{align-items:center;display:flex;gap:8px}.view-summary-btn{background:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.view-summary-btn:hover{background:#2c5aa0;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.stadium-image{border:2px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 8px #00000026;height:120px;object-fit:cover;width:160px}.venue-name{color:#4a5568;font-size:14px;font-weight:500}.game-weather{align-items:center;color:#718096;display:flex;font-size:12px;gap:6px;margin-top:8px}.game-weather .weather-icon{font-size:14px}.game-weather .weather-text{font-size:12px}@media (max-width:1200px){.games-filters-grid{gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}@media (max-width:900px){.games-filters-grid{gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}@media (max-width:768px){.header-content{flex-direction:column;gap:15px;text-align:center}.header-actions{flex-wrap:wrap;justify-content:center}.game-header{padding:15px}.header-bottom{flex-direction:column;gap:16px}.header-left,.header-right{justify-content:center;width:100%}.game-week{font-size:16px;padding:8px 20px}.game-status,.game-time{font-size:14px;padding:6px 12px}.weather-info{justify-content:center}.game-venue{flex-direction:column;text-align:center}.stadium-image{height:90px;width:120px}.games-content{padding:20px 15px}.games-filters-grid,.games-grid{grid-template-columns:1fr}.game-teams{flex-direction:column;gap:15px}.vs{margin:0;transform:rotate(90deg)}.team-score{font-size:20px;padding:6px 10px}}.live-play-explorer{display:flex;flex-direction:column;gap:24px;margin:0 auto;max-width:1200px;padding:24px}.live-play-header h1{font-size:28px;font-weight:700;margin:0 0 12px}.live-play-header p{color:#4a5568;line-height:1.6;margin:0}.live-play-section{background:#fff;border-radius:12px;box-shadow:0 1px 10px #94a3b833;padding:20px 24px}.section-header{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.section-header h2{font-size:20px;font-weight:700;margin:0}.section-actions{align-items:center;display:flex;gap:12px}.section-actions select{background:#f8fafc;border:1px solid #cbd5e0;border-radius:6px;color:#2d3748;font-size:14px;height:36px;padding:6px 10px}.refresh-button{background:#3182ce;font-weight:600;padding:8px 14px;transition:background .2s ease}.refresh-button:not(:disabled):hover{background:#2c5282}.live-play-error{background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;color:#c53030;padding:12px 16px}.live-play-empty{color:#4a5568;padding:16px;text-align:center}.live-play-table-wrapper,.plays-preview-table-wrapper{overflow-x:auto}.live-play-table,.plays-preview-table{border-collapse:collapse;width:100%}.live-play-table td,.live-play-table th,.plays-preview-table td,.plays-preview-table th{border-bottom:1px solid #e2e8f0;font-size:14px;padding:10px 12px;text-align:left}.live-play-table th,.plays-preview-table th{background:#f8fafc;color:#2d3748;font-weight:600}.live-play-table tbody tr.selected-row{background:#ebf8ff}.game-name{display:flex;flex-direction:column;gap:4px}.game-id{color:#718096;font-size:12px;word-break:break-all}.game-actions{flex-wrap:wrap;gap:8px}.launch-button,.select-button{border:1px solid #0000;border-radius:6px;cursor:pointer;font-weight:600;padding:8px 12px;transition:all .2s ease}.select-button{background:#edf2f7;border-color:#cbd5e0;color:#2d3748}.select-button:hover{background:#e2e8f0}.launch-button{background:#2f855a;border-color:#276749;color:#fff}.launch-button:hover{background:#276749}.plays-preview-table td:nth-child(4){max-width:480px;white-space:normal}.live-play-footer{margin-top:16px;text-align:right}.live-play-footer .launch-button{padding:10px 16px}.league-game-hub{display:flex;flex-direction:column;gap:24px}.hub-header{align-items:center;background:linear-gradient(135deg,#1e3a8a,#312e81);border-radius:18px;box-shadow:0 20px 45px #0f172a38;color:#fff;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:28px 32px}.hub-header-text{display:flex;flex-direction:column;gap:10px;max-width:520px}.hub-eyebrow{font-size:.75rem;letter-spacing:.3em;opacity:.7;text-transform:uppercase}.hub-header h1{font-size:2.25rem;font-weight:700;line-height:1.1;margin:0}.hub-header p{color:#f8fafcdb;font-size:1.05rem;margin:0}.hub-header-actions{align-items:center;display:flex}.hub-view-toggle{background:#0f172a40;border:1px solid #94a3b859;border-radius:999px;display:inline-flex;padding:6px}.hub-toggle{background:#0000;border:none;border-radius:999px;color:#e2e8f0cc;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.hub-toggle:hover{color:#f8fafc}.hub-toggle.active{background:#f8fafce6;box-shadow:0 8px 18px #0f172a2e;color:#1e3a8a}.hub-content{background:#fffffff2;border-radius:18px;box-shadow:0 12px 32px #0f172a14;padding:20px}@media (max-width:768px){.hub-header{padding:24px}.hub-header h1{font-size:1.8rem}.hub-view-toggle{justify-content:space-between;width:100%}.hub-toggle{flex:1 1;text-align:center}}.game-details{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.game-header-merged{background:linear-gradient(135deg,#2d3748,#1a202c);border-radius:10px 10px 0 0;box-shadow:0 4px 20px #00000026;margin-bottom:20px;overflow:hidden;position:relative}.header-stadium-bg{height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.stadium-bg-image{height:100%;object-fit:cover;object-position:center;width:100%}.stadium-overlay{background:linear-gradient(180deg,#0f172a8c 0,#0f172a73 50%,#0f172aa6);height:100%;left:0;position:absolute;top:0;width:100%}.header-content{margin:20px auto;max-width:1100px;position:relative;z-index:1}.header-content-inner{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;border-radius:12px;box-shadow:0 8px 32px #00000080;color:#fff!important;padding:28px 40px}.header-content-inner *{color:#fff!important;text-shadow:none!important}.breadcrumb-row{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:20px}.breadcrumb{font-size:13px}.status-badge-inline{border-radius:20px;box-shadow:0 2px 8px #0006;color:#fff;font-size:11px;font-weight:700;letter-spacing:.8px;padding:4px 12px;text-shadow:0 1px 2px #000c;text-transform:uppercase}.breadcrumb-link{color:#fff;font-weight:600;text-shadow:0 2px 4px #000c;transition:color .2s}.breadcrumb-link:hover{color:#fff;text-decoration:underline}.breadcrumb-separator{color:#fff;font-weight:400;text-shadow:0 2px 4px #000c}.breadcrumb-current{color:#fff;font-weight:600;text-shadow:0 2px 4px #000c}.header-scoreboard{align-items:center;display:flex;gap:40px;justify-content:center;margin:0;padding:0;position:relative}.team-section{align-items:center;display:flex;flex:1 1;gap:12px}.team-section.away{justify-content:flex-start}.team-section.home{justify-content:flex-end}.team-logo{filter:drop-shadow(0 4px 12px rgba(0,0,0,.6)) brightness(1.1);height:72px;object-fit:contain;width:72px}.team-info{display:flex;flex-direction:column;gap:2px}.team-abbr{color:#fff;font-size:32px;font-weight:700;letter-spacing:1.5px;text-shadow:0 2px 6px #000000e6}.team-record{color:#fff;font-size:14px;font-weight:600;text-shadow:0 1px 3px #000c}.score-section{gap:24px}.score-section,.scores{align-items:center;display:flex}.scores{gap:16px}.score-section .score,.scores .score{color:#fff;font-size:96px;font-weight:800;letter-spacing:1px;line-height:1;min-width:110px;text-align:center;text-shadow:0 3px 8px #000}.score-sep{color:#fff;font-size:56px;font-weight:300;text-shadow:0 2px 4px #000c}.header-game-info{border-top:1px solid #ffffff26;display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin-top:24px;padding:20px 0 0}.info-item-inline{align-items:center;color:#fff;display:flex;font-size:14px;gap:6px;text-shadow:0 1px 3px #000c}.info-item-inline .info-icon{filter:drop-shadow(0 1px 3px rgba(0,0,0,.8));font-size:14px;opacity:1}.info-item-inline .info-text{font-weight:600}.info-metric{color:#fff;font-weight:700}.info-metric-alert{color:#facc15;text-shadow:0 0 6px #facc158c}.game-status{display:flex;justify-content:center;margin-bottom:8px}.status-badge{border-radius:20px;color:#fff;font-size:14px;font-weight:600;letter-spacing:.5px;padding:8px 16px;text-transform:uppercase}.game-content{box-sizing:border-box;max-width:none;padding:20px 32px 40px;width:100%}.game-scoreboard{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;display:flex;justify-content:space-between;margin-bottom:30px;padding:40px}.game-scoreboard-enhanced{background:#fff;border-radius:10px;box-shadow:0 2px 12px #00000014;margin-bottom:20px;padding:16px 20px}.live-insights{margin:32px 0}.live-insights-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.live-insights-card{background:#fff;border:1px solid #94a3b82e;border-radius:16px;box-shadow:0 12px 32px #0f172a14;display:flex;flex-direction:column;gap:16px;padding:20px 22px}.live-insights-header{color:#0f172a;display:flex;flex-direction:column;gap:4px}.live-insights-header span{color:#64748b;font-size:13px;letter-spacing:.5px;text-transform:uppercase}.live-insights-header strong{color:#0f172a;font-size:30px;font-weight:700}.live-insights-subtext{color:#475569;font-size:12px;font-style:normal}.live-insights-chart{height:140px;width:100%}.live-insights-empty{align-items:center;background:#f8fafc;border:1px dashed #94a3b852;border-radius:12px;color:#475569;display:flex;font-size:13px;height:100%;justify-content:center}.poll-summary-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:12px}.poll-summary-item{background:#f8fafc;border:1px solid #94a3b82e;border-radius:12px;display:flex;flex-direction:column;gap:4px;padding:12px}.poll-summary-item span{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.poll-summary-item strong{color:#0f172a;font-size:18px;font-weight:700}.poll-summary-error{background:#fee2e299;border:1px solid #f8717180;border-radius:8px;color:#b91c1c;font-size:12px;margin-top:10px;padding:8px 10px}.scoreboard-compact{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:20px;justify-content:center;margin-bottom:16px;padding-bottom:16px}.team-compact{align-items:center;display:flex;flex-direction:column;gap:4px}.team-abbr-large{color:#2d3748;font-size:24px;font-weight:700;letter-spacing:.5px}.team-record-small{color:#718096;font-size:12px;font-weight:500}.score-display{align-items:center;display:flex;gap:12px}.score{color:#2d3748;font-size:48px;line-height:1;min-width:60px;text-align:center}.score-separator{color:#cbd5e0;font-size:32px;font-weight:300}.game-info-grid{grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-compact{align-items:center;background:#f7fafc;border-left:3px solid #4299e1;border-radius:6px;display:flex;gap:8px;padding:8px 10px;position:relative}.info-compact.venue-compact{overflow:hidden}.stadium-icon{border-radius:0 6px 6px 0;bottom:0;height:100%;object-fit:cover;opacity:.25;position:absolute;right:0;top:0;width:60px}.info-icon-small{font-size:16px;min-width:20px}.info-text{color:#2d3748;flex:1 1;font-size:14px;line-height:1.4}.info-label-inline{color:#4a5568;font-weight:600}.officials-section{border-top:2px solid #e2e8f0;padding:12px 0 0}.officials-section h3{color:#2d3748;font-size:16px;font-weight:600;margin:0 0 12px}.officials-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.official-item{align-items:center;background:#f7fafc;border-radius:6px;display:flex;gap:10px;padding:8px 10px}.team-name{font-size:22px;font-weight:700;margin-bottom:2px;text-align:center}.team-abbr{font-weight:500;margin-bottom:4px}.team-abbr,.team-record{color:#718096;font-size:13px}.team-record{margin-bottom:8px}.team-score{background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;font-size:36px;min-width:80px;padding:12px 20px;text-align:center}.vs{font-size:18px;font-weight:500;margin:0 30px}.tab-navigation{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;display:flex;margin-bottom:30px;padding:8px}.tab-button{background:#0000;border:none;border-radius:8px;color:#718096;cursor:pointer;flex:1 1;font-size:16px;font-weight:500;padding:12px 20px;transition:all .2s ease}.tab-button:hover{background:#f7fafc;color:#4a5568}.tab-button.active{background:#4299e1;color:#fff}.tab-content{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;margin-bottom:30px;padding:25px}.game-info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.info-card{background:#f7fafc;border-radius:8px;padding:20px}.info-card h3{color:#2d3748;font-size:18px;font-weight:600;margin:0 0 15px}.info-row{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:8px 0}.info-row:last-child{border-bottom:none}.info-label{color:#4a5568}.info-label,.info-value{font-size:14px;font-weight:500}.info-value{color:#2d3748}.officials-list{display:flex;flex-direction:column;gap:12px}.official{align-items:center;display:flex;gap:15px;padding:8px 0}.official-position{background:#4299e1;border-radius:4px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;min-width:60px;padding:4px 8px;text-align:center;text-transform:uppercase}.official-name{color:#2d3748;flex:1 1;font-weight:500}.official-title{color:#718096;font-size:12px;font-style:italic}.plays-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;margin-bottom:30px;padding:32px}.plays-header-section{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:25px}.plays-header-section h2{color:#2d3748;font-size:24px;font-weight:600;margin:0}.plays-filters{align-items:center;background:#f7fafc;border-radius:8px;display:flex;gap:15px;justify-content:space-between;padding:6px}.filter-buttons{display:flex;gap:10px}.filter-actions{gap:10px}.filter-button{background:#0000;border:none;border-radius:6px;color:#718096;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.filter-button:hover{background:#e2e8f0;color:#4a5568}.filter-button.active{background:#4299e1;color:#fff}.filter-button.penalty-filter.active{background:#ef5350;color:#fff}.filter-button.scoring-filter.active{background:#4caf50;color:#fff}.realtime-button{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.realtime-button:hover{background:#059669;transform:translateY(-1px)}.realtime-button.active{background:#ef4444}.realtime-button.active:hover{background:#dc2626}.no-plays{color:#718096;padding:40px;text-align:center}.plays-table{background:#fff;border:1px solid #94a3b859;border-radius:12px;box-shadow:0 18px 36px #0f172a14;overflow:hidden;overflow-x:auto;overflow-y:hidden;width:100%}.play-row-wrapper{border-bottom:1px solid #94a3b829;width:100%}.play-row-wrapper:last-of-type{border-bottom:none}.play-row,.plays-header{display:grid;grid-template-columns:70px 110px 190px 150px minmax(400px,4fr) 160px 120px 140px 190px;width:100%}.sortable-header{gap:6px;justify-content:center;transition:background-color .15s ease,color .15s ease}.sortable-header:focus{outline:2px solid #2563eb73;outline-offset:2px}.sortable-header.sorted{background:linear-gradient(90deg,#2563eb40,#2563eb73);color:#fff}.plays-header{background:linear-gradient(90deg,#1d4ed8,#2563eb);color:#fff;font-size:13px;font-weight:700;letter-spacing:.6px}.play-row{background:#fff;position:relative;transition:background-color .2s ease,transform .2s ease}.play-cell{align-items:center;border-right:1px solid #94a3b829;display:flex;font-size:14px;min-height:54px;padding:14px 12px}.plays-header .play-cell{justify-content:center;padding:16px 12px;text-transform:uppercase}.play-cell:last-child,.plays-header .play-cell:last-child{border-right:none}.play-row:hover{background:#f8fbff}.play-row.scoring{background:#ecfdf5;border-left:4px solid #22c55e}.play-row.scoring .play-text{color:#166534;font-weight:600}.play-row.penalty{background:#fef2f2;border-left:4px solid #ef4444}.play-row.penalty .play-text{color:#b91c1c;font-weight:600}.play-row.new-play{box-shadow:inset 4px 0 0 #0ea5e9}.play-row.duplicate-play:after{background:linear-gradient(90deg,#f8fafc00,#e2e8f073);content:"";inset:0;pointer-events:none;position:absolute}.play-text{color:#1f2937;line-height:1.5}.delay-cell{align-items:flex-start;flex-direction:column;gap:6px}.delay-value{font-feature-settings:"tnum";color:#0f172a;font-weight:700}.batch-badges{display:flex;flex-wrap:wrap;gap:6px}.batch-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:11px;font-weight:700;justify-content:center;letter-spacing:.65px;padding:2px 8px;text-transform:uppercase}.batch-pill-new{background:#dbeafe;border:1px solid #2563eb59;color:#1d4ed8}.batch-pill-new-multi{background:#facc15;border-color:#ca8a0499;box-shadow:0 0 0 1px #ca8a044d;color:#1f2937}.batch-pill-dup{background:#fef3c7;border:1px solid #d9770659;color:#b45309}.metrics-toggle{background:#f8fafc;border:1px solid #94a3b880;border-radius:999px;color:#1f2937;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.6px;margin-top:6px;padding:6px 12px;text-transform:uppercase;transition:all .2s ease}.metrics-toggle:hover{background:#e2e8f0;border-color:#94a3b8cc}.stream-metrics-accordion{background:#f8fbff;border-top:1px solid #94a3b829;padding:14px 24px 18px}.stream-metrics-grid{grid-gap:10px 18px;display:grid;gap:10px 18px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.stream-metrics-row{background:#ffffffeb;border:1px solid #94a3b82e;border-radius:10px;display:flex;flex-direction:column;gap:2px;padding:10px 12px}.stream-metrics-label{color:#475569;font-size:11px;font-weight:700;letter-spacing:.65px;text-transform:uppercase}.stream-metrics-value{font-feature-settings:"tnum";color:#0f172a;font-size:13px;font-weight:600}.sortable-header{border-radius:4px;cursor:pointer;margin:-15px -8px;padding:15px 8px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.sortable-header:hover{background:#ffffff1a;transform:scale(1.02)}.team-cell{color:#4299e1;font-weight:600}.play-text{color:#2d3748;line-height:1.4}.yardage{border-radius:4px;font-size:12px;font-weight:600;padding:2px 6px}.yardage.positive{background:#e8f5e9;color:#2e7d32}.yardage.negative{background:#ffebee;color:#c62828}.yardage.neutral{background:#e2e8f0;color:#1a202c}.yardage.dash{background:#0000;color:#94a3b8;font-weight:500}.yardage-cell{justify-content:center}.score-cell{color:#4a5568;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-weight:600}.connections-cell{font-feature-settings:"tnum";color:#0f172a;justify-content:center}.game-actions{display:flex;gap:20px;justify-content:center;margin-top:30px}.back-button,.refresh-button{border:none;border-radius:8px;cursor:pointer;display:inline-block;font-size:16px;font-weight:500;padding:12px 24px;text-align:center;text-decoration:none;transition:all .2s ease}.back-button{background:#6b7280;color:#fff}.back-button:hover{background:#4b5563;color:#fff;text-decoration:none;transform:translateY(-1px)}.refresh-button:hover{background:#3182ce;transform:translateY(-1px)}.error,.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.error p,.loading p{color:#718096;font-size:16px;margin:0}.error h2{color:#e53e3e;font-size:24px;margin:0 0 10px}@media (max-width:768px){.game-content{padding:20px 15px}.game-scoreboard{flex-direction:column;gap:20px;padding:30px 20px}.vs{margin:0;transform:rotate(90deg)}.team-score{font-size:36px;padding:15px 20px}.tab-navigation{flex-direction:column}.tab-button{margin-bottom:4px}.play-row,.plays-header{gap:8px;grid-template-columns:1fr}.play-cell{border-bottom:1px solid #e2e8f0;padding:8px 0}.play-cell:before{color:#4a5568;content:attr(data-label) ": ";font-weight:600;margin-right:8px}.game-actions{align-items:center;flex-direction:column}.back-button,.refresh-button{max-width:300px;width:100%}}.create-button{background-color:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .3s}.create-button:hover{background-color:#45a049}.actions-cell{display:flex;gap:8px;justify-content:center}.delete-play-btn,.edit-play-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:1.2rem;padding:4px 8px;transition:background-color .2s}.edit-play-btn:hover{background-color:#e3f2fd}.delete-play-btn:hover{background-color:#ffebee}.modal-overlay{background-color:#00000080}.modal-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;padding:24px}.modal-content h3{color:#333;margin:0 0 16px}.modal-content p{color:#666;margin:12px 0}.btn-cancel{background-color:#757575;border-radius:6px;color:#fff;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .3s}.btn-cancel:hover{background-color:#616161}.btn-save{background-color:#4caf50;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .3s}.btn-save:hover{background-color:#45a049}.btn-delete-confirm{background-color:#f44336;border-radius:6px;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .3s}.btn-delete-confirm:hover{background-color:#d32f2f}.edit-form{margin:16px 0}.form-group{margin-bottom:16px}.form-group label{color:#333;margin-bottom:4px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ccc;border-radius:4px;font-size:14px;padding:8px 12px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2196f3}.form-group input[type=checkbox]{margin-right:8px;width:auto}.call-actions-cell{align-items:center!important;display:flex!important;justify-content:flex-end!important;padding:8px!important}.call-actions{align-items:center;display:flex;flex-wrap:nowrap;gap:12px;justify-content:flex-end;width:100%}.user-call-status{align-items:center;display:flex;gap:6px}.user-call-indicator{align-items:center;display:flex;gap:8px;justify-content:flex-end;width:100%}.call-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:11px;font-weight:700;gap:4px;justify-content:center;min-width:80px;padding:4px 8px;white-space:nowrap}.call-good{background:#d1fae5;color:#065f46}.call-bad{background:#fee2e2;color:#991b1b}.call-missed{background:#fef3c7;color:#92400e}.flag-play-btn{align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:0;height:36px;justify-content:center;min-width:36px;padding:6px;transition:all .2s ease;white-space:nowrap}.flag-play-btn .flag-icon{filter:brightness(0) invert(1);height:22px;object-fit:contain;width:22px}.flag-play-btn:hover{background:#dc2626;box-shadow:0 2px 8px #ef444466;transform:translateY(-1px)}.delete-call-btn{background:#0000;border:1px solid #ef4444;border-radius:4px;color:#ef4444;cursor:pointer;font-size:14px;padding:4px 8px;transition:all .2s ease}.delete-call-btn:hover{background:#ef4444;color:#fff}.modal-overlay{background:#000000b3}.modal-content{box-shadow:0 10px 40px #0000004d;padding:30px}.modal-content h3{color:#2d3748;font-size:24px;margin:0 0 20px}.modal-play-info{background:#f7fafc;border-radius:8px;margin-bottom:20px;padding:15px}.modal-play-info p{color:#4a5568;margin:5px 0}.modal-actions{gap:12px;margin-top:20px}.modal-actions-vertical{display:flex;flex-direction:column;gap:12px}.flag-btn{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 20px;text-align:left;transition:all .2s ease}.flag-good{background:#d1fae5;color:#065f46}.flag-good:hover{background:#a7f3d0}.flag-bad{background:#fee2e2;color:#991b1b}.flag-bad:hover{background:#fecaca}.flag-missed{background:#fef3c7;color:#92400e}.flag-missed:hover{background:#fde68a}.btn-cancel,.btn-delete-confirm{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 20px;transition:all .2s ease}.btn-delete-confirm{background:#ef4444;color:#fff}.btn-delete-confirm:hover{background:#dc2626}.play-meta{grid-gap:6px;background:#f8fafc;border:1px solid #94a3b833;border-radius:10px;display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-top:10px;padding:10px 12px}.play-meta-item{align-items:center;color:#475569;display:flex;font-size:12px;gap:6px}.play-meta-item strong{color:#1d4ed8;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.debug-button{background:#edf2f7;border:1px solid #cbd5e0;border-radius:20px;color:#2d3748;cursor:pointer;font-weight:600;padding:8px 14px;transition:all .2s ease}.debug-button:hover{background:#e2e8f0}.debug-button.active{background:#2d3748;border-color:#2d3748;color:#fff}.debug-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 16px #94a3b840;margin-top:20px;padding:16px 20px}.debug-panel-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.debug-panel-header h3{color:#1a202c;font-size:16px;margin:0}.debug-panel-actions{align-items:center;color:#4a5568;display:flex;font-size:13px;gap:12px}.debug-filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.debug-filters label{align-items:center;color:#2d3748;display:flex;font-size:13px;gap:6px}.debug-filters select{background:#f8fafc;border:1px solid #cbd5e0;border-radius:8px;padding:6px 8px}.debug-checkbox{font-size:13px}.debug-summary{border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;color:#4a5568;display:flex;flex-wrap:wrap;font-size:13px;gap:16px;margin-bottom:12px;padding:8px 0}.debug-table-wrapper{overflow-x:auto}.debug-table{border-collapse:collapse;font-size:12px;width:100%}.debug-table td,.debug-table th{border-bottom:1px solid #e2e8f0;padding:8px 10px;text-align:left;white-space:nowrap}.debug-table th{background:#f8fafc;color:#1a202c;font-weight:600}.debug-table tbody tr.new-row{background:#f0fff4}.debug-table tbody tr.duplicate-row{background:#fffaf0}.debug-table tbody tr:hover{background:#edf2f7}.no-debug-data{color:#718096;font-size:13px;padding:12px 0}.penalty-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #00000014;margin-bottom:.5rem;padding:.75rem 1rem;transition:all .2s ease}.penalty-card:hover{border-color:#cbd5e0;box-shadow:0 2px 6px #0000001f}.penalty-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:.5rem;padding-bottom:.4rem}.team-score-info{align-items:center;display:flex;font-size:.85rem;gap:.4rem}.team-name-short{color:#2d3748;font-size:.85rem;font-weight:600}.vs{color:#4a5568;font-size:.8rem;font-weight:600;margin:0 .15rem}.score{color:#1a202c;font-size:.9rem;font-weight:700;margin-left:.3rem}.penalty-actions{align-items:center;display:flex;gap:.3rem}.flag-icon,.penalty-type,.thumbs-up{font-size:1rem}.penalty-type{color:#1a202c;font-weight:700;margin-bottom:.4rem}.penalty-details-row{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:0}.penalty-details-left{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;font-size:.85rem;gap:.75rem}.penalty-player{color:#2d3748;font-size:.85rem;font-weight:600}.penalty-time{color:#4a5568;font-size:.85rem}.penalty-yards{align-items:center;display:flex;gap:.3rem}.flag-icon-small,.yards-text{font-size:.85rem}.yards-text{font-weight:600}.penalty-referee{color:#4a5568;font-size:.8rem}.penalty-flag-type{align-items:center;display:flex;gap:.3rem}.flag-type-icon{font-size:1rem}.flag-type-text{font-size:.85rem;font-weight:600;text-transform:capitalize}.penalty-description{color:#4a5568;font-size:.85rem;line-height:1.4;margin-bottom:0;margin-top:.4rem}.penalty-timestamp{display:none}.penalty-action-buttons{align-items:center;display:flex;gap:.4rem;margin-left:.75rem}.delete-btn,.edit-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:1.1rem;padding:.2rem;transition:background-color .2s}.edit-btn:hover{background-color:#e3f2fd}.delete-btn:hover{background-color:#ffebee}.penalty-pagination{border-top:1px solid #e2e8f0;margin-top:1rem;padding-top:.75rem;text-align:center}.game-context{margin-top:1rem}@media (max-width:768px){.penalty-card{padding:1rem}.penalty-header{align-items:stretch;flex-direction:column;gap:.5rem}.team-score-info{justify-content:center}.penalty-details{flex-direction:column;gap:.5rem}.penalty-yards{align-items:center;flex-direction:row}.penalty-action-buttons,.penalty-yards{justify-content:center}}.penalties-list{margin:0 auto;max-width:1200px;padding:0 1rem;width:100%}.penalties-title{margin-bottom:2rem;text-align:center}.penalties-title h2{color:#1a202c;font-size:2rem;font-weight:700;margin:0}.penalties-container{display:flex;flex-direction:column;gap:1rem}.no-penalties{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.no-penalties h3{color:#2d3748;font-size:1.5rem;margin:0 0 1rem}.no-penalties p{color:#4a5568;font-size:1.1rem;margin:0}.game-context{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-top:2rem;padding:1.5rem}.game-context-title{color:#1a202c;font-size:1.2rem;font-weight:700;margin-bottom:1rem}.game-context-item{font-size:1rem;margin-bottom:.5rem}.game-context-label{color:#2d3748;font-weight:700}.game-context-value{color:#4a5568}.penalties-pagination{border-top:1px solid #e2e8f0;margin-top:1rem;padding-top:1rem;text-align:center}.expand-btn{background:#4299e1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.expand-btn:hover{background:#3182ce;transform:translateY(-1px)}@media (max-width:768px){.penalties-list{padding:0 .5rem}.penalties-title h2{font-size:1.5rem}.game-context{padding:1rem}}.team-penalties-view{background:#f5f5f5;min-height:100vh;padding:0}.team-penalties-header{background:#f8f9fa;border-bottom:1px solid #e2e8f0;padding:1rem 0 .5rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;gap:1rem;padding:0 1rem}.back-button button{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:50%;color:#495057;cursor:pointer;display:flex;font-size:1.2rem;height:40px;justify-content:center;transition:all .2s ease;width:40px}.back-button button:hover{background:#e9ecef;border-color:#adb5bd}.team-title{color:#1a202c;flex:1 1;font-size:1.5rem;font-weight:600;text-align:center}.header-subtitle{color:#6b7280;font-size:.9rem;margin-top:.25rem;padding:0 1rem;text-align:center}.team-penalties-content{margin:0 auto;max-width:1200px;padding:1rem}.penalty-statistics{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:1rem;padding:1.5rem}.statistics-grid{display:flex;flex-direction:column;gap:.75rem}.stat-item{align-items:center;border-bottom:1px solid #f1f3f4;display:flex;justify-content:space-between;padding:.5rem 0}.stat-item:last-child{border-bottom:none}.stat-label{color:#4a5568;font-size:1rem;font-weight:500}.stat-value{font-size:1.1rem;font-weight:700}.stat-value.red{color:#ef4444}.stat-value.blue{color:#4299e1}.error,.loading,.no-penalties{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:2rem;padding:4rem 2rem;text-align:center}.loading .spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#4299e1;height:40px;margin-bottom:1rem;width:40px}.error p,.loading p,.no-penalties p{color:#4a5568;font-size:1.1rem;margin:0}.error h2,.no-penalties h2{color:#2d3748;font-size:1.5rem;margin:0 0 1rem}.no-penalties-icon{font-size:4rem;margin-bottom:1rem}.retry-button{background:#4299e1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:all .2s ease}.retry-button:hover{background:#3182ce;transform:translateY(-1px)}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;max-height:80vh;max-width:500px;overflow-y:auto;padding:2rem;width:90%}.modal-content h3{color:#1a202c;font-size:1.5rem;margin:0 0 1.5rem}.edit-form{margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group label{color:#2d3748;display:block;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.75rem;transition:border-color .2s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.penalty-info{background:#f8f9fa;border-radius:8px;margin-top:1rem;padding:1rem}.penalty-info p{color:#4a5568;margin:.5rem 0}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}.btn-cancel,.btn-save{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.btn-cancel{background:#e2e8f0;color:#4a5568}.btn-cancel:hover{background:#cbd5e0}.btn-save{background:#4299e1;color:#fff}.btn-save:hover{background:#3182ce}@media (max-width:768px){.team-penalties-content{padding:.5rem}.team-title{font-size:1.25rem}.penalty-statistics{padding:1rem}.statistics-grid{gap:.5rem}.stat-label{font-size:.9rem}.stat-value{font-size:1rem}.modal-content{margin:1rem;padding:1.5rem}}.detail-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.detail-header{background:#fff;box-shadow:0 2px 10px #0000001a;padding:20px 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{margin:0 auto;max-width:1200px;padding:0 20px}.breadcrumb{align-items:center;color:#718096;display:flex;font-size:14px;gap:8px;margin-bottom:10px}.breadcrumb-link{color:#4299e1;text-decoration:none;transition:color .2s ease}.breadcrumb-link:hover{color:#3182ce}.breadcrumb-separator{color:#a0aec0}.breadcrumb-current{color:#2d3748;font-weight:500}.detail-header h1{color:#2d3748;font-size:28px;font-weight:700;margin:0 0 15px}.header-actions{align-items:center;display:flex;gap:20px}.league-selector .league-select{background:#fff;border:1px solid #cbd5e0;border-radius:6px;color:#2d3748;font-size:14px;height:36px;padding:6px 10px}.league-selector .league-select:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e133;outline:none}.filters-panel{background:#f7fafc;border:1px solid #e2e8f0;border-radius:10px;margin-top:20px;padding:16px 20px}.filters-form{grid-gap:16px;align-items:end;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{color:#4a5568;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.filter-group input,.filter-group select{background-color:#fff;border:1px solid #cbd5e0;border-radius:6px;color:#2d3748;font-size:14px;height:36px;padding:0 10px;transition:border-color .2s ease,box-shadow .2s ease}.filter-group input:focus,.filter-group select:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e133;outline:none}.filter-actions{align-items:center;display:flex;gap:12px}.apply-filters-btn,.clear-filters-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:8px 14px;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.apply-filters-btn{background:#2563eb;color:#fff}.apply-filters-btn:hover:not(:disabled){background:#1d4ed8;box-shadow:0 6px 18px #1d4ed840;transform:translateY(-1px)}.apply-filters-btn:disabled{background:#94a3b8;cursor:not-allowed}.clear-filters-btn{background:#edf2f7;color:#2d3748}.clear-filters-btn:hover:not(:disabled){background:#e2e8f0;transform:translateY(-1px)}.clear-filters-btn:disabled{cursor:not-allowed;opacity:.6}.last-update{color:#718096;font-size:14px}.refresh-button{background:#4299e1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.refresh-button:hover:not(:disabled){background:#3182ce;transform:translateY(-1px)}.refresh-button:disabled{background:#a0aec0;cursor:not-allowed;transform:none}.detail-content{margin:0 auto;max-width:1200px;padding:30px 20px}.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#4299e1;height:40px;margin-bottom:20px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading p{color:#718096;font-size:16px;margin:0}.summary-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.summary-card{background:#f7fafc;border:2px solid #e2e8f0;border-radius:10px;padding:25px;text-align:center;transition:all .2s ease}.summary-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.summary-card.active{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#10b981}.summary-card.completed{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-color:#6b7280}.summary-card.scheduled{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#3b82f6}.summary-value{color:#2d3748;font-size:36px;font-weight:700;margin-bottom:8px}.summary-label{color:#718096;font-size:14px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.cleanup-section,.connections-section,.games-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:30px}.cleanup-list,.connections-list,.games-list{margin-top:30px}.cleanup-list h2,.connections-list h2,.games-list h2{color:#2d3748;font-size:24px;font-weight:600;margin:0 0 25px}.cleanup-grid,.connections-grid,.games-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.cleanup-card,.connection-card,.game-card{background:#f7fafc;border:2px solid #e2e8f0;border-radius:10px;padding:25px;transition:all .2s ease}.cleanup-card:hover,.connection-card:hover,.game-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.game-card.active{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#10b981}.game-card.completed{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-color:#6b7280}.game-card.scheduled{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#3b82f6}.cleanup-header,.connection-header,.game-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.cleanup-status,.connection-status,.game-status{align-items:center;display:flex;gap:8px}.status-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.status-dot.completed{background-color:#6b7280}.status-dot.scheduled{background-color:#3b82f6}.status-text{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.status-icon{font-size:16px}.cleanup-type,.connection-id,.game-time{align-items:center;color:#718096;display:flex;font-size:14px;gap:8px}.time-until{font-weight:600}.game-teams{border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;justify-content:space-between;margin-bottom:20px;padding:15px 0}.team{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:5px}.team.winner{color:#10b981;font-weight:600}.team-name{color:#2d3748;font-size:16px;font-weight:500}.team-score{color:#2d3748;font-size:24px;font-weight:700}.vs{color:#718096;font-size:14px;margin:0 10px}.winner-badge{background:#10b981;border-radius:12px;color:#fff;font-size:10px;font-weight:600;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.game-info{margin-bottom:20px}.game-date,.game-week{color:#718096;font-size:14px;text-align:center}.game-week{font-weight:500;margin-top:5px}.connection-actions,.game-actions{display:flex;gap:10px;justify-content:center}.disconnect-btn,.view-game-btn{border:none;border-radius:6px;cursor:pointer;display:inline-block;font-size:14px;font-weight:500;padding:8px 16px;text-align:center;text-decoration:none;transition:all .2s ease}.view-game-btn{background:#4299e1;color:#fff}.view-game-btn:hover{background:#3182ce;transform:translateY(-1px)}.disconnect-btn{background:#e53e3e;color:#fff}.disconnect-btn:hover{background:#c53030;transform:translateY(-1px)}.cleanup-details,.connection-details{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.detail-row{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:8px 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#4a5568;font-size:14px;font-weight:500}.detail-value{background:#edf2f7;border-radius:4px;color:#2d3748;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;padding:4px 8px}.cleanup-title{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.cleanup-title h3{color:#2d3748;font-size:18px;font-weight:600;margin:0}.cleanup-time{color:#718096;font-size:14px}.type-icon{font-size:16px}.type-text{color:#718096;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.no-cleanups,.no-connections,.no-games{color:#718096;padding:60px 20px;text-align:center}.no-cleanups-icon,.no-connections-icon,.no-games-icon{font-size:48px;margin-bottom:20px}.no-cleanups h3,.no-connections h3,.no-games h3{color:#4a5568;font-size:20px;font-weight:600;margin:0 0 10px}.no-cleanups p,.no-connections p,.no-games p{font-size:16px;margin:5px 0}.game-info{background:#0000;border:none;padding:0}.game-teams{gap:8px;justify-content:center}.game-teams,.game-teams .team{align-items:center;display:flex}.game-teams .team{gap:4px}.team-logo-small{height:20px;object-fit:contain;width:20px}.game-teams .team-name{color:#2d3748;font-size:12px;font-weight:500}.game-teams .vs{color:#718096;font-size:10px;margin:0 4px}.league-selector{align-items:center;display:flex}.league-select{background:#fff;border:1px solid #cbd5f5;border-radius:6px;color:#2d3748;cursor:pointer;font-size:14px;padding:6px 10px;transition:border-color .2s ease}.league-select:focus,.league-select:hover{border-color:#4299e1;outline:none}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.error-banner,.info-banner{border-radius:10px;font-size:14px;line-height:1.5;margin-bottom:20px;padding:16px 20px}.error-banner{background:#fff5f5;border:1px solid #fed7d7;color:#c53030}.info-banner{background:#ebf8ff;border:1px solid #bee3f8;color:#2b6cb0}.info-banner.warning{background:#fff9db;border:1px solid #f6ad55;color:#c05621}.inactive-section{margin-top:40px}.inactive-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.inactive-card{background:#f9fafb;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:8px;padding:16px}.inactive-header{align-items:center;display:flex;justify-content:space-between}.inactive-title{color:#2d3748;font-weight:600}.inactive-tag{color:#718096;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.inactive-meta{color:#4a5568;display:flex;flex-direction:column;font-size:13px;gap:4px}.games-table{margin-top:40px}.games-table .table-wrapper{border:1px solid #e2e8f0;border-radius:10px;overflow-x:auto}.games-table table{border-collapse:collapse;min-width:720px;width:100%}.games-table td,.games-table th{border-bottom:1px solid #e2e8f0;font-size:14px;padding:12px 16px;text-align:left}.games-table th{background:#f7fafc;color:#2d3748;font-weight:600}.games-table tbody tr:hover{background:#f1f5f9}@media (max-width:768px){.header-content{padding:0 15px}.detail-content{padding:20px 15px}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.cleanup-grid,.connections-grid,.games-grid{grid-template-columns:1fr}.game-teams{flex-direction:column;gap:15px}.vs{margin:0}.detail-row{gap:4px}.cleanup-title,.detail-row{align-items:flex-start;flex-direction:column}.cleanup-title{gap:10px}}.public-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f172ad9;border-bottom:1px solid #94a3b833;position:-webkit-sticky;position:sticky;top:0;z-index:100}.public-header-container{align-items:center;display:flex;gap:24px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:16px 32px}.public-brand{align-items:center;display:flex;gap:12px;text-decoration:none}.public-brand-icon{height:42px;width:42px}.public-brand-text{display:flex;flex-direction:column;gap:2px}.brand-title{color:#f8fafc;font-size:18px;font-weight:700}.brand-subtitle{color:#e2e8f0c2;font-size:12px;letter-spacing:.4px;text-transform:uppercase}.public-nav{display:flex;gap:20px}.public-nav-link{color:#cbd5f5;font-weight:600;letter-spacing:.3px;padding-bottom:4px;position:relative;text-decoration:none}.public-nav-link:after{background:linear-gradient(90deg,#38bdf8,#6366f1);bottom:0;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:left;transition:transform .2s ease;width:100%}.public-nav-link.active:after,.public-nav-link:hover:after{transform:scaleX(1)}.public-actions{align-items:center;display:flex;gap:12px}.public-action-link{color:#cbd5f5;font-weight:600;letter-spacing:.3px;text-decoration:none}.public-action-button{background:linear-gradient(135deg,#22d3ee,#6366f1);border-radius:999px;box-shadow:0 14px 28px #4f46e559;color:#0f172a;font-weight:700;padding:10px 18px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.public-action-button:hover{box-shadow:0 18px 34px #4f46e573;transform:translateY(-2px)}@media (max-width:900px){.public-header-container{align-items:flex-start;flex-direction:column;gap:16px}.public-actions{width:100%}.public-action-button{text-align:center;width:100%}}.support-portal{background:linear-gradient(180deg,#0f172a,#111827 40%,#1f2937);color:#f9fafb;min-height:100vh;padding-bottom:80px}.support-hero{display:flex;justify-content:center;padding:64px 24px 32px;text-align:center}.support-hero-content{max-width:720px}.support-hero h1{font-size:2.75rem;margin-bottom:16px}.support-hero p{color:#e5e7eb;font-size:1.1rem;line-height:1.6}.support-contact-chip{align-items:center;background:#ef444426;border-radius:999px;color:#fca5a5;display:inline-flex;font-weight:600;gap:8px;margin-top:20px;padding:10px 16px}.support-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin:0 auto;max-width:1200px;padding:0 24px}.support-faq-card,.support-form-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#111827e6;border:1px solid #ffffff14;border-radius:16px;box-shadow:0 24px 60px #0f172a59;padding:32px}.support-faq-card h2,.support-form-card h2{font-size:1.75rem;margin-bottom:16px}.support-form-card p{color:#cbd5f5;line-height:1.6;margin-bottom:24px}.support-form{grid-gap:16px;display:grid;gap:16px}.support-form label{color:#e2e8f0;font-weight:600}.support-form input,.support-form select,.support-form textarea{background:#0f172a99;border:1px solid #94a3b866;border-radius:10px;color:#f8fafc;font-size:1rem;padding:12px 14px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.support-form input:focus,.support-form select:focus,.support-form textarea:focus{border-color:#f87171;box-shadow:0 0 0 3px #f8717140;outline:none}.support-form textarea{resize:vertical}.support-submit{background:linear-gradient(135deg,#ef4444,#b91c1c);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:8px;padding:14px 18px;transition:transform .2s ease,box-shadow .2s ease}.support-submit:hover:not(:disabled){box-shadow:0 12px 30px #ef444459;transform:translateY(-1px)}.support-submit:disabled{cursor:progress;opacity:.65}.support-alert{border-radius:10px;font-size:.95rem;line-height:1.5;padding:12px 14px}.support-alert.error{background:#ef444426;border:1px solid #ef444459;color:#fca5a5}.support-alert.success{background:#22c55e26;border:1px solid #22c55e59;color:#bbf7d0}.support-faq-card{display:flex;flex-direction:column;gap:20px}.faq-item{background:#1e293ba6;border:1px solid #ffffff0f;border-radius:12px;padding:20px}.faq-item h3{color:#f97316;font-size:1.2rem;margin-bottom:8px}.faq-item p{color:#d1d5db;line-height:1.6;margin:0}.support-extra-help{background:#3b82f61f;border:1px solid #3b82f640;border-radius:12px;color:#bfdbfe;margin-top:auto;padding:18px}.support-extra-help a{color:#93c5fd;font-weight:600}@media (max-width:768px){.support-hero{padding-top:48px}.support-hero h1{font-size:2.2rem}.support-faq-card,.support-form-card{padding:24px}}.marketing-page{background:radial-gradient(circle at top,#111827,#0b1120 55%,#020617 100%);color:#e2e8f0;min-height:100vh;overflow-x:hidden}.marketing-hero{align-items:center;display:flex;flex-wrap:wrap;gap:48px;justify-content:center;padding:80px 32px 40px}.marketing-hero-content{max-width:560px}.marketing-hero h1{color:#f8fafc;font-size:3rem;margin-bottom:16px}.marketing-hero p{color:#cbd5f5;font-size:1.125rem;line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:28px}.cta-button{align-items:center;border-radius:999px;display:inline-flex;font-weight:600;justify-content:center;padding:14px 24px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.cta-button.primary{background:linear-gradient(135deg,#ef4444,#b91c1c);box-shadow:0 18px 40px #ef44444d;color:#fff}.cta-button.secondary{background:#3b82f62e;border:1px solid #94a3b859;color:#93c5fd}.cta-button.tertiary{background:#94a3b81f;border:1px solid #94a3b847;color:#cbd5e1}.cta-button:hover{transform:translateY(-2px)}.cta-button.primary:hover{box-shadow:0 22px 45px #ef444466}.marketing-hero-art{display:flex;flex:1 1 320px;justify-content:center}.phone-frame{background:linear-gradient(145deg,#94a3b859,#1e293bcc);border-radius:32px;box-shadow:0 40px 80px #0f172a73;height:520px;padding:18px;position:relative;width:280px}.phone-screen{background:linear-gradient(180deg,#111827,#1e293b);border-radius:24px;display:flex;flex-direction:column;gap:20px;height:100%;padding:24px 18px}.screen-header{color:#94a3b8;font-size:.9rem;letter-spacing:.04em;text-align:center}.call-options{grid-gap:12px;display:grid;gap:12px}.call-pill{background:#94a3b826;border:1px solid #94a3b81f;border-radius:12px;color:#e2e8f0;font-weight:600;padding:12px 16px;text-align:center}.call-pill.bad{background:#f871712e;border-color:#f8717159;color:#fecaca}.call-pill.good{background:#34d3992e;border-color:#34d39959;color:#bbf7d0}.call-pill.missed{background:#f973162e;border-color:#f9731659;color:#fed7aa}.voting-meter{background:#0f172abf;border:1px solid #94a3b826;border-radius:999px;display:flex;font-size:.75rem;margin-top:auto;overflow:hidden;text-align:center;width:100%}.voting-meter .bar{align-items:center;display:flex;justify-content:center;padding:4px 0}.voting-meter .bad{background:#f87171e6}.voting-meter .neutral{background:#94a3b8d9}.voting-meter .good{background:#34d399e6}.features-section{padding:40px 32px 60px}.features-section h2{font-size:2.25rem;margin-bottom:32px;text-align:center}.features-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:0 auto;max-width:1024px}.feature-card{background:#0f172aa6;border:1px solid #94a3b826;border-radius:16px;box-shadow:0 20px 55px #0f172a59;padding:24px}.feature-icon{font-size:2rem;margin-bottom:12px}.feature-card h3{color:#f97316;font-size:1.25rem;margin-bottom:12px}.feature-card p{color:#cbd5e1;line-height:1.6}.experience-section{background:linear-gradient(180deg,#0f172acc,#111827f2);padding:60px 32px 80px}.experience-grid{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto;max-width:1100px}.experience-copy h2{font-size:2.1rem;margin-bottom:16px}.experience-copy ol{color:#e2e8f0;line-height:1.6;margin-bottom:18px;margin-left:20px}.experience-copy p{color:#cbd5e1;line-height:1.7}.tablet-frame{background:linear-gradient(145deg,#0e749061,#1e40afb8);border-radius:32px;box-shadow:0 45px 90px #1e40af59;margin:0 auto;max-width:100%;padding:20px;width:420px}.tablet-screen{background:linear-gradient(180deg,#0f172a,#1f2937);border-radius:24px;color:#e2e8f0;padding:28px 24px}.tablet-header{color:#93c5fd;font-size:1rem;font-weight:600;letter-spacing:.08em;margin-bottom:18px;text-transform:uppercase}.tablet-body{grid-gap:18px;display:grid;gap:18px}.pulse-stat{background:#94a3b81f;border-radius:12px;display:flex;justify-content:space-between;padding:12px 16px}.stat-label{color:#94a3b8;font-size:.9rem}.stat-value{color:#f8fafc;font-weight:600}.stat-value.warning{color:#fbbf24}.pulse-graph{margin-top:12px}.graph-label{color:#94a3b8;font-size:.85rem}.graph-bars{align-items:flex-end;display:flex;gap:10px;height:140px;margin-top:12px}.graph-bar{background:#94a3b859;border-radius:8px 8px 0 0;flex:1 1}.graph-bar.bad{background:linear-gradient(180deg,#ef4444d9,#7f1d1dd9)}.graph-bar.good{background:linear-gradient(180deg,#22c55ed9,#15803dd9)}.graph-bar.neutral{background:linear-gradient(180deg,#94a3b8d9,#475569d9)}.cta-section{display:flex;justify-content:center;padding:80px 24px 120px}.cta-card{background:linear-gradient(135deg,#ef444433,#3b82f633);border:1px solid #ffffff1f;border-radius:28px;box-shadow:0 40px 90px #0f172a73;max-width:720px;padding:48px 40px;text-align:center;width:100%}.cta-card h2{color:#f8fafc;font-size:2.4rem;margin-bottom:16px}.cta-card p{color:#e2e8f0;font-size:1.125rem;line-height:1.7}.cta-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:28px}@media (max-width:960px){.marketing-hero{padding-top:60px}.marketing-hero h1{font-size:2.4rem}.marketing-hero-art{order:-1}}@media (max-width:640px){.marketing-hero{padding:48px 20px 32px}.hero-actions{align-items:stretch;flex-direction:column}.experience-section,.features-section{padding-left:20px;padding-right:20px}.cta-card{padding:38px 24px}}.App{padding:20px;text-align:center}.App-header{margin-bottom:20px}table{border-collapse:collapse;margin-top:20px;width:100%}td,th{border-bottom:1px solid #ddd;padding:12px;text-align:left}th{background-color:#f5f5f5;font-weight:700}tr:hover{background-color:#f9f9f9}.error{background-color:#fff5f5;border:1px solid red;border-radius:4px;color:red;margin:20px;padding:10px}button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;margin:10px;padding:10px 20px}button:disabled{background-color:#ccc;cursor:not-allowed}
/*# sourceMappingURL=main.ce477c64.css.map*/