
/* ══════════════════════════════════════
   DARK THEME — Deep Navy Professional
══════════════════════════════════════ */
:root{
  --bg:#080c14;
  --bg2:#0d1220;
  --card:#0f1623;
  --card2:#141c2e;
  --border:#1e2a42;
  --border2:#253352;
  --accent:#00c2ff;
  --accent2:#0099cc;
  --text:#e2e8f4;
  --text2:#a8b4cc;
  --muted:#546480;
  --red:#f1416c;
  --green:#0ec97a;
  --gold:#f0a500;
  --btc:#f0a500;
  --eth:#7b8cde;
  --akt:#00c2ff;
  --rndr:#ff7043;
  --link:#5b9cf6;
  --glow:rgba(0,194,255,.12);
  --glow-btc:rgba(240,165,0,.1);
  --sol:#9945ff;
  --xrp:#00aae4;
  --hype:#ff2d78;
  --pump:#00e676;
  --ada:#4f8ef7;
  --arb:#28a0f0;
}

/* ══════════════════════════════════════
   LIGHT THEME — Clean Slate Day Mode
══════════════════════════════════════ */
.light{
  --bg:#f0f3fa;
  --bg2:#e8ecf5;
  --card:#ffffff;
  --card2:#f7f9ff;
  --border:#dde3f0;
  --border2:#c8d0e8;
  --accent:#0070cc;
  --accent2:#005aa3;
  --text:#0f1828;
  --text2:#3d4f6e;
  --muted:#8896b0;
  --red:#e5294c;
  --green:#0a9e5c;
  --gold:#c87d00;
  --btc:#c87d00;
  --eth:#4a5cc0;
  --akt:#0070cc;
  --rndr:#d4542a;
  --link:#2a6fd4;
  --sol:#7b2fe8;
  --xrp:#0088bb;
  --hype:#bb1055;
  --pump:#0a9e5c;
  --ada:#2a5cc0;
  --arb:#1a70b0;
  --glow:rgba(0,112,204,.08);
  --glow-btc:rgba(200,125,0,.08);
}

*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}

body{
  background:var(--bg);
  color:var(--text);
  font-family:'Inter',sans-serif;
  min-height:100vh;
  overflow-x:hidden;
  transition:background .4s,color .4s;
}

/* Subtle noise texture overlay */
body::before{
  content:'';
  position:fixed;inset:0;
  background-image:
    radial-gradient(ellipse at 20% 0%, rgba(0,194,255,.04) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 100%, rgba(240,165,0,.03) 0%, transparent 60%);
  pointer-events:none;z-index:0;
}
.light body::before{
  background-image:
    radial-gradient(ellipse at 20% 0%, rgba(0,112,204,.04) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 100%, rgba(200,125,0,.03) 0%, transparent 60%);
}

.app{display:flex;flex-direction:column;min-height:100vh;position:relative;z-index:1}

/* ══ HEADER ══ */
.header{
  padding:16px 16px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.header-left{display:flex;flex-direction:column;gap:2px}
.logo{
  font-size:9px;letter-spacing:4px;
  color:var(--accent);
  font-family:'DM Mono',monospace;
  opacity:.7;
  text-transform:uppercase;
}
h1{
  font-size:clamp(18px,4vw,26px);
  font-weight:800;
  color:var(--text);
  letter-spacing:-0.5px;
  line-height:1.1;
}
h1 span{color:var(--accent)}
.subtitle{
  color:var(--muted);
  font-size:10px;
  font-family:'DM Mono',monospace;
  letter-spacing:1px;
}
.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.author-badge{
  display:inline-flex;align-items:center;gap:5px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:8px;
  padding:5px 10px;
}
.author-avatar{
  width:20px;height:20px;border-radius:50%;
  background:linear-gradient(135deg,var(--accent),var(--eth));
  display:flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:700;color:#fff;
  font-family:'DM Mono',monospace;
}
.author-name{
  font-family:'DM Mono',monospace;
  font-size:9px;color:var(--text2);
  letter-spacing:1px;
  font-weight:500;
}

/* ══ TOP BAR ══ */
.top-bar{
  display:flex;align-items:center;justify-content:space-between;
  padding:8px 16px;gap:8px;flex-wrap:wrap;
}
.status-live{display:flex;align-items:center;gap:6px;font-family:'DM Mono',monospace;font-size:10px;color:var(--green)}
.pulse{width:6px;height:6px;background:var(--green);border-radius:50%;animation:pulse 2s infinite;flex-shrink:0}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}
.top-actions{display:flex;gap:5px}
.icon-btn{
  background:var(--card);border:1px solid var(--border);
  border-radius:8px;padding:6px 10px;
  color:var(--muted);font-size:13px;cursor:pointer;
  transition:all .2s;font-family:'Inter',sans-serif;
}
.icon-btn:hover{border-color:var(--accent);color:var(--accent)}

/* ══ BTC + ETH HERO ══ */
.hero-prices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 16px 10px}
.hero-card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;padding:14px;
  position:relative;overflow:hidden;
  transition:transform .2s,border-color .2s;
}
.hero-card:active{transform:scale(.98)}
.hero-card::after{
  content:'';position:absolute;
  top:-40px;right:-40px;
  width:100px;height:100px;
  border-radius:50%;
  background:var(--hc-glow);
  filter:blur(30px);
  pointer-events:none;
}
.hero-card.btc{--hc-glow:rgba(240,165,0,.15)}
.hero-card.eth{--hc-glow:rgba(123,140,222,.15)}
.hc-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.hc-name{font-size:14px;font-weight:700;letter-spacing:.5px}
.hero-card.btc .hc-name{color:var(--btc)}
.hero-card.eth .hc-name{color:var(--eth)}
.hc-tag{
  font-family:'DM Mono',monospace;font-size:8px;
  padding:2px 7px;border-radius:4px;
  background:var(--bg2);color:var(--muted);
  border:1px solid var(--border);
}
.hc-price{
  font-family:'DM Mono',monospace;
  font-size:20px;font-weight:500;
  margin-bottom:3px;letter-spacing:-0.5px;
}
.hc-change{font-family:'DM Mono',monospace;font-size:10px}
.hc-change.pos{color:var(--green)}.hc-change.neg{color:var(--red)}
.hc-spark{height:28px;margin-top:8px}
canvas.hc-sparkline{width:100%;height:28px}

