/* LNF777 · HUD · v2 — main styles */
/* ============================================================
   HUD — Futuristic interface (Russian) — v2
   ============================================================ */
:root{
  color-scheme:dark only;
  --bg-0:#03080c; --bg-1:#071118;
  --cyan:#6ee7ff; --cyan-soft:#9ff0ff; --cyan-dim:rgba(110,231,255,.35); --cyan-line:rgba(110,231,255,.55); --cyan-bg:rgba(110,231,255,.06);
  --amber:#ffc85a; --amber-soft:#ffd98a; --amber-dim:rgba(255,200,90,.35);
  --mint:#7fffb2; --red:#ff5566;
  --ink:#d6f0ff; --ink-dim:#8fb6c8; --ink-muted:#5f8497;
  --mono:'JetBrains Mono','Fira Code',ui-monospace,monospace;
  --display:'Orbitron','Rajdhani',sans-serif;
  --ui:'Rajdhani','Inter','Helvetica',sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;height:100%;overflow:hidden;background:var(--bg-0);color:var(--ink);font-family:var(--ui);letter-spacing:.02em;-webkit-font-smoothing:antialiased;forced-color-adjust:none}
body{--mx:.5;--my:.5}

.bg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.bg .nebula{position:absolute;inset:-10%;background:
  radial-gradient(1000px 680px at calc(85% + (var(--mx) - .5) * -40px) calc(-10% + (var(--my) - .5) * -30px), rgba(110,231,255,.14), transparent 60%),
  radial-gradient(900px 600px at calc(-10% + (var(--mx) - .5) * 40px) calc(110% + (var(--my) - .5) * 30px), rgba(255,200,90,.09), transparent 60%),
  linear-gradient(180deg,#03080c 0%,#050f17 100%);}
.bg .stars{position:absolute;inset:-5%;background:
  radial-gradient(circle at 20% 30%,#fff .5px,transparent 1.3px) 0 0/300px 300px,
  radial-gradient(circle at 70% 70%,#fff .5px,transparent 1.3px) 0 0/220px 220px,
  radial-gradient(circle at 40% 80%,rgba(255,255,255,.8) .5px,transparent 1.3px) 0 0/180px 180px,
  radial-gradient(circle at 85% 15%,rgba(255,255,255,.7) .5px,transparent 1.3px) 0 0/260px 260px;
  transform:translate3d(calc((var(--mx) - .5) * -14px), calc((var(--my) - .5) * -10px), 0);
  transition:transform .35s cubic-bezier(.2,.7,.2,1);}
.bg .grid{position:absolute;inset:0;background:
  linear-gradient(rgba(90,200,255,.05) 1px,transparent 1px) 0 0/44px 44px,
  linear-gradient(90deg,rgba(90,200,255,.05) 1px,transparent 1px) 0 0/44px 44px;
  transform:translate3d(calc((var(--mx) - .5) * -6px), calc((var(--my) - .5) * -4px), 0);
  transition:transform .35s cubic-bezier(.2,.7,.2,1);}
.bg .scan{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px, rgba(0,0,0,.18) 3px 4px);mix-blend-mode:multiply}

.sys-bar{position:fixed;left:0;right:0;height:26px;z-index:10;display:flex;align-items:center;padding:0 18px;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);background:linear-gradient(180deg,rgba(10,22,30,.92),rgba(4,10,14,.72));border-bottom:1px solid var(--cyan-dim);gap:14px}
.sys-bar.bottom{top:auto;bottom:0;border-bottom:none;border-top:1px solid var(--cyan-dim);color:var(--ink-dim)}
.sys-bar.top{top:0}
.sys-bar .sep{color:var(--cyan-dim)}
.sys-bar .spacer{flex:1}
.dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 8px var(--mint);display:inline-block;vertical-align:middle;animation:pulse 1.6s infinite}
.dot.amber{background:var(--amber);box-shadow:0 0 8px var(--amber)}
.dot.cyan{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}

.ticker{overflow:hidden;flex:1;mask-image:linear-gradient(90deg,transparent,black 6%,black 94%,transparent)}
.ticker-track{display:inline-block;white-space:nowrap;animation:ticker 70s linear infinite;color:var(--ink-dim)}
.ticker-track span{margin:0 18px}.ticker-track .tag{color:var(--amber)}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.stage{position:fixed;inset:26px 0 26px 0;z-index:1;padding:14px 18px;display:grid;grid-template-columns:178px 1fr 178px;grid-template-rows:1fr auto;gap:14px;min-height:0}

.rail{display:flex;flex-direction:column;gap:10px;min-height:0;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim)}
.rail-block{position:relative;border:1px solid var(--cyan-dim);background:rgba(7,18,26,.55);padding:10px;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px)}
.rail-block h4{margin:0 0 8px;font-family:var(--mono);font-size:10px;letter-spacing:.22em;color:var(--cyan);font-weight:600;display:flex;align-items:center;gap:8px}
.rail-block h4::before{content:'';width:7px;height:7px;background:var(--cyan);box-shadow:0 0 6px var(--cyan);transform:rotate(45deg);flex-shrink:0}
.rail-block .row{display:flex;justify-content:space-between;gap:6px;margin:3px 0}
.rail-block .row b{color:var(--ink);font-weight:500}

.bar{position:relative;height:6px;background:rgba(110,231,255,.08);border:1px solid var(--cyan-dim);margin:4px 0 8px;overflow:hidden}
.bar>i{position:absolute;top:0;left:0;bottom:0;background:linear-gradient(90deg,var(--cyan),var(--cyan-soft));box-shadow:0 0 8px var(--cyan);transition:width .5s cubic-bezier(.2,.7,.2,1)}
.bar.amber>i{background:linear-gradient(90deg,var(--amber),var(--amber-soft));box-shadow:0 0 8px var(--amber)}
.bar.mint>i{background:var(--mint);box-shadow:0 0 8px var(--mint)}

.eq{display:flex;align-items:flex-end;gap:3px;height:30px;margin-top:6px}
.eq i{flex:1;background:var(--cyan);box-shadow:0 0 6px var(--cyan-dim);height:calc(12% + var(--lvl,.3) * 78%);transition:height .25s ease}

