/* Track Buget – stiluri
   Layout: telefon = antet + conținut + bară de taburi jos; desktop ≥900px = bară laterală + conținut.
   Dashboard: grilă de widget-uri care curg (4 coloane ≥1300px, 2 coloane mai jos). */
:root{
  --bg:#0d1130; --surface:#171c44; --surface-2:#20265a; --fg:#f3f4fb; --fg-2:#bcc0e0; --muted:#8288b5;
  --line:#262c62; --accent:#7d5fff; --accent-ink:#ffffff; --accent-soft:#2a2470;
  --teal:#20dcc0; --inc:#22d39d; --exp:#ff5a78; --warn:#ffb648; --grey-slot:#565c8c;
  --grad-a:#ff7a1a; --grad-b:#ff3d6e;
  --shadow:none;
  --f-display:"Sora",ui-sans-serif,system-ui,"Segoe UI",sans-serif;
  --f-body:"Figtree",ui-sans-serif,system-ui,"Segoe UI",Roboto,sans-serif;
  --r:22px; color-scheme:dark;
}
@media (prefers-color-scheme: light){:root:not([data-theme]){
  --bg:#f2f3fa; --surface:#ffffff; --surface-2:#eceefa; --fg:#14173a; --fg-2:#4a4f7a; --muted:#767ca5;
  --line:#e2e4f2; --accent:#6a4cf0; --accent-ink:#ffffff; --accent-soft:#e9e4ff;
  --teal:#0a9a83; --inc:#0b9e6e; --exp:#e23a5c; --warn:#b87300; --grey-slot:#a3a8c6;
  --shadow:0 1px 2px rgba(20,23,58,.05),0 10px 30px rgba(20,23,58,.06); color-scheme:light;}}
:root[data-theme="light"]{
  --bg:#f2f3fa; --surface:#ffffff; --surface-2:#eceefa; --fg:#14173a; --fg-2:#4a4f7a; --muted:#767ca5;
  --line:#e2e4f2; --accent:#6a4cf0; --accent-ink:#ffffff; --accent-soft:#e9e4ff;
  --teal:#0a9a83; --inc:#0b9e6e; --exp:#e23a5c; --warn:#b87300; --grey-slot:#a3a8c6;
  --shadow:0 1px 2px rgba(20,23,58,.05),0 10px 30px rgba(20,23,58,.06); color-scheme:light;}
/* Tema „Grafit”: monocromă, negru și argintiu, carduri din sticlă fumurie (după imaginea de referință) */
:root[data-theme="graphite"]{
  --bg:#030303; --surface:#0d0d0d; --surface-2:#191919; --fg:#f4f4f4; --fg-2:#a6a6a6; --muted:#6f6f6f;
  --line:#1f1f1f; --accent:#f2f2f2; --accent-ink:#0a0a0a; --accent-soft:#1b1b1b;
  --teal:#e8e8e8; --inc:#9fd4b0; --exp:#e39191; --warn:#d8b874; --grey-slot:#3d3d3d;
  --grad-a:#3b3b3b; --grad-b:#0e0e0e;
  --shadow:inset 0 1px 0 rgba(255,255,255,.05),0 20px 40px rgba(0,0,0,.45); color-scheme:dark;}
/* Tema „Ivoire”: alb cald, cerneală neagră, linii fine; carduri principale negre */
:root[data-theme="ivory"]{
  --bg:#f6f4ef; --surface:#ffffff; --surface-2:#f0ede6; --fg:#141414; --fg-2:#4a4740; --muted:#8a857a;
  --line:#e7e2d7; --accent:#141414; --accent-ink:#ffffff; --accent-soft:#ece8de;
  --teal:#141414; --inc:#2f7d4f; --exp:#b4413a; --warn:#a8741a; --grey-slot:#cbc5b8;
  --grad-a:#262421; --grad-b:#0f0f0f; --chrome:#f6f4ef;
  --shadow:0 1px 0 rgba(20,20,20,.03),0 14px 34px rgba(70,58,34,.07); color-scheme:light;}
/* Tema „Onyx”: negru adânc cu accente aurii */
:root[data-theme="onyx"]{
  --bg:#08080a; --surface:#111113; --surface-2:#1b1a1d; --fg:#f5f1e6; --fg-2:#bdb6a4; --muted:#7f7a6c;
  --line:#232228; --accent:#d4af6a; --accent-ink:#17120a; --accent-soft:#2a2418;
  --teal:#e6c88a; --inc:#8fc9a0; --exp:#e48a7f; --warn:#e6b85c; --grey-slot:#3a3833;
  --grad-a:#3a2f1a; --grad-b:#0d0c0a; --chrome:#08080a;
  --shadow:inset 0 1px 0 rgba(255,236,200,.04),0 20px 40px rgba(0,0,0,.5); color-scheme:dark;}
/* Tema „Rubin”: împărțită în roșu și alb – antet, meniu și carduri principale roșii, conținut alb */
:root[data-theme="rubin"]{
  --bg:#f8f4f3; --surface:#ffffff; --surface-2:#f7ecec; --fg:#1f0b0f; --fg-2:#5b3a3f; --muted:#98777b;
  --line:#f0e0e0; --accent:#c8102e; --accent-ink:#ffffff; --accent-soft:#fce6e9;
  --teal:#c8102e; --inc:#1f8a5b; --exp:#b3122f; --warn:#b87300; --grey-slot:#dcc7c9;
  --grad-a:#e3203f; --grad-b:#8c0a1f; --chrome:#c8102e;
  --shadow:0 1px 2px rgba(80,10,20,.05),0 12px 30px rgba(120,20,40,.08); color-scheme:light;}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.45 var(--f-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}
