.tt-velvet{background:radial-gradient(ellipse 80% 55% at 50% 42%, color-mix(in srgb, var(--tt-velvet) 70%, white 8%), transparent 70%), radial-gradient(ellipse at 50% 120%, var(--tt-velvet-deep), transparent 60%), var(--tt-velvet)}.tt-hint{animation:2.4s ease-in-out infinite tt-blink}@keyframes tt-blink{0%,to{opacity:.75}50%{opacity:.3}}.tt-box{perspective:600px;width:10rem;height:7.5rem;position:relative}.tt-box-body{background:linear-gradient(180deg, color-mix(in srgb, var(--tt-velvet) 85%, white 10%), var(--tt-velvet-deep));border-radius:.9rem .9rem 1.2rem 1.2rem;position:absolute;inset:3.2rem 0 0;box-shadow:inset 0 2px #ffffff1f,0 24px 40px -18px #000000b3}.tt-cushion{background:radial-gradient(ellipse at 50% 30%, color-mix(in srgb, var(--tt-velvet) 60%, white 25%), var(--tt-velvet-deep));border-radius:999px;height:1.6rem;position:absolute;top:-.2rem;left:12%;right:12%;box-shadow:inset 0 -4px 6px #00000059}.tt-box-lid{background:linear-gradient(180deg, color-mix(in srgb, var(--tt-velvet) 80%, white 16%), color-mix(in srgb, var(--tt-velvet) 92%, black 8%));transform-origin:50% 0;z-index:2;border-radius:1.2rem 1.2rem .6rem .6rem;height:3.4rem;transition:transform .9s cubic-bezier(.5,0,.2,1);position:absolute;inset:0 0 auto;box-shadow:inset 0 -3px #00000040}.tt-box-lid:after{content:"";background:color-mix(in srgb, var(--tpl-accent) 80%, white 10%);opacity:.8;border-radius:2px;height:2px;position:absolute;bottom:.35rem;left:8%;right:8%}.tt-ring{opacity:0;width:3.2rem;height:3.6rem;transition:transform .9s cubic-bezier(.34,1.4,.5,1) .35s,opacity .4s .35s;position:absolute;top:-2.2rem;left:50%;transform:translate(-50%,1.6rem)scale(.7)}.tt-band{background:linear-gradient(var(--tt-velvet-deep), var(--tt-velvet-deep)) padding-box, linear-gradient(135deg, #f6e7c1, var(--tpl-accent) 45%, #7a5a2c 70%, #f2dca8) border-box;border:5px solid #0000;border-radius:50%;height:3.2rem;position:absolute;bottom:0;left:0;right:0}.tt-stone{background:conic-gradient(from 20deg,#fff,#cfe7ff,#fff,#e9f2ff,#b8d6ff,#fff);border-radius:.2rem;width:1.5rem;height:1.5rem;position:absolute;top:-.3rem;left:50%;transform:translate(-50%)rotate(45deg);box-shadow:0 0 12px #ffffffd9,0 0 26px #bedcff8c}.tt-glint{opacity:0;clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);background:#fff;position:absolute}[data-leaving=true] .tt-box-lid{transform:rotateX(105deg)}[data-leaving=true] .tt-ring{opacity:1;transform:translate(-50%,-1.2rem)scale(1)}[data-leaving=true] .tt-glint{animation:1.2s ease-out .7s both tt-glint}@keyframes tt-glint{0%{opacity:0;transform:scale(.2)rotate(0)}40%{opacity:1;transform:scale(1.2)rotate(45deg)}to{opacity:0;transform:scale(.6)rotate(90deg)}}.tt-enter{animation:1.1s cubic-bezier(.2,.7,.2,1) both tt-rise}@keyframes tt-rise{0%{opacity:0;filter:blur(3px);transform:translateY(14px)}to{opacity:1;filter:none;transform:none}}.tt-d1{animation-delay:.3s}.tt-d2{animation-delay:.6s}.tt-d3{animation-delay:.95s}.tt-d4{animation-delay:1.25s}.tt-d5{animation-delay:1.5s}.tt-d6{animation-delay:1.9s}[data-gate=closed] .tt-enter{animation-play-state:paused}.tt-rule{background:linear-gradient(90deg, transparent, var(--tpl-accent), transparent);width:5.5rem;height:1px;display:block}.tt-card{background:var(--tpl-surface);border:1px solid color-mix(in srgb, var(--tpl-accent) 40%, transparent);outline:1px solid color-mix(in srgb, var(--tpl-accent) 22%, transparent);outline-offset:5px;position:relative}.tt-count>div>span:first-child{color:var(--tpl-accent)}.tt-frame{border:1px solid color-mix(in srgb, var(--tpl-accent) 35%, transparent);background:#fff;padding:.6rem;box-shadow:0 18px 36px -24px #00000073}.tt-button{border:1px solid var(--tpl-accent);color:var(--tpl-ink);font-family:var(--font-inscribe);letter-spacing:.26em;text-transform:uppercase;padding:.75rem 1.4rem;font-size:11px;transition:background-color .2s,color .2s;display:inline-block}.tt-button:hover{background:var(--tpl-accent);color:#fff}.tt-reveal{transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1)}.tt-reveal[data-reveal=out]{opacity:0;transform:translateY(24px)}@media (prefers-reduced-motion:reduce){.tt-enter,.tt-hint,[data-leaving=true] .tt-glint{animation:none}.tt-box-lid,.tt-ring{transition:none}.tt-reveal[data-reveal=out]{opacity:1;transform:none}}
