.budget-shell {
  display:grid;
  grid-template-columns: 280px minmax(0,1fr);
  gap:22px;
  margin-top:20px;
  align-items:start;
}

.budget-sidebar,
.budget-main {
  min-width:0;
  padding:22px;
  border-radius:24px;
  border:1px solid rgba(20,136,111,0.12);
  background:linear-gradient(180deg, rgba(246,251,249,0.98), rgba(238,247,244,0.96));
  box-shadow:0 18px 48px rgba(8,44,35,0.10);
}

.budget-sidebar {
  position:sticky;
  top:96px;
}

.budget-sidebar-head h3,
.budget-main-head h3,
.budget-question-card h4,
.budget-review-card h3 {
  margin:6px 0 0;
  color:#163d35;
}

.budget-sidebar-head p,
.budget-main-head p {
  color:#5d7e76;
}

.budget-section-list {
  display:grid;
  gap:10px;
  margin-top:14px;
}

.budget-section-btn {
  border:1px solid rgba(20,136,111,0.14);
  background:#ffffff;
  color:#204f45;
  padding:12px 14px;
  border-radius:14px;
  text-align:left;
  cursor:pointer;
  font-weight:600;
  transition:all 160ms ease;
}

.budget-section-btn.active,
.budget-section-btn:hover {
  background:linear-gradient(135deg, rgba(28,149,123,0.14), rgba(60,203,172,0.08));
  border-color:rgba(28,149,123,0.34);
  color:#123f36;
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(13,89,72,0.08);
}

.budget-sidebar-note {
  margin-top:14px;
  font-size:12px;
  color:#64867d;
  line-height:1.55;
  background:rgba(20,136,111,0.06);
  border:1px solid rgba(20,136,111,0.10);
  border-radius:16px;
  padding:14px;
}

.budget-kpi-grid,
.budget-report-kpis {
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:16px;
  margin:20px 0;
}

.budget-report-kpis {
  grid-template-columns:repeat(3, minmax(0,1fr));
}

.budget-kpi-card {
  background:linear-gradient(180deg, rgba(250,255,253,0.96), rgba(238,248,244,0.96));
  border:1px solid rgba(28,149,123,0.14);
  border-radius:20px;
  padding:18px;
  box-shadow:0 18px 42px rgba(9,46,37,0.08);
}

.budget-kpi-card span {
  display:block;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:#5dc6aa;
  margin-bottom:8px;
}

.budget-kpi-card strong {
  display:block;
  font-size:30px;
  line-height:1.05;
  color:#163d35;
}

.budget-kpi-card small {
  display:block;
  margin-top:8px;
  color:#64867d;
}

.budget-main-head {
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  margin-bottom:18px;
}

.budget-currency-switch {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.budget-save-tools{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.budget-save-status{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(20,136,111,0.14);
  background:rgba(255,255,255,0.88);
  color:#27594d;
  font-size:13px;
  font-weight:700;
}

.budget-save-status.is-saving{
  border-color:rgba(60,142,182,0.22);
  color:#1f5c74;
}

.budget-save-status.is-saved{
  border-color:rgba(28,149,123,0.24);
  color:#1f6b59;
}

.budget-year-switch {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:20px 0 0;
}

.budget-currency-btn {
  border:1px solid rgba(20,136,111,0.14);
  background:#ffffff;
  color:#27594d;
  padding:8px 12px;
  border-radius:999px;
  cursor:pointer;
  font-weight:700;
}

.budget-currency-btn.active {
  background:linear-gradient(135deg, rgba(28,149,123,0.16), rgba(60,203,172,0.10));
  border-color:rgba(28,149,123,0.34);
  color:#113d34;
}

.budget-year-btn {
  border:1px solid rgba(20,136,111,0.14);
  background:#ffffff;
  color:#27594d;
  padding:10px 16px;
  border-radius:999px;
  cursor:pointer;
  font-weight:800;
}

.budget-year-btn.active,
.budget-year-btn:hover {
  background:linear-gradient(135deg, rgba(28,149,123,0.16), rgba(60,203,172,0.10));
  border-color:rgba(28,149,123,0.34);
  color:#113d34;
}

.budget-kpi-button {
  width:100%;
  text-align:left;
  cursor:pointer;
  transition:transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.budget-kpi-button:hover,
.budget-kpi-button.active {
  transform:translateY(-1px);
  border-color:rgba(28,149,123,0.32);
  box-shadow:0 20px 44px rgba(9,46,37,0.12);
}

.budget-kpi-detail {
  margin-top:16px;
  padding:18px;
  border-radius:20px;
}

.budget-kpi-detail h3 {
  margin:6px 0 0;
}

.budget-kpi-detail-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.budget-kpi-detail-item {
  border:1px solid rgba(20,136,111,0.12);
  background:rgba(20,136,111,0.05);
  border-radius:16px;
  padding:14px;
}

.budget-kpi-detail-item span {
  display:block;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:#5dc6aa;
}

.budget-kpi-detail-item strong {
  display:block;
  margin-top:8px;
  color:#163d35;
  font-size:20px;
}

.budget-question-grid {
  display:grid;
  gap:16px;
}

.budget-question-card,
.budget-review-card {
  border:1px solid rgba(20,136,111,0.12);
  background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,251,248,0.98));
  border-radius:20px;
  padding:18px;
  box-shadow:0 14px 34px rgba(12,55,44,0.06);
}

.budget-question-top {
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:14px;
}

.budget-question-tag {
  display:inline-block;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:#5dc6aa;
  margin-bottom:8px;
  font-weight:700;
}

.budget-question-preview {
  color:#163d35;
  font-weight:800;
  text-align:right;
  min-width:160px;
  background:rgba(20,136,111,0.07);
  border:1px solid rgba(20,136,111,0.10);
  border-radius:14px;
  padding:10px 12px;
}

.budget-question-input {
  margin-top:2px;
}

.budget-input,
.budget-series-editor input,
.budget-question-card select {
  width:100%;
  background:#ffffff;
  color:#183c35;
  border:1px solid rgba(18,92,74,0.14);
  border-radius:14px;
  padding:13px 14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.8);
}