.center{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:1fr auto auto auto;gap:10px;min-height:0}
.term-panel{grid-column:1 / -1}
.term-out-row{grid-column:1 / -1;height:100px;overflow-y:auto;padding:10px 14px;background:rgba(6,14,20,.7);border:1px solid var(--cyan-dim);font-family:var(--mono);font-size:11.5px;color:var(--ink);line-height:1.5;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);scrollbar-width:thin;scrollbar-color:rgba(110,231,255,.35) rgba(110,231,255,.08);position:relative}
.term-out-row::-webkit-scrollbar{width:5px}
.term-out-row::-webkit-scrollbar-thumb{background:rgba(110,231,255,.35);border-radius:3px}
.term-out-row::-webkit-scrollbar-track{background:rgba(110,231,255,.08)}
.term-out-row:empty::before{content:'> ожидаю команду… наберите help для списка';opacity:.5;font-style:italic}
.term-out-row.scrolled{mask-image:linear-gradient(180deg, transparent 0, #000 22px);-webkit-mask-image:linear-gradient(180deg, transparent 0, #000 22px)}
.term-out-row .ln{opacity:.9;margin-bottom:8px;padding-bottom:8px;border-bottom:1px dashed rgba(110,231,255,.12)}
.term-out-row .ln:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.term-out-row .ln b{color:var(--cyan-soft);font-weight:600}
.panel{position:relative;background:linear-gradient(180deg,rgba(10,24,34,.88),rgba(5,14,20,.88));border:1px solid var(--cyan-dim);padding:18px 20px;transition:border-color .3s,box-shadow .3s}
.panel:hover{border-color:var(--cyan);box-shadow:0 0 0 1px rgba(110,231,255,.15), 0 10px 40px rgba(110,231,255,.08)}
.panel::before,.panel::after,.panel>.cbr-bl,.panel>.cbr-br{content:'';position:absolute;width:14px;height:14px;border:2px solid var(--cyan);pointer-events:none}
.panel::before{top:-1px;left:-1px;border-right:none;border-bottom:none}
.panel::after{top:-1px;right:-1px;border-left:none;border-bottom:none}
.panel>.cbr-bl{bottom:-1px;left:-1px;border-right:none;border-top:none}
.panel>.cbr-br{bottom:-1px;right:-1px;border-left:none;border-top:none}
.panel.amber{border-color:var(--amber-dim)}
.panel.amber::before,.panel.amber::after,.panel.amber>.cbr-bl,.panel.amber>.cbr-br{border-color:var(--amber)}
.panel.amber:hover{border-color:var(--amber);box-shadow:0 0 0 1px rgba(255,200,90,.15), 0 10px 40px rgba(255,200,90,.08)}

.panel-head{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--cyan);margin-bottom:14px}
.panel-head::before{content:'';width:8px;height:8px;background:var(--cyan);box-shadow:0 0 8px var(--cyan);transform:rotate(45deg)}
.panel-head .id{margin-left:auto;color:var(--ink-muted);letter-spacing:.14em}
.panel.amber .panel-head{color:var(--amber)}
.panel.amber .panel-head::before{background:var(--amber);box-shadow:0 0 8px var(--amber)}

.identity{display:grid;grid-template-columns:230px 1fr;gap:22px;min-height:0}

/* CRT game display avatar */
.avatar-frame{position:relative;width:230px;padding:0;border:1px solid var(--cyan-dim);background:#04101a;box-shadow:inset 0 0 40px rgba(110,231,255,.08), 0 0 30px rgba(110,231,255,.08)}
.avatar-frame::before{content:'';position:absolute;inset:6px;border:1px solid rgba(110,231,255,.18);pointer-events:none;z-index:3;box-shadow:inset 0 0 60px rgba(0,0,0,.55)}
.avatar-screen{position:relative;overflow:hidden;margin:6px;height:260px;background:#02080e}
.avatar-screen img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.05) contrast(1.12) brightness(.92) hue-rotate(-6deg)}
.avatar-screen::before{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(0deg, rgba(0,0,0,.4) 50%, transparent 50%);background-size:100% 2px;mix-blend-mode:multiply;z-index:2;image-rendering:pixelated}
.avatar-screen::after{content:'';position:absolute;left:0;right:0;height:70px;top:-70px;background:linear-gradient(180deg, transparent, rgba(110,231,255,.14) 50%, transparent);animation:scanroll 4.5s linear infinite;pointer-events:none;z-index:2}
@keyframes scanroll{ to { top:100%; } }
.avatar-screen .vignette{position:absolute;inset:0;pointer-events:none;z-index:2;background:radial-gradient(ellipse at center, transparent 55%, rgba(0,0,0,.6) 100%)}
.avatar-screen .glitch{display:none}
@keyframes glitch{0%,96%,100%{opacity:0;transform:translateY(0)}97%{opacity:1;transform:translateY(-20px)}98%{opacity:1;transform:translateY(14px)}99%{opacity:0}}
.avatar-screen .hud{position:absolute;inset:0;z-index:3;pointer-events:none;font-family:var(--mono);font-size:9px;letter-spacing:.18em;color:var(--cyan);text-shadow:0 0 6px rgba(110,231,255,.8)}
.avatar-screen .hud .tl{position:absolute;top:6px;left:8px}
.avatar-screen .hud .tr{position:absolute;top:6px;right:8px;color:var(--amber);text-shadow:0 0 6px rgba(255,200,90,.8)}
.avatar-screen .hud .bl{position:absolute;bottom:6px;left:8px}
.avatar-screen .hud .br{position:absolute;bottom:6px;right:8px;color:var(--mint);text-shadow:0 0 6px rgba(127,255,178,.6)}
.avatar-screen .hud .bl b{display:inline-block;width:6px;height:6px;background:var(--red);box-shadow:0 0 6px var(--red);border-radius:50%;vertical-align:middle;margin-right:4px;animation:pulse 1.2s infinite}

.avatar-meta{margin:0 6px 6px;padding:6px 8px;border-top:1px solid rgba(110,231,255,.18);font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;color:var(--ink-muted);display:flex;justify-content:space-between}
.avatar-meta b{color:var(--cyan);font-weight:500}

.identity-body{display:flex;flex-direction:column;min-width:0}
.role-tag{font-family:var(--mono);font-size:10px;letter-spacing:.28em;color:var(--amber);text-transform:uppercase}
.name{font-family:var(--display);font-weight:700;font-size:30px;letter-spacing:.04em;color:#eaffff;margin:4px 0 0;text-shadow:0 0 18px rgba(110,231,255,.35);line-height:1.05}
.callsign{font-family:var(--mono);font-size:11px;color:var(--ink-dim);letter-spacing:.14em;margin-top:4px}
.callsign b{color:var(--cyan);font-weight:500}
.summary{margin-top:14px;font-size:13.5px;color:var(--ink);line-height:1.45}

.stack{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}
.stack-row{position:relative;font-size:11.5px;color:var(--ink);padding:5px 9px 5px 18px;border-left:2px solid var(--cyan-line);background:linear-gradient(90deg,rgba(110,231,255,.10),rgba(110,231,255,0) 70%);transition:background .25s, border-color .25s, transform .25s}
.stack-row:hover{background:linear-gradient(90deg,rgba(110,231,255,.22),rgba(110,231,255,0) 70%);border-color:var(--cyan);transform:translateX(2px)}
.stack-row::before{content:'▸';position:absolute;left:6px;top:5px;color:var(--cyan);font-size:10px}
.stack-row .label{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--cyan-soft);margin-right:6px}

.rate-block{margin-top:12px;display:flex;align-items:baseline;gap:10px;font-family:var(--mono)}
.rate-block .rate-label{font-size:10px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase}
.rate{font-family:var(--display);font-size:22px;font-weight:700;color:var(--amber);letter-spacing:.06em;text-shadow:0 0 14px rgba(255,200,90,.35)}

.contacts{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}
.contact-link{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--cyan);text-decoration:none;padding:5px 10px;border:1px solid var(--cyan-dim);background:var(--cyan-bg);transition:all .2s;position:relative;overflow:hidden}
.contact-link::before{content:'[';color:var(--cyan-dim);margin-right:4px}
.contact-link::after{content:']';color:var(--cyan-dim);margin-left:4px}
.contact-link:hover{background:rgba(110,231,255,.18);color:#fff;border-color:var(--cyan);box-shadow:0 0 14px rgba(110,231,255,.35)}
.contact-link:active{transform:translateY(1px)}

.briefing{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.briefing .info-text{font-size:12.5px;line-height:1.55;color:var(--ink);flex:1;min-height:0;overflow-y:auto;padding-right:8px;scroll-behavior:smooth}
.briefing .info-text.scrolled{mask-image:linear-gradient(180deg, transparent 0, #000 24px);-webkit-mask-image:linear-gradient(180deg, transparent 0, #000 24px)}
.briefing .info-text::-webkit-scrollbar{width:5px}
.briefing .info-text::-webkit-scrollbar-thumb{background:rgba(255,200,90,.35);border-radius:3px}
.briefing .info-text::-webkit-scrollbar-thumb:hover{background:var(--amber)}
.briefing .info-text::-webkit-scrollbar-track{background:rgba(255,200,90,.08)}
.briefing .info-text{scrollbar-width:thin;scrollbar-color:rgba(255,200,90,.35) rgba(255,200,90,.08)}
.hl-gold{color:var(--amber);text-shadow:0 0 10px rgba(255,200,90,.35)}
.hl-ice{color:var(--cyan);text-shadow:0 0 10px rgba(110,231,255,.35)}
.hl-mint{color:var(--mint);text-shadow:0 0 10px rgba(127,255,178,.35)}

.bottom-row{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:14px}
.mini-card{position:relative;padding:12px 14px;background:rgba(7,18,26,.75);border:1px solid var(--cyan-dim);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);transition:transform .2s, border-color .3s, background .3s}
.mini-card:hover{transform:translateY(-2px);background:rgba(10,28,40,.9);border-color:var(--cyan)}
.mini-card .mc-tag{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;color:var(--cyan);text-transform:uppercase}
.mini-card-title{font-family:var(--display);font-weight:600;font-size:15px;color:#eaffff;margin:4px 0 6px;letter-spacing:.04em}
.mini-card-text{font-size:12px;color:var(--ink-dim);line-height:1.45}
.mini-card.accent-gold{border-color:var(--amber-dim)}
.mini-card.accent-gold .mc-tag{color:var(--amber)}
.mini-card.accent-gold:hover{border-color:var(--amber)}
.mini-card.accent-mint .mc-tag{color:var(--mint)}
.mini-card.accent-mint:hover{border-color:var(--mint)}

.cta-strip{display:flex;align-items:center;gap:14px;padding:0 18px;background:linear-gradient(90deg,rgba(255,200,90,.12),rgba(255,200,90,.02));border:1px solid var(--amber-dim);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);min-width:320px}
.cta-text{font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.06em;color:var(--amber-soft);text-transform:uppercase}
.cta-button{margin-left:auto;display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#0a0f13;background:var(--amber);padding:9px 14px;text-decoration:none;font-weight:700;box-shadow:0 0 22px rgba(255,200,90,.45), inset 0 0 0 1px rgba(0,0,0,.2);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);transition:transform .15s, box-shadow .2s}
.cta-button::before{content:'▸'}
.cta-button:hover{transform:translateY(-1px);box-shadow:0 0 30px rgba(255,200,90,.75)}
.cta-button:active{transform:translateY(1px)}

.ripple{position:fixed;pointer-events:none;width:12px;height:12px;border-radius:50%;border:1px solid var(--cyan);z-index:9999;animation:rip .6s ease-out forwards;transform:translate(-50%,-50%)}
@keyframes rip{from{opacity:.9;width:8px;height:8px}to{opacity:0;width:120px;height:120px;border-color:rgba(110,231,255,0)}}

.cursor-tag{position:fixed;pointer-events:none;z-index:9998;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;color:var(--cyan);padding:2px 6px;border:1px solid var(--cyan-dim);background:rgba(5,12,18,.85);transform:translate(14px,14px);opacity:0;transition:opacity .2s;text-transform:uppercase;white-space:nowrap;left:0;top:0}
.cursor-tag.on{opacity:1}

@media (max-width:1100px){
  html,body{overflow:auto;height:auto}
  body{padding:28px 10px 40px}
  .sys-bar{display:none}
  .avatar-screen::before{background-size:100% 2px}
  .stage{position:static;inset:auto;display:flex;flex-direction:column;padding:0;gap:12px}
  .center{display:flex;flex-direction:column;gap:12px;order:1}
  .left-rail{order:2}
  .right-rail{order:3}
  .identity{grid-template-columns:1fr}
  .avatar-frame{width:100%;max-width:320px;margin:0 auto}
  .avatar-screen{height:auto;aspect-ratio:4/5}
  .stack{grid-template-columns:1fr}
  .bottom-row{grid-template-columns:1fr}
  .cta-strip{flex-direction:column;align-items:stretch;padding:14px;gap:10px}
  .cta-button{margin-left:0;justify-content:center}
  .rail{flex-direction:row;flex-wrap:wrap}
  .rail-block{flex:1 1 140px}
}
@media (min-width:1101px) and (max-height:820px){
  .panel{padding:14px 16px}
  .name{font-size:26px}
  .avatar-screen{height:210px}
  .stack{gap:5px 10px}
  .stack-row{font-size:11px;padding:4px 8px 4px 16px}
  .briefing .info-text{font-size:12px;line-height:1.5}
  .mini-card{padding:10px 12px}
  .mini-card-title{font-size:14px}
  .mini-card-text{font-size:11.5px}
}


/* ===== Boot sequence ===== */
.boot{position:fixed;inset:0;z-index:99;background:#03080c;display:flex;align-items:center;justify-content:center;font-family:var(--mono);color:var(--cyan);animation:bootOut .6s 5.2s forwards;pointer-events:none}
.boot-inner{width:min(520px,80vw);padding:22px 26px;border:1px solid var(--cyan-dim);background:rgba(6,14,20,.85);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}
.boot .line{font-size:11px;letter-spacing:.18em;text-transform:uppercase;opacity:0;animation:bootLine .3s forwards}
.boot .line:nth-child(1){animation-delay:0.20s}
.boot .line:nth-child(2){animation-delay:0.90s}
.boot .line:nth-child(3){animation-delay:1.70s}
.boot .line:nth-child(4){animation-delay:2.50s}
.boot .line:nth-child(5){animation-delay:3.30s;color:var(--amber)}
.boot .line:nth-child(6){animation-delay:4.10s;color:var(--mint)}
.boot .bar-wrap{margin-top:10px;height:4px;background:rgba(110,231,255,.1);border:1px solid var(--cyan-dim);overflow:hidden}
.boot .bar-wrap i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--cyan),var(--mint));box-shadow:0 0 8px var(--cyan);animation:bootBar 5s forwards}
@keyframes bootLine{to{opacity:1}}
@keyframes bootBar{to{width:100%}}
@keyframes bootOut{to{opacity:0;visibility:hidden}}

/* ===== Fade-in panels ===== */
.stage .panel, .stage .rail-block, .stage .mini-card, .stage .cta-strip{
  opacity:0; transform:translateY(6px);
  animation:panelIn .5s cubic-bezier(.2,.7,.2,1) forwards;
  animation-delay:5.4s;
}
.stage .center > .panel:nth-child(1){animation-delay:5.2s}
.stage .rail.left-rail .rail-block:nth-child(1){animation-delay:5.4s}
.stage .rail.left-rail .rail-block:nth-child(2){animation-delay:5.5s}
.stage .rail.left-rail .rail-block:nth-child(3){animation-delay:5.6s}
.stage .rail.right-rail .rail-block:nth-child(1){animation-delay:5.4s}
.stage .rail.right-rail .rail-block:nth-child(2){animation-delay:5.5s}
.stage .rail.right-rail .rail-block:nth-child(3){animation-delay:5.6s}
.stage .rail.right-rail .rail-block:nth-child(4){animation-delay:5.7s}
.stage .center > .panel:nth-child(2){animation-delay:5.7s}
.stage .bottom-row .mini-card:nth-child(1){animation-delay:5.8s}
.stage .bottom-row .mini-card:nth-child(2){animation-delay:5.85s}
.stage .bottom-row .mini-card:nth-child(3){animation-delay:5.9s}
.stage .bottom-row .cta-strip{animation-delay:5.95s}
@keyframes panelIn{to{opacity:1;transform:translateY(0)}}

/* ===== Name glitch on hover ===== */
.name{position:relative;display:inline-block;cursor:default}
.name::before, .name::after{
  content: attr(data-text);
  position:absolute;left:0;top:0;width:100%;
  opacity:0;pointer-events:none;
}
.name:hover::before{color:var(--cyan);transform:translate(-2px,0);opacity:.75;animation:glt 0.45s steps(2) infinite}
.name:hover::after{color:var(--amber);transform:translate(2px,0);opacity:.75;animation:glt 0.4s steps(2) reverse infinite}
@keyframes glt{
  0%{clip-path:inset(0 0 80% 0)}
  20%{clip-path:inset(40% 0 40% 0)}
  40%{clip-path:inset(80% 0 0 0)}
  60%{clip-path:inset(20% 0 60% 0)}
  100%{clip-path:inset(60% 0 20% 0)}
}

/* ===== Data stream (vertical rising dots behind right rail) ===== */
.datastream{position:fixed;right:0;top:26px;bottom:26px;width:40px;z-index:0;pointer-events:none;overflow:hidden;opacity:.4}
.datastream i{position:absolute;width:2px;height:14px;background:linear-gradient(180deg, transparent, var(--cyan), transparent);box-shadow:0 0 6px var(--cyan);animation:stream 5s linear infinite}
@keyframes stream{from{bottom:-20px}to{bottom:110%}}

50%{left:130%}}

/* ===== CTA button pulse ===== */
.cta-button{animation:ctaPulse 2.6s ease-in-out infinite}
@keyframes ctaPulse{0%,100%{box-shadow:0 0 22px rgba(255,200,90,.45), inset 0 0 0 1px rgba(0,0,0,.2)}50%{box-shadow:0 0 36px rgba(255,200,90,.85), inset 0 0 0 1px rgba(0,0,0,.2)}}

/* ===== Corner brackets animate on panel hover ===== */
.panel:hover::before, .panel:hover::after,
.panel:hover > .cbr-bl, .panel:hover > .cbr-br{ width:20px; height:20px; transition:width .25s, height .25s }
.panel::before,.panel::after,.panel>.cbr-bl,.panel>.cbr-br{transition:width .25s, height .25s}

/* ===== Mini-card number badges ===== */
.mini-card{counter-increment:mc}


/* ===== Avatar dashboard (replaces empty space below photo) ===== */
.avatar-dash{margin:4px 6px 6px;padding:8px 10px 10px;border-top:1px solid rgba(110,231,255,.18);font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--ink-dim)}
.dash-row{display:flex;justify-content:space-between;margin:3px 0;text-transform:uppercase}
.dash-row b{color:var(--cyan);font-weight:500}
.dash-bar{position:relative;height:4px;background:rgba(110,231,255,.08);border:1px solid var(--cyan-dim);margin:2px 0 6px;overflow:hidden}
.dash-bar>i{position:absolute;top:0;left:0;bottom:0;background:linear-gradient(90deg,var(--cyan),var(--cyan-soft));box-shadow:0 0 6px var(--cyan)}
.dash-bar.mint>i{background:var(--mint);box-shadow:0 0 6px var(--mint)}
.dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:6px}
.chip{display:flex;align-items:center;gap:4px;padding:3px 5px;border:1px solid var(--cyan-dim);background:rgba(110,231,255,.06);font-size:9px;letter-spacing:.08em;justify-content:center}
.chip span{color:var(--amber);font-weight:700}
.chip b{color:var(--ink);font-weight:500;text-transform:uppercase}

