.tt-card-tilt{transform-style:preserve-3d;perspective:var(--tt-card-perspective);transition:transform var(--tt-dur-instant) var(--tt-ease-snap),box-shadow var(--tt-dur-instant) var(--tt-ease-snap);will-change:transform}.tt-card-tilt:hover{transform:perspective(var(--tt-card-perspective)) rotateX(var(--tt-tilt-x,0deg)) rotateY(var(--tt-tilt-y,0deg)) translateZ(8px);box-shadow:0 0 0 1px var(--tt-accent),0 0 24px 4px color-mix(in oklab,var(--tt-accent) 40%,transparent)}.tt-card-tilt--gold:hover{box-shadow:0 0 0 1px var(--tt-gold),0 0 32px 6px color-mix(in oklab,var(--tt-gold) 40%,transparent)}.tt-touch-target{position:relative}.tt-touch-target:after{content:"";position:absolute;inset:max(0px,calc((44px - 100%) / 2));min-width:44px;min-height:44px;pointer-events:none}[data-league=tccatest] .tt-interactive,[data-league=tccatest] a,[data-league=tccatest] button{transition:transform var(--tt-dur-instant) var(--tt-ease-snap),filter var(--tt-dur-instant) var(--tt-ease-snap)}[data-league=tccatest] .tt-interactive:active,[data-league=tccatest] a:active,[data-league=tccatest] button:active{transform:scale(.97);filter:saturate(1.4)}.tt-chip{display:inline-flex;align-items:center;height:32px;border-radius:16px;border:1px solid var(--color-border);background:transparent;color:var(--color-muted-foreground);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:background var(--tt-dur-quick) var(--tt-ease-snap),border-color var(--tt-dur-quick) var(--tt-ease-snap),color var(--tt-dur-quick) var(--tt-ease-snap),transform var(--tt-dur-instant) var(--tt-ease-snap);min-height:44px;padding:0 16px}.tt-chip:hover{border-color:var(--tt-accent);color:var(--tt-accent)}.tt-chip:active{transform:scale(.97);filter:saturate(1.4)}.tt-chip--active,.tt-chip[aria-pressed=true]{background:var(--tt-accent);border-color:var(--tt-accent);color:#ffffff}.tt-chip:focus-visible{outline:2px solid var(--tt-accent);outline-offset:2px}@keyframes tt-card-enter{0%{opacity:0;transform:perspective(800px) rotateY(-12deg) scale(.7) translateY(24px);filter:blur(4px)}55%{opacity:1;transform:perspective(800px) rotateY(4deg) scale(1.05) translateY(-4px);filter:blur(0)}78%{transform:perspective(800px) rotateY(-2deg) scale(.98) translateY(2px)}to{opacity:1;transform:perspective(800px) rotateY(0deg) scale(1) translateY(0);filter:blur(0)}}.tt-stagger-grid>.tt-grid-item{animation:tt-card-enter var(--tt-dur-flow) var(--tt-ease-spring) both;animation-delay:calc(var(--tt-stagger-i, 0) * var(--tt-stagger-base, 60ms))}@keyframes tt-skeleton-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.tt-player-skeleton{width:var(--fifa-card-w,240px);height:var(--fifa-card-h,360px);border-radius:var(--fifa-card-r,10px);background:var(--color-muted);background-image:linear-gradient(90deg,var(--color-muted) 0,color-mix(in oklab,var(--color-muted) 70%,var(--tt-accent) 30%) 50%,var(--color-muted) 100%);background-size:800px 100%;animation:tt-skeleton-shimmer var(--tt-shimmer-duration,2.6s) linear infinite;position:relative;overflow:hidden}.tt-player-skeleton:before{top:12px;left:12px;width:44px;height:52px;border-radius:4px}.tt-player-skeleton:after,.tt-player-skeleton:before{content:"";position:absolute;background:color-mix(in oklab,var(--color-muted) 50%,transparent)}.tt-player-skeleton:after{top:70px;left:50%;transform:translateX(-50%);width:120px;height:140px;border-radius:6px}.tt-player-skeleton-stats{position:absolute;bottom:20px;left:12px;right:12px;display:flex;flex-direction:column;gap:6px}.tt-player-skeleton-stats span{display:block;height:8px;border-radius:4px;background:color-mix(in oklab,var(--color-muted) 50%,transparent)}@keyframes tt-gold-bar-indeterminate{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.tt-refresh-bar{position:fixed;top:0;left:0;right:0;height:3px;background:var(--tt-gold);z-index:9999;overflow:hidden;opacity:0;transition:opacity var(--tt-dur-quick) var(--tt-ease-soft)}.tt-refresh-bar--active{opacity:1}.tt-refresh-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0,color-mix(in oklab,var(--tt-gold) 60%,white) 50%,transparent 100%);animation:tt-gold-bar-indeterminate var(--tt-dur-flow) var(--tt-ease-soft) infinite}@keyframes tt-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(4px)}}.tt-error-shake{animation:tt-shake .32s var(--tt-ease-snap) both}@keyframes tt-success-bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-6px)}70%{transform:translateY(2px)}}.tt-success-bounce{animation:tt-success-bounce .36s var(--tt-ease-spring) both}.tt-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:64px 24px;text-align:center}.tt-empty-state__icon{font-size:48px;opacity:.5;animation:tt-card-enter var(--tt-dur-cinematic) var(--tt-ease-spring) both}.tt-empty-state__title{font-size:18px;font-weight:700;color:var(--color-foreground)}.tt-empty-state__desc{font-size:14px;color:var(--color-muted-foreground);max-width:28ch}.tt-team-skeleton{aspect-ratio:1/1.3;border-radius:8px;background:var(--color-muted,#1a1a1a);background-image:linear-gradient(90deg,var(--color-muted,#1a1a1a) 0,color-mix(in oklab,var(--color-muted,#1a1a1a) 70%,var(--tt-accent) 30%) 50%,var(--color-muted,#1a1a1a) 100%);background-size:800px 100%;animation:tt-skeleton-shimmer var(--tt-shimmer-duration,2.6s) linear infinite;position:relative;overflow:hidden}.tt-team-skeleton:before{top:28px;left:50%;transform:translateX(-50%);width:56px;height:56px;border-radius:50%}.tt-team-skeleton:after,.tt-team-skeleton:before{content:"";position:absolute;background:color-mix(in oklab,var(--color-muted,#1a1a1a) 50%,transparent)}.tt-team-skeleton:after{bottom:28px;left:16px;right:16px;height:36px;border-radius:4px}.tt-stat-reveal{opacity:0;transition:opacity var(--tt-dur-quick) var(--tt-ease-soft) 80ms}.tt-card-tilt:hover .tt-stat-reveal{opacity:1}@keyframes tt-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes tt-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes tt-scroll-cue{0%{transform:translateX(-50%) translateY(0);opacity:.4}to{transform:translateX(-50%) translateY(8px);opacity:.15}}[data-league=tccatest] :focus-visible{outline:2px solid var(--tt-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.tt-card-tilt:hover{transform:none;box-shadow:0 0 0 1px var(--tt-accent)}.tt-card-tilt--gold:hover{transform:none;box-shadow:0 0 0 1px var(--tt-gold)}.tt-team-skeleton{animation:none!important;background-image:none!important}.tt-stat-reveal{opacity:1!important;transition:none!important}.tt-stagger-grid>.tt-grid-item{animation:none!important;opacity:1!important;transform:none!important}.tt-player-skeleton{background-image:none!important}.tt-empty-state__icon,.tt-error-shake,.tt-player-skeleton,.tt-refresh-bar:after,.tt-success-bounce{animation:none!important}.tt-empty-state__icon{opacity:.5!important}[data-league=tccatest] .fifa-holo-overlay,[data-league=tccatest] .fifa-holo-overlay:before{animation:none!important;background:linear-gradient(135deg,color-mix(in oklab,var(--tt-foil-cyan) 30%,transparent),color-mix(in oklab,var(--tt-foil-magenta) 30%,transparent),color-mix(in oklab,var(--tt-foil-gold,var(--fifa-foil-3)) 25%,transparent))!important;background-size:100% 100%!important;filter:none!important}[data-league=tccatest] .fifa-holo-overlay:after{animation:none!important;opacity:calc(var(--hf-sparkle-opacity, 0) * .35)!important}.tcca-card__rating{transition:none!important}.tt-card-enter,.tt-section-reveal,.tt-squad-card-enter,.tt-stagger>*{animation:none!important;opacity:1!important;transform:none!important}.tt-runrate-bar-fill{animation:none!important;transform:none!important}.tt-team-sticky-header{transition:none!important}}@keyframes tt-logo-reveal{0%{opacity:0;transform:scale(.6) translateY(16px);filter:blur(8px)}60%{opacity:1;filter:blur(0);transform:scale(1.06) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0);filter:blur(0)}}.tt-team-logo-reveal{animation:tt-logo-reveal var(--tt-dur-cinematic) var(--tt-ease-spring) both}@keyframes tt-name-reveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.tt-team-name-reveal{animation:tt-name-reveal var(--tt-dur-flow) var(--tt-ease-soft) var(--tt-stagger-base) both}.tt-stats-trio-item{animation:tt-name-reveal var(--tt-dur-flow) var(--tt-ease-soft) both;animation-delay:calc(var(--tt-stagger-i, 0) * var(--tt-stagger-base) + .16s)}@keyframes tt-squad-card-enter{0%{opacity:0;transform:perspective(var(--tt-card-perspective)) rotateY(-16deg) scale(.72) translateY(32px);filter:blur(6px)}55%{opacity:1;transform:perspective(var(--tt-card-perspective)) rotateY(4deg) scale(1.04) translateY(-4px);filter:blur(0)}80%{transform:perspective(var(--tt-card-perspective)) rotateY(-1deg) scale(.99) translateY(2px)}to{opacity:1;transform:perspective(var(--tt-card-perspective)) rotateY(0deg) scale(1) translateY(0);filter:blur(0)}}.tt-squad-card-enter{animation:tt-squad-card-enter var(--tt-dur-flow) var(--tt-ease-spring) both;animation-delay:calc(var(--tt-stagger-i, 0) * var(--tt-stagger-base))}.tt-squad-grid:hover .tt-squad-card-enter:not(:hover){opacity:.45;filter:saturate(.5);transition:opacity var(--tt-dur-quick) var(--tt-ease-soft),filter var(--tt-dur-quick) var(--tt-ease-soft)}.tt-squad-grid .tt-squad-card-enter:hover{opacity:1!important;filter:saturate(1)!important;transition:none}@keyframes tt-section-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.tt-section-reveal{animation:tt-section-up var(--tt-dur-flow) var(--tt-ease-soft) both;animation-delay:calc(var(--tt-stagger-i, 0) * var(--tt-stagger-base))}@keyframes tt-bar-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.tt-runrate-bar-fill{transform-origin:bottom center;animation:tt-bar-grow var(--tt-dur-flow) var(--tt-ease-spring) both;animation-delay:calc(var(--tt-stagger-i, 0) * var(--tt-stagger-base))}.tt-result-badge{animation:tt-card-enter var(--tt-dur-flow) var(--tt-ease-spring) both;animation-delay:calc(var(--tt-stagger-i, 0) * var(--tt-stagger-base))}.tt-team-sticky-header{position:fixed;top:0;left:0;right:0;z-index:100;height:56px;display:flex;align-items:center;gap:10px;padding:0 16px;background:color-mix(in oklab,var(--color-background,#0a0b0c) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid color-mix(in oklab,var(--tt-accent) 20%,transparent);transform:translateY(-100%);transition:transform var(--tt-dur-quick) var(--tt-ease-snap);pointer-events:none}.tt-team-sticky-header--visible{transform:translateY(0);pointer-events:auto}.tt-squad-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:8px 16px 20px;-ms-overflow-style:none;scrollbar-width:none}.tt-squad-carousel::-webkit-scrollbar{display:none}.tt-squad-carousel-item{scroll-snap-align:center;flex:0 0 80vw;max-width:320px}@keyframes tt-winner-slide{0%{opacity:.6;transform:translateX(8px) scale(.97);filter:brightness(.7)}60%{opacity:1;transform:translateX(-2px) scale(1.02);filter:brightness(1.2)}to{opacity:1;transform:translateX(0) scale(1);filter:brightness(1)}}@keyframes tt-tbd-pulse{0%,to{opacity:.4;background-color:var(--color-muted)}50%{opacity:.65;background-color:color-mix(in oklab,var(--color-muted) 70%,var(--tt-accent) 30%)}}.tt-bracket-slot--drag-over{border-color:var(--tt-accent)!important;background:color-mix(in oklab,var(--tt-accent) 8%,transparent)!important;box-shadow:0 0 0 1px var(--tt-accent),0 0 16px 2px color-mix(in oklab,var(--tt-accent) 20%,transparent)}.tt-bracket-holo{position:absolute;inset:0;border-radius:6px;pointer-events:none;z-index:0}@media (prefers-reduced-motion:reduce){@keyframes tt-winner-slide{0%{opacity:1;transform:none;filter:none}to{opacity:1;transform:none;filter:none}}@keyframes tt-tbd-pulse{0%,to{opacity:.5}}.tt-scrim-in,.tt-sheet-in{animation:none!important;opacity:1!important;transform:none!important}.tt-scroll-cue{animation:none!important;opacity:.4!important;transform:translateX(-50%)!important}.tt-canvas-field-enter,.tt-cinematic-entrance,.tt-stadium-backdrop,.tt-stats-overlay-panel{animation:none!important;opacity:1!important;transform:none!important;filter:none!important}}@keyframes tt-cinematic-fade-out{0%{opacity:1}80%{opacity:1}to{opacity:0;pointer-events:none}}@keyframes tt-canvas-field-enter{0%{opacity:0;transform:scale(.6);filter:blur(16px)}60%{opacity:1;transform:scale(1.04);filter:blur(0)}to{opacity:1;transform:scale(1);filter:blur(0)}}.tt-canvas-field-enter{animation:tt-canvas-field-enter var(--tt-dur-cinematic,.8s) var(--tt-ease-spring,cubic-bezier(.34,1.56,.64,1)) .4s both}@keyframes tt-stats-panel-left{0%{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:translateX(0)}}@keyframes tt-stats-panel-right{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}.tt-canvas-stats-scorer,.tt-canvas-stats-wlt{animation:tt-stats-panel-left var(--tt-dur-flow,.4s) var(--tt-ease-soft,ease-out) .9s both}.tt-canvas-stats-pts,.tt-canvas-stats-wickets{animation:tt-stats-panel-right var(--tt-dur-flow,.4s) var(--tt-ease-soft,ease-out) 1s both}@keyframes tt-admin-slot-pulse{0%,to{opacity:1}50%{opacity:.55}}.tt-admin-slot-pencil{animation:tt-admin-slot-pulse 2s ease-in-out infinite}[data-cricket-field] g[role=button]:hover circle:first-of-type{transform:scale(1.12);transform-origin:center;transition:transform var(--tt-dur-quick,.2s) var(--tt-ease-spring,cubic-bezier(.34,1.56,.64,1))}@keyframes tt-stadium-ambient{0%,to{opacity:.6}50%{opacity:1}}.tt-stadium-backdrop{animation:tt-stadium-ambient 4s ease-in-out infinite}[draggable=true]:active{opacity:.5;cursor:grabbing}@media (prefers-reduced-motion:reduce){.tt-admin-slot-pencil,.tt-canvas-field-enter,.tt-canvas-stats-pts,.tt-canvas-stats-scorer,.tt-canvas-stats-wickets,.tt-canvas-stats-wlt,.tt-cinematic-entrance,.tt-stadium-backdrop,.tt-stats-overlay-panel{animation:none!important;opacity:1!important;transform:none!important;filter:none!important}}