.budget-input:focus,
.budget-series-editor input:focus,
.budget-question-card select:focus {
  outline:none;
  border-color:rgba(28,149,123,0.42);
  box-shadow:0 0 0 4px rgba(44,174,143,0.10);
}

.budget-inline-input {
  display:flex;
  align-items:center;
  gap:12px;
}

.budget-inline-input span {
  color:#64867d;
  font-size:12px;
}

.budget-question-note {
  margin-top:12px;
  font-size:12px;
  color:#64867d;
  line-height:1.55;
}

.budget-check-list {
  display:flex;
  flex-wrap:wrap;
  gap:10px 16px;
  color:#204f45;
}

.budget-check-list label {
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border-radius:12px;
  background:rgba(20,136,111,0.05);
}

.budget-series-summary {
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:10px;
  align-items:end;
}

.budget-series-summary > div {
  background:rgba(20,136,111,0.05);
  border:1px solid rgba(20,136,111,0.08);
  border-radius:14px;
  padding:12px;
}

.budget-series-summary span {
  display:block;
  font-size:11px;
  color:#5dc6aa;
  text-transform:uppercase;
  letter-spacing:0.08em;
}

.budget-series-summary strong {
  display:block;
  margin-top:6px;
  color:#163d35;
  font-size:18px;
}

.budget-series-editor {
  display:grid;
  grid-template-columns:repeat(6, minmax(0,1fr));
  gap:10px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(20,136,111,0.10);
}

.budget-month-field {
  display:grid;
  gap:6px;
  color:#567971;
  font-size:12px;
}

.budget-review-grid {
  display:grid;
  grid-template-columns:minmax(0, 1.45fr) minmax(320px, 1fr);
  gap:18px;
}

.budget-review-grid > .budget-review-card:nth-child(3) {
  grid-column:1 / -1;
}

.budget-table-wrap {
  overflow:auto;
  margin-top:14px;
  min-width:0;
}

.budget-report-table-block {
  margin-top:18px;
  border:1px solid rgba(20,136,111,0.12);
  background:linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
  border-radius:20px;
  padding:18px;
  box-shadow:0 14px 30px rgba(5,34,29,0.08);
}

.budget-report-visual-block {
  margin-top:18px;
  border:1px solid rgba(20,136,111,0.12);
  background:linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
  border-radius:20px;
  padding:18px;
  box-shadow:0 14px 30px rgba(5,34,29,0.08);
}

.budget-report-table-head {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:8px;
}

.budget-report-table-head h4 {
  margin:4px 0 0;
  font-size:22px;
  line-height:1.05;
  color:#effcf8;
}

.budget-report-table-head span {
  color:rgba(214,245,237,0.72);
  font-size:13px;
  white-space:nowrap;
}