/* ===== Vertical scan line only (no diagonal beam) ===== */
to{left:106%}}

/* ===== Stronger mobile adaptation ===== */
@media (max-width:1100px){
  html,body{overflow-x:hidden}
  body{padding:14px 10px 24px}
  .boot{position:fixed}
  .datastream{display:none}
  .cursor-tag{display:none}
  .stage{grid-template-columns:1fr}
  .stage{display:flex;flex-direction:column}
  .rail{flex-direction:row;flex-wrap:wrap;gap:8px}
  .rail-block{flex:1 1 calc(50% - 4px);min-width:140px}
  .center{grid-template-columns:1fr}
  .identity{grid-template-columns:1fr}
  .avatar-frame{width:100%;max-width:360px;margin:0 auto}
  .avatar-screen{height:auto;aspect-ratio:4/5}
  .name{font-size:24px}
  .stack{grid-template-columns:1fr 1fr}
  .bottom-row{grid-template-columns:1fr 1fr;gap:10px}
  .bottom-row .cta-strip{grid-column:1 / -1;min-width:0;flex-direction:row;padding:12px 16px}
  .cta-button{margin-left:auto}
}
@media (max-width:640px){
  .stack{grid-template-columns:1fr}
  .rail-block{flex:1 1 100%}
  .bottom-row{grid-template-columns:1fr}
  .bottom-row .cta-strip{flex-direction:column;align-items:stretch;gap:10px}
  .cta-button{margin:0;justify-content:center}
  .name{font-size:22px}
  .sys-bar{font-size:9px;padding:0 10px;gap:8px;letter-spacing:.06em}
  .sys-bar .sep:nth-of-type(n+3){display:none}
  .sys-bar.top span:nth-of-type(n+5){display:none}
  .sys-bar.bottom span:not(.ticker):not(.ticker-track):not(.tag):not(.sep){display:none}
  .sys-bar.bottom .ticker{display:block}
  .stage{inset:28px 0 28px 0}
}
@media (hover:none){
  .cursor-tag{display:none}
  .name:hover::before,.name:hover::after{display:none}
}

