/* Portofoliu BGN — stiluri locale, doar peste bgn-33.css. Doar tokenuri, niciun hex.
   local: = componentă care nu e (încă) în catalogul bgn-33; listată în raportul prototipului. */

/* carcasa de mobil, pe fundalul aplicației (gri-0), nu pe alb */
.m-shell,.m-top{background:var(--c-app)}
.m-top .brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;letter-spacing:-.01em;color:var(--c-ink)}
.m-top .brand .ic{color:var(--c-accent)}
.m-body > section{margin-bottom:var(--sp-6)}
.m-body .sec-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 10px}
.m-body .sec-title h2{font-size:17px;font-weight:600;letter-spacing:-.01em;margin:0}

/* pe ecran mare: aceeași coloană, centrată */
@media (min-width:1024px){
  .m-shell{max-width:760px;margin:0 auto;border-left:1px solid var(--c-rule-soft);border-right:1px solid var(--c-rule-soft)}
  .tabbar{max-width:760px;left:50%;right:auto;width:100%;transform:translateX(-50%)}
}

/* semnul cifrelor */
.up{color:var(--c-success-text)} .down{color:var(--c-error-text)}
.kpi-ctx .up,.kpi-ctx .down{font-family:var(--ff-mono);font-size:12px;font-weight:500}
.card.dark .kpi-ctx .up{color:var(--c-success)} .card.dark .kpi-ctx .down{color:var(--c-error)}

/* local: rândul unei poziții — nume + (simbol · bucăți · valoare) în stânga, preț + (azi · față de achiziție) în dreapta */
.poz .main{min-width:0}
.poz .main .meta-line{margin-top:1px;flex-wrap:nowrap;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
@media (max-width:480px){ .poz{padding-left:16px;padding-right:16px;gap:8px} .poz .main .meta-line .u{display:none} .poz .main .meta-line{font-size:11.5px;gap:4px} .poz .right .meta-line{gap:5px;font-size:11px} .poz .right .meta-line .ic.sm{width:11px;height:11px} }
.poz .right{text-align:right;flex-shrink:0}
.poz .right .num{font-size:14px;font-weight:600}
.poz .right .num .unit{font-size:11px}
.poz .right .meta-line{justify-content:flex-end;gap:8px;margin-top:1px;font-family:var(--ff-mono);font-size:11.5px;flex-wrap:nowrap}
.poz .right .meta-line .lbl{color:var(--c-mist);flex-shrink:0;margin-right:-5px}
.poz .right .meta-line .ic.sm{width:12px;height:12px}

/* local: pondere ca bară fină sub nume (pagina publică) */
.pondere .main{display:grid;gap:6px}
.pondere .progress{height:6px}
.pondere .num{font-size:15px;min-width:64px;text-align:right}

/* local: tab-urile de perioadă — segmentate, pe toată lățimea, cu stări indisponibile */
.perioade{display:flex;width:100%;margin-bottom:12px}
.perioade button{flex:1;padding:0 2px;font-family:var(--ff-mono);font-size:12.5px}
.perioade button:disabled{color:var(--c-mist);cursor:not-allowed}

/* local: cardul negru pe două coloane — valoarea și contextul ei în stânga, evoluția față de S&P 500 în dreapta */
.kpi-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:6px;align-items:baseline}
.kpi-grid .kpi-ctx{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.kpi-grid .mare{font-family:var(--ff-mono);font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1;text-align:right}
.kpi-grid .mic{font-size:12.5px;color:rgba(255,255,255,.66);white-space:nowrap;text-align:right}
.kpi-grid .mic b{font-family:var(--ff-mono);font-size:12px;font-weight:500}
.card.dark .kpi-grid .up{color:var(--c-success)} .card.dark .kpi-grid .down{color:var(--c-error)}
#leg-note b{font-weight:500;color:var(--c-ink)}
@media (max-width:400px){ .kpi-val{font-size:26px} .kpi-grid .mare{font-size:20px} }

/* starea ascuns/afișat a ecranelor de login și conținut */
[hidden]{display:none!important}
button.avatar{border:0;cursor:pointer;font:inherit;font-weight:600}