.budget-report-table-kicker {
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:rgba(127,255,220,0.72);
  font-weight:800;
}

.budget-annual-visual-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:14px;
  margin-top:14px;
}

.budget-annual-card {
  border:1px solid rgba(20,136,111,0.12);
  border-radius:18px;
  padding:18px;
  background:linear-gradient(180deg, rgba(8,48,43,0.58), rgba(9,34,31,0.42));
}

.budget-annual-card-year {
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:rgba(127,255,220,0.72);
  font-weight:800;
}

.budget-annual-card-value {
  margin-top:8px;
  font-size:32px;
  line-height:1;
  color:#effcf8;
  font-weight:800;
}

.budget-annual-card-note {
  margin-top:6px;
  color:rgba(214,245,237,0.78);
  font-size:13px;
}

.budget-annual-metric-grid {
  margin-top:16px;
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:10px;
}

.budget-annual-metric {
  padding:12px;
  border-radius:14px;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(145,255,219,0.10);
}

.budget-annual-metric span {
  display:block;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(191,255,233,0.70);
}

.budget-annual-metric strong {
  display:block;
  margin-top:6px;
  color:#effcf8;
  font-size:17px;
  line-height:1.2;
}

.budget-monthly-visual-list {
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.budget-monthly-card {
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,0.045);
  border:1px solid rgba(145,255,219,0.10);
}

.budget-monthly-card-head {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}

.budget-monthly-card-head strong {
  color:#effcf8;
  font-size:18px;
}

.budget-monthly-card-head span {
  color:rgba(214,245,237,0.74);
  font-size:12px;
}

.budget-monthly-bars {
  display:grid;
  gap:10px;
}

.budget-monthly-bar-row {
  display:grid;
  grid-template-columns:72px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
}

.budget-monthly-bar-row label {
  color:rgba(214,245,237,0.74);
  font-size:12px;
  font-weight:700;
}

.budget-monthly-bar-row strong {
  color:#effcf8;
  font-size:12px;
  font-variant-numeric:tabular-nums;
}

.budget-monthly-bar-track {
  height:10px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,0.07);
}

.budget-monthly-bar-track span {
  display:block;
  height:100%;
  border-radius:999px;
}

