/* A restrained communications panel over the actual tactical board. */
.mission-transmission-dialog{position:fixed;inset:auto auto clamp(16px,5vh,64px) 50%;transform:translateX(-50%);margin:0;padding:0;width:min(920px,calc(100vw - 40px));max-width:none;max-height:calc(100svh - 90px);overflow:auto;border:1px solid #4c879c;background:#081520f5;color:#e5f3f8;box-shadow:0 14px 70px #000a,0 0 30px #3ea6d312}
.mission-transmission-dialog::backdrop{background:linear-gradient(180deg,#02091018 25%,#02091077);backdrop-filter:none}
.mission-transmission{display:grid;grid-template-columns:148px minmax(0,1fr);gap:26px;padding:26px 30px;border-left:2px solid var(--transmission-colour);background:linear-gradient(110deg,#13304266,transparent 65%)}
.mission-transmission.is-hostile{background:linear-gradient(110deg,#38263788,transparent 65%)}
.transmission-portrait{width:148px;height:148px;border-radius:50%;border:1px solid var(--transmission-colour);overflow:hidden;background:radial-gradient(circle at 50% 32%,#294455,#07121d 75%);box-shadow:0 0 24px #6fcfff16;margin-top:12px}
.transmission-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 10%;transform:scale(1.35);transform-origin:50% 23%;image-rendering:pixelated}
.transmission-content{min-width:0}.transmission-signal{display:flex;align-items:center;gap:8px;font:500 9px/1.5 Orbitron,Rajdhani,sans-serif;letter-spacing:.15em;color:var(--transmission-colour);margin:0 0 10px}.transmission-signal>span{width:4px;height:4px;flex:none;border-radius:50%;background:var(--transmission-colour);box-shadow:0 0 7px var(--transmission-colour)}
.transmission-content h2{font:500 clamp(14px,1.25vw,18px)/1.5 Orbitron,Rajdhani,sans-serif;letter-spacing:.025em;color:var(--transmission-colour);text-shadow:0 0 15px #79d2ff1a;margin:0}
.transmission-role{font:500 10px/1.5 Rajdhani,sans-serif;letter-spacing:.12em;color:#90aabc;margin:4px 0 0}
.transmission-text{font:500 clamp(17px,1.4vw,20px)/1.55 Rajdhani,'Segoe UI',sans-serif;color:#e4edf3;margin:18px 0 22px;max-width:66ch}
.transmission-voice{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 18px}.transmission-voice button{font-size:12px;padding:6px 10px}.transmission-voice label{display:flex;align-items:center;gap:6px;font:500 12px Rajdhani,sans-serif;color:#9ebdce}.transmission-voice input{accent-color:#79d2ff}.transmission-voice [role=status]{color:#789aaf;font:500 11px Rajdhani,sans-serif;margin-left:auto}.transmission-text [data-voice-word]{transition:color .06s ease,text-shadow .06s ease}.transmission-text .is-speaking{color:#ffe3a0;text-shadow:0 0 5px #f7c85d99,0 0 13px #c9933159}
@media(max-width:650px){.transmission-voice{grid-column:1/-1;margin:0}.transmission-voice [role=status]{flex-basis:100%;margin:0}}
@media(prefers-reduced-motion:reduce){.transmission-text [data-voice-word]{transition:none}}
.transmission-content footer{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #2b485866;padding-top:15px;background:none;margin:0}.transmission-step{font:500 10px/1.5 Rajdhani,sans-serif;letter-spacing:.08em;color:#7695a8}.transmission-content footer>div{display:flex;gap:10px}.transmission-content button{font:600 14px Rajdhani,sans-serif;padding:9px 13px;border-radius:1px;white-space:nowrap}.transmission-content .primary{background:#153545;border-color:var(--transmission-colour);color:var(--transmission-colour);min-width:0}.transmission-content .primary:hover{background:#244b5e;color:#e5f8ff}.transmission-content .quiet{background:transparent;border-color:#2d4c5c;color:#9ebdce}
@media(max-width:650px){.mission-transmission-dialog{inset:auto auto 12px 50%;width:calc(100vw - 20px);max-height:calc(100svh - 24px)}.mission-transmission{grid-template-columns:70px minmax(0,1fr);gap:14px;padding:18px 16px}.transmission-portrait{width:70px;height:70px;margin-top:6px}.transmission-content{display:contents}.transmission-content header{align-self:center}.transmission-content h2{font-size:12px}.transmission-role{font-size:9px}.transmission-signal{font-size:8px;letter-spacing:.08em}.transmission-text{grid-column:1/-1;font-size:17px;margin:0}.transmission-content footer{grid-column:1/-1;flex-wrap:wrap;gap:12px}.transmission-content footer>div{flex-wrap:wrap;gap:7px}.transmission-content button{font-size:13px;padding:10px}.transmission-step{font-size:9px}}
