/* ============================================================================
   mds-base.css · reset + tipografie + primitive
   Se încarcă AL DOILEA (după tokens). Construit doar pe variabile.
   ============================================================================ */
*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--mds-bg); color:var(--mds-tx);
  font-family:var(--mds-sans); font-size:14px; line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
a{ color:inherit; text-decoration:none; }
button{ font-family:inherit; }
:focus-visible{ outline:2px solid var(--mds-data); outline-offset:2px; border-radius:4px; }

/* Numerele: cifre tabulare (aliniate). Fără font monospace. */
.mds-num{ font-variant-numeric:tabular-nums; }

/* ── Tipografie ── */
.mds-display  { font:700 40px/1.05 var(--mds-sans); letter-spacing:-0.035em; }
.mds-h1       { font:700 30px/1.15 var(--mds-sans); letter-spacing:-0.025em; }
.mds-h1-asset { font:700 22px/1.15 var(--mds-sans); letter-spacing:-0.02em; }  /* < h2: eroul e prețul */
.mds-h2       { font:700 28px/1.15 var(--mds-sans); letter-spacing:-0.025em; }
.mds-h3       { font:600 18px/1.2  var(--mds-sans); letter-spacing:-0.015em; }
.mds-h4       { font:600 14px/1.2  var(--mds-sans); color:var(--mds-pos);
                display:inline-flex; align-items:center; gap:7px; }
.mds-eyebrow  { font:600 11px/1.2  var(--mds-sans); letter-spacing:.11em;
                text-transform:uppercase; color:var(--mds-tx-3); }
.mds-lead     { font:400 15px/1.65 var(--mds-sans); color:var(--mds-tx-2); }
.mds-cap      { font:400 12px/1.5  var(--mds-sans); color:var(--mds-tx-3); }
@media (max-width:820px){
  .mds-h2{ font-size:22px; } .mds-h1-asset{ font-size:18px; }
  .mds-h3{ font-size:16px; } .mds-display{ font-size:30px; }
}

/* ── Card ── */
.mds-card{
  background:var(--mds-card); border:1px solid var(--mds-line);
  border-radius:var(--mds-r-card); padding:var(--mds-6);
}
.mds-card--compact{ padding:var(--mds-4); }