[hidden]{display:none!important}
h1,h2,h3{font-family:var(--f-display);margin:0;text-wrap:balance;letter-spacing:-.01em;font-weight:600}
.num{font-variant-numeric:tabular-nums}
.ico{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* Shell */
.shell{min-height:100%;display:grid;grid-template-columns:1fr}
.rail{display:none}
.main{min-width:0;padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
.top{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  padding-top:calc(10px + env(safe-area-inset-top,0px));padding-bottom:10px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));
  display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.top.home{position:static}
.top h1{font-size:22px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top .tools{display:flex;gap:8px;align-items:center;margin-left:auto}
.content{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:4px 24px;display:grid;gap:16px;max-width:1400px}
.iconbtn{width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;color:var(--fg-2);flex:none}
.iconbtn:hover{color:var(--fg)}
.iconbtn.sm{width:32px;height:32px;border-radius:10px}
.iconbtn.sm .ico{width:16px;height:16px}
.pill{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);font-weight:600;font-size:14px;color:var(--fg-2);white-space:nowrap}
.cur-sel{appearance:none;-webkit-appearance:none;height:40px;padding:0 30px 0 12px;border-radius:12px;border:1px solid var(--line);font-weight:700;font-size:14px;flex:none;
  background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238288b5' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 9px center/14px;color:var(--fg)}
.cur-sel.sm{height:32px;font-size:12.5px;padding:0 26px 0 10px;border-radius:10px;background-position:right 7px center}
.month{display:flex;align-items:center;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:2px}
.month button{border:0;background:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:var(--fg-2)}
.month button:hover{background:var(--surface-2)}
.month span{min-width:120px;text-align:center;font-weight:600;font-size:14px;text-transform:capitalize}
@media (max-width:520px){.top .month{order:3;width:100%;justify-content:space-between}.top:not(.home):has(#mem-sw) h1{flex-basis:100%}.top:not(.home):has(#mem-sw) .tools{margin-left:0}}

.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);
  padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}
.tabbar button{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 2px 8px;font-size:11px;font-weight:600;color:var(--muted)}
.tabbar button[aria-current="page"]{color:var(--accent)}
.fab{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:31;width:58px;height:58px;border-radius:18px;border:0;
  background:linear-gradient(135deg,var(--grad-a),var(--grad-b));color:#fff;display:grid;place-items:center;box-shadow:0 8px 24px color-mix(in srgb,var(--grad-b) 40%,transparent)}
.fab .ico{width:26px;height:26px;stroke-width:2.4}

@media (min-width:900px){
  .shell{grid-template-columns:104px 1fr}
  .rail{display:flex;position:sticky;top:0;height:100vh;padding:22px 0 22px 16px}
  .rail-in{display:flex;flex-direction:column;align-items:center;gap:2px;background:var(--surface);border-radius:40px;padding:16px 8px;height:100%;width:100%;overflow-y:auto;scrollbar-width:none}
  .brand{display:grid;justify-items:center;gap:6px;font-family:var(--f-display);font-weight:700;font-size:12px;padding:0 0 12px;text-align:center;line-height:1.2}
  .brand img{width:40px;height:40px;border-radius:12px}
  .rail button{border:0;background:none;display:grid;justify-items:center;gap:3px;width:100%;padding:8px 4px;border-radius:16px;font-weight:600;font-size:11px;color:var(--muted)}
  .rail button:hover{background:var(--surface-2);color:var(--fg)}
  .rail button[aria-current="page"]{background:var(--accent-soft);color:var(--fg)}
  .rail button[aria-current="page"] .ico{color:var(--accent)}
  .rail .spacer{flex:1;min-height:8px}
  .tabbar{display:none}
  .main{padding-bottom:24px}
  .fab{bottom:28px;right:32px}
  .top{padding-top:22px;padding-bottom:14px}
  .top h1{font-size:28px}
  .set-mobile{display:none!important}
}

/* Cards */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px;min-width:0;box-shadow:var(--shadow)}
.card-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.card-h h2{font-size:16px}
.sec-h{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:6px}
.sec-h h2{font-size:18px}
.sub{color:var(--muted);font-size:13px}
.grid2{display:grid;gap:16px;grid-template-columns:1fr}
.grid3{display:grid;gap:16px;grid-template-columns:1fr}
@media (min-width:760px){.grid2{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:1.6fr 1fr}}
.kpis{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:1000px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px 12px;display:grid;gap:4px;min-width:0;align-content:start}
.kpi .lbl{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.kpi .val{font-family:var(--f-display);font-weight:700;font-size:clamp(18px,5vw,24px);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi .foot{font-size:12.5px;color:var(--fg-2);display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.kpi.hero,.grad{background:linear-gradient(120deg,var(--grad-a),var(--grad-b));border-color:transparent;color:#fff}
.kpi.hero .lbl,.kpi.hero .foot{color:rgba(255,255,255,.88)}
.pos{color:var(--inc)}.neg{color:var(--exp)}
.chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;background:var(--surface-2);color:var(--fg-2);white-space:nowrap}
.chip.good{background:color-mix(in srgb,var(--inc) 16%,transparent);color:var(--inc)}
.chip.bad{background:color-mix(in srgb,var(--exp) 16%,transparent);color:var(--exp)}
.chip.warn{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}
.grad .chip,.kpi.hero .chip{background:rgba(255,255,255,.22);color:#fff}
.dot{width:10px;height:10px;border-radius:4px;flex:none;display:inline-block}
.chart-box{position:relative;height:250px}
.chart-box.sm{height:210px}
.donut-wrap{position:relative;height:200px}
.donut-center{position:absolute;inset:0;display:grid;place-content:center;text-align:center;pointer-events:none}
.donut-center b{font-family:var(--f-display);font-size:17px}
.legend{display:grid;gap:8px;margin-top:12px}
.leg{display:flex;align-items:center;gap:10px;font-size:14px;min-width:0}
.leg .nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.leg .pc{color:var(--muted);font-size:12.5px;width:42px;text-align:right}
.seg{display:inline-flex;background:var(--surface-2);border-radius:11px;padding:3px;gap:2px;flex-wrap:wrap}
.seg button{border:0;background:none;padding:6px 12px;border-radius:9px;font-size:13px;font-weight:600;color:var(--fg-2)}
.seg button[aria-pressed="true"]{background:var(--surface);color:var(--fg);box-shadow:0 1px 3px rgba(0,0,0,.18)}
.btn{border:1px solid var(--line);background:var(--surface);padding:10px 16px;border-radius:12px;font-weight:600;display:inline-flex;align-items:center;gap:8px;justify-content:center}
.btn:hover{background:var(--surface-2)}
.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent}
.btn.danger{color:var(--exp)}
.btn.small{padding:6px 12px;font-size:13px;border-radius:10px}
.btn.small .ico{width:16px;height:16px}
.link{border:0;background:none;color:var(--accent);font-weight:600;padding:4px 0;font-size:14px}
.banner{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px 16px;border-radius:16px;background:var(--accent-soft);color:var(--fg);font-size:14px}

/* Lists */
.rows{display:grid}
.row{display:flex;align-items:center;gap:12px;padding:11px 4px;border:0;border-bottom:1px solid var(--line);min-width:0;background:none;text-align:left;width:100%}
.row:last-child{border-bottom:0}
button.row:hover{background:var(--surface-2)}
.tile{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;flex:none;color:#fff;background:var(--c,var(--grey-slot))}
.tile .ico{width:20px;height:20px}
.tile.sm{width:32px;height:32px;border-radius:10px}.tile.sm .ico{width:16px;height:16px}
.tile.lg{width:48px;height:48px;border-radius:14px}.tile.lg .ico{width:24px;height:24px}
.av{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-weight:700;font-size:13px;flex:none;color:#fff}
.row .mid{flex:1;min-width:0}
.row .t1{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.row .t2{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.row .amt{font-weight:700;text-align:right;white-space:nowrap}
.row .amt small{display:block;font-weight:500;font-size:12px;color:var(--muted)}
.dayh{display:flex;justify-content:space-between;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:14px 4px 4px}
.bar{height:10px;border-radius:99px;background:var(--surface-2);overflow:hidden}
.bar i{display:block;height:100%;border-radius:99px}
.bar.thin{height:7px}
.budget{display:grid;gap:6px;padding:10px 0;border-bottom:1px solid var(--line)}
.budget:last-child{border-bottom:0}
.budget .top-l{display:flex;align-items:center;gap:8px;justify-content:space-between;font-size:14px;flex-wrap:wrap}
.empty{padding:24px 12px;text-align:center;color:var(--muted);display:grid;gap:10px;justify-items:center}
.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.input,select.input{width:100%;padding:11px 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);min-width:0}
textarea.input{resize:vertical;min-height:64px}
.filters .input{width:auto;flex:1;min-width:140px}
table{border-collapse:collapse;width:100%;font-size:14px}
th,td{padding:9px 8px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}
th:first-child,td:first-child{text-align:left}
th{font-size:12px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.scroll-x{overflow-x:auto}
.hold-grid{display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:760px){.hold-grid{grid-template-columns:1fr 1fr}}
@media (min-width:1150px){.hold-grid{grid-template-columns:1fr 1fr 1fr}}
.hold{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:grid;gap:10px;text-align:left;width:100%;min-width:0;box-shadow:var(--shadow);align-content:start}
button.hold:hover,.hold.click:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--line))}
.hold .hrow{display:flex;justify-content:space-between;gap:10px;align-items:center;min-width:0}
.hold .sym{font-family:var(--f-display);font-weight:700;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hold .nm{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hold .acts{display:flex;gap:8px;flex-wrap:wrap}
.kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.kv div{display:grid;gap:1px;min-width:0}
.kv span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.kv b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.spark{width:100%;height:40px;display:block}
.subs{display:flex;flex-wrap:wrap;gap:6px}
.status{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--muted);flex-wrap:wrap}
.pulse{width:8px;height:8px;border-radius:50%;background:var(--inc)}
@media (prefers-reduced-motion:no-preference){.pulse.on{animation:pl 1.6s infinite}@keyframes pl{50%{opacity:.25}}
  .sheet{animation:up .22s ease-out}@keyframes up{from{transform:translateY(24px);opacity:.4}}}

/* ===== Dashboard ===== */
.dash-head{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:flex-end;justify-content:space-between;flex:1;min-width:0}
.dash-head .eyebrow{font-size:13px;color:var(--muted);font-weight:600}
.dash-head h1{font-size:clamp(22px,4vw,30px)}
.dash-head .balance{font-family:var(--f-display);font-weight:700;font-size:clamp(30px,7vw,44px);line-height:1.1;color:var(--teal);letter-spacing:-.02em;white-space:nowrap}
.dash-wrap{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
@media (min-width:1100px){.dash-wrap{grid-template-columns:78px minmax(0,1fr)}}
.mrail{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;align-items:center;min-width:0}
.mrail::-webkit-scrollbar{display:none}
.mrail .yr{display:flex;align-items:center;gap:2px;font-weight:700;font-size:14px;flex:none;padding-right:6px}
.mrail .yr button{border:0;background:none;color:var(--muted);width:26px;height:30px;display:grid;place-items:center;border-radius:8px}
.mrail .yr .ico{width:16px;height:16px}
.mrail .m{border:0;background:var(--surface);color:var(--fg-2);font-weight:600;padding:8px 14px;border-radius:12px;flex:none;font-size:14px;text-transform:capitalize}
.mrail .m[aria-current="date"]{background:var(--accent);color:var(--accent-ink)}
.mrail .m.future{opacity:.45}
.mrail .edit{display:none}
@media (min-width:1100px){
  .mrail{flex-direction:column;overflow:visible;background:var(--surface);border-radius:40px;padding:16px 6px;align-self:start;position:sticky;top:24px;gap:2px}
  .mrail .yr{flex-direction:column;padding:0 0 8px}
  .mrail .yr button{transform:rotate(90deg)}
  .mrail .m{background:none;width:100%;padding:7px 4px}
  .mrail .m[aria-current="date"]{background:none;color:var(--grad-a)}
}
.dash-tools{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.dash{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row dense}
.w{grid-column:span 2;display:flex;flex-direction:column;container-type:inline-size}
.w.mini{grid-column:span 1}
@media (min-width:760px){.w{grid-column:span 1}.w.d2{grid-column:span 2}}
@media (min-width:1300px){.dash{grid-template-columns:repeat(4,minmax(0,1fr))}}
.big{font-family:var(--f-display);font-weight:700;font-size:clamp(18px,10.5cqi,26px);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.w.d2 .big{font-size:clamp(18px,5.5cqi,26px)}
.lbl2{font-size:14px;font-weight:600;color:var(--fg-2)}
.nw{border:0;position:relative;overflow:hidden;justify-content:space-between;gap:14px}
.nw .big{font-size:clamp(22px,12.5cqi,36px)}
.nw .split{display:flex;gap:6px 20px;flex-wrap:wrap;font-size:13px;position:relative;z-index:1}
.nw .split b{display:block;font-size:14.5px}
.nw::after{content:"";position:absolute;right:-50px;top:-50px;width:170px;height:170px;border-radius:50%;background:rgba(255,255,255,.12)}
.mini .spark{height:54px;margin-top:auto;padding-top:8px}
.mini .sub{min-height:20px}
.toplist{display:grid;gap:16px;margin-top:4px}
.toplist .it{display:flex;gap:14px;align-items:center}
.toplist .it b{display:block;font-family:var(--f-display);font-size:18px}
.goal{cursor:pointer}
.pct-big{font-family:var(--f-display);color:var(--teal);font-weight:700;font-size:18px}
.goal .bar{height:14px;margin-top:auto}
.bar .gr{background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 55%,var(--teal)))}
.notes{display:grid;gap:10px}
.note{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:12px;background:var(--surface-2);border-left:4px solid var(--c,var(--accent));font-size:14.5px;font-weight:600;flex-wrap:wrap}
.note .btn{padding:5px 10px;font-size:12.5px}
.srcbars{display:flex;align-items:flex-end;gap:12px;height:170px;padding-top:8px;margin-top:auto}
.srcbars .b{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;height:100%}
.srcbars .b i{display:block;width:min(40px,70%);border-radius:6px 6px 0 0;min-height:4px}
.srcbars .b span{font-size:12px;color:var(--fg-2);text-align:center;line-height:1.2;max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.srcbars .b b{font-size:13px;white-space:nowrap}
.srcbars.names{height:auto;padding:0;margin:0}
.srcbase{height:1px;background:var(--line);margin-bottom:6px}
.maxes{display:flex;gap:22px;flex-wrap:wrap}
.maxes b{display:block;font-family:var(--f-display);font-size:17px}
.maxes span{font-size:12.5px;font-weight:600}
.assets-legend{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin-top:14px}
.assets-legend div{min-width:0}
.assets-legend span{display:flex;gap:6px;align-items:center;font-size:13px;color:var(--fg-2)}
.assets-legend b{font-family:var(--f-display);font-size:15px;white-space:nowrap}
.track{position:relative;overflow:hidden}
.track .inner{background:var(--accent-soft);border-radius:18px;padding:14px 16px;display:grid;gap:12px;align-content:start;flex:1;min-height:170px}
.track .ln{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:baseline;font-size:15px;max-width:72%}
.track .ln b{font-family:var(--f-display);text-align:right;min-width:64px}
.track .art{position:absolute;right:14px;bottom:12px;width:100px;height:100px;color:var(--grad-a);opacity:.9;stroke-width:1.5}
.track select{width:auto;max-width:60%;padding:6px 10px;font-size:13px}
.acclist{display:grid;gap:10px}
.accl{display:flex;align-items:center;gap:12px;min-width:0}
.accl .mid{flex:1;min-width:0}
.accl .t1{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accl .t2{font-size:12px;color:var(--muted)}
.accl b{font-family:var(--f-display);font-size:14.5px;white-space:nowrap;text-align:right}
.accl b small{display:block;font-family:var(--f-body);font-weight:500;font-size:11.5px;color:var(--muted)}
.wfoot{margin-top:auto;padding-top:12px;display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line)}
.gauge{display:grid;justify-items:center;position:relative}
.gauge svg{width:100%;max-width:220px;height:auto;display:block}
.gauge .gv{position:absolute;bottom:2px;left:0;right:0;text-align:center}
.gauge .gv b{display:block;font-family:var(--f-display);font-size:24px;line-height:1.1}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pair div{background:var(--surface-2);border-radius:14px;padding:10px 12px;min-width:0}
.pair span{display:block;font-size:12px;color:var(--muted);font-weight:600}
.pair b{font-family:var(--f-display);font-size:clamp(13px,6.4cqi,16px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.glist{display:grid;gap:14px}
.gitem{display:grid;gap:6px}
.gitem .hd{display:flex;align-items:center;gap:10px;min-width:0}
.gitem .hd .mid{flex:1;min-width:0}
.gitem .hd .t1{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gitem .hd .t2{font-size:12px;color:var(--muted)}
.gitem .ft{display:flex;justify-content:space-between;font-size:12.5px;color:var(--fg-2);gap:8px;flex-wrap:wrap}

/* Ecran de deblocare și modul „ascunde sumele” */
.lock{position:fixed;inset:0;z-index:100;background:var(--bg);display:grid;place-items:center;padding:24px max(16px,env(safe-area-inset-left,0px))}
.lock-box{width:100%;max-width:360px;display:grid;gap:14px;justify-items:center;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:28px 22px}
.lock-box img{border-radius:16px}
.lock-box h1{font-size:24px}
.lock-box .field{width:100%}
.privacy .num,.privacy .balance,.privacy .big,.privacy .amt,.privacy canvas,.privacy .spark{filter:blur(9px);transition:filter .15s}
.privacy .chip.num,.privacy .pct-big{filter:blur(6px)}

/* ===== Tema Grafit: detalii de stil ===== */
[data-theme="graphite"] body{background:radial-gradient(120% 60% at 50% -12%,#2a2a2a 0%,#0b0b0b 38%,#030303 70%) fixed,#030303}
[data-theme="graphite"] h1,[data-theme="graphite"] h2,[data-theme="graphite"] h3{font-weight:500;letter-spacing:-.02em}
[data-theme="graphite"] .card,[data-theme="graphite"] .hold,[data-theme="graphite"] .kpi,[data-theme="graphite"] .sheet,[data-theme="graphite"] .lock-box{
  background:linear-gradient(180deg,#141414 0%,#0b0b0b 100%);border-color:#1e1e1e}
[data-theme="graphite"] .kpi.hero,[data-theme="graphite"] .grad{background:radial-gradient(130% 120% at 0% 0%,#4a4a4a 0%,#1c1c1c 45%,#0c0c0c 100%);border:1px solid #2c2c2c;color:#fff}
[data-theme="graphite"] .nw::after{background:radial-gradient(circle,rgba(255,255,255,.18),rgba(255,255,255,0) 70%)}
[data-theme="graphite"] .top{background:color-mix(in srgb,#030303 82%,transparent)}
[data-theme="graphite"] .rail-in,[data-theme="graphite"] .mrail{background:linear-gradient(180deg,#121212,#080808);border:1px solid #1c1c1c}
[data-theme="graphite"] .tabbar{background:#080808;border-top-color:#1a1a1a}
[data-theme="graphite"] .rail button[aria-current="page"]{background:#1c1c1c;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
[data-theme="graphite"] .rail button[aria-current="page"] .ico,[data-theme="graphite"] .tabbar button[aria-current="page"]{color:#fff}
[data-theme="graphite"] .mrail .m[aria-current="date"]{background:#f2f2f2;color:#0a0a0a}
@media (min-width:1100px){[data-theme="graphite"] .mrail .m[aria-current="date"]{background:none;color:#fff;text-shadow:0 0 12px rgba(255,255,255,.6)}}
[data-theme="graphite"] .btn.primary,[data-theme="graphite"] .fab{background:#f2f2f2;color:#0a0a0a;border-color:transparent;box-shadow:0 0 0 1px rgba(255,255,255,.08),0 8px 28px rgba(255,255,255,.12)}
[data-theme="graphite"] .btn,[data-theme="graphite"] .iconbtn,[data-theme="graphite"] .pill,[data-theme="graphite"] .cur-sel,[data-theme="graphite"] .input{background:#0e0e0e;border-color:#232323}
[data-theme="graphite"] .btn:hover,[data-theme="graphite"] .iconbtn:hover{background:#181818}
[data-theme="graphite"] .seg{background:#121212;border:1px solid #1e1e1e}
[data-theme="graphite"] .seg button[aria-pressed="true"]{background:#262626;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
[data-theme="graphite"] .chip{background:#151515;border:1px solid #262626;color:#c8c8c8}
[data-theme="graphite"] .banner{background:linear-gradient(90deg,#1a1a1a,#0e0e0e);border:1px solid #242424}
[data-theme="graphite"] .note{background:#111;border-left-color:var(--c,#bdbdbd)}
[data-theme="graphite"] .track .inner{background:linear-gradient(180deg,#1a1a1a,#0f0f0f);border:1px solid #232323}
[data-theme="graphite"] .track .art{color:#e6e6e6}
[data-theme="graphite"] .bar .gr{background:linear-gradient(90deg,#7a7a7a,#f2f2f2)}
[data-theme="graphite"] .dash-head .balance{color:#fff;text-shadow:0 0 24px rgba(255,255,255,.18)}
[data-theme="graphite"] .tile{box-shadow:inset 0 1px 0 rgba(255,255,255,.15)}
[data-theme="graphite"] .link{color:#dcdcdc}
[data-theme="graphite"] :focus-visible{outline-color:#fff}

/* Customize sheet */
.wl{display:grid;gap:6px}
.wrow{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:var(--surface-2)}
.wrow .mid{flex:1;min-width:0}
.wrow .t1{font-weight:600;font-size:14px}
.wrow .t2{font-size:12px;color:var(--muted)}
.wrow.off .t1{color:var(--muted)}

/* Sheet / modal */
.overlay{position:fixed;inset:0;z-index:60;background:rgba(5,8,25,.6);display:flex;align-items:flex-end;justify-content:center}
.sheet{background:var(--surface);width:100%;max-width:560px;max-height:92vh;overflow:auto;border-radius:24px 24px 0 0;display:grid;gap:14px;
  padding-top:18px;padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px));padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}
@media (min-width:720px){.overlay{align-items:center;padding:24px}.sheet{border-radius:24px}}
.sheet-h{display:flex;justify-content:space-between;align-items:center;gap:10px}
.sheet-h h3{font-size:20px}
.field{display:grid;gap:6px;min-width:0}
.field>label,.lab{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.amount-row{display:flex;gap:10px;align-items:flex-end}
.amount-in{font-family:var(--f-display);font-size:34px;font-weight:700;border:0;border-bottom:2px solid var(--line);background:none;padding:4px 0;width:100%;border-radius:0;min-width:0}
.amount-in:focus{outline:none;border-color:var(--accent)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.pick{border:1px solid var(--line);background:var(--surface);padding:8px 12px;border-radius:12px;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:8px}
.pick .ico{width:16px;height:16px}
.pick[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-soft);color:var(--fg)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.actions{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;padding-top:4px}
.actions .r{display:flex;gap:10px;margin-left:auto}
.swatches{display:flex;gap:8px;flex-wrap:wrap}
.sw{width:34px;height:34px;border-radius:10px;border:2px solid transparent;display:grid;place-items:center;background:var(--surface-2);color:var(--fg-2)}
.sw .ico{width:18px;height:18px}
.sw[aria-pressed="true"]{border-color:var(--fg);color:var(--fg)}
.results{display:grid;max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:12px}
.results button{display:flex;gap:10px;align-items:center;border:0;border-bottom:1px solid var(--line);background:none;padding:9px 12px;text-align:left}
.results button:hover{background:var(--surface-2)}
.results img{width:22px;height:22px;border-radius:50%}
.help{font-size:12.5px;color:var(--muted);line-height:1.5;margin:0}
.check{display:flex;gap:10px;align-items:center;font-size:14px}
.check input{width:18px;height:18px;accent-color:var(--accent)}
.menu-list{display:grid;gap:6px}
.menu-list button{display:flex;align-items:center;gap:14px;border:0;background:var(--surface-2);padding:14px;border-radius:14px;font-weight:600;font-size:15px;text-align:left}
.menu-list button .ico{color:var(--accent)}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(150px + env(safe-area-inset-bottom,0px));z-index:80;background:var(--fg);color:var(--bg);padding:10px 16px;border-radius:12px;font-weight:600;font-size:14px;max-width:calc(100% - 32px)}
@media (min-width:900px){.toast{bottom:32px}}
.set-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.set-row:last-child{border-bottom:0}
.set-row .mid{flex:1;min-width:200px}
.rates{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;margin-top:10px}
.rate{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;background:var(--surface-2);font-size:13.5px}
.rate b{width:40px;flex:none}
.rate input{width:100%;min-width:0;padding:7px 8px;border-radius:9px;border:1px solid var(--line);background:var(--surface);text-align:right}
.rate .m{font-size:11px;color:var(--warn);font-weight:700}
.switch{position:relative;width:46px;height:28px;flex:none;display:block}
.switch input{appearance:none;-webkit-appearance:none;width:46px;height:28px;border-radius:99px;background:var(--surface);border:1px solid var(--line);margin:0;cursor:pointer;transition:background .15s}
.switch input:checked{background:var(--accent)}
.switch input::after{content:"";position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.3);transition:transform .15s}
.switch input:checked::after{transform:translateX(18px)}

/* ===== Ivoire ===== */
[data-theme="ivory"] h1,[data-theme="ivory"] h2,[data-theme="ivory"] h3{font-weight:500;letter-spacing:-.025em}
[data-theme="ivory"] .card,[data-theme="ivory"] .hold,[data-theme="ivory"] .kpi,[data-theme="ivory"] .sheet{border:1px solid var(--line);box-shadow:var(--shadow)}
[data-theme="ivory"] .kpi.hero,[data-theme="ivory"] .grad{background:linear-gradient(150deg,#2a2824 0%,#111 60%,#000 100%);color:#f6f4ef}
[data-theme="ivory"] .nw::after{background:radial-gradient(circle,rgba(214,190,140,.28),rgba(214,190,140,0) 70%)}
[data-theme="ivory"] .rail-in,[data-theme="ivory"] .mrail{background:#fff;border:1px solid var(--line)}
[data-theme="ivory"] .rail button[aria-current="page"]{background:#141414;color:#f6f4ef}
[data-theme="ivory"] .rail button[aria-current="page"] .ico{color:#f6f4ef}
[data-theme="ivory"] .mrail .m[aria-current="date"]{background:#141414;color:#fff}
[data-theme="ivory"] .seg button[aria-pressed="true"]{background:#141414;color:#fff;box-shadow:none}
[data-theme="ivory"] .pick[aria-pressed="true"]{background:#141414;color:#fff;border-color:#141414}
[data-theme="ivory"] .fab{background:#141414;box-shadow:0 10px 28px rgba(20,20,20,.25)}
[data-theme="ivory"] .bar .gr{background:linear-gradient(90deg,#8a7a55,#141414)}
[data-theme="ivory"] .dash-head .balance{color:#141414;font-weight:600}
[data-theme="ivory"] .banner{background:#fff;border:1px solid var(--line)}
[data-theme="ivory"] .tabbar{background:#fffdf9}
[data-theme="ivory"] .tabbar button[aria-current="page"]{color:#141414}

/* ===== Onyx ===== */
[data-theme="onyx"] body{background:radial-gradient(110% 55% at 50% -10%,#2a2416 0%,#0b0a09 42%,#060607 75%) fixed,#060607}
[data-theme="onyx"] h1,[data-theme="onyx"] h2,[data-theme="onyx"] h3{font-weight:500;letter-spacing:-.02em}
[data-theme="onyx"] .card,[data-theme="onyx"] .hold,[data-theme="onyx"] .kpi,[data-theme="onyx"] .sheet,[data-theme="onyx"] .lock-box{background:linear-gradient(180deg,#141416,#0d0d0f);border:1px solid rgba(212,175,106,.13);box-shadow:var(--shadow)}
[data-theme="onyx"] .kpi.hero,[data-theme="onyx"] .grad{background:radial-gradient(130% 120% at 0% 0%,#5a4622 0%,#241c0e 45%,#0c0b09 100%);border:1px solid rgba(212,175,106,.35);color:#fbf3df}
[data-theme="onyx"] .nw::after{background:radial-gradient(circle,rgba(230,200,138,.28),rgba(230,200,138,0) 70%)}
[data-theme="onyx"] .top{background:color-mix(in srgb,#060607 84%,transparent)}
[data-theme="onyx"] .rail-in,[data-theme="onyx"] .mrail{background:linear-gradient(180deg,#121113,#09090a);border:1px solid rgba(212,175,106,.14)}
[data-theme="onyx"] .rail button[aria-current="page"]{background:rgba(212,175,106,.12)}
[data-theme="onyx"] .mrail .m[aria-current="date"]{background:linear-gradient(135deg,#f0d59a,#b8904a);color:#17120a}
[data-theme="onyx"] .btn.primary,[data-theme="onyx"] .fab{background:linear-gradient(135deg,#f0d59a,#b8904a);color:#17120a;border-color:transparent;box-shadow:0 8px 28px rgba(212,175,106,.22)}
[data-theme="onyx"] .btn,[data-theme="onyx"] .iconbtn,[data-theme="onyx"] .pill,[data-theme="onyx"] .cur-sel,[data-theme="onyx"] .input{background:#0f0f11;border-color:#26242a}
[data-theme="onyx"] .seg{background:#121114;border:1px solid #232127}
[data-theme="onyx"] .seg button[aria-pressed="true"]{background:#2a2418;color:#f0d59a;box-shadow:none}
[data-theme="onyx"] .bar .gr{background:linear-gradient(90deg,#8a6a32,#f0d59a)}
[data-theme="onyx"] .dash-head .balance{background:linear-gradient(90deg,#f6e2b0,#c9a25a);-webkit-background-clip:text;background-clip:text;color:transparent}
[data-theme="onyx"] .tabbar{background:#09090a;border-top-color:#1f1d22}
[data-theme="onyx"] .banner{background:linear-gradient(90deg,#1d1a14,#0f0e0c);border:1px solid rgba(212,175,106,.18)}

/* ===== Rubin: roșu sus și în meniu, alb dedesubt ===== */
[data-theme="rubin"] .top{background:linear-gradient(180deg,#c8102e,#b00d28);color:#fff;box-shadow:0 10px 30px rgba(140,10,31,.18)}
[data-theme="rubin"] .top.home{border-radius:0 0 28px 28px;margin-bottom:6px}
[data-theme="rubin"] .top .sub,[data-theme="rubin"] .dash-head .eyebrow{color:rgba(255,255,255,.78)}
[data-theme="rubin"] .dash-head .balance{color:#fff}
[data-theme="rubin"] .top .iconbtn,[data-theme="rubin"] .top .cur-sel,[data-theme="rubin"] .top .pill,[data-theme="rubin"] .top .month{background-color:rgba(255,255,255,.14);border-color:rgba(255,255,255,.28);color:#fff}
[data-theme="rubin"] .top .cur-sel option{color:#1f0b0f}
[data-theme="rubin"] .top .month button{color:#fff}
[data-theme="rubin"] .top .month button:hover,[data-theme="rubin"] .top .iconbtn:hover{background:rgba(255,255,255,.22)}
[data-theme="rubin"] .rail-in{background:linear-gradient(180deg,#c8102e,#8c0a1f);color:#fff}
[data-theme="rubin"] .rail button{color:rgba(255,255,255,.72)}
[data-theme="rubin"] .rail button:hover{background:rgba(255,255,255,.12);color:#fff}
[data-theme="rubin"] .rail button[aria-current="page"]{background:#fff;color:#c8102e}
[data-theme="rubin"] .rail button[aria-current="page"] .ico{color:#c8102e}
[data-theme="rubin"] .card,[data-theme="rubin"] .hold,[data-theme="rubin"] .kpi{border:1px solid var(--line);box-shadow:var(--shadow)}
[data-theme="rubin"] .kpi.hero,[data-theme="rubin"] .grad{background:linear-gradient(135deg,#e3203f 0%,#c8102e 50%,#8c0a1f 100%)}
[data-theme="rubin"] .mrail .m[aria-current="date"]{background:#c8102e;color:#fff}
[data-theme="rubin"] .fab{background:#c8102e;box-shadow:0 10px 26px rgba(200,16,46,.35)}
[data-theme="rubin"] .tabbar{border-top:3px solid #c8102e}
[data-theme="rubin"] .bar .gr{background:linear-gradient(90deg,#f08a9a,#c8102e)}

/* alegerea temei în Setări */
.themes{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-top:10px}
.themes .pick{justify-content:flex-start}
.thsw{width:22px;height:22px;border-radius:50%;flex:none;border:1px solid rgba(127,127,127,.35)}
.hold.pocket .acts{display:flex;gap:6px;flex-wrap:wrap}

/* pictograme de cont cu text (ex. R, BCR, ING) */
.tile.mono{font-family:var(--f-display);font-weight:800;letter-spacing:-.03em;line-height:1;--fs:18px;overflow:hidden}
.tile.mono b{font-size:var(--fs);font-weight:800}
.tile.mono.l2{--fs:15px}.tile.mono.l3{--fs:12px}.tile.mono.l4{--fs:10px;letter-spacing:-.05em}
.tile.sm.mono{--fs:15px}.tile.sm.mono.l2{--fs:12.5px}.tile.sm.mono.l3{--fs:10px}.tile.sm.mono.l4{--fs:8.5px}
.tile.lg.mono{--fs:22px}.tile.lg.mono.l2{--fs:18px}.tile.lg.mono.l3{--fs:15px}.tile.lg.mono.l4{--fs:12px}
.tile.rnd{border-radius:50%!important}
.tile.st-solid{background:var(--c);color:#fff}
.tile.st-gradient{background:linear-gradient(140deg,color-mix(in srgb,var(--c) 55%,#fff) 0%,var(--c) 55%,color-mix(in srgb,var(--c) 65%,#000) 100%);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.25)}
.tile.st-soft{background:color-mix(in srgb,var(--c) 20%,transparent);color:color-mix(in srgb,var(--c) 75%,var(--fg))}
.tile.st-outline{background:transparent;color:var(--c);box-shadow:inset 0 0 0 2px var(--c)}
.tile.st-dark{background:#0b0b0f;color:var(--c);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c) 45%,transparent)}
.tile.st-light{background:#fff;color:var(--c);box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}
#af-bsty .pick{gap:8px}

/* carduri bancare */
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.bcard{position:relative;aspect-ratio:1.586;border:0;border-radius:18px;padding:16px 18px;display:grid;grid-template-rows:auto 1fr auto auto;gap:4px;text-align:left;color:#fff;overflow:hidden;
  background:radial-gradient(120% 140% at 100% 0%,color-mix(in srgb,var(--c) 55%,#fff) 0%,transparent 45%),linear-gradient(135deg,var(--c) 0%,color-mix(in srgb,var(--c) 55%,#000) 100%);
  box-shadow:0 10px 26px color-mix(in srgb,var(--c) 30%,transparent),inset 0 1px 0 rgba(255,255,255,.18)}
.bcard::after{content:"";position:absolute;right:-30%;bottom:-60%;width:90%;aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.07)}
.bc-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:15px;position:relative;z-index:1}
.bc-top b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bc-chip{width:38px;height:28px;border-radius:7px;background:linear-gradient(135deg,#f3dd9b,#b8913e);align-self:center;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.bc-num{font-size:18px;letter-spacing:.12em;font-weight:600;position:relative;z-index:1}
.bc-bot{display:flex;justify-content:space-between;align-items:flex-end;gap:8px;font-size:12.5px;opacity:.92;position:relative;z-index:1}
.bc-bot span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bc-bot i{font-style:italic;font-weight:800;font-size:15px;letter-spacing:.02em}
.bc-sp{font-size:12px;opacity:.85;position:relative;z-index:1}
.bcard.add{background:none;border:2px dashed var(--line);color:var(--muted);box-shadow:none;place-items:center;align-content:center;grid-template-rows:none;text-align:center}
.bcard.add::after{display:none}
#cf-prev .bcard{max-width:320px;width:100%;margin:0 auto}
.cdot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:middle}

/* conturi grupate pe bancă, apoi pe tip */
.bankgrp{display:grid;gap:10px;padding-bottom:6px;border-bottom:1px solid var(--line);margin-bottom:6px}
.subsec{display:grid;gap:8px}
.subsec h3{font-size:14px;font-weight:600;color:var(--fg-2);display:flex;justify-content:space-between;align-items:center;gap:8px;margin:4px 2px 0;text-transform:uppercase;letter-spacing:.04em}
.subsec h3 .sub{text-transform:none;letter-spacing:0;font-weight:600}

/* investiții: listă compactă de active */
.hl-card{padding-top:10px}
.hl-list{display:grid}
.hl{display:grid;grid-template-columns:40px minmax(0,1.4fr) minmax(0,.9fr) minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 2px;border-top:1px solid var(--line);cursor:pointer}
.hl:first-child{border-top:0}
.hl:hover{background:color-mix(in srgb,var(--surface-2) 50%,transparent)}
.hl .av{width:38px;height:38px;border-radius:11px;font-size:11px}
.hl-mid{display:grid;min-width:0;gap:1px}.hl-mid b{font-size:15px}.hl-mid .sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12.5px}
.hl-px{display:grid;justify-items:end;gap:3px;font-size:13.5px}
.hl-val{display:grid;justify-items:end;gap:1px;font-size:12.5px}.hl-val b{font-size:15px}
.hl-act{display:flex;gap:4px}.hl-act .iconbtn{width:32px;height:32px}
@media (max-width:700px){.hl{grid-template-columns:36px minmax(0,1fr) auto;gap:10px}.hl-px,.hl-act{display:none}}
.kid .kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){.kid .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* aranjarea widget-urilor cu mouse-ul */
.card.w{position:relative}
.wgrip{position:absolute;top:5px;left:50%;transform:translateX(-50%);width:44px;height:12px;border-radius:6px;cursor:grab;opacity:0;transition:opacity .15s;z-index:2;
  background:radial-gradient(circle,currentColor 1.2px,transparent 1.6px) 0 0/8px 6px;color:var(--muted)}
.card.w:hover .wgrip{opacity:.8}
.wgrip:active{cursor:grabbing}
.card.w.dragging{opacity:.35;outline:2px dashed var(--accent);outline-offset:-2px}
.dash-tools{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
@media (pointer:coarse){.wgrip,.dnd-hint{display:none}}