/* ===== Tilt effect for identity panel ===== */
.identity-panel{transition:transform .3s cubic-bezier(.2,.7,.2,1), border-color .3s, box-shadow .3s}
.identity-panel{transform:perspective(1200px) rotateX(calc((var(--ty,.5) - .5) * -1.2deg)) rotateY(calc((var(--tx,.5) - .5) * 1.2deg))}

/* ===== Extra polish: hovering mini-card shifts its tag color ===== */
.mini-card{overflow:hidden}
.mini-card::after{content:'';position:absolute;inset:0;background:linear-gradient(120deg, transparent 30%, rgba(110,231,255,.08) 50%, transparent 70%);transform:translateX(-100%);transition:transform .6s ease;pointer-events:none}
.mini-card:hover::after{transform:translateX(100%)}
.mini-card.accent-gold::after{background:linear-gradient(120deg, transparent 30%, rgba(255,200,90,.1) 50%, transparent 70%)}
.mini-card.accent-mint::after{background:linear-gradient(120deg, transparent 30%, rgba(127,255,178,.1) 50%, transparent 70%)}

/* ===== Stack-row counter numbers ===== */
.stack{counter-reset:stk}
.stack-row{counter-increment:stk}
.stack-row::after{content:counter(stk,decimal-leading-zero);position:absolute;right:8px;top:5px;font-family:var(--mono);font-size:9px;color:var(--ink-muted);letter-spacing:.1em;opacity:.6}


