:root{--bg:#07090d;--bg2:#0c1017;--card:#0f141c;--line:#1c2532;--line2:#2a3647;--tx:#e6edf5;--mut:#8b98a9;--dim:#5d6a7b;--pos:#22d38a;--neg:#ff5d6c;--acc:#3ea6ff;--warm:#ffa23e;--mono:ui-monospace,SFMono-Regular,"JetBrains Mono",Menlo,Consolas,monospace;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html,body{margin:0;max-width:100%;overflow-x:hidden}
body{background:radial-gradient(1200px 500px at 70% -10%,#0f2236 0,transparent 60%),var(--bg);color:var(--tx);font:15px/1.5 var(--sans);overflow-wrap:anywhere}
a{color:var(--acc)}
img,svg{max-width:100%;display:block}
.wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 16px}
.top{position:sticky;top:0;z-index:5;background:rgba(7,9,13,.86);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.top-in{display:flex;align-items:center;gap:12px;min-height:56px;flex-wrap:wrap}
.top-in .btn{margin-left:auto}
.brand{font:700 18px var(--mono);color:var(--tx);text-decoration:none;display:flex;align-items:center;gap:8px;letter-spacing:.3px}
.brand i{width:10px;height:10px;border-radius:2px;background:var(--pos);box-shadow:0 0 12px var(--pos)}
.brand b{color:var(--pos);font-weight:700}
.cur{animation:bl 1.1s steps(1) infinite;color:var(--pos)}@keyframes bl{50%{opacity:0}}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border-radius:8px;border:1px solid var(--line2);color:var(--tx);text-decoration:none;font-weight:600;font-size:14px;white-space:nowrap}
.btn-p{background:var(--pos);border-color:var(--pos);color:#04140c}
section{margin:28px 0}
.sec-h{display:flex;align-items:baseline;gap:10px 16px;flex-wrap:wrap;margin-bottom:12px}
h2{margin:0;font:700 19px var(--mono);letter-spacing:.2px}
h2::before{content:"> ";color:var(--pos)}
.note{font:12px var(--mono);color:var(--dim)}
.more{margin-left:auto;font-size:13px;text-decoration:none}
.grid{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
.card{background:linear-gradient(180deg,#111722,var(--card));border:1px solid var(--line);border-radius:12px;padding:14px;min-width:0}
.card-h{font:600 12px var(--mono);color:var(--mut);text-transform:uppercase;letter-spacing:.6px;margin-bottom:8px;display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}
.lbl{display:block;font:600 11px var(--mono);color:var(--mut);text-transform:uppercase;letter-spacing:.6px}
.val{font:700 24px var(--mono);margin:2px 0}
.val small{font-size:13px;color:var(--mut);font-weight:500}
.s{font-size:13px;color:var(--mut)}
.pos{color:var(--pos)}.neg{color:var(--neg)}.flat{color:var(--mut)}
.fine{font-size:12px;color:var(--dim);margin:10px 0 0}
.center{text-align:center}
.tag{display:inline-block;font:700 10.5px var(--mono);letter-spacing:.8px;padding:2px 7px;border-radius:5px;border:1px solid}
.tag-paper{color:#ffd166;border-color:#5e4d1d;background:#1d180a}
.tag-live{color:var(--neg);border-color:#5e1d26;background:#1d0a0d}
/* hero */
.hero{margin-top:22px;padding:18px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(160deg,#0d1a14 0,#0b1018 45%,#0b0f16 100%);position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;inset:auto -20% -60% 40%;height:300px;background:radial-gradient(closest-side,rgba(34,211,138,.12),transparent);pointer-events:none}
.hero-label{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font:600 13px var(--mono);color:#ffd166}
.hero-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);margin-top:10px;position:relative;z-index:1}
.kicker{margin:6px 0 0;color:var(--mut);font-size:14px}
.big{font:800 clamp(38px,9vw,76px)/1.05 var(--mono);color:var(--pos);letter-spacing:-1px;text-shadow:0 0 30px rgba(34,211,138,.25);margin:4px 0}
.sub{margin:0;color:var(--tx);font:500 15px var(--mono)}
.feat{background:linear-gradient(160deg,#13241b,#0f141c 60%);border:1px solid #1f4a35;border-radius:14px;padding:16px;min-width:0}
.feat-h{font:700 12px var(--mono);color:#ffd166;text-transform:uppercase;letter-spacing:.8px}
.crown{color:#ffd166}
.feat-name{font:800 26px var(--mono);margin-top:4px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.feat-desc{color:var(--mut);font-size:13px}
.feat-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.feat-stats b{display:block;font:800 clamp(18px,4.6vw,28px) var(--mono)}
.feat-stats small{color:var(--mut);font-size:12px}
.feat-foot{margin-top:10px;font-size:12px;color:var(--dim)}
.bots{display:grid;gap:12px;grid-template-columns:minmax(0,1fr);margin-top:18px;position:relative;z-index:1}
.bot{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px;min-width:0}
.bot-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bot-h b{font:800 18px var(--mono)}
.bot-d{color:var(--mut);font-size:12.5px;margin:2px 0 8px}
.bot-res{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.bot-res .val{font-size:26px}
.kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px;font:12px var(--mono)}
.kv span{color:var(--dim);display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.5px}
.kv b{font-weight:700;color:var(--tx)}
.chart{width:100%;min-width:0}
.eq{height:150px;margin-top:10px}
.bot-f{font-size:11.5px;color:var(--dim);margin-top:6px}
/* rynek */
.coin .val{font-size:26px}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.chip{font:600 11.5px var(--mono);padding:2px 8px;border-radius:999px;border:1px solid var(--line2);color:var(--mut)}
.chip.pos{color:var(--pos);border-color:#1f4a35}.chip.neg{color:var(--neg);border-color:#4a1f26}
.mini{display:flex;align-items:flex-end;gap:3px;height:40px;margin-top:8px}
.mini i{flex:1 1 0;min-width:0;border-radius:2px 2px 0 0}
/* sentyment */
.sent{grid-template-columns:minmax(0,1fr)}
.heatcard{text-align:center}
.gauge{max-width:260px;margin:0 auto}
.heat-word{font:800 28px var(--mono);margin-top:-6px}
.heat-sub{font-size:12.5px;color:var(--mut)}
.leg{margin-left:auto;text-transform:none;letter-spacing:0;display:flex;gap:6px;align-items:center}
.leg i{display:inline-block;width:14px;height:3px;border-radius:2px}.l-heat{background:var(--warm)}.l-btc{background:var(--acc)}
#heatChart{height:220px}
.bars{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.bars li{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:4px 8px;font-size:12.5px;align-items:center}
.bars .t{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bars .n{text-align:right;font:600 12px var(--mono)}
.bars .bar{grid-column:1/-1;height:5px;background:#18202c;border-radius:3px;overflow:hidden}
.bars .bar i{display:block;height:100%;border-radius:3px}
/* radar */
.mv li{display:flex;justify-content:space-between;gap:8px;font:13px var(--mono);padding:4px 0;border-bottom:1px solid var(--line)}
.mv{list-style:none;margin:0;padding:0}
.cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;border:1px dashed var(--line2);border-radius:12px;padding:16px}
.foot{border-top:1px solid var(--line);margin-top:40px;padding:20px 0 40px;font-size:13px;color:var(--mut)}
@media(min-width:640px){.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.bots{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:980px){.wrap{padding:0 24px}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.hero{padding:28px}.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center}.sent{grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr) minmax(0,1fr)}.eq{height:170px}}
@media(max-width:400px){.feat-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.kv{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.cur{animation:none}}

/* Open positions */

/* open positions widget inside bot cards (terminal look, as in the mirror widget) */
@keyframes owPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.78)}}
@keyframes owGlow{0%,100%{box-shadow:0 0 4px rgba(63,185,80,.35)}50%{box-shadow:0 0 10px rgba(63,185,80,.7)}}
.ow{margin-top:12px;background:#0a0e15;border:1px solid #1d2433;border-radius:10px;padding:9px 10px 8px;position:relative;overflow:hidden;min-width:0}
.ow::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#1f6f4a,#3fb950 55%,#7ee787);opacity:.8}
.ow-h{display:flex;align-items:center;gap:7px;margin-bottom:7px}
.ow-dot{width:7px;height:7px;border-radius:50%;background:#586074;flex-shrink:0}
.ow-dot.on{background:#3fb950;box-shadow:0 0 7px rgba(63,185,80,.6);animation:owPulse 1.6s infinite}
.ow-t{font:700 10.5px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#c4a574;flex:1}
.ow-n{font:700 10px/1 var(--mono);padding:3px 8px;border-radius:20px;background:#1a2230;color:#8b949e;white-space:nowrap;vertical-align:middle;letter-spacing:.03em}
.ow-n.on{background:rgba(63,185,80,.14);color:#56d364;border:1px solid rgba(63,185,80,.3)}
.ow-list{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.ow-r{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 10px;padding:6px 8px;border-radius:7px;background:#0f141d;border:1px solid #182030}
.ow-l{display:flex;align-items:center;gap:7px;min-width:0}
.ow-sym{font:800 13px/1.1 var(--mono);color:#e6edf3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.ow-side{font:800 9px/1 var(--mono);letter-spacing:.08em;padding:3px 6px;border-radius:5px;flex-shrink:0}
.ow-side.long{background:rgba(63,185,80,.14);color:#56d364}
.ow-side.short{background:rgba(248,81,73,.14);color:#ff7b72}
.ow-pnl{grid-row:1 / span 2;grid-column:2;font:800 13px/1 var(--mono);font-variant-numeric:tabular-nums;padding:6px 8px;border-radius:6px;text-align:right;min-width:72px;background:#151b26;color:#8b949e}
.ow-pnl.gain{background:rgba(63,185,80,.12);color:#56d364}
.ow-pnl.loss{background:rgba(248,81,73,.12);color:#ff7b72}
.ow-pnl.hot{background:rgba(63,185,80,.22);color:#7ee787;animation:owGlow 1.8s ease-in-out infinite}
.ow-m{grid-column:1;display:flex;flex-wrap:wrap;gap:2px 10px;font:500 10.5px/1.3 var(--mono);color:#6e7681;min-width:0}
.ow-m b{color:#c9d1d9;font-weight:700}
.ow-empty{font:600 11px/1.3 var(--mono);color:#586074;padding:4px 2px}
.ow-more{font:600 10.5px var(--mono);color:#8b949e;margin-top:5px;text-align:right}
@media (prefers-reduced-motion:reduce){.ow-dot.on,.ow-pnl.hot{animation:none}}
