/* ── CONTENT ── */
.content { padding: 13px; padding-bottom: 36px; background: #EEF1F5; }
.tab-pane { display:none; animation: fadeUp .25s ease; }
.tab-pane.active { display:block; }
@keyframes fadeUp { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:translateY(0); } }

/* ── CARD ── */
.card {
  background: #FFFFFF;
  border-radius: 14px;
  padding: 16px;
  margin-bottom: 10px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06), 0 6px 12px rgba(15, 23, 42, 0.06), 0 18px 36px rgba(15, 23, 42, 0.11);
  border: 1px solid rgba(0, 0, 0, 0.06);
  position: relative;
  overflow: hidden;
}
.card::before {
  display: none;
}
.card-title {
  font-size: 13.5px; font-weight: 700; margin-bottom: 13px;
  display: flex; align-items: center; gap: 8px; color: var(--t-dark-1);
}
.card-icon {
  width:26px; height:26px; border-radius:8px;
  display:flex; align-items:center; justify-content:center; font-size:13px;
  background: var(--prm-surface-deep);
  border: 1px solid rgba(20, 35, 61, 0.06); flex-shrink:0;
}

/* ── FORM ── */
label {
  display:block; font-size:10.5px; font-weight:700; color:var(--t-dark-3);
  margin-bottom:4px; margin-top:10px; letter-spacing:.3px; text-transform:uppercase;
}
label:first-of-type { margin-top:0; }
input, select, textarea {
  width:100%; padding:10px 12px;
  border: 1.5px solid rgba(180,210,240,0.8);
  border-radius: var(--radius-sm);
  font-size:14px;
  background: var(--sky-4);
  color: var(--t-dark-1);
  transition: all .2s; font-family:'DM Sans',sans-serif;
  box-shadow: inset 0 1px 3px rgba(20,60,120,0.07);
}
input::placeholder, textarea::placeholder { color: var(--t-dark-4); }
input:focus, select:focus, textarea:focus {
  outline:none; border-color: var(--gold);
  background: #FFFFFF;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.14), inset 0 1px 3px rgba(20,60,120,0.05);
}
select option { background: #fff; color: var(--t-dark-1); }
textarea { min-height:65px; resize:vertical; }
.input-row { display:grid; grid-template-columns:1.2fr 0.8fr; gap:9px; }
.input-row-3 { display:grid; grid-template-columns:1fr 1fr 1fr; gap:8px; }

/* ── BUTTONS ── */
.btn {
  width:100%; padding:12px; cursor:pointer; margin-top:11px;
  background: linear-gradient(180deg, #182A49 0%, #14233D 100%);
  color: #FFFFFF; border:1px solid rgba(20,35,61,0.12); border-radius:var(--radius-sm);
  font-size:13.5px; font-weight:600; transition:all .15s;
  box-shadow: 0 4px 12px rgba(20,35,61,0.14);
  font-family:'DM Sans',sans-serif; letter-spacing:.2px;
}
.btn:active { transform:scale(.98); opacity:.92; }
.btn:disabled { opacity:.4; cursor:not-allowed; transform:none; }
.btn-dark {
  background: #FFFFFF;
  color: var(--prm-navy); border: 1px solid rgba(20,35,61,0.14);
  box-shadow: 0 2px 8px rgba(20,35,61,0.06);
}
.btn-green { background:var(--prm-emerald); color:#fff; border:none; box-shadow:0 3px 10px rgba(16,162,107,0.2); }
.btn-red { background:#fff; color:var(--prm-danger); border:1px solid rgba(153,27,27,0.22); box-shadow:none; }
.btn-sm { padding:7px 14px; font-size:12px; width:auto; margin-top:0; border-radius:8px; }

/* ── RESULT ── */
.result { margin-top:11px; padding:11px; border-radius:var(--radius-sm); font-size:12.5px; display:none; line-height:1.6; }
.result.show { display:block; }
.result.success { background:var(--green-bg); border:1px solid var(--green-border); color:#0a6e3a; }
.result.error   { background:var(--red-bg); border:1px solid rgba(217,48,37,0.3); color:#a02020; }
.result.info    { background:var(--blue-bg); border:1px solid rgba(26,111,212,0.3); color:#1255a0; }


/* ── SALARY ── */
.salary-result {
  background: linear-gradient(180deg, #182A49 0%, #14233D 100%);
  border: 1px solid var(--gold-border);
  border-radius:12px; padding:13px; margin-top:11px; display:none;
}
.salary-result.show { display:block; }
.sal-row { display:flex; justify-content:space-between; font-size:12.5px; padding:5px 0; border-bottom:1px solid rgba(180,210,240,0.5); color:var(--t-light-2); }
.sal-row:last-child { border-bottom:none; }
.sal-row.total { font-size:15px; font-weight:800; padding-top:9px; margin-top:4px; border-top:1px solid var(--gold-border); border-bottom:none; color:var(--gold-light); }
.sal-row.employer { color:#fca5a5; font-weight:600; }
.sal-divider { font-size:9.5px; font-weight:700; color:var(--gold); opacity:.9; padding:8px 0 2px; text-transform:uppercase; letter-spacing:.8px; }
.sal-note { font-size:11px; color:var(--t-light-3); margin-top:2px; font-style:italic; }
.sal-benefit { background:rgba(201,168,76,0.1); border:1px solid var(--gold-border); border-radius:8px; padding:8px 10px; margin-top:8px; font-size:11.5px; color:var(--gold-light); }

/* ── CHAT ── */
.chat-box { height:280px; overflow-y:auto; background:var(--sky-4); border-radius:12px; padding:11px; margin-bottom:9px; border:1px solid rgba(180,210,240,0.7); }
.msg { max-width:84%; padding:9px 12px; border-radius:14px; font-size:13px; line-height:1.45; margin-bottom:8px; word-wrap:break-word; }
.msg.bot { background:#FFFFFF; border:1px solid rgba(180,210,240,0.8); border-bottom-left-radius:4px; color:var(--t-dark-2); box-shadow:0 2px 8px rgba(20,60,120,0.07); }
.msg.user { background:linear-gradient(180deg, #182A49 0%, #14233D 100%); border:1px solid var(--gold-border); color:var(--gold-light); margin-left:auto; border-bottom-right-radius:4px; }
.msg.typing { background:#fff; border:1px solid rgba(180,210,240,0.6); border-bottom-left-radius:4px; color:var(--t-dark-4); font-style:italic; }
.chat-input-row { display:flex; gap:8px; }
.chat-input { flex:1; margin:0; }
.chat-send { width:auto; padding:10px 16px; margin:0; border-radius:var(--radius-sm); white-space:nowrap; }

/* ── EXPENSES ── */
.exp-type-tabs { display:flex; gap:6px; margin-bottom:10px; }
.exp-type-btn {
  flex:1; min-height:48px !important; padding:8px 10px !important;
  border:1.5px solid rgba(180,210,240,0.8); border-radius:10px !important;
  background:var(--sky-4); font-size:11.5px !important; font-weight:700; color:var(--t-dark-3);
  cursor:pointer; transition:all .2s; line-height:1.25 !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  gap:6px !important; text-align:center; box-shadow:none !important;
}
.exp-type-btn .content-svg-icon {
  width:15px !important; height:15px !important; flex-shrink:0 !important;
}
.exp-type-btn.active { border-color:var(--prm-navy); background:linear-gradient(180deg, #182A49 0%, #14233D 100%); color:#FFFFFF; }
.exp-form-section { display:none; }
.exp-form-section.active { display:block; }
#dep-vat-included {
  width:18px !important; height:18px !important; min-height:18px !important;
  padding:0 !important; margin:0 !important; flex:0 0 18px !important;
  accent-color:var(--prm-emerald); cursor:pointer; box-shadow:none !important;
}
#dep-vat-included + label {
  font-size:12px !important; line-height:1.2 !important; cursor:pointer; margin:0 !important;
}
#fa-dep-vat-row {
  display:flex; align-items:center; gap:8px; padding-top:16px; align-self:end;
}
#form-deprec label {
  font-size:11px; margin-bottom:3px;
}
#form-deprec input:not([type=checkbox]):not([type=hidden]),
#form-deprec select {
  padding:6px 8px; font-size:12px; min-height:32px;
}
#form-deprec textarea#fa-note {
  min-height:40px; padding:6px 8px; font-size:12px;
}
#form-deprec .fa-dep-warn {
  padding:7px 10px !important; margin-bottom:8px !important; font-size:10.5px !important; line-height:1.45 !important;
}
#form-deprec #dep-preview {
  margin-top:7px !important; padding:7px 9px !important; font-size:11px !important; line-height:1.45 !important;
}
.fa-v2-section {
  grid-column:1/-1;
  margin-top:4px;
  padding:8px 10px;
  background:#F2F5F9;
  border:1px solid rgba(20,35,61,0.08);
  border-radius:9px;
}
.fa-v2-section-title {
  font-size:11px;
  font-weight:800;
  color:var(--prm-navy);
  margin-bottom:6px;
}
.fa-v2-hint {
  font-size:10px;
  color:var(--t-dark-4);
  line-height:1.45;
  margin:4px 0 6px;
}
.fa-v2-warn {
  font-size:10.5px;
  color:var(--prm-gold);
  background:#F8FAFC;
  border:1px solid rgba(212,175,55,0.28);
  border-radius:7px;
  padding:6px 8px;
  margin-top:6px;
  line-height:1.45;
}
#form-deprec .fa-v2-section label { font-size:11px; margin-bottom:3px; }
#form-deprec .fa-v2-section input:not([type=checkbox]),
#form-deprec .fa-v2-section select,
#form-deprec .fa-v2-section textarea {
  padding:6px 8px; font-size:12px; min-height:32px;
}
#form-deprec .fa-v2-section input[type=checkbox] {
  width:18px !important; height:18px !important; min-height:18px !important;
  padding:0 !important; margin:0 !important; flex:0 0 18px !important;
  accent-color:var(--prm-emerald); cursor:pointer; box-shadow:none !important;
}
#form-deprec .fa-v2-check-row {
  display:flex; align-items:flex-start; gap:8px; margin-top:4px;
}
#form-deprec .fa-v2-check-row label {
  font-size:11.5px !important; line-height:1.3 !important; cursor:pointer; margin:0 !important;
}
.fa-reg-kpi-grid {
  display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin-bottom:12px;
}
@media (max-width:1100px) { .fa-reg-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:520px) { .fa-reg-kpi-grid { grid-template-columns:1fr; } }
.fa-reg-kpi-card {
  background:#fff; border:1px solid rgba(20,35,61,0.08); border-radius:12px; padding:10px 12px;
  box-shadow:0 1px 2px rgba(20,35,61,0.04),0 8px 20px rgba(20,35,61,0.06);
}
.fa-reg-kpi-label { font-size:10px; color:var(--t-dark-3); line-height:1.35; margin-bottom:3px; }
.fa-reg-kpi-val { font-size:15px; font-weight:800; color:var(--navy-2); }
.fa-reg-kpi-hint { font-size:9px; color:var(--t-dark-4); margin-top:3px; line-height:1.3; }
.fa-reg-filters {
  display:flex; flex-wrap:wrap; gap:8px; align-items:flex-end; margin-bottom:10px;
  padding:10px 12px; background:#F2F5F9; border:1px solid rgba(20,35,61,0.08); border-radius:12px;
}
.fa-reg-filters label { font-size:10.5px; font-weight:700; color:var(--t-dark-2); display:block; margin-bottom:3px; }
.fa-reg-filters select { font-size:12px; padding:6px 8px; min-width:130px; }
.fa-reg-cards-grid {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:10px;
}
.fa-reg-asset-card {
  background:#fff; border:1px solid rgba(20,35,61,0.08); border-radius:14px; padding:12px 14px;
  cursor:pointer; transition:box-shadow .15s,border-color .15s;
  box-shadow:0 1px 2px rgba(20,35,61,0.04),0 8px 20px rgba(20,35,61,0.06);
}
.fa-reg-asset-card:hover {
  box-shadow:0 4px 14px rgba(20,35,61,0.10); border-color:rgba(201,166,107,0.35);
}
.fa-reg-asset-card.has-warn { border-color:rgba(201,166,107,0.45); }
.fa-reg-card-title { font-size:13px; font-weight:800; color:var(--t-dark-1); margin-bottom:4px; line-height:1.35; }
.fa-reg-card-meta { font-size:10.5px; color:var(--t-dark-3); line-height:1.45; margin-bottom:8px; }
.fa-reg-card-row { display:flex; justify-content:space-between; gap:8px; font-size:11px; padding:3px 0; border-bottom:1px solid rgba(180,210,240,0.22); }
.fa-reg-card-row:last-child { border-bottom:none; }
.fa-reg-card-row span:first-child { color:var(--t-dark-3); }
.fa-reg-card-row span:last-child { font-weight:700; text-align:right; }
.fa-reg-badges { display:flex; flex-wrap:wrap; gap:4px; margin-top:8px; }
.fa-reg-badge {
  font-size:9px; font-weight:700; padding:2px 7px; border-radius:20px; white-space:nowrap;
}
.fa-reg-badge.ok { background:rgba(16,162,107,0.08); color:#0F5C3D; border:1px solid rgba(16,162,107,0.22); }
.fa-reg-badge.warn { background:#F8FAFC; color:var(--prm-gold); border:1px solid rgba(212,175,55,0.28); }
.fa-reg-badge.muted { background:rgba(100,116,139,0.1); color:#64748B; border:1px solid rgba(100,116,139,0.22); }
.fa-reg-badge.danger { background:rgba(239,68,68,0.08); color:#B91C1C; border:1px solid rgba(239,68,68,0.22); }
.exp-item { display:flex; justify-content:space-between; align-items:flex-start; padding:9px 0; border-bottom:1px solid rgba(180,210,240,0.5); gap:7px; }
.exp-item:last-child { border-bottom:none; }
.exp-item-left { flex:1; min-width:0; }
.exp-item-name { font-size:12.5px; font-weight:600; color:var(--t-dark-1); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.exp-item-meta { font-size:10.5px; color:var(--t-dark-3); margin-top:1px; }
.exp-item-right { text-align:right; flex-shrink:0; }
.exp-item-amount { font-size:13.5px; font-weight:700; color:var(--red); }
.exp-badge { display:inline-block; font-size:9px; font-weight:700; padding:2px 6px; border-radius:20px; margin-bottom:3px; }
.exp-badge.current { background:var(--red-bg); color:var(--red); }
.exp-badge.deprec  { background:#E8EDF3; color:var(--prm-text-secondary); }
.exp-badge.service { background:var(--green-bg); color:var(--green); }
.exp-summary { background:var(--green-bg); border:1px solid var(--green-border); border-radius:12px; padding:13px; margin-top:4px; }
.exp-summary-row { display:flex; justify-content:space-between; font-size:12.5px; padding:3px 0; color:#0a6e3a; }
.exp-summary-total { font-size:15px; font-weight:800; padding-top:7px; margin-top:5px; border-top:1px dashed rgba(15,158,90,0.4); }
.exp-delete { background:none; border:none; color:var(--t-dark-4); font-size:15px; cursor:pointer; padding:2px 3px; line-height:1; flex-shrink:0; }
.exp-delete:hover { color:var(--red); }
.empty-state { text-align:center; padding:20px 0; color:var(--t-dark-4); font-size:12.5px; }

/* ── VAT ── */
.vat-summary { background:#F8FAFC; padding:13px; border-radius:12px; margin-top:11px; border:1px solid rgba(212,175,55,0.28); }
.vat-line { display:flex; justify-content:space-between; font-size:13px; margin:5px 0; color:var(--prm-gold); }
.vat-total { font-weight:800; font-size:16px; padding-top:7px; margin-top:7px; border-top:1px dashed rgba(212,175,55,0.28); color:var(--prm-gold); }

/* ── CALENDAR ── */
.cal-filter-tabs { display:flex; gap:5px; margin-bottom:11px; flex-wrap:wrap; }
.cal-filter-btn {
  padding:5px 11px; border:1.5px solid rgba(180,210,240,0.8); border-radius:20px;
  background:var(--card-bg); font-size:10.5px; font-weight:600; color:var(--t-dark-3); cursor:pointer; transition:all .2s;
}
.cal-filter-btn.active { border-color:var(--gold); background:rgba(201,168,76,0.1); color:var(--gold-dark); }

/* ── CLIENTS ── */
.client-item { display:flex; justify-content:space-between; align-items:center; padding:10px 0; border-bottom:1px solid rgba(180,210,240,0.5); gap:8px; }
.client-item:last-child { border-bottom:none; }
.client-avatar { width:34px; height:34px; border-radius:10px; background:linear-gradient(135deg,var(--gold-dark),var(--gold)); display:flex; align-items:center; justify-content:center; color:var(--navy-1); font-weight:800; font-size:13px; flex-shrink:0; box-shadow:0 2px 8px rgba(201,168,76,0.35); }
.client-info { flex:1; min-width:0; }
.client-name { font-size:13px; font-weight:700; color:var(--t-dark-1); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.client-meta { font-size:10.5px; color:var(--t-dark-3); margin-top:1px; }
.client-delete { background:none; border:none; color:var(--t-dark-4); font-size:15px; cursor:pointer; padding:3px; }
.client-delete:hover { color:var(--red); }
.client-tag { display:inline-block; font-size:9px; font-weight:700; padding:2px 6px; border-radius:20px; }
.client-tag.vat    { background:var(--blue-bg); color:var(--blue-acc); }
.client-tag.no-vat { background:var(--sky-4); color:var(--t-dark-3); }

/* ── P&L ── */
.pl-row { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px solid rgba(180,210,240,0.5); font-size:13px; }
.pl-row:last-child { border-bottom:none; }
.pl-row.section-header { font-weight:700; font-size:11px; text-transform:uppercase; letter-spacing:.5px; padding-top:12px; color:var(--t-dark-3); }
.pl-row.total-row { font-weight:800; font-size:15.5px; padding-top:10px; margin-top:4px; border-top:2px solid rgba(180,210,240,0.6); border-bottom:none; }
.pl-pos { color:var(--green); font-weight:700; }
.pl-neg { color:var(--red); font-weight:700; }
.pl-card-header { background:linear-gradient(135deg, var(--navy-2), var(--navy-4)); border:1px solid var(--gold-border); border-radius:12px; padding:14px; margin-bottom:11px; }
.pl-summary-val { font-family:'Playfair Display',serif; font-size:28px; font-weight:800; }

/* ── INFO BOX ── */
.info-dark { background:linear-gradient(135deg, var(--navy-2), var(--navy-3)); border:1px solid var(--gold-border); border-radius:var(--radius-sm); padding:11px 13px; font-size:11.5px; color:var(--t-light-2); line-height:1.8; }
.info-dark b { color:var(--gold-light); }

/* ── AUTH SCREEN ── */
.auth-overlay {
  display: none; position: fixed; inset: 0; z-index: 300;
  background: linear-gradient(145deg, var(--sky-1) 0%, var(--sky-2) 100%);
  align-items: center; justify-content: center; padding: 20px;
  /* The register card is ~830px tall. Without this, a fixed non-scrolling
     overlay CLIPPED it on short viewports: below ~520px height the login/
     register switcher and the submit button were unreachable — i.e. a phone in
     landscape (or a small phone) could not finish signing up at all. */
  overflow-y: auto; overscroll-behavior: contain;
}
.auth-overlay.show { display: flex; }
.auth-box {
  background: #fff; border-radius: 20px; padding: 28px 22px;
  width: 100%; max-width: 360px;
  box-shadow: 0 20px 60px rgba(20,60,120,0.15), 0 0 0 1px rgba(180,210,240,0.5);
  position: relative;
  /* `margin:auto` keeps the card centred while it fits and lets it grow past the
     viewport (scrolling) when it does not — `align-items:center` alone clips. */
  margin: auto;
}
.auth-logo { text-align: center; margin-bottom: 20px; }
.auth-logo-icon { font-size: 36px; margin-bottom: 6px; }
.auth-logo-title { font-family: 'Playfair Display', serif; font-size: 22px; font-weight: 800; color: var(--navy-2); }
.auth-logo-sub { font-size: 11px; color: var(--t-dark-3); margin-top: 2px; letter-spacing: .5px; }
.auth-tabs { display: flex; background: var(--sky-4); border-radius: 10px; padding: 3px; margin-bottom: 20px; }
.auth-tab { flex: 1; padding: 8px; text-align: center; font-size: 13px; font-weight: 700;
  color: var(--t-dark-3); cursor: pointer; border-radius: 8px; transition: all .2s; }
.auth-tab.active { background: #fff; color: var(--navy-2);
  box-shadow: 0 2px 8px rgba(20,60,120,0.1); }
.auth-error { background: var(--red-bg); border: 1px solid rgba(217,48,37,0.3);
  border-radius: 8px; padding: 9px 12px; font-size: 12px; color: var(--red);
  margin-bottom: 12px; display: none; }
.auth-error.show { display: block; }
.auth-success { background: var(--green-bg); border: 1px solid var(--green-border);
  border-radius: 8px; padding: 9px 12px; font-size: 12px; color: var(--green);
  margin-bottom: 12px; display: none; }
.auth-success.show { display: block; }
.user-bar { display: flex; justify-content: space-between; align-items: center;
  padding: 7px 14px; background: rgba(201,168,76,0.08);
  border-bottom: 1px solid var(--gold-border); }
.user-bar-email { font-size: 11px; color: var(--t-dark-3); font-weight: 600; }
.user-bar-logout { font-size: 11px; font-weight: 700; color: var(--red);
  background: none; border: none; cursor: pointer; }
/* ── BALANCE TAB ── */
.bal-section-title { font-size: 10.5px; font-weight: 700; color: var(--t-dark-3);
  text-transform: uppercase; letter-spacing: .4px; padding: 10px 0 5px; }
.bal-total-row { display: flex; justify-content: space-between; align-items: center;
  padding: 10px 12px; border-radius: 10px; margin-top: 10px; }
.bal-total-row.balanced { background: var(--green-bg); border: 1px solid var(--green-border); }
.bal-total-row.unbalanced { background: var(--red-bg); border: 1px solid rgba(217,48,37,0.3); }
.bal-total-label { font-size: 13px; font-weight: 700; }
.bal-total-val { font-size: 16px; font-weight: 800; }
.bal-check { font-size: 13px; font-weight: 700; margin-top: 8px; text-align: center; padding: 8px; border-radius: 8px; }


/* ── MODAL / PAYMENT ── */
.modal-overlay { display:none; position:fixed; inset:0; background:rgba(8,15,30,0.65); z-index:200; align-items:center; justify-content:center; backdrop-filter:blur(6px); }
.modal-overlay.show { display:flex; }
.modal { background:#FFFFFF; border-radius:20px; padding:24px; max-width:340px; width:90%; position:relative; box-shadow:0 24px 60px rgba(8,15,30,0.35), 0 0 0 1px rgba(180,210,240,0.5); }
.modal-title { font-family:'Playfair Display',serif; font-size:20px; font-weight:800; color:var(--navy-2); margin-bottom:6px; }
.modal-sub { font-size:12.5px; color:var(--t-dark-3); margin-bottom:18px; line-height:1.5; }
.plan-box { border:2px solid var(--gold-border-bright); border-radius:12px; padding:14px; margin-bottom:12px; background:linear-gradient(135deg,rgba(201,168,76,0.07),rgba(201,168,76,0.03)); }
.plan-price { font-family:'Playfair Display',serif; font-size:32px; font-weight:800; color:var(--navy-2); }
.plan-price span { font-size:14px; font-weight:500; color:var(--t-dark-3); }
.plan-features { font-size:12px; color:var(--t-dark-3); margin-top:8px; line-height:1.8; }
.modal-close { position:absolute; top:14px; right:14px; background:none; border:none; font-size:20px; cursor:pointer; color:var(--t-dark-3); }
.payment-methods { display:flex; gap:8px; margin-bottom:14px; }
.pay-method { flex:1; padding:10px; border:2px solid rgba(180,210,240,0.8); border-radius:10px; text-align:center; cursor:pointer; font-size:12px; font-weight:700; color:var(--t-dark-3); transition:all .2s; background:var(--sky-4); }
.pay-method.active { border-color:var(--gold); background:rgba(201,168,76,0.08); color:var(--gold-dark); }



/* ═══════════════════════════════════════════════════════════════
   SIDEBAR SCROLL FIX — logo და footer ფიქსირებული,
   nav სქროლდება მხოლოდ ძალიან პატარა ეკრანზე
═══════════════════════════════════════════════════════════════ */
.sidebar-logo,
.sidebar-footer {
  flex-shrink: 0;
}
.sidebar-nav {
  flex: 1 1 auto;
  min-height: 0;
  /* Scroll whenever the tabs don't fit (e.g. user added several „ჩემი სივრცე" tabs),
     on any viewport height. Thin scrollbar in the rail's own navy so it is
     visible when needed but almost disappears into the design (owner request). */
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 4px;
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,0.16) transparent;
}
.sidebar-nav::-webkit-scrollbar { width: 5px; }
.sidebar-nav::-webkit-scrollbar-track { background: transparent; }
.sidebar-nav::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.16); border-radius: 3px; }
.sidebar-nav::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.28); }
/* sidebar rail itself: same near-invisible navy-toned scrollbar */
.sidebar {
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,0.16) transparent;
}
.sidebar::-webkit-scrollbar { width: 5px; }
.sidebar::-webkit-scrollbar-track { background: transparent; }
.sidebar::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.16); border-radius: 3px; }
.sidebar::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.28); }
.sidebar-footer {
  background: rgba(255,255,255,0.03);
}

/* ═══════════════════════════════════════════════════════════════
   DESIGN — პრემიუმ ბუღალტრული დაშბორდი
   სუფთა ბრტყელი სტილი, კონფლიქტების გარეშე
═══════════════════════════════════════════════════════════════ */

/* Legacy app aliases — inherit from base.css :root (premium v3) */
:root {
  --bg: var(--prm-card);
  --panel: var(--prm-card);
  --panel2: var(--prm-card-soft);
  --stroke: var(--prm-border);
  --stroke2: rgba(20, 35, 61, 0.12);
  --text: var(--prm-text);
  --muted: var(--prm-text-secondary);
  --muted2: #94A3B8;
  --shadow: var(--prm-shadow-card);
  --shadow2: 0 8px 20px rgba(20, 35, 61, 0.06);
  --accent: var(--prm-emerald);
  --accent2: #0D8A5A;
  --accentSoft: var(--prm-card-soft);
  --danger: var(--prm-danger);
  --warn: var(--prm-text-secondary);
  --radius2: var(--prm-radius-lg);
  --max: 1180px;
}