/* ══ FEAR GREED ══ */
.fg-bar{
  margin:0 16px 8px;
  background:var(--card);border:1px solid var(--border);
  border-radius:12px;padding:10px 14px;
  display:flex;align-items:center;gap:10px;
}
.fg-label-txt{font-family:'DM Mono',monospace;font-size:9px;color:var(--muted);white-space:nowrap;line-height:1.4}
.fg-meter{flex:1;height:6px;background:linear-gradient(90deg,#f1416c,#ff8c00,#ffd700,#0ec97a);border-radius:3px;position:relative}
.fg-needle{position:absolute;top:-5px;width:16px;height:16px;background:var(--card);border-radius:50%;border:2px solid var(--text);transform:translateX(-50%);transition:left .5s ease;box-shadow:0 2px 8px rgba(0,0,0,.4)}
.fg-val{font-family:'DM Mono',monospace;font-size:16px;font-weight:500}
.fg-lbl{font-size:9px;color:var(--muted);font-family:'DM Mono',monospace;text-align:right}

/* ══ DOMINANCE ══ */
.dom-bar{margin:0 16px 8px;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:10px 14px}
.dom-title{font-family:'DM Mono',monospace;font-size:9px;color:var(--muted);margin-bottom:6px;letter-spacing:2px;text-transform:uppercase}
.dom-track{height:8px;background:var(--bg2);border-radius:4px;overflow:hidden;display:flex;margin-bottom:5px}
.dom-btc{background:var(--btc);height:100%;transition:width .5s ease;display:flex;align-items:center;justify-content:center;min-width:30px}
.dom-eth{background:var(--eth);height:100%;transition:width .5s ease}
.dom-other{background:var(--border2);height:100%;flex:1}
.dom-labels{display:flex;gap:12px;font-family:'DM Mono',monospace;font-size:9px}

/* ══ DCA BANNER ══ */
.dca-banner{
  margin:0 16px 8px;
  background:var(--card2);
  border:1px solid var(--border);
  border-left:3px solid var(--accent);
  border-radius:0 12px 12px 0;
  padding:12px 16px;
  display:flex;align-items:center;justify-content:space-between;gap:8px;
}
.dca-title{font-size:12px;font-weight:600;color:var(--accent);margin-bottom:2px}
.dca-sub{font-family:'DM Mono',monospace;font-size:9px;color:var(--muted)}
.dca-countdown{font-family:'DM Mono',monospace;font-size:22px;font-weight:500;color:var(--text);letter-spacing:-0.5px}
.dca-lbl{font-size:9px;color:var(--muted);text-align:right;font-family:'DM Mono',monospace}

/* ══ BOTTOM TABS ══ */
.tabs{
  display:flex;gap:2px;
  background:var(--card);
  border-top:1px solid var(--border);
  padding:6px 8px;
  position:sticky;bottom:0;z-index:100;
}
.tab{
  flex:1;padding:7px 2px;text-align:center;
  border-radius:8px;cursor:pointer;
  font-size:9px;font-weight:600;
  letter-spacing:.3px;color:var(--muted);
  transition:all .2s;
  display:flex;flex-direction:column;align-items:center;gap:2px;
}
.tab .ti{font-size:14px}
.tab.active{background:var(--accent);color:#fff}
.light .tab.active{color:#fff}

/* ══ CONTENT ══ */
.content{flex:1;padding:0 16px 10px;overflow-y:auto}
.page{display:none}.page.active{display:block}

/* ══ PRICE CARDS ══ */
.cards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:12px}
.cards-grid-6{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:12px}
@media(min-width:600px){.cards-grid{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1200px){.desktop-layout .cards-grid{grid-template-columns:repeat(5,1fr) !important}}
@media(min-width:1200px){.desktop-layout .cards-grid-6{grid-template-columns:repeat(6,1fr) !important}}
.card{
  background:var(--card);
  border-radius:14px;padding:12px;
  position:relative;overflow:hidden;
  transition:transform .2s,box-shadow .3s;
  border:1px solid transparent;
  box-shadow:0 4px 24px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.04);
}
.card::after{
  content:'';
  position:absolute;inset:0;border-radius:14px;
  background:linear-gradient(135deg,var(--cc) 0%,transparent 60%);
  opacity:.04;pointer-events:none;
}
.card:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(0,0,0,.4),0 0 20px color-mix(in srgb,var(--cc) 20%,transparent)}
.card:active{transform:scale(.98)}
.card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--cc),transparent);
  opacity:.9;
}
/* Радужная рамка на карточках монет */
.card[data-coin]{
  background:linear-gradient(var(--card),var(--card)) padding-box,
             linear-gradient(135deg,var(--cc),rgba(255,255,255,.05),var(--cc)) border-box;
  border:1px solid transparent;
}
.card[data-coin="BTC"]{--cc:var(--btc)}.card[data-coin="AKT"]{--cc:var(--akt)}
.card[data-coin="RNDR"]{--cc:var(--rndr)}.card[data-coin="LINK"]{--cc:var(--link)}
.ct{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.cn{
  font-size:13px;font-weight:500;letter-spacing:.3px;
  background:linear-gradient(135deg,var(--cc),color-mix(in srgb,var(--cc) 60%,#fff),var(--cc));
  background-size:200% 200%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:rainbowText 5s ease infinite;
}
.cb{
  font-family:'DM Mono',monospace;font-size:8px;
  padding:2px 6px;border-radius:4px;
  background:var(--bg2);color:var(--muted);
  border:1px solid var(--border);
}
.pb{
  font-family:'DM Mono',monospace;font-size:16px;font-weight:400;margin-bottom:2px;letter-spacing:-0.3px;
  background:linear-gradient(135deg,#fff 0%,var(--cc) 60%,#e2e8f4 100%);
  background-size:200% 200%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:rainbowText 6s ease infinite;
}
.pc{font-family:'DM Mono',monospace;font-size:10px;margin-bottom:7px}
.pc.pos{color:var(--green)}.pc.neg{color:var(--red)}
.sw{height:28px;margin-bottom:7px}
canvas.sparkline{width:100%;height:28px}
.pw{margin-bottom:8px}
.pl{display:flex;justify-content:space-between;font-family:'DM Mono',monospace;font-size:9px;color:var(--muted);margin-bottom:3px}
.pbar{background:var(--bg2);border-radius:3px;height:3px;overflow:hidden}
.pfill{height:100%;border-radius:3px;background:var(--cc);transition:width .6s ease}
.dca-badge{
  display:inline-flex;align-items:center;gap:4px;
  background:rgba(240,165,0,.1);border:1px solid rgba(240,165,0,.25);
  border-radius:4px;padding:3px 7px;
  font-family:'DM Mono',monospace;font-size:9px;color:var(--gold);margin-bottom:5px;
}
.am{border-top:1px solid var(--border);padding-top:7px;margin-top:2px}
.al{font-size:9px;letter-spacing:2px;color:var(--muted);margin-bottom:4px;font-family:'DM Mono',monospace;text-transform:uppercase}
.ar{display:flex;gap:4px;margin-bottom:3px;align-items:center}
.ai{
  flex:1;background:var(--bg);border:1px solid var(--border);
  border-radius:6px;padding:5px 7px;
  color:var(--text);font-family:'DM Mono',monospace;font-size:10px;outline:none;min-width:0;
  transition:border-color .2s;
}
.ai:focus{border-color:var(--cc)}
.sb{border:none;border-radius:5px;padding:5px 8px;font-weight:600;font-size:9px;cursor:pointer;font-family:'Inter',sans-serif}
.atags{margin-top:3px}
.atag{
  display:inline-flex;align-items:center;gap:3px;
  background:var(--bg2);border:1px solid var(--border);
  border-radius:4px;padding:2px 6px;
  font-family:'DM Mono',monospace;font-size:9px;margin:2px 2px 2px 0;color:var(--muted);
}
.atag .rm{cursor:pointer;color:var(--red);opacity:.7;font-size:11px}

/* ══════════════════════════════════════
   RAINBOW ANIMATIONS
══════════════════════════════════════ */
@keyframes gradientShift{
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
@keyframes rainbowText{
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
@keyframes glowPulse{
  0%,100%{box-shadow:0 0 20px rgba(0,194,255,.12),0 4px 24px rgba(0,0,0,.4)}
  50%{box-shadow:0 0 40px rgba(153,69,255,.2),0 4px 24px rgba(0,0,0,.4)}
}
@keyframes cardGlow{
  0%{box-shadow:0 2px 20px rgba(247,147,26,.08),0 0 0 1px rgba(247,147,26,.2)}
  25%{box-shadow:0 2px 20px rgba(0,194,255,.1),0 0 0 1px rgba(0,194,255,.25)}
  50%{box-shadow:0 2px 20px rgba(153,69,255,.1),0 0 0 1px rgba(153,69,255,.25)}
  75%{box-shadow:0 2px 20px rgba(255,45,120,.1),0 0 0 1px rgba(255,45,120,.2)}
  100%{box-shadow:0 2px 20px rgba(247,147,26,.08),0 0 0 1px rgba(247,147,26,.2)}
}

/* ══ SECTION CARDS ══ */
.sc{
  background:var(--card);
  border-radius:14px;padding:14px;margin-bottom:12px;
  position:relative;
  border:1px solid var(--border);
  animation:cardGlow 8s ease infinite;
  box-shadow:0 2px 20px rgba(0,194,255,.06);
}
.sc::before{
  content:'';
  position:absolute;inset:-1px;
  border-radius:15px;
  background:linear-gradient(135deg,#f7931a55,#ff2d7855,#9945ff55,#00c2ff55,#0ec97a55,#f7931a55);
  background-size:400% 400%;
  animation:gradientShift 8s ease infinite;
  z-index:-1;
  filter:blur(0px);
  opacity:.35;
}
.st{
  font-size:9px;letter-spacing:3px;
  margin-bottom:12px;
  font-family:'DM Mono',monospace;
  text-transform:uppercase;
  background:linear-gradient(135deg,#00c2ff 0%,#9945ff 40%,#ff2d78 70%,#00c2ff 100%);
  background-size:300% 300%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:rainbowText 5s ease infinite;
}

/* ══ STREAK ══ */
.streak-card{
  background:var(--card);
  border:1px solid transparent;
  background:linear-gradient(var(--card),var(--card)) padding-box,
             linear-gradient(135deg,#f0a500,#ff2d78,#9945ff,#f0a500) border-box;
  background-size:auto,300% 300%;
  animation:gradientShift 8s ease infinite;
  border-left:3px solid var(--gold);
  border-radius:0 14px 14px 0;
  padding:14px;margin-bottom:12px;
}
.streak-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.streak-num{font-family:'DM Mono',monospace;font-size:32px;font-weight:500;color:var(--gold);text-align:right;letter-spacing:-1px}
.streak-lbl{font-size:9px;color:var(--muted);text-align:right;font-family:'DM Mono',monospace}
.achievements{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.ach{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:4px;padding:4px 9px;
  font-size:10px;font-family:'DM Mono',monospace;color:var(--muted);
}
.ach.earned{border-color:rgba(240,165,0,.4);color:var(--gold);background:rgba(240,165,0,.06)}

/* ══ GOAL CALCULATOR ══ */
.goal-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:14px;margin-bottom:12px}
.goal-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.goal-input-wrap{display:flex;flex-direction:column;gap:4px}
.goal-lbl{font-family:'DM Mono',monospace;font-size:10px;color:var(--text2);text-transform:uppercase;letter-spacing:1px;font-weight:600}
.goal-result{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px}
.goal-row{display:flex;justify-content:space-between;font-family:'DM Mono',monospace;font-size:13px;margin-bottom:8px}
.goal-row:last-child{margin-bottom:0;border-top:1px solid var(--border);padding-top:8px;margin-top:3px}
.goal-val{color:var(--accent);font-weight:700;font-size:14px}

/* ══ GAINERS/LOSERS ══ */
.gl-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
@media(min-width:500px){.gl-grid{grid-template-columns:repeat(3,1fr)}}
.gl-item{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:10px;padding:10px;cursor:pointer;transition:all .2s;
}
.gl-item:hover{border-color:var(--border2);background:var(--card)}
.gl-name{font-size:12px;font-weight:600;margin-bottom:2px}
.gl-price{font-family:'DM Mono',monospace;font-size:11px;color:var(--muted);margin-bottom:2px}
.gl-ch{font-family:'DM Mono',monospace;font-size:12px;font-weight:500}
.gl-ch.pos{color:var(--green)}.gl-ch.neg{color:var(--red)}

/* ══ HALVING ══ */
.halving-card{
  background:var(--card);
  border:1px solid var(--border);
  border-top:2px solid var(--btc);
  border-radius:14px;padding:14px;margin-bottom:12px;
}
.halving-title{font-size:11px;font-weight:600;color:var(--btc);margin-bottom:10px;letter-spacing:.3px}
.halving-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.halving-unit{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:8px 4px;text-align:center}
.halving-num{font-family:'DM Mono',monospace;font-size:18px;font-weight:500;color:var(--btc);letter-spacing:-0.5px}
.halving-lbl{font-family:'DM Mono',monospace;font-size:8px;color:var(--muted);margin-top:2px;text-transform:uppercase;letter-spacing:1px}
.halving-info{font-family:'DM Mono',monospace;font-size:9px;color:var(--muted);margin-top:8px;line-height:1.6}

/* ══ CHART / SCREENER BUTTONS ══ */
.chart-controls{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap;align-items:center}
.chart-search{
  flex:1;min-width:120px;
  background:var(--card);border:1px solid var(--border);
  border-radius:8px;padding:8px 12px;
  color:var(--text);font-family:'DM Mono',monospace;font-size:12px;outline:none;
  transition:border-color .2s;
}
.chart-search:focus{border-color:var(--accent)}
.interval-btns{display:flex;gap:4px}
.intv-btn{
  background:var(--card);border:1px solid var(--border);
  border-radius:6px;padding:6px 10px;
  color:var(--muted);font-family:'DM Mono',monospace;font-size:10px;cursor:pointer;transition:all .2s;
}
.intv-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.quick-coins{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:10px}
.qc-btn{
  background:var(--card);border:1px solid var(--border);
  border-radius:6px;padding:5px 10px;
  font-family:'DM Mono',monospace;font-size:10px;cursor:pointer;transition:all .2s;color:var(--muted);
}
.qc-btn:hover,.qc-btn.active{border-color:var(--accent);color:var(--accent);background:var(--glow)}
#tv-container{width:100%;height:500px;border-radius:12px;overflow:hidden;border:1px solid var(--border)}
@media(min-width:600px){#tv-container{height:600px}}

/* ══ PORTFOLIO ══ */
.chart-wrap{position:relative;width:220px;height:220px;margin:0 auto 12px}
.donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}
.donut-total{font-family:'DM Mono',monospace;font-size:22px;font-weight:700;color:var(--accent);line-height:1}
.donut-lbl{font-family:'DM Mono',monospace;font-size:11px;color:var(--muted);margin-top:3px}
.legend-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.legend-item{display:flex;align-items:center;gap:6px;font-family:'DM Mono',monospace;font-size:12px;padding:3px 0}
.legend-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}
.growth-chart-wrap{height:150px;position:relative;margin-bottom:6px}
.port-row{display:flex;align-items:center;gap:6px;margin-bottom:8px;flex-wrap:wrap}
.port-coin{font-weight:700;font-size:12px;width:40px;letter-spacing:.3px}
.pi{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:7px 10px;font-size:13px;font-family:'DM Mono',monospace;color:var(--text);width:100%;transition:border-color .2s}
.pi:focus{border-color:var(--accent)}
.pv{font-family:'DM Mono',monospace;font-size:14px;font-weight:600;color:var(--text);min-width:70px;text-align:right}
.pt{border-top:1px solid var(--border);padding-top:10px;margin-top:4px;display:flex;justify-content:space-between;align-items:center}
.export-btn{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:8px;padding:8px 14px;color:var(--text2);
  font-family:'DM Mono',monospace;font-size:11px;cursor:pointer;
  width:100%;text-align:center;margin-top:8px;transition:all .2s;display:block;
}
.export-btn:hover{border-color:var(--accent);color:var(--accent)}

/* ══ CONVERTER ══ */
.cr{display:flex;gap:6px;align-items:center;margin-bottom:6px;flex-wrap:wrap}
.ci{
  background:var(--bg);border:1px solid var(--border);
  border-radius:8px;padding:7px 10px;
  color:var(--text);font-family:'DM Mono',monospace;font-size:12px;outline:none;flex:1;min-width:70px;
  transition:border-color .2s;
}
.ci:focus{border-color:var(--accent)}
.cres{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-family:'DM Mono',monospace;font-size:12px;color:var(--accent);margin-top:4px}

/* ══ DCA TABLE ══ */
.add-row{display:flex;gap:5px;margin-bottom:10px;flex-wrap:wrap}
.add-row select,.add-row input{
  background:var(--bg);border:1px solid var(--border);
  border-radius:7px;padding:7px 8px;
  color:var(--text);font-family:'DM Mono',monospace;font-size:10px;outline:none;
  transition:border-color .2s;
}
.add-row select{width:65px}
.add-row input{flex:1;min-width:60px}
.add-row select:focus,.add-row input:focus{border-color:var(--accent)}
.add-btn{
  background:var(--accent);color:#fff;border:none;
  border-radius:7px;padding:7px 14px;
  font-weight:600;font-size:11px;cursor:pointer;
  font-family:'Inter',sans-serif;
  transition:opacity .2s;
}
.light .add-btn{color:#fff}
.add-btn:hover{opacity:.85}
.pt2{width:100%;border-collapse:collapse;font-family:'DM Mono',monospace;font-size:10px}
.pt2 th{text-align:left;color:var(--muted);padding:4px 5px;border-bottom:1px solid var(--border);font-weight:400;letter-spacing:1px;text-transform:uppercase;font-size:9px}
.pt2 td{padding:6px 5px;border-bottom:1px solid rgba(255,255,255,.03)}
.light .pt2 td{border-bottom-color:rgba(0,0,0,.04)}
.pt2 tr:last-child td{border-bottom:none}
.db{background:none;border:none;color:var(--red);cursor:pointer;font-size:12px;opacity:.5}
.db:hover{opacity:1}
.avgbox{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:10px;padding:10px 12px;margin-top:8px;
}
.avgrow{display:flex;justify-content:space-between;font-family:'DM Mono',monospace;font-size:11px;margin-bottom:3px}
.avgrow:last-child{margin-bottom:0}

/* ══ SCENARIO ══ */
.slw{margin-bottom:12px}
.sll{display:flex;justify-content:space-between;font-family:'DM Mono',monospace;font-size:10px;color:var(--muted);margin-bottom:5px}
.slv{color:var(--accent);font-weight:500}
input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer}
.scgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:8px}
@media(min-width:500px){.scgrid{grid-template-columns:repeat(4,1fr)}}
.sci{background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:10px}
.scn{font-size:11px;font-weight:600;margin-bottom:3px}
.scp{font-family:'DM Mono',monospace;font-size:14px;color:var(--green);font-weight:500}
.scx{font-family:'DM Mono',monospace;font-size:9px;color:var(--muted)}

/* ══ AI CHAT ══ */
.ai-chat{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:14px;margin-bottom:12px}
.ai-messages{min-height:120px;max-height:300px;overflow-y:auto;margin-bottom:10px;display:flex;flex-direction:column;gap:8px}
.ai-msg{padding:10px 12px;border-radius:10px;font-size:12px;line-height:1.6;max-width:92%}
.ai-msg.user{
  background:var(--glow);border:1px solid rgba(0,194,255,.2);
  align-self:flex-end;font-family:'DM Mono',monospace;font-size:11px;color:var(--text);
}
.ai-msg.bot{
  background:var(--bg2);border:1px solid var(--border);
  align-self:flex-start;color:var(--text);
}
.ai-msg.loading{color:var(--muted);font-family:'DM Mono',monospace;font-size:11px}
.ai-input-row{display:flex;gap:6px}
.ai-input{
  flex:1;background:var(--bg);border:1px solid var(--border);
  border-radius:8px;padding:8px 10px;
  color:var(--text);font-family:'DM Mono',monospace;font-size:11px;outline:none;
  transition:border-color .2s;
}
.ai-input:focus{border-color:var(--accent)}
.ai-send{
  background:var(--accent);color:#fff;border:none;
  border-radius:8px;padding:8px 14px;font-weight:600;font-size:11px;cursor:pointer;
  font-family:'Inter',sans-serif;white-space:nowrap;transition:opacity .2s;
}
.ai-send:hover{opacity:.85}
.ai-quick{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:8px}
.ai-q{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:6px;padding:4px 10px;
  font-size:10px;font-family:'DM Mono',monospace;color:var(--text2);cursor:pointer;transition:all .2s;
}
.ai-q:hover{border-color:var(--accent);color:var(--accent)}

/* ══ JOURNAL ══ */
.journal-add{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.journal-row{display:flex;gap:6px;align-items:center}
.journal-select,.journal-date-inp{
  background:var(--bg);border:1px solid var(--border);
  border-radius:8px;padding:7px 10px;
  color:var(--text);font-family:'DM Mono',monospace;font-size:11px;outline:none;
}
.journal-mood{display:flex;gap:4px}
.mood-btn{
  background:var(--bg);border:1px solid var(--border);
  border-radius:6px;padding:5px 8px;font-size:14px;cursor:pointer;transition:all .2s;
}
.mood-btn.active{border-color:var(--accent);background:var(--glow)}
.journal-text{
  background:var(--bg);border:1px solid var(--border);
  border-radius:8px;padding:8px 10px;
  color:var(--text);font-family:'Inter',sans-serif;font-size:12px;
  outline:none;width:100%;resize:none;height:65px;line-height:1.4;
  transition:border-color .2s;
}
.journal-text:focus{border-color:var(--accent)}
.journal-save{
  background:var(--accent);color:#fff;border:none;
  border-radius:8px;padding:8px 16px;font-weight:600;font-size:12px;cursor:pointer;
  font-family:'Inter',sans-serif;transition:opacity .2s;
}
.journal-save:hover{opacity:.85}
.journal-entries{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto}
.je{background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:10px}
.je-header{display:flex;align-items:center;gap:6px;margin-bottom:4px;flex-wrap:wrap}
.je-date{font-family:'DM Mono',monospace;font-size:9px;color:var(--muted)}
.je-coin{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px}
.je-txt{font-size:12px;line-height:1.4;color:var(--text2)}
.je-del{background:none;border:none;color:var(--red);cursor:pointer;font-size:12px;opacity:.5;margin-left:auto}
.je-del:hover{opacity:1}

/* ══ NOTIFICATIONS ══ */
.notifs{position:fixed;top:14px;right:14px;z-index:1000;display:flex;flex-direction:column;gap:5px;max-width:250px}
.notif{
  background:var(--card);border:1px solid var(--accent);
  border-radius:10px;padding:10px 13px;
  font-family:'DM Mono',monospace;font-size:10px;
  animation:slideIn .3s ease;
  box-shadow:0 4px 20px rgba(0,0,0,.3);
}
.notif.down{border-color:var(--red)}
.notif.buy{border-color:var(--gold)}
.nt{font-weight:500;margin-bottom:2px;color:var(--accent)}
.notif.down .nt{color:var(--red)}.notif.buy .nt{color:var(--gold)}
@keyframes slideIn{from{transform:translateX(110%);opacity:0}to{transform:translateX(0);opacity:1}}

/* ══ NEWS ══ */
.ni{border-bottom:1px solid var(--border);padding:9px 0}
.ni:last-child{border-bottom:none}
.nc{font-size:9px;font-weight:600;padding:2px 6px;border-radius:4px;margin-bottom:3px;display:inline-block}
.ntitle{font-size:12px;font-weight:600;margin-bottom:2px;line-height:1.4;color:var(--text)}
.ntime{font-family:'DM Mono',monospace;font-size:9px;color:var(--muted)}

/* ══ INSTALL ══ */
.install-banner{
  background:var(--card2);border:1px solid var(--border);
  border-radius:12px;padding:10px 14px;margin:0 16px 8px;
  display:flex;align-items:center;gap:10px;
}
.install-banner.hidden{display:none}
.ib-btn{
  background:var(--accent);color:#fff;border:none;
  border-radius:8px;padding:7px 12px;font-weight:600;font-size:11px;cursor:pointer;white-space:nowrap;
}

/* ══ ALERT HISTORY ══ */
.ahi{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--border);font-family:'DM Mono',monospace;font-size:10px}
.ahi:last-child{border-bottom:none}

/* ══ SCROLLBAR ══ */
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}

*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
body{background:var(--bg);color:var(--text);font-family:'Inter',sans-serif;min-height:100vh;overflow-x:hidden;transition:background .4s,color .4s}
.app{display:flex;flex-direction:column;min-height:100vh;position:relative;z-index:1}

/* ══════════════════════════════════════
   DESKTOP LAYOUT — Full redesign for 1280px+
══════════════════════════════════════ */

/* === DESKTOP WRAPPER === */
.desktop-layout {
  display: flex;
  min-height: 100vh;
}

/* === SIDEBAR NAV === */
.sidebar {
  width: 220px;
  min-width: 220px;
  background: var(--card);
  border-right: 1px solid var(--border);
  display: flex;
  flex-direction: column;
  padding: 24px 0 16px;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 200;
  overflow-y: auto;
}

.sidebar-brand {
  padding: 0 20px 24px;
  border-bottom: 1px solid var(--border);
  margin-bottom: 16px;
}

.sidebar-logo {
  font-size: 9px;
  letter-spacing: 4px;
  font-family: 'DM Mono', monospace;
  text-transform: uppercase;
  margin-bottom: 6px;
  background:linear-gradient(135deg,#f7931a,#ff2d78,#9945ff,#00c2ff,#0ec97a);
  background-size:300% 300%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:rainbowText 8s ease infinite;
}

.sidebar-title {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: -0.5px;
  line-height: 1.1;
  background:linear-gradient(135deg,#fff 0%,#00c2ff 40%,#9945ff 70%,#fff 100%);
  background-size:300% 300%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:rainbowText 7s ease infinite;
}
.sidebar-title span {
  background:linear-gradient(135deg,#00c2ff,#9945ff,#ff2d78,#00c2ff);
  background-size:300% 300%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:rainbowText 4s ease infinite;
}

.sidebar-subtitle {
  color: var(--muted);
  font-size: 10px;
  font-family: 'DM Mono', monospace;
  letter-spacing: 1px;
  margin-top: 4px;
}

.sidebar-nav {
  flex: 1;
  padding: 0 10px;
}

.sidebar-tab {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 10px;
  cursor: pointer;
  font-size: 15px;
  font-weight: 400;
  letter-spacing: .2px;
  color: var(--muted);
  transition: all .2s;
  margin-bottom: 4px;
}

.sidebar-tab:hover {
  background: var(--bg2);
  color: var(--text2);
}

.sidebar-tab.active {
  background:linear-gradient(135deg,#f7931a,#ff2d78,#9945ff,#00c2ff,#0ec97a);
  background-size:300% 300%;
  animation:gradientShift 5s ease infinite;
  color: #fff;
  box-shadow:0 4px 15px rgba(0,194,255,.25);
}

.sidebar-tab .ti { font-size: 16px; width: 20px; text-align: center; }

.sidebar-bottom {
  padding: 16px 20px 0;
  border-top: 1px solid var(--border);
  margin-top: 16px;
}

.author-badge-desktop {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}

.sidebar-actions {
  display: flex;
  gap: 6px;
}

.sidebar-actions .icon-btn {
  flex: 1;
  text-align: center;
  font-size: 14px;
  padding: 7px 6px;
}

/* === MAIN CONTENT AREA === */
.desktop-main {
  margin-left: 220px;
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

/* === TOP HEADER BAR === */
.desktop-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 28px;
  background: var(--card);
  position: sticky;
  top: 0;
  z-index: 100;
  gap: 20px;
  border-bottom: 1px solid transparent;
  background:linear-gradient(var(--card),var(--card)) padding-box,
              linear-gradient(90deg,#f7931a55,#ff2d7855,#9945ff55,#00c2ff55,#0ec97a55,#f7931a55) border-box;
  background-size:auto,400% auto;
  animation:gradientShift 10s ease infinite;
  box-shadow:0 4px 24px rgba(0,0,0,.35);
}

.topbar-status {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: 'DM Mono', monospace;
  font-size: 11px;
  color: var(--green);
}

/* Hero prices inline in topbar */
.topbar-heroes {
  display: flex;
  gap: 24px;
  align-items: center;
}

.topbar-price {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
}

.topbar-price .tp-name {
  font-size: 10px;
  font-weight: 700;
  font-family: 'DM Mono', monospace;
  color: var(--muted);
}

.topbar-price .tp-val {
  font-family: 'DM Mono', monospace;
  font-size: 15px;
  font-weight: 500;
  color: var(--text);
}

.topbar-price .tp-ch {
  font-family: 'DM Mono', monospace;
  font-size: 10px;
}

/* Fear & Greed compact */
.topbar-fg {
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 10px;
  padding: 6px 12px;
  background:linear-gradient(var(--bg2),var(--bg2)) padding-box,
             linear-gradient(135deg,#9945ff,#ff2d78,#00c2ff,#9945ff) border-box;
  border:1px solid transparent;
  background-size:auto,300% 300%;
  animation:gradientShift 6s ease infinite;
}

/* DCA Banner compact */
.topbar-dca {
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 10px;
  padding: 7px 14px;
  background:linear-gradient(rgba(0,194,255,.06),rgba(0,194,255,.06)) padding-box,
             linear-gradient(135deg,#f0a500,#00c2ff,#0ec97a,#f0a500) border-box;
  border:1px solid transparent;
  background-size:auto,300% 300%;
  animation:gradientShift 7s ease infinite;
}

.topbar-dca .dca-title { font-size: 11px; font-weight: 600; color: var(--accent); }
.topbar-dca .dca-countdown { font-family: 'DM Mono', monospace; font-size: 16px; font-weight: 500; color: var(--text); }

/* === CONTENT AREA === */
.desktop-content {
  flex: 1;
  padding: 24px 28px;
  overflow-y: auto;
}

.desktop-content .page { display: none; }
.desktop-content .page.active { display: block; }

/* === DESKTOP GRIDS === */
.desktop-content .cards-grid {
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 14px;
}

/* Bigger cards */
.desktop-content .card {
  padding: 16px; border-radius: 14px;
  transition:transform .25s, box-shadow .35s;
}
.desktop-content .card:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 40px rgba(0,0,0,.45), 0 0 30px color-mix(in srgb,var(--cc) 15%,transparent) !important;
}
.desktop-content .pb { font-size: 22px !important; }
.desktop-content .pc { font-size: 12px !important; }
.desktop-content .cn { font-size: 15px !important; }

/* Portfolio page 2 col */
.desktop-portfolio-grid {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 20px;
  align-items: start;
}

/* Goals page 2 col */
.desktop-goals-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  align-items: start;
}

/* DCA page 2 col */
.desktop-dca-grid {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 20px;
  align-items: start;
}

/* Journal page 2 col */
.desktop-journal-grid {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 20px;
  align-items: start;
}

/* Bigger section titles */
.desktop-content .st {
  font-size: 11px !important;
  letter-spacing: 3px;
  margin-bottom: 16px !important;
}

/* Bigger inputs */
.desktop-content .pi,
.desktop-content .ai,
.desktop-content .ci {
  font-size: 13px !important;
  padding: 8px 11px !important;
}

/* Bigger table text */
.desktop-content .pt2 { font-size: 12px !important; }
.desktop-content .pt2 th { font-size: 10px !important; }

/* Better hero cards on desktop (shown in topbar instead) */
.desktop-content .hero-prices { display: none; }
.desktop-content .fg-bar { display: none; }
.desktop-content .dom-bar { display: none; }
.desktop-content .dca-banner { display: none; }

/* DOM bar in its own section on prices page */
.desktop-stats-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 16px;
  margin-bottom: 20px;
}

/* Bigger halving */
.halving-num {
  font-size: 32px !important;
  background:linear-gradient(135deg,#f0a500,#ff2d78,#9945ff,#f0a500) !important;
  background-size:300% 300% !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  background-clip:text !important;
  animation:rainbowText 4s ease infinite !important;
}
.halving-lbl { font-size: 10px !important; }

/* GL grid bigger */
.desktop-content .gl-grid {
  grid-template-columns: repeat(4, 1fr) !important;
}

/* Scenario grid bigger */
.desktop-content .scgrid {
  grid-template-columns: repeat(3, 1fr) !important;
}

/* AI chat taller */
.desktop-content .ai-messages {
  min-height: 250px !important;
  max-height: 450px !important;
}

.desktop-content .ai-msg { font-size: 13px !important; }

/* Journal entries taller */
.desktop-content .journal-entries {
  max-height: 400px !important;
}

/* Hide mobile tabs */
.tabs { display: none !important; }

/* Hide install banner */
.install-banner { display: none !important; }

/* Bigger sc section */
.desktop-content .sc {
  padding: 20px;
  margin-bottom: 16px;
}

/* Page title */
.desktop-page-title {
  font-size: 28px;
  font-weight: 500;
  letter-spacing: -0.5px;
  margin-bottom: 4px;
  background:linear-gradient(135deg,#f0a500 0%,#ff2d78 25%,#9945ff 50%,#00c2ff 75%,#0ec97a 100%);
  background-size:300% 300%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:rainbowText 6s ease infinite;
  font-weight:500;
}

.desktop-page-sub {
  font-size: 13px;
  color: var(--muted);
  font-family: 'DM Mono', monospace;
  margin-bottom: 20px;
}

/* TradingView chart bigger */
#tv-container { height: 680px !important; min-height: 600px; }

/* Donut chart bigger */
.chart-wrap { width: 240px !important; height: 240px !important; }
#donut-canvas { width: 240px !important; height: 240px !important; }
.legend-grid { grid-template-columns: repeat(3, 1fr) !important; gap: 8px !important; margin-top: 12px !important; }

/* Growth chart taller */
.growth-chart-wrap { height: 200px !important; }

/* PORTFOLIO LAYOUT FIX */
.desktop-portfolio-grid { display: grid; grid-template-columns: 1fr 380px; gap: 20px; align-items: start; }
#page-portfolio { min-height: 0; }
.growth-chart-wrap { position: relative; overflow: hidden; }
#growth-canvas { width: 100% !important; display: block; }
.donut-total { font-size: 22px !important; font-weight: 800 !important; letter-spacing:-0.5px; }
.donut-lbl { font-size: 11px !important; }

/* Avg entry box */
#avg-entry-box .st { font-size: 9px !important; }
#avg-entry-rows { max-height: 200px; overflow-y: auto; }

/* Streak card bigger num */
.streak-num { font-size: 48px !important; }

/* Add row bigger */
.desktop-content .add-row select,
.desktop-content .add-row input {
  font-size: 13px !important;
  padding: 9px 10px !important;
}

/* Alert history */
.desktop-content .ahi { font-size: 12px !important; padding: 9px 0 !important; }

/* Quick AI buttons bigger */
.desktop-content .ai-q { font-size: 12px !important; padding: 6px 12px !important; }

/* Journal text bigger */
.desktop-content .journal-text { height: 90px !important; font-size: 13px !important; }

/* Notifs on desktop */
.notifs { max-width: 320px !important; }
.notif { font-size: 12px !important; padding: 12px 16px !important; }

/* ══ ТЕХАНАЛИЗ ══ */
.ta-coin-btn{
  background:var(--bg2);border:1px solid var(--border);border-radius:8px;
  padding:8px 16px;font-size:13px;font-weight:600;color:var(--muted);
  cursor:pointer;transition:all .2s;font-family:'DM Mono',monospace;
}
.ta-coin-btn:hover{border-color:var(--accent);color:var(--text);}
.ta-coin-btn.active{
  background:linear-gradient(135deg,#f7931a,#ff2d78,#9945ff,#00c2ff);
  background-size:200% 200%;animation:gradientShift 4s ease infinite;
  color:#fff;border-color:transparent;
}
.ta-signal-block{display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px 0}
.ta-row{
  display:flex;justify-content:space-between;align-items:center;
  padding:9px 0;border-bottom:1px solid var(--border);
}
.ta-row:last-child{border-bottom:none}
.ta-ind-name{font-size:12px;color:var(--text2);font-family:'DM Mono',monospace}
.ta-ind-val{font-size:11px;color:var(--muted);font-family:'DM Mono',monospace;margin:0 8px}
.ta-signal{font-size:11px;font-weight:700;padding:3px 10px;border-radius:5px;font-family:'DM Mono',monospace;}
.ta-signal.buy{background:rgba(14,201,122,.15);color:var(--green)}
.ta-signal.sell{background:rgba(241,65,108,.15);color:var(--red)}
.ta-signal.neu{background:var(--bg2);color:var(--muted)}
.ta-summary-row{display:flex;justify-content:space-between;align-items:center}
.ta-level-row{
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:8px;
}
.ta-level-box{
  background:var(--bg2);border-radius:8px;padding:10px;text-align:center;
  border:1px solid var(--border);
}

.ta-tf-btn{
  background:var(--bg2);border:1px solid var(--border);border-radius:6px;
  padding:5px 12px;font-size:11px;font-weight:500;color:var(--muted);
  cursor:pointer;transition:all .2s;font-family:'DM Mono',monospace;
}
.ta-tf-btn:hover{border-color:var(--accent);color:var(--text);}
.ta-tf-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);}
.ta-level-lbl{font-size:9px;letter-spacing:2px;font-family:monospace;margin-bottom:4px}
.ta-level-price{font-size:14px;font-weight:600}

/* ══ AI DECISION ENGINE — LANDING STYLES ══ */
.ai-stack{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}
.ai-hero-card{
  background:linear-gradient(135deg,rgba(0,194,255,.07) 0%,rgba(122,40,200,.07) 100%);
  border:1px solid rgba(0,194,255,.18);border-radius:18px;padding:16px;
}
.ai-badge{padding:5px 10px;border-radius:999px;background:rgba(0,194,255,.12);border:1px solid rgba(0,194,255,.24);font-size:10px;font-weight:700;letter-spacing:1px;font-family:'DM Mono',monospace;color:var(--accent);text-transform:uppercase;display:inline-flex;align-items:center}
.ai-badge.risk-ok{background:rgba(14,201,122,.12);border-color:rgba(14,201,122,.22);color:var(--green)}
.ai-badge.risk-warn{background:rgba(240,165,0,.12);border-color:rgba(240,165,0,.22);color:var(--gold)}
.ai-badge.risk-stop{background:rgba(241,65,108,.12);border-color:rgba(241,65,108,.22);color:var(--red)}
.ai-topline{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.ai-head-flex{display:flex;align-items:center;gap:12px}
.ai-title{font-size:20px;font-weight:800;line-height:1.2;margin-bottom:4px}
.ai-sub{font-size:12px;color:var(--text2);line-height:1.5}
.ai-score-ring{position:relative;width:72px;height:72px;flex-shrink:0}
.ai-score-ring svg{width:72px;height:72px}
.ai-score-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ai-score-num{font-size:20px;font-weight:800;font-family:'DM Mono',monospace;line-height:1}
.ai-score-lbl{font-size:8px;letter-spacing:1.5px;color:var(--muted);font-family:'DM Mono',monospace;margin-top:1px}
.ai-note{font-size:10px;color:var(--muted);line-height:1.5;margin:10px 0 0;padding:8px;background:rgba(0,0,0,.15);border-radius:10px;border-left:2px solid rgba(0,194,255,.3)}
.ai-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ai-mini{background:rgba(8,12,20,.35);border:1px solid var(--border);border-radius:14px;padding:10px}
.ai-mini-label{font-size:8px;letter-spacing:1.6px;color:var(--muted);font-family:'DM Mono',monospace;text-transform:uppercase;margin-bottom:6px}
.ai-mini-value{font-size:15px;font-weight:800;line-height:1.2}
.ai-mini-sub{font-size:10px;color:var(--text2);margin-top:4px;line-height:1.45}
.ai-v2-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.ai-v2-card{background:rgba(8,12,20,.35);border:1px solid var(--border);border-radius:14px;padding:10px}
.ai-v2-label{font-size:8px;letter-spacing:1.6px;color:var(--muted);font-family:'DM Mono',monospace;text-transform:uppercase;margin-bottom:6px}
.ai-v2-value{font-size:13px;font-weight:800;line-height:1.3}
.ai-v2-sub{font-size:10px;color:var(--text2);margin-top:4px;line-height:1.45}
.ai-plan-wrap{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:14px}
.ai-plan-head{font-size:9px;letter-spacing:2px;color:var(--muted);font-family:'DM Mono',monospace;text-transform:uppercase;margin-bottom:10px}
.ai-plan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ai-plan-item{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:9px 10px}
.ai-plan-label{font-size:8px;letter-spacing:1.5px;color:var(--muted);font-family:'DM Mono',monospace;text-transform:uppercase;margin-bottom:4px}
.ai-plan-value{font-size:12px;font-weight:700;font-family:'DM Mono',monospace;line-height:1.35}
.ai-report-card{background:linear-gradient(135deg,rgba(0,194,255,.08),rgba(122,40,200,.08));border:1px solid rgba(0,194,255,.16);border-radius:16px;padding:14px}
.ai-report-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}
.ai-report-title{font-size:18px;font-weight:800;line-height:1.2}
.ai-report-sub{font-size:11px;color:var(--text2);margin-top:4px;line-height:1.5}
.ai-report-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.ai-report-badge{padding:5px 10px;border-radius:999px;font-size:10px;font-weight:800;font-family:'DM Mono',monospace;letter-spacing:.6px;border:1px solid var(--border);background:var(--bg2)}
.ai-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.ai-report-box{background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:10px}
.ai-report-label{font-size:8px;letter-spacing:1.6px;color:var(--muted);font-family:'DM Mono',monospace;text-transform:uppercase;margin-bottom:4px}
.ai-report-value{font-size:15px;font-weight:800;font-family:'DM Mono',monospace}
.ai-report-list{display:flex;flex-direction:column;gap:8px}
.ai-step{display:flex;align-items:flex-start;gap:10px;background:rgba(0,0,0,.14);border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:10px 12px}
.ai-step-num{min-width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(0,194,255,.14);color:var(--accent);font-size:10px;font-weight:800;font-family:'DM Mono',monospace;margin-top:2px}
.ai-step-text{font-size:12px;line-height:1.55;color:var(--text)}
.ai-report-foot{margin-top:10px;font-size:11px;color:var(--text2);line-height:1.6}
.ai-guard-wrap{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:14px}
.ai-guard-head{font-size:9px;letter-spacing:2px;color:var(--muted);font-family:'DM Mono',monospace;text-transform:uppercase;margin-bottom:10px}
.ai-guard-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ai-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:999px;font-size:10px;font-weight:800;font-family:'DM Mono',monospace;letter-spacing:.3px}
.ai-pill.ok{background:rgba(14,201,122,.15);color:var(--green)}
.ai-pill.warn{background:rgba(240,165,0,.15);color:var(--gold)}
.ai-pill.stop{background:rgba(241,65,108,.15);color:var(--red)}
.ai-guard-val{font-size:16px;font-weight:800;font-family:'DM Mono',monospace;margin-top:8px}
.ai-guard-note{font-size:10px;color:var(--text2);line-height:1.45;margin-top:5px}
.ai-alert-wrap{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:14px}
.ai-alert-head{font-size:9px;letter-spacing:2px;color:var(--muted);font-family:'DM Mono',monospace;text-transform:uppercase;margin-bottom:10px}
.ai-alert-list{display:flex;flex-direction:column;gap:7px}
.ai-alert{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:10px 12px}
.ai-alert-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:5px}
.ai-alert-title{font-size:11px;font-weight:700}
.ai-alert-text{font-size:11px;color:var(--text2);line-height:1.55}
.ai-k-wrap{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:14px}
.ai-k-head-row{font-size:9px;letter-spacing:2px;color:var(--muted);font-family:'DM Mono',monospace;text-transform:uppercase;margin-bottom:10px}
.ai-k-card{background:var(--bg2);border:1px solid var(--border);border-radius:14px;padding:12px;margin-bottom:8px}
.ai-k-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.ai-k-name{font-size:11px;font-weight:800;letter-spacing:.6px}
.ai-k-meter{height:8px;background:rgba(0,0,0,.3);border-radius:999px;overflow:hidden;margin-bottom:8px}
.ai-k-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),#7a28c8,#0ec97a);transition:width .5s ease}
.ai-k-row{display:flex;justify-content:space-between;align-items:center;gap:8px}
.ai-k-value{font-size:13px;font-weight:700;font-family:'DM Mono',monospace}
.ai-k-desc{font-size:10px;color:var(--text2);line-height:1.45;margin-top:6px}
.aif-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}
.aif-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:10px 12px;min-height:72px}
.aif-label{font-size:8px;letter-spacing:1.5px;color:var(--muted);font-family:'DM Mono',monospace;text-transform:uppercase;margin-bottom:6px}
.aif-value{font-size:12px;font-weight:700;line-height:1.3}
.aif-note{font-size:10px;color:var(--text2);margin-top:4px;line-height:1.4}
.aif-row{display:flex;align-items:center;gap:8px;padding:7px 10px;background:var(--bg2);border:1px solid var(--border);border-radius:10px;margin-bottom:6px}
.aif-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.aif-row-label{font-size:11px;color:var(--text2);flex:1;font-family:'DM Mono',monospace}
.aif-row-val{font-size:11px;font-weight:700;font-family:'DM Mono',monospace}
.ai-sig-tag{padding:3px 8px;border-radius:5px;font-size:9px;font-weight:700;font-family:'DM Mono',monospace;letter-spacing:.5px}
.ai-sig-tag.buy{background:rgba(14,201,122,.15);color:var(--green)}
.ai-sig-tag.sell{background:rgba(241,65,108,.15);color:var(--red)}
.ai-sig-tag.neu{background:var(--bg2);color:var(--muted);border:1px solid var(--border)}
.ai-engine-section-label{
  font-size:10px;letter-spacing:3px;color:var(--muted);font-family:'DM Mono',monospace;
  text-transform:uppercase;margin-bottom:16px;display:flex;align-items:center;gap:10px;
}
.ai-engine-section-label::before,.ai-engine-section-label::after{
  content:'';flex:1;height:1px;background:var(--border);
}
.kpulse-wrap{background:var(--card);border:1px solid rgba(0,194,255,.15);border-radius:16px;padding:14px}
.kpulse-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.kpulse-title{font-size:13px;font-weight:800;color:var(--accent)}

.chart-dd-item{
  display:flex;align-items:center;padding:10px 14px;cursor:pointer;
  border-bottom:1px solid var(--border);transition:background .15s;
  font-size:13px;
}
.chart-dd-item:last-child{border-bottom:none}
.chart-dd-item:hover{background:var(--bg2);}

.dca-quick-btn{
  background:var(--bg2);border:1px solid var(--border);border-radius:6px;
  padding:4px 10px;font-size:11px;font-weight:600;color:var(--muted);
  cursor:pointer;transition:all .2s;font-family:'DM Mono',monospace;
}
.dca-quick-btn:hover{border-color:var(--accent);color:var(--text);}
.dca-quick-btn.active{
  background:linear-gradient(135deg,#f7931a,#ff2d78);
  color:#fff;border-color:transparent;
}

/* ═══════════════════════════════════════
   PROP TRADING — STYLES
═══════════════════════════════════════ */
.prop-tab { position:relative; }
.prop-badge {
  font-size:8px;font-weight:700;letter-spacing:1px;
  background:linear-gradient(135deg,#9945ff,#ff2d78);
  color:#fff;border-radius:4px;padding:2px 5px;
  margin-left:4px;vertical-align:middle;
}
.prop-subnav {
  display:flex;gap:8px;margin-bottom:24px;
  border-bottom:1px solid var(--border);
  padding-bottom:0;
}
.prop-subnav-btn {
  display:flex;align-items:center;gap:6px;
  background:none;border:none;cursor:pointer;
  color:var(--muted);font-size:13px;font-weight:500;
  padding:10px 16px;border-bottom:2px solid transparent;
  transition:all .2s;margin-bottom:-1px;
  font-family:'Inter',sans-serif;
}
.prop-subnav-btn:hover { color:var(--text2); }
.prop-subnav-btn.active {
  color:#9945ff;
  border-bottom:2px solid #9945ff;
}
.prop-view { animation:fadeIn .25s ease; }
.prop-view.hidden { display:none !important; }
@keyframes fadeIn { from{opacity:0;transform:translateY(6px)} to{opacity:1;transform:none} }

.prop-page-title {
  font-size:22px;font-weight:700;color:var(--text);
  margin-bottom:20px;
}
.prop-page-sub {
  display:block;font-size:12px;color:var(--muted);
  font-weight:400;margin-top:4px;
}
.prop-cid-bar {
  display:flex;align-items:center;gap:8px;
  font-family:'DM Mono',monospace;font-size:11px;
  color:var(--muted);letter-spacing:1px;
  margin-bottom:16px;
}
.prop-copy-btn {
  background:var(--bg2);border:1px solid var(--border);
  border-radius:5px;padding:4px 6px;cursor:pointer;
  color:var(--muted);transition:.2s;
}
.prop-copy-btn:hover { color:var(--accent);border-color:var(--accent); }

/* Stage card */
.prop-stage-card {
  display:flex;align-items:center;gap:20px;
  background:var(--card);border:1px solid var(--border);
  border-radius:16px;padding:22px 24px;margin-bottom:16px;
}
.prop-stage-left {
  display:flex;flex-direction:column;align-items:center;
  gap:6px;flex-shrink:0;
}
.prop-stage-icon-wrap {
  width:60px;height:60px;border-radius:14px;
  background:linear-gradient(135deg,rgba(153,69,255,.2),rgba(255,45,120,.1));
  border:1px solid rgba(153,69,255,.3);
  display:flex;align-items:center;justify-content:center;
}
.prop-stage-tier {
  font-size:9px;font-weight:700;letter-spacing:2px;
  color:#9945ff;font-family:'DM Mono',monospace;
}
.prop-stage-center { flex:1; }
.prop-stage-title {
  font-size:18px;font-weight:700;color:var(--text);margin-bottom:12px;
}
.prop-stage-meta {
  display:flex;gap:28px;flex-wrap:wrap;
}
.prop-meta-item { display:flex;flex-direction:column;gap:3px; }
.prop-meta-label { font-size:10px;color:var(--muted);letter-spacing:.5px; }
.prop-meta-val { font-size:14px;font-weight:600;color:var(--text); }
.prop-stage-actions {
  display:flex;flex-direction:column;gap:8px;flex-shrink:0;
}

/* Status chips */
.prop-status-chip {
  display:inline-flex;align-items:center;
  font-size:11px;font-weight:700;letter-spacing:.5px;
  padding:3px 10px;border-radius:6px;
}
.prop-status-chip.active {
  background:rgba(14,201,122,.15);color:#0ec97a;
  border:1px solid rgba(14,201,122,.3);
}
.prop-status-chip.failed {
  background:rgba(241,65,108,.15);color:#f1416c;
  border:1px solid rgba(241,65,108,.3);
}

/* Buttons */
.prop-btn-primary {
  display:inline-flex;align-items:center;gap:6px;
  background:linear-gradient(135deg,#9945ff,#7b2fe8);
  color:#fff;border:none;border-radius:10px;
  padding:10px 18px;font-size:13px;font-weight:600;
  cursor:pointer;transition:all .2s;
  font-family:'Inter',sans-serif;
}
.prop-btn-primary:hover {
  transform:translateY(-1px);
  box-shadow:0 6px 20px rgba(153,69,255,.35);
}
.prop-btn-outline {
  display:inline-flex;align-items:center;gap:6px;
  background:transparent;color:var(--text2);
  border:1px solid var(--border);border-radius:10px;
  padding:10px 18px;font-size:13px;font-weight:500;
  cursor:pointer;transition:all .2s;
  font-family:'Inter',sans-serif;
}
.prop-btn-outline:hover {
  border-color:#9945ff;color:#9945ff;
}

/* Upgrade card */
.prop-upgrade-card {
  display:flex;align-items:center;gap:16px;
  background:linear-gradient(135deg,rgba(153,69,255,.08),rgba(255,45,120,.05));
  border:1px solid rgba(153,69,255,.2);
  border-radius:14px;padding:18px 22px;margin-top:8px;
}
.prop-upgrade-emoji { font-size:32px;flex-shrink:0; }
.prop-upgrade-text { flex:1; }
.prop-upgrade-title { font-size:15px;font-weight:700;color:var(--text); }
.prop-upgrade-title span { color:#9945ff; }
.prop-upgrade-sub { font-size:12px;color:var(--muted);margin-top:3px; }

/* Plans grid */
.prop-plans-grid {
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:900px;
}
.prop-plan-card {
  background:var(--card);border:1px solid var(--border);
  border-radius:16px;padding:24px;position:relative;
  transition:border-color .2s,transform .2s;cursor:default;
}
.prop-plan-card:hover { transform:translateY(-3px); }
.prop-plan-card.popular {
  border-color:#9945ff;
  box-shadow:0 0 30px rgba(153,69,255,.15);
}
.prop-popular-tag {
  font-size:9px;font-weight:700;letter-spacing:1.5px;
  color:#9945ff;margin-bottom:8px;
}
.prop-plan-badge {
  display:inline-flex;font-size:10px;font-weight:700;
  letter-spacing:1.5px;padding:3px 10px;border-radius:6px;
  margin-bottom:12px;
}
.prop-plan-badge.starter { background:rgba(0,194,255,.12);color:var(--accent); }
.prop-plan-badge.expert { background:rgba(153,69,255,.15);color:#9945ff; }
.prop-plan-badge.master { background:rgba(240,165,0,.12);color:#f0a500; }
.prop-plan-capital {
  font-size:28px;font-weight:800;color:var(--text);
  margin-bottom:4px;
}
.prop-plan-price {
  font-size:18px;font-weight:700;color:#9945ff;margin-bottom:16px;
}
.prop-plan-price span { font-size:11px;color:var(--muted);font-weight:400; }
.prop-plan-feats {
  list-style:none;margin-bottom:20px;display:flex;flex-direction:column;gap:8px;
}
.prop-plan-feats li {
  display:flex;align-items:center;gap:7px;
  font-size:12px;color:var(--text2);
}

/* Dashboard grid */
.prop-dash-grid {
  display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:start;
}
.prop-balance-card {
  background:var(--card);border:1px solid var(--border);
  border-radius:16px;padding:22px;margin-bottom:14px;
}
.prop-balance-top { display:flex;justify-content:space-between;align-items:flex-start; }
.prop-balance-label { font-size:11px;color:var(--muted);letter-spacing:.5px;margin-bottom:4px; }
.prop-balance-amount { font-size:28px;font-weight:800;color:var(--text); }
.prop-balance-amount span { font-size:14px;color:var(--muted);font-weight:400; }
.prop-balance-cols { display:flex;gap:20px;align-items:flex-end; }
.prop-balance-col { display:flex;flex-direction:column;gap:2px;text-align:right; }
.prop-balance-sub-label { font-size:10px;color:var(--muted); }
.prop-chip-change {
  font-size:11px;font-weight:700;padding:2px 8px;
  border-radius:5px;display:inline-block;
}
.prop-chip-change.pos { background:rgba(14,201,122,.15);color:#0ec97a; }
.prop-chip-change.neg { background:rgba(241,65,108,.15);color:#f1416c; }
.prop-stats-row {
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px;
}
.prop-stat-box {
  background:var(--card);border:1px solid var(--border);
  border-radius:12px;padding:14px;
  display:flex;align-items:center;gap:10px;
}
.prop-stat-ico { font-size:20px; }
.prop-stat-lbl { font-size:10px;color:var(--muted);margin-bottom:3px; }
.prop-stat-num { font-size:14px;font-weight:700; }
.prop-stat-num.g { color:#0ec97a; }
.prop-stat-num.b { color:var(--accent); }
.prop-stat-num.p { color:#9945ff; }
.prop-stat-num.gold { color:#f0a500; }

.prop-phases-card {
  background:var(--card);border:1px solid var(--border);
  border-radius:14px;padding:20px;
}
.prop-section-title {
  font-size:13px;font-weight:700;color:var(--text);
  letter-spacing:.3px;margin-bottom:14px;text-transform:uppercase;
}
.prop-phases-table { width:100%;border-collapse:collapse;font-size:12px; }
.prop-phases-table th {
  color:var(--muted);font-weight:600;text-align:left;
  padding:8px 10px;border-bottom:1px solid var(--border);font-size:11px;
}
.prop-phases-table td {
  padding:9px 10px;color:var(--text2);border-bottom:1px solid rgba(30,42,66,.5);
}
.prop-phases-table td:first-child { color:var(--text);font-weight:500; }
.prop-phases-table tr:last-child td { border-bottom:none; }

/* Progress card */
.prop-progress-card {
  background:var(--card);border:1px solid var(--border);
  border-radius:16px;padding:20px;position:sticky;top:70px;
}
.prop-prog-item {
  display:flex;align-items:center;gap:12px;
  padding:10px 0;border-bottom:1px solid rgba(30,42,66,.5);
}
.prop-prog-item:last-of-type { border-bottom:none; }
.prop-prog-icon {
  width:32px;height:32px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.prop-prog-icon.g { background:rgba(14,201,122,.1); }
.prop-prog-icon.p { background:rgba(153,69,255,.1); }
.prop-prog-icon.b { background:rgba(0,194,255,.1); }
.prop-prog-icon.gold { background:rgba(240,165,0,.1); }
.prop-prog-label { font-size:11px;color:var(--muted);margin-bottom:2px; }
.prop-prog-val { font-size:13px;font-weight:600;color:var(--text); }

.prop-bar-block { margin-bottom:10px; }
.prop-bar-hdr { display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-bottom:4px; }
.prop-bar-track {
  height:6px;background:var(--bg2);border-radius:3px;overflow:hidden;
}
.prop-bar-fill { height:100%;border-radius:3px;transition:width .5s ease; }
.prop-bar-fill.g { background:#0ec97a; }
.prop-bar-fill.r { background:#f1416c; }
.prop-bar-fill.o { background:#f0a500; }

.prop-info-row {
  display:flex;justify-content:space-between;align-items:center;
  font-size:12px;padding:7px 0;
  border-bottom:1px solid rgba(30,42,66,.4);color:var(--muted);
}
.prop-info-row:last-of-type { border-bottom:none; }
.prop-info-row span:last-child { color:var(--text);font-weight:500; }

/* Empty state */
.prop-empty {
  text-align:center;padding:60px 20px;
  background:var(--card);border:1px solid var(--border);
  border-radius:16px;
}
.prop-empty-title { font-size:18px;font-weight:700;color:var(--text);margin-bottom:8px; }
.prop-empty-sub { font-size:13px;color:var(--muted);max-width:400px;margin:0 auto 20px; }

/* ═══ TRADING OVERLAY ═══ */
.prop-trading-overlay {
  position:fixed;inset:0;left:220px;
  background:var(--bg);z-index:500;
  display:flex;flex-direction:column;
  overflow:hidden;
}
.prop-trading-overlay.hidden { display:none !important; }
.prop-t-header {
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  padding:10px 16px;background:var(--card);
  border-bottom:1px solid var(--border);flex-shrink:0;
  min-height:52px;
}
.prop-back-btn {
  display:flex;align-items:center;gap:5px;
  background:none;border:1px solid var(--border);border-radius:8px;
  padding:6px 12px;color:var(--muted);font-size:12px;
  cursor:pointer;transition:.2s;font-family:'Inter',sans-serif;
}
.prop-back-btn:hover { color:var(--text);border-color:var(--text2); }
.prop-t-pair { font-size:16px;font-weight:700;color:var(--text); }
.prop-t-live { font-size:15px;font-weight:700;color:#0ec97a; }
.prop-t-bal { font-size:12px;color:var(--muted);margin-left:auto; }
.prop-t-bal b { color:var(--text); }
.prop-violation {
  display:flex;align-items:center;gap:6px;
  background:rgba(241,65,108,.12);border:1px solid rgba(241,65,108,.3);
  border-radius:8px;padding:5px 10px;font-size:12px;color:#f1416c;
}
.prop-violation.hidden { display:none !important; }
.prop-t-body {
  display:flex;flex:1;overflow:hidden;
  min-height:0;
}
.prop-t-chart {
  flex:1;overflow:hidden;position:relative;
  background:var(--bg);
  display:flex;flex-direction:column;
}
.prop-t-chart iframe,
#prop-tv-widget {
  width:100%;flex:1;border:none;min-height:0;
}
#prop-tv-widget > div {
  width:100% !important;height:100% !important;
}
.prop-t-panel {
  width:280px;min-width:260px;max-width:280px;
  background:var(--card);border-left:1px solid var(--border);
  padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;
  flex-shrink:0;
}
.prop-select {
  width:100%;background:var(--bg2);border:1px solid var(--border);
  border-radius:8px;padding:8px 10px;color:var(--text);
  font-size:13px;font-family:'Inter',sans-serif;cursor:pointer;
}
.prop-order-type-row { display:flex;gap:6px; }
.prop-ot {
  flex:1;background:var(--bg2);border:1px solid var(--border);
  border-radius:8px;padding:7px;font-size:12px;font-weight:500;
  color:var(--muted);cursor:pointer;transition:.2s;
  font-family:'Inter',sans-serif;
}
.prop-ot.active { background:#9945ff;color:#fff;border-color:#9945ff; }
.prop-field-lbl {
  font-size:10px;color:var(--muted);letter-spacing:.5px;
  font-family:'DM Mono',monospace;display:flex;justify-content:space-between;
  align-items:center;
}
.prop-lev-hint { font-size:9px;color:var(--muted);font-style:normal; }
.prop-input {
  width:100%;background:var(--bg2);border:1px solid var(--border);
  border-radius:8px;padding:8px 10px;color:var(--text);
  font-size:13px;font-family:'Inter',sans-serif;
}
.prop-input:focus { outline:none;border-color:#9945ff; }
.prop-order-preview {
  background:var(--bg2);border-radius:8px;padding:10px;
  font-size:11px;display:flex;flex-direction:column;gap:5px;
}
.prop-order-preview div { display:flex;justify-content:space-between;color:var(--muted); }
.prop-order-preview div span:last-child { color:var(--text);font-weight:600; }
.prop-order-btns { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
.prop-buy-btn {
  background:rgba(14,201,122,.15);border:1px solid rgba(14,201,122,.3);
  color:#0ec97a;border-radius:10px;padding:11px;font-size:13px;font-weight:700;
  cursor:pointer;transition:.2s;font-family:'Inter',sans-serif;
}
.prop-buy-btn:hover { background:rgba(14,201,122,.25); }
.prop-sell-btn {
  background:rgba(241,65,108,.15);border:1px solid rgba(241,65,108,.3);
  color:#f1416c;border-radius:10px;padding:11px;font-size:13px;font-weight:700;
  cursor:pointer;transition:.2s;font-family:'Inter',sans-serif;
}
.prop-sell-btn:hover { background:rgba(241,65,108,.25); }
.prop-rules-mini { display:flex;flex-direction:column;gap:6px; }
.prop-rule-row {
  display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted);
}
.prop-rule-row span:first-child { width:60px;flex-shrink:0; }
.prop-rule-row span:last-child { width:80px;text-align:right;flex-shrink:0; }
.prop-rule-track {
  flex:1;height:5px;background:var(--bg2);border-radius:3px;overflow:hidden;
}
.prop-rule-fill { height:100%;border-radius:3px;transition:width .4s; }
.prop-rule-fill.g { background:#0ec97a; }
.prop-rule-fill.r { background:#f1416c; }
.prop-rule-fill.o { background:#f0a500; }
.prop-pos-list,.prop-hist-list {
  display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;
}
.prop-no-pos { font-size:11px;color:var(--muted);text-align:center;padding:10px 0; }
.prop-pos-item {
  background:var(--bg2);border-radius:8px;padding:8px 10px;font-size:11px;
  border-left:3px solid transparent;
}
.prop-pos-item.long { border-left-color:#0ec97a; }
.prop-pos-item.short { border-left-color:#f1416c; }
.prop-pos-top { display:flex;justify-content:space-between;margin-bottom:4px; }
.prop-pos-coin { font-weight:700;color:var(--text); }
.prop-pos-pnl { font-weight:700; }
.prop-pos-pnl.pos { color:#0ec97a; }
.prop-pos-pnl.neg { color:#f1416c; }
.prop-pos-bot { display:flex;gap:10px;color:var(--muted); }
.prop-close-pos {
  margin-left:auto;background:rgba(241,65,108,.12);
  border:none;color:#f1416c;border-radius:5px;
  padding:2px 7px;cursor:pointer;font-size:10px;
  font-family:'Inter',sans-serif;
}
.prop-hist-item {
  background:var(--bg2);border-radius:8px;padding:7px 10px;
  font-size:11px;display:flex;justify-content:space-between;
}
/* light mode overrides */
.light .prop-balance-card,.light .prop-phases-card,
.light .prop-progress-card,.light .prop-stage-card,
.light .prop-stat-box,.light .prop-plan-card,
.light .prop-upgrade-card { background:var(--card); }

/* ═══════════════════════════════════════
   PROP DASHBOARD — FULL REDESIGN
═══════════════════════════════════════ */



/* MAIN GRID */
.pd-main-grid {
  display:grid;grid-template-columns:1fr 320px;gap:20px;align-items:start;
}

/* BALANCE CARD */
.pd-balance-card {
  background:var(--card);border:1px solid var(--border);
  border-radius:18px;padding:26px;margin-bottom:16px;
}
.pd-balance-top {
  display:flex;justify-content:space-between;align-items:flex-start;
  margin-bottom:20px;
}
.pd-balance-label {
  font-size:12px;color:var(--muted);letter-spacing:.5px;margin-bottom:6px;
  display:flex;align-items:center;gap:6px;
}
.pd-eye { cursor:pointer;font-size:14px; }
.pd-balance-amount {
  font-size:34px;font-weight:800;color:var(--text);letter-spacing:-1px;
}
.pd-usdt { font-size:16px;font-weight:500;color:var(--muted); }
.pd-balance-right {
  display:flex;gap:24px;align-items:flex-start;
}
.pd-balance-col { display:flex;flex-direction:column;gap:4px;text-align:right; }
.pd-bcol-label { font-size:11px;color:var(--muted); }
.pd-bcol-val { font-size:13px;font-weight:600; }
.pd-bcol-val.accent { color:var(--accent); }
.pd-bcol-val.green { color:#0ec97a; }
.pd-change-chip {
  display:inline-block;font-size:12px;font-weight:700;
  padding:3px 10px;border-radius:6px;
}
.pd-change-chip.pos { background:rgba(14,201,122,.15);color:#0ec97a; }
.pd-change-chip.neg { background:rgba(241,65,108,.15);color:#f1416c; }
.pd-chart-label {
  font-size:13px;font-weight:600;color:var(--text2);margin-bottom:10px;
  display:flex;justify-content:space-between;align-items:center;
}

/* STATS ROW */
.pd-stats-row {
  display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;
}
.pd-stat {
  background:var(--card);border:1px solid var(--border);
  border-radius:14px;padding:16px;
  display:flex;align-items:center;gap:12px;
  transition:border-color .2s;
}
.pd-stat:hover { border-color:rgba(153,69,255,.3); }
.pd-stat-icon {
  width:42px;height:42px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.pd-stat-label { font-size:11px;color:var(--muted);margin-bottom:4px; }
.pd-stat-val { font-size:16px;font-weight:800; }
.pd-stat-val.g { color:#0ec97a; }
.pd-stat-val.p { color:#9945ff; }
.pd-stat-val.b { color:#00c2ff; }
.pd-stat-val.gold { color:#f0a500; }

/* PHASES CARD */
.pd-phases-card {
  background:var(--card);border:1px solid var(--border);
  border-radius:18px;padding:24px;
}
.pd-section-title {
  font-size:14px;font-weight:700;color:var(--text);
  letter-spacing:.3px;margin-bottom:16px;
}
.pd-phases-table {
  width:100%;border-collapse:collapse;font-size:13px;
}
.pd-phases-table th {
  text-align:left;padding:10px 12px;
  color:var(--muted);font-weight:600;font-size:12px;
  border-bottom:1px solid var(--border);
}
.pd-phases-table td {
  padding:11px 12px;color:var(--text2);
  border-bottom:1px solid rgba(30,42,66,.5);
}
.pd-phases-table td:first-child { color:var(--text);font-weight:500; }
.pd-phases-table tr:last-child td { border-bottom:none; }
.pd-info {
  font-size:11px;color:var(--muted);cursor:help;
  border:1px solid var(--border);border-radius:50%;
  width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;
  vertical-align:middle;margin-left:4px;
}

/* PROGRESS CARD (right col) */
.pd-progress-card {
  background:var(--card);border:1px solid var(--border);
  border-radius:18px;padding:22px;position:sticky;top:70px;
}
.pd-prog-list { display:flex;flex-direction:column; }
.pd-prog-item {
  display:flex;align-items:center;gap:12px;
  padding:12px 0;border-bottom:1px solid rgba(30,42,66,.5);
}
.pd-prog-ico {
  width:36px;height:36px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.pd-prog-lbl { font-size:11px;color:var(--muted);margin-bottom:3px; }
.pd-prog-val { font-size:13px;font-weight:700;color:var(--text); }
.pd-divider { border:none;border-top:1px solid var(--border);margin:16px 0; }
.pd-bar-row {
  display:flex;justify-content:space-between;
  font-size:11px;color:var(--muted);margin-bottom:5px;margin-top:10px;
}
.pd-bar-track {
  height:7px;background:var(--bg2);border-radius:4px;
  overflow:hidden;margin-bottom:4px;
}
.pd-bar-fill { height:100%;border-radius:4px;transition:width .6s ease; }
.pd-bar-fill.g { background:linear-gradient(90deg,#0ec97a,#0aa85f); }
.pd-bar-fill.r { background:linear-gradient(90deg,#f1416c,#c8304f); }
.pd-bar-fill.o { background:linear-gradient(90deg,#f0a500,#cc8a00); }
.pd-status-list { display:flex;flex-direction:column;gap:0; }
.pd-status-row {
  display:flex;justify-content:space-between;align-items:center;
  padding:8px 0;border-bottom:1px solid rgba(30,42,66,.4);
  font-size:12px;color:var(--muted);
}
.pd-status-row:last-child { border-bottom:none; }
.pd-status-row span:last-child { color:var(--text);font-weight:500;font-size:12px; }

/* Responsive */
@media (max-width:1100px) {
  .pd-main-grid { grid-template-columns:1fr; }
  .pd-progress-card { position:static; }
    .pd-hero-title { font-size:28px; }
}
@media (max-width:800px) {
  .pd-hero { flex-direction:column;gap:20px;padding:24px; }
  .pd-hero-img { width:100%;height:120px; }
  .pd-stats-row { grid-template-columns:1fr 1fr; }
  .pd-balance-top { flex-direction:column;gap:14px; }
  .pd-balance-right { gap:12px; }
}

/* ═══════════════════════════════════════
   CHALLENGE PHASES ACCORDION
═══════════════════════════════════════ */
.pd-acc-header {
  display:grid;grid-template-columns:1fr 120px 120px 120px;
  padding:10px 14px;
  border-bottom:1px solid var(--border);
  font-size:11px;font-weight:700;color:var(--muted);
  letter-spacing:.5px;text-transform:uppercase;
  margin-bottom:4px;
}
.pd-acc-phase { text-align:center; }
.pd-acc-phase.active-phase { color:#9945ff; }
.pd-acc-criteria { color:var(--muted); }

.pd-acc-row {
  border-radius:10px;margin-bottom:3px;
  border:1px solid transparent;
  transition:background .15s,border-color .15s;
  cursor:pointer;overflow:hidden;
}
.pd-acc-row:hover { background:var(--bg2);border-color:var(--border); }
.pd-acc-row.danger:hover { border-color:rgba(241,65,108,.2); }
.pd-acc-row.success:hover { border-color:rgba(14,201,122,.2); }
.pd-acc-row.open { background:var(--bg2);border-color:var(--border); }
.pd-acc-row.danger.open { border-color:rgba(241,65,108,.25);background:rgba(241,65,108,.04); }
.pd-acc-row.success.open { border-color:rgba(14,201,122,.25);background:rgba(14,201,122,.04); }

.pd-acc-main {
  display:grid;grid-template-columns:20px 1fr 120px 120px 120px;
  align-items:center;padding:13px 14px;gap:0;
}
.pd-acc-arrow {
  font-size:16px;color:var(--muted);
  transition:transform .25s;display:inline-block;
  line-height:1;
}
.pd-acc-row.open .pd-acc-arrow { transform:rotate(90deg);color:#9945ff; }
.pd-acc-label {
  font-size:13px;font-weight:500;color:var(--text);
  display:flex;align-items:center;gap:8px;
}
.pd-acc-vals {
  display:contents;
}
.pd-acc-vals span {
  text-align:center;font-size:12px;font-weight:600;color:var(--text2);
}
.pd-acc-vals span.active-phase { color:#9945ff;font-weight:700; }

.pd-tag {
  font-size:9px;font-weight:700;letter-spacing:.8px;
  padding:2px 6px;border-radius:4px;text-transform:uppercase;
}
.pd-tag.red { background:rgba(241,65,108,.15);color:#f1416c; }
.pd-tag.green { background:rgba(14,201,122,.15);color:#0ec97a; }

/* Accordion detail panel */
.pd-acc-detail {
  display:none;padding:0 14px 16px 34px;
  font-size:12px;color:var(--text2);line-height:1.7;
}
.pd-acc-row.open .pd-acc-detail { display:block; }
.pd-acc-detail p { margin-bottom:8px; }
.pd-acc-detail p:last-of-type { margin-bottom:10px; }
.pd-detail-rule {
  display:flex;align-items:flex-start;gap:8px;
  padding:5px 0;font-size:12px;color:var(--text2);
}
.pd-rule-ok {
  color:#0ec97a;font-weight:700;flex-shrink:0;margin-top:1px;
}
.pd-rule-no {
  color:#f1416c;font-weight:700;flex-shrink:0;margin-top:1px;
}
.pd-detail-example {
  margin-top:10px;padding:10px 14px;
  background:var(--card2);border-radius:8px;
  border-left:3px solid #9945ff;
  font-size:12px;color:var(--text2);
  line-height:1.6;
}
.pd-detail-example b { color:var(--text); }

/* Responsive */
@media (max-width:800px) {
  .pd-acc-header { grid-template-columns:1fr 80px 80px 80px;font-size:10px; }
  .pd-acc-main { grid-template-columns:18px 1fr 80px 80px 80px; }
  .pd-acc-vals span,.pd-acc-phase { font-size:11px; }
}

@media (max-width:1100px) {
  }
@media (max-width:800px) {
  .pd-hero-img { width:100%;height:160px; }
  }

/* ═══════════════════ HERO BANNER ═══════════════════ */
.pd-hero-wrap { /* height auto */ }
  .pd-hero-title { font-size: 32px; }
  .pd-hero-content { padding: 32px 36px; }
  .pd-hero-trader { max-width: 58%; }
}
@media (max-width: 800px) {
  .pd-hero-wrap { /* height auto */ }
  .pd-hero-title { font-size: 24px; }
  .pd-hero-sub { font-size: 12px; margin-bottom: 18px; }
  .pd-hero-content { width: 60%; padding: 24px 24px; }
  .pd-hero-trader { max-width: 48%; }
  .pd-hero-btn { font-size: 13px !important; padding: 10px 18px !important; }
}
/* ═══════════════════ HERO BANNER ═══════════════════ */
.pd-hero-wrap {
  position: relative;
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 24px;
  border: 1px solid rgba(153,69,255,.2);
  /* Height auto = image keeps full proportions, nothing cut */
}

/* The image itself — full width, height auto, NO CROP */
.pd-hero-img-full {
  display: block;
  width: 100%;
  height: auto;
  object-fit: fill; /* never crop */
  vertical-align: bottom;
}

/* Overlay sits absolutely over the image, left half */
.pd-hero-overlay {
  position: absolute;
  inset: 0;
  /* Gradient: dark on left (text zone), transparent on right (image visible) */
  background: linear-gradient(
    to right,
    rgba(8,5,18,.88) 0%,
    rgba(8,5,18,.82) 38%,
    rgba(8,5,18,.45) 60%,
    rgba(8,5,18,.0) 80%
  );
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 0 0 48px;
  max-width: 52%;
}

.pd-hero-title {
  font-size: 36px;
  font-weight: 800;
  color: #fff;
  line-height: 1.18;
  margin-bottom: 12px;
  letter-spacing: -0.5px;
  text-shadow: 0 2px 12px rgba(0,0,0,.5);
}

.pd-hero-sub {
  font-size: 14px;
  color: rgba(255,255,255,.65);
  line-height: 1.65;
  margin-bottom: 26px;
  text-shadow: 0 1px 8px rgba(0,0,0,.6);
}

.pd-hero-btn {
  font-size: 15px !important;
  padding: 12px 26px !important;
  border-radius: 12px !important;
  box-shadow: 0 6px 22px rgba(153,69,255,.45) !important;
  align-self: flex-start;
}

/* Responsive */
@media (max-width: 1100px) {
  .pd-hero-title { font-size: 28px; }
  .pd-hero-overlay { padding-left: 36px; max-width: 58%; }
}
@media (max-width: 768px) {
  .pd-hero-title { font-size: 22px; }
  .pd-hero-sub { font-size: 12px; }
  .pd-hero-overlay { padding-left: 24px; max-width: 70%; }
  .pd-hero-btn { font-size: 13px !important; padding: 10px 18px !important; }
}



/* ══════════════════════════════════════
   ALTRIX RESPONSIVE ADAPTATION — mobile + desktop
   Added for server web version. Desktop remains wide, mobile behaves like app.
══════════════════════════════════════ */
html{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
body{
  width:100%;
  max-width:100%;
}
img,canvas,svg,video,iframe{
  max-width:100%;
}

/* Desktop safety: keep the terminal expanded on big screens */
@media (min-width: 1101px){
  .desktop-layout{display:flex;min-height:100vh;}
  .desktop-main{margin-left:220px;min-width:0;width:calc(100% - 220px);}
  .desktop-content{max-width:none;width:100%;}
  .mobile-bottom-nav{display:none!important;}
}

/* Tablet: remove the hard desktop dependency, keep readable cards */
@media (max-width: 1100px){
  .desktop-layout{display:block;min-height:100vh;}
  .sidebar{display:none!important;}
  .desktop-main{margin-left:0!important;width:100%!important;min-width:0;}
  .desktop-content{padding:18px 16px 86px!important;width:100%;overflow:visible;}
  .desktop-topbar{padding:12px 16px!important;gap:10px;}
  .topbar-heroes{gap:14px;}
  .topbar-fg,.topbar-dca{display:none!important;}
  .desktop-content .cards-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .desktop-content .cards-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .desktop-portfolio-grid,.desktop-goals-grid,.desktop-dca-grid,.desktop-journal-grid,
  .prop-dash-grid,.pd-main-grid{grid-template-columns:1fr!important;}
  .prop-plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:100%!important;}
  .pd-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .pd-balance-top,.prop-stage-card,.prop-upgrade-card{flex-direction:column;align-items:stretch!important;}
  .pd-balance-right{width:100%;justify-content:space-between;}
}

/* Phone: app-like layout */
@media (max-width: 768px){
  body{overflow-x:hidden!important;}
  body::before{opacity:.75;}
  .app.desktop-layout{display:block!important;min-height:100vh;width:100%;}
  .sidebar{display:none!important;}
  .desktop-main{margin-left:0!important;width:100%!important;min-width:0!important;}

  .desktop-topbar{
    position:sticky;top:0;z-index:300;
    display:flex!important;align-items:center;justify-content:space-between;
    padding:10px 12px!important;gap:8px!important;
    min-height:58px;
    overflow:hidden;
  }
  .desktop-topbar::before{
    content:'ALTRIX';
    font-size:17px;font-weight:800;letter-spacing:1.8px;
    background:linear-gradient(135deg,#00c2ff,#9945ff,#ff2d78,#00c2ff);
    background-size:300% 300%;
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
    animation:rainbowText 5s ease infinite;
    white-space:nowrap;
  }
  .topbar-status{font-size:9px;gap:5px;max-width:94px;overflow:hidden;white-space:nowrap;}
  .topbar-status span{overflow:hidden;text-overflow:ellipsis;}
  .topbar-heroes,.topbar-fg,.topbar-dca{display:none!important;}

  .desktop-content{
    padding:14px 12px 86px!important;
    width:100%;max-width:100%;overflow:visible!important;
  }
  .desktop-page-title{font-size:22px!important;margin-bottom:4px!important;}
  .desktop-page-sub{font-size:11px!important;margin-bottom:14px!important;}
  .desktop-content .sc{padding:14px!important;margin-bottom:12px!important;border-radius:14px!important;}
  .desktop-content .st{font-size:9px!important;letter-spacing:2px!important;margin-bottom:12px!important;}

  .hero-prices,.desktop-content .hero-prices{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:0 0 12px!important;}
  .fg-bar,.desktop-content .fg-bar,.dom-bar,.desktop-content .dom-bar,.dca-banner,.desktop-content .dca-banner{display:flex!important;margin:0 0 10px!important;}
  .dom-bar{display:block!important;}

  .cards-grid,.cards-grid-6,
  .desktop-content .cards-grid,.desktop-content .cards-grid-6{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .card,.desktop-content .card{padding:12px!important;border-radius:14px!important;min-width:0;}
  .desktop-content .pb{font-size:17px!important;}
  .desktop-content .cn{font-size:12px!important;}
  .desktop-content .pc{font-size:10px!important;}

  .gl-grid,.desktop-content .gl-grid,.scgrid,.desktop-content .scgrid,
  .desktop-stats-row,.goal-inputs,.legend-grid{
    grid-template-columns:1fr 1fr!important;
  }
  .desktop-portfolio-grid,.desktop-goals-grid,.desktop-dca-grid,.desktop-journal-grid,
  .prop-dash-grid,.pd-main-grid{
    display:block!important;
  }

  .chart-controls,.port-row,.add-row{gap:8px;}
  .chart-search,.pi,.ai,.ci,.add-row input,.add-row select{width:100%!important;min-width:0!important;}
  #tv-container{height:70vh!important;min-height:420px!important;}
  .chart-wrap{width:210px!important;height:210px!important;}
  #donut-canvas{width:210px!important;height:210px!important;}
  .growth-chart-wrap{height:170px!important;}

  /* PROP mobile */
  .prop-subnav{
    display:flex!important;gap:6px;overflow-x:auto;white-space:nowrap;
    margin:0 -12px 16px!important;padding:0 12px 8px!important;
    -webkit-overflow-scrolling:touch;
  }
  .prop-subnav-btn{font-size:11px!important;padding:9px 10px!important;flex:0 0 auto;}
  .prop-page-title{font-size:20px!important;line-height:1.2;margin-bottom:14px!important;}
  .prop-page-sub{font-size:11px!important;}
  .prop-stage-card,.prop-upgrade-card{flex-direction:column!important;align-items:stretch!important;padding:16px!important;gap:14px!important;}
  .prop-stage-meta{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  .prop-stage-actions{width:100%;}
  .prop-stage-actions .prop-btn-outline,.prop-stage-actions .prop-btn-primary,
  .prop-upgrade-card .prop-btn-primary{width:100%;justify-content:center;}
  .prop-plans-grid{grid-template-columns:1fr!important;max-width:100%!important;gap:12px!important;}
  .prop-plan-card{padding:18px!important;}
  .prop-plan-capital{font-size:24px!important;}

  .pd-hero-wrap{border-radius:14px!important;margin-bottom:14px!important;}
  .pd-hero-overlay{
    position:relative!important;inset:auto!important;max-width:none!important;
    padding:16px!important;background:rgba(8,5,18,.92)!important;
  }
  .pd-hero-img-full{display:none!important;}
  .pd-hero-title{font-size:22px!important;}
  .pd-hero-sub{font-size:12px!important;margin-bottom:14px!important;}
  .pd-balance-card,.pd-phases-card,.pd-progress-card{padding:16px!important;border-radius:14px!important;}
  .pd-balance-top{flex-direction:column!important;gap:14px!important;}
  .pd-balance-amount{font-size:28px!important;word-break:break-word;}
  .pd-balance-right{width:100%;justify-content:space-between;gap:12px!important;}
  .pd-stats-row{grid-template-columns:1fr 1fr!important;gap:10px!important;}
  .pd-stat{padding:12px!important;gap:8px!important;}
  .pd-stat-icon{width:34px!important;height:34px!important;}
  .pd-stat-val{font-size:14px!important;}

  .pd-acc-header{grid-template-columns:1fr 58px 58px 58px!important;font-size:9px!important;padding:9px 8px!important;overflow-x:auto;}
  .pd-acc-main{grid-template-columns:16px minmax(110px,1fr) 58px 58px 58px!important;padding:12px 8px!important;min-width:0;}
  .pd-acc-label{font-size:11px!important;gap:5px!important;min-width:0;}
  .pd-acc-vals span,.pd-acc-phase{font-size:10px!important;}
  .pd-acc-detail{padding:0 10px 12px 24px!important;font-size:11px!important;}

  .pt2,.table-wrap,table{max-width:100%;}
  .pt2{overflow-x:auto;display:block;}
  .halving-grid{grid-template-columns:repeat(2,1fr)!important;}
  .halving-num{font-size:24px!important;}

  .mobile-bottom-nav{
    position:fixed;left:0;right:0;bottom:0;z-index:500;
    display:grid;grid-template-columns:repeat(5,1fr);
    gap:4px;padding:7px 8px calc(7px + env(safe-area-inset-bottom));
    background:rgba(8,12,20,.96);backdrop-filter:blur(14px);
    border-top:1px solid var(--border);
    box-shadow:0 -8px 28px rgba(0,0,0,.35);
  }
  .light .mobile-bottom-nav{background:rgba(240,243,250,.96);}
  .mobile-nav-btn{
    border:0;background:transparent;color:var(--muted);
    font-family:'Inter',sans-serif;font-size:9px;font-weight:700;
    min-width:0;padding:7px 2px;border-radius:10px;
    display:flex;flex-direction:column;align-items:center;gap:2px;
  }
  .mobile-nav-btn span{font-size:15px;line-height:1;}
  .mobile-nav-btn.active{background:var(--accent);color:#fff;}
}

/* Very small phones */
@media (max-width: 380px){
  .desktop-content{padding-left:10px!important;padding-right:10px!important;}
  .cards-grid,.cards-grid-6,.desktop-content .cards-grid,.desktop-content .cards-grid-6{grid-template-columns:1fr!important;}
  .gl-grid,.desktop-content .gl-grid,.scgrid,.desktop-content .scgrid,.goal-inputs,.pd-stats-row{grid-template-columns:1fr!important;}
  .mobile-nav-btn{font-size:8px;}
}
