/* Połączenie radiowe z Mike'iem (js/ui/MikeUI.js, portrety pixel art: js/ui/MikePortrait.js).
   Okno siedzi w ramce terminala z nadgarstka (wrist-terminal.css). */
.mike-codec{--mk-line:#4c7789;--mk-dim:#7fa2b1;--mk-hi:#dff3f6;--mk-amb:#f2c46a;--mk-red:#ff5a4a;--mk-grn:#6dffa0;height:100%;display:flex;flex-direction:column;gap:6px;padding:4px 6px;box-sizing:border-box;color:#d6e7ef;background:radial-gradient(ellipse at 50% 0,#0d2233,#050c15 70%);font:13px/1.45 Consolas,"Courier New",monospace}
.sh-modal-wrap.wrist-open .sh-modal-body:has(.mike-codec){padding:6px;background:#050c15}
/* na połączenie terminal podnosimy bliżej oczu (większy); telefon i wąskie ekrany zostają przy swoich układach */
@media(min-width:801px) and (min-height:641px){.sh-modal-wrap.wrist-open.mike-open .sh-modal{width:min(1160px,80vw);height:min(740px,76vh)}}

/* pasek nagłówka: częstotliwość, kanał szyfrowany, sygnał, zegar */
.mike-bar{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:4px 10px;border:1px solid var(--mk-line);background:linear-gradient(90deg,#0b2131,#071420 55%,#0b2131);font-size:11px;letter-spacing:.08em;color:var(--mk-dim)}
.mike-bar>span{white-space:nowrap}
.mike-link{flex:1;min-width:0;text-align:center;color:var(--mk-hi);font-weight:700;letter-spacing:.14em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 0 8px #6cc7dd66}
.mike-live{display:inline-block;width:7px;height:7px;margin-inline-end:9px;border-radius:50%;background:var(--mk-red);box-shadow:0 0 7px var(--mk-red);vertical-align:1px;animation:mikeBlink 1.1s steps(2,jump-none) infinite}
.mike-sig{display:flex;align-items:flex-end;gap:2px;height:12px}
.mike-sig i{width:3px;background:#1f3946}
.mike-sig i:nth-child(1){height:3px}.mike-sig i:nth-child(2){height:5px}.mike-sig i:nth-child(3){height:7px}.mike-sig i:nth-child(4){height:10px}.mike-sig i:nth-child(5){height:12px}
.mike-sig i.on{background:var(--mk-grn);box-shadow:0 0 4px #6dffa080}
.mike-clock{color:var(--mk-amb)}

/* kadry: Mike (duży), VU, kafelek operatora + dane łącza */
.mike-stage{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 14px minmax(118px,23%);gap:6px}
.mike-feed{position:relative;min-width:0;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#04080d;border:1px solid var(--mk-line);box-shadow:inset 0 0 0 1px #000}
.mike-screen{position:relative;flex:0 0 auto;line-height:0}
.mike-screen canvas{display:block;image-rendering:pixelated;image-rendering:crisp-edges}
/* CRT: linie skanowania dokładnie co piksel portretu (--px), winieta, przesuwający się pas zakłóceń */
.mike-screen::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,#0000 0 calc(var(--px,3px)*.62),#00000040 calc(var(--px,3px)*.62) var(--px,3px))}
.mike-screen::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0000 0,#a8ecff10 46%,#a8ecff1c 50%,#a8ecff10 54%,#0000 100%) 0 0/100% 260% no-repeat,radial-gradient(ellipse at 50% 46%,#0000 58%,#0009 100%);animation:mikeRoll 7s linear infinite}
.mike-corners{position:absolute;inset:6px;pointer-events:none;z-index:2;--c:#9fd3e2;background:linear-gradient(var(--c),var(--c)) 0 0/12px 2px,linear-gradient(var(--c),var(--c)) 0 0/2px 12px,linear-gradient(var(--c),var(--c)) 100% 0/12px 2px,linear-gradient(var(--c),var(--c)) 100% 0/2px 12px,linear-gradient(var(--c),var(--c)) 0 100%/12px 2px,linear-gradient(var(--c),var(--c)) 0 100%/2px 12px,linear-gradient(var(--c),var(--c)) 100% 100%/12px 2px,linear-gradient(var(--c),var(--c)) 100% 100%/2px 12px;background-repeat:no-repeat;opacity:.7}
.mike-tag{position:absolute;left:10px;bottom:10px;z-index:3;padding:2px 8px;background:#020a12e0;border:1px solid var(--mk-line);border-left:3px solid var(--mk-amb);color:var(--mk-hi);font-weight:700;letter-spacing:.14em;font-size:12px;white-space:nowrap}
.mike-tag small{margin-inline-start:8px;color:var(--mk-amb);font-weight:400;letter-spacing:.08em;font-size:10px}
.mike-rec{position:absolute;top:9px;right:12px;z-index:3;color:var(--mk-red);font-size:10px;letter-spacing:.14em;text-shadow:0 0 6px #ff5a4a88}
.mike-rec b{margin-inline-start:6px;color:var(--mk-hi);font-weight:400}
.mike-boot{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;background:#02070cd0;pointer-events:none;animation:mikeBoot .95s linear forwards}
.mike-boot b{padding:6px 14px;border:1px solid var(--mk-amb);color:var(--mk-amb);letter-spacing:.24em;font-size:12px;animation:mikeBlink .3s steps(2,jump-none) infinite}
.mike-vu{display:flex;flex-direction:column-reverse;gap:2px;padding:4px 3px;border:1px solid var(--mk-line);background:#03080d}
.mike-vu i{flex:1;min-height:2px;background:#10262f;border-radius:1px}
.mike-vu i.on{background:var(--mk-grn);box-shadow:0 0 5px #6dffa070}
.mike-vu i:nth-child(n+10).on{background:var(--mk-amb);box-shadow:0 0 5px #f2c46a70}
.mike-vu i:nth-child(n+13).on{background:var(--mk-red);box-shadow:0 0 5px #ff5a4a80}
.mike-side{display:flex;flex-direction:column;gap:6px;min-width:0;min-height:0}
.mike-op{flex:1}
.mike-op .mike-tag{left:6px;bottom:6px;font-size:10px;padding:1px 6px}
.mike-op .mike-corners{inset:4px;--c:#7fb0c0}
.mike-meta{flex:0 0 auto;margin:0;padding:5px 8px;border:1px solid var(--mk-line);background:#06111c;font-size:10px;display:grid;gap:1px;letter-spacing:.06em}
.mike-meta div{display:flex;justify-content:space-between;gap:6px}.mike-meta dt{color:var(--mk-dim)}.mike-meta dd{margin:0;color:var(--mk-hi)}

/* transkrypcja (cały obszar = przycisk: pokaż całość / dalej) */
.mike-transcript{all:unset;box-sizing:border-box;display:block;flex:0 0 auto;max-height:34%;overflow:auto;padding:7px 12px 5px;border:1px solid var(--mk-line);border-left:3px solid var(--mk-amb);background:linear-gradient(#071523,#040b14);cursor:pointer;text-align:start;scrollbar-width:thin}
.mike-transcript:focus-visible{outline:1px solid var(--mk-amb);outline-offset:-3px}
.mike-transcript small{color:#7dc7d5;letter-spacing:.12em;font-size:10px}
.mike-transcript p{margin:2px 0 0;color:#e6f0f2;font-size:clamp(12px,1.22vw,15px);line-height:1.5;white-space:pre-wrap;text-shadow:0 0 6px #7fd8ee30}
.mike-transcript p b{margin-inline-end:.6em;color:var(--mk-amb);letter-spacing:.1em}
.mike-rest{visibility:hidden}
.mike-caret{display:inline-block;width:.55em;height:1.05em;margin-inline-start:1px;background:#9fe7ff;vertical-align:-.18em;animation:mikeBlink .7s steps(2,jump-none) infinite}
.mike-done .mike-caret{display:none}
.mike-hint{display:block;margin-top:1px;text-align:end;font-style:normal;font-size:10px;letter-spacing:.12em;color:var(--mk-dim)}
.mike-done .mike-hint{color:var(--mk-amb);animation:mikeBlink 1.2s steps(2,jump-none) infinite}

.mike-codec footer{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:4px 6px;border:1px solid var(--mk-line);background:#06111c}
.mike-codec footer>span{margin-inline-end:auto;color:var(--mk-dim);font-size:11px;white-space:nowrap}
.mike-codec footer .sh-btn{margin:0}
.mike-fx{all:unset;cursor:pointer;padding:5px 8px;border:1px solid #2f5263;color:var(--mk-dim);font-size:10px;letter-spacing:.08em;white-space:nowrap}
.mike-fx.on{color:var(--mk-grn);border-color:#3f7a62}
.mike-fx:focus-visible{outline:1px solid var(--mk-amb)}

@keyframes mikeBlink{50%{opacity:0}}
@keyframes mikeRoll{from{background-position:0 130%,0 0}to{background-position:0 -30%,0 0}}
@keyframes mikeBoot{0%{opacity:1}55%{opacity:1}70%{opacity:.4}80%{opacity:.85}100%{opacity:0;visibility:hidden}}

/* mniejszy laptop */
@media(max-width:1400px),(max-height:800px){.mike-stage{grid-template-columns:minmax(0,1fr) 12px minmax(108px,22%)}.mike-meta{font-size:9px;padding:4px 6px}}
/* telefon w poziomie: zwarty układ, transkrypcja niżej i mniejsza */
@media(orientation:landscape) and (max-height:520px){
  .mike-codec{gap:4px;padding:2px 3px;font-size:11px}
  .mike-bar{gap:8px;padding:2px 7px;font-size:9px}
  .mike-freq{display:none}
  .mike-stage{grid-template-columns:minmax(0,1fr) 9px minmax(84px,21%);gap:4px}
  .mike-meta{display:none}
  .mike-tag{left:6px;bottom:6px;font-size:10px;padding:1px 6px}.mike-tag small{display:none}
  .mike-rec{top:5px;right:8px;font-size:9px}
  .mike-corners{inset:3px}
  .mike-transcript{max-height:36%;padding:4px 9px 3px}
  .mike-transcript small{display:none}
  .mike-transcript p{font-size:11.5px;line-height:1.4}
  .mike-hint{font-size:9px}
  .mike-codec footer{padding:2px 4px;gap:5px}
  .mike-codec footer>span{display:none}
  .mike-codec footer .sh-btn{font-size:10px;padding:5px 9px;margin-inline-start:auto}
  .mike-codec footer .sh-btn+.sh-btn{margin-inline-start:0}
  .mike-fx{padding:4px 6px;font-size:9px}
}
@media(max-width:520px){.mike-stage{grid-template-columns:minmax(0,1fr) 8px 30%}.mike-meta,.mike-freq{display:none}.mike-tag small{display:none}}
@media(prefers-reduced-motion:reduce){.mike-screen::after,.mike-live,.mike-caret,.mike-boot b{animation:none}}