/* ===== Pain-first briefing ===== */
.pain{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.pain-row{display:flex;flex-direction:column;gap:2px;padding:7px 10px;border-left:2px solid var(--amber-dim);background:linear-gradient(90deg,rgba(255,200,90,.08),transparent 70%);transition:border-color .25s, background .25s, transform .25s}
.pain-row:hover{border-color:var(--amber);background:linear-gradient(90deg,rgba(255,200,90,.18),transparent 70%);transform:translateX(3px)}
.pq{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--ink-dim);text-transform:uppercase}
.pa{font-size:13px;color:var(--ink);line-height:1.35}
.brief-foot{font-size:11.5px;line-height:1.5;color:var(--ink);padding-top:8px;border-top:1px dashed rgba(255,200,90,.25)}
.brief-foot b{color:var(--cyan-soft);font-weight:600}

/* ===== Stat cards ===== */
.stat-card{position:relative;padding:8px 14px;background:rgba(7,18,26,.75);border:1px solid var(--cyan-dim);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);transition:transform .2s,border-color .3s,background .3s;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.stat-card::after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(110,231,255,.08) 50%,transparent 70%);transform:translateX(-100%);transition:transform .6s ease;pointer-events:none}
.stat-card:hover::after{transform:translateX(100%)}
.stat-card:hover{transform:translateY(-2px);border-color:var(--cyan)}
.stat-card.accent-gold{border-color:var(--amber-dim)}
.stat-card.accent-gold:hover{border-color:var(--amber)}
.stat-card.accent-mint{border-color:rgba(127,255,178,.35)}
.stat-card.accent-mint:hover{border-color:var(--mint)}
.stat-card .mc-tag{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;color:var(--cyan);text-transform:uppercase}
.stat-card.accent-gold .mc-tag{color:var(--amber)}
.stat-card.accent-mint .mc-tag{color:var(--mint)}
.stat-num{font-family:var(--display);font-weight:700;font-size:28px;color:#eaffff;letter-spacing:.04em;line-height:1;margin:4px 0;text-shadow:0 0 16px rgba(110,231,255,.35)}
.stat-card.accent-gold .stat-num{text-shadow:0 0 16px rgba(255,200,90,.4)}
.stat-card.accent-mint .stat-num{text-shadow:0 0 16px rgba(127,255,178,.35)}
.stat-label{font-size:11px;color:var(--ink-dim);text-transform:lowercase;letter-spacing:.04em}

/* ===== Magnetic CTA ===== */
.cta-button.magnet{transition:transform .2s cubic-bezier(.2,.7,.2,1), box-shadow .2s}


.term-panel{padding:0;background:transparent;border:none;clip-path:none;position:relative}

.term-panel i.cbr-bl,.term-panel i.cbr-br{display:none}
/* ===== Terminal command line (inline) ===== */
.term{position:relative;width:100%;display:flex;align-items:center;gap:8px;padding:7px 12px;background:rgba(6,14,20,.7);border:1px solid var(--cyan-dim);font-family:var(--mono);font-size:12px;color:var(--cyan)}

.term .prompt{color:var(--amber)}
.term input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--ink);font-family:var(--mono);font-size:12px;caret-color:var(--cyan);letter-spacing:.04em}
.term .hint{color:var(--ink-muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}



.term-chip{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);padding:4px 9px;border:1px solid var(--cyan-dim);background:rgba(110,231,255,.06);cursor:pointer;transition:all .2s;white-space:nowrap}
.term-chip:hover{background:rgba(110,231,255,.18);color:#fff;border-color:var(--cyan)}
.term-chip[data-tag="Вопросы"]{color:var(--amber);border-color:var(--amber-dim)}
.term-chip[data-tag="Вопросы"]:hover{background:rgba(255,200,90,.18);color:#fff;border-color:var(--amber)}
@media (max-width:640px){.term .hint{display:none}.term-chip{padding:3px 7px;font-size:9px}}

.rail-block.actions-block{gap:6px;display:flex;flex-direction:column}
.rail-btn{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);padding:7px 10px;border:1px solid var(--cyan-dim);background:rgba(110,231,255,.05);cursor:pointer;transition:all .2s;text-align:left;position:relative;overflow:hidden}
.rail-btn::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(110,231,255,.15),transparent);transform:translateX(-100%);transition:transform .5s}
.rail-btn:hover::before{transform:translateX(100%)}
.rail-btn:hover{background:rgba(110,231,255,.15);color:#fff;border-color:var(--cyan)}
.rail-btn.amber{color:var(--amber);border-color:var(--amber-dim);background:rgba(255,200,90,.05)}
.rail-btn.amber:hover{background:rgba(255,200,90,.18);color:#fff;border-color:var(--amber)}
/* ===== Tools panel (legacy) ===== */
.tools{position:fixed;right:56px;top:36px;z-index:15;display:flex;gap:6px}
.tool-btn{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);padding:5px 10px;border:1px solid var(--cyan-dim);background:rgba(6,14,20,.85);cursor:pointer;transition:all .2s}
.tool-btn:hover{background:rgba(110,231,255,.15);color:#fff;border-color:var(--cyan)}
.tool-btn.on{background:var(--cyan);color:#03080c}

/* ===== Modal overlay ===== */
.modal{position:fixed;inset:0;z-index:50;background:rgba(3,8,12,.78);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;padding:24px;animation:panelIn .25s forwards}
.modal.on{display:flex}
.modal-body{position:relative;width:min(640px,96vw);max-height:86vh;overflow:auto;background:linear-gradient(180deg,rgba(10,24,34,.96),rgba(5,14,20,.96));border:1px solid var(--cyan);padding:22px 26px;font-family:var(--ui);color:var(--ink)}
.modal-body::before,.modal-body::after{content:'';position:absolute;width:18px;height:18px;border:2px solid var(--cyan)}
.modal-body::before{top:-1px;left:-1px;border-right:none;border-bottom:none}
.modal-body::after{top:-1px;right:-1px;border-left:none;border-bottom:none}
.modal-close{position:absolute;top:6px;right:10px;width:32px;height:32px;font-family:var(--mono);font-size:22px;font-weight:700;color:var(--cyan);background:rgba(110,231,255,.08);border:1px solid var(--cyan-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;transition:all .2s}
.modal-close:hover{background:rgba(255,85,102,.2);color:#ff9aaa;border-color:var(--red);transform:rotate(90deg)}
.modal h3{font-family:var(--display);font-weight:600;letter-spacing:.06em;color:#eaffff;margin:0 0 14px;font-size:18px}

/* Calc */
.calc-row{display:flex;align-items:center;gap:12px;margin:10px 0}
.calc-row label{flex:0 0 140px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim)}
.calc-row select{flex:1;min-width:0;background:#0a1822;color:var(--ink);border:1px solid var(--cyan-dim);padding:6px 8px;font-family:var(--mono);font-size:12px;cursor:pointer}
.calc-row select option{background:#0a1822;color:#eaffff;padding:6px}
.calc-row select:focus{outline:none;border-color:var(--cyan)}
.calc-total{margin-top:16px;padding:14px;border:1px solid var(--amber-dim);background:linear-gradient(90deg,rgba(255,200,90,.1),rgba(255,200,90,.02))}
.calc-total .t-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;color:var(--amber);text-transform:uppercase}
.calc-total .t-val{font-family:var(--display);font-weight:700;font-size:28px;color:var(--amber-soft);margin-top:4px;text-shadow:0 0 14px rgba(255,200,90,.4)}
.calc-total .t-note{font-size:11px;color:var(--ink-dim);margin-top:4px}

/* FAQ */
.faq{display:flex;flex-direction:column;gap:4px}
.faq details{border:1px solid var(--cyan-dim);background:rgba(110,231,255,.04);padding:0;transition:border-color .2s}
.faq details[open]{border-color:var(--cyan)}
.faq summary{cursor:pointer;padding:10px 12px;font-family:var(--mono);font-size:11.5px;color:var(--cyan);letter-spacing:.06em;list-style:none;display:flex;align-items:center;gap:8px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:'>';color:var(--amber);font-weight:700}
.faq details[open] summary::before{color:var(--mint)}
.faq .ans{padding:0 12px 12px 26px;font-size:12.5px;line-height:1.5;color:var(--ink)}

@media (max-width:640px){
  .term{padding:6px 10px;font-size:11px}
  .term .hint{display:none}
  .tools{position:static;justify-content:center;margin:8px 0 4px}
  .stat-num{font-size:26px}
  .pq{font-size:10px}
  .pa{font-size:12px}
}


@media (max-width:700px){
  .modal-body{padding:18px 16px}
  .modal-body h3{font-size:16px;padding-right:40px}
  .calc-row{flex-wrap:wrap;gap:6px}
  .calc-row label{flex:0 0 auto;font-size:10px}
  .calc-row select{width:100%;flex:1 1 100%}
  .calc-total .t-val{font-size:24px}
  .term-out-row{height:80px;font-size:11px}
  .term input{font-size:11px}
  .term{padding:8px 10px}
  .rail-btn{font-size:10.5px;padding:9px 12px;text-align:center}
}

/* ===== Live-log in bottom sys-bar ===== */
.live-log{display:inline-flex;align-items:center;gap:8px;color:var(--mint);font-family:var(--mono);font-size:10px;letter-spacing:.14em;width:360px;flex:0 0 360px;overflow:hidden}
.live-log .ll-dot{width:6px;height:6px;background:var(--mint);border-radius:50%;box-shadow:0 0 6px var(--mint);animation:pulse 1.4s infinite;flex-shrink:0}
.live-log .ll-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .25s}
.live-log.swap .ll-text{opacity:0}
.live-log.amber{color:var(--amber)}
.live-log.amber .ll-dot{background:var(--amber);box-shadow:0 0 6px var(--amber)}
.live-log.cyan{color:var(--cyan)}
.live-log.cyan .ll-dot{background:var(--cyan);box-shadow:0 0 6px var(--cyan)}

/* ===== Parallax on photo (head follows cursor) ===== */
.avatar-screen img{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.avatar-frame:hover .avatar-screen img{will-change:transform}

/* ===== Thermal mode ===== */
.avatar-screen.thermal img{filter:saturate(4) contrast(1.6) brightness(1.05) hue-rotate(200deg) blur(.4px);transition:filter .4s}
.avatar-screen.thermal::before{background-image:linear-gradient(0deg, rgba(255,80,0,.5) 50%, transparent 50%);mix-blend-mode:screen}
.avatar-screen img{transition:filter .4s, transform .35s cubic-bezier(.2,.7,.2,1)}
.thermal-scale{position:absolute;top:8px;right:8px;bottom:8px;width:8px;z-index:4;background:linear-gradient(180deg,#ff2a00,#ffb300,#fff700,#4affff,#0030ff);border:1px solid rgba(0,0,0,.6);box-shadow:0 0 8px rgba(255,120,0,.5);opacity:0;transition:opacity .3s;pointer-events:none}
.avatar-screen.thermal .thermal-scale{opacity:.85}

/* ===== ASCII overlay on click ===== */
.ascii-overlay{position:absolute;inset:0;z-index:5;background:#02080e;color:var(--cyan);font-family:var(--mono);font-size:5px;line-height:1;letter-spacing:0;white-space:pre;padding:4px;opacity:0;pointer-events:none;transition:opacity .2s;overflow:hidden;text-shadow:0 0 3px rgba(110,231,255,.8)}
.ascii-overlay.on{opacity:1}

/* ===== Matrix rain overlay ===== */
.matrix-rain{position:fixed;inset:0;z-index:200;background:rgba(0,8,14,.88);pointer-events:none;opacity:0;transition:opacity .3s}
.matrix-rain.on{opacity:1;pointer-events:auto}
.matrix-rain canvas{width:100%;height:100%;display:block}
.matrix-rain .mr-exit{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);color:var(--mint);font-family:var(--mono);font-size:12px;letter-spacing:.3em;text-transform:uppercase;background:rgba(6,14,20,.9);border:1px solid var(--mint);padding:8px 16px;cursor:pointer;z-index:2}

/* ===== Case log (compact, fixed height) ===== */
.case-log{margin-top:10px;padding:6px 12px 7px;background:rgba(6,14,20,.5);border-left:2px solid var(--cyan-dim);font-family:var(--mono);font-size:10px;letter-spacing:.06em;line-height:1.35;color:var(--ink-muted);display:block;overflow:hidden;position:relative;height:44px;box-sizing:border-box}
.case-log .cl-title{display:none}
.case-log .cl-row{display:grid;grid-template-columns:auto 1fr auto;column-gap:10px;row-gap:1px;align-items:baseline;min-width:0;position:relative;height:30px}
.case-log .cl-row.flick{animation:clFlick .45s steps(1) forwards}
.case-log .cl-row .cl-id{color:var(--amber);font-weight:600;grid-column:1;grid-row:1;font-size:10px}
.case-log .cl-row .cl-status{color:var(--mint);grid-column:3;grid-row:1;white-space:nowrap;font-size:9.5px;letter-spacing:.12em}
.case-log .cl-row .cl-status.wip{color:var(--amber)}
.case-log .cl-row .cl-status.review{color:var(--cyan)}
.case-log .cl-row .cl-task{color:var(--ink);grid-column:1 / span 3;grid-row:2;font-size:10.5px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@keyframes clFlick{
  0%{opacity:1;transform:translateX(0);filter:none}
  10%{opacity:.2;transform:translateX(-2px);filter:blur(1px) brightness(2)}
  20%{opacity:.7;transform:translateX(3px);text-shadow:2px 0 #ff003c,-2px 0 var(--cyan)}
  35%{opacity:.2;transform:translateX(-1px);filter:blur(.5px)}
  55%{opacity:1;transform:translateX(1px);filter:none;text-shadow:0 0 4px var(--cyan)}
  100%{opacity:1;transform:translateX(0);text-shadow:none}
}

/* ===== Globe (ASCII) ===== */
/* убираем clip-path polygon именно у блока глобуса, чтобы halo не обрезался краями */
.globe-block{position:relative;clip-path:none;padding-top:14px;padding-bottom:12px;overflow:visible}
.globe-block::before{content:'';position:absolute;left:0;top:10px;width:10px;height:1px;background:var(--cyan-dim)}
.globe{display:block;margin:6px auto 12px;width:160px;height:160px;overflow:visible}
.globe-ping{font-family:var(--mono);font-size:9.5px;color:var(--ink-muted);letter-spacing:.06em}
.globe-ping .gp-row{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:6px;padding:1.5px 0}
.globe-ping .gp-row:first-child{padding-top:0;border-top:1px dashed rgba(201,160,255,.25);margin-top:2px;padding-top:4px}
.globe-ping .gp-row span:nth-child(2){color:var(--ink)}
.globe-ping .gp-row b{font-weight:600}
.globe-ping .gp-dot{width:5px;height:5px;border-radius:50%;animation:pulse 1.6s infinite}
/* Порядок и цвета: 1 — пользователь (сиреневый), далее фикс. палитра, все разные */
.globe-ping .gp-row:nth-child(1) .gp-dot{background:#c9a0ff;box-shadow:0 0 6px #c9a0ff;animation-delay:0s}
.globe-ping .gp-row:nth-child(1) b{color:#c9a0ff}
.globe-ping .gp-row:nth-child(2) .gp-dot{background:#9ef5c4;box-shadow:0 0 6px #9ef5c4;animation-delay:.25s}
.globe-ping .gp-row:nth-child(2) b{color:#9ef5c4}
.globe-ping .gp-row:nth-child(3) .gp-dot{background:#ff6b6b;box-shadow:0 0 6px #ff6b6b;animation-delay:.5s}
.globe-ping .gp-row:nth-child(3) b{color:#ff6b6b}
.globe-ping .gp-row:nth-child(4) .gp-dot{background:#b98a5e;box-shadow:0 0 6px #b98a5e;animation-delay:.75s}
.globe-ping .gp-row:nth-child(4) b{color:#b98a5e}
.globe-ping .gp-row:nth-child(5) .gp-dot{background:#ffc85a;box-shadow:0 0 6px #ffc85a;animation-delay:1s}
.globe-ping .gp-row:nth-child(5) b{color:#ffc85a}
.globe-ping .gp-row:nth-child(6) .gp-dot{background:#ff9ad1;box-shadow:0 0 6px #ff9ad1;animation-delay:1.25s}
.globe-ping .gp-row:nth-child(6) b{color:#ff9ad1}
.globe-ping .gp-row:nth-child(7) .gp-dot{background:#6ee7ff;box-shadow:0 0 6px #6ee7ff;animation-delay:1.5s}
.globe-ping .gp-row:nth-child(7) b{color:#6ee7ff}

/* mint rail button */
.rail-btn.mint{color:var(--mint);border-color:rgba(127,253,198,.35);background:rgba(127,253,198,.05)}
.rail-btn.mint:hover{background:rgba(127,253,198,.12);box-shadow:0 0 14px rgba(127,253,198,.25)}

/* ===== Toast (для vCard) ===== */
.toast{position:fixed;bottom:60px;left:50%;transform:translate(-50%,20px);background:rgba(6,14,20,.95);border:1px solid var(--mint);color:var(--mint);padding:10px 18px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;z-index:300;opacity:0;transition:opacity .25s, transform .25s;pointer-events:none;box-shadow:0 0 24px rgba(127,253,198,.3)}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* ===== Brief wizard ===== */
.brief-modal .modal-body{max-width:440px}
.brief-modal h3{color:var(--amber);font-family:var(--mono);letter-spacing:.14em;font-size:14px;text-transform:uppercase;margin:0 0 14px;padding-right:40px}
.brief-q{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--cyan);text-transform:uppercase;margin-bottom:10px}
.brief-opts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.brief-btn{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--ink);background:rgba(6,14,20,.6);border:1px solid var(--cyan-dim);padding:8px 12px;cursor:pointer;transition:all .2s;text-align:left}
.brief-btn:hover{border-color:var(--amber);color:var(--amber);background:rgba(255,200,90,.08)}
.brief-progress{height:3px;background:rgba(110,231,255,.1);overflow:hidden;margin-top:8px}
.brief-progress i{display:block;height:100%;width:0;background:var(--amber);box-shadow:0 0 8px var(--amber);transition:width .35s}
.brief-summary{font-family:var(--mono);font-size:11.5px;line-height:1.85;color:var(--ink);padding:10px 12px;background:rgba(6,14,20,.6);border-left:2px solid var(--amber);letter-spacing:.05em}
.brief-summary > div{padding:2px 0}

/* ===== Mission badge ===== */
.mission-badge{display:inline-flex;align-items:center;gap:6px;margin-left:10px;font-family:var(--mono);font-size:9px;letter-spacing:.16em;color:var(--amber);text-transform:uppercase}
.mission-badge .mb-bar{width:40px;height:3px;background:rgba(255,200,90,.2);position:relative;overflow:hidden}
.mission-badge .mb-bar i{display:block;height:100%;background:var(--amber);box-shadow:0 0 6px var(--amber);width:14%}