/* ── Butoane ── */
.mds-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px; height:var(--mds-btn-h);
  padding:0 16px; border-radius:var(--mds-r-sm); border:1px solid transparent; white-space:nowrap;
  font:500 14px var(--mds-sans); cursor:pointer; transition:.15s;
}
.mds-btn--primary  { background:#ededed; color:#141414; }
.mds-btn--primary:hover{ background:#d8d8d8; }
.mds-btn--secondary{ background:transparent; border-color:var(--mds-line-2); color:var(--mds-tx-2); }
.mds-btn--secondary:hover{ color:var(--mds-tx); border-color:var(--mds-line-3); }
.mds-btn--ghost    { background:var(--mds-selected); color:var(--mds-tx-2); }
.mds-btn--ghost:hover{ color:var(--mds-tx); }

/* CTA-uri (din single-stock) */
.mds-cta-invest{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:14px 28px; border:0; border-radius:14px;
  background:linear-gradient(135deg,#2ada49,#1bc441); color:#00230a;
  font:600 15px var(--mds-sans); letter-spacing:-0.02em; cursor:pointer;
  box-shadow:0 4px 20px rgba(42,218,73,.25),0 2px 8px rgba(0,0,0,.15); transition:.2s;
}
.mds-cta-invest:hover{ filter:brightness(1.05); transform:translateY(-1px); }
.mds-cta-chart{
  display:inline-flex; align-items:center; gap:8px; padding:14px 26px;
  border:1px solid rgba(255,255,255,.3); border-radius:14px; background:transparent;
  color:#fff; font:600 15px var(--mds-sans); letter-spacing:-0.02em; cursor:pointer; transition:.2s;
}
.mds-cta-chart:hover{ border-color:rgba(255,255,255,.55); }

/* Icon-button fără chenar (header) */
.mds-iconbtn{
  width:40px; height:40px; display:grid; place-items:center; color:var(--mds-tx-2);
  background:transparent; border:0; cursor:pointer; border-radius:8px;
}
.mds-iconbtn svg{ width:20px; height:20px; }
.mds-iconbtn:hover{ color:var(--mds-tx); }

/* ── Pastile / etichete / delta ── */
.mds-pill{
  display:inline-flex; align-items:center; gap:6px; padding:4px 10px;
  border-radius:var(--mds-r-pill); font:600 12px var(--mds-sans);
  border:1px solid var(--mds-line-2); color:var(--mds-tx-2);
}
.mds-pill.is-dot::before{ content:""; width:6px; height:6px; border-radius:50%; background:currentColor; }
.mds-pill--pos{ color:var(--mds-pos);  border-color:rgba(42,218,73,.35); }
.mds-pill--warn{ color:var(--mds-warn); border-color:rgba(240,160,35,.35); }
.mds-pill--neg{ color:var(--mds-neg);  border-color:rgba(239,68,68,.35); }

.mds-tag{
  font:600 10px var(--mds-sans); color:var(--mds-tx-3); border:1px solid var(--mds-line);
  border-radius:5px; padding:1px 6px; text-transform:uppercase; letter-spacing:.05em;
}
.mds-tag--pro{ color:var(--mds-warn); border-color:rgba(240,160,35,.3); }
.mds-tag--free{ color:var(--mds-pos); border-color:rgba(42,218,73,.3); }

.mds-delta{
  display:inline-flex; align-items:center; gap:5px; padding:4px 9px;
  border-radius:var(--mds-r-pill); font:600 12px var(--mds-sans); font-variant-numeric:tabular-nums;
}
.mds-delta--up{ color:var(--mds-pos); background:rgba(42,218,73,.13); }
.mds-delta--down{ color:var(--mds-neg); background:rgba(239,68,68,.13); }

/* ── Badge de natură (fapt / tehnic / opinie / proiecție) ── */
.mds-nbadge{
  display:inline-flex; align-items:center; gap:6px; padding:4px 10px;
  font:600 11px/1 var(--mds-sans); border-radius:var(--mds-r-pill); border:1px solid;
}
.mds-nbadge::before{ content:""; width:7px; height:7px; border-radius:50%; background:currentColor; }
.mds-nbadge--fact   { color:var(--mds-n-fact);    border-color:rgba(20,184,166,.45);  background:rgba(20,184,166,.12); }
.mds-nbadge--tech   { color:var(--mds-n-tech);    border-color:rgba(86,180,233,.45);  background:rgba(86,180,233,.12); }
.mds-nbadge--opinion{ color:var(--mds-n-opinion); border-color:rgba(232,165,58,.45);  background:rgba(232,165,58,.12); }
.mds-nbadge--proj   { color:var(--mds-n-proj);    border-color:rgba(167,139,250,.45); background:rgba(167,139,250,.12); }

/* ── Câmp de căutare ── */
.mds-field{
  display:flex; align-items:center; gap:10px; height:38px; padding:0 14px;
  background:var(--mds-selected); border:1px solid var(--mds-line); border-radius:var(--mds-r-el);
}
.mds-field input{
  flex:1; background:transparent; border:0; outline:none; color:var(--mds-tx);
  font:400 14px var(--mds-sans);
}
.mds-field input::placeholder{ color:var(--mds-tx-3); }

/* --- primitive header (adăugate) --- */
.mds-btn--text{ background:transparent; color:var(--mds-tx-2); padding:0 10px; }
.mds-btn--text:hover{ color:var(--mds-tx); }
.mds-logo{ font-size:18px; font-weight:700; letter-spacing:-.03em; color:var(--mds-tx); text-decoration:none; }
.mds-logo b{ color:var(--mds-pos); }
.mds-brandicon{ display:inline-flex; align-items:flex-start; line-height:1; padding:2px 0; text-decoration:none; }
.mds-brandicon b{ font-size:24px; font-weight:700; letter-spacing:-.04em; color:var(--mds-tx); line-height:1; }
.mds-brandicon i{ width:6px; height:6px; border-radius:50%; background:var(--mds-pos); margin-left:2px; margin-top:2px; }
.mds-brandicon-link, .custom-logo-link{ display:inline-flex; align-items:center; text-decoration:none; }

/* ascunde X-ul nativ al input[type=search] (avem X-ul nostru) */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}
input[type="search"]{appearance:none;-webkit-appearance:none}
