/* Cinematic entrance and architectural rehearsal room. */
body{background:radial-gradient(ellipse at 18% 0%,#164b57 0,transparent 65%),#061e26}
.elevator{border-color:#5b838b;box-shadow:0 18px 55px #0004,inset 0 1px #d1e6e130;border-radius:8px}
.elevator-header{background:linear-gradient(105deg,#073844,#163e49,#052d37);box-shadow:inset 0 1px #cde2e124}
.floor-display{border-color:#87a6a277;box-shadow:inset 0 3px 12px #0009,0 1px #efffea25}
.elevator-frame{padding:9px 14px 0;background:linear-gradient(90deg,#233f4b,#aac0bc 1%,#204a56 1.8%,#002d37 3%,#54818b 3.7%,#042c36 5%,#042c36 95%,#54818b 96.3%,#002d37 97%,#204a56 98.2%,#aac0bc 99%,#233f4b)}
.cabin{isolation:isolate;box-shadow:inset 0 0 30px #0006}
.tower-lobby{position:absolute;inset:0;z-index:1;overflow:hidden;background:#173f4d;transition:filter 1.2s}
.tower-lobby>img{height:100%;width:100%;object-fit:cover;object-position:center;display:block}
.tower-lobby:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 45px #00192288;background:linear-gradient(90deg,#002c3566,transparent 30%,transparent 72%,#002c3544)}
.lobby-welcome{position:absolute;bottom:7%;left:50%;transform:translateX(-50%);text-align:center;white-space:nowrap;z-index:2;text-shadow:0 2px 12px #001924;color:white;background:linear-gradient(90deg,transparent,#002d3970,transparent);padding:9px 30px}
.lobby-welcome>span,.lobby-welcome small{display:block;font-size:8px;letter-spacing:2px;color:#dfebe6}.lobby-welcome strong{font-size:clamp(20px,2.5vw,35px);font-weight:400;letter-spacing:-.5px;display:block;margin:6px 0}.lobby-welcome small{color:#b4cdca;font-size:7px}
.door{z-index:2;background:repeating-linear-gradient(90deg,#ffffff02 0px,#00000003 1px,#ffffff02 3px),linear-gradient(108deg,#00313e,#09566a 47%,#034452 70%,#003541);box-shadow:inset 0 0 45px #00192366,0 0 25px #00172199;transition:transform 1.6s cubic-bezier(.65,0,.35,1)}
.door:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 28%,#c8e9e107 46%,#d2f4ef0e 49%,transparent 62%)}
.elevator[data-state=ready] .door-left,.elevator[data-state=arrived] .door-left{transform:translateX(-100%)}
.elevator[data-state=ready] .door-right,.elevator[data-state=arrived] .door-right{transform:translateX(100%)}
.elevator[data-state=closing] .door{animation:none;transform:translateX(0)}
.elevator[data-state=running] .door,.elevator[data-state=paused] .door{transform:translateX(0)}
.elevator[data-state=closing] .lobby-welcome,.elevator[data-state=running] .lobby-welcome,.elevator[data-state=paused] .lobby-welcome{opacity:0;transition:opacity .3s}
.timer-area{z-index:3!important;background:linear-gradient(115deg,#002e3bc9,#002e3b00)!important;padding:10px 22px 18px 11px!important;border-radius:4px;left:13px;top:12px;max-width:45%}
.timer-area .ride-status{color:#d9e9e8;font-size:8px}.stage-label{white-space:normal;max-width:190px;line-height:1.3}.countdown>span:first-child{font-variant-numeric:tabular-nums}
.elevator[data-state=ready] .stage-label{font-size:11px}.elevator[data-state=arrived] .timer-area{opacity:0;transition:opacity .4s}
.tip-space{z-index:4}.floating-tip{box-shadow:0 10px 30px #0004}
.arrival{inset:auto 8% 10% 8%;border:1px solid #97b5b744;border-radius:6px;background:#002c35e6;backdrop-filter:blur(9px);padding:18px;z-index:5;box-shadow:0 12px 35px #00121c60;animation:mu-reveal .4s 1.35s both}
.arrival h2{font-size:clamp(21px,2.8vw,34px);letter-spacing:-.8px}.arrival>p:not(.eyebrow){font-size:11px}.arrival .eyebrow{font-size:8px;letter-spacing:1.4px}.arrival-actions{display:flex;gap:9px;align-items:center;justify-content:center;flex-wrap:wrap}.arrival .outline-button{padding:9px 12px;font-size:11px}
.control-panel{background:linear-gradient(140deg,#174753,#083542 70%,#042731);box-shadow:inset 0 1px #ffffff17,0 8px 25px #0002;justify-content:center;padding-bottom:84px}
.panel-hint{margin:7px 0}.floor-button{border-radius:5px;box-shadow:inset 0 1px #cfe5df33,0 4px 8px #00192377;background:linear-gradient(145deg,#265b68,#0a3a47);height:52px}
.review-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:default}.review-toggle strong{font-size:12px;font-weight:400;color:#d9ecf0;display:block}.review-toggle small{display:block;color:#96b4bd;font-size:9px;margin-top:4px}.review-toggle input{position:absolute;opacity:0;pointer-events:none}.review-toggle .switch{opacity:.55;flex:none}.executive-control{margin-top:12px;border-top:1px solid #81a6ac33;padding-top:12px}.review-meta{display:flex;align-items:center;justify-content:space-between;margin-top:8px;font-size:8px;color:#a3bdc3;gap:6px}.review-meta i{display:inline-block;width:4px;height:4px;background:#85a0a9;border-radius:50%;margin-right:4px}.review-meta button{background:none;border:0;padding:2px 0;color:#ffff00;font-family:inherit;font-size:10px;cursor:pointer}.mu-signature{border-top-color:#81a6ac33}
/* The entrance takes over the screen without moving the classroom layout. */
.entrance-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;inset:0;margin:0;border:0;border-radius:0;padding:0;background:#050708;color:#f2f4ed;overflow:hidden;box-shadow:none}
.entrance-dialog::backdrop{background:#050708}.entrance-brand{position:absolute;top:clamp(25px,6vh,60px);left:clamp(25px,5vw,75px);display:flex;align-items:center;gap:14px}.entrance-brand img{width:31px;height:31px}.entrance-brand span{font-size:9px;letter-spacing:2px;color:#9eaeae}
.entrance-quote,.entrance-invitation{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:920px;text-align:center;transition:opacity .75s,filter .75s;animation:entrance-fade 1.6s both}
.entrance-kicker{font-size:10px!important;letter-spacing:3px!important;color:#ffff00!important;margin:0 0 28px!important}.entrance-quote blockquote{font-family:Arial,Helvetica,sans-serif;font-weight:400;line-height:1.13;letter-spacing:-2.5px;font-size:clamp(32px,5.5vw,76px);margin:0 0 30px}.quote-bracket{font-weight:400;color:#ffff00;font-size:.85em;margin:0 14px}.entrance-quote a{font-size:9px;letter-spacing:1.8px;color:#94a5a9;display:inline-block;padding:9px;text-decoration:none}.entrance-quote a:hover{color:#ffff00}.entrance-invitation{opacity:0;pointer-events:none;animation:none;filter:blur(5px)}
.entrance-invitation h2{font-size:clamp(43px,7vw,94px);line-height:1;letter-spacing:-4px;margin:0;color:#f2f4ed;font-weight:400}.entrance-invitation>p:not(.entrance-kicker){font-size:13px;color:#91a6aa;margin:24px 0 30px}.entrance-invitation .gold-button{margin:auto;padding:14px 24px;font-size:13px}.entrance-invitation .quiet-button{display:block;margin:18px auto 0;font-size:10px;color:#8fa5aa}.entrance-dialog.invitation .entrance-quote{opacity:0;pointer-events:none;filter:blur(5px);animation:none}.entrance-dialog.invitation .entrance-invitation{opacity:1;pointer-events:auto;filter:none}.entrance-skip{position:absolute;bottom:30px;right:clamp(25px,5vw,75px);font-size:11px;color:#a4b5b7}.entrance-floor{position:absolute;bottom:35px;left:clamp(25px,5vw,75px);font-size:8px;letter-spacing:2px;color:#5f787e}@keyframes entrance-fade{from{opacity:0;transform:translate(-50%,-45%);filter:blur(5px)}to{opacity:1;transform:translate(-50%,-50%);filter:none}}
/* Executive feedback is an honest, labeled sample until an AI service is connected. */
.entrance-quote blockquote{max-width:920px;margin-left:auto;margin-right:auto;text-wrap:balance;font-size:clamp(32px,4.5vw,65px)}#quoteText{white-space:normal}#quotePosition{margin-top:12px;font-size:8px;letter-spacing:3px;color:#6d858b}.entrance-quote.quote-in{animation:quote-enter .9s both}.entrance-quote.quote-out{animation:quote-exit .75s both}.entrance-skip{background:#ffff00;color:#003d4b;font-weight:700;padding:11px 17px;border:1px solid #ffff00;border-radius:3px}.entrance-skip:hover{color:#003d4b;background:#ffff83}.entrance-dialog.invitation .entrance-quote{animation:none!important}@keyframes quote-enter{from{opacity:0;filter:blur(4px)}to{opacity:1;filter:none}}@keyframes quote-exit{from{opacity:1;filter:none}to{opacity:0;filter:blur(4px)}}
.review-dialog{width:min(790px,calc(100vw - 32px));max-width:790px;max-height:calc(100dvh - 32px);padding:32px;background:linear-gradient(145deg,#0d3c49,#002932);border:1px solid #5e929b;border-top:3px solid #ffff00;border-radius:8px;overflow:auto}.review-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}
.sample-banner{font-size:8px;letter-spacing:1.4px;color:#9ebec5;line-height:1.5;padding-bottom:20px;margin-right:20px}.review-dialog>.eyebrow{color:#ffff00;font-size:9px}.review-dialog h2{font-size:clamp(25px,3vw,38px);font-weight:400;letter-spacing:-1px;line-height:1.1;margin:12px 0}.review-summary{font-size:13px!important;line-height:1.5!important;max-width:570px}.verdict-stamp{display:flex;justify-content:space-between;gap:12px;color:#ffff00;font-size:11px;letter-spacing:1px;border:1px solid #ffff0055;background:#ffff000b;padding:12px;margin-top:20px}.verdict-stamp span{color:#a5c5cb;font-size:9px;letter-spacing:0}
.review-tabs{display:flex;margin:20px 0 18px;border-bottom:1px solid #5f899166;gap:24px}.review-tabs button{padding:12px 0;color:#a6c4cb;border:0;border-bottom:2px solid transparent;font-family:inherit;background:none;cursor:pointer;font-size:12px;white-space:nowrap}.review-tabs button[aria-selected=true]{color:#ffff00;border-bottom-color:#ffff00}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.review-grid article>span{font-size:8px;letter-spacing:1.2px;color:#85adb6}.review-grid h3{font-weight:400;font-size:19px;margin:8px 0;color:white}.review-grid p{font-size:12px;line-height:1.6;color:#b7d0d6;margin:0}.practice-verdict{font-size:14px;line-height:1.5;color:#ffff00;border-top:1px solid #507b8455;padding-top:20px;margin:22px 0 0}.review-bottom{border-top:1px solid #507b8455;margin-top:22px;padding-top:16px;display:flex;gap:16px;align-items:center;justify-content:space-between}.review-bottom>span{font-size:9px;color:#88adb7}.example-note,.review-footnote{font-size:11px;color:#9bbfc8;line-height:1.6}.delivery-list{padding-left:20px;margin:20px 0;display:grid;gap:20px}.delivery-list li{color:#ffff00;font-size:13px;padding-left:8px}.delivery-list strong{display:block;color:white;font-size:17px;font-weight:400;margin-bottom:7px}.delivery-list span{display:block;color:#b7d0d6;font-size:12px;line-height:1.6}.revised-pitch{font-size:19px;line-height:1.65;letter-spacing:-.2px;margin:20px 0;color:#e8f0ee;border-left:2px solid #ffff00;padding-left:22px}.review-dialog [hidden]{display:none}
@media(max-height:760px){.control-panel{padding-bottom:70px}.executive-control{margin-top:9px;padding-top:9px}.floor-button{height:44px}.mu-signature img{height:44px}.timer-area{padding:6px 16px 12px 9px!important}.arrival{padding:12px;bottom:7%}.arrival h2{font-size:25px}.lobby-welcome strong{font-size:25px}}
@media(min-width:601px) and (max-height:580px){.control-panel{padding-bottom:58px;padding-top:8px}.floor-buttons{margin-top:6px}.panel-heading h2{font-size:18px}.panel-heading>p:last-child{display:none}.floor-button{height:37px;gap:1px;font-size:21px}.custom-floor{margin-top:7px}.tips-toggle{margin-top:7px}.executive-control{margin-top:7px;padding-top:7px}.review-toggle strong{font-size:10px}.review-toggle small{font-size:8px;margin-top:2px}.review-meta{font-size:7px;margin-top:4px}.review-meta button{font-size:9px}.mu-signature img{height:35px}.mu-signature{bottom:8px;padding-top:6px}.lobby-welcome strong{font-size:20px}.lobby-welcome{bottom:5%;padding:4px 18px}.timer-area{left:10px;top:8px}.arrival h2{font-size:22px}.arrival>p:not(.eyebrow){font-size:10px;margin-bottom:8px}.arrival .gold-button,.arrival .outline-button{font-size:10px;padding:7px 9px}.arrival .eyebrow{font-size:7px}.arrival{padding:10px;bottom:8%}}
@media(max-width:600px){.app-shell{min-height:710px}.control-panel{padding:8px 10px}.executive-control{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;margin:0;padding-top:7px}.review-toggle{gap:12px}.review-toggle strong{font-size:10px}.review-toggle small{font-size:8px;margin-top:2px}.review-meta{margin:0;gap:12px}.review-meta>span{font-size:7px}.mu-signature{margin:0}.mu-signature img{height:27px}.tower-lobby>img{object-position:52% center}.lobby-welcome{bottom:5%;padding:4px 12px}.lobby-welcome>span,.lobby-welcome small{font-size:6px;letter-spacing:1px}.lobby-welcome strong{font-size:20px;margin:4px 0}.timer-area{max-width:47%;top:8px;left:10px;padding:4px 12px 8px 7px!important}.elevator[data-state=ready] .stage-label{font-size:8px}.review-dialog{padding:22px 18px}.review-grid{gap:16px}.review-grid h3{font-size:16px}.review-grid p{font-size:11px}.review-tabs{gap:20px}.review-tabs button{font-size:11px}.review-bottom>span{max-width:110px;line-height:1.5}.sample-banner{font-size:7px}.verdict-stamp{font-size:9px}.verdict-stamp span{font-size:8px}.revised-pitch{font-size:16px}.entrance-brand span{font-size:7px;letter-spacing:1px}.entrance-quote blockquote{letter-spacing:-1px;font-size:34px}.quote-bracket{margin:0 6px}.entrance-kicker{font-size:8px!important;letter-spacing:1.5px!important}.entrance-quote a{font-size:7px;letter-spacing:1px}.entrance-invitation h2{letter-spacing:-2px}.entrance-invitation>p:not(.entrance-kicker){font-size:11px}.arrival{inset:auto 5% 8% 5%;padding:9px}.arrival h2{font-size:20px}.arrival>p:not(.eyebrow){font-size:9px}.arrival-actions{gap:6px}.arrival .gold-button,.arrival .outline-button{font-size:9px;padding:7px 8px}}
@media(prefers-reduced-motion:reduce){.door,.tower-lobby,.entrance-quote,.entrance-invitation{transition:none!important;animation:none!important}.arrival{animation:mu-reveal 0s 1.6s both}.floating-tip{animation-duration:.01ms!important}}
