.sk{display:block;background:rgba(255,255,255,.055);border-radius:var(--radius-xs);animation:sk-pulse 2.4s cubic-bezier(.4,0,.2,1) infinite}@keyframes sk-pulse{0%,to{opacity:.55}50%{opacity:1}}.sk-line{height:12px;margin-bottom:10px}.sk-line.wide{width:100%}.sk-line.mid{width:72%}.sk-line.short{width:44%}.sk-line.kicker{height:10px;width:96px;margin-bottom:22px}.sk-line.title{height:clamp(38px,8vw,64px);width:68%;margin-bottom:18px}.sk-line.lede{height:18px;margin-bottom:8px}.sk-block{border-radius:var(--radius-md)}.sk-portrait{aspect-ratio:2/3;border-radius:var(--radius-xs)}.sk-pill{height:44px;border-radius:var(--radius-pill)}.sk-field{height:52px;border-radius:var(--radius-md)}.sk-panel{border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px}.lounge-hold{position:fixed;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:28px 22px 46px;background-color:var(--ink);background-image:var(--hold-photo);background-position:50%;background-size:cover;background-repeat:no-repeat}@media (max-width:799px){.lounge-hold{background-image:var(--hold-photo-mobile,var(--hold-photo))}}.lounge-hold .kicker{color:var(--gold)}.lounge-hold-line{font-family:var(--display);font-size:clamp(26px,4vw,34px);letter-spacing:-.02em;color:var(--muted);max-width:24ch}.door-hold{min-height:100dvh;display:flex;flex-direction:column;justify-content:flex-end;padding:28px 22px 36px}.door-hold .stack{display:grid;grid-gap:16px;gap:16px;margin-top:22px;max-width:34rem}.lift-hold{display:flex;flex-direction:column;justify-content:flex-end;background-color:var(--ink);background-image:linear-gradient(180deg,rgba(5,6,8,.55),rgba(5,6,8,.88)),url(/house/lift-car.webp);background-position:50%;background-size:cover;background-repeat:no-repeat}.lift-hold,.room-hold{min-height:100dvh;padding:28px 22px 46px}.room-hold{display:grid;align-content:end}.room-hold .panel{max-width:34rem;display:grid;grid-gap:12px;gap:12px}.top nav a.who{display:inline-block;min-width:8ch;max-width:15ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.quiet-danger{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);display:grid;grid-gap:12px;gap:12px}.text-quiet{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:10px 0;min-height:44px;color:var(--faint);font:inherit;font-size:14px;text-align:left;text-decoration:underline;text-underline-offset:4px;cursor:pointer}@media (hover:hover){.text-quiet:hover{color:var(--ivory)}}.floor-swap{margin-top:34px;padding-top:18px;border-top:1px solid var(--line);font-size:15px;color:var(--muted)}.floor-swap a{color:var(--ivory);-webkit-text-decoration-color:rgba(255,12,182,.55);text-decoration-color:rgba(255,12,182,.55);text-underline-offset:4px}.check{display:flex;align-items:center;gap:14px;min-height:44px;font-size:15px;letter-spacing:0;text-transform:none;line-height:1.45;color:var(--muted)}.check input{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex:none;width:24px;height:24px;margin:0;border:1px solid rgba(255,255,255,.42);border-radius:var(--hottr-radius);background:transparent;position:relative;cursor:pointer;transition:background var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out)}.check input:checked{background:var(--gold);border-color:var(--gold)}.check input:checked:after{content:"";position:absolute;left:8px;top:3px;width:6px;height:12px;border:solid var(--ink);border-width:0 2px 2px 0;transform:rotate(45deg)}.check input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}body{display:flex;flex-direction:column}.foot{margin-top:auto}.room-empty{min-height:100dvh;display:grid;align-content:center}.door-hold,.lift-hold,.room-hold,.street{padding-bottom:calc(36px + env(safe-area-inset-bottom, 0px))}.sheet,.sheet-hold{padding-bottom:calc(64px + env(safe-area-inset-bottom, 0px))}.vibe-bar{padding-bottom:calc(18px + env(safe-area-inset-bottom, 0px))}.scene-card .shade{background:radial-gradient(120% 92% at 50% 42%,rgba(5,6,8,0) 52%,rgba(5,6,8,.44) 100%),linear-gradient(180deg,rgba(5,6,8,.05) 24%,rgba(5,6,8,.55) 62%,rgba(5,6,8,.94))}.scene-copy .tag{text-shadow:0 1px 4px rgba(5,6,8,.85)}.scene-copy em{text-shadow:0 1px 4px rgba(5,6,8,.55)}@media (hover:hover){.btn.ghost:hover{border-color:rgba(255,255,255,.62)}.lounge-close:hover,.player-chev:hover{background:rgba(255,255,255,.12);color:var(--ivory)}}.btn.ghost:active,.lounge-close:active,.player-chev:active{transform:scale(.98)}.depth button:active{transform:scale(.97)}.chip:disabled,.choice:disabled,.tray-clear:disabled,.voice-option:disabled{opacity:.45;cursor:default}.lounge-dock.brains,.lounge-dock:not(.brains):not(.right){top:16px;left:16px}.lounge-dock.right{top:16px;right:16px}.lounge-spot-tag{position:absolute;left:50%;bottom:12%;transform:translateX(-50%);display:inline-flex;flex-direction:column;align-items:center;gap:1px;max-width:144px;padding:4px 8px;border:1px solid rgba(255,255,255,.22);border-radius:var(--hottr-radius);background:rgba(5,6,8,.78);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;transition:border-color var(--dur) var(--ease-out),background var(--dur) var(--ease-out)}.lounge-spot-tag strong{color:var(--ivory);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.lounge-spot-tag em{display:block;max-width:126px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-size:11px;color:rgba(255,255,255,.78)}.lounge-zone.on .lounge-spot-tag,.lounge-zone:focus-visible .lounge-spot-tag{border-color:var(--hottr-pink);background:rgba(5,6,8,.92)}.lounge-tables{display:none}@media (max-width:800px){.lounge-dock.right{top:calc(12px + env(safe-area-inset-top, 0px));right:12px}.lounge-dock.brains{top:calc(64px + env(safe-area-inset-top, 0px));left:12px;right:12px}.lounge-dock:not(.brains):not(.right){top:auto;bottom:calc(14px + env(safe-area-inset-bottom, 0px));left:12px;right:12px;justify-content:space-between;gap:4px 12px;padding:0 14px}.lounge.is-dim .lounge-dock,.lounge.is-dim .lounge-tables,.lounge.is-listed .lounge-dock,.lounge.is-listed .lounge-tables{opacity:0;pointer-events:none}.lounge-tables{position:fixed;left:0;right:0;bottom:calc(74px + env(safe-area-inset-bottom, 0px));z-index:9;display:flex;gap:8px;overflow-x:auto;padding:0 12px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.lounge-tables::-webkit-scrollbar{display:none}.lounge-table-pill{flex:none;display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:44px;padding:7px 12px;border:1px solid rgba(255,255,255,.22);border-radius:var(--hottr-radius);background:rgba(5,6,8,.8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--ivory);text-align:left}.lounge-table-pill.on{border-color:var(--hottr-pink);background:rgba(255,12,182,.14)}.lounge-table-name{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--hottr-text-marker)}.lounge-table-pill.on .lounge-table-name{color:var(--hottr-pink)}.lounge-table-guests{font-size:12px;font-weight:500;color:var(--ivory);white-space:nowrap}}@media (pointer:coarse){.lounge-drawer header button{min-height:44px;min-width:44px}}.lounge-hint{position:fixed;z-index:9;left:50%;bottom:calc(88px + env(safe-area-inset-bottom, 0px));transform:translateX(-50%);max-width:calc(100vw - 24px);padding:10px 16px;border-radius:var(--hottr-radius);border:1px solid rgba(212,175,55,.4);background:rgba(5,6,8,.78);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#ffffff;font-size:13px;text-align:center;white-space:nowrap;pointer-events:none}@media (max-width:800px){.lounge-hint{bottom:calc(136px + env(safe-area-inset-bottom, 0px));white-space:normal}}.lounge-error{position:fixed;z-index:60;left:50%;bottom:24px;transform:translateX(-50%);width:min(420px,calc(100vw - 32px));padding:18px 20px;display:grid;grid-gap:14px;gap:14px;background:rgba(5,6,8,.92);border:1px solid var(--line);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%);box-shadow:var(--shadow-lift)}.lounge-error p{color:var(--ivory);font-size:15px}.ended{display:grid;grid-gap:6px;gap:6px}.ended-name{margin:0;font-family:var(--display);font-size:clamp(34px,7vw,54px);font-weight:500;letter-spacing:-.03em;line-height:1}.ended .row{margin-top:18px}.ended-cost{color:var(--ivory)}.meter-line{margin-top:4px;color:var(--gold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.turn{display:flex;align-items:baseline;gap:10px;margin:12px 0 0;font-size:14px;line-height:1.5;color:var(--muted)}.turn-dot{flex:none;width:6px;height:6px;border-radius:50%;background:currentColor;transform:translateY(-2px)}.turn.think .turn-dot{animation:sk-pulse 2.4s cubic-bezier(.4,0,.2,1) infinite}.turn.you{color:var(--ivory)}.turn.you .turn-dot{background:var(--gold);box-shadow:0 0 0 4px rgba(255,12,182,.18)}.turn.warn{color:var(--ivory)}.turn.warn .turn-dot{background:var(--gold)}.turn.stalled{color:var(--ivory)}.turn.stalled .turn-dot{background:var(--gold)}@media (prefers-reduced-motion:reduce){.turn.think .turn-dot{animation:none}}.sheet-hold{padding:28px 22px 64px;max-width:640px}.sheet-hold .stack{display:grid;grid-gap:14px;gap:14px;margin-top:28px}@media (prefers-reduced-motion:reduce){.sk{animation:none;opacity:.7}}.lab-room{padding-top:28vh}.lab-room .room-panel{padding-top:56px;background:linear-gradient(180deg,transparent,rgba(5,6,8,.92) 30%)}.lab-picker{display:grid;grid-gap:6px;gap:6px;margin-top:12px;margin-bottom:4px}.lab-select{width:100%;background:rgba(13,14,19,.88);color:var(--ivory);border:1px solid var(--line);border-radius:var(--hottr-radius);padding:10px 12px;font-size:14px;min-height:44px}.lab-select:focus{border-color:var(--gold);outline:2px solid var(--gold);outline-offset:2px}.lab-grid-2,.lab-grid-3{display:grid;grid-gap:10px;gap:10px;grid-template-columns:1fr}@media (min-width:560px){.lab-grid-2{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.lab-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.lab-drawer{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.lab-drawer summary{cursor:pointer;list-style:none;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.lab-drawer summary::-webkit-details-marker{display:none}.lab-drawer[open] summary{color:var(--ivory);margin-bottom:12px}.lab-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin-top:8px;font-size:12px;color:var(--muted)}.lab-tag{display:inline-flex;align-items:center;padding:3px 8px;border:1px solid var(--line);border-radius:var(--hottr-radius);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ivory)}.lab-tag.warn{border-color:var(--gold);color:var(--gold)}.lab-audio{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.lab-audio audio{width:100%;height:34px}.lab-log{display:grid;grid-gap:10px;gap:10px;margin-top:8px;max-height:36vh;overflow:auto}.lab-log-entry{border-left:2px solid var(--line);padding-left:12px;display:grid;grid-gap:4px;gap:4px}.lab-log-entry.assistant{border-left-color:var(--gold)}.lab-say-row{display:flex;gap:8px;align-items:stretch}.lab-say-row input{flex:1 1;min-width:0}.studio-shell{max-width:980px;margin:0 auto;padding:28px 18px 80px;display:grid;grid-gap:18px;gap:18px}.studio-top{justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:16px}.studio-actions,.studio-top{display:flex;flex-wrap:wrap;align-items:flex-end}.studio-actions{gap:10px}.studio-scene-picker{display:grid;grid-gap:4px;gap:4px}.studio-panel input,.studio-panel select,.studio-panel textarea,.studio-scene-picker select{width:100%;background:rgba(13,14,19,.9);color:var(--ivory);border:1px solid var(--line);border-radius:var(--hottr-radius);padding:10px 12px;font-size:14px}.studio-tabs{display:flex;flex-wrap:wrap;gap:8px}.studio-panel{display:grid;grid-gap:16px;gap:16px;background:rgba(16,17,23,.72);border:1px solid var(--line);border-radius:var(--hottr-radius);padding:18px}.studio-panel label{display:grid;grid-gap:6px;gap:6px;font-size:13px;color:var(--muted)}.studio-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:1fr}@media (min-width:680px){.studio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.studio-arc{display:grid;grid-gap:8px;gap:8px}.studio-arc-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.studio-arc-row{display:grid;grid-template-columns:56px 1fr auto;align-items:center;grid-gap:8px;gap:8px}.studio-char-list{display:grid;grid-gap:14px;gap:14px}.studio-char-card{display:grid;grid-gap:12px;gap:12px;border:1px solid var(--line);border-radius:var(--hottr-radius);padding:14px;background:rgba(9,10,14,.72)}.studio-char-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.studio-id-badge{font-size:11px;color:var(--gold);background:rgba(255,255,255,.05);padding:2px 6px;border-radius:4px}.studio-kink-filter{max-width:240px}.studio-taste-grid{display:flex;flex-wrap:wrap;gap:6px;max-height:220px;overflow:auto;padding-top:4px}.studio-divider{border:0;border-top:1px solid var(--line);margin:6px 0}.studio-pre{background:rgba(6,7,10,.92);border:1px solid var(--line);border-radius:var(--hottr-radius);padding:12px;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-x:auto;max-height:360px}.studio-test-box{display:grid;grid-gap:12px;gap:12px}.studio-segments{display:grid;grid-gap:10px;gap:10px;margin-top:6px}.studio-segment-row{border-left:2px solid var(--gold);padding:8px 12px;background:rgba(255,255,255,.03);display:grid;grid-gap:6px;gap:6px}.studio-segment-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px}.studio-versions{display:grid;grid-gap:8px;gap:8px}.studio-version-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--hottr-radius)}.studio-banner.ok{color:var(--ivory);border-left:2px solid var(--gold);padding-left:10px}.evening-studio-bar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--hottr-radius);background:rgba(16,17,23,.65);margin:14px 0 10px}.evening-studio-meta{display:grid;grid-gap:4px;gap:4px;flex:1 1;min-width:210px}.evening-enter-row{display:grid;grid-gap:8px;gap:8px;margin-top:14px;margin-bottom:14px}.vibe-board .evening-studio-bar{order:1}.vibe-board .room-picker,.vibe-board .room-strip,.vibe-board .vibe-script{order:2}.vibe-board .evening-enter-row{order:3}.vibe-board .tune{order:4}.vibe-board .form{order:5}.vibe-board .coupling{order:6}.vibe-board .levers{order:7}.vibe-board .kink-tools{order:8}.vibe-board .kink-group{order:9}.room-cast-bar{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 8px}.room-cast-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid var(--line);background:rgba(13,14,19,.78);color:var(--ivory);font-size:13px;cursor:pointer}.room-cast-pill.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.room-cast-avatar{width:20px;height:20px;border-radius:50%;object-fit:cover}.room-cast-role{font-size:11px;color:var(--muted)}.speaker-segments{display:grid;grid-gap:8px;gap:8px}.speaker-segment{margin:0}.speaker-badge{display:inline-block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:4px;background:rgba(255,45,120,.16);color:var(--ivory);border:1px solid rgba(255,45,120,.45);margin-right:6px}