:root{--bg:#000;--gr:#39ff88;--pk:#ff2e88;--or:#ff9d1a;--au:#ffd23f;--cy:#22e6ff;--tx:#d6e0e8;--mu:#5f6e7d;
--line:rgba(255,255,255,.09);--line2:rgba(255,157,26,.28);--bass:0;
--font:ui-monospace,"SF Mono","Cascadia Mono","JetBrains Mono","DejaVu Sans Mono","Liberation Mono",Menlo,Consolas,monospace}
*{box-sizing:border-box}
html,body{margin:0;background:#000;color:var(--tx);font:12px/1.35 var(--font);font-variant-numeric:tabular-nums}
body{min-height:100vh;display:flex;flex-direction:column;text-transform:uppercase;letter-spacing:.04em;overflow-x:hidden}
button,input{font-family:inherit}
/* film grain + CRT scanlines */
.grain{pointer-events:none;position:fixed;inset:-50%;z-index:60;opacity:.07;background-image:var(--noise);background-size:160px 160px;animation:grain .9s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-4%)}60%{transform:translate(-4%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
.scan{pointer-events:none;position:fixed;inset:0;z-index:61;background:repeating-linear-gradient(0deg,rgba(0,0,0,.28) 0 1px,transparent 1px 3px);
 box-shadow:inset 0 0 140px rgba(0,0,0,.6)}
.scan::after{content:"";position:absolute;left:0;right:0;height:18vh;top:-20vh;background:linear-gradient(transparent,rgba(255,255,255,.025),transparent);animation:roll 7s linear infinite}
@keyframes roll{to{top:110vh}}
/* header */
.top{display:flex;align-items:center;gap:14px;padding:7px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.brand{display:flex;gap:8px;align-items:center}
.brand b{letter-spacing:.3em;color:var(--or);text-shadow:0 0 10px rgba(255,157,26,.8);font-size:14px}
.brand small{display:block;color:var(--mu);font-size:10px}
.logo{font-size:22px;color:var(--or);text-shadow:0 0 14px var(--or);animation:beat 1.6s ease-in-out infinite}
@keyframes beat{50%{opacity:.55;text-shadow:0 0 4px var(--or)}}
.modes{display:flex;border:1px solid var(--line)}
.mode{background:none;border:0;color:var(--mu);padding:4px 12px;cursor:pointer;text-transform:uppercase;letter-spacing:.08em;font-size:11px}
.mode.on{background:rgba(255,157,26,.14);color:var(--or);text-shadow:0 0 8px var(--or)}
.sys{display:flex;gap:12px;color:var(--mu);font-size:11px;margin-left:auto;flex-wrap:wrap}
.sys b{color:var(--cy);font-weight:400;text-shadow:0 0 6px rgba(34,230,255,.6)}
.sys .clock{color:var(--au);text-shadow:0 0 8px rgba(255,210,63,.7)}
.status{display:flex;gap:6px}
.badge{border:1px solid var(--line);padding:2px 7px;font-size:10px;color:var(--mu)}
.badge.live{color:var(--gr);border-color:rgba(57,255,136,.5);text-shadow:0 0 6px var(--gr)}
.tag{font-size:9px;padding:0 4px;border:1px solid currentColor;margin-left:5px;vertical-align:1px;font-weight:400;letter-spacing:.06em;color:var(--mu)}
.tag.demo,.badge.demo{color:var(--au)}
.tag.live{color:var(--gr)}
.tag.off{color:var(--pk)}
/* desk layout */
.desk{flex:none;display:flex;flex-direction:column;gap:8px;padding:8px;height:calc(100vh - 67px);min-height:760px}
.row-top{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 340px;height:172px;flex:none}
.row-mid{display:grid;gap:8px;grid-template-columns:300px minmax(0,1fr) 340px;grid-template-rows:minmax(0,1fr);flex:1;min-height:0}
.row-bot{display:grid;gap:8px;grid-template-columns:300px minmax(0,1fr) minmax(0,1fr) minmax(0,2.1fr);height:170px;flex:none}
.col-right{display:flex;flex-direction:column;gap:8px;min-height:0}
.panel,.chat{border:1px solid var(--line);padding:7px 9px;position:relative;overflow:hidden;min-height:0;background:rgba(6,8,10,.6);
 animation:breathe 4.2s ease-in-out infinite;box-shadow:0 0 calc(var(--bass)*26px) rgba(255,157,26,calc(var(--bass)*.35)) inset}
.panel:nth-child(2n){animation-delay:-1.3s}.panel:nth-child(3n){animation-delay:-2.6s}
@keyframes breathe{0%,100%{border-color:rgba(255,255,255,.08)}50%{border-color:rgba(255,157,26,.32)}}
.panel::after,.chat::after{content:"";position:absolute;width:6px;height:6px;top:-1px;left:-1px;border-top:1px solid var(--or);border-left:1px solid var(--or);opacity:.8}
h2{margin:0 0 5px;font-size:11px;letter-spacing:.18em;color:var(--mu);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
canvas{display:block;width:100%}
.pos{color:var(--gr);text-shadow:0 0 6px rgba(57,255,136,.6)}.neg{color:var(--pk);text-shadow:0 0 6px rgba(255,46,136,.6)}
.note{color:var(--mu);font-size:9.5px;margin:4px 0 0;text-transform:none}
/* pnl */
.big{font-size:40px;line-height:1;color:var(--gr);text-shadow:0 0 18px rgba(57,255,136,.8),0 0 2px #fff;letter-spacing:.02em}
.big.neg{color:var(--pk);text-shadow:0 0 18px rgba(255,46,136,.8)}
.pnl-rows{display:flex;gap:12px;font-size:11px;margin:4px 0 2px;color:var(--mu)}
.pnl-rows b{font-weight:400}
#pnlSpark{height:62px}
/* terminal */
.term{position:absolute;left:9px;right:9px;top:24px;bottom:6px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;font-size:11px;
 -webkit-mask-image:linear-gradient(transparent,#000 35%);mask-image:linear-gradient(transparent,#000 35%)}
.term div{flex:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:tin .25s ease-out}
.term .t{color:var(--mu)}.term .k{color:var(--or)}.term .d{color:#3c4652;font-size:9px}.term .l{color:var(--gr);text-shadow:0 0 6px var(--gr)}
@keyframes tin{from{opacity:0;transform:translateY(6px)}}
#sigc{height:136px}
/* candles */
.cprice{display:flex;gap:10px;align-items:baseline}
.cprice b{font-size:20px;color:var(--tx);font-weight:400;text-shadow:0 0 8px rgba(255,255,255,.35)}
#candles{height:110px}
/* lines */
.lines{display:flex;flex-direction:column;gap:6px;height:calc(100% - 20px)}
.ln{flex:1;position:relative;min-height:0;border-top:1px dashed var(--line);padding-top:3px}
.ln .h{display:flex;justify-content:space-between;font-size:10.5px;color:var(--mu)}
.ln .h b{font-weight:400}
.ln canvas{position:absolute;left:0;top:20px;width:100%;height:calc(100% - 20px)}
/* orb */
.orb-wrap{position:relative;min-height:0;border:1px solid var(--line);overflow:hidden}
.orb-glow{position:absolute;left:50%;top:50%;width:62%;aspect-ratio:1;transform:translate(-50%,-50%) scale(calc(1 + var(--bass)*.12));border-radius:50%;
 background:radial-gradient(circle,rgba(255,157,26,.22),rgba(255,46,136,.07) 45%,transparent 70%);animation:orbbreath 3.2s ease-in-out infinite;pointer-events:none}
@keyframes orbbreath{50%{opacity:.55}}
#orbgl,#orb2d{position:absolute;inset:0;width:100%;height:100%}
.orb-title{position:absolute;top:6px;left:9px;color:var(--mu);font-size:11px;letter-spacing:.15em;z-index:2;max-width:calc(100% - 170px)}
.risk{position:absolute;top:6px;right:9px;border:1px solid var(--line);padding:2px 8px;background:rgba(0,0,0,.6);font-size:11px;z-index:2}
.risk b{font-weight:400}
.legend{position:absolute;bottom:22px;left:0;right:0;display:flex;flex-wrap:wrap;gap:4px 14px;justify-content:center;font-size:10px;letter-spacing:.06em;line-height:1.3;color:var(--mu);z-index:2;padding:2px 8px;pointer-events:none}
.legend span{white-space:nowrap;display:inline-flex;align-items:center}
@media(max-width:600px){.legend{gap:3px 10px;font-size:9px;letter-spacing:.03em}}
.legend i{display:inline-block;width:7px;height:7px;margin-right:4px;box-shadow:0 0 6px currentColor}
.evt{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;text-align:center;pointer-events:none;
 border:1px solid currentColor;background:rgba(0,0,0,.55);padding:10px 22px;color:var(--gr);animation:flick .12s steps(2) 6,evtin .3s ease-out}
.evt{white-space:nowrap;max-width:96%}.evt b{display:block;font-size:clamp(16px,2.2vw,30px);font-weight:400;letter-spacing:.12em;text-shadow:0 0 18px currentColor,0 0 2px #fff}
.evt small{display:block;color:var(--au);font-size:clamp(8px,.8vw,11px);margin-top:4px;white-space:normal}
.evt.down{color:var(--pk)}
@keyframes flick{50%{opacity:.2}}
@keyframes evtin{from{transform:translate(-50%,-50%) scale(1.4);filter:blur(4px)}}
/* cycle */
.p-cycle{flex:none;height:172px}
.cyc{display:grid;grid-template-columns:1.2fr 1fr;gap:8px}
.cyc small,.metrics small{display:block;color:var(--mu);font-size:9.5px}
.cd{font-size:30px;font-weight:400;color:var(--or);text-shadow:0 0 14px rgba(255,157,26,.8);line-height:1.1}
.cdbar{height:3px;background:var(--line);margin-top:3px}.cdbar i{display:block;height:100%;background:var(--or);box-shadow:0 0 8px var(--or);width:0}
.pct{font-size:34px;font-weight:400;color:var(--cy);text-shadow:0 0 14px rgba(34,230,255,.8);line-height:1}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px;border-top:1px dashed var(--line);padding-top:6px}
.metrics b{font-weight:400;font-size:15px;color:var(--tx)}
/* chat */
.chat{flex:1;display:flex;flex-direction:column;padding:6px 8px;border-color:rgba(255,46,136,.3);text-transform:none;min-height:200px}
.chat-head{display:flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.15em;color:var(--pk);text-transform:uppercase}
.chat-head b{font-weight:400}
.chat-head .dot{width:6px;height:6px;background:var(--gr);box-shadow:0 0 8px var(--gr);animation:beat 1.2s infinite}
.ico{background:none;border:1px solid var(--line);color:var(--tx);width:24px;height:22px;cursor:pointer;padding:0;font-size:12px;flex:none}
.ico:disabled{opacity:.35;cursor:default}
#voiceBtn{margin-left:auto}.ico[aria-pressed=true]{border-color:var(--gr);box-shadow:0 0 8px rgba(57,255,136,.5)}
.chat-head b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;font-size:10px;letter-spacing:.1em}
.chat-head .dot.off{background:var(--pk);box-shadow:0 0 8px var(--pk)}
.role{display:flex;align-items:center;gap:4px;font-size:10px;border:1px solid var(--line);padding:1px 6px 1px 2px;color:var(--mu);cursor:pointer;background:none;
 white-space:nowrap;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto}
.role.on{color:#fff;border-color:currentColor}
.av{width:15px;height:15px;display:grid;place-items:center;font-size:9px;color:#000;font-weight:700;flex:none}
.log{flex:1;overflow:auto;font-size:11px;min-height:0;padding-right:2px;scrollbar-width:thin;margin-top:5px;overflow-x:hidden}
.msg{margin:4px 0;display:flex;gap:6px;min-width:0}
.msg .b{min-width:0;overflow-wrap:anywhere;flex:1}
.msg .who{display:flex;gap:6px;align-items:baseline}.msg .who span{color:var(--mu);font-size:8.5px;text-transform:none;margin-left:auto;white-space:nowrap}
.msg.sys .b{border-style:dashed;color:var(--au);font-size:10px}
.msg .rt{font-size:8.5px;color:var(--cy);opacity:.8;text-transform:uppercase}
.msg .b{background:rgba(255,255,255,.03);border:1px solid var(--line);padding:3px 6px}
.msg.me{justify-content:flex-end}.msg.me .b{border-color:rgba(34,230,255,.4)}
.msg .who{font-size:9.5px;opacity:.85;text-transform:uppercase}
.say{display:flex;gap:4px;margin-top:4px}
#sayName{flex:0 0 64px!important;color:var(--cy)!important}
.say input{flex:1;background:#000;border:1px solid var(--line);color:var(--tx);font-size:12px;padding:4px 7px;min-width:0}
.say button{background:rgba(255,46,136,.15);border:1px solid var(--pk);color:var(--pk);cursor:pointer;width:30px}
.chat-foot{font-size:9px;color:var(--mu);margin-top:3px}
.chat-foot code{color:var(--au)}
.chat.collapsed{display:none}
.pill{align-self:flex-end;background:rgba(255,46,136,.12);border:1px solid var(--pk);color:var(--pk);padding:6px 12px;cursor:pointer;box-shadow:0 0 14px rgba(255,46,136,.4);text-transform:uppercase}
/* bottom */
.feeds{display:flex;gap:3px;flex-wrap:wrap;margin-bottom:4px}
.stabs{display:inline-flex;gap:2px;vertical-align:0}
.stab{background:none;border:1px solid var(--line);color:var(--mu);font:inherit;font-size:9.5px;letter-spacing:.1em;padding:0 5px;cursor:pointer}
.stab.on{color:#000;background:var(--cy);border-color:var(--cy)}
.news li a{color:inherit;text-decoration:none}.news li a:hover{color:var(--cy)}
.news .au{color:var(--cy)}
.news li.fb{border:0;color:var(--au);font-size:10.5px;text-transform:none;white-space:normal}
.chip{font-size:9.5px;padding:0 5px;border:1px solid var(--line);color:var(--mu);cursor:pointer;background:none;text-transform:uppercase}
.chip.on{color:#000;background:var(--or);border-color:var(--or)}
.p-news{display:flex;flex-direction:column}
.news{list-style:none;margin:0;padding:0;overflow:hidden;flex:1;min-height:0;scrollbar-width:none}
.news li{padding:3px 0;border-bottom:1px dashed var(--line);font-size:10.5px;text-transform:none}
.news .meta{display:flex;gap:6px;font-size:9px;color:var(--mu)}
.news .tg{color:var(--or)}
.sent.bear{color:var(--pk)}.sent.bull{color:var(--gr)}.sent.neu{color:var(--mu)}
#mvm,#learn{height:112px}
.lg{font-size:9.5px;color:var(--mu);margin-top:3px}.lg i{display:inline-block;width:12px;height:2px;margin:0 4px 3px 6px}
.lg .c1{background:var(--pk)}.lg .c2{background:var(--cy)}.lg .c3{background:var(--gr)}
.mkt{width:100%;border-collapse:collapse;font-size:10.5px}.mkt td{white-space:nowrap}.mkt td.note{white-space:normal}
.mkt td{padding:3px 1px;border-bottom:1px dashed var(--line)}
.mkt td:nth-child(2){text-align:right;color:#fff}.mkt td:nth-child(3){text-align:right;width:60px}.mkt td:last-child{text-align:right;width:40px}
.mkt .tag{margin:0}
/* music */
.foot{font-size:9.5px;color:#46525e;padding:2px 12px 5px;text-align:center}
/* mission palette */
body.mission{--or:#7cf7c7;--au:#ffd23f;--pk:#ff6b3d}
/* responsive */
@media (max-width:1180px){
 .desk{height:auto;min-height:0}
 .row-top{grid-template-columns:1fr 1fr;height:auto}.row-top>*{height:172px}.row-top>.p-candle{grid-column:1/-1}
 .row-mid{grid-template-rows:auto;grid-template-columns:1fr 1fr;grid-template-areas:"orb orb" "lines right"}
 .orb-wrap{grid-area:orb;height:560px}.p-lines{grid-area:lines;height:440px}.col-right{grid-area:right}
 .row-bot{grid-template-columns:1fr 1fr;height:auto}.row-bot>*{height:170px}
}
@media (max-width:700px){
 .top{gap:6px;padding:6px 8px}.sys{margin-left:0;gap:8px;font-size:10px;width:100%}
 .desk{padding:6px;gap:6px}
 .row-mid{order:-1;grid-template-columns:1fr;grid-template-areas:"orb" "right" "lines"}
 .orb-wrap{height:400px}.p-lines{height:330px}
 .row-top,.row-bot{grid-template-columns:1fr}
 .chat{height:360px;flex:none}
 .orb-title{font-size:9.5px;max-width:calc(100% - 120px)}
 .big{font-size:34px}
}
@media (prefers-reduced-motion:reduce){
 .grain,.scan::after,.panel,.chat,.logo,.orb-glow,.chat-head .dot{animation:none!important}
 .term div{animation:none}
}

/* v4: live panels */
.pnl-cap{font-size:9.5px;color:var(--mu);letter-spacing:.04em;margin-top:2px}
.pnl-rows{flex-wrap:wrap;row-gap:2px}.pnl-rows b.wait{color:var(--au)}
#sigTbl{flex:1;min-height:0;overflow:auto}
.sigt{width:100%;border-collapse:collapse;font-size:10.5px}.sigt td{padding:1.5px 2px;border-bottom:1px dashed var(--line);text-align:right;white-space:nowrap}
.sigt td:first-child{text-align:left;color:#fff}.sigt td:first-child i{font-style:normal;font-size:8px;color:var(--mu);margin-left:2px;border:1px solid var(--line);padding:0 2px}
.sigt tr.hd td{color:var(--mu);font-size:9px}.sigt tr[data-s]{cursor:pointer}.sigt tr.sel td{background:rgba(34,230,255,.08)}
.sigt td.vd small{color:var(--mu)}.sigt td.neu{color:var(--mu)}
.sig-why{font-size:9.5px;color:var(--mu);text-transform:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.sig-why b{color:var(--cy);font-weight:400}
.p-mkt{display:flex;flex-direction:column}.mkt-wrap{flex:1;min-height:0;overflow:auto}
.mkt tr.hd td{color:var(--mu);font-size:9px}
.mkt td:nth-child(n+2){text-align:right}.mkt td:nth-child(3){width:auto}.mkt td:last-child{width:auto}
.mkt .exp{color:var(--pk);text-shadow:0 0 6px rgba(255,46,136,.6)}.mkt .cheap{color:var(--gr)}
.mkt tr.rexp td{background:rgba(255,46,136,.06)}
.mkt td.note{font-size:9px;color:var(--mu);text-transform:none;line-height:1.2;text-align:left!important}
.p-sig{display:flex;flex-direction:column}
.p-mkt .mkt{font-size:10px}.p-mkt .mkt td{padding:0 2px;line-height:14.5px}
.sigt{font-size:10px}.sigt td{padding:0 2px;line-height:13.5px}
.p-sig h2,.p-mkt h2{margin-bottom:3px}
@media (max-width:1180px){.row-bot>.p-mkt{grid-column:1/-1;height:auto}.row-top>.p-sig{height:auto;min-height:172px}}

/* v5: карточки сделок, события, режим, точность */
.desk{height:max(calc(100vh - 67px), 960px)}
.p-cards{flex:none;height:188px;display:flex;flex-direction:column}
.badge.reg{color:var(--au)}.badge.r-up{color:var(--gr);border-color:rgba(57,255,136,.5)}.badge.r-dn,.badge.r-pan{color:var(--pk);border-color:rgba(255,46,136,.5)}.badge.r-side{color:var(--cy);border-color:rgba(34,230,255,.4)}
.evstrip{display:flex;gap:5px;align-items:center;overflow-x:auto;white-space:nowrap;scrollbar-width:none;font-size:9.5px;margin-bottom:5px;flex:none}
.evstrip .evl{color:var(--or);letter-spacing:.14em}
.evstrip .ev{border:1px solid var(--line);padding:0 5px;color:var(--mu);text-decoration:none;text-transform:none}
.evstrip .ev.hi{color:var(--au);border-color:rgba(255,210,63,.35)}.evstrip .ev.blk{color:var(--pk);border-color:var(--pk);box-shadow:0 0 8px rgba(255,46,136,.4)}
.evstrip .evn{color:#46525e;text-transform:none}
.cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;flex:1;min-height:0}
.card{border:1px solid var(--line);padding:4px 5px;min-width:0;overflow:hidden;display:flex;flex-direction:column;gap:2px;background:rgba(0,0,0,.35)}
.card.go{border-color:rgba(57,255,136,.55);box-shadow:0 0 12px rgba(57,255,136,.18) inset}
.card .ch{display:flex;gap:4px;align-items:baseline;flex-wrap:wrap}.card .ch b{color:#fff;font-size:12px;font-weight:400;letter-spacing:.1em}
.card .dir{font-size:10px}.card .dir.go{color:var(--gr);text-shadow:0 0 6px var(--gr)}.card .dir.no{color:var(--au)}
.card .cf{margin-left:auto;color:var(--cy);font-size:10px}
.card .lv{display:flex;flex-wrap:wrap;gap:2px 8px;font-size:9.5px;color:var(--mu)}.card .lv b{font-weight:400;color:var(--tx)}.card .lv b.neg,.card .lv b.pos{text-shadow:none}
.card small{font-size:8.5px;color:var(--mu)}
.card .st{font-size:9px;color:var(--mu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card .cc{display:flex;flex-wrap:wrap;gap:2px}.card .cc i{font-style:normal;font-size:8.5px;border:1px solid var(--line);padding:0 3px;color:var(--mu)}
.card .cc i.p{color:var(--gr);border-color:rgba(57,255,136,.45)}.card .cc i.n{color:var(--pk);border-color:rgba(255,46,136,.45)}.card .cc i.x{opacity:.5}
.card .cc .ag{margin-left:auto;font-size:9px;color:var(--cy)}
.card .why{font-size:9px;color:var(--mu);text-transform:none;line-height:1.25;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.p-mvm{display:flex;flex-direction:column}.acc{flex:1;min-height:0;overflow:auto}
.acct{width:100%;border-collapse:collapse;font-size:10px}.acct td{padding:0 2px;line-height:13px;border-bottom:1px dashed var(--line);text-align:right}
.acct td:first-child{text-align:left;color:#fff}.acct tr.hd td{color:var(--mu);font-size:9px}
.acc .note{font-size:8.5px;line-height:1.2}
.ln .h b small{font-size:8.5px;color:var(--mu)}
@media (max-width:1180px){.desk{height:auto}.p-cards{height:auto}.cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.row-bot>.p-mvm{height:auto;min-height:170px}}
@media (max-width:700px){.cards{grid-template-columns:1fr}.card .why{-webkit-line-clamp:4}}

/* v6 */
.ver{color:var(--gr);font-weight:700;text-shadow:0 0 6px var(--gr)}
.tag.snap{color:var(--au);border-color:rgba(255,210,63,.5)}
button.badge{background:transparent;font:inherit;font-size:10px;cursor:pointer}
.badge.off{color:var(--mu)}
.ln .h i.sn{font-style:normal;color:var(--au);font-size:9px;border:1px solid rgba(255,210,63,.4);padding:0 3px;margin-right:3px}
/* v6.1: блок Охотника Palantir в ПОТОКАХ (вост. фланг, риск комплаенса) — компактно, графики потоков сохраняются */
.p-lines .lines{height:calc(100% - 20px - 68px)}
.palh{margin-top:4px;border-top:1px dashed var(--line);padding-top:3px;font-size:9.5px;letter-spacing:.08em;color:var(--or)}
.pal{font-size:10.5px;line-height:1.35}
.pal .pr{display:flex;justify-content:space-between;gap:6px;color:var(--mu);white-space:nowrap}
.pal .pr span:first-child{overflow:hidden;text-overflow:ellipsis}
.pal .pr b{font-weight:400;color:var(--tx)}.pal .pr b small{font-size:8.5px;color:var(--mu)}
.pal .au{color:var(--au);text-shadow:0 0 6px rgba(255,210,63,.5)}
.pal .ph{display:block;font-size:9.5px;color:#8fa1b3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}
.pal .ph i{font-style:normal;color:var(--mu)}.pal .ph em{font-style:normal;color:#ff5a4e;font-size:8.5px}
.term .s{color:var(--au);font-size:9px}
@media (max-width:1180px){.p-lines{height:508px}}
@media (max-width:700px){.p-lines{height:398px}}

/* v6.2: 7 карточек (BTC ETH SOL XRP DOGE HBAR XLM), ставка в % бюджета */
@media (max-width:700px){html,body{overflow-x:hidden}.cards{grid-template-columns:1fr;gap:6px}.card .st{white-space:normal}}

/* v6.3: ГЕО-ТРИГГЕР (crypto-atc /api/geo-trigger) — карточка рядом с орбом, над ЦИКЛОМ СИГНАЛА; орб не перекрывает */
@media (min-width:1181px){.desk{height:max(calc(100vh - 67px), 1096px)}}
.p-geo{flex:none;height:128px;display:flex;flex-direction:column;--gc:var(--mu)}
.p-geo.g-lo{--gc:var(--gr)}.p-geo.g-mid{--gc:var(--au)}.p-geo.g-hi{--gc:var(--pk)}
.p-geo.g-hi{border-color:rgba(255,46,136,.35)}
.geo-top{display:flex;gap:10px;align-items:center}
.geo-score{font-size:38px;line-height:1;font-weight:400;color:var(--gc);text-shadow:0 0 16px var(--gc),0 0 2px #fff;min-width:58px;text-align:center}
.geo-rb{display:grid;grid-template-columns:repeat(3,auto);gap:2px 12px;flex:1;min-width:0}
.geo-rb small{display:block;color:var(--mu);font-size:8.5px}
.geo-rb b{font-weight:400;font-size:12px;color:var(--tx);white-space:nowrap}
.geo-rb b.long{color:var(--gr);text-shadow:0 0 6px var(--gr)}.geo-rb b.short{color:var(--pk);text-shadow:0 0 6px var(--pk)}.geo-rb b.flat{color:var(--cy)}
.geo-why{font-size:9.5px;line-height:1.25;color:var(--tx);text-transform:none;margin-top:3px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.geo-layers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:auto;padding-top:3px;border-top:1px dashed var(--line)}
.geo-l{min-width:0;font-size:9px;color:var(--mu);cursor:help}
.geo-l .lh{display:flex;justify-content:space-between;gap:4px}.geo-l .lh b{font-weight:400}
.geo-l .bar{height:3px;background:var(--line);margin-top:2px}.geo-l .bar i{display:block;height:100%;box-shadow:0 0 6px currentColor}
.geo-l .det{display:none;text-transform:none;font-size:9px;line-height:1.25;margin-top:2px;color:#8fa1b3;overflow-wrap:anywhere}
.geo-l.lo b{color:var(--gr)}.geo-l.lo .bar i{background:var(--gr);color:var(--gr)}
.geo-l.mid b{color:var(--au)}.geo-l.mid .bar i{background:var(--au);color:var(--au)}
.geo-l.hi b{color:var(--pk)}.geo-l.hi .bar i{background:var(--pk);color:var(--pk)}
.geo-l.na b{color:var(--mu)}
@media (max-width:1180px){.p-geo{height:auto;min-height:128px}.geo-why{-webkit-line-clamp:3}.geo-l .det{display:block}.geo-layers{grid-template-columns:1fr;gap:4px}}
@media (max-width:700px){.geo-rb{grid-template-columns:repeat(2,auto)}.geo-score{font-size:34px}}
/* v6.4: РЕШЕНИЕ GO / WAIT / CLOSE (crypto-atc /api/decision) — под ГЕО-ТРИГГЕРОМ; орб не перекрывает; история — localStorage */
@media (min-width:1181px){.desk{height:max(calc(100vh - 67px), 1348px)}}
.p-dec{flex:none;height:172px;display:flex;flex-direction:column;--dc:var(--mu)}
.p-dec.d-go{--dc:var(--gr);border-color:rgba(57,255,136,.35)}.p-dec.d-wait{--dc:var(--au);border-color:rgba(255,210,63,.32)}.p-dec.d-close{--dc:var(--pk);border-color:rgba(255,46,136,.35)}
.dec-top{display:flex;gap:10px;align-items:center;min-height:0}
.dec-st{font-size:30px;line-height:1;font-weight:400;letter-spacing:.06em;color:var(--dc);text-shadow:0 0 16px var(--dc),0 0 2px #fff;min-width:96px;text-align:center;border:1px solid var(--dc);padding:3px 6px;box-shadow:0 0 12px -4px var(--dc) inset}
.dec-why{flex:1;min-width:0;font-size:9.5px;line-height:1.22;color:var(--tx);text-transform:none;overflow:hidden;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical}
.dec-in{display:flex;flex-wrap:wrap;gap:1px 9px;font-size:8.5px;color:var(--mu);margin-top:3px}
.dec-in b{font-weight:400;color:var(--tx)}.dec-in i{font-style:normal;color:var(--pk)}
.dec-in b.go{color:var(--gr)}.dec-in b.wait{color:var(--au)}.dec-in b.close{color:var(--pk)}
.dec-hh{display:flex;justify-content:space-between;font-size:8px;color:var(--mu);margin-top:auto;padding-top:2px;border-top:1px dashed var(--line)}
.dec-hist{list-style:none;margin:0;padding:0;overflow-y:auto;max-height:28px;font-size:9px;scrollbar-width:thin}
.dec-hist li{display:flex;gap:6px;white-space:nowrap;min-width:0;line-height:14px}
.dec-hist time{color:var(--mu);flex:none}.dec-hist b{font-weight:400;flex:none;width:38px}
.dec-hist span{overflow:hidden;text-overflow:ellipsis;min-width:0;text-transform:none;color:#8fa1b3}
.dec-hist li.go b{color:var(--gr)}.dec-hist li.wait b{color:var(--au)}.dec-hist li.close b{color:var(--pk)}
@media (max-width:1180px){.p-dec{height:auto;min-height:166px}.dec-hist{max-height:150px}.dec-hist li{white-space:normal;align-items:flex-start}.dec-hist span{overflow:visible}}
@media (max-width:700px){.dec-st{font-size:26px;min-width:84px}.dec-why{-webkit-line-clamp:4}.dec-hist{max-height:170px}}
/* v6.4: ЛИМИТ (crypto-atc /api/limit) — строка внутри карточки РЕШЕНИЕ, без новой панели */
.lim{display:flex;flex-wrap:wrap;align-items:baseline;gap:1px 9px;font-size:8.5px;color:var(--mu);margin-top:3px;padding:2px 5px;border:1px solid rgba(34,230,255,.18);background:rgba(34,230,255,.03)}
.lim>#limBody{display:contents}.lim-h{color:var(--cy);letter-spacing:.06em}.lim-h .tag{margin-left:3px}
.lim b{font-weight:400;color:var(--tx)}.lim b.z{color:var(--pk)}.lim b.sl{color:var(--pk)}.lim b.tp{color:var(--gr)}.lim i{font-style:normal;color:var(--pk)}
/* v6.4: ГЕО-НОВОСТИ (crypto-atc /api/news-filter) — 1–2 строки в «ПОТОКАХ» под Охотником; 7 ДНЕЙ (/api/backtest-mini) — строка в «ТОЧНОСТИ КАРТОЧЕК» */
.p-lines .lines{height:calc(100% - 20px - 68px - 52px)}
.gnh{margin-top:4px;border-top:1px dashed var(--line);padding-top:3px;font-size:9.5px;letter-spacing:.08em;color:var(--or);display:flex;align-items:baseline}
.gnh .gn-sc{margin-left:auto;color:var(--mu);font-size:9px}
.gn{font-size:9.5px;line-height:1.3;text-transform:none}
.gn .gr{display:flex;gap:5px;align-items:baseline;white-space:nowrap;text-decoration:none;color:#8fa1b3;min-width:0}
.gn .gr b{font-weight:400;flex:none;width:38px}.gn .gr.short b{color:var(--pk)}.gn .gr.long b{color:var(--gr)}.gn .gr.flat b{color:var(--cy)}
.gn .gr i{font-style:normal;color:var(--au);flex:none}.gn .gr em{font-style:normal;color:var(--mu);font-size:8.5px;flex:none}
.gn .gr span{overflow:hidden;text-overflow:ellipsis;min-width:0}.gn .na{color:var(--mu)}

.bt{display:flex;flex-wrap:nowrap;white-space:nowrap;overflow:hidden;align-items:baseline;gap:1px 5px;font-size:8.5px;color:var(--mu);margin-top:3px;padding-top:3px;border-top:1px dashed var(--line);flex:none}
.bt>#btBody{display:contents}.bt-h{color:var(--cy);letter-spacing:.06em}.bt-h .tag{margin-left:3px}
.bt b{font-weight:400;color:var(--tx)}.bt b.up{color:var(--gr)}.bt b.dn{color:var(--pk)}
.bt .bc.go{color:var(--gr)}.bt .bc.wait{color:var(--au)}.bt .bc.close{color:var(--pk)}
.bt-n{font-size:8px;color:#5c6b79;margin-left:auto;cursor:help}
@media (max-width:1180px){.p-lines{height:560px}}
@media (max-width:700px){.p-lines{height:500px}}
/* v6.4: ИТОГ (crypto-atc /api/confidence + /api/divergence + /api/oneliner) — тонкая полоса над ГЕО-ТРИГГЕРОМ, без новой большой панели */
.p-sum{flex:none;height:76px;padding:4px 9px;display:flex;flex-direction:column;justify-content:center}
.sum-row{display:flex;align-items:baseline;gap:4px 12px;font-size:9.5px;color:var(--mu);flex-wrap:wrap}
.sum-h{font-weight:400;color:var(--or);letter-spacing:.08em}.sum-h .tag{margin-left:3px}
.sum-st{font-weight:400;font-size:13px;letter-spacing:.06em;color:var(--mu)}.sum-st.go{color:var(--gr);text-shadow:0 0 8px var(--gr)}.sum-st.wait{color:var(--au);text-shadow:0 0 8px var(--au)}.sum-st.close{color:var(--pk);text-shadow:0 0 8px var(--pk)}
.sum-row b{font-weight:400;color:var(--tx)}.sum-row b.hi{color:var(--gr)}.sum-row b.mid{color:var(--au)}.sum-row b.lo{color:var(--pk)}
.sum-row b.aligned{color:var(--gr)}.sum-row b.conflict{color:var(--pk)}.sum-row i{font-style:normal;color:var(--pk)}
.sum-line{font-size:9.5px;line-height:1.25;color:var(--tx);text-transform:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:help}
@media (max-width:1180px){.p-sum{height:auto;min-height:76px}.sum-line,.sum-sub{white-space:normal}}
/* v6.4: ИТОГ — строки «было → стало» (/api/regime-memory) и «порог» (/api/threshold) */
.sum-sub{font-size:8.5px;line-height:1.3;color:var(--mu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:help}
.sum-sub b{font-weight:400;color:var(--tx)}.sum-sub b.go{color:var(--gr)}.sum-sub b.wait{color:var(--au)}.sum-sub b.close{color:var(--pk)}
.sum-sub span{text-transform:none;color:#8fa1b3}.sum-sub i{font-style:normal;color:#8fa1b3}
.sum-sub .ck{text-transform:uppercase;margin-left:4px}.sum-sub .ck.ok{color:var(--gr)}.sum-sub .ck.no{color:var(--pk)}
/* v6.4: колонки сетки не шире экрана (длинные строки ИТОГ/ЛИМИТ не раздвигают сетку на телефоне) */
.row-mid>*,.col-right,.col-right>*{min-width:0}
.p-lines{display:flex;flex-direction:column}.p-lines>.lines{flex:1 1 auto;min-height:0;height:auto}
@media (max-width:1180px){.sum-sub{white-space:normal}}

.msg .vid{display:block;width:100%;max-height:220px;margin-top:4px;background:#000;border:1px solid var(--line)}
.msg .who .team{font-size:8px;color:var(--au);border:1px solid var(--au);padding:0 3px;margin-left:0}

.orb-ref{position:absolute;left:50%;top:50%;width:min(46%,46vh);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;z-index:3;cursor:pointer}
.orb-ref:focus-visible{outline:2px solid var(--mu)}
.orb-ref-cap{position:absolute;left:50%;bottom:6px;transform:translateX(-50%);font-size:10px;color:var(--mu);z-index:3;white-space:nowrap;pointer-events:none}

.p-yt{flex:none;display:flex;flex-direction:column}
.yt-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px;margin-top:4px}
.yt-card{display:flex;gap:8px;border:1px solid var(--line);padding:6px;min-width:0}
.yt-card img{width:128px;height:72px;object-fit:cover;flex:none;background:#000}
.yt-b{min-width:0;display:flex;flex-direction:column;gap:2px;font-size:11px}
.yt-t{color:inherit;font-weight:bold;text-decoration:none;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.yt-t:hover{text-decoration:underline}
.yt-m,.yt-g{opacity:.65;font-size:10px}
.yt-empty{opacity:.6;font-size:11px;padding:6px 0}
@media (max-width:600px){.yt-list{grid-template-columns:1fr}.yt-card img{width:96px;height:54px}}
.yt-ch{display:flex;flex-wrap:wrap;gap:3px}.yt-chip{font-size:9px;border:1px solid var(--line);padding:0 4px;opacity:.8}.yt-as{border-color:var(--or)}

/* hologram preview: bigger centre on wide screens, link stays on top of iframe */
@media (min-width:900px){.orb-wrap{container-type:size}.orb-wrap .orb-ref{top:44%;width:min(72cqw,62cqh);z-index:3}}
@media (min-width:1201px){.row-mid{min-height:620px;grid-template-rows:minmax(620px,1fr)}}

/* orb signal overlay hidden (no signal text above centre) */
#evt,.orb-wrap .evt{display:none!important}
/* v4: bigger generation circle (fills the centre square) + indicator star sky behind it */
.orb-wrap{container-type:size}
.orb-wrap .orb-ref,.orb-wrap .orb-ref:hover{top:50%;width:min(96cqw,94cqh);z-index:3}
@media (min-width:900px){.orb-wrap .orb-ref{top:50%;width:min(96cqw,94cqh)}}
.star-layer{position:absolute;inset:0;z-index:2;pointer-events:none}
.star-layer .sky{position:absolute;width:2px;height:2px;border-radius:50%;background:#cfe}
.star-layer .istar{position:absolute;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;pointer-events:auto;cursor:help;animation:twk 3s ease-in-out infinite}
.star-layer .istar::after{content:'';position:absolute;inset:-6px}
.star-layer .istar.pos{background:#3f8;box-shadow:0 0 8px #3f8,0 0 16px #3f86}
.star-layer .istar.neg{background:#f45;box-shadow:0 0 8px #f45,0 0 16px #f456}
.star-layer .istar.neu{background:#ccd;opacity:.45;box-shadow:0 0 4px #ccd8}
@keyframes twk{50%{transform:scale(1.35)}}
