.th-root{position:relative;height:100svh;overflow:hidden;background:#2A2430}.th-root:before{display:none}.th-viewport{position:absolute;inset:0;perspective:700px;perspective-origin:50% 40%}.th-room{position:absolute;left:50%;top:44%;width:0;height:0;transform-style:preserve-3d;transition:transform 3.4s cubic-bezier(.65,0,.2,1)}.th-screen{position:absolute;left:-380px;top:-250px;width:760px;height:400px;background:#0C0E10;border-radius:6px;box-shadow:0 0 120px rgb(244 171 160/.18);transform:translateZ(-40px);cursor:pointer;overflow:hidden}.th-threads{inset:0;height:100%}.th-hint,.th-threads{position:absolute;width:100%}.th-hint{bottom:14px;text-align:center;margin:0;font-size:13px;letter-spacing:.2em;color:rgb(255 255 255/.55);animation:th-blink 2s ease-in-out infinite}@keyframes th-blink{50%{opacity:.35}}.th-curtain{position:absolute;top:-300px;width:220px;height:520px;background:repeating-linear-gradient(90deg,#C9706C 0 18px,#B15E5D 18px 34px);transform:translateZ(-30px);border-radius:0 0 40px 40px}.th-left{left:-600px}.th-right{left:380px}.th-beam{position:absolute;left:-60px;top:-280px;width:120px;height:900px;background:linear-gradient(180deg,rgb(255 255 255/.06),transparent 70%);transform:translateZ(500px) rotateX(70deg);pointer-events:none}.th-seatrow{position:absolute;left:0;top:150px;transform-style:preserve-3d}.th-seat{position:absolute;width:40px;height:44px;margin-left:-20px;background:#6E5788;border-radius:12px 12px 6px 6px;box-shadow:inset 0 -8px 0 #5C4870}.th-seat.is-hers{background:#F09688;box-shadow:inset 0 -8px 0 #DEA0A1,0 0 24px rgb(240 150 136/.6)}.th-her{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);transition:transform .6s ease}.th-her.is-leaning{transform:translateX(-50%) translateY(-6px) scale(1.04)}.th-her.is-done{transform:translateX(-50%) rotate(-6deg)}.th-lights{position:absolute;inset:0;background:rgb(244 171 160/0);pointer-events:none;transition:background 2.5s ease}.th-lights.is-up{background:rgb(244 171 160/.28)}.th-form-wrap{position:absolute;inset:0;animation:th-fade 1.2s ease both}@keyframes th-fade{0%{opacity:0}}.th-credits,.th-form{position:absolute;inset:0;padding:26px 40px;transition:transform 5s linear}.th-form{display:flex;flex-direction:column;gap:10px;background:rgb(12 14 16/.72);color:#FDE7E1;font-size:13px}.th-form h2{margin:0 0 4px;font-weight:400;font-size:24px;color:#F4ABA0}.th-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.th-form label{display:flex;flex-direction:column;gap:4px;color:#CECBF6}.th-form input,.th-form select,.th-form textarea{font:inherit;font-size:14px;color:#fff;background:transparent;border:1px solid #90a495;border-radius:6px;padding:7px 9px;resize:none}.th-form input:focus,.th-form select:focus,.th-form textarea:focus{outline:none;border-color:#F4ABA0;box-shadow:0 0 0 3px rgb(244 171 160/.2)}.th-form option{color:#000}.th-form button{align-self:flex-end;font:inherit;font-size:15px;padding:9px 22px;border:0;border-radius:999px;background:#F09688;color:#4B1528;cursor:pointer}.th-err{margin:0;color:#FFB3A7;font-size:13px}.th-credits{transform:translateY(100%);text-align:center;color:#fff;display:flex;flex-direction:column;justify-content:center}.th-credits p{margin:18px 0 2px;font-size:12px;letter-spacing:.25em;text-transform:uppercase;color:#E2B481}.th-credits h3{margin:0;font-weight:400;font-size:28px}.is-rolling .th-form{transform:translateY(-110%)}.is-rolling .th-credits{transform:translateY(-10%)}.th-map{position:absolute;right:22px;bottom:22px;z-index:5;padding:12px;border-radius:12px;background:rgb(255 255 255/.1);border:1px solid rgb(255 255 255/.2);font-size:12px;color:rgb(255 255 255/.75);display:flex;flex-direction:column;align-items:center;gap:3px}.th-map-screen{width:100%;height:4px;border-radius:2px;background:#fff;margin:4px 0 6px;opacity:.7}.th-map-row{display:flex;gap:3px}.th-map-row button{width:9px;height:9px;padding:0;border:0;border-radius:3px;background:#6E5788;cursor:pointer}.th-map-row button.is-best{background:#F09688}.th-map-row button.is-on{outline:2px solid #fff}.th-back{all:unset;cursor:pointer;text-decoration:underline;text-underline-offset:3px;margin-top:8px}@media (max-width:760px){.th-map{display:none}.th-viewport{perspective:520px}.th-room{transform:translate3d(0,40px,120px)!important;transition:none}.th-screen{left:-46vw;width:92vw;height:120vw;top:-70vw}.th-form{padding:18px}.th-row{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.th-credits,.th-form,.th-room{transition:none}}