/* Photographic boardroom layer: the room is the primary surface, UI chrome stays legible above it. */
.hero-room{isolation:isolate;background:#101417;min-height:0;aspect-ratio:16/9}
.hero-game{display:block;max-width:1400px;padding-top:clamp(28px,5vw,76px);padding-bottom:42px}
.hero-stage{position:relative;isolation:isolate;min-height:clamp(560px,62vw,720px);overflow:hidden;border:1px solid #ffffff20;border-radius:34px;background:#101417;box-shadow:0 28px 90px #0009}
.hero-stage:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#07090b80 0%,#11161a0a 38%,#0e13186e 73%,#080b0ed9 100%),linear-gradient(90deg,#070a0dc2 0%,#070a0d1a 45%,#070a0d69 100%)}
.hero-stage:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(120deg,transparent 30%,#f5b35b14 50%,transparent 70%);transform:skewX(-15deg)}
.hero-stage .room-backdrop img{filter:saturate(.9) contrast(1.05) brightness(.88)}
.hero-stage .door-glow{display:none}
.hero-copy-block{position:absolute;z-index:7;top:15%;left:7%;max-width:640px;padding:8px 0;text-shadow:0 2px 18px #0009}
.hero-copy-block h1{font-size:clamp(52px,7.1vw,104px);margin:18px 0 24px}
.hero-copy-block .hero-copy{max-width:510px;font-size:18px;color:#d1d8d5}
.hero-copy-block .hero-actions{margin-top:30px}
.hero-copy-block .quiet{color:#f0eee8;text-shadow:0 1px 8px #000}
.hero-stage .room-label{top:28px;left:34px}
.hero-stage .fiction-disclosure{bottom:96px}
.live-turn{position:absolute;z-index:7;top:28px;right:34px;display:flex;align-items:center;gap:7px;color:#e9e4d9;font-size:9px;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 8px #000}
.live-turn>span:last-child{color:#aab5b3;letter-spacing:.03em;text-transform:none}
.hero-stage .cast-strip{right:6%;bottom:19px;left:6%;}
.room-backdrop{position:absolute;inset:0;z-index:0;display:block;overflow:hidden}
.room-backdrop img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;filter:saturate(.82) contrast(1.06) brightness(.78);transform:scale(1.015)}
.hero-room:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#07090b99 0%,#11161a10 38%,#0e13186e 74%,#080b0ebd 100%),linear-gradient(90deg,#070a0d7a 0%,transparent 38%,#070a0d52 100%)}
.hero-room:before{z-index:2;pointer-events:none}
.door-glow,.room-label{z-index:3}
.portrait-grid{z-index:4}
.table-line{z-index:2}
.door-glow{background:radial-gradient(ellipse at center,#b1d9e22e,transparent 68%);border:0;opacity:.55;box-shadow:0 0 90px #8fc2df2b}
.table-line{background:linear-gradient(170deg,#704c2bd9,#161614f2);border-top-color:#f5b35b73}
.door-panel{position:absolute;top:0;bottom:0;width:50.5%;z-index:6;overflow:hidden;background:linear-gradient(90deg,#241006,#6f3512 52%,#321307);border:1px solid #d3a04a55;box-shadow:0 0 34px #000b;animation:doors-open-left 1.35s cubic-bezier(.77,0,.175,1) .08s forwards}
.door-left{left:0;border-right-color:#e1b65e}.door-right{right:0;border-left-color:#e1b65e;animation-name:doors-open-right}
.door-panel:before{content:"";position:absolute;inset:9% 12%;border:2px solid #b16b2c88;background:linear-gradient(135deg,#381707,#5d2810 48%,#2b1006);box-shadow:inset 0 0 30px #140702}
.door-panel:after{content:"";position:absolute;inset:14% 18%;border:1px solid #efbd5e44;transform:skewY(-2deg)}
.door-handle{position:absolute;z-index:2;top:52%;width:6px;height:52px;border:1px solid #f3d282;background:#a87524;border-radius:6px;box-shadow:2px 3px 8px #000b}
.door-left .door-handle{right:18px}.door-right .door-handle{left:18px}
.door-mark{position:absolute;z-index:2;top:38%;right:-18px;width:46px;height:46px;border:2px solid #d3a04a;border-radius:50%;display:grid;place-items:center;background:#4c2110;color:#f8d48c;font-size:10px;font-weight:800;letter-spacing:.1em}
.founder-walkin{position:absolute;z-index:5;left:50%;bottom:27%;width:24px;height:76px;opacity:0;filter:drop-shadow(0 5px 6px #000b);animation:founder-walk-in 1.1s cubic-bezier(.23,1,.32,1) .62s forwards}
.founder-head{position:absolute;top:0;left:8px;width:12px;height:12px;border-radius:50%;background:#101317;border:1px solid #f5b35b75;box-shadow:0 0 10px #f5b35b4d}
.founder-body{position:absolute;top:12px;left:3px;width:20px;height:58px;border-radius:12px 12px 4px 4px;background:linear-gradient(90deg,#101317,#596a70 55%,#0d1115);border:1px solid #f5b35b5c;box-shadow:0 0 12px #f5b35b30;clip-path:polygon(28% 0,72% 0,100% 42%,82% 100%,18% 100%,0 42%)}
.cast-strip{position:absolute;z-index:4;right:6%;bottom:13px;left:6%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:7px;border:1px solid #ffffff2b;border-radius:12px;background:#080c0eb5;backdrop-filter:blur(8px);box-shadow:0 8px 24px #0008}
.fiction-disclosure{position:absolute;z-index:4;right:12px;bottom:92px;color:#d0d6d2aa;font-size:8px;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 5px #000;}
.cast-chip{display:flex;align-items:center;gap:5px;min-width:0;color:#f3eee4;font-size:9px;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.cast-chip i{width:7px;height:7px;flex:none;border-radius:50%;background:var(--accent,var(--gold));box-shadow:0 0 8px var(--accent,var(--gold))}
.cast-chip small{overflow:hidden;color:#aab5b3;font-size:8px;text-overflow:ellipsis;text-transform:none;letter-spacing:0}
.portrait{position:relative;overflow:hidden;background:#172229;border-color:#ffffff38;box-shadow:0 12px 28px #000b,0 0 0 1px #0006}
.portrait-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;opacity:.92;filter:saturate(.82) contrast(1.05) brightness(.82);transition:opacity .25s ease,transform .35s ease}
.portrait:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 34%,#07101526 52%,#071015db 100%)}
.portrait:hover .portrait-image{opacity:1;transform:scale(1.045)}
.portrait .initial,.portrait>span:last-child{position:relative;z-index:1;text-shadow:0 2px 8px #000b}
.portrait .initial{font-size:22px;color:#fff;opacity:0;transition:opacity .2s ease}
.portrait-image[hidden] + .initial,.avatar-image[hidden] + .initial{opacity:1}
.portrait-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;left:5%;right:5%;bottom:58px;align-items:end}
.portrait-grid .portrait{width:100%;height:112px;padding-bottom:10px}
.portrait-grid .p1{transform:translateY(-12px)}
.portrait-grid .p2{transform:translateY(-5px)}
.avatar{position:relative;overflow:hidden;flex:none}
.avatar-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.82) contrast(1.05) brightness(.83)}
.avatar .initial{position:relative;z-index:1;color:#fff;text-shadow:0 1px 5px #000b;font-size:11px;opacity:0}
.seat-avatar{position:relative;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;overflow:hidden;background:var(--accent,#b9b3a7);color:#172024;font-size:9px;font-weight:800;flex:none}
.seat-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.78) brightness(.86)}
.seat-avatar i{position:relative;z-index:1;font-style:normal;color:#fff;text-shadow:0 1px 4px #000b}
.judge .avatar{width:58px;height:58px}
.board-stage{position:relative;overflow:hidden;background:linear-gradient(110deg,#10171dda,#11181edc),url('/assets/boardroom/boardroom-cast-960.webp') center/cover no-repeat}
.board-stage:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#080b0db8 0%,#0d1319d0 55%,#090d10ef 100%);mix-blend-mode:multiply}
.board-stage>*{position:relative;z-index:1}
.chat-history{max-height:330px;overflow:auto;margin:8px 0 16px;padding:12px;border:1px solid #ffffff18;border-radius:16px;background:#080c0f99;scrollbar-color:#74634f transparent}
.chat-message{display:flex;align-items:flex-start;gap:9px;margin:0 0 12px;animation:chat-rise .35s ease-out both}.chat-message:last-child{margin-bottom:0}.founder-message{flex-direction:row-reverse}
.chat-avatar{position:relative;display:grid;place-items:center;width:38px;height:38px;flex:none;overflow:hidden;border:1px solid #ffffff30;border-radius:50%;background:var(--accent,#f5b35b);color:#172024;font-size:9px;font-weight:800}.chat-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.82) brightness(.82)}.chat-avatar span{position:relative;z-index:1;color:#fff;text-shadow:0 1px 4px #000b}
.chat-bubble{max-width:86%;padding:9px 11px;border:1px solid #ffffff18;border-radius:13px 13px 13px 4px;background:#ffffff09}.founder-message .chat-bubble{border-color:#f5b35b44;border-radius:13px 13px 4px 13px;background:#f5b35b12}.chat-bubble header{display:flex;align-items:center;gap:7px}.chat-bubble header b{font-size:11px;color:#f3eee4}.chat-bubble header small{font-size:9px;color:#9aa3a5}.chat-bubble p{margin:4px 0 0;color:#d4dbd7;font-size:12px;line-height:1.45}.tts{margin-left:auto;border:0;background:transparent;color:#c5a670;font-size:14px;padding:0 2px;cursor:pointer}.chat-controls{margin-top:12px}.chat-input-wrap{display:flex;align-items:center;gap:7px;padding:4px 5px 4px 12px;border:1px solid #ffffff24;border-radius:12px;background:#080c0f}.chat-input-wrap input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:13px}.chat-input-wrap input::placeholder{color:#7f8b8d}.chat-input-wrap .mic{padding:8px 10px}.chat-actions{display:flex;gap:8px;align-items:center;margin-top:8px}.chat-actions .secondary{padding:10px 14px;font-size:11px}.chat-actions .quiet{font-size:10px;padding:10px}.chat-hint{display:block;margin-top:7px;color:#7f8b8d;font-size:10px;line-height:1.35}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (prefers-reduced-motion:no-preference){
  .room-backdrop img{animation:room-breathe 22s ease-in-out infinite alternate}
  .door-glow{animation:door-pulse 5s ease-in-out infinite}
  .portrait-grid .portrait{animation:judge-rise .65s cubic-bezier(.23,1,.32,1) both}
  .portrait-grid .portrait:nth-child(2){animation-delay:.06s}.portrait-grid .portrait:nth-child(3){animation-delay:.12s}
  .portrait-grid .portrait:nth-child(4){animation-delay:.18s}.portrait-grid .portrait:nth-child(5){animation-delay:.24s}.portrait-grid .portrait:nth-child(6){animation-delay:.3s}
  .cast-chip{animation:judge-focus 6s ease-in-out var(--delay,0s) infinite}
}
@keyframes room-breathe{from{transform:scale(1.015)}to{transform:scale(1.045) translate3d(-.5%,-.4%,0)}}
@keyframes door-pulse{0%,100%{opacity:.78;box-shadow:0 0 72px #8fc2df22,inset 0 0 40px #0008}50%{opacity:1;box-shadow:0 0 104px #8fc2df42,inset 0 0 40px #0008}}
@keyframes judge-rise{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes doors-open-left{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}
@keyframes doors-open-right{0%{transform:translateX(0)}100%{transform:translateX(100%)}}
@keyframes founder-walk-in{0%{opacity:0;transform:translate(-50%,38px) scale(.72)}35%{opacity:1}100%{opacity:.82;transform:translate(-50%,0) scale(1)}}
@keyframes chat-rise{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes judge-focus{0%,86%,100%{opacity:.78;transform:translateY(0);text-shadow:none}10%,34%{opacity:1;transform:translateY(-2px);text-shadow:0 0 10px var(--accent,#f5b35b)}}
@media(prefers-reduced-motion:reduce){.door-left{animation:none;transform:translateX(-100%)}.door-right{animation:none;transform:translateX(100%)}.founder-walkin{animation:none;opacity:.82;transform:translate(-50%,0)}.portrait-image{transition:none}.portrait:hover .portrait-image{transform:none}}
@media(max-width:540px){.room-backdrop img{object-position:58% center}.portrait-image{object-position:center top}.hero-room:after{background:linear-gradient(180deg,#07090dcc 0%,#0e131866 45%,#080b0ecb 100%)} }
@media(max-width:850px){.hero-room{aspect-ratio:auto;min-height:250px}.portrait-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;left:4%;right:4%}.portrait-grid .portrait{height:94px;font-size:7px}.portrait-grid .portrait .initial{font-size:16px}}
@media(max-width:540px){.hero-room{min-height:230px}.portrait-grid{grid-template-columns:repeat(3,minmax(0,1fr));left:10%;right:10%;bottom:48px;row-gap:5px}.portrait-grid .portrait{height:72px}.portrait-grid .portrait:nth-child(n+4){display:flex}.portrait-grid .p1,.portrait-grid .p2{transform:none}}
@media(max-width:540px){.cast-strip{grid-template-columns:repeat(2,minmax(0,1fr));right:5%;bottom:9px;left:5%;gap:4px;padding:6px}.cast-chip{font-size:8px}.cast-chip small{font-size:7px}}
@media(max-width:850px){.hero-game{padding-right:20px;padding-left:20px}.hero-stage{min-height:600px}.hero-copy-block{top:12%;left:7%;right:7%}.hero-copy-block h1{font-size:clamp(48px,9vw,80px)}}
@media(max-width:540px){.hero-game{padding-right:16px;padding-left:16px}.hero-stage{min-height:620px;border-radius:26px}.hero-copy-block{top:14%;left:8%;right:8%}.hero-copy-block h1{font-size:52px;line-height:.98}.hero-copy-block .hero-copy{font-size:16px}.hero-stage .room-label{top:20px;left:20px;font-size:9px}.live-turn{top:20px;right:20px}.live-turn>span:last-child{display:none}.hero-stage .fiction-disclosure{right:18px;bottom:96px;left:18px;text-align:center}}
@media(prefers-reduced-motion:reduce){.portrait-image{transition:none}.portrait:hover .portrait-image{transform:none}}
