/* A short, player-paced lobby cutscene. */
.console:has(.briefing-scene) :is(.topbar,.top-status,.venue-nav,.mission,.controls,.journal){visibility:hidden;pointer-events:none}
.briefing-scene::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(#090b18aa,transparent 32%,transparent 72%,#090b18bb);z-index:1}
dialog.intro-dialog{position:fixed;inset:auto 0 calc(24px + env(safe-area-inset-bottom));margin:0 auto;width:min(820px,calc(100% - 48px));max-height:50dvh;background:#1e2244f5;border:1px solid #a3abd8;border-radius:2px;color:#fff;overflow:visible;box-shadow:0 18px 70px #0007}
dialog.intro-dialog::backdrop{background:#090b181c;backdrop-filter:none}
dialog.intro-dialog .dialog-top{display:none}
dialog.intro-dialog #dialogContent{padding:22px 24px 16px}
.intro-heading{position:fixed;top:30px;left:0;right:0;text-align:center;pointer-events:none;color:#fff;text-shadow:0 2px 16px #0009}
.intro-heading>strong{display:block;font:normal 36px/.95 Georgia,serif;letter-spacing:-1.7px}
.intro-heading>span{display:block;font:700 9px/1.4 Arial,sans-serif;letter-spacing:2px;margin:12px 0}
.intro-heading h1{font:normal clamp(26px,3vw,38px)/1.1 Georgia,serif;margin:0;letter-spacing:-.8px}
.intro-dialogue{display:flex;gap:20px;align-items:center;min-height:112px;animation:briefing-in .2s ease-out}
.intro-portrait{width:104px;height:104px;flex:0 0 104px;object-fit:contain;background:#b9c3df;border:1px solid #d1d7ed;border-radius:2px;image-rendering:pixelated}
.intro-words{min-width:0}.intro-role{font:700 8px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:1px;color:#bac7ee}
.intro-words h2{font:normal 27px/1.1 Georgia,serif;margin:5px 0 8px;color:#fff}
.intro-words p{font:400 15px/1.55 Arial,sans-serif;color:#f2f3ff;margin:0;max-width:590px}
.intro-footer{display:flex;align-items:center;gap:8px;margin-top:17px;padding-top:12px;border-top:1px solid #626d9a}
.intro-count{margin-right:auto;font:700 10px monospace;color:#c3cdef;letter-spacing:1px}
.intro-footer button{min-height:40px;font-size:10px;padding:10px 13px}
.intro-footer .secondary{background:transparent;border:1px solid #7883b1;color:#e1e6ff;box-shadow:none}
.intro-footer .primary{background:#b4bcf7;color:#171d3a;border:1px solid #d4d9ff;box-shadow:0 2px 0 #6c78b4}
@keyframes briefing-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:600px){dialog.intro-dialog{width:calc(100% - 24px);bottom:calc(14px + env(safe-area-inset-bottom));max-height:55dvh}dialog.intro-dialog #dialogContent{padding:16px}.intro-heading{top:24px}.intro-heading>strong{font-size:30px}.intro-heading h1{font-size:27px}.intro-dialogue{gap:13px;align-items:flex-start;min-height:150px}.intro-portrait{width:65px;height:78px;flex-basis:65px}.intro-role{font-size:7px}.intro-words h2{font-size:25px}.intro-words p{font-size:13px;line-height:1.55}.intro-footer{flex-wrap:wrap;gap:7px}.intro-footer button{font-size:9px;padding:10px}.intro-footer .primary{flex-grow:1}.intro-count{font-size:9px}}
@media(max-height:560px) and (orientation:landscape){.intro-heading{top:14px;text-align:left;left:22px}.intro-heading>strong{font-size:25px}.intro-heading>span{margin:7px 0;font-size:7px}.intro-heading h1{font-size:21px}dialog.intro-dialog{bottom:12px;max-height:55dvh}dialog.intro-dialog #dialogContent{padding:12px 16px}.intro-dialogue{min-height:65px;gap:14px}.intro-portrait{width:64px;height:64px;flex-basis:64px}.intro-words h2{font-size:23px;margin:3px 0 5px}.intro-words p{font-size:12px;line-height:1.4}.intro-footer{margin-top:8px;padding-top:8px}.intro-footer button{min-height:32px;padding:7px 12px}}
@media(prefers-reduced-motion:reduce){.intro-dialogue{animation:none}}
