.mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--bg-card);border-top:1px solid var(--border);padding:.5rem 0;padding-bottom:calc(.5rem + env(safe-area-inset-bottom,0));z-index:1000;justify-content:space-around;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:rgba(var(--bg-card-rgb, 30, 33, 45),.95)}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .75rem;background:none;border:none;color:var(--text-muted);cursor:pointer;transition:all .15s ease;border-radius:var(--radius);min-width:60px;-webkit-tap-highlight-color:transparent}.mobile-nav-item:active{transform:scale(.95);background:var(--bg-dark)}.mobile-nav-item.active{color:var(--accent)}.mobile-nav-item.active .mobile-nav-icon{transform:scale(1.1)}.mobile-nav-icon{font-size:1.25rem;line-height:1;transition:transform .15s ease}.mobile-nav-label{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}@media (max-width: 768px){.mobile-nav{display:flex}body{padding-bottom:calc(70px + env(safe-area-inset-bottom,0))}.league-nav .nav-links{display:none}}@media (min-width: 481px) and (max-width: 768px){.mobile-nav-item{padding:.625rem 1rem;min-width:70px}.mobile-nav-icon{font-size:1.375rem}.mobile-nav-label{font-size:.6875rem}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-dark: #0a0e17;--bg-card: #111827;--bg-hover: #1f2937;--bg-active: #374151;--border: #1f2937;--text-primary: #f9fafb;--text-secondary: #9ca3af;--text-muted: #6b7280;--accent-cyan: #22d3ee;--accent-blue: #3b82f6;--accent-purple: #8b5cf6;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--gradient: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue));--radius: 8px;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .3)}html{font-size:14px}body{font-family:Urbanist,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-dark);color:var(--text-primary);line-height:1.5;min-height:100vh}a{color:var(--accent-cyan);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{font-weight:600;line-height:1.2}h1{font-size:2.5rem}h2{font-size:1.5rem}h3{font-size:1.125rem}.muted{color:var(--text-muted)}.success{color:var(--success)}.warning{color:var(--warning)}.danger{color:var(--danger)}.positive{color:var(--success)}.negative{color:var(--danger)}.gradient-text{background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.loading{display:flex;align-items:center;justify-content:center;min-height:50vh;color:var(--text-muted)}.error-page{display:flex;align-items:center;justify-content:center;min-height:50vh;color:var(--danger)}.error-banner{background:#ef44441a;border:1px solid var(--danger);color:var(--danger);padding:.75rem 1rem;border-radius:var(--radius);margin-bottom:1rem}.success-banner{position:fixed;top:80px;left:50%;transform:translate(-50%);background:var(--success);color:#fff;padding:.875rem 1.5rem;border-radius:var(--radius);text-align:center;animation:toastSlideIn .3s ease-out;z-index:1000;box-shadow:0 4px 20px #0000004d;font-weight:500;min-width:250px;display:flex;align-items:center;gap:.5rem;justify-content:center}.success-banner .success-icon{font-weight:700;font-size:1.1em}@keyframes toastSlideIn{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.confirm-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;max-width:400px;width:90%}.confirm-modal h3{margin:0 0 1rem;color:var(--text-primary)}.confirm-modal p{margin:0 0 .75rem;color:var(--text-secondary);line-height:1.5}.confirm-modal .warning-text{color:var(--warning);font-size:.85rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.modal-actions button{min-width:100px}.panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}button{font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;border:none;border-radius:var(--radius);padding:.5rem 1rem;transition:all .15s ease;color:inherit}button.primary{background:var(--gradient);color:var(--bg-dark)}button.primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}button.ghost{background:transparent;border:1px solid var(--border);color:var(--text-primary)}button.ghost:hover:not(:disabled){background:var(--bg-hover)}button.small{padding:.25rem .5rem;font-size:.75rem}button:disabled{opacity:.5;cursor:not-allowed}input,select{font-family:inherit;font-size:.875rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .75rem;color:var(--text-primary);transition:border-color .15s}input:focus,select:focus{outline:none;border-color:var(--accent-cyan)}.search-input{flex:1;min-width:150px}.filter-bar{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.form-group label{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:.25rem}.form-group input{width:100%}.league-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1.5rem;background:var(--bg-card);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.nav-brand{display:flex;align-items:center;gap:1rem}.logo{font-weight:700;font-size:1.25rem;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.league-name{color:var(--text-secondary);font-size:.875rem}.nav-links{display:flex;gap:.25rem}.nav-link{padding:.5rem 1rem;border-radius:var(--radius);color:var(--text-secondary);font-weight:500;transition:all .15s}.nav-link:hover{background:var(--bg-hover);color:var(--text-primary);text-decoration:none}.nav-team{display:flex;align-items:center;gap:1rem}.team-select{min-width:150px}.cash-balance{font-weight:600;color:var(--success)}.league-content{padding:1.5rem;max-width:1400px;margin:0 auto}.home-page{min-height:100vh;display:flex;flex-direction:column;align-items:center}.home-header{width:100%;background:#1a1a2ef2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.home-header-inner{max-width:1200px;margin:0 auto;padding:.75rem 1.5rem;display:flex;justify-content:space-between;align-items:center}.header-brand{display:flex;align-items:center;gap:.75rem}.header-logo{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,var(--accent-cyan),var(--accent-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.beta-tag-header{background:linear-gradient(90deg,var(--accent-purple),var(--accent-blue));color:#fff;font-size:.6rem;font-weight:700;padding:.15rem .4rem;border-radius:3px;letter-spacing:.05em}.header-auth{display:flex;align-items:center;gap:.75rem}.header-user{font-size:.875rem;color:var(--text-secondary)}.header-auth button.primary{padding:.5rem 1rem;font-size:.875rem}.header-auth button.ghost{padding:.4rem .75rem;font-size:.8rem}.beta-banner,.beta-banner.mobile-only{display:none}@media (max-width: 640px){.beta-tag-header{display:none}.beta-banner.mobile-only{display:flex;width:100%;background:linear-gradient(90deg,var(--accent-purple),var(--accent-blue));padding:.35rem 1rem;justify-content:center;align-items:center;gap:.5rem}.header-auth .header-user{display:none}.home-header-inner{padding:.5rem 1rem}.header-logo{font-size:1.25rem}.header-auth button.primary{padding:.4rem .75rem;font-size:.8rem}.header-auth button.ghost{padding:.3rem .5rem;font-size:.75rem}}.home-page>.beta-banner:not(.mobile-only){width:100%;background:linear-gradient(90deg,var(--accent-purple),var(--accent-blue));padding:.5rem 1rem;display:flex;align-items:center;justify-content:center;gap:.75rem}.beta-tag{background:#fff3;color:#fff;font-size:.7rem;font-weight:700;padding:.2rem .5rem;border-radius:4px;letter-spacing:.05em}.beta-text{color:#fff;font-size:.875rem;font-weight:500}.home-hero{text-align:center;padding:4rem 1.5rem;position:relative;width:100%;max-width:100%;overflow:hidden}@media (max-width: 640px){.home-hero{padding:2.5rem 1rem 2rem}}.hero-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(34,211,238,.12),transparent 60%);pointer-events:none;z-index:0}.hero-content{position:relative;z-index:1;max-width:700px;margin:0 auto}.hero-title{font-size:4rem;font-weight:800;line-height:1.1;margin-bottom:1rem}.hero-subtitle{display:block;font-size:2.5rem;color:var(--text-secondary)}.hero-tagline{font-size:1.5rem;color:var(--text-primary);margin-bottom:.5rem;font-weight:500}.hero-description{font-size:1.125rem;color:var(--text-muted);margin-bottom:1.5rem}.hero-cta{margin-top:2rem;display:flex;flex-direction:column;align-items:center;gap:.75rem}.hero-cta button.large{padding:1rem 2.5rem;font-size:1.125rem}.hero-cta-note{font-size:.875rem;color:var(--text-muted);margin-top:.5rem}.how-it-works{width:100%;max-width:1000px;padding:4rem 1.5rem;text-align:center}.how-it-works h2{font-size:2rem;margin-bottom:.5rem}.section-subtitle{color:var(--text-muted);font-size:1.125rem;margin-bottom:3rem}.steps-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;text-align:left}.step{display:flex;flex-direction:column;align-items:flex-start}.step-number{width:48px;height:48px;background:var(--gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:var(--bg-dark);margin-bottom:1rem}.step-content h3{font-size:1.125rem;margin-bottom:.5rem}.step-content p{color:var(--text-muted);font-size:.9rem;line-height:1.6}.screenshot-showcase{width:100%;max-width:1200px;padding:4rem 1.5rem;text-align:center}.screenshot-showcase h2{font-size:2rem;margin-bottom:.5rem}.carousel-container{position:relative;display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem}.carousel-content{display:flex;flex-direction:column;align-items:center;max-width:900px;width:100%}.carousel-image-wrapper{width:100%;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-dark);border:1px solid var(--border);box-shadow:0 20px 60px #0006}.carousel-image{width:100%;height:auto;display:block;object-fit:contain}.carousel-caption{margin-top:1.5rem;text-align:center}.carousel-caption h3{font-size:1.25rem;color:var(--text-primary);margin-bottom:.5rem}.carousel-caption p{font-size:.95rem;color:var(--text-muted)}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);font-size:1.75rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;z-index:10}.carousel-btn:hover{background:var(--accent-cyan);color:var(--bg-dark);border-color:var(--accent-cyan)}.carousel-btn.prev{left:0}.carousel-btn.next{right:0}.carousel-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1.5rem;position:absolute;bottom:-3rem;left:50%;transform:translate(-50%)}.carousel-dot{width:10px;height:10px;border-radius:50%;background:var(--border);border:none;cursor:pointer;transition:all .2s ease}.carousel-dot:hover{background:var(--text-muted)}.carousel-dot.active{background:var(--accent-cyan);transform:scale(1.2)}.home-features{width:100%;max-width:1100px;padding:4rem 1.5rem;text-align:center}.home-features h2{font-size:2rem;margin-bottom:3rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.feature-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem 1.5rem;text-align:left;transition:transform .2s,border-color .2s,box-shadow .2s}.feature-card:hover{transform:translateY(-4px);border-color:var(--accent-cyan);box-shadow:0 8px 30px #22d3ee1a}.feature-icon{font-size:2rem;margin-bottom:1rem;display:inline-block}.feature-card h3{margin-bottom:.75rem;font-size:1.125rem}.feature-card p{color:var(--text-muted);font-size:.9rem;line-height:1.6}.beta-signup-section{width:100%;max-width:600px;padding:4rem 1.5rem;text-align:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin:2rem auto}.beta-signup-section.prominent{max-width:700px;padding:5rem 2rem;background:linear-gradient(135deg,#22d3ee0d,#3b82f60d);border:2px solid rgba(34,211,238,.2);box-shadow:0 8px 32px #0000004d}.beta-signup-section.prominent .beta-signup-content{max-width:500px;margin:0 auto}.beta-signup-section h2{font-size:1.75rem;margin-bottom:.5rem}.beta-signup-section .section-subtitle{color:var(--text-muted);margin-bottom:2rem}.beta-signup-form{display:flex;gap:.75rem;max-width:400px;margin:0 auto}.beta-signup-form input{flex:1;padding:.875rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-dark);color:var(--text-primary);font-size:1rem}.beta-signup-form input:focus{outline:none;border-color:var(--accent-cyan)}.beta-signup-form button{padding:.875rem 2rem;white-space:nowrap}.beta-signup-error{margin-top:1rem;padding:.75rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);color:#fca5a5;font-size:.9rem}.beta-signup-message{margin-top:1rem;padding:.75rem;background:#22d3ee1a;border:1px solid rgba(34,211,238,.3);border-radius:var(--radius);color:var(--accent-cyan);font-size:.9rem}.home-join{text-align:center;max-width:500px;padding:3rem 1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin:2rem 1.5rem}.home-join h2{margin-bottom:1.5rem;font-size:1.5rem}.join-form{display:flex;gap:.5rem}.join-form input{flex:1;padding:.875rem 1rem}.join-form button{padding:.875rem 1.5rem;white-space:nowrap}.season-badge{display:inline-block;margin-top:1.5rem;font-size:.875rem;color:var(--accent-cyan);background:#22d3ee1a;padding:.5rem 1rem;border-radius:9999px;font-weight:500}.top-players-section{max-width:700px;width:100%;padding:3rem 1.5rem}.top-players-section h2{text-align:center;margin-bottom:.5rem;font-size:1.5rem}.top-players-section .section-subtitle{text-align:center;margin-bottom:2rem}.top-players-list{display:flex;flex-direction:column;gap:.5rem}.top-player-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .2s}.top-player-card:hover{border-color:var(--accent-cyan)}.top-player-card .rank{font-weight:700;color:var(--accent-cyan);min-width:35px;font-size:1rem}.top-player-card .player-info{flex:1;display:flex;flex-direction:column}.top-player-card .name{font-weight:600}.top-player-card .meta{font-size:.8rem;color:var(--text-muted)}.top-player-card .value{font-weight:600;color:var(--accent-cyan);font-size:1.125rem}.auth-section{padding:2rem 1.5rem;margin-top:auto}.auth-info{display:flex;align-items:center;gap:1rem}.user-badge{display:flex;align-items:center;gap:.5rem;padding:.25rem .75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);font-size:.875rem}.admin-badge{background:var(--gradient);color:var(--bg-dark);padding:.125rem .5rem;border-radius:var(--radius);font-size:.625rem;font-weight:700;text-transform:uppercase}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal h3{margin:0 0 1.5rem;text-align:center}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-form input{padding:.75rem 1rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:1rem}.auth-form input::placeholder{color:var(--text-muted)}.auth-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.5rem;border-radius:var(--radius)}.auth-warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);color:#f59e0b;padding:.5rem;border-radius:var(--radius);font-size:.85rem;font-size:.875rem;text-align:center}.auth-switch{text-align:center;margin-top:1.5rem;color:var(--text-muted);font-size:.875rem}button.link{background:none;border:none;color:var(--accent-cyan);cursor:pointer;padding:0;font-size:inherit}button.link:hover{text-decoration:underline}.admin-toggle{margin-top:2rem}.admin-section{max-width:500px;width:100%;margin-top:1rem;padding:1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.admin-section h3{margin-bottom:1rem}.admin-actions{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.admin-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.admin-action{display:flex;flex-direction:column;gap:.5rem}.admin-action button{width:100%}.admin-action .muted{font-size:.75rem;margin:0}.sync-result{font-size:.875rem;color:var(--success);padding:.5rem;background:#22c55e1a;border-radius:var(--radius);text-align:center}.rankings-layout{min-height:100vh;display:flex;flex-direction:column}.global-nav{display:flex;align-items:center;gap:2rem;padding:1rem 2rem;background:var(--bg-card);border-bottom:1px solid var(--border)}.global-nav .logo{font-weight:700;font-size:1.25rem;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.rankings-content{flex:1;padding:2rem}.rankings-page{max-width:1200px;margin:0 auto}.page-header{margin-bottom:2rem}.page-header h1{margin:0}.page-header .subtitle{color:var(--text-muted);margin-top:.25rem}.rankings-controls{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem}.position-tabs{display:flex;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.position-tabs .tab{padding:.5rem 1rem;background:transparent;border:none;color:var(--text-muted);cursor:pointer;transition:all .15s}.position-tabs .tab:hover{color:var(--text-primary)}.position-tabs .tab.active{background:var(--gradient);color:var(--bg-dark);font-weight:600}.search-input{flex:1;min-width:200px;max-width:300px;padding:.5rem 1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:.875rem}.search-input::placeholder{color:var(--text-muted)}.rankings-table-container{overflow-x:auto}.rankings-table{width:100%;border-collapse:collapse}.rankings-table th,.rankings-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.rankings-table th{background:var(--bg-card);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);position:sticky;top:0}.rankings-table tr:hover{background:var(--bg-hover)}.rankings-table .rank-col{width:60px;font-weight:600;color:var(--text-secondary)}.rankings-table .player-col{min-width:200px}.rankings-table .player-name{font-weight:500}.rankings-table .pos-col{width:60px}.rankings-table .team-col{width:80px;color:var(--text-muted)}.rankings-table .posrank-col{width:100px}.rankings-table .value-col{width:100px;font-weight:500;color:var(--accent-cyan)}.position-badge{display:inline-block;padding:.125rem .5rem;border-radius:var(--radius);font-size:.75rem;font-weight:600}.position-badge.qb{background:#ef444433;color:#ef4444}.position-badge.rb{background:#22c55e33;color:#22c55e}.position-badge.wr{background:#3b82f633;color:#3b82f6}.position-badge.te{background:#eab30833;color:#eab308}.position-badge.k{background:#a855f733;color:#a855f7}.position-badge.def{background:#64748b33;color:#64748b}.no-results{text-align:center;padding:3rem;color:var(--text-muted)}.rankings-footer{margin-top:2rem;text-align:center}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);padding:1.5rem;text-align:center}.error-message p{margin:.5rem 0}.create-league-layout{min-height:100vh;display:flex;flex-direction:column}.create-league-content{flex:1;padding:2rem}.create-league-page{max-width:600px;margin:0 auto}.create-header{text-align:center;margin-bottom:2rem}.create-header h1{margin:0}.steps{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem}.step{display:flex;align-items:center;gap:.5rem;opacity:.4}.step.active{opacity:1}.step.complete .step-num{background:var(--success)}.step-num{width:28px;height:28px;border-radius:50%;background:var(--bg-card);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.step.active .step-num{background:var(--gradient);border-color:transparent;color:var(--bg-dark)}.step-label{font-size:.875rem}.form-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;margin-bottom:1rem}.form-section h2{margin:0 0 .5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select{width:100%;padding:.75rem 1rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.scoring-info{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;margin:1.5rem 0}.scoring-info h3{margin:0 0 .75rem;font-size:.875rem}.format-badges{display:flex;gap:.5rem;margin-bottom:.75rem}.format-badges .badge{padding:.25rem .5rem;background:#22d3ee26;color:var(--accent-cyan);border-radius:var(--radius);font-size:.75rem;font-weight:600}.roster-preview{font-size:.875rem;color:var(--text-muted)}.error-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.75rem;border-radius:var(--radius);margin-bottom:1rem;text-align:center}.success-section{text-align:center}.success-icon{width:60px;height:60px;background:var(--success);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;margin:0 auto 1rem}.league-id-display{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:1rem 0;padding:1rem;background:var(--bg-dark);border-radius:var(--radius)}.league-id-display code{font-size:.875rem;color:var(--accent-cyan)}.invite-code-display{display:flex;align-items:center;justify-content:center;gap:1rem;margin:1.5rem 0}.invite-code{font-size:2rem;font-weight:700;letter-spacing:.25rem;font-family:JetBrains Mono,Fira Code,monospace;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.invite-link{margin:1rem 0}.invite-link .label{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:.5rem}.link-box{display:flex;gap:.5rem}.link-box input{flex:1;padding:.5rem .75rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);font-size:.75rem}.mode-toggle{display:flex;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:1.5rem}.mode-toggle button{flex:1;padding:.75rem 1rem;background:transparent;border:none;color:var(--text-muted);font-weight:500;cursor:pointer;transition:all .15s}.mode-toggle button:hover{color:var(--text-primary)}.mode-toggle button.active{background:var(--gradient);color:var(--bg-dark)}.invite-input{text-align:center;font-size:1.5rem!important;font-weight:600;letter-spacing:.5rem;text-transform:uppercase}.join-layout{min-height:100vh;display:flex;flex-direction:column}.join-content{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.join-page{text-align:center;max-width:400px}.loading-section{display:flex;flex-direction:column;align-items:center;gap:1rem}.spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--accent-cyan);border-radius:50%;animation:spin .8s linear infinite}.error-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem}.error-icon{width:60px;height:60px;background:#ef444426;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#ef4444;margin:0 auto 1rem}.error-section h2{margin:0 0 .5rem}.error-section p{margin:.5rem 0}.error-section .actions{display:flex;gap:.5rem;margin-top:1.5rem}.error-section .button{flex:1;padding:.75rem 1rem;border-radius:var(--radius);font-weight:500;text-decoration:none;text-align:center}.error-section .button.primary{background:var(--gradient);color:var(--bg-dark)}.error-section .button.ghost{background:transparent;border:1px solid var(--border);color:var(--text-secondary)}.next-steps{text-align:left;margin:1.5rem 0;padding:1rem;background:var(--bg-dark);border-radius:var(--radius)}.next-steps h3{margin:0 0 .75rem;font-size:.875rem}.next-steps ol{margin:0;padding-left:1.25rem;font-size:.875rem;color:var(--text-muted)}.next-steps li{margin-bottom:.5rem}.back-link{text-align:center;margin-top:1rem}.or-divider{display:flex;align-items:center;margin:1rem 0;color:var(--text-muted)}.or-divider:before,.or-divider:after{content:"";flex:1;height:1px;background:var(--border)}.or-divider span{padding:0 1rem;font-size:.875rem}.cohort-list{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.cohort-card{background:var(--bg-dark);border:2px solid var(--border);border-radius:var(--radius);padding:1rem;cursor:pointer;transition:all .15s}.cohort-card:hover{border-color:var(--text-muted)}.cohort-card.selected{border-color:var(--accent-cyan);background:#22d3ee0d}.cohort-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.cohort-header h3{margin:0;font-size:1rem}.status-badge{padding:.25rem .5rem;border-radius:var(--radius);font-size:.75rem;font-weight:600}.status-badge.forming{background:#eab30826;color:#eab308}.status-badge.ipo_open{background:#22c55e26;color:#22c55e}.cohort-details{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:.75rem}.cohort-details .detail{display:flex;flex-direction:column}.cohort-details .label{font-size:.625rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.cohort-details .value{font-size:.875rem;font-weight:500}.cohort-dates{font-size:.75rem;color:var(--text-muted)}.cohort-form{margin-top:1rem;padding:1rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius)}.cohort-form h4{margin:0 0 1rem}.cohort-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.cohort-form .form-group{margin-bottom:.75rem}.cohort-form .form-group label{display:block;font-size:.75rem;margin-bottom:.25rem;color:var(--text-muted)}.cohort-form .form-group input,.cohort-form .form-group select{width:100%;padding:.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:.875rem}.home-footer{margin-top:auto;padding-top:4rem}.footer-stats{display:flex;gap:3rem}.stat{text-align:center}.stat-value{display:block;font-size:2rem;font-weight:700;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-label{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.contact-section{background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-dark) 100%);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:4rem 2rem;margin:4rem 0 0}.contact-section-content{max-width:600px;margin:0 auto;text-align:center}.contact-section-title{font-size:2rem;font-weight:700;margin:0 0 1rem;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact-section-text{color:var(--text-secondary);font-size:1.125rem;line-height:1.6;margin:0 0 2rem}.contact-section-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem}.contact-section-actions .btn{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;font-size:1rem;font-weight:600;border-radius:var(--radius);text-decoration:none;transition:all .2s}.contact-section-actions .btn.primary{background:var(--gradient);color:var(--bg-dark);border:none}.contact-section-actions .btn.primary:hover{transform:translateY(-2px);box-shadow:0 4px 20px #22d3ee4d}.contact-section-actions .btn.secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border)}.contact-section-actions .btn.secondary:hover{border-color:var(--accent);color:var(--accent)}.contact-section-email{color:var(--text-muted);font-size:.875rem;margin:0}.contact-section-email a{color:var(--accent);text-decoration:none}.contact-section-email a:hover{text-decoration:underline}@media (max-width: 640px){.contact-section{padding:3rem 1.5rem}.contact-section-title{font-size:1.5rem}.contact-section-text{font-size:1rem}.contact-section-actions{flex-direction:column;align-items:center}.contact-section-actions .btn{width:100%;justify-content:center}}.footer-links{margin-top:2rem;display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap}.footer-link{color:var(--text-muted);text-decoration:none;font-size:.875rem;transition:color .15s}.footer-link:hover{color:var(--accent)}.footer-divider{color:var(--text-muted);opacity:.5}.footer-copyright{margin-top:1.5rem;text-align:center;color:var(--text-muted);font-size:.75rem;opacity:.7}.ipo-page{display:flex;flex-direction:column;gap:1rem}.ipo-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.ipo-status{display:flex;align-items:center;gap:1rem}.status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge.forming{background:var(--bg-hover);color:var(--text-muted)}.status-badge.ipo_open{background:#22d3ee33;color:var(--accent-cyan)}.status-badge.trading{background:#10b98133;color:var(--success)}.status-badge.closed{background:#ef444433;color:var(--danger)}.status-badge.filled{background:#10b98133;color:var(--success)}.status-badge.partial{background:#f59e0b33;color:var(--warning)}.status-badge.rejected{background:#ef444433;color:var(--danger)}.countdown{font-size:.875rem;color:var(--warning)}.budget-summary{display:flex;gap:2rem}.budget-item{text-align:center}.budget-item span{display:block;font-size:.75rem;color:var(--text-muted)}.budget-item strong{font-size:1.125rem}.ipo-grid{display:grid;grid-template-columns:1fr 300px;gap:1rem}.player-list .player-grid{display:flex;flex-direction:column;gap:.5rem;max-height:500px;overflow-y:auto}.player-card{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);text-align:left;cursor:pointer;transition:all .15s}.player-card:hover{background:var(--bg-hover)}.player-card.selected{border-color:var(--accent-cyan);background:#22d3ee0d}.player-card.locked{opacity:.6}.player-info{display:flex;flex-direction:column}.player-name{font-weight:500}.player-meta{font-size:.75rem;color:var(--text-muted)}.player-price{text-align:right}.base-price,.market-price{font-weight:600}.shares-left,.reserve{font-size:.75rem;color:var(--text-muted)}.lock-badge{position:absolute;right:.5rem;top:.5rem}.order-form{display:flex;flex-direction:column;gap:1rem}.selected-player{padding:1rem;background:var(--bg-dark);border-radius:var(--radius)}.selected-player .name{font-weight:600;font-size:1.125rem}.selected-player .meta{color:var(--text-muted);font-size:.875rem}.selected-player .base{color:var(--accent-cyan);font-size:.875rem}.order-summary{background:var(--bg-dark);padding:.75rem 1rem;border-radius:var(--radius)}.summary-row{display:flex;justify-content:space-between}.orders-list{display:flex;flex-direction:column;gap:.5rem}.order-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-dark);border-radius:var(--radius);gap:1rem}.order-player .name{font-weight:500}.order-player .meta{font-size:.75rem;color:var(--text-muted)}.order-details{text-align:right}.order-details .max-cost{display:block;font-size:.75rem;color:var(--text-muted)}.market-page{display:flex;flex-direction:column;gap:1rem}.market-grid{display:grid;grid-template-columns:minmax(200px,1fr) 380px 280px;gap:1rem}.market-list .player-grid.scrollable{max-height:600px;overflow-y:auto}.market-list .player-card{position:relative}.order-panel .player-header{display:flex;justify-content:space-between;align-items:flex-start}.order-panel .big-price{font-size:1.5rem;font-weight:700;color:var(--accent-cyan)}.chart-section{margin:1rem 0}.chart-header{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted);margin-bottom:.5rem}.sparkline{width:100%;height:80px;background:var(--bg-dark);border-radius:var(--radius)}.ohlc-row{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted);margin-top:.5rem}.no-price-history{display:flex;flex-direction:column;align-items:center;justify-content:center;height:80px;background:var(--bg-dark);border-radius:var(--radius);border:1px dashed var(--border);color:var(--text-muted);font-size:.85rem;gap:.25rem}.no-price-history .no-data-icon{font-size:1.25rem;opacity:.6}.no-price-history .no-data-hint{font-size:.7rem;opacity:.6}.trade-stats{display:flex;justify-content:space-between;padding:.75rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.trade-stats .stat{text-align:center}.trade-stats span{display:block;font-size:.75rem;color:var(--text-muted)}.order-book-section{margin:1rem 0;padding:.75rem;background:var(--bg-hover);border-radius:var(--radius);border:1px solid var(--border)}.order-book-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.order-book-header span:first-child{font-weight:600;font-size:.875rem}.order-book-header .refresh-indicator{font-size:.7rem;color:var(--text-muted);opacity:.6}.order-book-content{display:flex;flex-direction:column;gap:.5rem}.bid-side,.ask-side{display:flex;flex-direction:column;gap:.25rem}.bid-side .label,.ask-side .label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.bid-ask-value{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.bid-ask-value .price{font-weight:700;font-size:1rem}.bid-price{color:var(--success)}.ask-price{color:var(--danger)}.bid-ask-value .quantity{font-size:.8rem;color:var(--text-secondary)}.bid-ask-value .order-count{font-size:.7rem;color:var(--text-muted)}.spread-indicator{text-align:center;padding:.25rem 0}.spread-indicator .spread{font-size:.75rem;color:var(--text-muted);background:var(--bg-card);padding:.2rem .5rem;border-radius:4px}.no-orders{font-size:.8rem;color:var(--text-muted);font-style:italic}.current-holding-info{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:var(--radius);margin-bottom:.75rem}.current-holding-info .holding-label{font-size:.8rem;color:var(--text-secondary)}.current-holding-info .holding-value{font-weight:600;color:var(--success)}.listed-indicator{color:var(--warning, #f59e0b);font-weight:500;font-size:.85em}.holding-row-v2.listed{border-left:3px solid var(--warning, #f59e0b);background:#f59e0b14}.listed-badge{display:inline-block;margin-left:.5rem;padding:.1rem .4rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--warning, #f59e0b);background:#f59e0b26;border:1px solid var(--warning, #f59e0b);border-radius:3px}.order-type-toggle{display:flex;flex-direction:column;gap:.25rem;padding:.5rem;background:var(--bg-dark);border-radius:var(--radius);margin-bottom:.75rem}.order-type-toggle .toggle-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500}.order-type-toggle .toggle-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.order-type-toggle .order-hint{font-size:.75rem;color:var(--text-secondary);margin-left:1.5rem}.order-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;align-items:stretch}.order-form-grid>.order-section{min-height:180px;display:flex;flex-direction:column}@media (max-width: 600px){.order-form-grid{grid-template-columns:1fr}.order-form-grid>.order-section{min-height:auto}}.quantity-stepper{display:flex;align-items:center;gap:0;background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.quantity-stepper .stepper-btn{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--bg-dark);border:none;color:var(--text-primary);font-size:1.25rem;font-weight:600;cursor:pointer;transition:background .15s,transform .1s;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.quantity-stepper .stepper-btn:active{background:var(--bg-card);transform:scale(.95)}.quantity-stepper .stepper-btn:disabled{opacity:.3;cursor:not-allowed}.quantity-stepper .stepper-btn.decrease{border-right:1px solid var(--border)}.quantity-stepper .stepper-btn.increase{border-left:1px solid var(--border)}.quantity-stepper .stepper-value{flex:1;text-align:center;font-size:1.25rem;font-weight:600;padding:.75rem;background:transparent;border:none;color:var(--text-primary);min-width:60px}.quantity-stepper input.stepper-value{-moz-appearance:textfield}.quantity-stepper input.stepper-value::-webkit-outer-spin-button,.quantity-stepper input.stepper-value::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quick-qty-buttons{display:flex;gap:.5rem;margin-top:.5rem}.quick-qty-btn{flex:1;padding:.5rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s;-webkit-tap-highlight-color:transparent}.quick-qty-btn:active{transform:scale(.95);background:var(--bg-card)}.quick-qty-btn.active{background:var(--accent);color:var(--bg-dark);border-color:var(--accent)}@media (max-width: 768px){.order-section{padding:1.25rem}.order-section .form-group input,.order-section .form-group select{font-size:16px;padding:.875rem}.price-input-wrapper{height:52px}.price-input-wrapper .currency{padding:.875rem;font-size:1rem}.price-input-wrapper input{font-size:16px;padding:.875rem}.order-section button.primary{padding:1rem 1.5rem;font-size:1rem;min-height:52px}}.order-section{padding:.875rem;background:var(--bg-dark);border-radius:var(--radius);display:flex;flex-direction:column;gap:.625rem}.order-section .section-title{margin:0;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.order-section .section-title.buy{color:var(--success)}.order-section .section-title.sell{color:var(--danger)}.order-section .form-group{margin-bottom:0;gap:.125rem}.order-section .form-group label{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.order-section button.primary,.order-section button.sell-btn{padding:.625rem .875rem;font-size:.875rem;margin-top:auto}.sell-section{justify-content:flex-start}.sell-section .all-listed-warning{flex:1}.sell-section .no-holdings-message{flex:1;padding:1rem}.price-input-wrapper{display:flex;align-items:center;background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.price-input-wrapper .currency{padding:.5rem .75rem;background:var(--bg-dark);color:var(--text-secondary);font-weight:500;border-right:1px solid var(--border)}.price-input-wrapper input{border:none;background:transparent;flex:1;padding:.5rem}.price-input-wrapper input:focus{outline:none}.price-hint{font-size:.7rem;color:var(--text-secondary);margin-top:-.25rem}.order-estimate{display:flex;justify-content:space-between;padding:.375rem .5rem;background:#ffffff0d;border-radius:var(--radius);font-size:.8rem}.order-estimate span{color:var(--text-secondary)}.order-estimate strong{color:var(--text-primary)}.order-estimate strong.danger{color:var(--danger)}.insufficient-funds-warning{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);color:#f87171;font-size:.8rem;margin-bottom:.5rem}.insufficient-funds-warning .warning-icon{font-size:.9rem}button.full-width{width:100%}button.sell-btn{background:var(--danger);color:#fff;border:none;padding:.625rem .875rem;border-radius:var(--radius);cursor:pointer;font-weight:600;font-size:.875rem;transition:opacity .15s}button.sell-btn:hover:not(:disabled){opacity:.9}button.sell-btn:disabled{opacity:.5;cursor:not-allowed}.no-holdings-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;flex:1}.no-holdings-message .muted{color:var(--text-secondary);font-size:.9rem}.order-actions{display:flex;gap:.5rem}.order-actions button{flex:1}.drop-section{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.5rem}.drop-section .drop-hint{font-size:.7rem;color:var(--text-muted);text-align:center}.drop-section .drop-hint.warning{color:var(--warning)}button.danger-outline{background:transparent;border:1px solid var(--danger);color:var(--danger);padding:.5rem 1rem;border-radius:var(--radius);cursor:pointer;transition:all .2s}button.danger-outline:hover:not(:disabled){background:#ef44441a}button.danger-outline:disabled{opacity:.5;cursor:not-allowed}.simulation-page{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;max-width:1400px;margin:0 auto}.simulation-config{padding:1rem}.simulation-config h3{margin-bottom:1rem;font-size:1.1rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.25rem}.form-group label{font-size:.8rem;color:var(--text-secondary);font-weight:500}.form-group input,.form-group select{padding:.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:.9rem}.form-group input:disabled,.form-group select:disabled{opacity:.5;cursor:not-allowed}.action-buttons{margin-top:1rem}.simulation-status{padding:1rem;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border)}.simulation-status h3{margin-bottom:1rem;font-size:1.1rem}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.status-item .label{font-size:.75rem;color:var(--text-muted)}.status-item .value{font-size:1rem;font-weight:600}.status-item .value.status-running{color:var(--success)}.status-item .value.status-completed{color:var(--accent-blue)}.status-item .value.status-failed,.status-item .value.status-stopped{color:var(--danger)}.activity-panel{max-height:600px;display:flex;flex-direction:column}.activity-feed{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;padding:.5rem}.activity-event{display:grid;grid-template-columns:80px 100px 120px 1fr 80px 100px;gap:.75rem;padding:.75rem;background:var(--bg-card);border-radius:var(--radius);border-left:3px solid var(--border);font-size:.85rem;align-items:center}.activity-event.success{border-left-color:var(--success)}.activity-event.error{border-left-color:var(--danger);background:#ef44441a}.event-time{color:var(--text-muted);font-size:.75rem}.event-action{font-weight:600;text-transform:uppercase;font-size:.8rem}.event-bot{color:var(--text-secondary);font-size:.8rem}.event-player{color:var(--text-primary);font-weight:500}.event-quantity{color:var(--text-secondary);text-align:right}.event-price{color:var(--text-primary);font-weight:600;text-align:right}.event-error{grid-column:1 / -1;color:var(--danger);font-size:.75rem;margin-top:.25rem}.cohort-id-row,.league-id-row{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;padding:.25rem 0;font-size:.8rem}.id-label{color:var(--text-muted);font-size:.75rem}.id-value{flex:1;background:var(--bg-dark);padding:.25rem .5rem;border-radius:4px;font-family:Courier New,monospace;font-size:.75rem;color:var(--accent-cyan);cursor:pointer;-webkit-user-select:all;user-select:all;border:1px solid var(--border);transition:all .2s}.id-value:hover{background:var(--bg-hover);border-color:var(--accent-cyan)}button.ghost.tiny{padding:.2rem .4rem;font-size:.7rem;min-width:auto}.cohort-leagues{grid-column:1 / -1;margin-top:1rem;padding:1rem;background:var(--bg-dark);border-radius:var(--radius);border:1px solid var(--border)}.league-list{display:flex;flex-direction:column;gap:.75rem}.league-item{display:flex;justify-content:space-between;align-items:flex-start;padding:.75rem;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border)}.league-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.league-name{font-weight:600;color:var(--text-primary)}.league-meta{font-size:.8rem;color:var(--text-secondary)}.league-actions{display:flex;gap:.5rem}.listings-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.listings-section h4{font-size:.875rem;margin-bottom:.5rem}.listing-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:.875rem}.portfolio-content{display:flex;flex-direction:column;gap:1rem}.portfolio-summary{display:flex;gap:1rem}.summary-item{flex:1;text-align:center;padding:.5rem;background:var(--bg-dark);border-radius:var(--radius)}.summary-item span{display:block;font-size:.75rem;color:var(--text-muted)}.holdings-list{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto}.holding-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:var(--bg-dark);border:1px solid transparent;border-radius:var(--radius);text-align:left;cursor:pointer}.holding-row:hover{background:var(--bg-hover)}.holding-row.selected{border-color:var(--accent-cyan)}.holding-info .name{font-weight:500;font-size:.875rem}.holding-info .meta{font-size:.75rem;color:var(--text-muted)}.holding-value{text-align:right}.holding-value .total{display:block;font-size:.75rem;color:var(--text-muted)}.order-result{margin-top:1rem}.fills-list{display:flex;flex-direction:column;gap:.5rem}.fill-row{display:flex;justify-content:space-between;padding:.5rem .75rem;background:var(--bg-dark);border-radius:var(--radius);font-size:.875rem}.active-orders-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.active-orders-section h4{font-size:.875rem;color:var(--text-secondary);margin-bottom:.75rem}.orders-group{margin-bottom:.75rem}.orders-group-label{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;padding:.25rem .5rem;border-radius:4px}.orders-group-label.sell{background:#ef444426;color:var(--danger)}.orders-group-label.buy{background:#10b98126;color:var(--success)}.active-order-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:var(--bg-dark);border-radius:var(--radius);margin-bottom:.25rem}.order-details{display:flex;flex-direction:column;gap:.125rem}.order-details .player-name{font-size:.8125rem;font-weight:500}.order-details .order-meta{font-size:.75rem;color:var(--text-muted)}.cancel-btn{background:transparent;border:1px solid var(--danger);color:var(--danger);width:24px;height:24px;border-radius:50%;cursor:pointer;font-size:.75rem;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.cancel-btn:hover:not(:disabled){background:var(--danger);color:#fff}.cancel-btn:disabled{opacity:.5;cursor:not-allowed}.all-listed-warning{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;padding:.75rem;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius);text-align:center;min-height:100%;font-size:.8rem;line-height:1.3}.all-listed-warning .warning-icon{font-size:1.25rem;margin-bottom:.125rem}.all-listed-warning>span:not(.warning-icon):not(.hint){color:var(--warning);font-weight:500}.all-listed-warning .hint{font-size:.7rem;color:var(--text-muted);margin-top:.25rem}.listed-note{display:block;font-size:.7rem;color:var(--warning);margin-top:.25rem}.lineup-page{display:flex;flex-direction:column;gap:1rem}.lineup-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.week-selector{display:flex;align-items:center;gap:1rem}.week-label{font-weight:600;min-width:80px;text-align:center}.lineup-actions{display:flex;gap:.5rem}.total-points{text-align:right}.total-points span{display:block;font-size:.75rem;color:var(--text-muted)}.total-points strong{font-size:1.5rem;color:var(--accent-cyan)}.total-points .total-points-row{display:flex;align-items:baseline;justify-content:flex-end;gap:.5rem}.total-points .total-points-row.projected{margin-top:.15rem}.total-points .total-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.total-points .total-actual{font-size:1.5rem;color:var(--accent-cyan)}.total-points .total-projected{font-size:1rem;color:var(--text-muted)}.total-points .total-points-row.optimal{margin-top:.25rem;padding-top:.25rem;border-top:1px solid var(--border)}.total-points .total-optimal{font-size:1rem;color:var(--warning);font-weight:600}.total-points .points-left-on-bench{font-size:.7rem;color:var(--danger);margin-left:.25rem}.lineup-actions button.active{background:#22d3ee33;border-color:var(--accent-cyan);color:var(--accent-cyan)}.lineup-container{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;min-height:600px}@media (max-width: 900px){.lineup-container{grid-template-columns:1fr}}.lineup-column{display:flex;flex-direction:column;background:var(--bg-card);border-radius:var(--radius);padding:1rem}.column-title{font-size:1rem;font-weight:600;margin-bottom:.5rem}.column-subtitle{font-size:.8rem;color:var(--text-muted);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.lineup-slots{display:flex;flex-direction:column;gap:.5rem}.bench-slots{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.lineup-slot-card{display:flex;align-items:stretch;background:var(--bg-dark);border-radius:var(--radius);border:2px solid transparent;overflow:hidden;transition:all .15s ease;min-height:52px}.lineup-slot-card.drag-over{border-color:#22c55e;background:#22c55e1a;transform:scale(1.02)}.lineup-slot-card.locked{opacity:.6}.lineup-slot-card .slot-label{display:flex;align-items:center;justify-content:center;min-width:48px;font-weight:700;font-size:.75rem;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.lineup-slot-card .empty-slot{flex:1;display:flex;align-items:center;justify-content:center;border:2px dashed var(--border);margin:4px;border-radius:4px;color:var(--text-muted);font-size:.8rem;transition:all .15s ease}.lineup-slot-card:hover .empty-slot{border-color:var(--text-secondary);color:var(--text-secondary)}.lineup-slot-card.drag-over .empty-slot{border-color:#22c55e;color:#22c55e;background:#22c55e0d}.lineup-slot-card .slot-player{flex:1;display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;cursor:grab;border-left:3px solid;position:relative}.lineup-slot-card .slot-player:active{cursor:grabbing}.player-position-badge{display:flex;align-items:center;justify-content:center;min-width:32px;height:24px;font-size:.7rem;font-weight:700;color:#fff;border-radius:4px;text-shadow:0 1px 2px rgba(0,0,0,.2)}.slot-player .player-info{flex:1;display:flex;flex-direction:column;min-width:0}.slot-player .player-name{font-weight:600;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slot-player .player-meta{font-size:.7rem;color:var(--text-muted)}.slot-player .player-points{font-weight:600;font-size:.85rem;color:var(--accent-cyan);white-space:nowrap;display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.slot-player .player-points .points-actual{color:var(--accent-cyan);font-size:.9rem;font-weight:600}.slot-player .player-points .points-projected{font-size:.7rem;font-weight:400;font-style:italic;color:var(--text-muted);opacity:.8}.slot-player .player-points .points-projected-only{color:var(--text-secondary);font-style:italic;opacity:.9}.slot-player .clear-btn{position:absolute;top:2px;right:2px;width:20px;height:20px;border-radius:50%;background:var(--bg-hover);border:none;color:var(--text-muted);font-size:14px;cursor:pointer;opacity:0;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.slot-player:hover .clear-btn{opacity:1}.slot-player .clear-btn:hover{background:var(--danger);color:#fff}.slot-player .lock-icon{font-size:.75rem;margin-left:auto}.slot-player .player-name-row{display:flex;align-items:center;gap:.35rem}.slot-player.on-bye{background:#eab30814;border-left-color:#eab308!important}.slot-player .bye-warning{display:flex;align-items:center;gap:.25rem;background:linear-gradient(135deg,#eab308,#ca8a04);color:#1a1a2e;padding:.2rem .5rem;border-radius:4px;font-size:.65rem;font-weight:700;animation:pulse-warning 2s ease-in-out infinite}.slot-player .bye-warning-icon{font-size:.7rem}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.7}}.slot-player.injured{background:#ef44440d}.lineup-slot-card.suboptimal{position:relative;border-color:var(--warning);background:#eab30814}.lineup-slot-card .optimal-indicator{position:absolute;bottom:-4px;left:50px;right:8px;background:linear-gradient(135deg,#eab308f2,#ca8a04f2);border-radius:0 0 6px 6px;padding:.35rem .5rem;display:flex;justify-content:space-between;align-items:center;font-size:.7rem;color:#1a1a2e;z-index:2;box-shadow:0 2px 8px #0003;transform:translateY(100%)}.lineup-slot-card .optimal-badge{display:flex;align-items:center;gap:.25rem;font-weight:600}.lineup-slot-card .optimal-icon{font-size:.8rem}.lineup-slot-card .optimal-text{text-transform:uppercase;letter-spacing:.03em}.lineup-slot-card .optimal-player{display:flex;align-items:center;gap:.5rem}.lineup-slot-card .optimal-name{font-weight:600;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lineup-slot-card .optimal-points{font-weight:700;color:#166534;background:#ffffff80;padding:.1rem .3rem;border-radius:3px}.lineup-slots .lineup-slot-card.suboptimal{margin-bottom:28px}.bench-column{background:var(--bg-card)}.bench-players{display:flex;flex-direction:column;gap:.5rem;max-height:550px;overflow-y:auto}.bench-player-card{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:var(--bg-dark);border-radius:var(--radius);border-left:4px solid;cursor:grab;transition:all .15s ease}.bench-player-card:hover{background:var(--bg-hover);transform:translate(4px);box-shadow:0 2px 8px #0003}.bench-player-card:active,.bench-player-card.dragging{cursor:grabbing;opacity:.6;transform:scale(.98)}.bench-player-card .position-badge{display:flex;align-items:center;justify-content:center;min-width:38px;height:28px;font-size:.75rem;font-weight:700;color:#fff;border-radius:4px;text-shadow:0 1px 2px rgba(0,0,0,.2)}.bench-player-card .player-details{flex:1;display:flex;flex-direction:column;min-width:0}.bench-player-card .player-name{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bench-player-card .player-team{font-size:.7rem;color:var(--text-muted)}.bench-player-card .player-shares{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;background:var(--bg-hover);padding:.2rem .5rem;border-radius:4px;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.bench-player-card.listed-share{background:#f59e0b14;border-left-color:var(--warning, #f59e0b)!important}.bench-player-card .share-status{display:flex;align-items:center}.bench-player-card .share-status .listed-badge,.bench-player-card .listed-badge{display:inline-block;padding:.15rem .4rem;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--warning, #f59e0b);background:#f59e0b26;border:1px solid var(--warning, #f59e0b);border-radius:3px}.modal-player-card .listed-count{color:var(--warning, #f59e0b);font-size:.75rem}.modal-player-card.all-listed{opacity:.8;border-left-color:var(--warning, #f59e0b)!important}.bench-slots-info{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border)}.bench-label{font-size:.8rem;color:var(--text-muted)}.no-players{text-align:center;color:var(--text-muted);padding:2rem;font-style:italic;background:var(--bg-dark);border-radius:var(--radius);border:2px dashed var(--border)}.lineup-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.lineup-modal{background:var(--bg-card);border-radius:var(--radius);width:100%;max-width:480px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000080}.lineup-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.lineup-modal .modal-header h3{margin:0;font-size:1.1rem;display:flex;align-items:center;gap:.5rem}.lineup-modal .slot-positions{font-size:.75rem;color:var(--text-muted);font-weight:400}.lineup-modal .close-btn{width:32px;height:32px;border-radius:50%;background:var(--bg-hover);border:none;color:var(--text-secondary);font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.lineup-modal .close-btn:hover{background:var(--danger);color:#fff}.lineup-modal .section-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding:.75rem 1.25rem .5rem}.lineup-modal .current-player-section{background:var(--bg-dark)}.lineup-modal .available-players-section{flex:1;overflow-y:auto}.lineup-modal .modal-players-list{padding:0 1rem 1rem;display:flex;flex-direction:column;gap:.5rem}.lineup-modal .modal-player-card{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-dark);border-radius:var(--radius);border-left:4px solid;cursor:pointer;transition:all .15s ease}.lineup-modal .modal-player-card:hover{background:var(--bg-hover);transform:translate(4px)}.lineup-modal .modal-player-card.current{margin:0 1rem .5rem;cursor:default}.lineup-modal .modal-player-card.current:hover{transform:none}.lineup-modal .modal-player-card .position-badge{display:flex;align-items:center;justify-content:center;min-width:40px;height:30px;font-size:.75rem;font-weight:700;color:#fff;border-radius:4px}.lineup-modal .modal-player-card .player-details{flex:1;display:flex;flex-direction:column;min-width:0}.lineup-modal .modal-player-card .player-name{font-weight:600;font-size:.95rem}.lineup-modal .modal-player-card .player-team{font-size:.75rem;color:var(--text-muted)}.lineup-modal .modal-player-card .player-shares{font-size:.8rem;color:var(--text-secondary)}.lineup-modal .remove-btn{padding:.4rem .75rem;background:transparent;border:1px solid var(--danger);color:var(--danger);border-radius:4px;font-size:.75rem;cursor:pointer}.lineup-modal .remove-btn:hover{background:var(--danger);color:#fff}.lineup-modal .no-eligible{text-align:center;padding:2rem;color:var(--text-muted);font-style:italic}.view-only-banner{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:#6495ed26;border:1px solid rgba(100,149,237,.3);border-radius:var(--radius);color:#6495ed;font-size:.8rem}.lock-banner{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffc10726;border:1px solid rgba(255,193,7,.3);border-radius:var(--radius);color:#ffc107;font-size:.875rem}.lock-banner .lock-icon{font-size:1rem}.admin-banner{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:#4caf5026;border:1px solid rgba(76,175,80,.3);border-radius:var(--radius);color:var(--success);font-size:.8rem}.injury-badge{display:inline-flex;align-items:center;justify-content:center;font-weight:700;border-radius:3px;border:1px solid;text-transform:uppercase;cursor:help}.injury-badge-sm{font-size:.6rem;padding:.1rem .25rem;min-width:18px}.injury-badge-md{font-size:.7rem;padding:.15rem .35rem;min-width:22px}.injury-badge-lg{font-size:.8rem;padding:.2rem .5rem;min-width:28px}.bye-badge{display:inline-flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:600;padding:.1rem .3rem;border-radius:3px;background:#6c757d33;color:#6c757d;border:1px solid rgba(108,117,125,.3)}.bye-badge.bye-active{background:#dc354533;color:#dc3545;border-color:#dc35454d;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.rookie-badge{display:inline-flex;align-items:center;gap:.2rem;font-size:.65rem;font-weight:700;padding:.15rem .4rem;border-radius:3px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;text-transform:uppercase;letter-spacing:.02em}.rookie-badge.compact{font-size:.55rem;padding:.1rem .25rem;min-width:16px;justify-content:center}.rookie-badge .lock-icon{font-size:.6rem}.rookie-badge .rookie-text{font-weight:700}.rookie-badge .draft-info{font-size:.55rem;opacity:.9;margin-left:.1rem}.rookie-badge.locked{background:linear-gradient(135deg,#6366f1,#4f46e5);border:1px solid rgba(99,102,241,.5);animation:lockedPulse 2s infinite}@keyframes lockedPulse{0%,to{box-shadow:0 0 #6366f166}50%{box-shadow:0 0 8px 2px #6366f133}}.player-card.rookie-locked,.player-row.rookie-locked,.holding-row-v2.rookie-locked{opacity:.7;position:relative}.player-card.rookie-locked:after,.player-row.rookie-locked:after,.holding-row-v2.rookie-locked:after{content:"🔒 Awaiting Rookie IPO";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#6366f1e6;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s}.player-card.rookie-locked:hover:after,.player-row.rookie-locked:hover:after,.holding-row-v2.rookie-locked:hover:after{opacity:1}.player-card .injury-indicator{display:flex;align-items:center;gap:.25rem;margin-left:auto}.player-name-row{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.player-name-row .player-name{margin-right:.1rem}.bench-player-card.has-injury{border-left-width:4px}.lineup-slot-card.has-injury .slot-player{position:relative}.lineup-slot-card.has-injury .slot-player:after{content:"";position:absolute;top:0;right:0;width:8px;height:8px;background:#ffc107;border-radius:50%}.standings-table-container{overflow-x:auto;margin:1rem 0}.standings-table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:var(--radius);overflow:hidden}.standings-table th{background:var(--surface-hover);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.standings-table tbody tr:hover{background:var(--surface-hover)}.standings-table .playoff-spot{border-left:3px solid var(--success)}.standings-table .bubble{border-left:3px solid var(--warning)}.standings-table .rank-col{width:50px;text-align:center;font-weight:600}.standings-table .team-col{min-width:150px}.standings-table .record-col{width:80px;text-align:center}.standings-table .streak-col{width:60px;text-align:center;font-weight:600}.beta-signups-stats{display:flex;gap:1rem;margin-bottom:2rem}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;text-align:center}.stat-value{font-size:2rem;font-weight:700;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem}.stat-label{color:var(--text-muted);font-size:.875rem}.beta-signups-table-container{overflow-x:auto;margin:1rem 0}.beta-signups-table{width:100%;border-collapse:collapse;background:var(--bg-card);border-radius:var(--radius);overflow:hidden}.beta-signups-table th,.beta-signups-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.beta-signups-table th{background:var(--bg-hover);font-weight:600;color:var(--text-secondary)}.beta-signups-table tbody tr:hover{background:var(--bg-hover)}.empty-state{text-align:center;padding:3rem;color:var(--text-muted)}.league-admin-sections{display:flex;flex-direction:column;gap:2rem}.admin-section-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem}.admin-section-card h2{margin-bottom:.5rem;font-size:1.5rem}.members-list{display:flex;flex-direction:column;gap:1rem}.member-card{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.member-info{display:flex;flex-direction:column;gap:.25rem}.member-name{font-weight:600;font-size:1rem}.member-email{color:var(--text-muted);font-size:.875rem}.member-team{color:var(--accent-cyan);font-size:.875rem;margin-top:.25rem}.teams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.team-card-admin{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.team-card-header{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--border);padding-bottom:.75rem}.team-card-header h3{margin:0;font-size:1.125rem}.team-balance{color:var(--accent-cyan);font-weight:600;font-size:1rem}.team-card-body{flex:1;display:flex;flex-direction:column;gap:.5rem}.status-badge.assigned{background:#10b98133;color:var(--success);padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;display:inline-block;width:fit-content}.status-badge.unassigned{background:#f59e0b33;color:var(--warning);padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;display:inline-block;width:fit-content}.team-assigned{display:flex;flex-direction:column;gap:.5rem}.team-owner{font-weight:500;color:var(--text-primary)}.team-owner-email{color:var(--text-muted);font-size:.875rem}.team-unassigned{display:flex;flex-direction:column;gap:.5rem}.team-requester{color:var(--text-muted);font-size:.875rem}.team-card-actions{border-top:1px solid var(--border);padding-top:.75rem}.assign-form{display:flex;flex-direction:column;gap:.75rem}.assign-select{width:100%;padding:.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:.875rem}.assign-actions{display:flex;gap:.5rem}.league-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:1rem}.invite-code{display:block;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem 1rem;font-family:monospace;font-size:1.125rem;font-weight:600;color:var(--accent-cyan);margin-top:.5rem;cursor:pointer;-webkit-user-select:all;user-select:all}.invite-code:hover{background:var(--bg-hover)}@media (max-width: 768px){.teams-grid,.league-info-grid{grid-template-columns:1fr}}.standings-table .last5-col{width:70px;text-align:center;font-family:var(--font-mono);font-size:.85rem}.standings-table .pf-col,.standings-table .pa-col,.standings-table .diff-col,.standings-table .pct-col{width:70px;text-align:right}.standings-table .record{font-weight:600;font-family:var(--font-mono)}.standings-table .streak-col.win-streak{color:var(--success);background:#22c55e1a}.standings-table .streak-col.loss-streak{color:var(--danger);background:#ef44441a}.standings-table .team-link{color:var(--text);text-decoration:none;font-weight:500}.standings-table .team-link:hover{color:var(--primary)}.standings-table .positive{color:var(--success)}.standings-table .negative{color:var(--error)}.standings-legend{display:flex;gap:1.5rem;margin-top:1rem;font-size:.85rem;color:var(--text-muted)}.legend-item{display:flex;align-items:center;gap:.5rem}.week-selector{display:flex;align-items:center;justify-content:center;gap:1rem;margin:1.5rem 0}.week-nav-btn{width:40px;height:40px;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.week-nav-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--primary)}.week-nav-btn:disabled{opacity:.5;cursor:not-allowed}.week-dropdown{padding:.5rem 1rem;font-size:1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;min-width:150px}.matchups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;margin-top:1rem}.matchup-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:inherit;display:block}.matchup-card.clickable{cursor:pointer;transition:transform .15s,box-shadow .15s}.matchup-card.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.matchup-card.complete{border-color:var(--success)}.matchup-team{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;text-decoration:none;color:var(--text);transition:background .2s}.matchup-team:hover{background:var(--surface-hover)}.matchup-team.winner{background:#4caf501a}.matchup-team .team-name{font-weight:500;flex:1}.matchup-team .team-score{font-family:var(--font-mono);font-size:1.25rem;font-weight:600;margin-left:1rem}.matchup-team .team-score.leading{color:var(--success)}.matchup-team .winner-badge{margin-left:.5rem;padding:.15rem .4rem;background:var(--success);color:#fff;border-radius:3px;font-size:.7rem;font-weight:700}.matchup-divider{display:flex;align-items:center;justify-content:center;padding:.25rem;background:var(--surface-hover);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.matchup-divider .vs{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase}.matchup-divider .final-badge{font-size:.65rem;font-weight:700;color:var(--success);text-transform:uppercase;letter-spacing:.1em}.matchup-divider .tie-badge{font-size:.65rem;font-weight:700;color:var(--warning);text-transform:uppercase}.no-matchups{text-align:center;padding:3rem;color:var(--text-muted);grid-column:1 / -1}.no-matchups .hint{font-size:.85rem;margin-top:.5rem}.trending-widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.trending-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border)}.trending-header h3{margin:0;font-size:1rem;font-weight:600}.trending-timeframe{font-size:.75rem;color:var(--text-muted);background:var(--surface-hover);padding:.2rem .5rem;border-radius:4px}.trending-tabs{display:flex;border-bottom:1px solid var(--border);overflow-x:auto}.trending-tab{flex:1;padding:.6rem .5rem;border:none;background:transparent;color:var(--text-muted);font-size:.8rem;cursor:pointer;white-space:nowrap;transition:all .2s}.trending-tab:hover{background:var(--surface-hover);color:var(--text)}.trending-tab.active{color:var(--primary);border-bottom:2px solid var(--primary);margin-bottom:-1px}.trending-content{min-height:200px}.trending-loading,.trending-error,.trending-empty{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-muted);font-size:.9rem}.trending-error{color:var(--error)}.trending-list{display:flex;flex-direction:column}.trending-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;text-decoration:none;color:var(--text);border-bottom:1px solid var(--border);transition:background .2s}.trending-item:last-child{border-bottom:none}.trending-item:hover{background:var(--surface-hover)}.trending-rank{width:20px;font-size:.8rem;font-weight:600;color:var(--text-muted);text-align:center}.trending-position{font-size:.65rem;font-weight:700;padding:.15rem .35rem;border-radius:3px;color:#fff;min-width:26px;text-align:center}.trending-player-info{flex:1;display:flex;flex-direction:column;gap:.1rem;min-width:0}.trending-name{font-weight:500;font-size:.9rem;display:flex;align-items:center;gap:.35rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trending-team{font-size:.75rem;color:var(--text-muted)}.trending-stat{text-align:right}.stat-volume{font-size:.8rem;color:var(--text-muted)}.stat-change{font-family:var(--font-mono);font-size:.9rem;font-weight:600}.stat-change.positive{color:var(--success)}.stat-change.negative{color:var(--error)}.trending-compact{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem}.trending-compact-title{font-size:.8rem;font-weight:600;margin-bottom:.5rem;color:var(--text-muted)}.trending-compact-list{display:flex;flex-direction:column;gap:.35rem}.trending-compact-item{display:flex;justify-content:space-between;align-items:center;padding:.35rem .5rem;border-radius:4px;text-decoration:none;color:var(--text);font-size:.85rem;transition:background .2s}.trending-compact-item:hover{background:var(--surface-hover)}.compact-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.compact-change{font-family:var(--font-mono);font-size:.8rem;font-weight:600}.compact-change.positive{color:var(--success)}.compact-change.negative{color:var(--error)}.trending-compact-loading{font-size:.8rem;color:var(--text-muted);padding:.5rem}.market-trending-section{margin-top:1.5rem}@media (max-width: 768px){.page-container{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:.5rem}.page-header h1{font-size:1.5rem}.standings-table th,.standings-table td{padding:.5rem;font-size:.85rem}.standings-table .pf-col,.standings-table .pa-col,.standings-table .diff-col{display:none}.matchups-grid{grid-template-columns:1fr}.matchup-team{padding:.75rem 1rem}.lineup-grid{flex-direction:column}.lineup-column{width:100%}.bench-player-card{flex-wrap:wrap}.player-shares{width:100%;margin-top:.25rem;justify-content:flex-end}.market-grid{grid-template-columns:1fr}.btn{padding:.6rem 1rem;font-size:.9rem}.card{padding:1rem}}.bench-player-card.disabled{opacity:.6;cursor:not-allowed}.bench-player-card.disabled:hover{transform:none}.standings-page{display:flex;flex-direction:column;gap:1rem}.view-toggle{display:flex;gap:.25rem;padding:.25rem}.view-toggle button{flex:1;background:transparent;color:var(--text-secondary)}.view-toggle button.active{background:var(--bg-hover);color:var(--text-primary)}.my-position{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:linear-gradient(135deg,#22d3ee1a,#3b82f61a);border-color:var(--accent-cyan)}.my-position .rank{font-size:2rem;font-weight:700;color:var(--accent-cyan)}.my-team-info .team-name{font-weight:600;font-size:1.25rem}.my-team-info .record{color:var(--text-muted)}.my-stats{margin-left:auto;display:flex;gap:1.5rem;color:var(--text-muted)}.standings-table{overflow-x:auto}.standings-table table{width:100%;border-collapse:collapse}.standings-table th,.standings-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.standings-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.standings-table tr.my-team{background:#22d3ee0d}.standings-table .rank{font-weight:600;color:var(--text-muted)}.standings-table .team-name{font-weight:500}.standings-table .record{font-weight:600}.week-nav{display:flex;justify-content:center;align-items:center;gap:2rem}.matchups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.matchup-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;text-align:center;position:relative}.matchup-card.my-matchup{border-color:var(--accent-cyan);background:#22d3ee0d}.matchup-card .team{width:100%;display:flex;justify-content:space-between;padding:.5rem}.matchup-card .team.winner{background:#10b9811a;border-radius:var(--radius)}.matchup-card .team-name{font-weight:500}.matchup-card .score{font-weight:700;font-size:1.125rem}.matchup-card .vs{color:var(--text-muted);font-size:.75rem}.matchups-page-v2{max-width:900px;margin:0 auto}.matchups-tabs{display:flex;gap:.5rem;margin-bottom:2rem;background:var(--bg-dark);padding:.25rem;border-radius:12px;width:fit-content}.matchups-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;background:transparent;color:var(--text-secondary);font-size:.9375rem;font-weight:500;border-radius:10px;cursor:pointer;transition:all .2s ease}.matchups-tab:hover{color:var(--text-primary);background:#ffffff0d}.matchups-tab.active{background:var(--accent-cyan);color:var(--bg-dark)}.matchups-tab .tab-icon{font-size:1.125rem}.week-navigator{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-bottom:1rem}.week-arrow{background:var(--bg-hover);border:1px solid var(--border);color:var(--text-primary);width:40px;height:40px;border-radius:50%;font-size:1.25rem;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.week-arrow:hover:not(:disabled){background:var(--accent-cyan);border-color:var(--accent-cyan);color:var(--bg-dark)}.week-arrow:disabled{opacity:.3;cursor:not-allowed}.week-display{display:flex;flex-direction:column;align-items:center;gap:.25rem}.week-display .week-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.week-display .week-number{font-size:2.5rem;font-weight:700;line-height:1;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.week-display .current-badge{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.125rem .5rem;background:var(--success);color:var(--bg-dark);border-radius:9999px}.week-pills{display:flex;justify-content:center;flex-wrap:wrap;gap:.375rem;margin-bottom:2rem}.week-pill{width:32px;height:32px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:.75rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .15s ease}.week-pill:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.week-pill.active{background:var(--accent-cyan);border-color:var(--accent-cyan);color:var(--bg-dark);font-weight:700}.week-pill.current:not(.active){border-color:var(--success);color:var(--success)}.no-matchups-v2{text-align:center;padding:4rem 2rem}.no-matchups-v2 .no-matchups-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-matchups-v2 h3{font-size:1.25rem;margin-bottom:.5rem}.no-matchups-v2 p{color:var(--text-muted)}.featured-matchup{margin-bottom:2rem}.featured-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-cyan);margin-bottom:.5rem}.matchups-grid-v2{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.matchup-card-v2{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:all .2s ease}.matchup-card-v2:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0003;border-color:var(--accent-cyan)}.matchup-card-v2.featured{border-color:var(--accent-cyan);background:linear-gradient(135deg,rgba(34,211,238,.05) 0%,transparent 50%)}.matchup-card-v2 .team-row{display:flex;justify-content:space-between;align-items:center;padding:1rem;transition:background .15s ease}.matchup-card-v2 .team-row:first-child{border-bottom:1px solid var(--border)}.matchup-card-v2 .team-row.winning{background:#10b98114}.matchup-card-v2 .team-row.my-team{background:#22d3ee14}.matchup-card-v2 .team-row.my-team.winning{background:linear-gradient(90deg,#22d3ee1a,#10b9811a)}.matchup-card-v2 .team-info{display:flex;align-items:center;gap:.5rem}.matchup-card-v2 .team-record{font-size:.75rem;color:var(--text-muted);font-family:var(--font-mono)}.matchup-card-v2 .you-badge{font-size:.625rem;font-weight:700;text-transform:uppercase;padding:.125rem .375rem;background:var(--accent-cyan);color:var(--bg-dark);border-radius:4px}.matchup-card-v2 .team-name{font-weight:500;font-size:.9375rem}.matchup-card-v2 .team-score-wrapper{display:flex;align-items:center;gap:.5rem}.matchup-card-v2 .team-score{font-size:1.25rem;font-weight:700;font-family:JetBrains Mono,monospace}.matchup-card-v2 .team-score.leading{color:var(--success)}.matchup-card-v2 .result-badge{font-size:.625rem;font-weight:700;padding:.125rem .375rem;border-radius:4px}.matchup-card-v2 .result-badge.win{background:var(--success);color:var(--bg-dark)}.matchup-card-v2 .result-badge.loss{background:var(--danger);color:#fff}.matchup-card-v2 .result-badge.tie{background:var(--warning);color:var(--bg-dark)}.matchup-card-v2 .matchup-vs{text-align:center;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);padding:.125rem 0;background:var(--bg-dark);margin:-1px 0}.matchup-card-v2 .view-details{text-align:center;padding:.75rem;font-size:.75rem;color:var(--text-muted);border-top:1px solid var(--border);transition:all .15s ease}.matchup-card-v2:hover .view-details{color:var(--accent-cyan);background:#22d3ee0d}.final-badge{position:absolute;top:.5rem;right:.5rem;background:var(--success);color:var(--bg-dark);font-size:.625rem;font-weight:700;padding:.125rem .5rem;border-radius:9999px}.schedule-table table{width:100%;border-collapse:collapse}.schedule-table th,.schedule-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.schedule-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.schedule-table tr.win{background:#10b9810d}.schedule-table tr.loss{background:#ef44440d}.result-badge{padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.result-badge.w{background:#10b98133;color:var(--success)}.result-badge.l{background:#ef444433;color:var(--danger)}.result-badge.t{background:#f59e0b33;color:var(--warning)}@media (max-width: 1024px){.market-grid,.ipo-grid,.lineup-grid{grid-template-columns:1fr}.league-nav{flex-wrap:wrap}.nav-links{order:3;width:100%;justify-content:center}}@media (max-width: 768px){.selected-player-v2{position:sticky;top:0;z-index:50;margin:-1rem -1rem 1rem;border-radius:0;box-shadow:0 2px 8px #0000004d}.player-card-collapsible{cursor:pointer}.player-card-collapsible .player-card-summary{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--bg-card);border-radius:var(--radius)}.player-card-collapsible .player-card-summary .player-info{display:flex;align-items:center;gap:.75rem}.player-card-collapsible .player-card-summary .price-info{text-align:right}.player-card-collapsible .player-card-summary .price{font-weight:600;font-size:1rem}.player-card-collapsible .player-card-summary .change{font-size:.75rem}.player-card-collapsible .expand-indicator{color:var(--text-muted);transition:transform .2s}.player-card-collapsible.expanded .expand-indicator{transform:rotate(180deg)}.player-card-collapsible .player-card-details{max-height:0;overflow:hidden;transition:max-height .3s ease}.player-card-collapsible.expanded .player-card-details{max-height:500px}.pull-to-refresh{display:flex;align-items:center;justify-content:center;padding:1rem;color:var(--text-muted);font-size:.875rem;transform:translateY(-100%);transition:transform .2s}.pull-to-refresh.visible{transform:translateY(0)}.pull-to-refresh .spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;margin-right:.5rem;animation:spin .8s linear infinite}}@media (max-width: 640px){.beta-banner{flex-direction:column;gap:.25rem;padding:.75rem 1rem}.home-hero{padding:3rem 1rem 2rem}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.5rem}.hero-tagline{font-size:1.125rem}.hero-description{font-size:1rem}.hero-cta button.large{width:100%;padding:1rem}.how-it-works,.screenshot-showcase{padding:2rem 1rem}.carousel-btn{width:36px;height:36px;font-size:1.25rem}.carousel-btn.prev{left:-.5rem}.carousel-btn.next{right:-.5rem}.carousel-caption h3{font-size:1.1rem}.carousel-caption p{font-size:.85rem}.steps-container{grid-template-columns:1fr;gap:1.5rem}.step{flex-direction:row;align-items:flex-start;gap:1rem}.step-number{flex-shrink:0;width:40px;height:40px;font-size:1rem}.home-features{padding:2rem 1rem}.features-grid{grid-template-columns:1fr}.home-join{margin:1rem;padding:2rem 1.25rem}.join-form{flex-direction:column}.footer-stats{flex-direction:column;gap:1.5rem}.top-players-section{padding:2rem 1rem}}.create-team-btn{background:var(--gradient);color:var(--bg-dark);border:none;padding:.5rem 1rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:opacity .15s}.create-team-btn:hover{opacity:.9}.admin-indicator{background:var(--warning);color:var(--bg-dark);font-size:.625rem;font-weight:700;padding:.125rem .5rem;border-radius:9999px;margin-left:.5rem;text-transform:uppercase}.admin-btn{background:transparent;border:none;font-size:1rem;cursor:pointer;padding:.5rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;max-width:400px;width:90%}.modal h3{margin-bottom:.5rem}.modal .muted{margin-bottom:1.5rem}.modal .form-group{margin-bottom:1rem}.modal .form-group label{display:block;font-size:.875rem;margin-bottom:.5rem;color:var(--text-secondary)}.modal .form-group input{width:100%;padding:.75rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:1rem}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.5rem}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.5rem .75rem;border-radius:var(--radius);font-size:.875rem;margin-top:.5rem}.admin-panel{position:fixed;top:60px;right:0;width:320px;max-height:calc(100vh - 80px);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius) 0 0 var(--radius);overflow:hidden;z-index:100;box-shadow:var(--shadow)}.admin-panel-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border);background:var(--bg-dark)}.admin-panel-header h3{margin:0}.admin-panel-content{padding:1rem;overflow-y:auto;max-height:calc(100vh - 160px)}.admin-info{background:var(--bg-dark);padding:.75rem;border-radius:var(--radius);margin-bottom:1rem;font-size:.875rem}.admin-info p{margin:.25rem 0}.admin-panel-content h4{margin:1rem 0 .5rem;font-size:.875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.team-list-admin{display:flex;flex-direction:column;gap:.5rem}.team-row-admin{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem;background:var(--bg-dark);border-radius:var(--radius)}.team-row-admin .team-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.team-row-admin .team-name{font-weight:500}.team-row-admin .team-balance{color:var(--text-muted);font-size:.875rem}.team-row-admin .team-owner{color:var(--text-muted);font-size:.75rem}.team-row-admin .team-actions,.assign-team-form{display:flex;gap:.5rem;align-items:center}.assign-team-form select{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);padding:.25rem .5rem;font-size:.875rem}.team-row-admin .danger{color:var(--danger)}button.danger{color:var(--danger);border-color:var(--danger)}button.danger:hover{background:#ef44441a}.player-card-v2{display:flex;align-items:stretch;gap:0;padding:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .15s;text-align:left;width:100%;overflow:hidden;position:relative;min-height:48px}.player-card-v2:hover{border-color:var(--accent-cyan);background:var(--bg-hover)}.player-card-v2.selected{border-color:var(--accent-cyan);background:#22d3ee1a}.player-card-v2.locked{opacity:.6}.player-card-v2 .position-badge{display:flex;align-items:center;justify-content:center;width:36px;min-width:36px;min-height:100%;font-size:.625rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.05em}.player-card-v2 .player-content{flex:1;display:flex;justify-content:space-between;align-items:center;padding:.75rem;gap:.75rem}.player-card-v2 .player-main{display:flex;flex-direction:column;gap:.125rem;min-width:0}.player-card-v2 .player-name{font-weight:600;font-size:.875rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-card-v2 .player-team{font-size:.75rem;color:var(--text-muted)}.player-card-v2 .player-stats{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.player-card-v2 .price-change{font-size:.7rem;font-weight:600;padding:.1rem .3rem;border-radius:3px}.player-card-v2 .price-change.positive{color:var(--success);background:#22c55e26}.player-card-v2 .price-change.negative{color:var(--danger);background:#ef444426}.player-card-v2 .bid-popularity{font-size:.7rem;font-weight:600;padding:.15rem .4rem;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;border-radius:3px;animation:pulse-fire 1.5s ease-in-out infinite}@keyframes pulse-fire{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.player-card-v2 .market-price{font-weight:700;font-size:.9375rem;color:var(--text-primary)}.player-card-v2 .reserve-shares{font-size:.6875rem;color:var(--text-muted)}.player-card-v2 .lock-badge{position:absolute;top:.25rem;right:.25rem;font-size:.625rem}.selected-player-v2{display:flex;align-items:stretch;background:var(--bg-dark);border-radius:var(--radius);overflow:hidden;margin-bottom:1rem}.selected-player-v2 .position-indicator{width:6px;min-width:6px}.selected-player-v2 .player-details{flex:1;padding:1rem}.selected-player-v2 .player-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}.selected-player-v2 .name{font-weight:600;font-size:1.125rem}.selected-player-v2 .big-price{font-weight:700;font-size:1.5rem;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.selected-player-v2 .player-sub{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.selected-player-v2 .position-label{font-weight:600}.selected-player-v2 .separator{color:var(--text-muted)}.selected-player-v2 .team-label{color:var(--text-secondary)}.holding-row-v2{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem;background:var(--bg-dark);border:1px solid transparent;border-radius:var(--radius);cursor:pointer;transition:all .15s;text-align:left}.holding-row-v2:hover{background:var(--bg-hover)}.holding-row-v2.selected{border-color:var(--accent-cyan);background:#22d3ee0d}.holding-row-v2 .position-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.holding-row-v2 .holding-info{flex:1;min-width:0}.holding-row-v2 .name{display:block;font-weight:500;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.holding-row-v2 .meta{font-size:.75rem;color:var(--text-muted)}.holding-row-v2 .holding-value{text-align:right}.holding-row-v2 .price{display:block;font-size:.875rem;color:var(--text-secondary)}.holding-row-v2 .total{display:block;font-weight:600;font-size:.9375rem}.pos-qb{color:#ef4444}.pos-rb{color:#22c55e}.pos-wr{color:#3b82f6}.pos-te{color:#f59e0b}.ipo-page .selected-player-v2 .base-label{font-size:.75rem;color:var(--text-muted);margin-top:.5rem}.order-row-v2{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-dark);border-radius:var(--radius);margin-bottom:.5rem}.order-row-v2 .position-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.order-row-v2 .order-player{flex:1;min-width:0}.order-row-v2 .order-player .name{display:block;font-weight:500;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-row-v2 .order-player .meta{font-size:.75rem;color:var(--text-muted)}.order-row-v2 .order-details{display:flex;align-items:center;gap:.25rem;font-size:.8125rem;color:var(--text-secondary)}.order-row-v2 .order-details .qty{font-weight:600}.order-row-v2 .order-total{font-weight:600;font-size:.875rem;color:var(--accent-cyan)}.order-row-v2.filled{background:#10b9810d;border:1px solid rgba(16,185,129,.2)}.order-row-v2 .fill-status{font-size:.75rem;font-weight:600}.order-row-v2 .fill-status.filled{color:var(--success)}.order-row-v2 .fill-status.partial{color:var(--warning)}.order-row-v2 .fill-status.rejected{color:var(--danger)}.order-row-v2 .fill-info{font-size:.8125rem}.admin-stats-bar{display:flex;gap:1rem;padding:1rem;background:var(--bg-dark);border-radius:var(--radius);margin-bottom:1rem;flex-wrap:wrap}.admin-stats-bar .stat-item{flex:1;min-width:80px;text-align:center}.admin-stats-bar .stat-value{display:block;font-size:1.5rem;font-weight:700;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-stats-bar .stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.admin-tabs{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:1px solid var(--border);padding-bottom:.5rem}.admin-tab{background:transparent;border:none;padding:.5rem 1rem;color:var(--text-muted);font-size:.875rem;cursor:pointer;border-radius:var(--radius);transition:all .15s}.admin-tab:hover{background:var(--bg-hover);color:var(--text-secondary)}.admin-tab.active{background:var(--bg-card);color:var(--text-primary);font-weight:500}.admin-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.admin-list-item{display:flex;flex-direction:column;padding:.75rem;background:var(--bg-dark);border-radius:var(--radius);gap:1rem}.admin-list-item>.item-main{display:flex;flex-direction:column;gap:.5rem;flex:1}.admin-list-item>.item-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.admin-list-item .item-name{display:flex;align-items:center;gap:.5rem;font-weight:500}.admin-list-item .item-meta{display:block;font-size:.75rem;color:var(--text-muted);margin-top:.125rem}.admin-list-item .item-actions{display:flex;gap:.25rem}.admin-badge-small{background:var(--warning);color:var(--bg-dark);font-size:.5625rem;font-weight:700;padding:.0625rem .375rem;border-radius:9999px;text-transform:uppercase}.banned-badge{background:var(--danger);color:#fff;font-size:.5625rem;font-weight:700;padding:.0625rem .375rem;border-radius:9999px;text-transform:uppercase;margin-left:.5rem}.admin-list-item.banned{opacity:.6;border-left:3px solid var(--danger)}.my-leagues-section{max-width:700px;width:100%;padding:2rem 1.5rem}.my-leagues-section h2{text-align:center;margin-bottom:.5rem;font-size:1.5rem}.my-leagues-section .empty-leagues{text-align:center;padding:2rem;background:var(--bg-card);border:1px dashed var(--border);border-radius:var(--radius)}.my-leagues-list{display:flex;flex-direction:column;gap:.75rem}.my-league-card{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .15s;text-align:left;width:100%}.my-league-card:hover{border-color:var(--accent-cyan);background:var(--bg-hover);transform:translate(4px)}.my-league-card .league-info{display:flex;flex-direction:column;gap:.25rem}.my-league-card .league-name{font-weight:600;font-size:1rem;color:var(--text-primary)}.my-league-card .team-name{font-size:.875rem;color:var(--text-muted)}.my-league-card .league-balance{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.my-league-card .balance-amount{font-weight:700;font-size:1.125rem;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.my-league-card .balance-label{font-size:.6875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.empty-leagues{text-align:center;padding:2rem;background:var(--bg-card);border:1px dashed var(--border);border-radius:var(--radius)}.empty-leagues p{margin:.25rem 0}.my-league-card.no-team{border-style:dashed;opacity:.85}.my-league-card .admin-tag{background:var(--warning);color:var(--bg-dark);font-size:.5625rem;font-weight:700;padding:.125rem .375rem;border-radius:9999px;margin-left:.5rem;text-transform:uppercase;vertical-align:middle}.my-league-card .no-team-label{color:var(--accent-cyan);font-style:italic}.playoff-bracket{padding:1rem}.bracket-title{text-align:center;font-size:1.5rem;margin-bottom:1.5rem;color:var(--accent-gold)}.playoff-empty{text-align:center;padding:2rem;background:var(--bg-card);border:1px dashed var(--border);border-radius:var(--radius)}.playoff-empty h3{color:var(--accent-gold);margin-bottom:.5rem}.playoff-empty .hint{font-size:.8rem;color:var(--text-muted);margin-top:1rem}.playoff-seeds{background:var(--bg-card);border-radius:var(--radius);padding:1rem;margin-bottom:1.5rem}.playoff-seeds h4{font-size:.9rem;margin-bottom:.75rem;color:var(--text-muted)}.seed-list{display:flex;flex-wrap:wrap;gap:.5rem}.seed-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--bg-dark);border-radius:4px;font-size:.85rem}.seed-item.bye-seed{background:linear-gradient(135deg,#10b98133,#0596691a);border:1px solid rgba(16,185,129,.3)}.seed-number{font-weight:700;color:var(--accent-gold)}.seed-record{color:var(--text-muted);font-size:.75rem}.seed-item .bye-badge{background:var(--accent-green);color:#fff;font-size:.6rem;padding:.1rem .3rem;border-radius:3px;font-weight:700}.bracket-rounds{display:flex;align-items:stretch;justify-content:center;gap:0;overflow-x:auto;padding:1rem 0}.bracket-round{min-width:200px;padding:0 1rem}.bracket-round h4{text-align:center;font-size:.85rem;color:var(--text-muted);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.bracket-round.championship h4{color:var(--accent-gold);font-size:1rem}.round-matchups{display:flex;flex-direction:column;gap:1.5rem;justify-content:center;height:100%}.bracket-matchup{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.bracket-matchup.championship{border:2px solid var(--accent-gold);box-shadow:0 0 20px #f59e0b1a}.bracket-team{display:flex;align-items:center;padding:.75rem;gap:.5rem;transition:background .2s}.bracket-team:hover{background:var(--bg-dark)}.bracket-team.winner{background:#10b98126}.bracket-team.loser{opacity:.5}.bracket-team .team-link{display:flex;align-items:center;gap:.5rem;flex:1;text-decoration:none;color:inherit}.bracket-team .seed{font-size:.7rem;color:var(--accent-gold);font-weight:600;min-width:24px}.bracket-team .team-name{flex:1;font-weight:500}.bracket-team .team-points{font-weight:600;color:var(--accent-cyan)}.bracket-team .tbd{color:var(--text-muted);font-style:italic}.bracket-team .winner-icon{font-size:1rem}.matchup-vs{text-align:center;padding:.25rem;font-size:.7rem;font-weight:600;color:var(--text-muted);background:var(--bg-dark)}.bracket-matchup.complete .matchup-vs{background:var(--accent-green);color:#fff}.bracket-connector{display:flex;flex-direction:column;justify-content:space-around;min-width:30px;padding:2rem 0}.bracket-connector.single{justify-content:center}.connector-line{width:100%;height:2px;background:var(--border);position:relative}.connector-line:before,.connector-line:after{content:"";position:absolute;width:2px;height:30px;background:var(--border)}.connector-line.top:before{right:0;top:0}.connector-line.top:after{left:0;top:0}.connector-line.bottom:before{right:0;bottom:0}.connector-line.bottom:after{left:0;bottom:0}.tbd-matchup{text-align:center;padding:2rem;color:var(--text-muted);font-style:italic;background:var(--bg-card);border-radius:var(--radius);border:1px dashed var(--border)}@media (max-width: 768px){.bracket-rounds{flex-direction:column;align-items:center}.bracket-round{width:100%;max-width:300px;margin-bottom:1.5rem}.bracket-connector{transform:rotate(90deg);height:40px;min-width:auto;padding:0}.seed-list{flex-direction:column}}.ipo-history{background:var(--bg-card);border-radius:var(--radius);padding:1rem;margin-bottom:1rem}.ipo-selector{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.ipo-selector label{font-weight:500;color:var(--text-muted);font-size:.85rem}.ipo-dropdown{flex:1;padding:.5rem .75rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:.9rem}.ipo-dropdown:focus{outline:none;border-color:var(--accent-cyan)}.ipo-alert{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem}.ipo-alert.rookie-alert{background:linear-gradient(135deg,#10b98126,#0596691a);border:1px solid rgba(16,185,129,.3);color:var(--accent-green)}.ipo-alert .alert-icon{font-size:1.25rem}.ipo-details{border-top:1px solid var(--border);padding-top:1rem}.ipo-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.ipo-header h4{margin:0;font-size:1.1rem}.ipo-status-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.ipo-status-badge.status-gray{background:#6b728033;color:#9ca3af}.ipo-status-badge.status-green{background:#10b98133;color:#10b981}.ipo-status-badge.status-yellow{background:#f59e0b33;color:#f59e0b}.ipo-status-badge.status-blue{background:#3b82f633;color:#3b82f6}.ipo-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:.75rem;margin-bottom:1rem}.ipo-stats .stat{background:var(--bg-dark);padding:.75rem;border-radius:6px;text-align:center}.ipo-stats .stat-label{display:block;font-size:.7rem;color:var(--text-muted);margin-bottom:.25rem;text-transform:uppercase}.ipo-stats .stat-value{display:block;font-size:1.1rem;font-weight:600;color:var(--accent-cyan)}.ipo-timeline{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.timeline-item{display:flex;justify-content:space-between;font-size:.85rem}.timeline-label{color:var(--text-muted)}.timeline-value{font-weight:500}.ipo-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.admin-actions{margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--border)}.btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.btn-warning:hover{background:linear-gradient(135deg,#d97706,#b45309)}.toast-container{position:fixed;top:1rem;right:1rem;z-index:9999;display:flex;flex-direction:column;gap:.5rem;max-width:400px}.toast{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;border-radius:8px;background:var(--bg-card);box-shadow:0 4px 20px #0000004d;cursor:pointer;animation:slideIn .3s ease-out;border-left:4px solid}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{border-left-color:var(--accent-green)}.toast-error{border-left-color:#ef4444}.toast-warning{border-left-color:#f59e0b}.toast-info{border-left-color:var(--accent-cyan)}.toast-icon{font-size:1.1rem;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%}.toast-success .toast-icon{background:#10b98133;color:var(--accent-green)}.toast-error .toast-icon{background:#ef444433;color:#ef4444}.toast-warning .toast-icon{background:#f59e0b33;color:#f59e0b}.toast-info .toast-icon{background:#06b6d433;color:var(--accent-cyan)}.toast-message{flex:1;font-size:.9rem}.toast-close{background:none;border:none;color:var(--text-muted);font-size:1.25rem;cursor:pointer;padding:0;line-height:1;opacity:.6}.toast-close:hover{opacity:1}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.loading-small{padding:1rem}.loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--accent-cyan);border-radius:50%;animation:spin .8s linear infinite}.loading-small .loading-spinner{width:24px;height:24px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}.loading-message{color:var(--text-muted);font-size:.9rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-title{font-size:1.25rem;margin:0 0 .5rem}.empty-message{color:var(--text-muted);font-size:.9rem;margin:0 0 1rem;max-width:300px}.empty-action{margin-top:.5rem}.player-card{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .15s}.player-card:hover{border-color:var(--accent-cyan);background:#06b6d40d}.player-card.selected{border-color:var(--accent-cyan);background:#06b6d41a}.player-card.locked{opacity:.6;cursor:not-allowed}.player-card.compact{padding:.5rem .75rem}.player-position-badge{padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:700;color:#fff;min-width:32px;text-align:center}.player-card .player-info{flex:1;min-width:0}.player-card .player-name-row{display:flex;align-items:center;gap:.5rem}.player-card .player-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-card .player-meta{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-muted);margin-top:.15rem}.player-card .bye-badge{background:#f59e0b33;color:#f59e0b;padding:.1rem .3rem;border-radius:3px;font-size:.65rem;font-weight:600}.player-card .player-price-info{text-align:right;flex-shrink:0}.player-card .player-price{font-weight:600;font-family:JetBrains Mono,monospace;display:block}.player-card .price-change{font-size:.75rem;font-family:JetBrains Mono,monospace}.player-card .price-change.positive{color:var(--accent-green)}.player-card .price-change.negative{color:#ef4444}.player-card .shares-owned{display:block;font-size:.7rem;color:var(--accent-cyan);margin-top:.15rem}.player-row{display:flex;align-items:center;gap:.5rem;padding:.5rem;cursor:pointer}.player-row:hover{background:#ffffff08}.player-row .position-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.player-row .player-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-row .nfl-team{color:var(--text-muted);font-size:.8rem}.player-row .player-points{font-family:JetBrains Mono,monospace;font-weight:500}.transactions-page{max-width:800px;margin:0 auto}.transactions-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.transactions-page .page-header h1{margin:0}.filter-tabs{display:flex;gap:.5rem;background:var(--bg-dark);padding:.25rem;border-radius:6px}.filter-tab{padding:.5rem 1rem;background:transparent;border:none;color:var(--text-muted);border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .15s}.filter-tab:hover{color:var(--text)}.filter-tab.active{background:var(--accent-cyan);color:#fff}.transactions-list{display:flex;flex-direction:column;gap:.5rem}.transaction-row{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;transition:border-color .15s}.transaction-row:hover{border-color:var(--accent-cyan)}.transaction-row.bought{border-left:3px solid var(--accent-green)}.transaction-row.sold{border-left:3px solid #ef4444}.transaction-row .tx-icon{font-size:1.5rem;opacity:.7}.transaction-row .tx-details{flex:1;min-width:0}.transaction-row .tx-primary{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.transaction-row .tx-player{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transaction-row .tx-quantity{color:var(--text-muted);font-size:.85rem}.transaction-row .tx-secondary{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-muted)}.transaction-row .tx-arrow{opacity:.5}.transaction-row .tx-price-info{text-align:right;flex-shrink:0}.transaction-row .tx-total{display:block;font-weight:600;font-family:JetBrains Mono,monospace}.transaction-row .tx-per-share{display:block;font-size:.75rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.transaction-row .tx-time{color:var(--text-muted);font-size:.8rem;min-width:60px;text-align:right}@media (max-width: 600px){.transaction-row{flex-wrap:wrap}.transaction-row .tx-time{width:100%;text-align:left;padding-left:2.5rem;margin-top:.5rem}}.matchup-detail-page{max-width:1000px;margin:0 auto;padding:1rem}.matchup-detail-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.matchup-detail-header h2{margin:0;flex:1}.matchup-detail-header .final-badge.large{font-size:.9rem;padding:.4rem .8rem;background:var(--accent-green);color:#fff;border-radius:4px;font-weight:700}.matchup-nav{display:flex;align-items:center;gap:.5rem}.matchup-nav-btn{width:36px;height:36px;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);color:var(--text);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.matchup-nav-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--primary)}.matchup-nav-btn:disabled{opacity:.4;cursor:not-allowed}.matchup-nav-label{font-size:.85rem;color:var(--text-muted);min-width:7rem;text-align:center}.matchup-scoreboard{display:grid;grid-template-columns:1fr auto 1fr;gap:1.5rem;align-items:center;background:var(--bg-card);border-radius:var(--radius);padding:2rem;margin-bottom:1.5rem}.team-score-box{text-align:center;padding:1rem;border-radius:8px;background:var(--bg-dark);position:relative}.team-score-box.winner{background:linear-gradient(135deg,#10b98126,#0596691a);border:2px solid rgba(16,185,129,.4)}.team-name-large{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--text)}.score-large{font-size:3rem;font-weight:700;color:var(--text-muted);font-family:JetBrains Mono,monospace}.score-large.leading{color:var(--accent-green)}.team-score-box .score-block{display:flex;flex-direction:column;align-items:center;gap:.15rem}.team-score-box .score-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.team-score-box .score-projected{font-size:.85rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.winner-crown{position:absolute;top:-1rem;right:-.5rem;font-size:1.5rem}.vs-divider{display:flex;align-items:center;justify-content:center}.vs-divider span{font-size:1.5rem;font-weight:700;color:var(--text-muted);opacity:.5}.lineup-comparison{background:var(--bg-card);border-radius:var(--radius);overflow:hidden}.comparison-header{display:grid;grid-template-columns:1fr 100px 1fr;gap:0;background:var(--bg-dark);padding:.75rem 1rem;font-weight:600;font-size:.9rem;border-bottom:2px solid var(--border)}.comparison-header .team-col{text-align:center}.comparison-header .slot-col{text-align:center;color:var(--text-muted)}.comparison-row{display:grid;grid-template-columns:1fr 100px 1fr;gap:0;border-bottom:1px solid var(--border)}.comparison-row:last-child{border-bottom:none}.comparison-row:hover{background:#ffffff05}.slot-name{display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8rem;color:var(--text-muted);background:var(--bg-dark)}.lineup-slot-cell{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem}.lineup-slot-cell.reverse{flex-direction:row-reverse}.lineup-slot-cell.winning{background:linear-gradient(90deg,rgba(16,185,129,.1),transparent)}.lineup-slot-cell.reverse.winning{background:linear-gradient(270deg,rgba(16,185,129,.1),transparent)}.lineup-slot-cell.empty{opacity:.6;background:var(--bg-dark)}.lineup-slot-cell .slot-points{min-width:45px;font-size:1.1rem;font-weight:700;font-family:JetBrains Mono,monospace;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.1rem}.lineup-slot-cell .slot-points .points-actual{color:inherit;font-weight:600}.lineup-slot-cell .slot-points .points-projected{font-size:.7rem;font-weight:400;font-style:italic;color:var(--text-muted);opacity:.8}.lineup-slot-cell .slot-points .points-projected-only{color:var(--text-secondary);font-style:italic;opacity:.9}.lineup-slot-cell.winning .slot-points,.lineup-slot-cell.winning .slot-points .points-actual{color:var(--accent-green)}.lineup-slot-cell .player-info{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.lineup-slot-cell.reverse .player-info{flex-direction:row-reverse;text-align:right}.lineup-slot-cell .player-position{padding:.15rem .4rem;border-radius:3px;font-size:.7rem;font-weight:700;color:#fff;flex-shrink:0}.lineup-slot-cell .player-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lineup-slot-cell .nfl-team{font-size:.75rem;color:var(--text-muted);flex-shrink:0}.lineup-slot-cell .empty-slot{color:var(--text-muted);font-style:italic}.lineup-slot-cell .empty-position-badge{padding:.15rem .4rem;border-radius:3px;font-size:.65rem;font-weight:600;background:var(--bg-dark);color:var(--text-muted);border:1px dashed var(--border-color);flex-shrink:0}.lineup-slot-cell.editable{cursor:pointer;transition:background .15s}.lineup-slot-cell.editable:hover{background:#6366f11a}.lineup-slot-cell.selected{background:#6366f133!important;border:2px solid var(--primary)}.lineup-slot-cell .edit-indicator{font-size:.75rem;opacity:.5;margin-left:auto}.comparison-row.selected{background:#6366f10d}.my-team-badge{font-size:.65rem;background:var(--primary);color:#fff;padding:.2rem .4rem;border-radius:3px;margin-left:.5rem;vertical-align:middle}.team-score-box.my-team{border:2px solid var(--primary)}.matchup-detail-header{flex-wrap:wrap}.matchup-detail-header .week-nav{display:flex;align-items:center;gap:.75rem}.matchup-badges{display:flex;gap:.75rem;align-items:center}.edit-badge{font-size:.8rem;color:var(--text-muted);background:#6366f126;padding:.3rem .6rem;border-radius:4px}.locked-badge{font-size:.8rem;color:var(--warning);background:#f59e0b26;padding:.3rem .6rem;border-radius:4px}.historical-badge{font-size:.8rem;color:var(--text-muted);background:#94a3b826;padding:.3rem .6rem;border-radius:4px}.player-selection-panel{position:fixed;bottom:0;left:0;right:0;background:var(--bg-card);border-top:2px solid var(--border);padding:1rem;z-index:100;max-height:50vh;overflow-y:auto;box-shadow:0 -4px 20px #0000004d;animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.player-selection-panel .panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.player-selection-panel .panel-header h3{margin:0;font-size:1rem}.player-selection-panel .close-btn{width:32px;height:32px;border:none;background:var(--surface-hover);border-radius:50%;cursor:pointer;font-size:1.2rem;color:var(--text-muted)}.player-selection-panel .close-btn:hover{background:var(--error);color:#fff}.player-selection-panel.updating .player-options{opacity:.5;pointer-events:none}.updating-overlay{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:var(--accent-blue);color:#fff;border-radius:var(--radius);margin-bottom:1rem;font-weight:500}.updating-spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.player-options{display:flex;flex-direction:column;gap:.5rem}.player-option{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:8px;cursor:pointer;text-align:left;width:100%;transition:all .15s}.player-option:hover:not(:disabled){background:var(--surface-hover);border-color:var(--primary)}.player-option:disabled{opacity:.5;cursor:not-allowed}.player-option.empty-option{background:#ef44441a;border-color:var(--error);color:var(--error);justify-content:center;font-weight:500}.player-option .position-badge{padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:700;color:#fff}.player-option .player-name{flex:1;font-weight:500}.player-option .nfl-team{font-size:.8rem;color:var(--text-muted)}.no-eligible{padding:1rem;text-align:center;color:var(--text-muted);font-style:italic}.bench-comparison{margin-top:1.5rem;background:var(--bg-card);border-radius:var(--radius);padding:1rem}.bench-comparison h3{margin:0 0 1rem;font-size:1rem;color:var(--text-muted);border-bottom:1px solid var(--border);padding-bottom:.5rem}.bench-sides{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.bench-team .bench-header{font-weight:600;font-size:.85rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);text-align:center}.bench-players{display:flex;flex-direction:column;gap:.5rem}.bench-player{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--bg-dark);border-radius:6px;font-size:.85rem}.bench-player .player-position{padding:.15rem .35rem;border-radius:3px;font-size:.65rem;font-weight:700;color:#fff;flex-shrink:0}.bench-player .player-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bench-player .nfl-team{font-size:.7rem;color:var(--text-muted)}.bench-player .bench-points{font-size:.75rem;color:var(--text-muted);font-family:JetBrains Mono,monospace;display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.bench-player .bench-points .points-actual{color:var(--accent-cyan);font-weight:600}.bench-player .bench-points .points-projected{font-size:.65rem;font-style:italic;color:var(--text-muted);opacity:.8}.bench-player .bench-points .points-projected-only{color:var(--text-secondary);font-style:italic;opacity:.9}.empty-bench{padding:1rem;text-align:center;color:var(--text-muted);font-style:italic;font-size:.85rem}@media (max-width: 768px){.matchup-scoreboard{grid-template-columns:1fr;gap:1rem;padding:1rem}.vs-divider{padding:.5rem 0}.score-large{font-size:2.5rem}.comparison-header{grid-template-columns:1fr 60px 1fr;font-size:.8rem}.comparison-row{grid-template-columns:1fr 60px 1fr}.lineup-slot-cell{padding:.5rem;gap:.5rem}.lineup-slot-cell .slot-points{min-width:35px;font-size:.9rem}.lineup-slot-cell .player-name{font-size:.85rem}.lineup-slot-cell .nfl-team{display:none}}.reset-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,var(--bg-dark) 0%,#1a1f2e 100%)}.reset-password-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;max-width:400px;width:100%;text-align:center}.reset-password-card h1{margin-bottom:.5rem;font-size:1.5rem}.reset-password-card h2{margin-bottom:1.5rem;font-size:1.25rem;color:var(--text-secondary)}.reset-password-card form{display:flex;flex-direction:column;gap:1rem}.reset-password-card .form-group{text-align:left}.reset-password-card .form-group label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-size:.875rem}.reset-password-card input{width:100%;padding:.75rem 1rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:1rem}.reset-password-card input:focus{outline:none;border-color:var(--accent-cyan)}.reset-password-card .error-message{background:#ef44441a;border:1px solid var(--danger);color:var(--danger);padding:.75rem;border-radius:var(--radius);font-size:.875rem;text-align:left}.reset-password-card .success-message{text-align:center}.reset-password-card .success-message h2{color:var(--success);margin-bottom:1rem}.reset-password-card .success-message p{color:var(--text-secondary);margin-bottom:1.5rem}.reset-password-card .invalid-token{color:var(--text-secondary)}.reset-password-card .invalid-token p{margin-bottom:1rem}.forgot-password{margin-top:.5rem;font-size:.875rem}.forgot-success{text-align:center}.forgot-success p{color:var(--text-secondary);margin-bottom:1rem;line-height:1.5}.account-settings-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,var(--bg-dark) 0%,#1a1f2e 100%)}.account-settings-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;max-width:500px;width:100%}.account-settings-card h1{margin-bottom:1.5rem;font-size:1.5rem;text-align:center}.user-info-section{background:var(--bg-dark);border-radius:var(--radius);padding:1rem;margin-bottom:2rem}.user-info-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.user-info-item:not(:last-child){border-bottom:1px solid var(--border)}.user-info-label{color:var(--text-secondary);font-size:.875rem}.user-info-value{font-weight:500}.settings-section h2{margin-bottom:1rem;font-size:1.125rem;color:var(--text-secondary)}.account-settings-card form{display:flex;flex-direction:column;gap:1rem}.account-settings-card .form-group{text-align:left}.account-settings-card .form-group label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-size:.875rem}.account-settings-card input{width:100%;padding:.75rem 1rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:1rem}.account-settings-card input:focus{outline:none;border-color:var(--accent-cyan)}.account-settings-card .form-hint{display:block;margin-top:.25rem;font-size:.75rem;color:var(--text-muted)}.account-settings-card .error-message{background:#ef44441a;border:1px solid var(--danger);color:var(--danger);padding:.75rem;border-radius:var(--radius);font-size:.875rem}.account-settings-card .success-message{background:#22c55e1a;border:1px solid var(--success);color:var(--success);padding:.75rem;border-radius:var(--radius);font-size:.875rem;text-align:center}.account-settings-card .form-actions{display:flex;gap:1rem;justify-content:space-between;margin-top:.5rem}.account-settings-card .form-actions button{flex:1}.cohort-week-management{max-width:1200px;margin:0 auto;padding:2rem}.cohort-week-management h1{margin-bottom:.5rem}.cohort-week-management .subtitle{color:var(--text-secondary);margin-bottom:2rem}.cohort-selector{display:flex;gap:1rem;align-items:center;margin-bottom:2rem;padding:1rem;background:var(--bg-card);border-radius:var(--radius)}.cohort-selector label{font-weight:500}.cohort-selector select{flex:1;padding:.5rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:1rem}.cohort-status{display:flex;flex-direction:column;gap:1.5rem}.status-card{background:var(--bg-card);border-radius:var(--radius);padding:1.5rem;border:1px solid var(--border)}.status-card h2{margin-bottom:1rem;color:var(--accent-cyan)}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.status-item{display:flex;flex-direction:column;gap:.25rem}.status-item label{font-size:.875rem;color:var(--text-secondary);font-weight:500}.status-item span{font-size:1.125rem;font-weight:600}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.875rem;font-weight:600}.status-badge.trading{background:var(--success);color:#fff}.status-badge.ipo_open,.status-badge.forming{background:var(--warning);color:#fff}.phase-badge{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.875rem;font-weight:600}.phase-badge.phase-pre-season{background:#eab30833;color:#eab308}.phase-badge.phase-regular-season{background:#10b98133;color:var(--success)}.phase-badge.phase-playoffs{background:#a855f733;color:#a855f7}.phase-badge.phase-off-season{background:#3b82f633;color:#3b82f6}.week-number{color:var(--accent-cyan);font-size:1.5rem}.week-number.highlight{color:var(--accent-blue);font-weight:700}.status-item .yes{color:var(--success)}.status-item .no{color:var(--text-muted)}.playoff-week{color:var(--accent-purple);font-weight:600}.regular-week{color:var(--text-secondary)}.warning-box{background:#f59e0b1a;border:1px solid var(--warning);border-radius:var(--radius);padding:1rem;color:var(--warning)}.error-box{background:#ef44441a;border:1px solid var(--danger);border-radius:var(--radius);padding:1rem;color:var(--danger)}.week-actions{background:var(--bg-card);border-radius:var(--radius);padding:1.5rem;border:1px solid var(--border)}.week-actions h3{margin-bottom:1rem;color:var(--accent-cyan)}.action-buttons-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}.action-buttons-row .action-section{margin-bottom:0;padding-bottom:0;border-bottom:none;background:var(--bg-dark);padding:1rem;border-radius:var(--radius)}.action-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}.action-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.action-section h4{margin-bottom:.5rem;color:var(--text-primary)}.action-section p{color:var(--text-secondary);margin-bottom:1rem;line-height:1.6}.action-section .btn-primary{padding:.75rem 1.5rem;background:var(--gradient);border:none;border-radius:var(--radius);color:#fff;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.action-section .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow)}.action-section .btn-primary:disabled{opacity:.5;cursor:not-allowed}.simulation-progress,.simulation-complete,.simulation-error{border-radius:var(--radius);padding:1rem;margin-bottom:1rem}.simulation-progress{background:#3b82f61a;border:1px solid var(--accent-cyan);color:var(--accent-cyan)}.simulation-complete{background:#22c55e1a;border:1px solid var(--success, #22c55e);color:var(--success, #22c55e)}.simulation-complete .link{background:none;border:none;color:inherit;text-decoration:underline;cursor:pointer;padding:0;font-size:inherit}.simulation-error{background:#ef44441a;border:1px solid var(--danger);color:var(--danger)}.history-section{background:var(--bg-card);border-radius:var(--radius);padding:1.5rem;margin-bottom:2rem;border:1px solid var(--border)}.history-section h2{margin-top:0;margin-bottom:1rem;color:var(--text-primary)}.end-season-section{background:#f59e0b1a;border-color:var(--warning)}.end-season-controls{display:flex;gap:1rem;align-items:center;margin-top:1rem;flex-wrap:wrap}.champion-select{padding:.5rem 1rem;min-width:200px;background:var(--bg-dark);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius);font-size:1rem}.season-list{display:flex;flex-direction:column;gap:.5rem}.season-card{cursor:pointer;padding:1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-dark);transition:all .2s}.season-card:hover{background:var(--bg-hover);border-color:var(--accent-cyan)}.season-card.selected{background:var(--accent-cyan);color:var(--bg-dark);border-color:var(--accent-cyan)}.season-card-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.champion-info{margin-top:.5rem;color:var(--text-secondary);font-size:.9rem}.season-card.selected .champion-info{color:#000000b3}.season-date{color:var(--text-secondary);font-size:.9rem}.season-card.selected .season-date{color:#000000b3}.history-section .standings-table{overflow-x:auto;margin-top:1rem}.history-section .standings-table table{width:100%;border-collapse:collapse;background:var(--bg-dark)}.history-section .standings-table th{background:var(--bg-hover);color:var(--text-primary);font-weight:600;padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.history-section .standings-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border);color:var(--text-primary)}.history-section .standings-table tbody tr:hover{background:var(--bg-hover)}.history-section .standings-table .champion-row{background:#ffd70026;border-left:3px solid var(--warning)}.history-section .standings-table .points-cell{text-align:right;font-family:var(--font-mono, monospace);font-weight:600;color:var(--text-primary);font-size:.95rem}.history-section .standings-table .diff-cell{font-weight:700}.history-section .standings-table .diff-cell.positive{color:var(--success)}.history-section .standings-table .diff-cell.negative{color:var(--danger)}.top-scores-list{display:flex;flex-direction:column;gap:.5rem}.top-score-item{padding:.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;transition:all .2s}.top-score-item:hover{background:var(--bg-hover);border-color:var(--accent-cyan)}.top-score-gold{background:#ffd70033;border-color:var(--warning);border-width:2px}.top-score-main{color:var(--text-primary);font-size:1rem;font-weight:500}.top-score-points{color:var(--accent-cyan);font-weight:700;font-family:monospace;font-size:1.1rem}.top-score-gold .top-score-points{color:var(--warning)}.top-score-meta{color:var(--text-secondary);font-size:.9rem}.week-selector-history{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.week-selector-history .week-btn{padding:.5rem 1rem;background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;transition:all .2s;font-size:.85rem}.week-selector-history .week-btn:hover{border-color:var(--accent-cyan);color:var(--text-primary)}.week-selector-history .week-btn.active{background:var(--accent-cyan);color:var(--bg-dark);border-color:var(--accent-cyan)}.matchups-history-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.matchup-history-card{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;position:relative}.matchup-history-card.playoff{border-color:var(--warning);background:linear-gradient(135deg,rgba(251,191,36,.1),var(--bg-dark))}.matchup-history-teams{display:flex;flex-direction:column;gap:.5rem}.matchup-history-card .matchup-team{display:flex;justify-content:space-between;align-items:center;padding:.5rem;border-radius:4px}.matchup-history-card .matchup-team.winner{background:#10b98126}.matchup-history-card .matchup-team.winner .team-score{color:var(--success);font-weight:700}.matchup-history-card .matchup-team.loser .team-score{color:var(--text-muted)}.matchup-history-card .team-name{font-weight:500}.matchup-history-card .team-score{font-family:var(--font-mono);font-size:1.1rem}.matchup-history-card .matchup-vs{text-align:center;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.matchup-history-card .playoff-round-badge{position:absolute;top:.5rem;right:.5rem;background:var(--warning);color:var(--bg-dark);padding:.15rem .5rem;border-radius:4px;font-size:.65rem;font-weight:700;text-transform:uppercase}.no-matchup-message{text-align:center;padding:4rem 2rem;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);margin-top:2rem}.no-matchup-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.no-matchup-message h3{margin-bottom:.5rem;color:var(--text-primary)}.no-matchup-message p{color:var(--text-secondary);line-height:1.6}@media (max-width: 768px){.history-section{padding:1rem}.end-season-controls{flex-direction:column;align-items:stretch}.champion-select{width:100%;min-width:unset}.season-card-content{flex-direction:column;align-items:flex-start}.history-section .standings-table{font-size:.875rem}.history-section .standings-table th,.history-section .standings-table td{padding:.5rem}.top-score-item{flex-direction:column;align-items:flex-start}.history-section .standings-table th:nth-child(5),.history-section .standings-table td:nth-child(5),.history-section .standings-table th:nth-child(6),.history-section .standings-table td:nth-child(6){display:none}}@media (max-width: 768px){.matchups-grid-v2{grid-template-columns:1fr}.matchup-card-v2{border-radius:8px}.matchup-card-v2 .team-row{padding:.875rem}.matchup-card-v2 .team-score{font-size:1.125rem}.week-pills{gap:.25rem;overflow-x:auto;padding-bottom:.5rem;-webkit-overflow-scrolling:touch}.week-pill{flex-shrink:0;width:36px;height:36px}.week-navigator{margin-bottom:1rem}}@media (max-width: 768px){.bracket-container{grid-template-columns:1fr;gap:1.5rem}.bracket-round{padding:1rem}.matchup-card{margin-bottom:.75rem}.matchup-team{padding:.75rem;font-size:.875rem}.team-score{font-size:1rem}}.notification-bell-container{position:relative}.notification-bell{position:relative;background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.5rem;border-radius:var(--radius);transition:background .2s}.notification-bell:hover{background:var(--bg-dark)}.notification-badge{position:absolute;top:2px;right:2px;background:var(--accent-red);color:#fff;font-size:.65rem;font-weight:600;padding:2px 5px;border-radius:10px;min-width:16px;text-align:center}.notification-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999}.notification-dropdown{position:absolute;top:calc(100% + .5rem);right:0;width:380px;max-width:90vw;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 10px 40px #0000004d;z-index:1000;max-height:500px;display:flex;flex-direction:column}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border)}.notification-header h3{margin:0;font-size:1rem;font-weight:600}.notification-list{overflow-y:auto;max-height:400px}.notification-empty{padding:3rem 1.5rem;text-align:center;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:.5rem}.notification-empty p{margin:0;font-size:.9rem}.notification-item{display:flex;padding:1rem;border-bottom:1px solid var(--border);gap:.75rem;transition:background .2s}.notification-item:hover{background:var(--bg-dark)}.notification-item:last-child{border-bottom:none}.notification-content{flex:1;min-width:0}.notification-title{font-weight:600;font-size:.9rem;margin-bottom:.25rem}.notification-message{font-size:.85rem;color:var(--text-muted);line-height:1.4;margin-bottom:.5rem}.notification-amount{display:inline-block;background:linear-gradient(135deg,var(--accent-cyan),var(--accent-blue));color:#fff;padding:.25rem .5rem;border-radius:var(--radius);font-size:.85rem;font-weight:600;margin-bottom:.5rem}.notification-time{font-size:.75rem;color:var(--text-muted);opacity:.7}.notification-dismiss{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;opacity:.5;transition:opacity .2s;font-size:1.25rem;line-height:1;flex-shrink:0}.notification-dismiss:hover{opacity:1;color:var(--accent-red)}@media (max-width: 768px){.notification-dropdown{width:calc(100vw - 2rem);right:-.5rem}}.player-stats{display:block;font-size:.75rem;color:var(--text-muted);margin-top:.25rem;font-weight:400;line-height:1.3}.clickable-player .player-info{cursor:pointer;position:relative}.clickable-player .player-info:hover .player-name{color:var(--accent-cyan);text-decoration:underline}.clickable-player .player-info:hover .player-stats{color:var(--text-light)}.playoff-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:var(--radius);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.playoff-badge.championship{background:linear-gradient(135deg,gold,#ffed4e);color:#1a1a1a}.playoff-badge.semifinal{background:linear-gradient(135deg,silver,#e8e8e8);color:#1a1a1a}.playoff-badge.third-place{background:linear-gradient(135deg,#cd7f32,#e6a157);color:#fff}.playoff-badge.fifth-place,.playoff-badge.consolation{background:var(--bg-dark);color:var(--text-muted);border:1px solid var(--border)}.lineup-slot-cell{transition:all .2s ease}.lineup-slot-cell:hover:not(.empty){transform:translateY(-1px);box-shadow:0 4px 12px #0003}.lineup-slot-cell.winning{border-left:3px solid var(--accent-green)}.lineup-slot-cell.reverse.winning{border-right:3px solid var(--accent-green);border-left:none}.points-actual{font-size:1.1rem;font-weight:700;color:var(--text-light)}.points-projected{font-size:.75rem;opacity:.6}.fixed.inset-0.bg-black.bg-opacity-50{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.fixed.inset-0.bg-black.bg-opacity-50>div{animation:fadeIn .2s ease-out}