.budget-monthly-bar-track .is-revenue { background:linear-gradient(90deg, #6df0d4, #79c7ff); }
.budget-monthly-bar-track .is-costs { background:linear-gradient(90deg, #ffd27a, #ff9f6b); }
.budget-monthly-bar-track .is-cash-positive { background:linear-gradient(90deg, #7dffcb, #5bdc9b); }
.budget-monthly-bar-track .is-cash-negative { background:linear-gradient(90deg, #ff9b9b, #ff6d8a); }

body.thic-light-mode .budget-report-card {
  background:linear-gradient(180deg, #2b8f88 0%, #2f9d96 100%) !important;
  border:1px solid rgba(66,151,144,0.20) !important;
  box-shadow:0 20px 44px rgba(21,84,77,0.16) !important;
}

body.thic-light-mode .budget-report-card .module-control-kicker,
body.thic-light-mode .budget-report-card h3,
body.thic-light-mode .budget-report-card p,
body.thic-light-mode .budget-report-card .budget-report-table-kicker,
body.thic-light-mode .budget-report-card .budget-report-table-head h4,
body.thic-light-mode .budget-report-card .budget-report-table-head span {
  color:#effcf8 !important;
}

body.thic-light-mode .budget-report-visual-block,
body.thic-light-mode .budget-report-table-block {
  background:linear-gradient(180deg, rgba(255,255,255,0.96), rgba(243,250,248,0.98)) !important;
  border:1px solid rgba(86,150,142,0.16) !important;
  box-shadow:0 18px 34px rgba(16,74,67,0.08) !important;
}

body.thic-light-mode .budget-report-visual-block .budget-report-table-kicker,
body.thic-light-mode .budget-report-table-block .budget-report-table-kicker {
  color:#5a8e86 !important;
}

body.thic-light-mode .budget-report-visual-block .budget-report-table-head h4,
body.thic-light-mode .budget-report-visual-block .budget-report-table-head span,
body.thic-light-mode .budget-report-table-block .budget-report-table-head h4,
body.thic-light-mode .budget-report-table-block .budget-report-table-head span {
  color:#143a34 !important;
}

body.thic-light-mode .budget-annual-card {
  background:linear-gradient(180deg, #1f6b66 0%, #275d59 100%) !important;
  border:1px solid rgba(84,168,160,0.18) !important;
  box-shadow:0 16px 30px rgba(16,74,67,0.14) !important;
}

body.thic-light-mode .budget-annual-card-year,
body.thic-light-mode .budget-annual-card-note,
body.thic-light-mode .budget-annual-card-value,
body.thic-light-mode .budget-annual-metric span,
body.thic-light-mode .budget-annual-metric strong {
  color:#f2fffb !important;
}

body.thic-light-mode .budget-annual-metric {
  background:rgba(255,255,255,0.08) !important;
  border:1px solid rgba(172,241,226,0.12) !important;
}

body.thic-light-mode .budget-monthly-card {
  background:linear-gradient(180deg, #ffffff 0%, #f3faf8 100%) !important;
  border:1px solid rgba(86,150,142,0.14) !important;
  box-shadow:0 14px 28px rgba(16,74,67,0.06) !important;
}

body.thic-light-mode .budget-monthly-card-head strong,
body.thic-light-mode .budget-monthly-bar-row strong {
  color:#143a34 !important;
}

body.thic-light-mode .budget-monthly-card-head span,
body.thic-light-mode .budget-monthly-bar-row label {
  color:#5a7e77 !important;
}

body.thic-light-mode .budget-monthly-bar-track {
  background:rgba(25,101,93,0.08) !important;
}

.budget-table {
  width:100%;
  border-collapse:collapse;
  font-size:13px;
  border-radius:16px;
  overflow:hidden;
}

.budget-table th,
.budget-table td {
  padding:12px 14px;
  border-bottom:1px solid rgba(20,136,111,0.10);
  text-align:right;
  color:#1b433a;
  white-space:nowrap;
}

.budget-table th:first-child,
.budget-table td:first-child {
  text-align:left;
}

.budget-table thead th {
  color:#dffcf5;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.1em;
  background:linear-gradient(180deg, rgba(26,125,113,0.88), rgba(17,97,89,0.84));
  position:sticky;
  top:0;
  z-index:1;
}

.budget-report-table tbody tr:nth-child(odd) td {
  background:rgba(255,255,255,0.035);
}

.budget-report-table tbody tr:nth-child(even) td {
  background:rgba(255,255,255,0.015);
}

.budget-report-table tbody tr:hover td {
  background:rgba(127,255,220,0.08);
}

.budget-report-table tbody td:first-child {
  font-weight:700;
  color:#effcf8;
}

.budget-report-table tbody td:not(:first-child) {
  font-variant-numeric:tabular-nums;
}

.budget-table.compact td,
.budget-table.compact th {
  font-size:12px;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
}

.budget-report-card p {
  color:#64867d;
  margin:8px 0 0;
}

.budget-monthly-wrap {
  max-height:460px;
}

.budget-report-table-block-monthly .budget-table-wrap {
  margin-top:12px;
}

.budget-empty {
  padding:24px;
  border-radius:18px;
  background:rgba(20,136,111,0.05);
  color:#567971;
}

@media (max-width: 1400px) {
  .budget-review-grid {
    grid-template-columns:1fr;
  }
}

@media (max-width: 1100px) {
  .budget-shell,
  .budget-kpi-grid,
  .budget-report-kpis {
    grid-template-columns:1fr;
  }

  .budget-sidebar {
    position:static;
  }

  .budget-series-editor {
    grid-template-columns:repeat(4, minmax(0,1fr));
  }

  .budget-annual-visual-grid,
  .budget-monthly-visual-list {
    grid-template-columns:1fr;
  }
}

@media (max-width: 720px) {
  .budget-main-head,
  .budget-question-top {
    flex-direction:column;
  }

  .budget-main-head{
    align-items:stretch;
  }

  .budget-currency-switch{
    width:100%;
  }

  .budget-year-switch{
    width:100%;
  }

  .budget-series-summary {
    grid-template-columns:1fr 1fr;
  }

  .budget-kpi-detail-grid {
    grid-template-columns:1fr;
  }

  .budget-series-editor {
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .budget-sidebar,
  .budget-main,
  .budget-question-card,
  .budget-review-card {
    padding:16px;
    border-radius:18px;
  }

  .budget-table{
    font-size:12px;
  }

  .budget-table th,
  .budget-table td{
    padding:8px 10px;
  }

  .budget-kpi-card strong {
    font-size:26px;
  }

  .budget-report-visual-block,
  .budget-report-table-block {
    padding:16px;
  }

  .budget-report-table-head,
  .budget-monthly-card-head {
    flex-direction:column;
    align-items:flex-start;
  }

  .budget-annual-metric-grid,
  .budget-monthly-bar-row {
    grid-template-columns:1fr;
  }
}


.budget-shell input[type="checkbox"] {
  accent-color:#0f6a55;
}

.budget-check-list label {
  border:1px solid rgba(20,136,111,0.08);
  transition:all 160ms ease;
}

.budget-check-list label:hover {
  background:rgba(20,136,111,0.08);
  border-color:rgba(20,136,111,0.18);
}

.budget-check-list input[type="checkbox"] {
  width:16px;
  height:16px;
  cursor:pointer;
}

.budget-question-card {
  transition:box-shadow 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.budget-question-card:focus-within {
  border-color:rgba(15,106,85,0.28);
  box-shadow:0 20px 40px rgba(12,62,49,0.10), 0 0 0 4px rgba(15,106,85,0.08);
  transform:translateY(-1px);
}

.budget-input,
.budget-series-editor input,
.budget-question-card select {
  transition:border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}

.budget-input:hover,
.budget-series-editor input:hover,
.budget-question-card select:hover {
  border-color:rgba(15,106,85,0.24);
}

.budget-input:focus,
.budget-series-editor input:focus,
.budget-question-card select:focus {
  border-color:rgba(15,106,85,0.46);
  box-shadow:0 0 0 4px rgba(15,106,85,0.10);
}

.budget-input[type="month"] {
  min-height:48px;
}

.budget-input[type="month"]::-webkit-calendar-picker-indicator {
  cursor:pointer;
  filter:hue-rotate(55deg) saturate(160%) brightness(0.9);
}

.budget-main-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.budget-scope-select{min-width:210px}
.budget-question-meta{display:flex;justify-content:flex-end;margin-bottom:12px}
.budget-entity-assign{display:grid;gap:6px;min-width:220px}
.budget-entity-assign span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#58736a;font-weight:700}


.sidebar-company-picker {
  margin: 10px 14px 14px;
  padding: 12px;
  border-radius: 14px;
  background: rgba(10, 50, 42, 0.08);
  border: 1px solid rgba(15, 106, 85, 0.12);
}
.sidebar-company-kicker {
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #5b7b74;
  margin-bottom: 6px;
}
.sidebar-company-label {
  font-weight: 700;
  color: #153f37;
  margin-bottom: 8px;
}
.sidebar-company-select {
  width: 100%;
  border-radius: 10px;
  border: 1px solid rgba(15, 106, 85, 0.18);
  padding: 9px 10px;
  background: #fff;
}
.company-admin-list { display:grid; gap:10px; }
.company-admin-item { text-align:left; border:1px solid rgba(15,106,85,0.16); border-radius:14px; padding:12px 14px; background:#fff; }
.company-admin-item.active { border-color:#0f6a55; box-shadow:0 0 0 2px rgba(15,106,85,0.08); }
.company-admin-item span { display:block; color:#56746d; font-size:12px; margin-top:4px; }
.budget-selected-company { color:#5f7d76; margin-top:6px; }
.budget-section-footer { display:flex; justify-content:space-between; gap:12px; margin-top:18px; }
.budget-entity-assign.static strong { display:block; font-size:14px; color:#183f37; }


.budget-company-picker {
  margin-top: 14px;
  padding: 14px;
  border-radius: 16px;
  border: 1px solid rgba(20,136,111,0.12);
  background: rgba(20,136,111,0.05);
}

.budget-company-picker-label {
  display:block;
  margin-bottom:8px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:#5dc6aa;
  font-weight:700;
}

.budget-company-select {
  width:100%;
  background:#ffffff;
  color:#183c35;
  border:1px solid rgba(18,92,74,0.14);
  border-radius:14px;
  padding:13px 14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.8);
}

.budget-company-select:focus {
  outline:none;
  border-color:rgba(28,149,123,0.42);
  box-shadow:0 0 0 4px rgba(44,174,143,0.10);
}

.budget-company-helper {
  margin-top:8px;
  font-size:12px;
  color:#64867d;
  line-height:1.45;
}


/* === Budget Builder dark THIC surfaces === */
.budget-sidebar,
.budget-main,
.budget-kpi-card,
.budget-question-card,
.budget-review-card,
.budget-series-editor,
.budget-series-card,
.budget-report-table-wrap,
.budget-report-card,
.budget-company-selector-wrap {
  background:linear-gradient(180deg, rgba(20,109,104,0.96), rgba(15,92,83,0.94)) !important;
  border:1px solid rgba(185,255,233,0.14) !important;
  box-shadow:0 18px 38px rgba(7,42,38,0.18) !important;
}
.budget-main-head {
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
}
.budget-sidebar-head h3,
.budget-main-head h3,
.budget-question-card h4,
.budget-review-card h3,
.budget-kpi-card strong,
.budget-question-preview,
.budget-question-card strong,
.budget-review-card strong,
.budget-series-card strong,
.budget-report-card strong,
.budget-company-selector-wrap label {
  color:#ffffff !important;
}
.budget-sidebar-head p,
.budget-main-head p,
.budget-sidebar-note,
.budget-kpi-card small,
.budget-question-tag,
.budget-question-card p,
.budget-question-card small,
.budget-review-card p,
.budget-review-card small,
.budget-inline-input span,
.budget-series-card span,
.budget-report-card span {
  color:rgba(232,255,249,0.84) !important;
}
.budget-section-btn,
.budget-currency-btn,
.budget-series-btn,
.budget-nav-btn,
.budget-company-selector,
.budget-input,
.budget-series-editor input,
.budget-question-card select,
.budget-question-card textarea {
  background:rgba(255,255,255,0.08) !important;
  color:#ffffff !important;
  border:1px solid rgba(185,255,233,0.18) !important;
  box-shadow:none !important;
}
.budget-section-btn.active,
.budget-section-btn:hover,
.budget-year-btn.active,
.budget-year-btn:hover,
.budget-currency-btn.active,
.budget-series-btn.active,
.budget-nav-btn:hover {
  background:linear-gradient(135deg, rgba(31,138,116,0.95), rgba(18,102,88,0.95)) !important;
  color:#ffffff !important;
}
.budget-input::placeholder,
.budget-question-card textarea::placeholder { color:rgba(232,255,249,0.58) !important; }

/* v70 budget module aligned to radar-led dark theme */
.budget-sidebar,
.budget-main,
.budget-question-card,
.budget-review-card,
.budget-kpi-card {
  background:
    radial-gradient(circle at 18% 18%, rgba(72,211,176,0.10), transparent 28%),
    linear-gradient(145deg, rgba(7,23,22,0.96), rgba(13,43,40,0.94)) !important;
  border: 1px solid rgba(145,255,219,0.14) !important;
  color: #f3fffb !important;
  box-shadow: 0 24px 56px rgba(3,16,14,0.22) !important;
}
.budget-sidebar-head h3,
.budget-main-head h3,
.budget-question-card h4,
.budget-review-card h3,
.budget-kpi-card strong { color:#f3fffb !important; }
.budget-sidebar-head p,
.budget-main-head p,
.budget-question-card p,
.budget-review-card p,
.budget-kpi-card small,
.budget-sidebar-note,
.budget-selected-company { color:rgba(224,247,239,0.82) !important; }
.budget-review-card .budget-table,
.budget-review-card .budget-table th,
.budget-review-card .budget-table td,
.budget-report-card .budget-table,
.budget-report-card .budget-table th,
.budget-report-card .budget-table td {
  color:#f3fffb !important;
}
.budget-review-card .budget-table thead th,
.budget-report-card .budget-table thead th {
  color:#ffffff !important;
  background:rgba(255,255,255,0.08) !important;
}
.budget-review-card .budget-table tbody td,
.budget-report-card .budget-table tbody td {
  color:rgba(238,252,248,0.92) !important;
  border-color:rgba(145,255,219,0.10) !important;
}
.business-plan-overview,
.business-founder-strip{
    margin-bottom:22px;
  }
.business-plan-overview-grid,
.business-founder-strip-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:16px;
  }
.business-plan-overview-card,
.business-founder-strip-card{
    padding:18px 20px;
    border-radius:20px;
    border:1px solid rgba(145,255,219,0.12);
    background:rgba(255,255,255,0.04);
  }
.business-plan-overview-card strong,
.business-founder-strip-card strong{
    display:block;
    color:#f3fffb;
    font-size:20px;
    margin:8px 0;
  }
.business-plan-overview-card p,
.business-founder-strip-card p{
    margin:0;
    color:rgba(232,255,249,0.82);
  }
.business-plan-overview-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:8px;
}
@media (max-width: 1100px){
  .business-plan-overview-grid,
  .business-founder-strip-grid{
      grid-template-columns:1fr;
    }
  }
