body[data-page="cups"] { --gold: #ffcf5a; --gold-2: #e8a91f; --ruby: #e0304f; --ruby-2: #8e1a33; --mint: #6ff5c4; }
.tc {
    position: relative; overflow: hidden; border-radius: var(--r-xl); height: 700px;
    background: #1a0a1f;
    box-shadow: var(--sh-screen), 0 0 0 1px rgba(255,207,90,.28), 0 0 40px -8px rgba(224,48,79,.4);
    isolation: isolate; user-select: none; -webkit-user-select: none;
}
.tc-booth { position: absolute; inset: -8px; z-index: 0; pointer-events: none;
    background: url(../assets/art/cups/booth.webp) 50% 30% / cover no-repeat;
    filter: saturate(1.05) brightness(.82); transform: scale(1.02); transition: filter .6s; }
.tc-booth::after { content: ''; position: absolute; inset: 0; transition: opacity .5s;
    background: radial-gradient(70% 55% at 50% 38%, transparent 40%, rgba(20,6,24,.55) 100%), linear-gradient(180deg, rgba(20,6,24,.2), transparent 30%, rgba(20,6,24,.35) 62%); }

.tc.is-blitz .tc-booth { filter: saturate(.8) brightness(.5); }
.tc.is-blitz .tc-row { transform: scale(1.035); }
.tc-row { transition: transform .5s cubic-bezier(.3,.8,.4,1); transform-origin: 50% var(--by, 80%); }

.tc-lion { position: absolute; z-index: 1; pointer-events: none; left: 50%; translate: -50% 0;
    top: calc(var(--ty, 60%) - var(--lh, 360px) * .94); width: var(--lh, 360px); height: var(--lh, 360px); }
.tc-lion canvas, .tc-lion-poster { position: absolute; inset: 0; width: 100%; height: 100%; }
.tc-lion-poster { object-fit: contain; transition: opacity .3s; }
.tc-lion.on .tc-lion-poster { opacity: 0; }

.tc-lion::before { content: ''; position: absolute; left: -30%; right: -30%; top: -20%; bottom: 0; z-index: -1;
    background: radial-gradient(45% 55% at 50% 45%, rgba(255,214,140,.22), transparent 70%); }

.tc-table { position: absolute; left: 0; right: 0; top: var(--ty, 60%); bottom: 0; z-index: 2; pointer-events: none; }
.tc-cloth { position: absolute; left: 0; right: 0; top: 0; height: calc(var(--dt, 85%) - var(--ty, 60%));
    clip-path: polygon(5% 0, 95% 0, 100% 100%, 0 100%);
    background:
        radial-gradient(60% 90% at 50% 70%, rgba(255,120,140,.2), transparent 70%),
        repeating-linear-gradient(100deg, rgba(0,0,0,.05) 0 3px, transparent 3px 9px),
        linear-gradient(180deg, #4a0b1e 0%, #7a1530 45%, #9c1f3a 100%); }

.tc-cloth::before { content: ''; position: absolute; left: 5%; right: 5%; top: 0; height: 3px;
    background: linear-gradient(90deg, transparent, #ffe8a3, var(--gold), #ffe8a3, transparent); box-shadow: 0 0 10px rgba(255,207,90,.6); }

.tc-fringe { position: absolute; left: 0; right: 0; bottom: 0; top: calc(var(--dt, 85%) - var(--ty, 60%));
    background:
        linear-gradient(180deg, rgba(0,0,0,.35), transparent 22%),
        repeating-linear-gradient(90deg, rgba(0,0,0,.28) 0, rgba(255,255,255,.05) 22px, rgba(0,0,0,.28) 44px),
        linear-gradient(180deg, #8a1830, #5a0e20 70%, #3a0816);
    box-shadow: 0 -2px 0 #ffd873, 0 -5px 0 #b8801c, 0 -8px 18px rgba(255,190,60,.25); }
.tc-fringe::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 16px;
    background: radial-gradient(circle at 50% 0, #ffe8a3 0 3px, #e8a91f 3.5px 6px, transparent 6.5px) 0 0 / 14px 12px repeat-x,
                repeating-linear-gradient(90deg, rgba(255,207,90,.85) 0 2px, transparent 2px 7px);
    -webkit-mask: linear-gradient(180deg, #000 60%, transparent); mask: linear-gradient(180deg, #000 60%, transparent); }

.tc-bump { position: absolute; left: 0; top: 0; z-index: 3; pointer-events: none; opacity: 0; transition: opacity .15s;
    width: calc(var(--cw, 100px) * .62); height: calc(var(--cw, 100px) * .3);
    border-radius: 50% 50% 38% 38% / 95% 95% 18% 18%; transform-origin: 50% 100%;
    background: radial-gradient(ellipse at 45% 25%, #d23a5a, #8e1a33 65%, #6a1227); box-shadow: 0 4px 8px rgba(0,0,0,.35), inset 0 2px 3px rgba(255,160,180,.35); }
.tc-bump.on { opacity: 1; }

.tc-row { position: absolute; inset: 0; z-index: 4; pointer-events: none; }
.tc-cup { position: absolute; left: 0; top: 0; width: var(--cw, 100px); height: var(--ch, 150px); padding: 0; border: 0; background: none;
    transform-origin: 50% 100%; pointer-events: auto; cursor: default; -webkit-tap-highlight-color: transparent; will-change: transform; }

.tc-cup::before { content: ''; position: absolute; left: calc((var(--gap, 120px) - var(--cw, 100px)) / -2); right: calc((var(--gap, 120px) - var(--cw, 100px)) / -2); top: -25%; bottom: -30%; }

.tc-cup img { position: relative; z-index: 1; display: block; width: 100%; height: 100%; pointer-events: none;
    filter: brightness(1) saturate(1) drop-shadow(0 8px 10px rgba(0,0,0,.35)) drop-shadow(0 0 0 rgba(255,207,90,0)); transition: transform .25s cubic-bezier(.3,1.5,.5,1); }

.tc-cup img.bl { position: absolute; z-index: 1; left: -30%; top: 0; width: 160%; height: 100%; max-width: none; opacity: 0;
    filter: none; transition: none; animation: none !important; transform: none !important; }
.tc-cup .sh { position: absolute; left: -14%; right: -14%; bottom: -7%; height: 16%; z-index: 0; border-radius: 50%;
    background: radial-gradient(closest-side, rgba(0,0,0,.55), transparent); transform-origin: 50% 50%; }
.tc-cup .no { position: absolute; z-index: 2; left: 50%; bottom: 12%; translate: -50% 0; min-width: 24px; height: 24px; padding: 0 6px; border-radius: 12px;
    font: 800 12px/24px Unbounded, sans-serif; color: #2a1606; background: linear-gradient(180deg, #fff1bf, var(--gold)); box-shadow: 0 2px 8px rgba(0,0,0,.4);
    opacity: 0; transform: scale(.6); transition: .25s; pointer-events: none; }
.tc-cup.can { cursor: pointer; }
.tc-cup.can .no { opacity: 1; transform: none; }
.tc-cup.can img { animation: tcAsk 1.6s ease-in-out infinite; }
.tc-cup.can:nth-child(2n) img { animation-delay: .2s; }
.tc-cup.can:nth-child(3n) img { animation-delay: .45s; }
@keyframes tcAsk { 50% { filter: brightness(1) saturate(1) drop-shadow(0 8px 10px rgba(0,0,0,.35)) drop-shadow(0 0 10px rgba(255,207,90,.55)); } }
@media (hover: hover) {
    .tc-cup.can:hover img { transform: translateY(-7%); filter: brightness(1) saturate(1) drop-shadow(0 14px 14px rgba(0,0,0,.35)) drop-shadow(0 0 14px rgba(255,207,90,.9)); animation: none; }
}
.tc-cup.can:active img { transform: translateY(-4%) scale(.97); }
.tc-cup:focus-visible { outline: none; }
.tc-cup:focus-visible img { filter: brightness(1) saturate(1) drop-shadow(0 0 0 #fff) drop-shadow(0 0 12px rgba(255,207,90,1)); }
.tc-cup.sel img { animation: none; filter: brightness(1) saturate(1) drop-shadow(0 8px 10px rgba(0,0,0,.35)) drop-shadow(0 0 16px rgba(255,207,90,1)); }
.tc-cup.sel .no { opacity: 1; transform: scale(1.12); }
.tc-cup.dim img { animation: none; filter: brightness(.55) saturate(.7) drop-shadow(0 8px 10px rgba(0,0,0,.35)) drop-shadow(0 0 0 rgba(255,207,90,0)); }

.tc-smoke { position: absolute; inset: 0; z-index: 40; width: 100%; height: 100%; pointer-events: none; }
.tc-cup { transition: opacity .2s; }
.tc.is-fog .tc-cup { opacity: .85; }

.tc-tosha { position: absolute; left: 0; top: 0; width: auto; height: 120px; pointer-events: none; opacity: 0; transition: opacity .12s;
    transform-origin: 50% 100%; filter: drop-shadow(0 8px 10px rgba(0,0,0,.4)); will-change: transform; }
.tc-tosha.on { opacity: 1; }
.tc-fx { position: absolute; inset: 0; z-index: 6; width: 100%; height: 100%; pointer-events: none; }

.tc-sign { position: absolute; left: 16px; top: 14px; z-index: 7; display: flex; align-items: center; gap: 9px; pointer-events: none;
    height: 40px; padding: 0 14px; border-radius: 12px; white-space: nowrap;
    background: linear-gradient(180deg, #5a1026, #2e0714);
    box-shadow: 0 0 0 2px #e8a91f, 0 0 0 4px rgba(60,10,24,.9), 0 0 22px -2px rgba(255,190,60,.55), inset 0 0 14px rgba(255,190,60,.18); }
.tc-sign b { font: 800 17px/1 Unbounded, sans-serif; letter-spacing: .03em; text-transform: uppercase; color: #fff4d6;
    text-shadow: 0 0 6px rgba(255,207,90,.9), 0 0 18px rgba(255,160,40,.6); }
.tc-sign b span { color: var(--gold); }
.tc-bulbs { width: 24px; height: 8px; background: radial-gradient(circle, #ffe27a 0 2.6px, transparent 3px) 0 50% / 8px 8px repeat-x;
    filter: drop-shadow(0 0 3px #ffc233); animation: tcChase .7s steps(2) infinite; }
.tc-bulbs.r { animation-direction: reverse; }
@keyframes tcChase { 50% { background-position: 4px 50%; } }
.tc[data-phase="win"] .tc-bulbs, .tc[data-phase="shuffle"] .tc-bulbs { animation-duration: .2s; }

.tc-level { position: absolute; left: 16px; top: 64px; z-index: 7; display: flex; align-items: center; gap: 6px; pointer-events: none;
    height: 28px; padding: 0 11px; border-radius: 10px; font: 700 12px/1 Manrope, sans-serif; color: rgba(255,255,255,.85);
    background: rgba(30,8,22,.66); box-shadow: inset 0 0 0 1px rgba(255,207,90,.25); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.tc-level b { font: 800 13px/1 Unbounded, sans-serif; color: #fff; }
.tc-level i { font: 800 12px/1 Unbounded, sans-serif; font-style: normal; color: var(--gold); }
.tc-x2 { position: absolute; left: 16px; top: 100px; z-index: 7; display: flex; align-items: center; gap: 7px; pointer-events: none;
    height: 30px; padding: 0 12px 0 6px; border-radius: 10px; color: #2a1606;
    background: linear-gradient(180deg, #fff3c4, var(--gold) 60%, var(--gold-2)); box-shadow: 0 0 18px rgba(255,190,40,.6);
    animation: tcX2 .5s cubic-bezier(.2,1.6,.4,1); }
.tc-x2 b { padding: 4px 6px; border-radius: 7px; font: 800 13px/1 Unbounded, sans-serif; color: var(--gold); background: #2e0714; }
.tc-x2 small { font: 800 11.5px/1 Manrope, sans-serif; }
@keyframes tcX2 { from { transform: scale(.4); opacity: 0; } }

.tc-hud { position: absolute; right: 16px; top: 16px; z-index: 7; display: flex; justify-content: flex-end; width: min(46%, 420px); pointer-events: none; }
.tc-recent { flex: 1; min-width: 0; display: flex; flex-direction: row; justify-content: flex-end;

    flex-wrap: wrap; align-content: flex-start; gap: 40px 6px; max-height: 28px; overflow: hidden; }
.tc-recent span { flex: none; display: flex; align-items: center; height: 28px; padding: 0 10px; border-radius: 10px;
    font: 800 11.5px/1 Unbounded, sans-serif; color: rgba(255,255,255,.6);
    background: rgba(30,8,22,.62); box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.tc-recent span.w { color: #05281b; background: linear-gradient(180deg, #d8fff0, var(--mint)); box-shadow: 0 4px 12px -6px rgba(111,245,196,.9); }
.tc-recent span.big { color: #2a1606; background: linear-gradient(180deg, #fff3c4, var(--gold)); box-shadow: 0 4px 14px -6px rgba(255,190,40,.9); }
.tc-recent span.s::after { content: '✦'; margin-left: 4px; color: #ffcf5a; font-size: 10px; }
.tc-recent span.w.s::after, .tc-recent span.big.s::after { color: #8e1a33; }
.tc-recent span.new { animation: tcChip .45s cubic-bezier(.3,1.6,.5,1); }
@keyframes tcChip { from { transform: translateX(24px) scale(.6); opacity: 0; } }

.tc-say { position: absolute; right: 3%; top: 20%; z-index: 8; max-width: min(28%, 280px); pointer-events: none;
    padding: 10px 14px; border-radius: 16px 16px 16px 4px; text-align: left;
    font: 700 13px/1.35 Manrope, sans-serif; color: #fff;
    background: rgba(40,10,26,.86); box-shadow: 0 10px 26px -12px rgba(0,0,0,.8), inset 0 0 0 1px rgba(255,207,90,.35);
    -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.tc-say.pop { animation: tcSay .4s cubic-bezier(.3,1.6,.5,1); }
@keyframes tcSay { from { transform: translateY(-8px) scale(.9); opacity: 0; } }

.tc-ask { position: absolute; left: 50%; bottom: max(12px, calc((100% - var(--dt, 85%)) / 2 - 22px)); z-index: 8; translate: -50% 0;
    display: flex; align-items: baseline; gap: 10px; pointer-events: none; white-space: nowrap;
    padding: 10px 18px; border-radius: 999px;
    background: linear-gradient(180deg, rgba(60,12,30,.92), rgba(30,6,16,.92));
    box-shadow: 0 0 0 2px rgba(255,207,90,.8), 0 0 26px -2px rgba(255,190,40,.55); animation: tcAskIn .45s cubic-bezier(.2,1.5,.4,1), tcAskPulse 1.6s ease-in-out .45s infinite; }
.tc-ask b { font: 800 17px/1 Unbounded, sans-serif; color: var(--gold); text-shadow: 0 0 12px rgba(255,190,40,.6); }
.tc-ask small { font: 700 12.5px/1 Manrope, sans-serif; color: rgba(255,255,255,.8); }
@keyframes tcAskIn { from { transform: translateY(14px) scale(.8); opacity: 0; } }
@keyframes tcAskPulse { 50% { box-shadow: 0 0 0 2px rgba(255,207,90,1), 0 0 36px 2px rgba(255,190,40,.7); } }

.tc-sneeze { position: absolute; left: 50%; top: 24%; z-index: 9; translate: -50% -50%; display: grid; justify-items: center; gap: 6px; pointer-events: none;
    padding: 12px 26px 13px; border-radius: 18px; text-align: center;
    background: linear-gradient(180deg, rgba(70,12,34,.94), rgba(34,6,18,.94));
    box-shadow: 0 0 0 2px rgba(255,226,122,.85), 0 0 40px 4px rgba(255,190,40,.45), 0 20px 50px -16px rgba(0,0,0,.8);
    animation: tcSneeze 1.5s cubic-bezier(.2,1.4,.4,1) forwards; }
.tc-sneeze b { font: 800 38px/1 Unbounded, sans-serif; letter-spacing: -.01em;
    background: linear-gradient(180deg, #fff6cf, var(--gold) 55%, var(--gold-2)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 12px rgba(255,190,40,.6)); }
.tc-sneeze small { font: 700 12.5px/1.2 Manrope, sans-serif; color: rgba(255,255,255,.88); }
@keyframes tcSneeze { 0% { transform: scale(.4) rotate(-8deg); opacity: 0; } 14% { transform: scale(1.15) rotate(3deg); opacity: 1; }
    26% { transform: scale(1) rotate(0); } 82% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(.9) translateY(-14px); } }

.tc-flash { position: absolute; inset: 0; z-index: 5; pointer-events: none; opacity: 0; }
.tc-flash.on { animation: tcFlash .7s ease-out; background: radial-gradient(50% 50% at var(--fx, 50%) 72%, rgba(255,200,120,.6), rgba(224,48,79,.25) 45%, transparent 75%); }
.tc-flash.on.gold { background: radial-gradient(70% 60% at var(--fx, 50%) 65%, rgba(255,236,160,.85), rgba(255,190,40,.4) 45%, transparent 80%); }
@keyframes tcFlash { 0% { opacity: 1; } 25% { opacity: .35; } 40% { opacity: .8; } 100% { opacity: 0; } }

.tc-win { position: absolute; left: 3%; top: max(150px, 26%); z-index: 9; display: grid; justify-items: center; gap: 6px; min-width: 210px;
    padding: 12px 24px 16px; border-radius: 22px; text-align: center; pointer-events: none;
    background: linear-gradient(180deg, rgba(60,12,30,.93), rgba(28,6,16,.95));
    box-shadow: 0 24px 60px -20px rgba(0,0,0,.9), 0 0 0 1px rgba(255,207,90,.5), 0 0 34px -4px rgba(255,190,40,.4);
    animation: tcWin .55s cubic-bezier(.2,1.5,.4,1); }
.tc-win.out { animation: tcWinOut .3s ease-in forwards; }
@keyframes tcWin { from { transform: scale(.5); opacity: 0; } }
@keyframes tcWinOut { to { transform: scale(.85); opacity: 0; } }
.tc-win img { width: 84px; height: auto; margin-top: -50px; filter: drop-shadow(0 10px 18px rgba(0,0,0,.55)); animation: tcToy .8s cubic-bezier(.3,1.6,.5,1); }
@keyframes tcToy { from { transform: translateY(40px) scale(.4) rotate(-18deg); } }
.tc-win small { font: 700 12.5px/1.3 Manrope, sans-serif; color: rgba(255,255,255,.85); }
.tc-win b { font: 800 48px/1 Unbounded, sans-serif; letter-spacing: -.03em;
    background: linear-gradient(180deg, #fff, #ffe7a8 55%, var(--gold)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 4px 14px rgba(255,190,40,.45)); }
.tc-win .w { font: 800 18px/1 Unbounded, sans-serif; color: var(--mint); }
.tc-win .l { font: 700 12.5px/1 Manrope, sans-serif; color: rgba(255,255,255,.6); }
.tc-win.t3, .tc-win.sn { box-shadow: 0 0 0 2px rgba(255,212,90,.85), 0 0 60px 6px rgba(255,212,90,.45), 0 24px 60px -20px rgba(0,0,0,.9); }
.tc-win.t3 b, .tc-win.sn b { font-size: 58px; background: linear-gradient(180deg, #fff6cf, var(--gold) 55%, var(--gold-2)); -webkit-background-clip: text; background-clip: text; }
.tc-win.miss { box-shadow: 0 24px 60px -20px rgba(0,0,0,.9), inset 0 0 0 1px rgba(255,255,255,.12); }
.tc-win.miss b { background: none; -webkit-text-fill-color: rgba(255,255,255,.45); color: rgba(255,255,255,.45); filter: none; font-size: 38px; }

.tc-bet.is-live .field, .tc-bet.is-live .quick-row, .tc-bet.is-live .tc-lv { opacity: .45; pointer-events: none; transition: opacity .3s; }
.tc-opts { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; margin: 12px 0 2px; }
.tc-bet .tc-go { margin-top: 12px; }
.tc-lv { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; padding: 4px; border-radius: 13px;
    background: var(--surface-3); box-shadow: inset 0 0 0 1px var(--line); }
.tc-lv button { position: relative; display: grid; justify-items: center; align-content: center; gap: 4px; height: 52px; border-radius: 10px; color: var(--dim); transition: .2s; }
.tc-lv b { font: 800 17px/1 Unbounded, sans-serif; color: var(--text); }
.tc-lv small { font: 800 11px/1 Manrope, sans-serif; color: var(--faint); }
.tc-lv em { position: absolute; top: -7px; left: 50%; translate: -50% 0; padding: 2px 6px; border-radius: 6px; font: 800 8.5px/1.2 Manrope, sans-serif; font-style: normal;
    letter-spacing: .06em; text-transform: uppercase; color: #fff; background: linear-gradient(180deg, #ff5b7a, var(--ruby)); box-shadow: 0 3px 8px -3px rgba(224,48,79,.9); white-space: nowrap; }
.tc-lv button.on { background: linear-gradient(180deg, #fff3c4, var(--gold) 55%, var(--gold-2)); box-shadow: 0 6px 16px -8px rgba(255,190,40,.95); }
.tc-lv button.on b, .tc-lv button.on small { color: #2a1606; }
.tc-turbo { display: flex; justify-content: center; align-items: center; gap: 6px; height: 38px; padding: 0 12px; border-radius: 11px; font: 800 12.5px/1 Manrope, sans-serif; color: var(--dim);
    background: var(--surface-3); box-shadow: inset 0 0 0 1px var(--line); transition: .2s; }
.tc-turbo .ic { filter: grayscale(1); opacity: .6; transition: .2s; }
.tc-turbo[aria-pressed="true"] { color: #2a1606; background: linear-gradient(180deg, #fff3c4, var(--gold) 55%, var(--gold-2)); box-shadow: 0 6px 18px -8px rgba(255,190,40,.9); }
.tc-turbo[aria-pressed="true"] .ic { filter: none; opacity: 1; }
.tc-go, .dock [data-tc-go] { color: #2a1606 !important; background: linear-gradient(180deg, #fff3c4, var(--gold) 50%, var(--gold-2)) !important; box-shadow: 0 14px 30px -12px rgba(255,190,40,.95) !important; }
.tc-go.is-pick, .dock [data-tc-go].is-pick { color: #fff !important; background: linear-gradient(180deg, #ff7a94, var(--ruby) 55%, #a8173a) !important; box-shadow: 0 14px 30px -12px rgba(224,48,79,.95) !important; }
.tc-go.is-wait, .dock [data-tc-go].is-wait { opacity: .6; pointer-events: none; }

.tc-top-h { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.tc-top-tag { padding: 4px 8px; border-radius: 999px; font: 800 10px/1 Manrope, sans-serif; letter-spacing: .06em; color: var(--dim); background: var(--surface-3); box-shadow: inset 0 0 0 1px var(--line); }
.tc-top-row { --c: 255,207,90; position: relative; overflow: hidden; display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 12px 12px 12px 10px; border-radius: 14px;
    background: linear-gradient(100deg, rgba(var(--c),.13), rgba(var(--c),.03) 55%, transparent), var(--surface-3); box-shadow: inset 0 0 0 1px rgba(var(--c),.16); }
.tc-top-row + .tc-top-row { margin-top: 8px; }
.tc-top-row.is-mult { --c: 255,91,122; }
.tc-top-row::before { content: ''; position: absolute; left: 0; top: 10px; bottom: 10px; width: 3px; border-radius: 0 3px 3px 0; background: rgb(var(--c)); box-shadow: 0 0 12px rgba(var(--c),.8); }
.tc-top-row i { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; font-style: normal; background: rgba(var(--c),.1); box-shadow: inset 0 0 0 1px rgba(var(--c),.25); }
.tc-top-row svg { width: 20px; height: 20px; fill: none; stroke: rgb(var(--c)); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 4px rgba(var(--c),.6)); }
.tc-top-row.is-mult svg { fill: rgba(var(--c),.25); }
.tc-top-row .v { min-width: 0; }
.tc-top-row small { display: block; font: 800 10px/1 Manrope, sans-serif; letter-spacing: .08em; text-transform: uppercase; color: var(--faint); margin-bottom: 6px; }
.tc-top-row b { display: block; font: 800 17px/1 Unbounded, sans-serif; letter-spacing: -.02em; color: rgb(var(--c)); text-shadow: 0 0 16px rgba(var(--c),.35); white-space: nowrap; }
.tc-top-row em { display: grid; justify-items: end; gap: 6px; font-style: normal; min-width: 0; }
.tc-top-row .nm { display: flex; align-items: center; gap: 6px; max-width: 110px; font: 700 12px/1 Manrope, sans-serif; color: var(--text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tc-top-row .nm.is-empty { color: var(--faint); }
.tc-top-row .av { flex: none; width: 18px; height: 18px; display: grid; place-items: center; border-radius: 50%; font: 800 9.5px/1 Manrope, sans-serif; color: #1b1206; background: linear-gradient(180deg, #fff1bf, rgb(var(--c))); }
.tc-top-row .px { padding: 4px 7px; border-radius: 7px; font: 800 11px/1 Manrope, sans-serif; color: var(--dim); background: rgba(255,255,255,.05); box-shadow: inset 0 0 0 1px var(--line); }
.tc-top-row.is-empty b { color: var(--faint); text-shadow: none; }

@media (max-width: 1300px), (max-height: 900px) {
    .tc { height: 620px; }
}

@media (min-width: 761px) and (max-height: 800px) {
    .tc { height: calc(100vh - 110px); min-height: 440px; }
}

.tc.is-narrow .tc-say { left: 50%; right: auto; top: auto; bottom: 10px; translate: -50% 0; max-width: calc(100% - 24px); width: max-content;
    border-radius: 14px; text-align: center; font-size: 12px; padding: 7px 12px; }
.tc.is-narrow[data-phase="pick"] .tc-say, .tc.is-narrow[data-phase="win"] .tc-say, .tc.is-narrow[data-phase="miss"] .tc-say { display: none; }
.tc.is-narrow .tc-win { left: 50%; top: 54px; translate: -50% 0; min-width: 190px; padding: 10px 18px 12px; }
.tc.is-narrow .tc-win img { display: none; }
.tc.is-narrow .tc-win b { font-size: 36px; }
.tc.is-narrow .tc-win.t3 b, .tc.is-narrow .tc-win.sn b { font-size: 42px; }
.tc.is-narrow .tc-win .w { font-size: 15px; }
.tc.is-narrow .tc-sneeze b { font-size: 28px; }
.tc.is-narrow .tc-ask { padding: 8px 14px; gap: 8px; }
.tc.is-narrow .tc-ask b { font-size: 14px; }
.tc.is-narrow .tc-ask small { font-size: 11px; }

@media (max-width: 760px) {

    .tc { height: max(300px, calc(var(--free, 640px) - 10px)); border-radius: var(--r-lg); }
    .tc-sign { left: 10px; top: 10px; height: 32px; padding: 0 10px; gap: 6px; border-radius: 10px; }
    .tc-sign b { font-size: 13px; }
    .tc-bulbs { width: 12px; }

    .tc-hud { display: none; }
    .tc-level { left: auto; right: 10px; top: 12px; height: 28px; font-size: 11px; padding: 0 9px; }
    .tc-x2 { left: auto; right: 10px; top: 46px; }
    .tc-opts { margin-top: 0; grid-template-columns: minmax(0, 1fr) 46px; }
    .tc-opts .tc-turbo { padding: 0; height: auto; }
    .tc-opts .tc-turbo span:not(.ic) { display: none; }
    .tc-opts .tc-turbo .ic { font-size: 16px; }
    .tc-lv button { height: 46px; }
    .tc-lv b { font-size: 15px; }
}

.tc.is-short .tc-win { min-width: 0; gap: 2px; padding: 6px 16px 8px; border-radius: 14px; }
.tc.is-short .tc-win img { display: none; }
.tc.is-short .tc-win small { font-size: 11px; }
.tc.is-short .tc-win b, .tc.is-short .tc-win.t3 b, .tc.is-short .tc-win.sn b { font-size: 28px; }
.tc.is-short .tc-win.miss b { font-size: 22px; }
.tc.is-short .tc-win .w { font-size: 13px; }
.tc.is-short .tc-x2 { display: none; }

.is-lite .tc-recent span, .is-lite .tc-level, .is-lite .tc-say { -webkit-backdrop-filter: none; backdrop-filter: none; }
.is-lite .tc-cup.can img { animation: none; }
@media (prefers-reduced-motion: reduce) {
    .tc *, .tc { animation-duration: .01s !important; animation-iteration-count: 1 !important; }
}

.tc > .brandmark { z-index: 3; --bm-y: 4%; }
@media (max-width: 760px) {

    .tc > .brandmark { --bm-y: 18%; }
}
