.app-header{background:var(--dp-navy);position:sticky;top:0;z-index:100}.app-header-inner{max-width:1200px;margin:0 auto;padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.app-header-stripe{height:3px;background:linear-gradient(90deg,var(--dp-gold),var(--dp-red),var(--dp-green),var(--dp-gold))}.app-logo{display:flex;flex-direction:column;gap:.15rem;text-decoration:none}.app-logo-row{display:flex;align-items:center;gap:.5rem;color:var(--dp-gold)}.app-logo-title{font-family:"Press Start 2P",monospace;font-size:.85rem;color:var(--dp-gold);letter-spacing:2px;text-shadow:0 0 12px rgba(201,162,39,.3)}.app-logo-subtitle{font-family:"Press Start 2P",monospace;font-size:.35rem;color:var(--dp-sand);letter-spacing:3px;opacity:.8}.league-tabs{display:flex;gap:.25rem}.league-tab{font-family:"Press Start 2P",monospace;font-size:.5rem;padding:.5rem .75rem;color:#ffffff80;text-decoration:none;border-radius:var(--radius-sm);transition:all .2s;border:1px solid transparent}.league-tab:hover{color:#fffc;background:#ffffff0d}.league-tab--active{color:var(--dp-gold);background:#c9a2271a;border-color:#c9a2274d}.app-main{flex:1}.app-footer{text-align:center;padding:2rem 1rem;border-top:1px solid var(--border);background:var(--bg-secondary)}.app-footer-brand{font-family:"Press Start 2P",monospace;font-size:.55rem;color:var(--dp-gold);margin-bottom:.75rem;letter-spacing:1px}.app-footer-sub{font-size:.7rem;color:var(--text-secondary)}.app-footer-link{color:var(--text-secondary);text-decoration:none;transition:color .2s}.app-footer-link:hover{color:var(--dp-gold)}.theme-toggle{margin-top:.75rem;background:none;border:1px solid var(--border);border-radius:50%;width:32px;height:32px;font-size:.85rem;color:var(--text-secondary);cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1}.theme-toggle:hover{color:var(--dp-gold);border-color:var(--dp-gold)}@media(max-width:768px){.app-header-inner{padding:.5rem 1rem}.app-logo-title{font-size:.7rem}.app-logo-row .dp-logo svg{width:22px;height:22px}.league-tabs{gap:.15rem}.league-tab{font-size:.4rem;padding:.4rem .5rem}}@media(max-width:480px){.app-header-inner{flex-direction:column;gap:.5rem}}.league-wrapper{flex:1;display:flex;flex-direction:column}.league-header{background:var(--bg-secondary);border-bottom:1px solid var(--border);position:relative;z-index:100}.league-header-inner{max-width:1200px;margin:0 auto;padding:.5rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.league-title-area{flex-shrink:0}.league-name-link{text-decoration:none}.league-name{font-family:"Press Start 2P",monospace;font-size:.55rem;color:var(--accent-primary);letter-spacing:1px;text-transform:uppercase}.league-nav{display:flex;gap:.15rem;align-items:center}.league-nav-link{font-family:"Press Start 2P",monospace;font-size:.45rem;padding:.4rem .6rem;color:#ffffff80;border-radius:4px;transition:all .2s;white-space:nowrap;text-decoration:none}.league-nav-link:hover{color:#fffc;background:#ffffff0d}.league-nav-link--active{color:var(--accent-primary);background:#ffffff0d}.league-season-picker{font-family:"Press Start 2P",monospace;font-size:.4rem;padding:.3rem .4rem;background:#ffffff14;color:#fffc;border:1px solid rgba(255,255,255,.15);border-radius:4px;cursor:pointer;outline:none;margin-left:.25rem}.league-season-picker:hover{background:#ffffff1f;border-color:#ffffff40}.league-season-picker:focus{border-color:var(--accent-primary)}.league-season-picker option{background:var(--bg-secondary);color:#fff}.league-hamburger{display:none;flex-direction:column;gap:4px;padding:6px;background:none;border:none;cursor:pointer}.league-hamburger span{display:block;width:20px;height:2px;background:#ffffffb3;transition:all .3s;border-radius:1px}.league-hamburger--open span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}.league-hamburger--open span:nth-child(2){opacity:0}.league-hamburger--open span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}@media(max-width:768px){.league-hamburger{display:flex}.league-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg-secondary);flex-direction:column;padding:.75rem;border-bottom:1px solid var(--border);z-index:50}.league-nav--open{display:flex}.league-nav-link{padding:.6rem .75rem;font-size:.45rem}.league-season-picker{margin-left:0;margin-top:.25rem;align-self:flex-start}.league-header-inner{position:relative;padding:.4rem 1rem}}.today-board{max-width:1000px;margin:0 auto;padding:0 1.5rem 2rem}.today-board-frame{background:var(--bg-card);border:2px solid rgba(201,162,39,.25);border-radius:var(--radius);padding:1.25rem}.today-board-frame--live{border-color:#ff174459;background:radial-gradient(ellipse at top,rgba(255,23,68,.06) 0%,var(--bg-card) 65%);animation:todayLivePulse 2.5s ease-in-out infinite}.today-board-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.today-board-heading{display:flex;flex-direction:column;gap:.45rem}.today-board-title{font-family:"Press Start 2P",monospace;font-size:.6rem;color:var(--dp-gold);letter-spacing:.12em}.today-board-date{font-family:"Press Start 2P",monospace;font-size:.4rem;color:var(--text-secondary);letter-spacing:.1em}.today-board-live-badge{font-family:"Press Start 2P",monospace;font-size:.4rem;color:#ff1744;background:#ff174426;padding:.3rem .5rem;border-radius:4px;white-space:nowrap;animation:todayLiveBlink 1.5s ease-in-out infinite}.today-board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:.6rem}.today-game-card{display:block;background:#00000040;border:1px solid transparent;border-radius:8px;padding:.6rem .7rem;transition:background .15s,border-color .15s,transform .15s}.today-game-card:hover{background:#ffffff0d;border-color:#c9a22766;transform:translateY(-2px)}.today-game-card--live{border-color:#ff174473;animation:todayCardGlow 2s ease-in-out infinite}.today-game-card--fav{border-left:3px solid var(--dp-gold)}.today-game-status-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.45rem}.today-game-status{font-family:"Press Start 2P",monospace;font-size:.4rem;color:var(--text-secondary);letter-spacing:.08em}.today-game-status--live{color:#ff1744;animation:todayLiveBlink 1.5s ease-in-out infinite}.today-game-outs{display:flex;gap:3px;align-items:center}.today-game-out-dot{width:6px;height:6px;border-radius:50%;background:#ffffff2e;display:inline-block}.today-game-out-dot--active{background:var(--dp-red)}.today-game-team{display:flex;align-items:center;gap:.45rem;margin-bottom:.35rem}.today-game-team:last-child{margin-bottom:0}.today-game-name{flex:1;font-size:.8rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-game-name--winner{color:var(--dp-gold);font-weight:600}.today-game-fav-star{color:var(--dp-gold);font-size:.65em;vertical-align:.1em}.today-game-score{font-family:"Press Start 2P",monospace;font-size:.55rem;color:var(--text-primary);min-width:1.25rem;text-align:right}.today-game-score--winner{color:var(--dp-gold)}.today-board-loading{display:flex;justify-content:center;padding:2rem 0}.today-board-spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--dp-gold);border-radius:50%;animation:spin .8s linear infinite}.today-board-empty{text-align:center;padding:1.75rem 1rem}.today-board-empty-title{font-family:"Press Start 2P",monospace;font-size:.55rem;color:var(--dp-sand);letter-spacing:.1em;margin-bottom:.75rem}.today-board-empty-sub{font-size:.8rem;color:var(--text-secondary)}.today-board-footer{display:flex;justify-content:center;gap:1.5rem;margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--border)}.today-board-footer-link{font-family:"Press Start 2P",monospace;font-size:.4rem;color:var(--dp-gold);letter-spacing:.08em;opacity:.75;transition:opacity .15s}.today-board-footer-link:hover{opacity:1}[data-theme=light] .today-game-card{background:#0000000a}[data-theme=light] .today-game-card:hover{background:#00000014}[data-theme=light] .today-game-out-dot{background:#00000026}@keyframes todayLivePulse{0%,to{border-color:#ff17444d}50%{border-color:#ff174499}}@keyframes todayCardGlow{0%,to{box-shadow:0 0 #ff174400}50%{box-shadow:0 0 12px #ff174440}}@keyframes todayLiveBlink{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.today-board-frame--live,.today-game-card--live,.today-game-status--live,.today-board-live-badge{animation:none}}@media(max-width:768px){.today-board{padding:0 1rem 1.75rem}.today-board-frame{padding:1rem}.today-board-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.5rem}.today-game-name{font-size:.72rem}}@media(max-width:480px){.today-board{padding:0 .75rem 1.5rem}.today-board-grid{grid-template-columns:repeat(2,1fr)}.today-game-card{padding:.5rem .55rem}}.next-game-widget{max-width:1000px;margin:0 auto;padding:0 1.5rem 2rem}.next-game-frame{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem}.next-game-frame--hero{border:2px solid rgba(201,162,39,.35);background:radial-gradient(ellipse at top,rgba(201,162,39,.06) 0%,var(--bg-card) 65%);padding:1.1rem 1.5rem 1.5rem}.fav-hero-topline{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:1.1rem}.fav-hero-label{font-family:"Press Start 2P",monospace;font-size:.45rem;color:var(--text-secondary);letter-spacing:.12em}.fav-hero-label-team{color:var(--dp-gold)}.fav-hero-actions{display:flex;align-items:center;gap:1rem}.fav-hero-action{font-family:"Press Start 2P",monospace;font-size:.4rem;color:var(--dp-gold);letter-spacing:.08em;opacity:.75;transition:opacity .15s}.fav-hero-action:hover{opacity:1}.fav-hero-action--btn{background:none;border:1px solid var(--border);border-radius:4px;padding:.35rem .5rem;color:var(--text-secondary);cursor:pointer}.fav-hero-action--btn:hover{color:var(--text-primary);border-color:var(--dp-gold)}.fav-hero-wl--win{color:var(--win)}.fav-hero-wl--loss{color:var(--loss)}.fav-hero-game{display:block;text-align:center}.fav-hero-matchup{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;justify-items:center;gap:1rem;margin-bottom:1rem}.fav-hero-side{display:flex;flex-direction:column;align-items:center;gap:.5rem;min-width:0;text-align:center;word-break:break-word}.fav-hero-circle{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fav-hero-circle span{font-family:"Press Start 2P",monospace;font-size:.55rem;line-height:1}.fav-hero-team-name{font-size:.8rem;color:var(--text-primary)}.fav-hero-team-name--winner{color:var(--dp-gold);font-weight:700}.fav-hero-record{font-size:.65rem;color:var(--text-secondary)}.fav-hero-scores{display:flex;align-items:center;gap:.75rem}.fav-hero-score{font-family:"Press Start 2P",monospace;font-size:1.75rem;color:var(--text-primary)}.fav-hero-score--winner{color:var(--dp-gold)}.fav-hero-score-divider{font-family:"Press Start 2P",monospace;font-size:.6rem;color:var(--text-secondary)}.fav-hero-vs{font-family:"Press Start 2P",monospace;font-size:1rem;color:var(--text-secondary);letter-spacing:.1em}.fav-hero-status{font-family:"Press Start 2P",monospace;font-size:.5rem;color:var(--text-secondary);margin-bottom:.5rem;letter-spacing:.1em}.fav-hero-status--live{color:#ff1744;text-shadow:0 0 12px rgba(255,23,68,.5);animation:favLiveBlink 1.5s ease-in-out infinite}.fav-hero-date{font-size:.75rem;color:var(--text-secondary);margin-bottom:.25rem}.fav-hero-venue{font-size:.68rem;color:var(--text-secondary)}.fav-hero-none{text-align:center;font-size:.8rem;color:var(--text-secondary);padding:1.5rem 0}.fav-hero-loading{display:flex;justify-content:center;padding:2.5rem 0}.fav-hero-spinner{width:28px;height:28px;border:3px solid var(--border);border-radius:50%;animation:spin .8s linear infinite}.team-picker{text-align:center}.team-picker-title{font-family:"Press Start 2P",monospace;font-size:.5rem;color:var(--dp-gold);letter-spacing:.1em;margin-bottom:.6rem}.team-picker-sub{font-size:.75rem;color:var(--text-secondary);margin-bottom:.9rem}.team-picker-chips{display:flex;flex-wrap:wrap;gap:.375rem;justify-content:center}.team-picker-chip{padding:.3rem .45rem;color:#fff;border:none;border-radius:3px;font-size:.5rem;font-family:"Press Start 2P",monospace;cursor:pointer;opacity:.85;transition:transform .15s,opacity .15s}.team-picker-chip:hover{opacity:1;transform:scale(1.1)}@keyframes favLiveBlink{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.fav-hero-status--live{animation:none}}@media(max-width:768px){.next-game-widget{padding:0 1rem 1.75rem}.fav-hero-circle{width:52px;height:52px}.fav-hero-circle span{font-size:.45rem}.fav-hero-score{font-size:1.25rem}.fav-hero-team-name{font-size:.72rem}}@media(max-width:480px){.next-game-widget{padding:0 .75rem 1.5rem}.next-game-frame--hero{padding:1rem .9rem 1.25rem}.fav-hero-topline{justify-content:center}.fav-hero-matchup{gap:.5rem}.fav-hero-circle{width:44px;height:44px}.fav-hero-circle span{font-size:.4rem}.fav-hero-score{font-size:1.05rem}.fav-hero-team-name{font-size:.65rem}.fav-hero-record{font-size:.6rem}}.card-hidden{opacity:0;transform:translateY(24px)}.card-entered{opacity:1;transform:translateY(0);animation:cardEntrance .4s ease-out forwards}@keyframes cardEntrance{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.card-frame{position:relative;border-radius:8px;padding:6px;transition:transform .3s ease,box-shadow .3s ease,opacity .4s ease;cursor:pointer;aspect-ratio:5 / 7;min-width:0;overflow:hidden}.card-frame:hover{transform:translateY(-8px) rotateX(5deg);box-shadow:0 20px 40px #0006,0 0 20px #ffffff1a}.card-inner{position:relative;background:var(--bg-card-inner, #1a1a1a);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;height:100%}.card-team-header{padding:4px 8px;text-align:center;position:relative;z-index:2}.team-name{font-weight:800;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase}.position-pennant{position:absolute;top:24px;left:-2px;z-index:10;padding:2px 8px 2px 4px;font-size:.5rem;font-weight:700;text-transform:uppercase;clip-path:polygon(0 0,100% 0,85% 100%,0 100%)}.card-image-wrapper{position:relative;flex:1;min-height:0;overflow:hidden}.card-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--card-image-bg, linear-gradient(180deg, #2a2a2a 0%, #1a1a1a 100%))}.pixelated-image{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges}.progressive-thumbnail{filter:blur(2px);opacity:1;animation:fadeInThumbnail .2s ease-out}.progressive-complete{filter:none;opacity:1;animation:fadeInComplete .3s ease-out}@keyframes fadeInThumbnail{0%{opacity:0;filter:blur(4px)}to{opacity:1;filter:blur(2px)}}@keyframes fadeInComplete{0%{opacity:0}to{opacity:1}}.image-loading,.image-error{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.loading-spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--text-primary);border-radius:50%;animation:spin 1s linear infinite}.image-error span{font-size:1.5rem;color:var(--text-muted, #666)}.team-stripe{position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--entity-primary, #002D72) 0%,var(--entity-primary, #002D72) 33%,var(--entity-secondary, #C8102E) 33%,var(--entity-secondary, #C8102E) 66%,var(--entity-accent, #FFD100) 66%,var(--entity-accent, #FFD100) 100%);z-index:5}.scanlines{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(transparent,transparent 2px,rgba(0,0,0,.1) 2px,rgba(0,0,0,.1) 4px)}.card-name-banner{padding:6px 8px;text-align:center;position:relative}.player-full-name{font-weight:700;font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-stats-bar{display:flex;align-items:center;gap:6px;padding:4px 8px;background:#0000004d;min-height:42px}.primary-stat{display:flex;flex-direction:column;align-items:center}.primary-stat .stat-label{font-size:.4rem;opacity:.7;text-transform:uppercase}.primary-stat .stat-value{font-size:.7rem;font-weight:700}.stats-bar-logo{flex-shrink:0}.secondary-stats{display:flex;gap:6px;margin-left:auto}.stat-item{display:flex;flex-direction:column;align-items:center}.stat-item .stat-value{font-size:.55rem;font-weight:600}.stat-item .stat-label{font-size:.4rem;opacity:.6;text-transform:uppercase}.no-stats{font-size:.5rem;color:var(--text-muted, #666);font-style:italic;width:100%;text-align:center;display:flex;align-items:center;justify-content:center}.jersey-badge{position:absolute;top:4px;right:4px;z-index:10;padding:1px 3px;border-radius:2px;font-size:.35rem;font-weight:700;opacity:.7}.il-badge{position:absolute;bottom:4px;right:4px;z-index:15;padding:2px 6px;border-radius:3px;font-size:.35rem;font-weight:900;font-family:"Press Start 2P",monospace;background:#c41e3a;color:#fff;letter-spacing:.5px;box-shadow:0 1px 4px #0006}.team-code-badge{position:absolute;bottom:4px;left:4px;z-index:10;padding:1px 4px;border-radius:2px;font-size:.35rem;font-weight:700;font-family:"Press Start 2P",monospace;background:var(--entity-primary, #333);color:var(--entity-text, #fff);opacity:.6;letter-spacing:.5px}.tier-1-frame{background:linear-gradient(135deg,#5a3d2b,#3d2a1d);box-shadow:0 4px 12px #0000004d,inset 0 1px #ffffff1a}.tier-1-frame .card-team-header{background:#2d1f14}.tier-1-frame .team-name{color:#a67c52}.tier-1-frame .position-pennant{background:#8b4513;color:#fff}.tier-1-frame .card-name-banner{background:#2d1f14}.tier-1-frame .player-full-name{color:#c9a66b}.tier-1-frame .card-stats-bar{background:#1a1209;color:#a67c52}.tier-1-frame .jersey-badge{background:#8b4513;color:#fff}.tier-2-frame{background:linear-gradient(180deg,#d4a84b,#b8922f);box-shadow:0 4px 16px #0000004d,inset 0 2px #ffffff4d}.tier-2-frame .card-inner{border-radius:12px;border:2px solid #8b7355}.tier-2-frame .card-team-header{background:linear-gradient(180deg,#1a4d8c,#0d3a6e)}.tier-2-frame .team-name{color:#fff;text-shadow:1px 1px 0 #000}.tier-2-frame .position-pennant{background:#ef3e42;color:#fff;clip-path:polygon(0 0,100% 0,100% 50%,85% 100%,0 100%);padding:3px 10px 3px 6px;box-shadow:2px 2px 4px #0000004d}.tier-2-frame .card-image-wrapper{margin:0 4px;border-radius:8px;overflow:hidden}.tier-2-frame .card-name-banner{background:linear-gradient(90deg,#1a4d8c,#2a6db8,#1a4d8c);margin:4px;border-radius:4px;clip-path:polygon(5% 0,95% 0,100% 50%,95% 100%,5% 100%,0% 50%)}.tier-2-frame .player-full-name{color:#fff;text-shadow:1px 1px 0 #000}.tier-2-frame .card-stats-bar{background:#1a4d8c;color:#fff}.tier-2-frame .jersey-badge{background:#fff;color:#1a4d8c;border:1px solid #1a4d8c}.tier-3-frame{background:linear-gradient(135deg,#4a5568,#2d3748);box-shadow:0 4px 16px #0000004d,inset 0 1px #fff3}.tier-3-frame:before{content:"";position:absolute;left:0;top:0;bottom:0;width:20px;background:linear-gradient(180deg,var(--entity-primary, #005a9c) 0%,var(--entity-primary, #005a9c) 33%,var(--entity-secondary, #ef3e42) 33%,var(--entity-secondary, #ef3e42) 66%,var(--entity-accent, #fff) 66%,var(--entity-accent, #fff) 100%);border-radius:8px 0 0 8px}.tier-3-frame .card-inner{margin-left:14px}.tier-3-frame .card-team-header{background:#1a1a1a}.tier-3-frame .team-name{color:#708090}.tier-3-frame .position-pennant{background:var(--entity-primary, #005a9c);color:#fff;left:12px}.tier-3-frame .card-name-banner{background:linear-gradient(90deg,var(--entity-primary, #005a9c) 0%,transparent 100%)}.tier-3-frame .player-full-name{color:#fff}.tier-3-frame .card-stats-bar{background:#1a1a1a;color:#708090}.tier-3-frame .jersey-badge{background:var(--entity-secondary, #ef3e42);color:#fff}.tier-4-frame{background:linear-gradient(180deg,#f5f5f5,#e0e0e0);box-shadow:0 6px 20px #00000040,inset 0 1px #ffffffe6}.tier-4-frame .card-inner{border:3px solid var(--entity-primary-dark, var(--entity-primary, #4682b4))}.tier-4-frame .card-team-header{background:#fff;border-bottom:2px solid var(--entity-primary-dark, var(--entity-primary, #4682b4))}.tier-4-frame .team-name{color:var(--entity-primary-dark, var(--entity-primary, #4682b4));font-weight:900}.tier-4-frame .position-pennant{background:var(--entity-primary-dark, var(--entity-primary, #4682b4));color:#fff;border-radius:0 4px 4px 0;clip-path:none;left:0}.tier-4-frame .card-image-wrapper{border-bottom:2px solid var(--entity-primary-dark, var(--entity-primary, #4682b4))}.tier-4-frame .card-name-banner{background:#fff}.tier-4-frame .player-full-name{color:#1a1a1a;font-weight:600}.tier-4-frame .card-stats-bar{background:#f0f0f0;color:#1a1a1a;border-top:1px solid #ddd}.tier-4-frame .jersey-badge{background:var(--entity-primary-dark, var(--entity-primary, #4682b4));color:#fff}.tier-5-frame{background:repeating-linear-gradient(90deg,#2d2d2d 0px 2px,#3d3d3d 2px 4px);box-shadow:0 6px 24px #00000059,inset 0 1px #ffffff1a}.tier-5-frame .card-inner{border:2px solid var(--entity-primary, #32cd32)}.tier-5-frame .card-team-header{background:linear-gradient(180deg,#1a1a1a,#0d0d0d)}.tier-5-frame .team-name{color:var(--entity-primary-light, var(--entity-primary, #32cd32));text-shadow:0 0 10px color-mix(in srgb,var(--entity-primary-light, var(--entity-primary, #32cd32)) 50%,transparent)}.tier-5-frame .position-pennant{background:linear-gradient(135deg,var(--entity-secondary, #ff6b6b) 0%,color-mix(in srgb,var(--entity-secondary, #ee5a5a) 90%,black) 100%);color:#fff;border-radius:0 8px 8px 0;clip-path:none;left:0;font-weight:800;box-shadow:2px 2px 6px #0000004d}.tier-5-frame .card-name-banner{background:linear-gradient(90deg,var(--entity-primary, #005a9c) 0%,var(--entity-secondary, #ef3e42) 50%,var(--entity-accent, #ffd700) 100%);padding:8px}.tier-5-frame .player-full-name{color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.5);font-weight:800}.tier-5-frame .card-stats-bar{background:#0d0d0d;color:var(--entity-primary-light, var(--entity-primary, #32cd32))}.tier-5-frame .jersey-badge{background:linear-gradient(135deg,var(--entity-accent, #ffd700) 0%,color-mix(in srgb,var(--entity-accent, #ffb700) 90%,black) 100%);color:#1a1a1a;font-weight:800}.tier-6-frame{background:linear-gradient(180deg,var(--card-gold) 0%,var(--card-gold-dark) 100%);box-shadow:0 8px 28px #00000059,inset 0 2px #fff6,0 0 20px #c9a84c4d}.tier-6-frame .card-inner{border:3px solid var(--entity-primary, #9370db);margin:2px}.tier-6-frame .card-team-header{background:linear-gradient(180deg,var(--entity-primary, #9370db) 0%,color-mix(in srgb,var(--entity-primary, #7b5fc4) 90%,black) 100%)}.tier-6-frame .team-name{color:#fff;font-size:.7rem;text-shadow:2px 2px 0 rgba(0,0,0,.3)}.tier-6-frame .position-pennant{background:var(--entity-secondary, #ef3e42);color:#fff;top:28px;padding:3px 12px 3px 6px;clip-path:polygon(0 0,100% 0,90% 100%,0 100%);box-shadow:2px 2px 6px #0000004d}.tier-6-frame .card-image-wrapper{border:2px solid var(--card-gold);margin:2px 4px}.tier-6-frame .card-name-banner{background:var(--entity-primary, #9370db);position:relative;overflow:visible;margin:0 4px;border-radius:20px}.tier-6-frame .card-name-banner:before{content:"";position:absolute;left:0;right:0;top:-8px;height:6px;background:linear-gradient(90deg,transparent 0%,var(--card-gold) 20%,var(--card-gold) 80%,transparent 100%);border-radius:50%}.tier-6-frame .player-full-name{color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.3)}.tier-6-frame .card-stats-bar{background:linear-gradient(180deg,color-mix(in srgb,var(--entity-primary, #7b5fc4) 90%,black) 0%,var(--entity-primary, #9370db) 100%);color:#fff}.tier-6-frame .jersey-badge{background:var(--card-gold);color:var(--entity-primary, #9370db);font-weight:800;box-shadow:0 2px 6px #0000004d}.tier-7-frame{background:linear-gradient(135deg,var(--card-gold) 0%,var(--card-gold-light) 25%,var(--card-gold) 50%,var(--card-gold-dim) 75%,var(--card-gold) 100%);padding:8px;box-shadow:0 10px 40px #c9a84c59,0 0 30px #c9a84c40,inset 0 2px #ffffff80;animation:goldShimmer 3s ease-in-out infinite}.tier-7-frame:before{content:"";position:absolute;inset:4px;border:3px solid var(--card-gold-dim);border-radius:6px;pointer-events:none}.tier-7-frame:after{content:"";position:absolute;inset:8px;border:2px dashed rgba(139,125,74,.5);border-radius:4px;pointer-events:none}.tier-7-frame .card-inner{border:3px solid var(--card-gold);box-shadow:inset 0 0 20px #c9a84c33}.tier-7-frame .card-team-header{background:linear-gradient(180deg,var(--entity-primary, #ef3e42) 0%,color-mix(in srgb,var(--entity-primary, #c41e3a) 85%,black) 100%);padding:6px 8px;position:relative}.tier-7-frame .card-team-header:before,.tier-7-frame .card-team-header:after{content:"";position:absolute;top:50%;transform:translateY(-50%);width:8px;height:8px;background:var(--card-gold);border-radius:50%;box-shadow:0 0 6px #c9a84cb3}.tier-7-frame .card-team-header:before{left:6px}.tier-7-frame .card-team-header:after{right:6px}.tier-7-frame .team-name{color:#fff;font-size:.75rem;text-shadow:2px 2px 0 rgba(0,0,0,.5);letter-spacing:.2em}.tier-7-frame .position-pennant{background:linear-gradient(135deg,var(--card-gold) 0%,var(--card-gold-light) 100%);color:var(--entity-primary, #8b0000);font-weight:900;border:2px solid var(--card-gold-dim);clip-path:none;border-radius:0 6px 6px 0;left:0;top:30px;padding:4px 10px 4px 6px;box-shadow:2px 2px 8px #0006}.tier-7-frame .card-image-wrapper{border:3px solid var(--card-gold);margin:4px;border-radius:4px;box-shadow:inset 0 0 10px #c9a84c40,0 0 10px #c9a84c26}.tier-7-frame .card-name-banner{background:linear-gradient(180deg,var(--entity-primary, #1a4d8c) 0%,color-mix(in srgb,var(--entity-primary, #0d3a6e) 85%,black) 100%);margin:0 4px;padding:8px;position:relative;border-radius:0 0 8px 8px}.tier-7-frame .card-name-banner:before{content:"";position:absolute;left:10%;right:10%;top:-12px;height:10px;background:linear-gradient(90deg,transparent,var(--card-gold) 20%,var(--card-gold) 80%,transparent);border-radius:50%}.tier-7-frame .player-full-name{color:var(--card-gold);font-size:.7rem;text-shadow:1px 1px 0 #000;font-weight:800}.tier-7-frame .card-stats-bar{background:linear-gradient(90deg,color-mix(in srgb,var(--entity-primary, #8b0000) 80%,black),var(--entity-secondary, #ef3e42),color-mix(in srgb,var(--entity-primary, #8b0000) 80%,black));color:var(--card-gold);margin:0 4px 4px;border-radius:4px}.tier-7-frame .card-stats-bar .stat-label{color:#fff}.tier-7-frame .jersey-badge{background:linear-gradient(135deg,var(--card-gold) 0%,var(--card-gold-light) 50%,var(--card-gold) 100%);color:var(--entity-primary, #8b0000);font-weight:900;border:2px solid var(--card-gold-dim);box-shadow:0 2px 8px #0006}.tier-1-frame .card-image-wrapper:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:5;background:repeating-linear-gradient(0deg,transparent 0px,transparent 2px,rgba(0,0,0,.25) 2px,rgba(0,0,0,.25) 3px)}.tier-2-frame .card-image-wrapper:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:5;background:repeating-linear-gradient(0deg,transparent 0px,transparent 3px,rgba(0,0,0,.15) 3px,rgba(0,0,0,.15) 4px)}.tier-3-frame .card-image-wrapper:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:5;background:repeating-linear-gradient(0deg,transparent 0px,transparent 4px,rgba(0,0,0,.12) 4px,rgba(0,0,0,.12) 5px)}.tier-1-frame .card-image-wrapper:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:6;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.25) 70%,rgba(0,0,0,.4) 100%)}.tier-2-frame .card-image-wrapper:after,.tier-3-frame .card-image-wrapper:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:6;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.1) 75%,rgba(0,0,0,.2) 100%)}.tier-1-frame .card-image:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(0,255,100,.04) 0%,transparent 60%);pointer-events:none;z-index:4;mix-blend-mode:screen}.tier-2-frame .card-image:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(0,255,100,.025) 0%,transparent 70%);pointer-events:none;z-index:4;mix-blend-mode:screen}.tier-1-frame .card-image{border-radius:50%/3%;transform:perspective(500px) rotateX(1deg);filter:contrast(1.1) brightness(1.05)}.tier-2-frame .card-image{border-radius:50%/2%;transform:perspective(800px) rotateX(.5deg)}.tier-1-frame .card-image-wrapper .pixelated-image{filter:drop-shadow(-2px 0 0 rgba(255,0,0,.2))}.tier-1-frame .card-image{box-shadow:2px 0 #00f3}.tier-2-frame .card-image-wrapper .pixelated-image{filter:drop-shadow(-1px 0 0 rgba(255,0,0,.1))}.tier-2-frame .card-image{box-shadow:1px 0 #0000ff1a}.tier-3-frame .card-image-wrapper .pixelated-image{filter:drop-shadow(-.5px 0 0 rgba(255,0,0,.05)) drop-shadow(.5px 0 0 rgba(0,0,255,.05))}@media(prefers-reduced-motion:no-preference){.tier-1-frame .card-image-wrapper{animation:crtFlicker1 .15s infinite}.tier-2-frame .card-image-wrapper{animation:crtFlicker2 .2s infinite}@keyframes crtFlicker1{0%,to{opacity:1}10%{opacity:.97}20%{opacity:1}35%{opacity:.98}50%{opacity:1}65%{opacity:.96}80%{opacity:1}92%{opacity:.98}}@keyframes crtFlicker2{0%,to{opacity:1}25%{opacity:.98}50%{opacity:1}75%{opacity:.99}}}@media(prefers-reduced-motion:no-preference){.tier-1-frame{position:relative}.tier-1-frame:hover .card-image-wrapper{animation:none}.tier-1-frame:hover .card-image{animation:glitchTear .2s infinite;will-change:transform,clip-path}@keyframes glitchTear{0%{clip-path:inset(0 0 0 0);transform:perspective(500px) rotateX(1deg) translate(0)}10%{clip-path:inset(40% 0 30% 0);transform:perspective(500px) rotateX(1deg) translate(-3px)}15%{clip-path:inset(0 0 0 0);transform:perspective(500px) rotateX(1deg) translate(0)}25%{clip-path:inset(20% 0 60% 0);transform:perspective(500px) rotateX(1deg) translate(2px)}30%{clip-path:inset(0 0 0 0);transform:perspective(500px) rotateX(1deg) translate(0)}45%{clip-path:inset(70% 0 10% 0);transform:perspective(500px) rotateX(1deg) translate(-2px)}50%{clip-path:inset(0 0 0 0);transform:perspective(500px) rotateX(1deg) translate(0)}65%{clip-path:inset(10% 0 80% 0);transform:perspective(500px) rotateX(1deg) translate(4px)}70%{clip-path:inset(0 0 0 0);transform:perspective(500px) rotateX(1deg) translate(0)}85%{clip-path:inset(55% 0 25% 0);transform:perspective(500px) rotateX(1deg) translate(-1px)}to{clip-path:inset(0 0 0 0);transform:perspective(500px) rotateX(1deg) translate(0)}}.tier-1-frame:hover .card-image-wrapper .pixelated-image{filter:drop-shadow(-4px 0 0 rgba(255,0,0,.35));animation:rgbShift .15s infinite}.tier-1-frame:hover .card-image{box-shadow:4px 0 #0000ff59}@keyframes rgbShift{0%,to{filter:drop-shadow(-4px 0 0 rgba(255,0,0,.35))}25%{filter:drop-shadow(-3px 0 0 rgba(255,0,0,.4)) drop-shadow(0 -1px 0 rgba(0,255,0,.2))}50%{filter:drop-shadow(-5px 0 0 rgba(255,0,0,.3))}75%{filter:drop-shadow(-3px 0 0 rgba(255,0,0,.45)) drop-shadow(0 1px 0 rgba(0,255,0,.15))}}.tier-1-frame:hover .card-image-wrapper:before{animation:staticNoise .1s steps(8) infinite;background:repeating-linear-gradient(0deg,transparent 0px,transparent 2px,rgba(0,0,0,.3) 2px,rgba(0,0,0,.3) 3px),repeating-linear-gradient(90deg,transparent 0px,transparent 4px,rgba(255,255,255,.02) 4px,rgba(255,255,255,.02) 8px)}@keyframes staticNoise{0%{background-position:0 0,0 0}12.5%{background-position:0 -1px,2px 0}25%{background-position:0 1px,-1px 0}37.5%{background-position:0 -2px,3px 0}50%{background-position:0 2px,-2px 0}62.5%{background-position:0 0,1px 0}75%{background-position:0 -1px,-3px 0}87.5%{background-position:0 1px,2px 0}to{background-position:0 0,0 0}}.tier-1-frame:hover{animation:frameJitter .1s infinite}@keyframes frameJitter{0%,to{transform:translateY(-8px) rotateX(5deg) translate(0)}25%{transform:translateY(-8px) rotateX(5deg) translate(.5px,-.5px)}50%{transform:translateY(-8px) rotateX(5deg) translate(-.5px,.5px)}75%{transform:translateY(-8px) rotateX(5deg) translate(.5px,.5px)}}}.card-frame--focused{outline:2px solid var(--st-gold);outline-offset:2px;z-index:5}.card-frame.comparison-mode{cursor:pointer}.card-frame.comparison-mode:hover{transform:translateY(-4px)}.card-frame.selected-for-comparison{box-shadow:0 0 0 3px gold,0 0 20px #ffd70080,0 10px 30px #0000004d;transform:translateY(-4px) scale(1.02)}.card-frame.selected-for-comparison:hover{transform:translateY(-4px) scale(1.02)}.comparison-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:50%;background:#000000b3;border:2px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem;font-weight:700;opacity:0;transition:all .2s ease;z-index:20}.card-frame.comparison-mode:hover .comparison-indicator{opacity:1}.comparison-indicator.selected{opacity:1;background:gold;border-color:gold;color:#1a1a1a}.comparison-indicator.selected svg{stroke-width:3}@media(max-width:600px){.card-frame{padding:4px}.team-name{font-size:.55rem}.player-full-name{font-size:.5rem}.position-pennant{font-size:.4rem;padding:2px 6px 2px 3px}.jersey-badge{font-size:.4rem;padding:1px 3px}.primary-stat .stat-value{font-size:.6rem}.stat-item .stat-value{font-size:.45rem}.card-stats-bar{min-height:32px;padding:3px 6px}.card-name-banner{padding:4px 6px}.tier-6-frame .card-inner{margin:1px}.tier-7-frame{padding:4px}.tier-7-frame .card-image-wrapper{margin:2px}.tier-7-frame .card-name-banner{padding:4px}.tier-7-frame .card-stats-bar{margin:0 2px 2px}}.collected-indicator{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:50%;background:#00c853e6;color:#fff;display:flex;align-items:center;justify-content:center;z-index:5;box-shadow:0 1px 4px #0006;pointer-events:none}.ascii-toggle{position:absolute;bottom:6px;right:6px;z-index:6;width:32px;height:24px;border:2px solid rgba(0,255,130,.6);border-radius:3px;background:#000000bf;color:#0f0;font-family:"Press Start 2P",monospace;font-size:.35rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1;transition:background .15s,color .15s,border-color .15s,transform .15s;opacity:1;animation:ascii-toggle-pulse 2s ease-in-out infinite}@keyframes ascii-toggle-pulse{0%,to{border-color:#00ff8266}50%{border-color:#00ff82e6}}.ascii-toggle:hover{background:#000000e6;color:#0f0;border-color:#0f0;transform:scale(1.1)}.ascii-toggle--active{background:#00c864cc;border-color:#00ff82cc;color:#fff;animation:none}.ascii-toggle--active:hover{background:#00c864}.follow-indicator{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:#0009;color:var(--dp-gold, #c9a227);display:flex;align-items:center;justify-content:center;z-index:5;box-shadow:0 1px 4px #0006;cursor:pointer;border:none;padding:0;transition:transform .15s,background .15s}.follow-indicator:hover{transform:scale(1.2);background:#000c}.follow-indicator--active{background:#c9a227e6;color:#000}.follow-indicator--active:hover{background:#c9a227}.modal-backdrop{position:fixed;inset:0;z-index:1000;background:#000000d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;animation:backdropFadeIn .25s ease-out}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);max-width:90vw;max-height:90vh;overflow-y:auto;outline:none;opacity:0;transform:translate(-50%,-50%) scale(.8)}.modal-close{position:fixed;top:max(16px,env(safe-area-inset-top,0px));right:max(16px,env(safe-area-inset-right,0px));z-index:1002;width:36px;height:36px;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:#000c;color:#fff;font-size:1.25rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease}.modal-close:hover{background:#ef3e42e6;border-color:#ef3e42}.modal-close:focus{outline:none;box-shadow:0 0 0 2px #ffffff80}@media(max-width:600px){.modal-content{max-width:95vw;max-height:95vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-close{width:36px;height:36px;font-size:1.1rem}}.card-back-frame{width:100%;height:100%;border-radius:12px;padding:8px;display:flex;flex-direction:column}.card-back-inner{background:var(--bg-card-inner, #1a1a1a);color:#ffffffe6;border-radius:8px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;height:100%;padding:8px 10px}.era-badge{position:absolute;top:12px;right:12px;background:#0009;padding:6px 10px;border-radius:6px;text-align:center;border:1px solid rgba(255,255,255,.2)}.era-game{display:block;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;opacity:.9}.era-year{display:block;font-size:.75rem;font-weight:800}.back-header{text-align:center;padding:4px 0 8px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:8px}.back-number{font-size:.7rem;opacity:.6;display:block}.back-name{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin:2px 0}.back-position{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;opacity:.7}.flavor-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-style:italic;font-size:.6rem;line-height:1.3;color:var(--text-secondary, rgba(255, 255, 255, .55));text-align:center;margin:0 auto 8px;padding:0 8px;max-width:280px}.war-section{margin-bottom:8px}.war-badge{display:flex;flex-direction:column;align-items:center;background:linear-gradient(135deg,#c9a84c33,#c9a84c1a);border:1px solid rgba(201,168,76,.4);border-radius:8px;padding:6px 10px}.war-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.15em;opacity:.8}.war-value{font-size:1.2rem;font-weight:800;color:var(--card-gold);text-shadow:0 0 10px rgba(201,168,76,.3)}.war-description{font-size:.55rem;text-transform:uppercase;letter-spacing:.1em;opacity:.7;margin-top:2px}.tier-explanation{background:#ffffff0d;border-radius:8px;padding:12px;margin-bottom:12px}.explanation-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;opacity:.7;margin:0 0 10px;text-align:center}.tier-badge-large{display:flex;flex-direction:column;align-items:center;padding:10px;background:#0000004d;border-radius:8px;margin-bottom:12px}.tier-number{font-size:1.25rem;font-weight:800;letter-spacing:.1em}.tier-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;opacity:.8;margin-top:2px}.metric-breakdown{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.metric-row{display:flex;justify-content:space-between;align-items:center;font-size:.7rem}.metric-name{opacity:.7}.metric-value{font-weight:600}.metric-value.highlight{font-size:.85rem;font-weight:800}.tier-context{font-size:.65rem;line-height:1.5;opacity:.8;margin:0;text-align:center;font-style:italic}.full-stats-section{flex:1;overflow-y:auto}.stats-title{font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;opacity:.7;margin:0 0 4px;text-align:center}.full-stats-table{display:flex;flex-direction:column;gap:2px}.full-stat-row{display:flex;justify-content:space-between;align-items:center;padding:3px 6px;background:#ffffff08;border-radius:4px;font-size:.6rem}.full-stat-row:nth-child(2n){background:#ffffff0f}.full-stat-label{opacity:.7}.full-stat-value{font-weight:600}.no-stats{text-align:center;color:var(--text-muted, #666);font-style:italic;font-size:.75rem;padding:1rem}.bio-section{background:#ffffff0d;border-radius:6px;padding:6px 8px;margin-bottom:8px;display:flex;flex-direction:column;gap:2px}.bio-row{display:flex;justify-content:space-between;align-items:center;padding:2px 4px;font-size:.6rem}.bio-label{opacity:.6;text-transform:uppercase;letter-spacing:.08em}.bio-value{font-weight:600}.mlb-career-section{background:#ffffff08;border-radius:6px;padding:6px 8px;margin-bottom:8px}.mlb-career-list{display:flex;flex-direction:column;gap:3px}.mlb-career-entry{display:flex;align-items:center;gap:8px;padding:3px 6px;border-radius:4px;font-size:.6rem;background:#ffffff08}.mlb-career-entry:nth-child(2n){background:#ffffff0f}.mlb-career-entry.active{border-left:2px solid var(--card-gold, #c9a84c)}.mlb-career-team{font-weight:700;min-width:32px;letter-spacing:.05em}.mlb-career-name{flex:1;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mlb-career-years{font-weight:600;white-space:nowrap;opacity:.9}.fielding-stats-section{background:#ffffff08;border-radius:8px;padding:8px;margin-bottom:8px}.fielding-stats-grid{display:flex;flex-direction:column;gap:2px}.fielding-position{display:flex;justify-content:center;gap:8px;margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.1)}.position-label{font-size:.6rem;opacity:.7}.position-value{font-size:.7rem;font-weight:700}.fielding-stat-row{display:flex;justify-content:space-between;align-items:center;padding:3px 6px;background:#ffffff08;border-radius:3px;font-size:.6rem}.fielding-stat-row:nth-child(2n){background:#ffffff0f}.fielding-stat-label{opacity:.7}.fielding-stat-value{font-weight:600}.visual-info{margin-top:auto;padding-top:6px;padding-bottom:2px;border-top:1px solid rgba(255,255,255,.1);text-align:center;flex-shrink:0}.visual-label{display:block;font-size:.55rem;text-transform:uppercase;letter-spacing:.15em;opacity:.5;margin-bottom:4px}.visual-specs{display:flex;justify-content:center;gap:12px;font-size:.6rem;opacity:.7}.visual-specs span{padding:2px 6px;background:#ffffff0d;border-radius:3px}.flip-hint-back{padding:6px 8px;display:flex;justify-content:center;color:#fff6}.flip-back-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:4px;color:#ffffff80;font-family:"Press Start 2P",monospace;font-size:.45rem;padding:6px 12px;cursor:pointer;transition:all .15s ease}.flip-back-btn:hover{background:#ffffff26;color:#fffc}.tier-1-back{background:linear-gradient(135deg,#5a3d2b,#3d2a1d)}.tier-1-back .card-back-inner{background:#2d1f14}.tier-1-back .back-name{color:#c9a66b}.tier-1-back .back-number,.tier-1-back .back-position{color:#a67c52}.tier-1-back .tier-number{color:#c9a66b}.tier-1-back .metric-value.highlight{color:var(--card-gold)}.tier-1-back .era-badge{background:#8b4513;border-color:#a67c52}.tier-1-back .era-game,.tier-1-back .era-year{color:#fff}.tier-2-back{background:linear-gradient(180deg,#d4a84b,#b8922f)}.tier-2-back .card-back-inner{background:#1a4d8c;border:2px solid #8b7355;border-radius:12px}.tier-2-back .back-name{color:#fff;text-shadow:1px 1px 0 #000}.tier-2-back .tier-number{color:var(--card-gold)}.tier-2-back .tier-explanation{background:#0000004d}.tier-2-back .metric-value.highlight{color:var(--card-gold)}.tier-2-back .era-badge{background:#ef3e42}.tier-3-back{background:linear-gradient(135deg,#4a5568,#2d3748)}.tier-3-back .back-name{color:#fff}.tier-3-back .tier-number{color:#708090}.tier-3-back .metric-value.highlight{color:#4682b4}.tier-3-back .era-badge{background:#005a9c}.tier-4-back{background:linear-gradient(180deg,#f5f5f5,#e0e0e0)}.tier-4-back .card-back-inner{background:#fff;border:3px solid #4682b4;color:#1a1a1a}.tier-4-back .back-name{color:#1a1a1a}.tier-4-back .back-number,.tier-4-back .back-position,.tier-4-back .tier-number{color:#4682b4}.tier-4-back .tier-explanation{background:#4682b41a}.tier-4-back .metric-value.highlight{color:#1a4d8c}.tier-4-back .flavor-text{color:#1a1a1a8c}.tier-4-back .full-stat-row{background:#4682b40d;color:#1a1a1a}.tier-4-back .full-stat-row:nth-child(2n){background:#4682b41a}.tier-4-back .era-badge{background:#4682b4}.tier-4-back .flip-hint-back{color:#0000004d}.tier-5-back{background:repeating-linear-gradient(90deg,#2d2d2d 0px 2px,#3d3d3d 2px 4px)}.tier-5-back .card-back-inner{border:2px solid #32cd32}.tier-5-back .back-name{color:#32cd32;text-shadow:0 0 10px rgba(50,205,50,.5)}.tier-5-back .tier-number{color:#32cd32}.tier-5-back .metric-value.highlight{color:#32cd32;text-shadow:0 0 8px rgba(50,205,50,.5)}.tier-5-back .era-badge{background:linear-gradient(135deg,#ff6b6b,#ee5a5a)}.tier-6-back{background:linear-gradient(180deg,var(--card-gold) 0%,var(--card-gold-dark) 100%)}.tier-6-back .card-back-inner{background:#9370db;border:3px solid var(--card-gold);margin:2px}.tier-6-back .back-name{color:#fff;text-shadow:2px 2px 0 rgba(0,0,0,.3)}.tier-6-back .tier-number{color:var(--card-gold)}.tier-6-back .tier-explanation{background:#0003}.tier-6-back .metric-value.highlight{color:var(--card-gold)}.tier-6-back .era-badge{background:#ef3e42}.tier-7-back{background:linear-gradient(135deg,var(--card-gold) 0%,var(--card-gold-light) 25%,var(--card-gold) 50%,var(--card-gold-dim) 75%,var(--card-gold) 100%);padding:10px;animation:goldShimmer 3s ease-in-out infinite}.tier-7-back .card-back-inner{border:3px solid var(--card-gold);box-shadow:inset 0 0 20px #c9a84c33;background:linear-gradient(180deg,#1a4d8c,#0d3a6e)}.tier-7-back .back-header{background:linear-gradient(180deg,#ef3e42,#c41e3a);margin:-12px -12px 12px;padding:12px;border-bottom:none}.tier-7-back .back-name{color:var(--card-gold);text-shadow:2px 2px 0 #8b0000}.tier-7-back .back-number{color:#fff}.tier-7-back .back-position{color:var(--card-gold)}.tier-7-back .tier-badge-large{background:#c9a84c33}.tier-7-back .tier-number{color:var(--card-gold);text-shadow:0 0 10px rgba(201,168,76,.4)}.tier-7-back .tier-label{color:#fff}.tier-7-back .metric-value.highlight{color:var(--card-gold)}.tier-7-back .tier-explanation{background:#8b00004d}.tier-7-back .full-stat-row{color:var(--card-gold)}.tier-7-back .full-stat-label{color:#fff}.tier-7-back .era-badge{background:linear-gradient(135deg,var(--card-gold) 0%,var(--card-gold-light) 100%);border:2px solid var(--card-gold-dim)}.tier-7-back .era-game,.tier-7-back .era-year{color:#8b0000}@keyframes goldShimmer{0%,to{box-shadow:0 10px 40px #c9a84c59,0 0 30px #c9a84c40}50%{box-shadow:0 10px 40px #c9a84c80,0 0 50px #c9a84c66}}[data-theme=light] .tier-4-back .back-header{border-bottom-color:#0000001a}[data-theme=light] .tier-4-back .bio-section,[data-theme=light] .tier-4-back .tier-explanation{background:#0000000a}[data-theme=light] .tier-4-back .bio-label,[data-theme=light] .tier-4-back .back-number,[data-theme=light] .tier-4-back .war-label,[data-theme=light] .tier-4-back .war-description,[data-theme=light] .tier-4-back .explanation-title,[data-theme=light] .tier-4-back .stats-title,[data-theme=light] .tier-4-back .metric-name,[data-theme=light] .tier-4-back .full-stat-label,[data-theme=light] .tier-4-back .position-label,[data-theme=light] .tier-4-back .visual-label{color:#00000080}[data-theme=light] .tier-4-back .back-position,[data-theme=light] .tier-4-back .tier-label,[data-theme=light] .tier-4-back .tier-context,[data-theme=light] .tier-4-back .visual-specs{color:#0009}[data-theme=light] .tier-4-back .bio-value,[data-theme=light] .tier-4-back .metric-value,[data-theme=light] .tier-4-back .full-stat-value,[data-theme=light] .tier-4-back .fielding-stat-value,[data-theme=light] .tier-4-back .mlb-career-years,[data-theme=light] .tier-4-back .position-value{color:#1a1a1a}[data-theme=light] .tier-4-back .mlb-career-section,[data-theme=light] .tier-4-back .fielding-stats-section,[data-theme=light] .tier-4-back .mlb-career-entry,[data-theme=light] .tier-4-back .fielding-stat-row{background:#00000008}[data-theme=light] .tier-4-back .mlb-career-entry:nth-child(2n),[data-theme=light] .tier-4-back .fielding-stat-row:nth-child(2n){background:#0000000f}[data-theme=light] .tier-4-back .mlb-career-name{color:#0009}[data-theme=light] .tier-4-back .tier-badge-large{background:#0000000d}[data-theme=light] .tier-4-back .visual-specs span{background:#0000000f}[data-theme=light] .tier-4-back .visual-info{border-top-color:#0000001a}[data-theme=light] .tier-4-back .war-badge{background:linear-gradient(135deg,#c9a84c26,#c9a84c14)}[data-theme=light] .tier-4-back .fielding-position{border-bottom-color:#0000001a}[data-theme=light] .tier-4-back .fielding-stat-label{color:#00000080}@media(max-width:400px){.back-name{font-size:.95rem}.tier-number{font-size:1.1rem}.full-stat-row{font-size:.6rem}}.share-btn{display:flex;align-items:center;justify-content:center;gap:.4rem;font-family:"Press Start 2P",monospace;cursor:pointer;transition:all .2s;border:none;outline:none}.share-btn:disabled{cursor:wait;opacity:.7}.share-btn--block{width:100%;margin-top:.75rem;padding:.5rem;font-size:.4rem;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm)}.share-btn--block:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent-primary);background:#ffffff0d}.share-btn--inline{padding:6px 12px;font-size:.4rem;color:#ffffff80;background:#ffffff14;border-radius:6px;white-space:nowrap}.share-btn--inline:hover:not(:disabled){color:#ffffffe6;background:#ffffff26}.share-btn--done{color:#32cd32!important}.share-btn--error{color:#ef3e42!important}.share-btn-spinner{animation:share-spin .8s linear infinite}@keyframes share-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card-modal{position:relative;perspective:1000px}.card-flip-container{position:relative;width:340px;aspect-ratio:5 / 7;max-height:85vh;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.4,0,.2,1);cursor:pointer}.card-flip-container.flipped.flip-left{transform:rotateY(-180deg)}.card-flip-container.flipped.flip-right{transform:rotateY(180deg)}.card-front{position:relative;backface-visibility:hidden;-webkit-backface-visibility:hidden;z-index:2;height:100%}.card-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:rotateY(180deg)}.modal-card-frame.card-frame{height:100%;aspect-ratio:auto;cursor:pointer;min-width:0;padding:10px;border-radius:12px}.modal-card-frame.card-frame:hover{transform:none;box-shadow:none}.modal-card-frame .card-team-header{padding:8px 14px}.modal-card-frame .team-name{font-size:1rem;letter-spacing:.15em}.modal-card-frame .position-pennant{top:34px;left:-2px;font-size:.7rem;padding:4px 12px 4px 6px}.modal-card-frame .card-name-banner{padding:10px 12px}.modal-card-frame .player-full-name{font-size:.9rem}.modal-card-frame .card-stats-bar{padding:8px 12px;gap:10px;min-height:52px}.modal-card-frame .primary-stat .stat-label{font-size:.4rem}.modal-card-frame .primary-stat .stat-value{font-size:.75rem}.modal-card-frame .stat-item .stat-value{font-size:.6rem}.modal-card-frame .stat-item .stat-label{font-size:.35rem}.modal-card-frame .jersey-badge{top:6px;right:6px;font-size:.5rem;padding:2px 5px}.modal-card-frame .team-code-badge{bottom:6px;left:6px;font-size:.5rem;padding:2px 6px}.modal-card-frame .card-inner{border-radius:8px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px}.modal-team{font-weight:800;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase}.modal-number{font-weight:700;font-size:.875rem}.modal-image-container{position:relative;width:100%;aspect-ratio:1 / 1;overflow:hidden;background:var(--card-image-bg, linear-gradient(180deg, #2a2a2a 0%, #1a1a1a 100%))}.modal-player-image{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges}.modal-image-loading,.modal-image-error{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-muted, #666);font-size:2rem}.modal-image-container .scanlines{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(transparent,transparent 2px,rgba(0,0,0,.15) 2px,rgba(0,0,0,.15) 4px)}.modal-position-pennant{position:absolute;top:6px;left:6px;z-index:3;background:var(--entity-secondary, #c00);color:#fff;font-family:"Press Start 2P",monospace;font-size:.5rem;padding:4px 6px;line-height:1;clip-path:polygon(0 0,100% 0,100% 70%,50% 100%,0 70%);min-width:28px;text-align:center}.modal-team-stripe{position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--entity-primary, #333) 0%,var(--entity-secondary, #666) 50%,var(--entity-primary, #333) 100%)}.modal-stats-bar{display:flex;align-items:center;padding:6px 12px;gap:8px;background:#0000004d;border-top:1px solid rgba(255,255,255,.06)}.modal-stats-bar-primary{display:flex;flex-direction:column;align-items:center;padding-right:8px;border-right:1px solid rgba(255,255,255,.1)}.modal-stats-bar-primary .modal-stats-bar-label{font-family:"Press Start 2P",monospace;font-size:.35rem;color:var(--text-secondary);letter-spacing:.05em}.modal-stats-bar-primary .modal-stats-bar-value{font-family:"Press Start 2P",monospace;font-size:.65rem;color:var(--entity-primary-light, var(--dp-gold));font-weight:700}.modal-stats-bar-secondary{display:flex;gap:12px;flex:1;justify-content:center}.modal-stats-bar-item{display:flex;flex-direction:column;align-items:center}.modal-stats-bar-item .modal-stats-bar-value{font-family:"Press Start 2P",monospace;font-size:.5rem;color:var(--text-primary)}.modal-stats-bar-item .modal-stats-bar-label{font-family:"Press Start 2P",monospace;font-size:.3rem;color:var(--text-secondary);letter-spacing:.05em}.modal-name-banner{padding:10px 12px;text-align:center}.modal-player-name{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin:0}.modal-player-name--md{font-size:.85rem}.modal-player-name--sm{font-size:.7rem}.modal-position{font-size:.7rem;opacity:.7;text-transform:uppercase;letter-spacing:.1em}.modal-war-badge{display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 12px;background:linear-gradient(135deg,#ffd70033,#ffd7001a);border-top:1px solid rgba(255,215,0,.3);border-bottom:1px solid rgba(255,215,0,.3)}.modal-war-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;opacity:.8}.modal-war-value{font-size:1rem;font-weight:800;color:gold;text-shadow:0 0 8px rgba(255,215,0,.3)}.modal-stats-section{padding:8px 12px;background:#0000004d}.stats-heading{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;opacity:.7;margin:0 0 8px;text-align:center}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;background:#ffffff0d;border-radius:4px;font-size:.75rem}.stat-row.stat-highlight{background:#ffd70026;grid-column:span 2}.stat-row .stat-label{font-weight:600;opacity:.8;text-transform:uppercase;font-size:.65rem}.stat-row .stat-value{font-weight:700}.no-stats-message{text-align:center;color:var(--text-muted, #666);font-style:italic;padding:1rem}.modal-fielding-section{padding:8px 12px;background:#0003;border-top:1px solid rgba(255,255,255,.1)}.fielding-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.fielding-grid .stat-row:first-child{grid-column:span 2;justify-content:center;gap:8px}.flip-hint{padding:6px;text-align:center;font-size:.6rem;color:#fff6;text-transform:uppercase;letter-spacing:.1em}.tier-1-modal .modal-card-frame{background:linear-gradient(135deg,#5a3d2b,#3d2a1d)}.tier-1-modal .modal-header{background:#2d1f14}.tier-1-modal .modal-team{color:#a67c52}.tier-1-modal .modal-number{color:#c9a66b}.tier-1-modal .modal-name-banner{background:#2d1f14}.tier-1-modal .modal-player-name{color:#c9a66b}.tier-1-modal .modal-position,.tier-1-modal .stat-row{color:#a67c52}.tier-1-modal .stat-highlight{background:#a67c5233}.tier-2-modal .modal-card-frame{background:linear-gradient(180deg,#d4a84b,#b8922f)}.tier-2-modal .modal-card-inner{border:2px solid #8b7355;border-radius:12px}.tier-2-modal .modal-header{background:linear-gradient(180deg,#1a4d8c,#0d3a6e)}.tier-2-modal .modal-team{color:#fff;text-shadow:1px 1px 0 #000}.tier-2-modal .modal-number{color:#fff}.tier-2-modal .modal-name-banner{background:linear-gradient(90deg,#1a4d8c,#2a6db8,#1a4d8c)}.tier-2-modal .modal-player-name{color:#fff;text-shadow:1px 1px 0 #000}.tier-2-modal .modal-position{color:#fffc}.tier-2-modal .modal-stats-section{background:#1a4d8c}.tier-2-modal .stat-row{color:#fff}.tier-3-modal .modal-card-frame{background:linear-gradient(135deg,#4a5568,#2d3748)}.tier-3-modal .modal-header{background:#1a1a1a}.tier-3-modal .modal-team,.tier-3-modal .modal-number{color:#708090}.tier-3-modal .modal-name-banner{background:linear-gradient(90deg,#005a9c 0%,transparent 100%)}.tier-3-modal .modal-player-name{color:#fff}.tier-3-modal .modal-position{color:#ffffffb3}.tier-3-modal .stat-row{color:#708090}.tier-4-modal .modal-card-frame{background:linear-gradient(180deg,#f5f5f5,#e0e0e0)}.tier-4-modal .modal-card-inner{border:3px solid #4682b4}.tier-4-modal .modal-header{background:#fff;border-bottom:2px solid #4682b4}.tier-4-modal .modal-team,.tier-4-modal .modal-number{color:#4682b4}.tier-4-modal .modal-name-banner{background:#fff}.tier-4-modal .modal-player-name{color:#1a1a1a}.tier-4-modal .modal-position{color:#4682b4}.tier-4-modal .modal-stats-section{background:#f0f0f0}.tier-4-modal .stat-row{color:#1a1a1a;background:#4682b41a}.tier-4-modal .stat-highlight{background:#4682b440}.tier-5-modal .modal-card-frame{background:repeating-linear-gradient(90deg,#2d2d2d 0px 2px,#3d3d3d 2px 4px)}.tier-5-modal .modal-card-inner{border:2px solid #32cd32}.tier-5-modal .modal-header{background:linear-gradient(180deg,#1a1a1a,#0d0d0d)}.tier-5-modal .modal-team{color:#32cd32;text-shadow:0 0 10px rgba(50,205,50,.5)}.tier-5-modal .modal-number{color:#32cd32}.tier-5-modal .modal-name-banner{background:linear-gradient(90deg,#005a9c,#ef3e42,gold 66%,#32cd32)}.tier-5-modal .modal-player-name{color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.tier-5-modal .modal-position{color:#ffffffe6}.tier-5-modal .modal-stats-section{background:#0d0d0d}.tier-5-modal .stat-row{color:#32cd32}.tier-6-modal .modal-card-frame{background:linear-gradient(180deg,gold,#e6c200)}.tier-6-modal .modal-card-inner{border:3px solid #9370db;margin:2px}.tier-6-modal .modal-header{background:linear-gradient(180deg,#9370db,#7b5fc4)}.tier-6-modal .modal-team{color:#fff;text-shadow:2px 2px 0 rgba(0,0,0,.3)}.tier-6-modal .modal-number{color:gold}.tier-6-modal .modal-name-banner{background:#9370db}.tier-6-modal .modal-player-name{color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.3)}.tier-6-modal .modal-position{color:gold}.tier-6-modal .modal-stats-section{background:linear-gradient(180deg,#7b5fc4,#9370db)}.tier-6-modal .stat-row{color:#fff}.tier-6-modal .stat-highlight{background:#ffd70033}.tier-7-modal .modal-card-frame{background:linear-gradient(135deg,gold,#ffed4a,gold,#b8860b,gold);padding:10px;animation:goldShimmer 3s ease-in-out infinite}.tier-7-modal .modal-card-inner{border:3px solid #ffd700;box-shadow:inset 0 0 20px #ffd70033}.tier-7-modal .modal-header{background:linear-gradient(180deg,#ef3e42,#c41e3a)}.tier-7-modal .modal-team{color:#fff;text-shadow:2px 2px 0 #8b0000;letter-spacing:.2em}.tier-7-modal .modal-number{color:gold;text-shadow:1px 1px 0 #8b0000}.tier-7-modal .modal-name-banner{background:linear-gradient(180deg,#1a4d8c,#0d3a6e)}.tier-7-modal .modal-player-name{color:gold;text-shadow:1px 1px 0 #000}.tier-7-modal .modal-position{color:#fff}.tier-7-modal .modal-stats-section{background:linear-gradient(90deg,#8b0000,#ef3e42,#8b0000)}.tier-7-modal .stat-row{color:gold}.tier-7-modal .stat-row .stat-label{color:#fff}.tier-7-modal .stat-highlight{background:#ffd7004d}.card-modal-share{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:8px}.card-modal-follow{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:var(--dp-gold, #c9a227);font-family:"Press Start 2P",monospace;font-size:.4rem;white-space:nowrap;cursor:pointer;transition:all .15s ease}.card-modal-follow:hover{background:#ffffff1f;border-color:var(--dp-gold, #c9a227)}.card-modal-follow--active{background:#c9a22733;border-color:var(--dp-gold, #c9a227)}@media(max-width:768px){.card-flip-container{width:300px}.modal-player-name{font-size:.9rem}}@media(max-width:480px){.card-flip-container{width:280px}.modal-player-name{font-size:.85rem}.modal-player-name--md{font-size:.75rem}.modal-player-name--sm{font-size:.65rem}.modal-header{padding:6px 10px}.modal-team{font-size:.65rem}.modal-number{font-size:.75rem}.modal-name-banner{padding:8px 10px}.modal-war-badge{padding:4px 10px}.flip-hint{font-size:.5rem;padding:4px}}.allstar-hub{--as-gold: var(--dp-gold, #c9a227);--as-gold-bright: #f2c94c;--as-navy: #0b1f3a;--as-red: #e05a5a;--as-blue: #4f93de;--as-panel: #0a1626;--as-line: rgba(201, 162, 39, .35);--as-ink: #f4f1e8;--as-ink-dim: rgba(244, 241, 232, .62);position:relative;margin:0 0 2.75rem;border:2px solid var(--as-gold);border-radius:var(--radius, 12px);overflow:hidden;background:radial-gradient(circle at 12% 16%,rgba(201,162,39,.12),transparent 42%),radial-gradient(circle at 88% 10%,rgba(214,69,69,.12),transparent 44%),linear-gradient(180deg,#0d2340,#0a1526);box-shadow:0 0 0 1px #0006,0 14px 46px #0006}.allstar-hub:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:repeating-linear-gradient(90deg,var(--as-gold) 0 14px,transparent 14px 28px);opacity:.55}.allstar-hub-inner{padding:1.75rem 1.5rem 2rem}.allstar-header{text-align:center;margin-bottom:1.5rem}.allstar-eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:"Press Start 2P",monospace;font-size:.55rem;letter-spacing:.08em;color:var(--as-gold);text-transform:uppercase}.allstar-star{color:var(--as-gold-bright);font-size:.7rem;filter:drop-shadow(0 0 4px rgba(242,201,76,.6))}.allstar-title{font-family:"Press Start 2P",monospace;font-size:1.5rem;line-height:1.15;margin:.7rem 0 .5rem;color:var(--as-ink);text-shadow:0 2px 0 var(--as-navy),0 0 18px rgba(201,162,39,.35)}.allstar-venue{margin:0;font-size:.85rem;color:var(--as-ink-dim);letter-spacing:.03em}.allstar-scoreboard{max-width:460px;margin:0 auto 1.75rem;padding:.85rem 1rem 1rem;border:1px solid var(--as-line);border-radius:10px;background:linear-gradient(180deg,#00000059,#00000026);box-shadow:inset 0 0 24px #00000073}.allstar-sb-status{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;min-height:1.2rem}.allstar-status{font-family:"Press Start 2P",monospace;font-size:.5rem;letter-spacing:.06em;display:inline-flex;align-items:center;gap:.4rem}.allstar-status--live{color:#ff5a5a}.allstar-status--final{color:var(--as-gold)}.allstar-status--pre{color:var(--as-ink-dim)}.allstar-live-dot{width:8px;height:8px;border-radius:50%;background:#ff3b3b;box-shadow:0 0 8px #ff3b3b;animation:allstar-pulse 1.4s ease-in-out infinite}@keyframes allstar-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.72)}}.allstar-outs{display:inline-flex;gap:.28rem}.allstar-out{width:8px;height:8px;border-radius:50%;border:1px solid rgba(244,241,232,.4)}.allstar-out--on{background:var(--as-gold);border-color:var(--as-gold);box-shadow:0 0 6px #c9a227b3}.allstar-sb-hrow,.allstar-sb-row{display:grid;grid-template-columns:2.6rem 1fr 2.6rem 2rem 2rem;align-items:center}.allstar-sb-hrow{padding:0 .4rem .35rem;border-bottom:1px solid rgba(201,162,39,.22);font-family:"Press Start 2P",monospace;font-size:.5rem;color:var(--as-gold)}.allstar-sb-hrow .c-r,.allstar-sb-hrow .c-h,.allstar-sb-hrow .c-e{text-align:center}.allstar-sb-row{padding:.6rem .4rem;border-bottom:1px solid rgba(255,255,255,.05)}.allstar-sb-row:last-child{border-bottom:none}.allstar-sb-row .c-tag{font-family:"Press Start 2P",monospace;font-size:.7rem;color:#fff;width:1.9rem;height:1.9rem;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;background:var(--tone, #444);box-shadow:0 0 10px #0006}.allstar-sb-row--al{--tone: var(--as-red)}.allstar-sb-row--nl{--tone: var(--as-blue)}.allstar-sb-row .c-label{display:flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:600;color:var(--as-ink);padding-left:.6rem}.allstar-sb-row .c-r,.allstar-sb-row .c-h,.allstar-sb-row .c-e{text-align:center;font-variant-numeric:tabular-nums}.allstar-runs{font-family:"Press Start 2P",monospace;font-size:1.15rem;color:var(--as-gold-bright);text-shadow:0 0 12px rgba(242,201,76,.4)}.allstar-sb-row .c-h,.allstar-sb-row .c-e{font-size:.9rem;color:var(--as-ink-dim)}.allstar-sb-row--win .c-label{color:var(--as-gold-bright)}.allstar-bat{color:var(--as-gold-bright);font-size:.7rem;animation:allstar-blink 1s step-start infinite}@keyframes allstar-blink{50%{opacity:.25}}.allstar-win-star{color:var(--as-gold-bright);font-size:.75rem}.allstar-league{--tone: #666;margin-top:1.5rem}.allstar-league--al{--tone: var(--as-red)}.allstar-league--nl{--tone: var(--as-blue)}.allstar-league-head{display:flex;align-items:center;gap:.75rem;padding-bottom:.6rem;border-bottom:2px solid var(--tone)}.allstar-league-tag{font-family:"Press Start 2P",monospace;font-size:.7rem;color:#fff;padding:.4rem .5rem;border-radius:5px;background:var(--tone)}.allstar-league-name{font-family:"Press Start 2P",monospace;font-size:.8rem;margin:0;color:var(--as-ink);flex:1}.allstar-league-count{font-size:.7rem;color:var(--as-ink-dim);letter-spacing:.03em;text-transform:uppercase}.allstar-grid.card-grid{padding:1.25rem 0 .5rem;justify-content:center}.allstar-skel{aspect-ratio:5 / 7;border-radius:8px;background:linear-gradient(110deg,#ffffff0a 30%,#ffffff1a,#ffffff0a 70%);background-size:220% 100%;animation:allstar-shimmer 1.4s ease-in-out infinite;border:1px solid rgba(201,162,39,.18)}@keyframes allstar-shimmer{0%{background-position:130% 0}to{background-position:-130% 0}}.allstar-toggle{display:block;margin:.5rem auto 0;font-family:"Press Start 2P",monospace;font-size:.55rem;letter-spacing:.05em;color:var(--as-gold);background:transparent;border:1px solid var(--as-line);border-radius:6px;padding:.6rem 1rem;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.allstar-toggle:hover{background:#c9a2271f;color:var(--as-gold-bright);border-color:var(--as-gold)}[data-theme=light] .allstar-hub{box-shadow:0 0 0 1px #c9a22759,0 12px 34px #0b1f3a38}@media(max-width:768px){.allstar-hub-inner{padding:1.4rem 1rem 1.6rem}.allstar-title{font-size:1.15rem}.allstar-venue{font-size:.78rem}.allstar-league-name{font-size:.65rem}.allstar-league-count{display:none}}@media(max-width:480px){.allstar-title{font-size:.95rem}.allstar-eyebrow{font-size:.45rem;gap:.4rem}.allstar-sb-hrow,.allstar-sb-row{grid-template-columns:2.2rem 1fr 2.2rem 1.7rem 1.7rem}.allstar-sb-row .c-label{font-size:.7rem}.allstar-runs{font-size:1rem}}@media(prefers-reduced-motion:reduce){.allstar-live-dot,.allstar-bat,.allstar-skel{animation:none}}.landing{padding-bottom:3rem}.landing-hero{text-align:center;padding:2.75rem 1.5rem 2rem;background:radial-gradient(ellipse at center,rgba(201,162,39,.08) 0%,transparent 70%)}.landing-title{font-family:"Press Start 2P",monospace;font-size:1.9rem;color:var(--dp-gold);letter-spacing:4px;text-shadow:0 0 40px rgba(201,162,39,.3),0 0 80px rgba(201,162,39,.1);margin-bottom:.9rem;animation:titleGlow 3s ease-in-out infinite alternate}@keyframes titleGlow{0%{text-shadow:0 0 40px rgba(201,162,39,.3),0 0 80px rgba(201,162,39,.1)}to{text-shadow:0 0 60px rgba(201,162,39,.5),0 0 120px rgba(201,162,39,.2)}}.landing-tagline{font-family:"Press Start 2P",monospace;font-size:.8rem;color:var(--dp-sand);margin-bottom:.9rem;letter-spacing:2px}.landing-desc{color:var(--text-secondary);font-size:.9rem;max-width:500px;margin:0 auto;line-height:1.6}.landing-section-title{font-family:"Press Start 2P",monospace;font-size:.7rem;color:var(--text-secondary);text-align:center;margin-bottom:2rem;letter-spacing:2px}.landing-leagues{max-width:1000px;margin:0 auto;padding:1.5rem 1.5rem 2.5rem}.league-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.league-card{position:relative;overflow:hidden;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2.25rem 2rem;text-align:center;transition:all .3s}.league-card:hover{border-color:var(--lc-primary);transform:translateY(-4px);box-shadow:0 8px 30px #0000004d}.league-card--disabled{opacity:.5}.league-card--disabled:hover{transform:none;border-color:var(--border);box-shadow:none}.league-card-glow{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--lc-primary),transparent);opacity:0;transition:opacity .3s}.league-card:hover .league-card-glow{opacity:1}.league-card-name{font-family:"Press Start 2P",monospace;font-size:.7rem;color:var(--lc-primary);margin-bottom:1rem;line-height:1.6}.league-card-desc{color:var(--text-secondary);font-size:.85rem;margin-bottom:1.25rem;line-height:1.5}.league-card-new-badge{position:absolute;top:.75rem;right:.75rem;font-family:"Press Start 2P",monospace;font-size:.35rem;color:#fff;background:var(--lc-primary);padding:.25rem .5rem;border-radius:3px;letter-spacing:1px;animation:newBadgePulse 2s ease-in-out infinite}@keyframes newBadgePulse{0%,to{opacity:1}50%{opacity:.7}}.league-card-badge{font-family:"Press Start 2P",monospace;font-size:.4rem;color:var(--text-secondary);border:1px solid var(--border);padding:.4rem .8rem;border-radius:20px;letter-spacing:1px}.league-card-links{position:relative;z-index:1;display:flex;justify-content:center;gap:.9rem;margin-bottom:1.25rem}.league-card-link{font-family:"Press Start 2P",monospace;font-size:.4rem;color:var(--text-secondary);letter-spacing:1px;padding:.35rem .1rem;border-bottom:1px solid transparent;transition:color .15s,border-color .15s}.league-card-link:hover{color:var(--lc-primary);border-bottom-color:var(--lc-primary)}.league-card-cta{display:inline-block;font-family:"Press Start 2P",monospace;font-size:.5rem;color:var(--lc-primary);letter-spacing:1px;transition:letter-spacing .3s}.league-card-cta:after{content:"";position:absolute;inset:0}.league-card:hover .league-card-cta{letter-spacing:3px}.landing-how{max-width:1000px;margin:0 auto;padding:1.5rem 1.5rem 2.5rem}.how-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.how-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem 1.5rem;text-align:center}.how-icon{font-size:2rem;margin-bottom:1rem;opacity:.6}.how-title{font-family:"Press Start 2P",monospace;font-size:.55rem;color:var(--dp-gold);margin-bottom:1rem;line-height:1.6}.how-desc{color:var(--text-secondary);font-size:.85rem;line-height:1.6}.landing-stats{display:flex;justify-content:center;gap:4rem;padding:2rem 1.5rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border);max-width:600px;margin:0 auto}.stat-item-landing{display:flex;flex-direction:column;align-items:center;gap:.5rem}.stat-number{font-family:"Press Start 2P",monospace;font-size:1.5rem;color:var(--dp-gold)}.stat-label-landing{font-family:"Press Start 2P",monospace;font-size:.4rem;color:var(--text-secondary);letter-spacing:1px;text-transform:uppercase}@media(max-width:768px){.landing-title{font-size:1.3rem}.landing-tagline{font-size:.65rem}.landing-desc{font-size:.8rem}.landing-hero{padding:1.9rem 1rem 1.4rem}.league-cards{grid-template-columns:1fr}.landing-stats{gap:2rem}.stat-number{font-size:1.1rem}}@media(max-width:480px){.landing-title{font-size:1rem;letter-spacing:2px}.landing-hero{padding:1.6rem .75rem 1.2rem}.league-card{padding:1.75rem 1.25rem}.how-cards{grid-template-columns:1fr}}.game-bug{position:fixed;bottom:1rem;right:1rem;z-index:1000;font-family:"Press Start 2P",monospace;animation:gameBugSlideIn .4s ease-out}.game-bug-card{background:#0a0a14eb;border:2px solid rgba(255,23,68,.5);border-radius:6px;padding:.5rem .625rem;min-width:170px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;transition:border-color .3s,transform .15s;animation:gameBugPulse 2.5s ease-in-out infinite}.game-bug-card:hover{border-color:#ff1744cc;transform:scale(1.02)}.game-bug-card--final{border-color:#ffd1004d;animation:none}.game-bug-card--final:hover{border-color:#ffd10099}.game-bug-header{display:flex;align-items:center;gap:.375rem;margin-bottom:.375rem}.game-bug-live{font-size:.3rem;color:#ff1744;background:#ff174426;padding:.125rem .3rem;border-radius:3px;animation:gameBugBlink 1.5s ease-in-out infinite;white-space:nowrap}.game-bug-final-badge{font-size:.3rem;color:var(--wbc-gold);background:#ffd1001a;padding:.125rem .3rem;border-radius:3px;white-space:nowrap}.game-bug-inning{font-size:.3rem;color:var(--text-secondary);margin-left:auto}.game-bug-outs{display:flex;gap:3px;align-items:center}.game-bug-out-dot{width:6px;height:6px;border-radius:50%;background:#ffffff1f}.game-bug-out-dot--active{background:var(--wbc-gold)}.game-bug-close{font-size:.35rem;color:var(--text-secondary);background:none;border:none;cursor:pointer;padding:0 .125rem;margin-left:.25rem;opacity:.4;transition:opacity .15s;font-family:"Press Start 2P",monospace;line-height:1}.game-bug-close:hover{opacity:1;color:#ff1744}.game-bug-team{display:flex;align-items:center;gap:.375rem;margin-bottom:.2rem}.game-bug-team:last-child{margin-bottom:0}.game-bug-badge{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.game-bug-badge-text{font-size:.2rem}.game-bug-code{font-size:.35rem;min-width:2.5rem}.game-bug-code--batting{color:#fff}.game-bug-code--field{color:var(--text-secondary)}.game-bug-score{font-size:.6rem;color:#fff;margin-left:auto;min-width:1.5rem;text-align:right}.game-bug-nav{display:flex;justify-content:center;gap:4px;margin-top:.375rem}.game-bug-nav-dot{width:5px;height:5px;border-radius:50%;background:#ffffff26;border:none;padding:0;cursor:pointer;transition:background .15s}.game-bug-nav-dot--active{background:var(--wbc-gold)}@keyframes gameBugSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes gameBugPulse{0%,to{border-color:#ff174466}50%{border-color:#ff1744b3}}@keyframes gameBugBlink{0%,to{opacity:1}50%{opacity:.3}}@media(max-width:480px){.game-bug{bottom:.75rem;right:.5rem;left:.5rem}.game-bug-card{min-width:0}}.mlb-game-bug{position:fixed;bottom:1rem;right:1rem;z-index:1000;font-family:"Press Start 2P",monospace;animation:mlbGameBugSlideIn .4s ease-out}.mlb-game-bug-card{background:#0a0a14eb;border:2px solid rgba(214,69,69,.5);border-radius:6px;padding:.5rem .625rem;min-width:180px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;transition:border-color .3s,transform .15s;animation:mlbGameBugPulse 2.5s ease-in-out infinite}.mlb-game-bug-card:hover{border-color:#d64545cc;transform:scale(1.02)}.mlb-game-bug-card--final{border-color:#0b1f3a80;animation:none}.mlb-game-bug-card--final:hover{border-color:#0b1f3acc}.mlb-game-bug-header{display:flex;align-items:center;gap:.375rem;margin-bottom:.375rem}.mlb-game-bug-live{font-size:.3rem;color:#d64545;background:#d6454526;padding:.125rem .3rem;border-radius:3px;animation:mlbGameBugBlink 1.5s ease-in-out infinite;white-space:nowrap}.mlb-game-bug-final-badge{font-size:.3rem;color:var(--accent-secondary, #0B1F3A);background:#0b1f3a33;padding:.125rem .3rem;border-radius:3px;white-space:nowrap;color:#8ab4f8}.mlb-game-bug-inning{font-size:.3rem;color:var(--text-secondary);margin-left:auto}.mlb-game-bug-outs{display:flex;gap:3px;align-items:center}.mlb-game-bug-out-dot{width:6px;height:6px;border-radius:50%;background:#ffffff1f}.mlb-game-bug-out-dot--active{background:#d64545}.mlb-game-bug-close{font-size:.35rem;color:var(--text-secondary);background:none;border:none;cursor:pointer;padding:0 .125rem;margin-left:.25rem;opacity:.4;transition:opacity .15s;font-family:"Press Start 2P",monospace;line-height:1}.mlb-game-bug-close:hover{opacity:1;color:#d64545}.mlb-game-bug-team{display:flex;align-items:center;gap:.375rem;margin-bottom:.2rem}.mlb-game-bug-team:last-child{margin-bottom:0}.mlb-game-bug-code{font-size:.35rem;min-width:3.5rem}.mlb-game-bug-code--batting{color:#fff}.mlb-game-bug-code--field{color:var(--text-secondary)}.mlb-game-bug-score{font-size:.6rem;color:#fff;margin-left:auto;min-width:1.5rem;text-align:right}.mlb-game-bug-nav{display:flex;justify-content:center;gap:4px;margin-top:.375rem}.mlb-game-bug-nav-dot{width:5px;height:5px;border-radius:50%;background:#ffffff26;border:none;padding:0;cursor:pointer;transition:background .15s}.mlb-game-bug-nav-dot--active{background:#d64545}@keyframes mlbGameBugSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes mlbGameBugPulse{0%,to{border-color:#d6454566}50%{border-color:#d64545b3}}@keyframes mlbGameBugBlink{0%,to{opacity:1}50%{opacity:.3}}@media(max-width:480px){.mlb-game-bug{bottom:.75rem;right:.5rem;left:.5rem}.mlb-game-bug-card{min-width:0}}:root{--dp-navy: #0B1F3A;--dp-green: #2E7D32;--dp-sand: #E6D3A3;--dp-offwhite: #F4F1E8;--dp-red: #D64545;--dp-gold: #C9A227;--bg-primary: #0a0a0a;--bg-secondary: #141414;--bg-card: #1c1c1c;--bg-surface: #1a1a2e;--text-primary: #f5f5f5;--text-secondary: #999;--border: #2a2a2a;--radius: 12px;--radius-sm: 6px;--accent-primary: var(--dp-gold);--accent-secondary: var(--dp-navy);--border-active: var(--accent-primary);--tier-1: #8B7355;--tier-2: #A0522D;--tier-3: #CD853F;--tier-4: #4CAF50;--tier-5: #2196F3;--tier-6: #9C27B0;--tier-7: #FFD700;--card-gold: #C9A84C;--card-gold-light: #D4B65A;--card-gold-dark: #A8893B;--card-gold-dim: #8B7D4A;--win: #00C853;--loss: #FF1744;--draw: #d4a017;--bg-card-inner: #1a1a1a;--card-image-bg: linear-gradient(180deg, #2a2a2a 0%, #1a1a1a 100%);--skeleton-muted: #232323;--skeleton-accent: #2a2a2a;--skeleton-image: linear-gradient(180deg, #252525 0%, #1e1e1e 100%);--entity-primary: #333;--entity-secondary: #555;--entity-accent: #777;--entity-text: #fff}.league-spring{--accent-primary: #d4a017;--accent-secondary: #1a2744;--border-active: var(--accent-primary);--st-navy: #1a2744;--st-blue: #2563eb;--st-red: #dc2626;--st-gold: #d4a017;--st-green: #16a34a;--st-sky: #38bdf8}.league-wbc{--accent-primary: #D4AA1E;--accent-secondary: #002D72;--border-active: var(--accent-primary);--wbc-navy: #002D72;--wbc-blue: #0057B8;--wbc-red: #C8102E;--wbc-gold: #D4AA1E;--wbc-gold-bright: #FFD100;--wbc-green: #00843D}.league-mlb{--accent-primary: #D64545;--accent-secondary: #0B1F3A;--border-active: var(--accent-primary);--mlb-navy: #0B1F3A;--mlb-blue: #002D72;--mlb-red: #D64545;--mlb-gold: #C9A227;--mlb-white: #FFFFFF;--mlb-green: #2E7D32}[data-theme=light]{--bg-primary: #F4F1E8;--bg-secondary: #EDE8DA;--bg-card: #FFFFFF;--bg-surface: #F8F6F0;--text-primary: #1a1a1a;--text-secondary: #555;--text-muted: #888;--border: #ddd;--bg-card-inner: #f5f5f5;--card-image-bg: linear-gradient(180deg, #e8e8e8 0%, #f5f5f5 100%);--skeleton-muted: #e0e0e0;--skeleton-accent: #d5d5d5;--skeleton-image: linear-gradient(180deg, #e0e0e0 0%, #eaeaea 100%)}@media(prefers-color-scheme:light){:root:not([data-theme]){--bg-primary: #F4F1E8;--bg-secondary: #EDE8DA;--bg-card: #FFFFFF;--bg-surface: #F8F6F0;--text-primary: #1a1a1a;--text-secondary: #555;--text-muted: #888;--border: #ddd;--bg-card-inner: #f5f5f5;--card-image-bg: linear-gradient(180deg, #e8e8e8 0%, #f5f5f5 100%);--skeleton-muted: #e0e0e0;--skeleton-accent: #d5d5d5;--skeleton-image: linear-gradient(180deg, #e0e0e0 0%, #eaeaea 100%)}}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,.pixel-font{font-family:"Press Start 2P",monospace}a{color:inherit;text-decoration:none}#root{min-height:100vh;display:flex;flex-direction:column}.page-container{max-width:1200px;margin:0 auto;padding:2rem 1.5rem;width:100%}.page-header{margin-bottom:2rem}.page-title{font-size:1.25rem;color:var(--accent-primary);margin-bottom:.75rem;line-height:1.6}.page-subtitle{color:var(--text-secondary);font-size:.875rem;line-height:1.6}.placeholder-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:3rem 2rem;text-align:center}.placeholder-card .placeholder-icon{font-size:3rem;margin-bottom:1.5rem;opacity:.3}.placeholder-card .placeholder-text{color:var(--text-secondary);font-size:.75rem;font-family:"Press Start 2P",monospace;line-height:2}.roster-stat-pill{display:flex;flex-direction:column;align-items:center;gap:.25rem;font-family:"Press Start 2P",monospace}@keyframes spin{to{transform:rotate(360deg)}}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,240px));gap:1.25rem;padding:1.5rem 0}.roster-stats-row{display:flex;gap:1.5rem;margin-bottom:.5rem;flex-wrap:wrap;align-items:center}.cal-filter-btn{font-family:"Press Start 2P",monospace;font-size:.45rem;padding:.4rem .6rem;background:transparent;border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;transition:all .15s}.cal-filter-btn:hover{background:#ffffff0d;color:var(--text-primary)}.cal-filter-btn.active{color:#fff}[data-theme=light] .tier-4-frame .card-stats-bar .primary-stat .stat-value,[data-theme=light] .tier-4-frame .card-stats-bar .stat-item .stat-value{color:var(--entity-primary-dark, var(--entity-primary, inherit))}[data-theme=light] .league-nav-link{color:#00000080}[data-theme=light] .league-nav-link:hover{color:#000c;background:#0000000d}[data-theme=light] .league-nav-link--active{color:var(--accent-primary);background:#0000000d}[data-theme=light] .league-season-picker{background:#0000000f;color:#000c;border-color:#00000026}[data-theme=light] .league-season-picker:hover{background:#0000001a;border-color:#00000040}[data-theme=light] .league-season-picker option{background:var(--bg-secondary);color:var(--text-primary)}[data-theme=light] .league-hamburger span{background:#0009}[data-theme=light] .standings-row:not(:last-child) .standings-cell{border-bottom-color:#0000000f}[data-theme=light] .game-log-table td{border-bottom-color:#00000014}@media(max-width:768px){.page-container{padding:1.5rem 1rem}.page-title{font-size:1rem}.card-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.roster-stats-row{gap:1rem}}@media(max-width:480px){.page-container{padding:1rem .75rem}.page-title{font-size:.85rem}.page-subtitle{font-size:.75rem}.card-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.roster-stats-row{gap:.75rem;justify-content:center}.roster-stat-pill{font-size:.625rem}}
