@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/inter-400.ttf") format("truetype")}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/inter-500.ttf") format("truetype")}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/inter-600.ttf") format("truetype")}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/inter-700.ttf") format("truetype")}
@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url("/fonts/inter-800.ttf") format("truetype")}

:root {
  --ink: #1d281b;
  --muted: #697565;
  --line: #e1e9dc;
  --soft: #f4f8f1;
  --cream: #fbfcf9;
  --green-950: #0b3b70;
  --green-900: #0b3b70;
  --green-800: #0b3b70;
  --green-700: #d89b00;
  --green-100: #e8f4de;
  --lime: #d89b00;
  --lime-soft: #f0f8e8;
  --amber: #f36a18;
  --amber-soft: #fff0e7;
  --red: #c74a52;
  --red-soft: #fdebed;
  --blue: #3b72c4;
  --blue-soft: #e9f1ff;
  --white: #fff;
  --shadow: 0 10px 35px rgba(21, 48, 37, .08);
  --radius: 18px;
}

@media (max-width:1100px) {
  .welfare-dashboard-grid { grid-template-columns:repeat(2,1fr); }
  .welfare-dashboard-grid>.finance-panel:nth-child(n) { grid-column:span 1; }
}
@media (max-width:840px) {
  .welfare-emergency-cards article,.welfare-approval-list article { grid-template-columns:1fr auto; }
  .welfare-decision-buttons,.welfare-emergency-cards article>button { grid-column:1/-1;justify-content:flex-start; }
  .welfare-activity-cards article { grid-template-columns:48px 1fr; }
}
@media (max-width:560px) {
  .welfare-title-strip { align-items:flex-start;flex-direction:column;gap:7px; }
  .welfare-dashboard-grid { grid-template-columns:1fr; }
  .welfare-fund-layout,.welfare-contribution-layout { grid-template-columns:1fr;justify-items:center; }
  .welfare-fund-lines { width:100%; }
  .welfare-beneficiary-grid { grid-template-columns:1fr; }
  .welfare-request-mini article { grid-template-columns:1fr auto;gap:5px; }
  .welfare-emergency-cards article,.welfare-approval-list article,.welfare-activity-cards article { grid-template-columns:1fr; }
  .welfare-approval-list article>div:nth-child(2),.welfare-activity-cards article>div:nth-child(3) { text-align:left; }
  .welfare-category-chart { overflow-x:auto;justify-content:flex-start; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  color: var(--ink);
  background: var(--cream);
  font-family: Inter, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.login-page { min-height:100vh; display:grid; grid-template-columns:minmax(360px,.9fr) minmax(520px,1.1fr); background:#fff; }
.login-brand { position:relative; padding:54px clamp(36px,7vw,90px); display:flex; flex-direction:column; justify-content:space-between; color:#fff; background:linear-gradient(145deg,#0b3b70 0%,#0b3b70 58%,#0b3b70 100%); overflow:hidden; }
.login-brand::before,.login-brand::after { content:""; position:absolute; border:48px solid rgba(240,180,41,.07); border-radius:50%; }
.login-brand::before { width:380px;height:380px;right:-190px;top:-180px; }
.login-brand::after { width:240px;height:240px;left:-150px;bottom:-110px; }
.login-brand .brand { position:relative;z-index:1;padding:0; }
.login-message { position:relative;z-index:1;max-width:520px; }
.login-message .eyebrow { color:var(--lime); }
.login-message h1 { margin:10px 0 18px;font-size:clamp(34px,4.4vw,58px);line-height:1.05;letter-spacing:-2.4px; }
.login-message p { color:#aec6bb;font-size:14px;line-height:1.8; }
.login-features { position:relative;z-index:1;display:flex;gap:22px;flex-wrap:wrap;color:#b8ccc3;font-size:14px; }
.login-features span { display:flex;align-items:center;gap:7px; }
.login-features svg { width:14px;color:var(--lime); }
.login-panel { padding:48px clamp(28px,8vw,115px);display:flex;align-items:center;justify-content:center;background:var(--cream); }
.login-box { width:min(420px,100%); }
.login-box h2 { margin-bottom:8px;font:800 27px Manrope;letter-spacing:-.8px; }
.login-box>p { margin-bottom:28px;color:var(--muted);font-size:14px; }
.login-box .field { margin-bottom:15px; }
.login-box .field input { padding:13px; }
.login-box .button { width:100%;padding:13px;margin-top:5px; }
.login-demo { margin-top:22px;padding:15px;border:1px solid #dce6e1;border-radius:13px;background:#fff; }
.login-demo strong { display:block;font-size:14px; }
.login-demo p { margin:5px 0 9px;color:var(--muted);font-size:14px;line-height:1.5; }
.credential { display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:14px; }
.credential code { color:var(--green-700); }
.login-error { margin-bottom:15px;padding:10px 12px;border-radius:9px;color:var(--red);background:var(--red-soft);font-size:14px; }
.loading-screen { min-height:100vh;display:grid;place-items:center;background:var(--green-950);color:#fff; }
.loading-mark { text-align:center;font:800 20px Manrope; }
.loading-mark .brand-mark { margin:0 auto 14px; }
.spinner { width:16px;height:16px;margin:14px auto;border:2px solid rgba(255,255,255,.2);border-top-color:var(--lime);border-radius:50%;animation:spin .7s linear infinite; }
.password-wrap { position:relative; }
.password-wrap input { padding-right:42px!important; }
.password-toggle { position:absolute;right:7px;top:50%;transform:translateY(-50%);width:31px;height:31px;border:0;background:transparent;color:var(--muted); }
.password-toggle svg { width:15px; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }

.app-shell { display: grid; grid-template-columns: 254px minmax(0, 1fr); min-height: 100vh; }
.sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 20;
  width: 254px;
  padding: 24px 16px 18px;
  color: #eaf4ef;
  background:
    radial-gradient(circle at 8% 92%, rgba(201, 242, 105, .13), transparent 28%),
    linear-gradient(170deg, var(--green-900), var(--green-950));
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}
.brand { display: flex; align-items: center; gap: 12px; padding: 0 8px 26px; }
.brand-mark {
  width: 48px; height: 48px; display: grid; place-items: center; border-radius: 15px;
  color: var(--green-950); background: #fff; box-shadow: 0 8px 18px rgba(0,0,0,.15); overflow:hidden;
}
.brand-mark::before { content:"";width:42px;height:42px;border-radius:50%;background:#fff url("/brand-logo-slogan.png?v=51") center/contain no-repeat; }
.brand-mark svg { display:none; }
.brand-name { font: 800 18px/1.1 Manrope, sans-serif; letter-spacing: -.4px; }
.brand-sub { margin-top: 3px; color: #9eb9ad; font-size:14px; text-transform: uppercase; letter-spacing: 1.8px; }
.nav-label { margin: 8px 10px 9px; color: #d89b00; font-size:14px; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; }
.nav { display: grid; gap: 4px; }
.nav-item {
  appearance: none; border: 0; width: 100%; padding: 11px 12px; border-radius: 11px;
  display: flex; align-items: center; gap: 11px; color: #b9cdc4; background: transparent;
  font-size:14px; font-weight: 600; text-align: left; transition: .18s ease; position: relative;
}
.nav-item svg { width: 18px; height: 18px; flex: 0 0 auto; }
.nav-item:hover { color: #fff; background: rgba(255,255,255,.06); }
.nav-item.active { color: #fff; background: linear-gradient(100deg,#ef671b,#ff8a2f); box-shadow:0 8px 20px rgba(243,106,24,.24); }
.nav-badge { margin-left: auto; min-width: 20px; padding: 2px 6px; border-radius: 10px; color: var(--green-950); background: #fff; font-size:14px; text-align: center; }
.nav-alert-dot { position: absolute; top: 8px; right: 10px; width: 8px; height: 8px; border-radius: 50%; background: #f3223b; box-shadow: 0 0 0 2px rgba(11,28,51,.35); }
.executive-nav .nav-alert-dot { top: 7px; right: 9px; }
.sidebar-bottom { margin-top: auto; padding-top: 24px; }
.role-picker { padding: 12px; border: 1px solid rgba(255,255,255,.1); border-radius: 13px; background: rgba(255,255,255,.055); }
.role-picker label { display: block; margin-bottom: 6px; color: #8da99d; font-size:14px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.role-picker select { width: 100%; border: 0; outline: 0; color: #fff; background: transparent; font-size:14px; font-weight: 600; }
.role-picker option { color: var(--ink); }
.sidebar-user { display: flex; gap: 10px; align-items: center; padding: 18px 8px 0; }
.avatar { display: grid; place-items: center; flex: 0 0 auto; width: 36px; height: 36px; border-radius: 50%; color: var(--green-950); background: #f0d09d; font-size:14px; font-weight: 800; }
.avatar.green { background: var(--green-100); color: var(--green-800); }
.avatar.blue { background: var(--blue-soft); color: var(--blue); }
.user-name { font-size:14px; font-weight: 700; }
.user-role { margin-top: 2px; color: #86a397; font-size:14px; }

.main { grid-column: 2; min-width: 0; }
.topbar {
  position: sticky; top: 0; z-index: 10; height: 76px; padding: 0 36px;
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  border-bottom: 1px solid rgba(218,225,221,.8); background: rgba(251,250,246,.9); backdrop-filter: blur(16px);
}
.mobile-menu { display: none; border: 0; padding: 8px; background: none; color: #33465e; }
.mobile-menu svg { width: 24px; height: 24px; }
.mobile-back,.mobile-signout { display: none; }
.mobile-back { border: 0; padding: 8px; background: none; color: #33465e; }
.mobile-back svg { width: 22px; height: 22px; }
.top-search { position: relative; width: min(390px, 42vw); }
.top-search svg { position: absolute; left: 13px; top: 50%; transform: translateY(-50%); width: 17px; color: #8c9691; }
.top-search input { width: 100%; padding: 10px 14px 10px 39px; border: 1px solid var(--line); border-radius: 11px; outline: none; background: #fff; font-size:14px; }
.top-search input:focus { border-color: var(--green-700); box-shadow: 0 0 0 3px rgba(6,38,74,.09); }
.top-actions { display: flex; align-items: center; gap: 9px; }
.icon-button { position: relative; width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 11px; color: #52615b; background: #fff; }
.icon-button svg { width: 18px; }
.notification-dot { position: absolute; top: 8px; right: 8px; width: 6px; height: 6px; border: 1.5px solid white; border-radius: 50%; background: var(--red); }
.date-chip { padding: 9px 12px; border: 1px solid var(--line); border-radius: 11px; color: #68746f; background: #fff; font-size:14px; font-weight: 600; }
.content { max-width: 1530px; margin: 0 auto; padding: 31px 36px 48px; }
.page-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 25px; }
.eyebrow { margin: 0 0 6px; color: var(--green-700); font-size:14px; font-weight: 800; letter-spacing: 1.6px; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1 { margin-bottom: 7px; font: 800 clamp(24px, 3vw, 31px)/1.16 Manrope, sans-serif; letter-spacing: -1px; }
.page-subtitle { margin-bottom: 0; color: var(--muted); font-size:14px; }
.head-actions { display: flex; gap: 9px; flex-wrap: wrap; }
.button { border: 0; padding: 10px 16px; border-radius: 11px; font-size:14px; font-weight: 700; transition: transform .15s, box-shadow .15s; }
.button:hover { transform: translateY(-1px); }
.button.primary { color: #fff; background: linear-gradient(105deg,var(--green-800),var(--green-700)); box-shadow: 0 7px 17px rgba(6,38,74,.2); }
.button.lime { color: var(--green-950); background: var(--lime); }
.button.secondary { border: 1px solid var(--line); color: #42504b; background: #fff; }
.button.danger { color: var(--red); background: var(--red-soft); }
.button.small { padding: 7px 10px; border-radius: 8px; font-size:14px; }
.button svg { width: 15px; height: 15px; margin-right: 6px; vertical-align: -3px; }

.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 15px; margin-bottom: 18px; }
.metric {
  position: relative; min-height: 131px; padding: 19px; border: 1px solid var(--line);
  border-radius: var(--radius); background: #fff; box-shadow: 0 4px 15px rgba(30,60,47,.025); overflow: hidden;
}
.metric.dark { color: #fff; border-color: var(--green-900); background: linear-gradient(135deg, var(--green-800), var(--green-950)); }
.metric.dark::after { content: ""; position: absolute; width: 100px; height: 100px; right: -28px; bottom: -43px; border: 18px solid rgba(240,180,41,.12); border-radius: 50%; }
.metric-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.metric-label { color: var(--muted); font-size:14px; font-weight: 600; }
.dark .metric-label { color: #abc1b7; }
.metric-icon { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; color: var(--green-700); background: var(--green-100); }
.metric-icon.amber { color: #a66b05; background: var(--amber-soft); }
.metric-icon.blue { color: var(--blue); background: var(--blue-soft); }
.metric-icon.red { color: var(--red); background: var(--red-soft); }
.metric-icon svg { width: 16px; }
.metric-value { margin-top: 13px; font: 800 22px/1 Manrope, sans-serif; letter-spacing: -.6px; }
.metric-note { margin-top: 10px; color: #87928d; font-size:14px; }
.metric-note .up { color: var(--green-700); font-weight: 800; }
.metric-note .warn { color: var(--amber); font-weight: 800; }

.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(280px, .75fr); gap: 18px; }
.card { border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: 0 5px 20px rgba(30,60,47,.025); }
.card + .card.stack { margin-top: 18px; }
.card-head { padding: 18px 20px 13px; display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.card-title { margin: 0; font: 800 14px Manrope, sans-serif; letter-spacing: -.2px; }
.card-subtitle { margin: 4px 0 0; color: var(--muted); font-size:14px; }
.text-button { border: 0; padding: 3px 0; color: var(--green-700); background: none; font-size:14px; font-weight: 800; }
.chart-wrap { padding: 0 20px 17px; }
.chart { position: relative; height: 205px; display: flex; align-items: flex-end; gap: 11px; padding: 20px 3px 24px 38px; border-bottom: 1px solid var(--line); }
.chart-grid { position: absolute; inset: 8px 0 24px 38px; display: flex; flex-direction: column; justify-content: space-between; pointer-events: none; }
.chart-grid span { border-top: 1px dashed #edf0ee; }
.y-labels { position: absolute; inset: 6px auto 24px 0; display: flex; flex-direction: column; justify-content: space-between; color: #9ba49f; font-size:14px; }
.bar-group { position: relative; z-index: 1; flex: 1; height: 100%; display: flex; align-items: flex-end; justify-content: center; gap: 3px; }
.bar { width: min(13px, 40%); min-height: 4px; border-radius: 4px 4px 1px 1px; background: var(--green-700); transition: height .5s ease; }
.bar.alt { background: var(--lime); }
.bar-label { position: absolute; bottom: -18px; color: #7f8a85; font-size:14px; }
.legend { margin-top: 12px; display: flex; gap: 16px; justify-content: center; color: var(--muted); font-size:14px; }
.legend i { display: inline-block; width: 7px; height: 7px; margin-right: 5px; border-radius: 2px; background: var(--green-700); }
.legend i.alt { background: var(--lime); }

.activity-list { padding: 0 20px 12px; }
.activity { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 12px 0; border-top: 1px solid #eef1ef; }
.activity:first-child { border-top: 0; }
.activity-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; color: var(--green-700); background: var(--green-100); }
.activity-icon.out { color: var(--red); background: var(--red-soft); }
.activity-icon.info { color: var(--blue); background: var(--blue-soft); }
.activity-icon svg { width: 16px; }
.activity-title { overflow: hidden; font-size:14px; font-weight: 700; white-space: nowrap; text-overflow: ellipsis; }
.activity-meta { margin-top: 3px; color: #8b9590; font-size:14px; }
.activity-amount { text-align: right; font-size:14px; font-weight: 800; }
.activity-amount.negative { color: var(--red); }
.activity-status { margin-top: 4px; }

.quick-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 9px; padding: 0 18px 18px; }
.quick-action { min-height: 83px; padding: 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--soft); text-align: left; transition: .15s; }
.quick-action:hover { border-color: #eaf1f8; background: var(--green-100); transform: translateY(-2px); }
.quick-action svg { width: 18px; color: var(--green-700); }
.quick-action strong { display: block; margin-top: 9px; font-size:14px; }

.progress-list { padding: 0 20px 18px; }
.progress-row { margin-top: 14px; }
.progress-info { display: flex; justify-content: space-between; margin-bottom: 6px; font-size:14px; }
.progress-info strong { font-size:14px; }
.track { height: 6px; border-radius: 4px; background: #edf0ee; overflow: hidden; }
.fill { height: 100%; border-radius: inherit; background: var(--green-700); }
.fill.lime { background: #eaf1f8; }
.fill.amber { background: var(--amber); }

.table-card { overflow: hidden; }
.table-tools { padding: 0 20px 15px; display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.filter-set { display: flex; gap: 7px; flex-wrap: wrap; }
.filter-chip { padding: 7px 11px; border: 1px solid var(--line); border-radius: 8px; color: var(--muted); background: #fff; font-size:14px; font-weight: 700; }
.filter-chip.active { border-color: var(--green-800); color: #fff; background: var(--green-800); }
.table-scroll { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; min-width: 720px; }
th { padding: 11px 20px; color: #89938e; background: #f8faf9; font-size:14px; font-weight: 800; letter-spacing: .7px; text-align: left; text-transform: uppercase; }
td { padding: 13px 20px; border-top: 1px solid #edf0ee; font-size:14px; }
tbody tr:hover { background: #fbfdfc; }
.member-cell { display: flex; align-items: center; gap: 9px; }
.member-cell .avatar { width: 31px; height: 31px; font-size:14px; }
.cell-main { font-weight: 700; }
.cell-sub { margin-top: 3px; color: #8a9490; font-size:14px; }
.mono { font-variant-numeric: tabular-nums; }
.status { display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border-radius: 20px; color: var(--green-700); background: var(--green-100); font-size:14px; font-weight: 800; text-transform: capitalize; }
.status::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.status.pending { color: #a76d08; background: var(--amber-soft); }
.status.pending-guarantors,
.status.officer-review,
.status.committee-review,
.status.finance-verification,
.status.executive-authorization,
.status.ready-disbursement { color:#a76d08;background:var(--amber-soft); }
.status.rejected, .status.overdue, .status.suspended { color: var(--red); background: var(--red-soft); }
.status.draft { color: #6c7772; background: #edf0ee; }
.status.approved, .status.active, .status.paid, .status.completed { color: var(--green-700); background: var(--green-100); }
.status.review { color: var(--blue); background: var(--blue-soft); }
.table-actions { display: flex; gap: 5px; }
.mini-btn { width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 8px; color: #62706a; background: #fff; }
.mini-btn:hover { color: var(--green-700); border-color: #eaf1f8; }
.mini-btn svg { width: 13px; }
.empty-state { padding: 60px 20px; text-align: center; color: var(--muted); }
.empty-state svg { width: 35px; color: #9eb1a8; }

.notice { display: flex; align-items: center; gap: 14px; padding: 15px 18px; margin-bottom: 18px; border: 1px solid #d4e5dc; border-radius: 14px; background: #edf8f2; }
.notice svg { flex: 0 0 auto; width: 20px; color: var(--green-700); }
.notice strong { display: block; font-size:14px; }
.notice p { margin: 3px 0 0; color: var(--muted); font-size:14px; }
.notice.warning { border-color: #f1d7a8; background: var(--amber-soft); }
.notice.warning svg { color: #a76d08; }
.notice.success { border-color: #b7e4c7; background: #edf9f1; }
.notice.success svg { color: #0f7a4a; }

.loan-hero { margin-bottom: 18px; padding: 22px; display: flex; justify-content: space-between; gap: 20px; color: #fff; border-radius: var(--radius); background: linear-gradient(120deg, var(--green-900), #0b3b70); overflow: hidden; position: relative; }
.loan-hero::after { content:""; position:absolute; right:-40px; top:-85px; width:220px; height:220px; border: 32px solid rgba(240,180,41,.1); border-radius:50%; }
.loan-hero h2 { margin: 4px 0 7px; font: 800 20px Manrope; }
.loan-hero p { max-width: 570px; margin: 0; color: #bad0c6; font-size:14px; line-height: 1.6; }
.loan-hero .button { position: relative; z-index: 1; align-self: center; white-space: nowrap; }
.products { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 18px; }
.product { padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.product-icon { width: 38px; height: 38px; display:grid; place-items:center; border-radius: 11px; color:var(--green-700); background:var(--green-100); }
.product-icon svg { width:18px; }
.product h3 { margin: 14px 0 5px; font: 800 13px Manrope; }
.product p { min-height: 32px; margin-bottom: 14px; color:var(--muted); font-size:14px; line-height:1.5; }
.product-meta { display:flex; justify-content:space-between; padding-top:12px; border-top:1px solid var(--line); }
.product-meta span { color:var(--muted); font-size:14px; }
.product-meta strong { display:block; margin-top:3px; color:var(--ink); font-size:14px; }

.settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.setting-card { padding: 19px; }
.setting-row { display:flex; align-items:center; gap:13px; }
.setting-row + .setting-row { margin-top:15px; padding-top:15px; border-top:1px solid var(--line); }
.setting-icon { width:35px; height:35px; display:grid; place-items:center; flex:0 0 auto; border-radius:10px; color:var(--green-700); background:var(--green-100); }
.setting-icon svg { width:16px; }
.setting-copy { flex:1; }
.setting-copy strong { display:block; font-size:14px; }
.setting-copy span { color:var(--muted); font-size:14px; }
.toggle { width:34px; height:20px; padding:3px; border:0; border-radius:12px; background:#cfd6d2; }
.toggle::after { content:""; display:block; width:14px; height:14px; border-radius:50%; background:#fff; transition:.2s; }
.toggle.on { background:var(--green-700); }
.toggle.on::after { transform:translateX(14px); }

.modal-backdrop { position:fixed; inset:0; z-index:100; padding:20px; display:grid; place-items:center; background:rgba(9,25,19,.58); backdrop-filter:blur(4px); animation:fade .15s ease; }
.modal { width:min(540px, 100%); max-height:90vh; overflow-y:auto; border-radius:20px; background:#fff; box-shadow:0 28px 80px rgba(0,0,0,.25); animation:rise .2s ease; }
.modal-head { padding:20px 22px 14px; display:flex; justify-content:space-between; align-items:flex-start; border-bottom:1px solid var(--line); }
.modal-head h2 { margin:0; font:800 17px Manrope; }
.modal-head p { margin:4px 0 0; color:var(--muted); font-size:14px; }
.modal-close { border:0; width:30px; height:30px; display:grid; place-items:center; border-radius:8px; background:var(--soft); }
.modal-close svg { width:15px; }
.form { padding:20px 22px 22px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.field.full { grid-column:1/-1; }
.field label { display:block; margin-bottom:6px; color:#4f5c57; font-size:14px; font-weight:700; }
.field input, .field select, .field textarea { width:100%; padding:11px 12px; border:1px solid var(--line); border-radius:10px; outline:0; background:#fff; color:var(--ink); font-size:14px; }
.field input:focus, .field select:focus, .field textarea:focus { border-color:var(--green-700); box-shadow:0 0 0 3px rgba(6,38,74,.08); }
.field textarea { min-height:78px; resize:vertical; }
.field small { display:block; margin-top:5px; color:#8b9590; font-size:14px; }
.form-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:20px; padding-top:16px; border-top:1px solid var(--line); }

#toast-root { position:fixed; z-index:200; right:24px; bottom:24px; display:grid; gap:8px; }
.toast { min-width:260px; max-width:360px; padding:13px 15px; display:flex; align-items:flex-start; gap:10px; border-radius:12px; color:#fff; background:var(--green-900); box-shadow:0 15px 40px rgba(0,0,0,.2); animation:toastIn .25s ease; font-size:14px; }
.toast svg { flex:0 0 auto; width:16px; color:var(--lime); }

@keyframes fade { from { opacity:0 } }
@keyframes rise { from { transform:translateY(10px); opacity:.7 } }
@keyframes toastIn { from { transform:translateX(20px); opacity:0 } }
@keyframes spin { to { transform:rotate(360deg) } }

/* Readability pass: comfortable sizing for desktop, tablet, and accessibility. */
.brand-name { font-size: 20px; }
.brand-sub,
.nav-label,
.role-picker label,
.eyebrow { font-size:14px; }
.nav-item { font-size: 14px; }
.user-name { font-size:14px; }
.user-role,
.role-picker > div { font-size:14px !important; }
.top-search input,
.date-chip,
.button { font-size:14px; }
.page-subtitle { font-size: 15px; }
.metric-label { font-size:14px; }
.metric-value { font-size: 25px; }
.metric-note { font-size:14px; }
.card-title { font-size: 16px; }
.card-subtitle { font-size:14px; }
.text-button,
.filter-chip { font-size:14px; }
.y-labels,
.bar-label { font-size:14px; }
.legend { font-size:14px; }
.quick-action strong,
.progress-info,
.progress-info strong { font-size:14px; }
.activity-title,
.activity-amount { font-size:14px; }
.activity-meta,
.status { font-size:14px; }
th { font-size:14px; }
td { font-size:14px; }
.cell-sub { font-size:14px; }
.notice strong { font-size:14px; }
.notice p,
.loan-hero p,
.product p { font-size:14px; }
.product h3 { font-size: 15px; }
.product-meta span { font-size:14px; }
.product-meta strong { font-size:14px; }
.setting-copy strong { font-size:14px; }
.setting-copy span { font-size:14px; }
.field label { font-size:14px; }
.field input,
.field select,
.field textarea { font-size:14px; }
.field small { font-size:14px; }
.modal-head p { font-size:14px; }
.button.small { font-size:14px; }

.messenger {
  min-height: 610px;
  height: calc(100vh - 205px);
  display: grid;
  grid-template-columns: 350px minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--shadow);
}
.conversation-panel { min-width:0; border-right:1px solid var(--line); background:#fbfcfb; }
.conversation-search { position:relative; padding:17px; border-bottom:1px solid var(--line); }
.conversation-search svg { position:absolute;left:30px;top:50%;width:16px;transform:translateY(-50%);color:#84908a; }
.conversation-search input { width:100%;padding:11px 12px 11px 38px;border:1px solid var(--line);border-radius:11px;outline:0;background:#fff;font-size:14px; }
.conversation-search input:focus { border-color:var(--green-700);box-shadow:0 0 0 3px rgba(6,38,74,.08); }
.chat-filters { padding:8px 16px;display:flex;gap:6px;border-bottom:1px solid var(--line);background:#fff;overflow-x:auto; }
.chat-filters button { padding:5px 10px;border:0;border-radius:12px;color:var(--muted);background:var(--soft);font-size:14px;font-weight:800; }
.chat-filters button.active { color:#fff;background:var(--green-800); }
.chat-filters .chat-search-action { margin-left:auto;padding:5px 7px; }
.chat-filters .chat-search-action svg { width:12px; }
.conversation-list { height:calc(100% - 112px);overflow-y:auto; }
.conversation-item { width:100%;padding:14px 16px;display:flex;align-items:center;gap:12px;border:0;border-bottom:1px solid #edf0ee;background:transparent;text-align:left;transition:.15s; }
.conversation-item:hover { background:#f1f7f4; }
.conversation-item.archived { display:none; }
.conversation-item.active { background:var(--green-100);box-shadow:inset 3px 0 var(--green-700); }
.chat-avatar { position:relative;width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:var(--green-900);background:#dceee5;font-size:14px;font-weight:800; }
.chat-avatar i { position:absolute;right:1px;bottom:1px;width:10px;height:10px;border:2px solid white;border-radius:50%;background:#d89b00; }
.chat-avatar.group { color:#fff;background:linear-gradient(135deg,var(--green-700),var(--green-950)); }
.chat-avatar.group svg { width:20px; }
.conversation-copy { min-width:0;flex:1; }
.conversation-name,.conversation-preview { display:flex;align-items:center;justify-content:space-between;gap:8px; }
.conversation-name strong { overflow:hidden;font-size:14px;white-space:nowrap;text-overflow:ellipsis; }
.conversation-name time { flex:0 0 auto;color:#97a19c;font-size:14px; }
.conversation-preview { margin-top:5px; }
.conversation-preview span { overflow:hidden;color:var(--muted);font-size:14px;white-space:nowrap;text-overflow:ellipsis; }
.conversation-preview b { min-width:19px;height:19px;padding:0 5px;display:grid;place-items:center;border-radius:10px;color:var(--green-950);background:var(--lime);font-size:14px; }
.chat-panel { min-width:0;display:flex;flex-direction:column;background:linear-gradient(rgba(248,250,249,.94),rgba(248,250,249,.94)),radial-gradient(circle at 20% 30%,#dcebe4 1px,transparent 1px);background-size:auto,24px 24px; }
.chat-head { min-height:70px;padding:11px 18px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line);background:#fff; }
.chat-head .chat-avatar { width:42px;height:42px; }
.chat-head strong { display:block;font-size:14px; }
.chat-head span { display:block;margin-top:3px;color:var(--green-700);font-size:14px; }
.chat-back { display:none;width:32px;height:32px;border:0;border-radius:9px;background:var(--soft);transform:rotate(90deg); }
.chat-back svg { width:15px; }
.chat-messages { flex:1;padding:22px clamp(16px,4vw,55px);overflow-y:auto; }
.chat-day { display:flex;justify-content:center;margin:2px 0 20px; }
.chat-day span { padding:5px 10px;border-radius:11px;color:#77837e;background:#e9eeeb;font-size:14px;font-weight:700; }
.message-row { display:flex;margin:6px 0; }
.message-row.mine { justify-content:flex-end; }
.message-wrap { position:relative;max-width:min(72%,560px); }
.message-row.mine .message-wrap { display:flex;flex-direction:column;align-items:flex-end; }
.message-bubble { max-width:min(72%,560px);padding:10px 12px 7px;border:1px solid #dde6e1;border-radius:4px 15px 15px 15px;background:#fff;box-shadow:0 2px 6px rgba(26,55,42,.04);cursor:pointer; }
.message-wrap .message-bubble { max-width:100%; }
.message-row.mine .message-bubble { color:#fff;border-color:var(--green-800);border-radius:15px 4px 15px 15px;background:var(--green-800); }
.message-bubble p { margin:0;font-size:14px;line-height:1.5;word-break:break-word; }
.message-sender { margin-bottom:4px;color:var(--green-700);font-size:14px;font-weight:800; }
.pinned-label { margin-bottom:5px;color:var(--amber);font-size:14px;font-weight:800; }
.forwarded-label,.starred-label { display:inline-block;margin:0 7px 5px 0;color:#819089;font-size:14px;font-style:italic;font-weight:700; }
.starred-label { color:var(--amber);font-style:normal; }
.message-actions { position:absolute;z-index:2;top:-25px;right:3px;padding:2px;display:none;gap:2px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 5px 15px rgba(0,0,0,.1); }
.message-row:not(.mine) .message-actions { left:3px;right:auto; }
.message-wrap:hover .message-actions { display:flex; }
.message-actions button { height:23px;padding:0 7px;border:0;border-radius:5px;color:var(--muted);background:transparent;font-size:14px; }
.message-actions button:hover { background:var(--soft); }
.quoted-message { margin-bottom:7px;padding:6px 8px;border-left:3px solid var(--lime);border-radius:5px;color:#5b6862;background:rgba(234,241,248,.8);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.mine .quoted-message { color:#d9e8e1;background:rgba(255,255,255,.1); }
.message-meta { margin-top:4px;display:flex;justify-content:flex-end;align-items:center;gap:5px;color:#8d9893;font-size:14px; }
.mine .message-meta { color:#b9cec5; }
.message-meta .read { color:var(--lime); }
.message-meta em { font-style:normal; }
.message-attachments { margin-top:8px;display:grid;gap:6px; }
.attachment-card { min-width:230px;padding:7px;display:flex;align-items:center;gap:8px;border:1px solid rgba(100,125,113,.2);border-radius:9px;color:inherit;background:rgba(241,246,243,.85);text-decoration:none; }
.mine .attachment-card { background:rgba(255,255,255,.1); }
.attachment-card>img { width:64px;height:52px;flex:0 0 auto;border-radius:7px;object-fit:cover; }
.attachment-card>div { min-width:0;flex:1; }
.attachment-card strong,.attachment-card span { display:block;max-width:230px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis; }
.attachment-card strong { font-size:14px; }
.attachment-card span { margin-top:3px;color:#7f8b85;font-size:14px; }
.mine .attachment-card span { color:#bdd0c7; }
.attachment-card>svg { width:14px;flex:0 0 auto; }
.file-icon { width:42px;height:42px;display:grid!important;place-items:center;flex:0 0 auto;border-radius:7px;color:var(--red)!important;background:var(--red-soft);font-size:14px!important;font-weight:900; }
.reaction-row { min-height:6px;display:flex;align-items:center;gap:3px;flex-wrap:wrap;margin-top:-3px;position:relative;z-index:1; }
.reaction-row>button { padding:2px 6px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:14px; }
.reaction-row>button.mine { border-color:#eaf1f8;background:var(--green-100); }
.reaction-row>button span { color:var(--muted);font-size:14px; }
.quick-reactions { display:none;padding:3px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 5px 15px rgba(0,0,0,.1); }
.message-wrap:hover .quick-reactions { display:flex; }
.quick-reactions button { width:24px;height:22px;border:0;background:transparent;font-size:14px; }
.admin-only-notice { padding:15px;display:flex;align-items:center;justify-content:center;gap:8px;border-top:1px solid var(--line);color:var(--muted);background:#fff;font-size:14px; }
.admin-only-notice svg { width:15px;color:var(--amber); }
.message-composer { position:relative;padding:13px 15px;display:flex;align-items:flex-end;gap:8px;border-top:1px solid var(--line);background:#fff; }
.message-composer textarea { min-height:43px;max-height:120px;flex:1;padding:12px 70px 12px 14px;border:1px solid var(--line);border-radius:14px;outline:0;resize:none;font-size:14px;line-height:1.5; }
.message-composer textarea:focus { border-color:var(--green-700);box-shadow:0 0 0 3px rgba(6,38,74,.07); }
.composer-tool { width:40px;height:40px;flex:0 0 auto;border:1px solid var(--line);border-radius:12px;color:#607069;background:#fff;font-size:20px; }
.composer-count { position:absolute;right:75px;bottom:27px;color:#9aa39f;font-size:14px;pointer-events:none; }
.send-button { width:43px;height:43px;display:grid;place-items:center;flex:0 0 auto;border:0;border-radius:13px;color:#fff;background:var(--green-800);box-shadow:0 7px 16px rgba(6,38,74,.2); }
.send-button svg { width:18px; }
.reply-preview { display:none;padding:8px 18px 8px 67px;border-top:1px solid var(--line);background:#f7faf8; }
.reply-preview.show { display:flex;align-items:center;justify-content:space-between; }
.reply-preview span,.reply-preview strong { display:block;max-width:500px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis; }
.reply-preview span { color:var(--green-700);font-size:14px; }
.reply-preview strong { margin-top:2px;font-size:14px; }
.reply-preview button { border:0;background:none;color:var(--muted); }
.reply-preview svg { width:14px; }
.message-empty { height:100%;padding:35px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted); }
.message-empty>svg { width:46px;margin-bottom:14px;color:#95aea2; }
.message-empty strong { color:var(--ink);font:800 15px Manrope; }
.message-empty span { max-width:300px;margin:7px 0 17px;font-size:14px;line-height:1.5; }
.message-empty.compact { min-height:200px;height:auto; }
.message-empty.compact>svg { width:30px; }
.messenger-loading { height:500px;display:grid;place-content:center;text-align:center;color:var(--muted); }
.contact-list { max-height:430px;overflow-y:auto; }
.contact-item { width:100%;padding:12px 4px;display:flex;align-items:center;gap:11px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left; }
.contact-item:hover { background:#f5f9f7; }
.contact-copy { flex:1; }
.contact-copy strong { display:block;font-size:14px; }
.contact-copy span { display:block;margin-top:3px;color:var(--muted);font-size:14px; }
.contact-item>svg { width:16px;color:var(--green-700); }
.group-member-picker { max-height:260px;overflow-y:auto;border:1px solid var(--line);border-radius:11px; }
.group-member-option { padding:10px 12px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line); }
.group-member-option:last-child { border-bottom:0; }
.group-member-option input { width:16px;height:16px;accent-color:var(--green-700); }
.group-member-option .chat-avatar { width:34px;height:34px;font-size:14px; }
.group-member-option strong { display:block;font-size:14px; }
.group-member-option span { display:block;margin-top:2px;color:var(--muted);font-size:14px; }
.group-permission { padding:11px 12px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:11px; }
.group-permission strong { display:block;font-size:14px; }
.group-permission span { display:block;margin-top:2px;color:var(--muted);font-size:14px; }
.group-info-header { padding:22px;text-align:center;background:var(--soft); }
.group-info-header .chat-avatar { width:64px;height:64px;margin:0 auto; }
.group-info-header h3 { margin:10px 0 4px;font:800 16px Manrope; }
.group-info-header p { margin:0;color:var(--muted);font-size:14px; }
.group-participant { padding:10px 0;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line); }
.group-participant .chat-avatar { width:35px;height:35px;font-size:14px; }
.group-participant-copy { min-width:0;flex:1; }
.group-participant-copy strong { display:block;font-size:14px; }
.group-participant-copy span { color:var(--muted);font-size:14px; }
.admin-chip { padding:3px 6px;border-radius:7px;color:var(--green-700);background:var(--green-100);font-size:14px;font-weight:800; }
.search-result-list { max-height:430px;margin-top:14px;overflow-y:auto; }
.message-search-result { width:100%;padding:11px 4px;display:flex;gap:10px;align-items:center;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left; }
.message-search-result:hover { background:var(--soft); }
.message-search-result>div:last-child { min-width:0;flex:1; }
.message-search-result strong { display:block;font-size:14px; }
.message-search-result p { margin:4px 0;color:var(--ink);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.message-search-result span { color:var(--muted);font-size:14px; }
.loan-detail-modal { width:min(850px,100%); }
.loan-detail-summary { margin-bottom:18px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px; }
.loan-detail-summary>div { padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--soft); }
.loan-detail-summary span { display:block;margin-bottom:5px;color:var(--muted);font-size:14px; }
.loan-detail-summary strong { font:800 13px Manrope; }
.loan-application-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:8px; }
.loan-application-grid>div { padding:12px 13px;border:1px solid var(--line);border-radius:11px;background:var(--soft); }
.loan-application-grid span { display:block;margin-bottom:5px;color:var(--muted);font-size:13px; }
.loan-application-grid strong { font:700 13px Manrope;color:var(--ink);word-break:break-word; }
.loan-section-title { margin:20px 0 9px;font:800 13px Manrope; }
.loan-doc-list { display:grid;gap:8px;margin-top:8px; }
.loan-doc-list .button { width:100%;justify-content:flex-start; }
.loan-schedule-table { min-width:1080px; }
.loan-schedule-table .penalty-cell { font-weight:700;color:#9a4d00; }
.loan-schedule-table tr.is-overdue .penalty-cell { color:#c4222f; }
.loan-guarantors { padding:0 13px;border:1px solid var(--line);border-radius:12px; }
.workflow-timeline { padding:5px 4px 1px 10px; }
.workflow-event { position:relative;padding:0 0 17px 21px;border-left:1px solid #cbdad3; }
.workflow-event:last-child { border-left-color:transparent; }
.workflow-event>i { position:absolute;left:-6px;top:1px;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:var(--green-700);box-shadow:0 0 0 1px var(--green-700); }
.workflow-event strong,.workflow-event span { display:block; }
.workflow-event strong { font-size:14px;text-transform:capitalize; }
.workflow-event span { margin-top:3px;color:var(--muted);font-size:14px; }
.workflow-event p { margin:5px 0 0;color:#52615b;font-size:14px; }
.repayment-scroll { max-height:340px;border:1px solid var(--line);border-radius:12px; }
.repayment-scroll table { min-width:760px; }

.organization-strip { margin-bottom:18px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #cfddd6;border-radius:16px;background:linear-gradient(110deg,#eef8f2,#fbfdf7); }
.organization-strip span,.organization-strip strong { display:block; }
.organization-strip span { margin-bottom:4px;color:var(--green-700);font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:1px; }
.organization-strip strong { font:800 18px Manrope; }
.organization-hero { margin-bottom:22px;padding:25px 27px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-radius:20px;color:#fff;background:linear-gradient(125deg,var(--green-950),var(--green-700));box-shadow:var(--shadow); }
.organization-hero h2 { margin-bottom:8px;font:800 27px Manrope; }
.organization-hero p { max-width:720px;margin-bottom:0;color:#c3d8cf;font-size:14px;line-height:1.65; }
.organization-hero .eyebrow { color:var(--lime); }
.authority-summary { min-width:215px;padding:14px;display:flex;align-items:center;gap:11px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(255,255,255,.08); }
.authority-summary>svg { width:25px;color:var(--lime); }
.authority-summary strong,.authority-summary span { display:block; }
.authority-summary strong { font-size:14px; }
.authority-summary span { margin-top:3px;color:#b9cec5;font-size:14px; }
.department-grid { margin-bottom:22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px; }
.department-card { position:relative;min-height:245px;padding:21px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;text-align:left;box-shadow:0 7px 24px rgba(21,48,37,.05);transition:.2s ease; }
.department-card:hover { transform:translateY(-3px);border-color:#b9d0c5;box-shadow:0 14px 32px rgba(21,48,37,.1); }
.department-number { position:absolute;right:14px;top:6px;color:#edf2ef;font:800 46px Manrope; }
.department-icon { width:44px;height:44px;display:grid;place-items:center;border-radius:13px;color:var(--green-700);background:var(--green-100); }
.department-icon svg { width:22px; }
.department-card h3 { margin:17px 0 8px;font:800 17px Manrope; }
.department-card p { min-height:62px;margin:0;color:var(--muted);font-size:14px;line-height:1.55; }
.department-access { margin-top:15px;padding-top:13px;display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--line);font-size:14px; }
.department-access span { color:#405048;font-weight:700; }
.department-access strong { color:var(--green-700); }
.department-rights { margin-top:5px;color:var(--muted);font-size:14px; }
.permission-empty { min-height:360px;padding:45px;display:grid;place-items:center;align-content:center;border:1px dashed #cbd8d2;border-radius:18px;text-align:center;background:#fff; }
.permission-empty>svg { width:42px;color:#8da99d; }
.permission-empty h2 { margin:14px 0 7px;font:800 20px Manrope; }
.permission-empty p { max-width:500px;color:var(--muted);font-size:14px;line-height:1.6; }
.department-back { margin:-8px 0 15px;padding:0;border:0;color:var(--green-700);background:none;font-size:14px;font-weight:800; }
.department-header { margin-bottom:20px;padding:22px 24px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:17px;border:1px solid #dce7e2;border-radius:19px;background:linear-gradient(115deg,#fff,#f0f8f4); }
.department-header h2 { margin:2px 0 5px;font:800 24px Manrope; }
.department-header p { max-width:670px;margin:0;color:var(--muted);font-size:14px;line-height:1.55; }
.department-header .eyebrow { color:var(--green-700);font-size:14px; }
.authority-card { min-width:225px;padding:13px 15px;border:1px solid #d5e4dd;border-radius:13px;background:#fff; }
.authority-card span,.authority-card strong,.authority-card small { display:block; }
.authority-card span { color:var(--muted);font-size:14px;text-transform:uppercase;letter-spacing:.8px; }
.authority-card strong { margin:4px 0;font-size:14px; }
.authority-card small { color:var(--green-700);font-size:14px; }
.department-metrics { margin-bottom:18px; }
.department-layout { display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.75fr);gap:18px; }
.department-layout>.department-layout,.department-layout>div { min-width:0; }
.department-layout>div>.card+.card { margin-top:18px; }
.department-activity-list { border-top:1px solid var(--line); }
.department-activity { padding:15px 0;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line); }
.department-activity:last-child { border-bottom:0; }
.department-activity span,.department-activity strong { display:block; }
.department-activity span { margin-bottom:4px;color:var(--green-700);font-size:14px;font-weight:700;text-transform:capitalize; }
.department-activity strong { font-size:14px; }
.department-activity p { margin:4px 0 0;color:var(--muted);font-size:14px; }
.activity-decision { display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap; }
.activity-decision>b { width:100%;font-size:14px;text-align:right; }
.mini-btn.approve { color:var(--green-700);background:var(--green-100); }
.mini-btn.reject { color:var(--red);background:var(--red-soft); }
.module-list { display:grid;gap:8px; }
.module-list>div { padding:10px 11px;display:flex;align-items:center;gap:9px;border-radius:10px;background:var(--soft);font-size:14px;font-weight:700; }
.module-list svg { width:15px;color:var(--green-700); }
.department-person { padding:10px 0;display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line); }
.department-person:last-child { border:0; }
.department-person .avatar { width:34px;height:34px;font-size:14px; }
.department-person>div:nth-child(2) { min-width:0;flex:1; }
.department-person strong,.department-person span { display:block; }
.department-person strong { font-size:14px; }
.department-person span { margin-top:2px;color:var(--muted);font-size:14px; }
.department-person>b { color:var(--green-700);font-size:14px; }
.permission-picker { padding:12px;display:flex;gap:17px;flex-wrap:wrap;border:1px solid var(--line);border-radius:11px;background:var(--soft); }
.permission-picker label { display:flex;align-items:center;gap:6px;font-size:14px;text-transform:none;letter-spacing:0; }
.permission-picker input { width:16px;height:16px;accent-color:var(--green-700); }
.user-departments span,.user-departments small,.user-departments em { display:block;white-space:nowrap; }
.user-departments span { margin-bottom:3px;color:var(--green-700);font-size:14px;font-weight:700; }
.user-departments small,.user-departments em { color:var(--muted);font-size:14px;font-style:normal; }

/* Executive command center */
.executive-sidebar { width:270px;padding:18px 9px 14px;background:linear-gradient(180deg,#0b3b70 0%,#0b3b70 55%,#0b3b70 100%); }
.app-shell:has(.executive-sidebar) { grid-template-columns:270px minmax(0,1fr); }
.executive-sidebar+.main { grid-column:2; }
.executive-brand { min-height:70px;padding:0 10px 17px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.1); }
.executive-crest { width:58px;height:58px;display:grid;place-items:center;flex:0 0 auto;border:2px solid rgba(243,106,24,.72);border-radius:50%;color:#f36a18;background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.12);overflow:hidden; }
.executive-crest::before { content:"";width:56px;height:56px;border-radius:50%;background:#fff url("/brand-logo-slogan.png?v=51") center/contain no-repeat; }
.executive-crest svg { display:none; }
.executive-brand strong { display:block;color:#fff;font:800 16px/1.2 Manrope;letter-spacing:.2px; }
.executive-brand span { display:block;margin-top:4px;color:#c8d4e4;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.65px; }
.executive-nav { padding-top:13px;gap:2px; }
.executive-nav .nav-item { min-height:37px;padding:8px 11px;border-radius:8px;color:#e4ebf4;font-size:14px; }
.executive-nav .nav-item svg { width:17px; }
.executive-nav .nav-item:hover { background:rgba(255,255,255,.08); }
.executive-nav .nav-item.active { color:#fff;background:linear-gradient(100deg,#ef671b,#ff8a2f);box-shadow:0 7px 18px rgba(243,106,24,.26); }
.executive-nav .nav-badge { margin-left:auto;color:#fff;background:#f3223b; }
.executive-quick { width:100%;padding:13px;display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#fff;background:rgba(255,255,255,.08);font-size:14px;font-weight:800; }
.executive-quick svg { width:17px; }
.executive-quick span { flex:1;text-align:left; }
.exec-top-profile { margin-left:5px;padding-left:13px;display:flex;align-items:center;gap:9px;border-left:1px solid var(--line); }
.exec-top-profile .avatar { width:36px;height:36px; }
.exec-top-profile strong,.exec-top-profile span { display:block;white-space:nowrap; }
.exec-top-profile strong { font-size:14px; }
.exec-top-profile span { margin-top:2px;color:var(--muted);font-size:14px; }
.exec-calendar-button { display:grid; }
.exec-welcome { margin-bottom:18px;padding:19px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:15px;color:#fff;background:linear-gradient(115deg,#0b3b70,#d89b00);box-shadow:0 10px 25px rgba(6,38,74,.16); }
.exec-welcome h2 { margin:3px 0 5px;font:800 22px Manrope; }
.exec-welcome p { margin:0;color:#c8d8ea;font-size:14px; }
.exec-welcome .eyebrow { color:#75b6ff; }
.exec-live { padding:8px 12px;display:flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.14);border-radius:9px;color:#dbe9f8;background:rgba(255,255,255,.07);font-size:14px;font-weight:700; }
.exec-live i { width:7px;height:7px;border-radius:50%;background:#d89b00;box-shadow:0 0 0 4px rgba(50,208,113,.15); }
.exec-perf-live { margin-left:6px;font-size:11px;font-weight:700;font-style:normal;color:#0f7a4a;background:#e8f8ef;padding:2px 6px;border-radius:999px;vertical-align:middle; }
.exec-stat-grid { margin-bottom:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px; }
.exec-stat-card { min-width:0;min-height:105px;padding:13px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border:1px solid #dfe7ef;border-radius:12px;background:#fff;text-align:left;box-shadow:0 4px 14px rgba(11,34,65,.04);transition:.18s; }
.exec-stat-card:hover { transform:translateY(-2px);border-color:#b8cae0;box-shadow:0 9px 22px rgba(11,34,65,.09); }
.exec-stat-icon { width:42px;height:42px;display:grid;place-items:center;border-radius:11px;color:#1571ff;background:#eaf2ff; }
.exec-stat-icon svg { width:21px; }
.exec-stat-icon.green { color:#d89b00;background:#e8f9ee; }.exec-stat-icon.violet { color:#7446ed;background:#f0ebff; }
.exec-stat-icon.orange { color:#f28a08;background:#fff2df; }.exec-stat-icon.red { color:#e72d46;background:#ffeaed; }.exec-stat-icon.teal { color:#08a5a5;background:#e6f8f8; }
.exec-stat-card small,.exec-stat-card strong,.exec-stat-card em { display:block;overflow:hidden;text-overflow:ellipsis; }
.exec-stat-card small { color:#4f6073;font-size:14px;font-weight:700;white-space:nowrap; }
.exec-stat-card strong { margin:4px 0;color:#071b36;font:800 15px Manrope;white-space:nowrap; }
.exec-stat-card em { color:#8090a1;font-size:14px;font-style:normal;white-space:nowrap; }
.exec-stat-card>b { color:#b4c1cf;font-size:15px; }
.exec-command-grid { margin-bottom:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.exec-panel { min-width:0;padding:17px;border:1px solid #dfe7ef;border-radius:13px;background:#fff;box-shadow:0 4px 15px rgba(11,34,65,.035); }
.exec-panel-head { margin-bottom:14px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px; }
.exec-panel-head h3 { margin:0 0 3px;color:#0b1f3c;font:800 14px Manrope; }
.exec-panel-head p { margin:0;color:#8190a0;font-size:14px; }
.exec-panel-head>button { padding:0;border:0;color:#1667d9;background:none;font-size:14px;font-weight:800;white-space:nowrap; }
.exec-performance-list { display:grid;gap:9px; }
.exec-performance-list>div>div:first-child { margin-bottom:4px;display:flex;justify-content:space-between;font-size:14px; }
.exec-performance-list strong { color:#314154; }
.exec-track { height:6px;overflow:hidden;border-radius:8px;background:#edf1f5; }
.exec-track i { height:100%;display:block;border-radius:8px;background:linear-gradient(90deg,#1773ee,#d89b00); }
.exec-track i.watch { background:linear-gradient(90deg,#ff9c11,#ffbe43); }.exec-track i.low { background:linear-gradient(90deg,#ff6a20,#ef3045); }
.exec-approval-list { max-height:340px;overflow:auto; }
.exec-approval-list>div { padding:10px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border-bottom:1px solid #edf1f4; }
.exec-approval-list>div:last-child { border:0; }
.exec-approval-list strong,.exec-approval-list small { display:block; }
.exec-approval-copy { min-width:0; }
.exec-approval-list strong { margin:2px 0;font-size:14px; }
.exec-approval-list small { color:#7b8a99;font-size:14px; }
.exec-type { color:#176fd8;font-size:14px;font-weight:800;text-transform:uppercase; }
.exec-approval-list>div>div:last-child { display:flex;gap:4px; }
.exec-approval-list button,.exec-approval-row button { padding:5px 7px;border:1px solid #dbe4ec;border-radius:6px;color:#4c5e70;background:#fff;font-size:14px;font-weight:800; }
.exec-approval-list button.approve,.exec-approval-row button.approve { border-color:#eaf1f8;color:#d89b00;background:#eaf9ef; }
.exec-approval-list button.reject,.exec-approval-row button.reject { border-color:#f2c4ca;color:#c72036;background:#fff0f2; }
.exec-approval-row button.more { border-color:#ffdc9e;color:#a96700;background:#fff7e7; }
.exec-activity-feed { display:grid; }
.exec-activity-feed>div { padding:8px 0;display:flex;gap:9px;border-bottom:1px solid #edf1f4;font-size:14px; }
.exec-activity-feed>div:last-child { border:0; }
.exec-activity-feed>div>i { width:7px;height:7px;margin-top:3px;flex:0 0 auto;border-radius:50%;background:#1c73ee; }
.exec-activity-feed .dot-1 { background:#d89b00; }.exec-activity-feed .dot-2 { background:#7b48ef; }.exec-activity-feed .dot-3 { background:#f08b0a; }.exec-activity-feed .dot-4 { background:#ec3349; }.exec-activity-feed .dot-5 { background:#0aa3aa; }
.exec-activity-feed strong { color:#102845; }
.exec-activity-feed small { display:block;margin-top:3px;color:#8391a0;font-size:14px; }
.exec-finance-summary { margin-bottom:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px; }
.exec-finance-summary span { padding:9px;border-radius:8px;color:#758595;background:#f6f8fb;font-size:14px; }
.exec-finance-summary strong { display:block;margin-top:3px;color:#10243e;font-size:14px; }
.exec-finance-summary .positive { color:#d89b00; }
.exec-bar-chart { height:150px;padding:7px 7px 0;display:flex;align-items:flex-end;justify-content:space-around;gap:8px;border-bottom:1px solid #dfe6ec;background:repeating-linear-gradient(to top,#fff 0,#fff 29px,#edf1f5 30px); }
.exec-bar-chart>div { height:100%;min-width:35px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px; }
.exec-bars { height:calc(100% - 18px);display:flex;align-items:flex-end;gap:3px; }
.exec-bars i { width:11px;min-height:2px;border-radius:3px 3px 0 0;background:#1975ef; }
.exec-bars i.expense { background:#f03a51; }
.exec-bar-chart span { color:#758495;font-size:14px; }
.exec-legend { margin-top:8px;display:flex;justify-content:center;gap:18px;color:#738293;font-size:14px; }
.exec-legend span { display:flex;align-items:center;gap:4px; }.exec-legend i { width:7px;height:7px;border-radius:2px;background:#1975ef; }.exec-legend i.expense { background:#f03a51; }
.exec-health-grid { margin-bottom:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.exec-health-card { padding:15px;border:1px solid #dfe7ef;border-radius:12px;background:#fff;text-align:left;box-shadow:0 4px 14px rgba(11,34,65,.035);transition:.18s; }
.exec-health-card:hover { border-color:#b7c9dc;transform:translateY(-2px); }
.exec-health-head { margin-bottom:9px;display:flex;align-items:center;gap:8px; }
.exec-health-head>span { width:32px;height:32px;display:grid;place-items:center;border-radius:8px;color:#146bdc;background:#eaf2ff; }
.exec-health-head svg { width:17px; }.exec-health-head h3 { margin:0;flex:1;font:800 12px Manrope; }.exec-health-head>b { color:#a4b1bf; }
.exec-health-row { padding:5px 0;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #f0f2f5;font-size:14px; }
.exec-health-row:last-child { border:0; }.exec-health-row span { color:#6f7e8d; }.exec-health-row strong { color:#13263f; }
.exec-bottom-grid { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.exec-notification-list>div { padding:8px 0;display:flex;align-items:center;gap:9px;border-bottom:1px solid #edf1f4; }
.exec-notification-list>div>span { width:30px;height:30px;display:grid;place-items:center;border-radius:8px;color:#176fe1;background:#edf4ff; }
.exec-notification-list svg { width:14px; }.exec-notification-list strong,.exec-notification-list small { display:block; }
.exec-notification-list strong { font-size:14px; }.exec-notification-list small { margin-top:2px;color:#7d8c9b;font-size:14px; }
.exec-calendar-list>div { padding:7px 0;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:9px;border-bottom:1px solid #edf1f4; }
.exec-calendar-list time { padding:5px;text-align:center;border-radius:7px;color:#176add;background:#edf4ff; }
.exec-calendar-list time strong,.exec-calendar-list time span { display:block; }.exec-calendar-list time strong { font-size:14px; }.exec-calendar-list time span { font-size:14px;text-transform:uppercase; }
.exec-calendar-list>div>div strong,.exec-calendar-list>div>div small { display:block; }.exec-calendar-list>div>div strong { font-size:14px; }.exec-calendar-list>div>div small { margin-top:2px;color:#7d8c9b;font-size:14px; }
.exec-calendar-list>div>b { color:#536579;font-size:14px; }
.exec-floating { position:fixed;right:25px;bottom:24px;z-index:18; }
.exec-fab { padding:12px 16px;display:flex;align-items:center;gap:8px;border:0;border-radius:12px;color:#fff;background:linear-gradient(100deg,#ef263b,#ff4658);box-shadow:0 10px 25px rgba(239,38,59,.32);font-size:14px;font-weight:800; }
.exec-fab svg { width:16px; }.exec-quick-menu { position:absolute;right:0;bottom:52px;width:230px;padding:7px;display:grid;border:1px solid #dbe4ec;border-radius:12px;background:#fff;box-shadow:0 15px 35px rgba(8,28,56,.18); }
.exec-quick-menu button { padding:9px;display:flex;align-items:center;gap:8px;border:0;border-radius:7px;color:#24384e;background:#fff;text-align:left;font-size:14px;font-weight:700; }
.exec-quick-menu button:hover { background:#eef4fb; }.exec-quick-menu svg { width:15px;color:#176cd9; }
.exec-dept-top { margin-bottom:14px;display:grid;grid-template-columns:repeat(4,1fr);gap:11px; }
.exec-mini-stat { padding:13px;display:flex;align-items:center;gap:11px;border:1px solid #dfe7ef;border-radius:11px;background:#fff; }
.exec-mini-stat>span { width:43px;height:43px;display:grid;place-items:center;border-radius:10px;color:#176ee1;background:#eaf2ff; }
.exec-mini-stat>span.green { color:#d89b00;background:#e9f9ee; }.exec-mini-stat>span.violet { color:#7545e9;background:#f0ebff; }.exec-mini-stat>span.orange { color:#ed8708;background:#fff2df; }
.exec-mini-stat svg { width:21px; }.exec-mini-stat small,.exec-mini-stat strong,.exec-mini-stat em { display:block; }
.exec-mini-stat small { color:#596b7e;font-size:14px; }.exec-mini-stat strong { margin:2px 0;font:800 16px Manrope; }.exec-mini-stat em { color:#8694a3;font-size:14px;font-style:normal; }
.exec-department-layout { margin-bottom:14px;display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:13px;align-items:start; }
.exec-department-cards { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px; }
.exec-department-card { min-width:0;padding:14px;border:1px solid #dfe7ef;border-radius:11px;background:#fff; }
.exec-dept-title { min-height:66px;display:flex;gap:10px; }.exec-dept-title>span { width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;color:#d89b00;background:#e9f9ee; }
.exec-dept-title>span.blue { color:#176ee1;background:#eaf2ff; }.exec-dept-title>span.violet { color:#7545e9;background:#f0ebff; }.exec-dept-title>span.orange,.exec-dept-title>span.amber { color:#ed8708;background:#fff2df; }.exec-dept-title>span.red { color:#e72d46;background:#ffeaed; }.exec-dept-title>span.teal { color:#08a5a5;background:#e6f8f8; }
.exec-dept-title svg { width:20px; }.exec-dept-title h3 { margin:1px 0 3px;font:800 11px Manrope; }.exec-dept-title p { margin:0;color:#718191;font-size:14px;line-height:1.4; }
.exec-dept-values { margin:9px 0 11px;display:grid;grid-template-columns:1fr 58px;align-items:center;gap:8px; }.exec-dept-values small,.exec-dept-values strong { display:block; }
.exec-dept-values small { margin-top:4px;color:#758596;font-size:14px; }.exec-dept-values strong { margin-top:2px;color:#d89b00;font-size:14px; }
.exec-ring { --score:75;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(#1874ef calc(var(--score)*1%),#e7edf3 0);position:relative; }
.exec-ring::after { content:"";position:absolute;inset:5px;border-radius:50%;background:#fff; }.exec-ring span { position:relative;z-index:1;font-size:14px;font-weight:800; }
.exec-department-card>button { width:100%;padding:7px 9px;display:flex;justify-content:center;gap:8px;border:1px solid #d8e4f4;border-radius:6px;color:#1768cf;background:#f2f7ff;font-size:14px;font-weight:800; }
.exec-dept-chart { margin-top:0; }.exec-wide-bars { height:175px;display:flex;align-items:flex-end;justify-content:space-around;gap:15px;border-bottom:1px solid #dfe6ec;background:repeating-linear-gradient(to top,#fff 0,#fff 34px,#edf1f5 35px); }
.exec-wide-bars>div { height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px; }.exec-wide-bars>div>div { height:calc(100% - 22px);display:flex;align-items:flex-end;gap:4px; }
.exec-wide-bars i { width:24px;border-radius:3px 3px 0 0;background:#2379eb; }.exec-wide-bars i.expense { background:#ef3b50; }.exec-wide-bars span { color:#657688;font-size:14px;text-transform:capitalize; }
.exec-module-metrics,.exec-approval-summary { margin-bottom:14px;display:grid;grid-template-columns:repeat(4,1fr);gap:11px; }
.exec-module-metric { padding:16px;border:1px solid #dfe7ef;border-top:3px solid #176fe1;border-radius:11px;background:#fff; }.exec-module-metric.green { border-top-color:#d89b00; }.exec-module-metric.red { border-top-color:#ec3148; }.exec-module-metric.orange { border-top-color:#ee8a0b; }.exec-module-metric.violet { border-top-color:#7549e8; }
.exec-module-metric small,.exec-module-metric strong,.exec-module-metric span { display:block; }.exec-module-metric small { color:#637486;font-size:14px;font-weight:700; }.exec-module-metric strong { margin:6px 0;color:#0b1f3b;font:800 17px Manrope; }.exec-module-metric span { color:#8a98a6;font-size:14px; }
.exec-table-panel { margin-top:14px; }.exec-table-panel table { min-width:760px; }
.exec-approval-page { display:grid;gap:13px; }
.exec-approval-row { padding:14px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;border-bottom:1px solid #edf1f4; }.exec-approval-row:last-child { border:0; }
.exec-approval-row span,.exec-approval-row strong { display:block; }.exec-approval-row span { color:#1770dd;font-size:14px;font-weight:800;text-transform:uppercase; }.exec-approval-row strong { margin:4px 0;font-size:14px; }.exec-approval-row p { margin:0;color:#718191;font-size:14px; }
.exec-approval-row>div:last-child { max-width:390px;display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap; }.exec-approval-row>div:last-child>b { width:100%;font-size:14px;text-align:right; }
.exec-empty { padding:24px;color:#82909e;text-align:center;font-size:14px; }
.exec-calendar-page { display:grid;gap:11px; }.exec-calendar-page article { padding:16px;display:grid;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:16px;border:1px solid #dfe7ef;border-radius:12px;background:#fff; }
.exec-calendar-page time { padding:10px;text-align:center;border-radius:9px;color:#1769d3;background:#edf4ff; }.exec-calendar-page time strong,.exec-calendar-page time span,.exec-calendar-page time em { display:block; }.exec-calendar-page time strong { font:800 21px Manrope; }.exec-calendar-page time span { font-size:14px;font-weight:800; }.exec-calendar-page time em { color:#7f90a1;font-size:14px;font-style:normal; }
.exec-calendar-page article>div>span { color:#1770db;font-size:14px;font-weight:800;text-transform:uppercase; }.exec-calendar-page h3 { margin:4px 0;font:800 13px Manrope; }.exec-calendar-page p { margin:0 0 5px;color:#6e7d8c;font-size:14px; }.exec-calendar-page small { display:flex;align-items:center;gap:4px;color:#718090;font-size:14px; }.exec-calendar-page small svg { width:12px; }
.exec-calendar-page article>button { border:0;color:#176bd5;background:none;font-size:14px;font-weight:800; }
.exec-project-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:13px; }.exec-project-card { padding:17px;border:1px solid #dfe7ef;border-radius:12px;background:#fff; }.exec-project-card>div:first-child { display:flex;justify-content:space-between;align-items:center; }.exec-project-card>div:first-child>span { color:#176fd9;font-size:14px;font-weight:800; }.exec-project-card h3 { margin:11px 0 5px;font:800 14px Manrope; }.exec-project-card p { min-height:42px;color:#718191;font-size:14px;line-height:1.5; }.exec-project-card>.progress-row { margin:15px 0; }.exec-project-card>div:nth-last-child(2) { display:grid;grid-template-columns:1fr 1fr;gap:8px; }.exec-project-card>div:nth-last-child(2)>span { padding:9px;border-radius:8px;color:#718191;background:#f5f8fa;font-size:14px; }.exec-project-card>div:nth-last-child(2) strong { display:block;margin-top:3px;color:#10243e;font-size:14px; }.exec-project-card>button { width:100%;margin-top:13px;padding:8px;border:1px solid #d8e4f4;border-radius:7px;color:#1768cf;background:#f2f7ff;font-size:14px;font-weight:800; }
.exec-report-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:12px; }.exec-report-grid article { padding:15px;display:grid;grid-template-columns:43px 1fr auto;align-items:center;gap:12px;border:1px solid #dfe7ef;border-radius:11px;background:#fff; }.exec-report-grid article>span { width:43px;height:43px;display:grid;place-items:center;border-radius:10px;color:#176ee1;background:#eaf2ff; }.exec-report-grid article>span.green { color:#d89b00;background:#e9f9ee; }.exec-report-grid article>span.violet { color:#7549e8;background:#f0ebff; }.exec-report-grid article>span.orange { color:#ee890b;background:#fff2df; }.exec-report-grid article>span.teal { color:#0b9fa7;background:#e8f8f8; }.exec-report-grid svg { width:20px; }.exec-report-grid h3 { margin:0 0 3px;font:800 12px Manrope; }.exec-report-grid p { margin:0;color:#6f7f8f;font-size:14px; }.exec-report-grid small { display:block;margin-top:4px;color:#95a0ac;font-size:14px; }.exec-report-grid button { padding:8px;display:flex;align-items:center;gap:5px;border:1px solid #d8e4f3;border-radius:7px;color:#176bd5;background:#f3f7fd;font-size:14px;font-weight:800; }.exec-report-grid button svg { width:13px; }
.exec-report-actions{display:flex;align-items:center;gap:7px}.exec-report-actions button:first-child{color:#0b3b70;border-color:#c9e1d9;background:#f0f8f5}.exec-report-actions button:hover{transform:translateY(-1px);box-shadow:0 4px 11px rgba(26,65,91,.1)}
.report-preview-frame{background:#f3f6f8}.exec-html-report-preview{min-height:100%;padding:24px}.exec-report-preview-meta{display:flex;justify-content:space-between;gap:14px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #d7e1e6}.exec-report-preview-meta strong{color:#122b3a;font-size:17px}.exec-report-preview-meta span{color:#6d7f8b;font-size:13px}.exec-report-preview-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}.exec-report-preview-metrics article{min-width:0;padding:13px;border:1px solid #d9e4e8;border-radius:10px;background:#fff}.exec-report-preview-metrics span,.exec-report-preview-metrics strong{display:block}.exec-report-preview-metrics span{color:#687b88;font-size:13px}.exec-report-preview-metrics strong{margin-top:5px;color:#122d3c;font-size:16px;overflow-wrap:anywhere}.exec-report-preview-table{overflow:auto;border:1px solid #d8e3e7;border-radius:10px;background:#fff}.exec-report-preview-table table{width:100%;border-collapse:collapse;white-space:nowrap}.exec-report-preview-table th,.exec-report-preview-table td{padding:11px 12px;border-bottom:1px solid #e7edef;text-align:left;font-size:13px}.exec-report-preview-table th{position:sticky;top:0;color:#4d6573;background:#eef3f5;text-transform:uppercase;letter-spacing:.035em}.exec-report-preview-table tbody tr:last-child td{border-bottom:0}.exec-report-preview-note{margin:14px 0 0;color:#6e808b;font-size:13px}
@media(max-width:800px){.exec-report-preview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.exec-report-preview-meta{flex-direction:column}.exec-html-report-preview{padding:14px}}
.exec-analytics-grid { margin-bottom:14px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px; }.trend-up { color:#d89b00;font-size:14px; }.exec-line-chart { height:150px;display:flex;align-items:flex-end;justify-content:space-around;gap:7px;border-bottom:1px solid #dfe6ec;background:repeating-linear-gradient(to top,#fff 0,#fff 29px,#edf1f5 30px); }.exec-line-chart>div { height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px; }.exec-line-chart i { width:20px;min-height:4px;border-radius:4px 4px 0 0;background:#176fe1; }.exec-line-chart.green i { background:#d89b00; }.exec-line-chart.red i { background:#eb354b; }.exec-line-chart.orange i { background:#ed8a0b; }.exec-line-chart.violet i { background:#7549e8; }.exec-line-chart.teal i { background:#0ba1a8; }.exec-line-chart span { color:#768697;font-size:14px; }
.embedded-performance>.exec-panel-head { display:none; }.embedded-performance .exec-performance-list { margin-top:5px; }
.exec-notification-page article { padding:13px 0;display:grid;grid-template-columns:38px 1fr auto auto;align-items:center;gap:11px;border-bottom:1px solid #edf1f4; }.exec-notification-page article>span { width:38px;height:38px;display:grid;place-items:center;border-radius:9px;color:#176ee1;background:#eaf2ff; }.exec-notification-page svg { width:17px; }.exec-notification-page small { color:#1770d9;font-size:14px;font-weight:800;text-transform:uppercase; }.exec-notification-page h3 { margin:2px 0;font:800 11px Manrope; }.exec-notification-page p { margin:0;color:#768696;font-size:14px; }.exec-notification-page time { color:#8b98a5;font-size:14px; }.exec-notification-page button { padding:6px;border:1px solid #dfe7ef;border-radius:6px;color:#56687b;background:#fff;font-size:14px; }
.exec-document-groups { display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start; }
.exec-document-row { padding:12px 0;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:10px 12px;border-bottom:1px solid #edf1f4; }
.exec-document-row:last-child { border:0; }
.exec-document-row>span:first-child { width:40px;height:40px;display:grid;place-items:center;border-radius:8px;color:#176bd6;background:#edf4ff;flex:none; }
.exec-document-row svg { width:16px; }
.exec-document-row strong,.exec-document-row small { display:block; }
.exec-document-row strong { font-size:14px; }
.exec-document-row small { margin-top:3px;color:#7c8b9a;font-size:13px; }
.exec-search-summary { margin-bottom:13px;padding:14px 17px;display:flex;align-items:center;gap:11px;border:1px solid #dce5ef;border-radius:11px;background:#fff; }.exec-search-summary>svg { width:22px;color:#176bd8; }.exec-search-summary strong,.exec-search-summary span { display:block; }.exec-search-summary strong { font-size:14px; }.exec-search-summary span { margin-top:3px;color:#748494;font-size:14px; }
.exec-global-results>button { width:100%;padding:11px 4px;display:grid;grid-template-columns:85px 1fr auto;align-items:center;gap:10px;border:0;border-bottom:1px solid #edf1f4;background:#fff;text-align:left; }.exec-global-results>button>span { width:max-content;padding:4px 7px;border-radius:7px;color:#176bd6;background:#edf4ff;font-size:14px;font-weight:800; }.exec-global-results strong,.exec-global-results small { display:block; }.exec-global-results strong { font-size:14px; }.exec-global-results small { margin-top:3px;color:#778797;font-size:14px; }.exec-global-results b { color:#176bd6; }
.executive-loading { min-height:350px;display:grid;place-items:center;color:#718293;font-size:14px; }

/* Finance Department */
.finance-sidebar { background:linear-gradient(180deg,#061a35 0%,#09294f 58%,#071c38 100%); }
.finance-crest { border-color:#d89b00;color:#d89b00;background:#fff; }
.finance-sidebar .nav-item.active { background:linear-gradient(100deg,#ef671b,#ff8a2f); }
.finance-title-strip { margin-bottom:14px;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid #dfe7ef;border-radius:12px;background:#fff; }
.finance-title-strip h2 { margin:2px 0 4px;font:800 18px Manrope; }.finance-title-strip p { margin:0;color:#768697;font-size:14px; }
.finance-title-strip time { padding:8px 11px;border:1px solid #dce5ed;border-radius:8px;color:#40546a;background:#f8fafc;font-size:14px;font-weight:700; }
.finance-stat-grid { margin-bottom:13px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px; }
.finance-stat-card { min-width:0;min-height:112px;padding:11px;display:grid;grid-template-columns:38px 1fr;align-items:start;gap:9px;border:1px solid #dfe7ef;border-radius:10px;background:#fff;text-align:left;box-shadow:0 3px 12px rgba(11,34,65,.035); }
.finance-stat-card:hover { border-color:#b9cadc;transform:translateY(-1px); }
.finance-stat-card>span { width:38px;height:38px;display:grid;place-items:center;border-radius:9px;color:#176ee1;background:#eaf2ff; }
.finance-stat-card>span.green { color:#d89b00;background:#e7f8ed; }.finance-stat-card>span.violet,.finance-stat-card>span.purple { color:#7545e9;background:#f0ebff; }.finance-stat-card>span.red { color:#eb3047;background:#ffeaed; }.finance-stat-card>span.teal { color:#05a4ac;background:#e6f8f8; }.finance-stat-card>span.orange { color:#ed8908;background:#fff1de; }
.finance-stat-card svg { width:19px; }.finance-stat-card small,.finance-stat-card strong,.finance-stat-card em { display:block; }
.finance-stat-card small { color:#4e6074;font-size:14px;font-weight:800; }.finance-stat-card strong { margin:5px 0;color:#0a1e3a;font:800 12px Manrope;white-space:nowrap; }.finance-stat-card em { color:#8291a0;font-size:14px;font-style:normal; }
.finance-stat-card>b { grid-column:2;margin-top:3px;color:#176bd6;font-size:14px;text-align:right; }
.finance-dashboard-grid { margin-bottom:13px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:11px;align-items:start; }
.finance-panel { min-width:0;padding:14px;border:1px solid #dfe7ef;border-radius:11px;background:#fff;box-shadow:0 3px 13px rgba(11,34,65,.03); }
.finance-dashboard-grid>.finance-panel:nth-child(1) { grid-column:span 5; }.finance-dashboard-grid>.finance-panel:nth-child(2) { grid-column:span 4; }.finance-dashboard-grid>.finance-panel:nth-child(3) { grid-column:span 3; }
.finance-dashboard-grid>.finance-panel:nth-child(n+4) { grid-column:span 4; }
.finance-panel-head { margin-bottom:12px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px; }
.finance-panel-head h3 { margin:0 0 3px;color:#0b1f3b;font:800 12px Manrope; }.finance-panel-head p { margin:0;color:#7e8d9b;font-size:14px; }
.finance-panel-head button { padding:0;border:0;color:#176bd5;background:none;font-size:14px;font-weight:800;white-space:nowrap; }
.finance-summary-row { margin-bottom:9px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px; }.finance-summary-row span { padding:7px;border-radius:7px;color:#7a8998;background:#f5f8fb;font-size:14px; }.finance-summary-row strong { display:block;margin-top:3px;color:#10243e;font-size:14px; }.finance-summary-row strong.positive { color:#d89b00; }.finance-summary-row strong.negative { color:#d92f45; }
.finance-chart { height:155px;display:flex;align-items:flex-end;justify-content:space-around;gap:7px;border-bottom:1px solid #dfe6ec;background:repeating-linear-gradient(to top,#fff 0,#fff 30px,#edf1f5 31px); }
.finance-chart>div { height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px; }.finance-chart>div>div { height:calc(100% - 18px);display:flex;align-items:flex-end;gap:3px; }
.finance-chart i { width:14px;min-height:3px;border-radius:3px 3px 0 0;background:#d89b00; }.finance-chart i.expense { background:#ed334a; }.finance-chart span { color:#738394;font-size:14px; }
.finance-budget-table { display:grid; }.finance-budget-table>div { min-height:27px;display:grid;grid-template-columns:1.25fr .9fr .9fr 1.1fr;align-items:center;gap:6px;border-bottom:1px solid #eef1f4;font-size:14px; }
.finance-budget-table>div.head { min-height:24px;color:#67788a;background:#f6f8fb;font-weight:800; }.finance-budget-table strong { font-size:14px; }
.finance-budget-table>div>span:last-child { display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px; }.finance-budget-table>div>span:last-child::before { content:"";grid-column:1;grid-row:1;height:4px;border-radius:5px;background:#edf1f4; }.finance-budget-table i { grid-column:1;grid-row:1;height:4px;z-index:1;border-radius:5px;background:#d89b00; }.finance-budget-table i.warning { background:#ee900d; }.finance-budget-table i.danger { background:#ed334a; }.finance-budget-table b { font-size:14px; }
.finance-approval-list>div { padding:8px 0;display:grid;grid-template-columns:29px 1fr auto auto;align-items:center;gap:7px;border-bottom:1px solid #eef1f4; }.finance-approval-list>div>span { width:29px;height:29px;display:grid;place-items:center;border-radius:7px;color:#ef8b08;background:#fff2de; }.finance-approval-list svg { width:14px; }.finance-approval-list strong,.finance-approval-list small { display:block; }.finance-approval-list strong { font-size:14px; }.finance-approval-list small { margin-top:2px;color:#798997;font-size:14px; }.finance-approval-list>div>b { font-size:14px;white-space:nowrap; }.finance-approval-list button { padding:5px 7px;border:1px solid #eaf1f8;border-radius:6px;color:#d89b00;background:#edfaf1;font-size:14px;font-weight:800; }
.finance-position-grid { margin-bottom:10px;display:grid;grid-template-columns:1fr 1fr;gap:7px; }.finance-position-grid>div { padding:8px;border-radius:7px;background:#f5f8fb; }.finance-position-grid span,.finance-position-grid strong { display:block; }.finance-position-grid span { color:#778797;font-size:14px; }.finance-position-grid strong { margin-top:3px;font-size:14px; }
.finance-category-list { display:grid;gap:7px; }.finance-category-list>div { display:grid;grid-template-columns:95px 1fr auto;align-items:center;gap:7px;font-size:14px; }.finance-category-list>div>span { color:#536679; }.finance-category-list>div>i { height:5px;overflow:hidden;border-radius:5px;background:#edf1f4; }.finance-category-list>div>i>b { height:100%;display:block;border-radius:5px;background:#d89b00; }.finance-category-list.expenses>div>i>b { background:#ec3a50; }.finance-category-list>div>strong { min-width:70px;font-size:14px;text-align:right; }
.finance-lower-grid { display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:11px;align-items:start; }.finance-compact-table { min-width:670px; }.finance-compact-table th,.finance-compact-table td { padding:8px 6px;font-size:14px; }
.finance-spending-list { display:grid;gap:9px; }.finance-spending-list>div>div:first-child { margin-bottom:4px;display:flex;justify-content:space-between;gap:7px;font-size:14px; }.finance-spending-list small { display:block;margin-top:3px;color:#82909e;font-size:14px; }
.finance-notifications>div,.finance-notifications>.finance-notification-item { padding:8px 0;display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:7px;border-bottom:1px solid #edf1f4; }.finance-notifications>.finance-notification-item { width:100%;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit; }.finance-notifications>.finance-notification-item>div { display:grid;gap:2px;min-width:0; }.finance-notifications>.finance-notification-item small { color:#6b7c90;font-size:12px; }.finance-notifications>div>span,.finance-notifications>.finance-notification-item>span { width:25px;height:25px;display:grid;place-items:center;border-radius:7px;color:#176dd9;background:#eaf2ff; }.finance-notifications svg { width:13px; }.finance-notifications strong { font-size:14px; }.finance-notifications time { color:#8492a0;font-size:14px; }.finance-notifications .warning>span { color:#ed8a09;background:#fff2df; }.finance-notifications .danger>span { color:#e93248;background:#ffeaed; }.finance-notifications .success>span { color:#d89b00;background:#e8f8ed; }
.finance-fab { background:linear-gradient(100deg,#d89b00,#d89b00);box-shadow:0 10px 25px rgba(11,159,82,.28); }
.finance-voucher-filters { margin-bottom:11px;display:flex;gap:6px;flex-wrap:wrap; }.finance-voucher-filters span { padding:6px 8px;border:1px solid #dfe7ef;border-radius:7px;color:#657688;background:#fff;font-size:14px;text-transform:capitalize; }.finance-voucher-filters b { margin-left:4px;color:#10243e; }
.finance-voucher-list { display:grid;gap:9px; }.finance-voucher-list article { padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 150px minmax(260px,auto);align-items:center;gap:12px;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }.finance-voucher-main>span { color:#176bd6;font-size:14px;font-weight:800;text-transform:uppercase; }.finance-voucher-main h3 { margin:4px 0;font:800 12px Manrope; }.finance-voucher-main p { margin:0;color:#718191;font-size:14px; }.finance-voucher-main small { display:block;margin-top:4px;color:#8a97a4;font-size:14px; }.finance-voucher-value { text-align:right; }.finance-voucher-value strong { display:block;margin-bottom:6px;font-size:14px; }.finance-voucher-actions { display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap; }.finance-voucher-actions button { padding:6px 8px;border:1px solid #dbe4ed;border-radius:6px;color:#4f6275;background:#fff;font-size:14px;font-weight:800; }.finance-voucher-actions .approve,.finance-voucher-actions .process { border-color:#eaf1f8;color:#d89b00;background:#edfaf1; }.finance-voucher-actions .reject { border-color:#f1c2c8;color:#c82036;background:#fff0f2; }.finance-voucher-actions .return { border-color:#f4d69d;color:#a76500;background:#fff7e8; }
.finance-budget-cards { display:grid;grid-template-columns:repeat(3,1fr);gap:11px; }.finance-budget-cards article { padding:15px;border:1px solid #dfe7ef;border-left:4px solid #d89b00;border-radius:10px;background:#fff; }.finance-budget-cards article.warning { border-left-color:#ee900d; }.finance-budget-cards article.danger { border-left-color:#ec3349; }.finance-budget-cards article>div:first-child { display:flex;align-items:center;justify-content:space-between; }.finance-budget-cards article>div:first-child>span { color:#176bd6;font-size:14px;font-weight:800; }.finance-budget-cards h3 { margin:11px 0 4px;font:800 15px Manrope; }.finance-budget-cards p { margin:0 0 11px;color:#718191;font-size:14px; }.finance-budget-cards>article>small { display:block;margin-top:8px;color:#728293;font-size:14px; }
.finance-account-grid { margin-bottom:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:11px; }.finance-account-grid article { padding:15px;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }.finance-account-grid article>div:first-child { display:flex;gap:9px; }.finance-account-grid article>div:first-child>span { width:37px;height:37px;display:grid;place-items:center;border-radius:9px;color:#176bd6;background:#eaf2ff; }.finance-account-grid svg { width:18px; }.finance-account-grid h3 { margin:2px 0;font:800 11px Manrope; }.finance-account-grid p { margin:0;color:#7b8a99;font-size:14px; }.finance-account-grid small { color:#7b8a99;font-size:14px;text-transform:capitalize; }.finance-account-grid article>strong { display:block;margin:14px 0 5px;font:800 17px Manrope; }.finance-account-grid button { width:100%;margin-top:10px;padding:7px;border:1px solid #d8e4f3;border-radius:7px;color:#176bd6;background:#f2f7ff;font-size:14px;font-weight:800; }
.finance-procurement-flow { margin-bottom:13px;padding:11px;display:flex;align-items:center;justify-content:center;gap:6px;overflow-x:auto;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }.finance-procurement-flow span { min-width:100px;padding:7px;display:flex;align-items:center;gap:5px;border-radius:7px;color:#526579;background:#f4f7fa;font-size:14px;text-transform:capitalize; }.finance-procurement-flow span b { width:18px;height:18px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#176bd6; }.finance-procurement-flow>i { color:#a4b0bc;font-style:normal; }
.finance-procurement-list { display:grid;gap:9px; }.finance-procurement-list article { padding:13px;display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:12px;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }.finance-procurement-list span { color:#176bd6;font-size:14px;font-weight:800; }.finance-procurement-list h3 { margin:4px 0;font:800 11px Manrope; }.finance-procurement-list p { margin:0;color:#718191;font-size:14px; }.finance-procurement-list>article>strong { font-size:14px; }.finance-procurement-list button { padding:7px;border:1px solid #d8e4f3;border-radius:7px;color:#176bd6;background:#f2f7ff;font-size:14px;font-weight:800; }
.finance-report-actions { display:flex;gap:5px; }.finance-report-actions button { white-space:nowrap; }
.finance-forecast { padding:18px;text-align:center;border-radius:9px;background:linear-gradient(125deg,#edf8f2,#f3f8ff); }.finance-forecast>strong { display:block;color:#d89b00;font:800 23px Manrope; }.finance-forecast>span { display:block;margin:4px 0 15px;color:#6f8191;font-size:14px; }.finance-forecast p { margin:9px 0 0;color:#82909d;font-size:14px; }
.finance-data-panel table { min-width:850px; }

/* Credits Department  -  SACCO workspace */
.credits-sidebar { background:linear-gradient(180deg,#0b3b70 0%,#0b3b70 58%,#0b3b70 100%); }
.credits-crest { border-color:#6a54e8;color:#5b45dc;background:#fff; }
.credits-sidebar .nav-item.active { background:linear-gradient(100deg,#ef671b,#ff8a2f); }
.credits-title-strip { border-left:4px solid #6447d8; }
.credits-stat-card small { font-size:14px; }.credits-stat-card strong { font-size:14px; }.credits-stat-card em,.credits-stat-card>b { font-size:14px; }
.credits-dashboard-grid { margin-bottom:12px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:11px;align-items:start; }
.credits-dashboard-grid>.finance-panel:nth-child(1) { grid-column:span 7; }
.credits-dashboard-grid>.finance-panel:nth-child(2) { grid-column:span 5; }
.credits-dashboard-grid>.finance-panel:nth-child(3) { grid-column:1 / -1; }
.credits-dashboard-grid>.finance-panel:nth-child(n+4) { grid-column:span 4; }
.credits-combo-chart { height:165px;display:flex;align-items:flex-end;justify-content:space-around;gap:7px;border-bottom:1px solid #dfe6ec;background:repeating-linear-gradient(to top,#fff 0,#fff 31px,#edf1f5 32px); }
.credits-combo-chart>div { flex:1 1 0;min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px; }
.credits-combo-chart>div>div { width:100%;height:calc(100% - 20px);display:flex;align-items:flex-end;justify-content:center;gap:4px; }
.credits-combo-chart i { width:14px;min-height:0;border-radius:4px 4px 0 0;background:#6648df; }
.credits-combo-chart i.loan { background:#d89b00; }.credits-combo-chart span { color:#6f7f91;font-size:12px; }
.exec-legend i.saving { background:#6648df; }.exec-legend i.loan { background:#d89b00; }
.credits-portfolio { display:grid;grid-template-columns:minmax(110px,125px) minmax(0,1fr);align-items:center;gap:14px; }
.credits-donut { width:125px;aspect-ratio:1;display:grid;place-content:center;border-radius:50%;text-align:center; }
.credits-donut strong,.credits-donut span { display:block; }.credits-donut strong { font:800 19px Manrope; }.credits-donut span { color:#708092;font-size:12px; }
.credits-portfolio-legend { display:grid;gap:8px;min-width:0; }.credits-portfolio-legend>div { display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:6px;font-size:13px; }
.credits-portfolio-legend i { width:7px;height:7px;border-radius:50%; }.credits-portfolio-legend span { min-width:0; }.credits-portfolio-legend strong { white-space:nowrap; }
.credits-application-list { display:grid;gap:0;min-width:0; }
.credits-application-list article,
.credits-application-list .credits-queue-row,
.credits-application-list .credits-app-card { min-width:0;padding:10px 0;border-bottom:1px solid #edf1f4; }
.credits-application-list article:last-child { border-bottom:0; }
.credits-app-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: 100% !important;
  grid-template-columns: none !important;
}
.credits-app-top {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
}
.credits-app-top strong {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  max-width: none !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}
.credits-app-top > b {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}
.credits-app-bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  width: 100% !important;
  flex-wrap: wrap !important;
}
.credits-pending-apps,
.credits-approval-queue {
  overflow: visible !important;
}
.credits-pending-apps .credits-application-list,
.credits-approval-queue .credits-application-list {
  width: 100% !important;
  min-width: 0 !important;
}
.credits-app-top strong { font-size:14px;color:#0b1f3b;line-height:1.35; }
.credits-app-top > b { font-size:14px;color:#0b1f3b; }
.credits-app-bottom small { min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;color:#7c8a99;font-size:12px;line-height:1.35; }
.credits-application-list .credits-ref { max-width:min(100%,220px);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.credits-row-main { min-width:0; }
.credits-application-list strong { display:block;font-size:14px;color:#0b1f3b; }
.credits-application-list small { margin-top:4px;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;color:#7c8a99;font-size:12px;line-height:1.35; }
.credits-row-actions { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto;min-width:0; }
.credits-row-actions > b { font-size:14px;white-space:nowrap;color:#0b1f3b; }
.credits-row-actions .status { flex:0 0 auto;white-space:nowrap; }
.credits-application-list button.credits-icon-btn { width:30px;height:30px;min-width:30px;padding:0;display:inline-grid;place-items:center;border:1px solid #dce5ef;border-radius:8px;color:#53687f;background:#fff; }
.credits-application-list button.credits-review-btn { width:auto;height:auto;min-height:30px;padding:5px 10px;display:inline-flex;align-items:center;gap:6px;border:1px solid #dce5ef;border-radius:8px;color:#35506b;background:#fff;font-size:13px;font-weight:700;white-space:nowrap;line-height:1; }
.credits-application-list button.credits-review-btn span { display:inline-block;line-height:1; }
.credits-application-list button.credits-icon-btn svg,
.credits-application-list button.credits-review-btn svg { width:14px;height:14px;flex:0 0 auto;display:block; }
.credits-approval-queue,
.credits-pending-apps,
.credits-portfolio-panel,
.credits-chart-panel { overflow:visible;min-width:0; }
.credits-summary-cards { margin-bottom:10px;display:grid;grid-template-columns:1fr 1fr;gap:7px; }
.credits-summary-cards>div { padding:9px;border-radius:8px;background:#f5f8fb; }.credits-summary-cards span,.credits-summary-cards strong { display:block; }
.credits-summary-cards span { color:#738394;font-size:14px; }.credits-summary-cards strong { margin-top:4px;font-size:14px; }
.credits-summary-cards .green { border-left:3px solid #d89b00; }.credits-summary-cards .blue { border-left:3px solid #2475df; }.credits-summary-cards .violet { border-left:3px solid #7548e5; }.credits-summary-cards .orange { border-left:3px solid #ef9309; }
.credits-recovery-list>div { padding:8px 0;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;border-bottom:1px solid #edf1f4; }
.credits-recovery-list strong,.credits-recovery-list small { display:block; }.credits-recovery-list strong { font-size:14px; }.credits-recovery-list small { margin-top:3px;color:#7b8a99;font-size:14px; }
.credits-recovery-list>div>b { color:#d72c42;font-size:14px; }.credits-recovery-list button { padding:5px 7px;border:1px solid #f2bec5;border-radius:6px;color:#cf243b;background:#fff2f4;font-size:14px;font-weight:800; }
.credits-danger-banner { margin:0 0 10px;padding:10px 12px;border-radius:8px;background:#fff4e8;border:1px solid #f0c48a;color:#9a4d00; }
.credits-danger-banner strong { display:block;font-size:14px; }.credits-danger-banner small { display:block;margin-top:3px;font-size:13px;opacity:.9; }
.credits-recovery-list.danger>div>b { color:#c45f00; }
.credits-recovery-cards article.danger-period { border-color:#f0c48a;background:#fffaf3; }
.credits-active-loan.danger-period { border-color:#f0c48a;background:#fffaf3; }
.credits-active-loan .credits-danger-banner { grid-column:1 / -1;margin:0; }
.member-loan-danger { margin:8px 0;padding:8px 10px;border-radius:8px;background:#fff4e8;color:#9a4d00;font-size:13px;font-weight:700; }
.credits-guarantor-summary { display:grid;gap:8px; }.credits-guarantor-summary>div { display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:7px; }
.credits-guarantor-summary>div>span { width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:#edf3ff;color:#2370d7; }.credits-guarantor-summary>div>span.green { color:#d89b00;background:#e9f8ee; }.credits-guarantor-summary>div>span.orange { color:#d98208;background:#fff3df; }.credits-guarantor-summary>div>span.red { color:#da2c42;background:#ffedf0; }.credits-guarantor-summary svg { width:13px; }
.credits-guarantor-summary strong,.credits-guarantor-summary b { font-size:14px; }.credits-guarantor-summary b { color:#132843; }
.credits-lower-grid { display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:11px;align-items:start; }
.credits-fab { background:linear-gradient(100deg,#5637c8,#7355e2);box-shadow:0 10px 25px rgba(85,54,198,.3); }
.credits-workflow { margin-bottom:13px;padding:11px;display:flex;align-items:center;gap:5px;overflow-x:auto;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }
.credits-workflow span { min-width:115px;padding:8px;display:flex;align-items:center;gap:6px;border-radius:7px;color:#4d6075;background:#f4f7fb;font-size:14px;font-weight:700; }
.credits-workflow span b { min-width:20px;height:20px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#6849dc; }.credits-workflow>i { color:#9aa7b4;font-style:normal; }
.credits-loan-list { display:grid;gap:10px; }
.credits-loan-list>article,.credits-loan-card { padding:16px 18px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px 20px;border:1px solid #dfe7ef;border-radius:12px;background:#fff; }
.credits-active-loan { grid-template-columns:minmax(0,1.4fr) minmax(220px,0.9fr) auto;align-items:start; }
.credits-active-loan .credits-row-progress { grid-column:1 / -1; }
.credits-active-loan .credits-loan-actions { grid-column:1 / -1;justify-content:flex-end; }
.credits-active-figures { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.credits-active-figures>div { padding:10px 12px;border:1px solid #e5edf5;border-radius:10px;background:#f8fafc; }
.credits-active-figures span { display:block;margin-bottom:4px;color:#607084;font-size:12px; }
.credits-active-figures strong { font:800 13px Manrope;color:#082e57; }
.credits-loan-main { min-width:0; }
.credits-loan-main>span { color:#6748d9;font-size:12px;font-weight:800;letter-spacing:.02em;text-transform:uppercase; }
.credits-loan-main h3 { margin:4px 0 2px;font:800 15px/1.3 Manrope,sans-serif;color:#17324d; }
.credits-loan-main p { margin:0;color:#68798b;font-size:13px;line-height:1.45; }
.credits-loan-main small { display:block;margin-top:6px;color:#8593a0;font-size:12px; }
.credits-loan-meta { display:grid;justify-items:end;gap:8px;text-align:right; }
.credits-loan-meta strong { font-size:15px;color:#17324d; }
.credits-loan-list>article>div:nth-child(2) { text-align:right; }
.credits-loan-list>article>div:nth-child(2) strong,.credits-loan-list>article>div:nth-child(2) small { display:block; }
.credits-loan-list>article>div:nth-child(2) strong { font-size:14px; }
.credits-loan-list>article>div:nth-child(2) small { margin-top:4px;color:#82909e;font-size:14px; }
.credits-loan-actions { display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap; }
.credits-loan-actions button { padding:7px 10px;border:1px solid #dbe4ed;border-radius:7px;color:#4f6275;background:#fff;font-size:13px;font-weight:800; }
.loan-approval-queue { margin-top:10px;padding:10px 12px;border:1px solid #e4ebf3;border-radius:10px;background:#f8fbff; }
.loan-approval-queue > div { display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.86rem;color:#35506b; }
.loan-approval-queue ol { margin:8px 0 0;padding-left:18px;display:grid;gap:4px; }
.loan-approval-queue li { color:#5b7085;font-size:.82rem; }
.loan-approval-queue li.next { color:#0b5cab;font-weight:800; }
.loan-approval-queue li.approve { color:#1f7a45; }
.loan-approval-queue li.reject,.loan-approval-queue li.return { color:#b42318; }
.loan-approval-queue li.advisory-reject { color:#9a6700; }
.loan-advisory-note { margin:8px 0 0;font-size:.8rem;color:#9a6700; }
.credits-loan-actions .approve { border-color:#eaf1f8;color:#d89b00;background:#edfaf1; }.credits-loan-actions .return { border-color:#f3d399;color:#9a6207;background:#fff7e8; }.credits-loan-actions .reject { border-color:#f1c2c8;color:#c82036;background:#fff0f2; }
.credits-recovery-cards { display:grid;grid-template-columns:repeat(2,1fr);gap:11px; }.credits-recovery-cards article { padding:15px;border:1px solid #dfe7ef;border-left:4px solid #ed334a;border-radius:10px;background:#fff; }
.credits-recovery-cards article>div:first-child span { color:#d42b42;font-size:14px;font-weight:800; }.credits-recovery-cards h3 { margin:5px 0;font:800 13px Manrope; }.credits-recovery-cards p { margin:0 0 8px;color:#697b8c;font-size:14px; }
.credits-recovery-history { margin:11px 0;display:grid;gap:6px; }.credits-recovery-history>div { padding:8px;border-radius:7px;background:#f6f8fb; }.credits-recovery-history strong,.credits-recovery-history span,.credits-recovery-history small { display:block; }.credits-recovery-history strong { font-size:14px; }.credits-recovery-history span { margin:3px 0;color:#5f7284;font-size:14px; }.credits-recovery-history small { color:#8794a1;font-size:14px; }
.credits-recovery-cards article>button { width:100%;padding:7px;border:1px solid #efbdc4;border-radius:7px;color:#c92037;background:#fff3f4;font-size:14px;font-weight:800; }
.credits-statement-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:11px; }.credits-statement-grid article { padding:14px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }
.credits-statement-grid span { color:#6748d9;font-size:14px;font-weight:800; }.credits-statement-grid h3 { margin:4px 0;font:800 11px Manrope; }.credits-statement-grid p { margin:0;color:#728394;font-size:14px; }
.credits-statement-grid button { padding:7px 9px;display:flex;align-items:center;gap:5px;border:1px solid #d8cff8;border-radius:7px;color:#6546d5;background:#f5f2ff;font-size:14px;font-weight:800; }.credits-statement-grid button svg { width:14px; }
.table-sub { display:block;margin-top:3px;color:#81909e;font-size:14px;font-weight:500; }

/* Investment Department  -  business intelligence workspace */
.investment-sidebar { background:linear-gradient(180deg,#0b3b70 0%,#0b3b70 58%,#0b3b70 100%); }
.investment-crest { border-color:#ef3349;color:#ed3047;background:#fff; }
.investment-sidebar .nav-item.active { background:linear-gradient(100deg,#ef671b,#ff8a2f); }
.investment-title-strip { border-left:4px solid #ed3047; }
.investment-stat-card small { font-size:14px; }.investment-stat-card strong { font-size:14px; }.investment-stat-card em,.investment-stat-card>b { font-size:14px; }
.investment-dashboard-grid { margin-bottom:12px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:11px;align-items:start; }
.investment-dashboard-grid>.finance-panel:nth-child(1) { grid-column:span 4; }.investment-dashboard-grid>.finance-panel:nth-child(2) { grid-column:span 4; }
.investment-dashboard-grid>.finance-panel:nth-child(3) { grid-column:span 4; }.investment-dashboard-grid>.finance-panel:nth-child(4) { grid-column:span 4; }
.investment-dashboard-grid>.finance-panel:nth-child(5) { grid-column:span 4; }.investment-dashboard-grid>.finance-panel:nth-child(6) { grid-column:span 4; }
.investment-dashboard-grid>.finance-panel:nth-child(7) { grid-column:span 7; }.investment-dashboard-grid>.finance-panel:nth-child(8) { grid-column:span 5; }
.investment-portfolio-layout { display:grid;grid-template-columns:150px 1fr;align-items:center;gap:12px; }
.investment-donut { width:140px;aspect-ratio:1;display:grid;place-content:center;border-radius:50%;text-align:center; }
.investment-donut strong,.investment-donut span { display:block;max-width:105px; }.investment-donut strong { font:800 12px Manrope; }.investment-donut span { margin-top:3px;color:#758596;font-size:14px; }
.investment-allocation { display:grid;gap:8px; }.investment-allocation>div { display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:6px;font-size:14px; }
.investment-allocation i { width:7px;height:7px;border-radius:50%; }.investment-allocation i.blue { background:#2472d7; }.investment-allocation i.green { background:#d89b00; }.investment-allocation i.violet { background:#724bdc; }.investment-allocation i.orange { background:#ee9009; }.investment-allocation i.red { background:#ec3349; }.investment-allocation i.teal { background:#0ba0a8; }
.investment-allocation strong { font-size:14px;white-space:nowrap; }.investment-portfolio-metrics { margin-top:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px; }
.investment-portfolio-metrics span { padding:7px;border-radius:7px;color:#728394;background:#f4f7fa;font-size:14px; }.investment-portfolio-metrics strong { display:block;margin-top:3px;color:#10253e;font-size:14px; }
.investment-project-mini { display:grid;gap:8px; }.investment-project-mini article { padding:8px 0;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:9px;border-bottom:1px solid #edf1f4; }
.investment-project-icon { width:42px;height:42px;display:grid;place-items:center;border-radius:8px;color:#176cd5;background:linear-gradient(135deg,#e9f2ff,#dbeaff); }.investment-project-icon.agriculture { color:#d89b00;background:linear-gradient(135deg,#e6f8ec,#eaf1f8); }.investment-project-icon.hospitality { color:#7546db;background:linear-gradient(135deg,#f1ecff,#e6ddff); }
.investment-project-icon svg { width:19px; }.investment-project-mini span,.investment-project-mini strong { display:block; }.investment-project-mini article>div:nth-child(2)>span { color:#2671d3;font-size:14px;text-transform:uppercase; }.investment-project-mini article>div:nth-child(2)>strong { margin:3px 0;font-size:14px; }
.investment-project-mini article>div:last-child { text-align:right; }.investment-project-mini small,.investment-project-mini b { display:block;font-size:14px; }.investment-project-mini b { margin-top:4px; }
.investment-trend-chart { height:175px;display:flex;align-items:flex-end;justify-content:space-around;gap:8px;border-bottom:1px solid #dfe6ec;background:repeating-linear-gradient(to top,#fff 0,#fff 32px,#edf1f5 33px); }
.investment-trend-chart>div { height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px; }.investment-trend-chart>div>div { height:calc(100% - 20px);display:flex;align-items:flex-end;gap:3px; }
.investment-trend-chart i { width:10px;min-height:3px;border-radius:3px 3px 0 0; }.investment-trend-chart i.revenue,.exec-legend i.revenue { background:#d89b00; }.investment-trend-chart i.expense,.exec-legend i.expense { background:#ec3349; }.investment-trend-chart i.profit,.exec-legend i.profit { background:#2372da; }.investment-trend-chart span { color:#718294;font-size:14px; }
.investment-pl-flow { margin:16px 0;display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:8px; }.investment-pl-flow>div { padding:11px;border-radius:8px;background:#f5f8fb; }.investment-pl-flow span,.investment-pl-flow strong { display:block; }.investment-pl-flow span { color:#748495;font-size:14px; }.investment-pl-flow strong { margin-top:5px;font-size:14px; }.investment-pl-flow>i { color:#8e9ba8;font-size:18px;font-style:normal; }
.investment-ranking { display:grid; }.investment-ranking>div { min-height:36px;display:grid;grid-template-columns:22px 1fr auto auto;align-items:center;gap:8px;border-bottom:1px solid #edf1f4; }
.investment-ranking>div>b:first-child { width:20px;height:20px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#6d4adb;font-size:14px; }.investment-ranking strong,.investment-ranking small { display:block; }.investment-ranking strong { font-size:14px; }.investment-ranking small { margin-top:2px;color:#81909e;font-size:14px;text-transform:capitalize; }.investment-ranking>div>span { color:#d89b00;font-size:14px;font-weight:800; }.investment-ranking>div>strong:last-child { min-width:75px;text-align:right; }
.investment-proposal-mini>div { padding:8px 0;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;border-bottom:1px solid #edf1f4; }.investment-proposal-mini strong,.investment-proposal-mini small { display:block; }.investment-proposal-mini strong { font-size:14px; }.investment-proposal-mini small { margin-top:3px;color:#7b8a99;font-size:14px; }.investment-proposal-mini>div>b { font-size:14px; }
.investment-lower-grid { display:grid;grid-template-columns:1.35fr 1fr .65fr;gap:11px;align-items:start; }
.investment-milestones { display:grid;gap:10px; }.investment-milestones>div { display:grid;grid-template-columns:28px 1fr 100px 28px;align-items:center;gap:8px; }.investment-milestones>div>span { width:28px;height:28px;display:grid;place-items:center;border-radius:7px;color:#6748d9;background:#f0ecff; }.investment-milestones svg { width:14px; }.investment-milestones strong,.investment-milestones small { display:block; }.investment-milestones strong { font-size:14px; }.investment-milestones small { margin-top:3px;color:#81909e;font-size:14px; }.investment-milestones>div>b { font-size:14px; }
.investment-quick-stats { display:grid; }.investment-quick-stats>div { padding:9px 0;display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #edf1f4;font-size:14px; }.investment-quick-stats strong { color:#d89b00; }
.investment-fab { background:linear-gradient(100deg,#e9233b,#fb4357);box-shadow:0 10px 25px rgba(226,34,58,.28); }
.investment-project-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }.investment-project-card { overflow:hidden;border:1px solid #dfe7ef;border-radius:11px;background:#fff;box-shadow:0 4px 16px rgba(14,38,68,.04); }
.investment-card-banner { min-height:72px;padding:15px;display:flex;align-items:flex-start;justify-content:space-between;color:#fff;background:linear-gradient(135deg,#176ad1,#3a8cf1); }.investment-card-banner.agriculture { background:linear-gradient(135deg,#d89b00,#d89b00); }.investment-card-banner.hospitality { background:linear-gradient(135deg,#6842d3,#9169f3); }
.investment-card-banner span,.investment-card-banner b { padding:4px 7px;border-radius:6px;background:rgba(255,255,255,.18);font-size:14px; }.investment-card-body { padding:15px; }.investment-card-body>div:first-child { display:flex;align-items:center;justify-content:space-between;gap:8px; }.investment-card-body h3 { margin:0;font:800 13px Manrope; }.investment-card-body>p { min-height:34px;margin:9px 0;color:#657789;font-size:14px;line-height:1.55; }
.investment-project-facts { margin-bottom:12px;display:grid;grid-template-columns:1fr 1fr;gap:7px; }.investment-project-facts span { padding:7px;border-radius:7px;color:#788897;background:#f5f8fb;font-size:14px; }.investment-project-facts strong { display:block;margin-top:3px;color:#132841;font-size:14px; }
.investment-card-body>button { width:100%;margin-top:12px;padding:8px;border:1px solid #d8e3f1;border-radius:7px;color:#176bd5;background:#f2f7ff;font-size:14px;font-weight:800; }
.investment-proposal-list { display:grid;gap:9px; }.investment-proposal-list article { padding:14px;display:grid;grid-template-columns:minmax(320px,1fr) 180px auto minmax(200px,auto);align-items:center;gap:12px;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }
.investment-proposal-list article>div:first-child>span { color:#e62b42;font-size:14px;font-weight:800;text-transform:uppercase; }.investment-proposal-list h3 { margin:4px 0;font:800 12px Manrope; }.investment-proposal-list p { margin:0;color:#68798a;font-size:14px; }.investment-proposal-list small { display:block;margin-top:4px;color:#83919f;font-size:14px; }.investment-proposal-list article>div:nth-child(2) { text-align:right; }.investment-proposal-list article>div:nth-child(2) strong { font-size:14px; }
.investment-proposal-list article>div:last-child { display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap; }.investment-proposal-list button { padding:6px 8px;border:1px solid #dbe4ed;border-radius:6px;color:#4e6276;background:#fff;font-size:14px;font-weight:800; }.investment-proposal-list button.advance { border-color:#eaf1f8;color:#d89b00;background:#eefaf2; }

/* Welfare Department  -  secure member support workspace */
.welfare-sidebar { background:linear-gradient(180deg,#071a37 0%,#0c294c 58%,#081b35 100%); }
.welfare-crest { border-color:#ed3047;color:#ed3047;background:#fff; }
.welfare-sidebar .nav-item.active { background:linear-gradient(100deg,#ef671b,#ff8a2f); }
.welfare-avatar { color:#fff;background:linear-gradient(135deg,#ed3047,#ff6676); }
.welfare-primary,.welfare-fab { border-color:#e92b42!important;color:#fff!important;background:linear-gradient(100deg,#e9233b,#fb4357)!important; }
.welfare-title-strip { margin-bottom:12px;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;border:1px solid #f0dce0;border-left:4px solid #ed3047;border-radius:9px;background:linear-gradient(100deg,#fff8f9,#fff); }
.welfare-title-strip span,.welfare-title-strip strong { display:block; }.welfare-title-strip span { color:#d92940;font-size:14px;font-weight:900;letter-spacing:.08em; }.welfare-title-strip strong { margin-top:4px;font:800 14px Manrope; }.welfare-title-strip time { color:#697b8e;font-size:14px;font-weight:700; }
.welfare-stat-card small { font-size:14px; }.welfare-stat-card strong { font-size:14px; }.welfare-stat-card em,.welfare-stat-card>b { font-size:14px; }
.welfare-dashboard-grid { margin-bottom:14px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;align-items:start; }
.welfare-dashboard-grid>.finance-panel:nth-child(1) { grid-column:span 4; }.welfare-dashboard-grid>.finance-panel:nth-child(2) { grid-column:span 5; }.welfare-dashboard-grid>.finance-panel:nth-child(3) { grid-column:span 3; }
.welfare-dashboard-grid>.finance-panel:nth-child(4) { grid-column:span 4; }.welfare-dashboard-grid>.finance-panel:nth-child(5) { grid-column:span 5; }.welfare-dashboard-grid>.finance-panel:nth-child(6) { grid-column:span 3; }
.welfare-dashboard-grid>.finance-panel:nth-child(7) { grid-column:span 5; }.welfare-dashboard-grid>.finance-panel:nth-child(8) { grid-column:span 3; }.welfare-dashboard-grid>.finance-panel:nth-child(9) { grid-column:span 4; }
.welfare-dashboard-grid .finance-panel h3 { font-size:14px; }.welfare-dashboard-grid .finance-panel p { font-size:14px; }
.welfare-fund-layout { display:grid;grid-template-columns:145px 1fr;align-items:center;gap:13px; }
.welfare-donut,.welfare-small-donut { display:grid;place-items:center;border-radius:50%; }.welfare-donut { width:140px;aspect-ratio:1; }.welfare-donut>div,.welfare-small-donut>div { display:grid;place-items:center;border-radius:50%;background:#fff;text-align:center; }.welfare-donut>div { width:91px;aspect-ratio:1; }.welfare-donut small { color:#718394;font-size:14px;font-weight:800; }.welfare-donut strong { margin:4px 0;font:800 11px Manrope; }.welfare-donut span { color:#7e8d9c;font-size:14px; }
.welfare-fund-lines { display:grid;gap:9px; }.welfare-fund-lines>div { display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:7px;font-size:14px; }.welfare-fund-lines i,.welfare-status-legend i { width:8px;height:8px;border-radius:50%; }.welfare-fund-lines i.blue,.welfare-status-legend i.blue { background:#2775dd; }.welfare-fund-lines i.green,.welfare-status-legend i.green { background:#d89b00; }.welfare-fund-lines i.red,.welfare-status-legend i.red { background:#ed334a; }.welfare-fund-lines i.orange { background:#f39a17; }.welfare-fund-lines strong { font-size:14px;white-space:nowrap; }
.welfare-growth { margin-top:13px;padding:10px;border-radius:8px;background:#edf9f2; }.welfare-growth>div:first-child { display:flex;justify-content:space-between;font-size:14px;font-weight:800; }
.welfare-request-mini article { min-height:39px;display:grid;grid-template-columns:minmax(120px,1fr) auto auto auto 28px;align-items:center;gap:7px;border-bottom:1px solid #edf1f4; }.welfare-request-mini strong,.welfare-request-mini small { display:block; }.welfare-request-mini strong { font-size:14px; }.welfare-request-mini small { margin-top:3px;color:#778899;font-size:14px; }.welfare-request-mini article>b { font-size:14px; }
.welfare-request-mini article>button { width:28px;height:27px;display:grid;place-items:center;border:1px solid #dce4ec;border-radius:6px;color:#586b7d;background:#fff; }.welfare-request-mini article>button svg { width:13px; }
.urgency { display:inline-flex;padding:4px 7px;border-radius:6px;font-size:14px;font-weight:900;text-transform:capitalize; }.urgency.low { color:#0b3b70;background:#e9f8ef; }.urgency.medium { color:#9a6208;background:#fff3d9; }.urgency.high,.urgency.critical { color:#c52239;background:#ffe9ec; }
.welfare-inline-actions { margin-top:12px;display:flex;gap:7px;flex-wrap:wrap; }.welfare-inline-actions button,.welfare-decision-buttons button { padding:7px 9px;display:flex;align-items:center;gap:5px;border:1px solid #dce4ec;border-radius:7px;color:#506376;background:#fff;font-size:14px;font-weight:800; }.welfare-inline-actions svg { width:13px; }.welfare-inline-actions .approve,.welfare-decision-buttons .approve { border-color:#eaf1f8;color:#d89b00;background:#edf9f1; }.welfare-inline-actions .reject,.welfare-decision-buttons .reject { border-color:#f0c0c6;color:#c52238;background:#fff0f2; }
.welfare-emergency-list { display:grid; }.welfare-emergency-list>button { min-height:46px;padding:7px 0;display:grid;grid-template-columns:30px 1fr auto auto;align-items:center;gap:7px;border:0;border-bottom:1px solid #edf1f4;text-align:left;background:#fff; }.welfare-emergency-list>button>span { width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#e62740;background:#ffedf0; }.welfare-emergency-list svg { width:14px; }.welfare-emergency-list strong,.welfare-emergency-list small { display:block; }.welfare-emergency-list strong { font-size:14px; }.welfare-emergency-list small { margin-top:3px;color:#7b8b9a;font-size:14px; }.welfare-emergency-list b { font-size:14px; }.welfare-emergency-list em { padding:4px 6px;border-radius:5px;color:#be2136;background:#ffeaed;font-size:14px;font-style:normal;font-weight:900;text-transform:uppercase; }
.welfare-contribution-layout { display:grid;grid-template-columns:115px 1fr;align-items:center;gap:13px; }.welfare-small-donut { width:108px;aspect-ratio:1; }.welfare-small-donut>div { width:70px;aspect-ratio:1; }.welfare-small-donut strong { font:800 14px Manrope; }.welfare-small-donut span { color:#768798;font-size:14px; }
.welfare-status-legend { display:grid;gap:10px; }.welfare-status-legend>div { display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:7px;font-size:14px; }
.welfare-beneficiary-grid { display:grid;grid-template-columns:1fr 1fr;gap:8px; }.welfare-beneficiary-grid>div { padding:10px;display:grid;grid-template-columns:27px 1fr;align-items:center;column-gap:7px;border:1px solid #e5ebf1;border-radius:8px;background:#f9fbfc; }.welfare-beneficiary-grid>div>span { width:27px;height:27px;grid-row:span 2;display:grid;place-items:center;border-radius:7px;color:#ed3047;background:#ffedf0; }.welfare-beneficiary-grid svg { width:14px; }.welfare-beneficiary-grid small { color:#738495;font-size:14px; }.welfare-beneficiary-grid strong { margin-top:3px;font-size:14px; }
.welfare-category-chart { height:190px;display:flex;align-items:flex-end;justify-content:space-around;gap:10px;border-bottom:1px solid #e1e7ed;background:repeating-linear-gradient(to top,#fff 0,#fff 40px,#edf1f5 41px); }.welfare-category-chart>div { height:100%;min-width:45px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;text-align:center; }.welfare-category-chart strong { font-size:14px; }.welfare-category-chart i { width:30px;min-height:4px;border-radius:4px 4px 0 0; }.welfare-category-chart i.red { background:#ed334a; }.welfare-category-chart i.blue { background:#2775dd; }.welfare-category-chart i.green { background:#d89b00; }.welfare-category-chart i.violet { background:#724bdc; }.welfare-category-chart i.orange { background:#f39a17; }.welfare-category-chart i.teal { background:#0ca1a9; }.welfare-category-chart span { max-width:65px;min-height:26px;color:#647789;font-size:14px;line-height:1.3; }
.welfare-activity-list { display:grid; }.welfare-activity-list article { min-height:48px;display:grid;grid-template-columns:39px 1fr auto;align-items:center;gap:9px;border-bottom:1px solid #edf1f4; }.welfare-activity-list time { width:37px;height:37px;display:grid;place-items:center;border-radius:7px;color:#e42941;background:#fff0f2; }.welfare-activity-list time b,.welfare-activity-list time span { display:block;line-height:1; }.welfare-activity-list time b { font-size:14px; }.welfare-activity-list time span { font-size:14px;text-transform:uppercase; }.welfare-activity-list strong,.welfare-activity-list small { display:block; }.welfare-activity-list strong { font-size:14px; }.welfare-activity-list small { margin-top:3px;color:#7a8a99;font-size:14px; }
.welfare-notification-list strong { font-size:14px!important; }.welfare-notification-list time { font-size:14px!important; }
.welfare-workflow { margin-bottom:14px;padding:10px;display:flex;align-items:center;justify-content:center;gap:6px;overflow:auto;border:1px solid #e2e8ee;border-radius:9px;background:#fff; }.welfare-workflow span { min-width:105px;display:flex;align-items:center;gap:6px;color:#405469;font-size:14px;font-weight:800;white-space:nowrap; }.welfare-workflow b { width:22px;height:22px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#ed3047;font-size:14px; }.welfare-workflow i { color:#a1adba;font-style:normal; }.welfare-workflow.compact span { min-width:150px; }
.welfare-emergency-cards,.welfare-activity-cards,.welfare-approval-list { display:grid;gap:10px; }.welfare-emergency-cards article { padding:14px;display:grid;grid-template-columns:42px minmax(260px,1fr) auto auto auto;align-items:center;gap:12px;border:1px solid #f0d6da;border-left:4px solid #ed334a;border-radius:10px;background:#fff; }.welfare-emergency-icon { width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:#ed3047;background:#ffedf0; }.welfare-emergency-icon svg { width:19px; }.welfare-emergency-cards span { color:#d92a40;font-size:14px;font-weight:900;text-transform:uppercase; }.welfare-emergency-cards h3 { margin:4px 0;font:800 12px Manrope; }.welfare-emergency-cards p { margin:0;color:#5f7284;font-size:14px; }.welfare-emergency-cards small { display:block;margin-top:5px;color:#84919e;font-size:14px; }.welfare-emergency-cards>article>strong { font-size:14px; }.welfare-emergency-cards button { padding:7px 9px;border:1px solid #efbec5;border-radius:7px;color:#c82037;background:#fff3f4;font-size:14px;font-weight:800; }
.welfare-approval-list article { padding:14px;display:grid;grid-template-columns:minmax(300px,1fr) 165px auto minmax(220px,auto);align-items:center;gap:12px;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }.welfare-approval-list article>div:first-child>span { color:#dc2b42;font-size:14px;font-weight:900; }.welfare-approval-list h3 { margin:4px 0;font:800 12px Manrope; }.welfare-approval-list p { margin:0;color:#637587;font-size:14px; }.welfare-approval-list small { display:block;margin-top:5px;color:#82909e;font-size:14px; }.welfare-approval-list article>div:nth-child(2) { text-align:right; }.welfare-approval-list article>div:nth-child(2)>strong { font-size:14px; }.welfare-decision-buttons { display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap; }
.welfare-activity-cards article { padding:14px;display:grid;grid-template-columns:48px minmax(320px,1fr) 150px auto;align-items:center;gap:12px;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }.welfare-activity-date { width:46px;height:46px;display:grid;place-items:center;border-radius:9px;color:#e12c43;background:#fff0f2; }.welfare-activity-date b,.welfare-activity-date span { display:block;line-height:1; }.welfare-activity-date b { font-size:15px; }.welfare-activity-date span { font-size:14px;text-transform:uppercase; }.welfare-activity-cards article>div:nth-child(2)>span { color:#df2d44;font-size:14px;font-weight:900; }.welfare-activity-cards h3 { margin:4px 0;font:800 12px Manrope; }.welfare-activity-cards p { margin:0;color:#617487;font-size:14px; }.welfare-activity-cards small { display:block;margin-top:5px;color:#81909e;font-size:14px; }.welfare-activity-cards article>div:nth-child(3) { text-align:right; }.welfare-activity-cards article>div:nth-child(3) strong { font-size:14px; }
.welfare-trend-chart { height:190px;display:flex;align-items:flex-end;justify-content:space-around;gap:8px;border-bottom:1px solid #dfe6ec;background:repeating-linear-gradient(to top,#fff 0,#fff 37px,#edf1f5 38px); }.welfare-trend-chart>div { height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px; }.welfare-trend-chart>div>div { height:calc(100% - 22px);display:flex;align-items:flex-end;gap:4px; }.welfare-trend-chart i { width:15px;min-height:3px;border-radius:3px 3px 0 0; }.welfare-trend-chart i.contribution { background:#d89b00; }.welfare-trend-chart i.assistance { background:#ed334a; }.welfare-trend-chart span { color:#6c7f91;font-size:14px; }
.welfare-fab { box-shadow:0 10px 25px rgba(226,34,58,.28); }
.welfare-table th,.welfare-table td { font-size:14px!important; }

/* Welfare Department  -  secure member-support command center */
.welfare-sidebar { background:linear-gradient(180deg,#071a37 0%,#0c294c 60%,#081d38 100%); }
.welfare-crest { border-color:#ef3349;color:#ef3349;background:#fff; }
.welfare-sidebar .nav-item.active { background:linear-gradient(100deg,#ef671b,#ff8a2f); }
.welfare-sidebar .nav-item,.welfare-sidebar .user-name { font-size:14px; }
.welfare-sidebar .user-role,.welfare-sidebar .executive-brand span { font-size:14px; }
.welfare-avatar { color:#fff;background:linear-gradient(135deg,#ec2b43,#ff6a77); }
.welfare-primary { background:linear-gradient(95deg,#e8233c,#ff4055)!important;border-color:#e8233c!important; }
.welfare-title-strip { margin-bottom:12px;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;border:1px solid #f1d6da;border-left:4px solid #ec2c43;border-radius:10px;background:linear-gradient(100deg,#fff8f9,#fff); }
.welfare-title-strip span,.welfare-title-strip strong { display:block; }.welfare-title-strip span { color:#de283e;font-size:14px;font-weight:800;letter-spacing:.08em; }.welfare-title-strip strong { margin-top:4px;font:800 14px Manrope; }.welfare-title-strip time { color:#647487;font-size:14px;font-weight:700; }
.welfare-stat-grid { grid-template-columns:repeat(6,1fr); }.welfare-stat-card { min-height:112px;text-align:left; }.welfare-stat-card small { font-size:14px;line-height:1.3; }.welfare-stat-card strong { font-size:14px; }.welfare-stat-card em,.welfare-stat-card>b { font-size:14px; }
.welfare-stat-card>span.red { color:#e52a40;background:#fff0f2; }.welfare-stat-card>span.green { color:#d89b00;background:#e9f9ef; }.welfare-stat-card>span.blue { color:#2376dd;background:#edf4ff; }.welfare-stat-card>span.violet { color:#7549db;background:#f1edff; }.welfare-stat-card>span.orange { color:#e88900;background:#fff4e2; }.welfare-stat-card>span.teal { color:#0a9ca3;background:#e7f9f9; }
.welfare-dashboard-grid { margin-bottom:12px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;align-items:start; }
.welfare-dashboard-grid>.welfare-panel:nth-child(1) { grid-column:span 3; }.welfare-dashboard-grid>.welfare-panel:nth-child(2) { grid-column:span 5; }.welfare-dashboard-grid>.welfare-panel:nth-child(3) { grid-column:span 4; }
.welfare-dashboard-grid>.welfare-panel:nth-child(4) { grid-column:span 3; }.welfare-dashboard-grid>.welfare-panel:nth-child(5) { grid-column:span 5; }.welfare-dashboard-grid>.welfare-panel:nth-child(6) { grid-column:span 4; }
.welfare-dashboard-grid>.welfare-panel:nth-child(7) { grid-column:span 4; }.welfare-dashboard-grid>.welfare-panel:nth-child(8) { grid-column:span 4; }.welfare-dashboard-grid>.welfare-panel:nth-child(9) { grid-column:span 4; }
.welfare-panel .finance-panel-head h3 { font-size:14px; }.welfare-panel .finance-panel-head p,.welfare-panel .finance-panel-head button { font-size:14px; }
.welfare-fund-layout { display:grid;grid-template-columns:120px 1fr;align-items:center;gap:13px; }.welfare-donut { width:118px;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;position:relative; }
.welfare-donut:after { content:"";position:absolute;inset:18px;border-radius:50%;background:#fff; }.welfare-donut>div { position:relative;z-index:1;text-align:center; }.welfare-donut small,.welfare-donut strong,.welfare-donut span { display:block; }.welfare-donut small { color:#64768a;font-size:14px; }.welfare-donut strong { margin:2px 0;font:800 14px Manrope; }.welfare-donut span { color:#738396;font-size:14px; }
.welfare-donut.small { width:106px; }.welfare-donut.small:after { inset:17px; }
.welfare-fund-lines { display:grid;gap:7px; }.welfare-fund-lines>div { display:grid;grid-template-columns:7px 1fr;gap:3px 7px;align-items:center; }.welfare-fund-lines i,.welfare-contribution-legend i { width:7px;height:7px;border-radius:50%; }.welfare-fund-lines i.blue,.welfare-contribution-legend i.blue { background:#2879e3; }.welfare-fund-lines i.green,.welfare-contribution-legend i.green { background:#d89b00; }.welfare-fund-lines i.red,.welfare-contribution-legend i.red { background:#ef3349; }.welfare-fund-lines i.orange { background:#f59b13; }.welfare-fund-lines i.teal { background:#0a9da4; }
.welfare-fund-lines span { color:#64768a;font-size:14px; }.welfare-fund-lines strong { grid-column:2;font-size:14px; }.welfare-growth { margin-top:12px;padding:10px;border-radius:8px;background:linear-gradient(120deg,#edf9f2,#f8fcfa); }.welfare-growth>div:first-child { display:flex;justify-content:space-between;font-size:14px;font-weight:800; }
.welfare-request-mini { display:grid; }.welfare-request-mini article { min-height:51px;display:grid;grid-template-columns:1fr auto auto auto 30px;align-items:center;gap:8px;border-bottom:1px solid #edf1f4; }.welfare-request-mini span,.welfare-request-mini strong,.welfare-request-mini small { display:block; }.welfare-request-mini span { color:#2772d5;font-size:14px;font-weight:800; }.welfare-request-mini strong { margin:3px 0;font-size:14px; }.welfare-request-mini small { color:#7c8b9a;font-size:14px; }.welfare-request-mini>b { font-size:14px; }.welfare-request-mini button,.welfare-row-actions button { padding:6px;border:1px solid #dbe4ed;border-radius:6px;color:#53697d;background:#fff;font-size:14px;font-weight:800; }.welfare-request-mini button svg { width:14px; }
.urgency { padding:4px 7px;border-radius:6px;font-size:14px;font-style:normal;font-weight:800;text-transform:capitalize;white-space:nowrap; }.urgency.low { color:#0b3b70;background:#ebf9f0; }.urgency.medium { color:#a16000;background:#fff3df; }.urgency.high,.urgency.critical { color:#cf2339;background:#fff0f2; }
.welfare-inline-actions { margin-top:10px;display:flex;gap:8px; }.welfare-inline-actions button { flex:1;padding:8px;border:1px solid #e7c8ce;border-radius:7px;color:#d3253b;background:#fff5f6;font-size:14px;font-weight:800; }
.welfare-emergency-list { display:grid; }.welfare-emergency-list article { min-height:50px;display:grid;grid-template-columns:30px 1fr auto auto;align-items:center;gap:8px;border-bottom:1px solid #edf1f4; }.welfare-emergency-list article>span { width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#e5283f;background:#fff0f2; }.welfare-emergency-list svg { width:14px; }.welfare-emergency-list strong,.welfare-emergency-list small { display:block; }.welfare-emergency-list strong { font-size:14px; }.welfare-emergency-list small { margin-top:3px;color:#78899a;font-size:14px; }.welfare-emergency-list>b { font-size:14px; }
.welfare-contribution-layout { display:grid;grid-template-columns:112px 1fr;align-items:center;gap:12px; }.welfare-contribution-legend { display:grid;gap:10px; }.welfare-contribution-legend span { display:grid;grid-template-columns:7px 1fr auto;align-items:center;gap:7px;color:#607386;font-size:14px; }.welfare-contribution-legend b { color:#172c44; }
.welfare-table { min-width:750px; }.welfare-table th { font-size:14px!important; }.welfare-table td { font-size:14px!important; }.welfare-table .status { font-size:14px!important; }
.welfare-beneficiary-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:8px; }.welfare-beneficiary-grid>div { padding:10px;display:grid;grid-template-columns:28px 1fr;gap:2px 8px;border:1px solid #e6ecf2;border-radius:8px;background:#fbfcfe; }.welfare-beneficiary-grid>div>span { grid-row:span 2;width:28px;height:28px;display:grid;place-items:center;border-radius:7px;color:#e82b42;background:#fff0f2; }.welfare-beneficiary-grid svg { width:14px; }.welfare-beneficiary-grid small { color:#728497;font-size:14px; }.welfare-beneficiary-grid strong { font-size:14px; }
.welfare-bars { height:185px;display:flex;align-items:flex-end;justify-content:space-around;gap:8px;border-bottom:1px solid #dfe6ed;background:repeating-linear-gradient(to top,#fff 0,#fff 38px,#eef2f5 39px); }.welfare-bars>div { width:52px;text-align:center; }.welfare-bars>div>div { height:125px;display:flex;align-items:flex-end;justify-content:center; }.welfare-bars i { width:26px;min-height:4px;border-radius:4px 4px 0 0; }.welfare-bars strong,.welfare-bars span { display:block; }.welfare-bars strong { margin:3px 0;font-size:14px; }.welfare-bars span { min-height:24px;color:#65778a;font-size:14px;line-height:1.3; }
.welfare-activity-list article { min-height:53px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:9px;border-bottom:1px solid #edf1f4; }.welfare-activity-list time { padding:5px;text-align:center;border-radius:7px;color:#df263c;background:#fff1f3;font-size:14px;text-transform:uppercase; }.welfare-activity-list time b { display:block;font-size:14px; }.welfare-activity-list strong,.welfare-activity-list small { display:block; }.welfare-activity-list strong { font-size:14px; }.welfare-activity-list small { margin-top:3px;color:#7a8a99;font-size:14px; }
.welfare-notifications>div strong { font-size:14px;line-height:1.35; }.welfare-notifications>div time { font-size:14px; }
.welfare-floating { background:linear-gradient(100deg,#e9233b,#fb4357);box-shadow:0 10px 25px rgba(226,34,58,.28); }.welfare-floating-menu button { font-size:14px; }
.welfare-workflow { margin-bottom:12px;padding:12px;display:flex;align-items:center;justify-content:center;gap:8px;overflow:auto;border:1px solid #e2e9f0;border-radius:10px;background:#fff; }.welfare-workflow span { min-width:105px;display:flex;align-items:center;gap:7px;color:#384e64;font-size:14px;font-weight:800; }.welfare-workflow span b { width:23px;height:23px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#ed3047; }.welfare-workflow>i { color:#9ba7b3;font-style:normal; }
.welfare-row-actions { display:flex;gap:5px; }.welfare-row-actions button.approve { color:#d89b00;border-color:#eaf1f8;background:#eefaf2; }
.welfare-danger { border-color:#f0c1c7!important;color:#c92238!important;background:#fff2f3!important; }
.welfare-emergency-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }.welfare-emergency-grid article { padding:16px;border:1px solid #efc8cd;border-top:4px solid #ec3046;border-radius:10px;background:#fff; }.welfare-emergency-head { display:flex;align-items:center;justify-content:space-between; }.welfare-emergency-head>span { width:36px;height:36px;display:grid;place-items:center;border-radius:9px;color:#ec3046;background:#fff0f2; }.welfare-emergency-head svg { width:18px; }.welfare-emergency-grid article>small { display:block;margin-top:11px;color:#d62a40;font-size:14px;font-weight:800; }.welfare-emergency-grid h3 { margin:5px 0;font:800 14px Manrope; }.welfare-emergency-grid p { min-height:42px;color:#65778a;font-size:14px;line-height:1.5; }.welfare-emergency-grid article>div:nth-of-type(2) { display:grid;grid-template-columns:1fr 1fr;gap:7px; }.welfare-emergency-grid article>div:nth-of-type(2) span { padding:8px;border-radius:7px;color:#718294;background:#f5f7fa;font-size:14px; }.welfare-emergency-grid article>div:nth-of-type(2) strong { display:block;margin-top:3px;color:#172c44;font-size:14px; }.welfare-emergency-grid article>button { width:100%;margin-top:12px;padding:8px;border:1px solid #ecc2c8;border-radius:7px;color:#d2253c;background:#fff3f4;font-size:14px;font-weight:800; }
.exec-module-metrics article,.exec-approval-summary article { padding:13px;display:flex;align-items:center;gap:10px;border:1px solid #dfe7ef;border-radius:9px;background:#fff; }.exec-module-metrics article>span,.exec-approval-summary article>span { width:35px;height:35px;display:grid;place-items:center;border-radius:8px;color:#ec3046;background:#fff0f2; }.exec-module-metrics article svg,.exec-approval-summary article svg { width:17px; }.exec-module-metrics article small,.exec-module-metrics article strong,.exec-approval-summary article small,.exec-approval-summary article strong { display:block; }.exec-module-metrics article small,.exec-approval-summary article small { color:#718294;font-size:14px; }.exec-module-metrics article strong,.exec-approval-summary article strong { margin-top:3px;font-size:14px; }
.welfare-beneficiary-cards { display:grid;gap:10px; }.welfare-beneficiary-cards article { padding:15px;display:grid;grid-template-columns:45px 1fr 180px auto;align-items:center;gap:13px;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }.welfare-beneficiary-cards .avatar { width:43px;height:43px; }.welfare-beneficiary-cards span { color:#e62b42;font-size:14px;font-weight:800; }.welfare-beneficiary-cards h3 { margin:3px 0;font:800 13px Manrope; }.welfare-beneficiary-cards p,.welfare-beneficiary-cards small { margin:0;color:#718294;font-size:14px; }.welfare-beneficiary-cards article>div:nth-child(3) strong { display:block;margin:4px 0;font-size:14px; }.welfare-beneficiary-cards button { padding:8px 10px;border:1px solid #e8c7cc;border-radius:7px;color:#d5273e;background:#fff4f5;font-size:14px;font-weight:800; }
.welfare-activity-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:12px; }.welfare-activity-grid article { padding:15px;display:grid;grid-template-columns:55px 1fr auto;gap:12px;border:1px solid #dfe7ef;border-radius:10px;background:#fff; }.welfare-activity-grid time { height:58px;padding:7px;text-align:center;border-radius:8px;color:#e02a40;background:#fff0f2;font-size:14px;text-transform:uppercase; }.welfare-activity-grid time b { display:block;font-size:20px; }.welfare-activity-grid article span { color:#e02a40;font-size:14px;font-weight:800; }.welfare-activity-grid h3 { margin:4px 0;font:800 13px Manrope; }.welfare-activity-grid p { color:#65778a;font-size:14px; }.welfare-activity-grid dl { margin:9px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px; }.welfare-activity-grid dl div { padding:7px;border-radius:7px;background:#f5f7fa; }.welfare-activity-grid dt { color:#768697;font-size:14px; }.welfare-activity-grid dd { margin:3px 0 0;font-size:14px;font-weight:700; }
.welfare-meeting-list article { grid-template-columns:58px 1fr auto; }.welfare-meeting-list article small { color:#748597;font-size:14px; }
.welfare-trend-chart { height:220px;display:flex;align-items:flex-end;justify-content:space-around;gap:10px;border-bottom:1px solid #dfe6ed;background:repeating-linear-gradient(to top,#fff 0,#fff 42px,#edf1f5 43px); }.welfare-trend-chart>div { height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px; }.welfare-trend-chart>div>div { height:calc(100% - 22px);display:flex;align-items:flex-end;gap:4px; }.welfare-trend-chart i { width:13px;min-height:3px;border-radius:3px 3px 0 0; }.welfare-trend-chart i.contribution { background:#d89b00; }.welfare-trend-chart i.assistance { background:#ef3349; }.welfare-trend-chart i.balance { background:#2879e3; }.welfare-trend-chart span { color:#697b8e;font-size:14px; }
.welfare-case-hero { padding:15px;display:flex;align-items:center;gap:10px;border-radius:9px;background:linear-gradient(105deg,#fff1f3,#fff); }.welfare-case-hero>div { margin-right:auto; }.welfare-case-hero span,.welfare-case-hero strong { display:block; }.welfare-case-hero span { color:#6f8192;font-size:14px; }.welfare-case-hero strong { margin-top:4px;font:800 19px Manrope; }.welfare-modal-actions { display:flex;justify-content:flex-end;gap:8px;margin-top:14px; }.welfare-modal-actions button { padding:9px 12px;border:1px solid #dbe4ed;border-radius:7px;background:#fff;font-size:14px;font-weight:800; }.welfare-modal-actions .approve { color:#d89b00;border-color:#eaf1f8;background:#eefaf2; }.welfare-modal-actions .reject { color:#cc2338;border-color:#efc3c9;background:#fff2f3; }

/* Legal Department  -  confidential, document-focused workspace */
.legal-sidebar { background:linear-gradient(180deg,#0b3b70 0%,#0b3b70 55%,#0b3b70 100%); }
.legal-sidebar .nav-item.active { background:linear-gradient(100deg,#ef671b,#ff8a2f); }
.legal-crest { border-color:#caa45d;color:#a67828;background:#fffdf7; }
.legal-avatar { color:#fff;background:linear-gradient(135deg,#8e1d31,#c33a50); }
.legal-primary { border-color:#881d30!important;color:#fff!important;background:linear-gradient(100deg,#7e192c,#aa293f)!important; }
.legal-confidential-strip { margin-bottom:12px;padding:13px 16px;display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:12px;border:1px solid #dfd3bc;border-left:4px solid #a87c32;border-radius:9px;background:linear-gradient(105deg,#fffcf5,#fff); }
.legal-confidential-strip>svg { width:22px;color:#966b24; }.legal-confidential-strip span,.legal-confidential-strip strong { display:block; }.legal-confidential-strip span { color:#825b1e;font-size:14px;font-weight:900;letter-spacing:.08em; }.legal-confidential-strip strong { margin-top:4px;font:800 13px Manrope; }.legal-confidential-strip time { color:#66788a;font-size:14px;font-weight:700; }
.legal-stat-card { min-height:111px;text-align:left; }.legal-stat-card small { font-size:14px; }.legal-stat-card strong { font-size:14px; }.legal-stat-card em,.legal-stat-card>b { font-size:14px; }
.legal-stat-card>span.navy { color:#153963;background:#edf3f9; }.legal-stat-card>span.amber { color:#9a6812;background:#fff7e8; }.legal-stat-card>span.green { color:#d89b00;background:#edf9f1; }.legal-stat-card>span.violet { color:#7048cf;background:#f2effd; }.legal-stat-card>span.red { color:#a62137;background:#fff0f2; }.legal-stat-card>span.orange { color:#c57305;background:#fff4e5; }.legal-stat-card>span.blue { color:#246fc8;background:#edf5ff; }.legal-stat-card>span.teal { color:#0b8e94;background:#eaf9f9; }
.legal-dashboard-grid { margin-bottom:14px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;align-items:start; }
.legal-panel { min-width:0;overflow:hidden; }
.legal-panel .table-scroll { width:100%;max-width:100%;overflow-x:auto; }
.legal-dashboard-grid>.legal-panel:nth-child(1) { grid-column:span 4; }.legal-dashboard-grid>.legal-panel:nth-child(2) { grid-column:span 5; }.legal-dashboard-grid>.legal-panel:nth-child(3) { grid-column:span 3; }
.legal-dashboard-grid>.legal-panel:nth-child(4) { grid-column:span 4; }.legal-dashboard-grid>.legal-panel:nth-child(5) { grid-column:span 4; }.legal-dashboard-grid>.legal-panel:nth-child(6) { grid-column:span 4; }.legal-dashboard-grid>.legal-panel:nth-child(7) { grid-column:span 12; }
.legal-panel .finance-panel-head h3 { font-size:14px; }.legal-panel .finance-panel-head p,.legal-panel .finance-panel-head button { font-size:14px; }
.legal-case-summary { margin-bottom:11px;display:grid;grid-template-columns:repeat(5,1fr);gap:6px; }.legal-case-summary>div { padding:8px;border-radius:7px;text-align:center;background:#f4f7fa; }.legal-case-summary span,.legal-case-summary strong { display:block; }.legal-case-summary span { color:#697b8e;font-size:14px;text-transform:capitalize; }.legal-case-summary strong { margin-top:4px;font-size:14px; }
.legal-case-list,.legal-protected-list,.legal-policy-list,.legal-deadline-list { display:grid; }.legal-case-list button,.legal-protected-list button { min-height:43px;display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:8px;border:0;border-bottom:1px solid #edf1f4;text-align:left;background:#fff; }.legal-case-list i { width:7px;height:28px;border-radius:4px;background:#d7dee6; }.legal-case-list i.high,.legal-case-list i.critical { background:#a9253a; }.legal-case-list i.medium { background:#d69a31; }.legal-case-list i.low { background:#d89b00; }.legal-case-list strong,.legal-case-list small,.legal-protected-list strong,.legal-protected-list small { display:block; }.legal-case-list strong,.legal-protected-list strong { font-size:14px; }.legal-case-list small,.legal-protected-list small { margin-top:3px;color:#788898;font-size:14px; }
.legal-table { min-width:720px; }.legal-table th,.legal-table td { font-size:14px!important; }.legal-icon-button { width:28px;height:27px;display:grid;place-items:center;border:1px solid #dce5ed;border-radius:6px;color:#52677b;background:#fff; }.legal-icon-button svg { width:13px; }
.legal-score { margin-bottom:12px;display:grid;grid-template-columns:120px 1fr;align-items:center;gap:13px; }.legal-score>div { width:116px;aspect-ratio:1;display:grid;place-items:center;border-radius:50%; }.legal-score>div:before { content:"";position:absolute; }.legal-score>div>strong,.legal-score>div>span { width:76px;display:block;padding:2px;text-align:center;background:#fff; }.legal-score>div>strong { padding-top:23px;border-radius:50% 50% 0 0;font:800 18px Manrope; }.legal-score>div>span { padding-bottom:23px;border-radius:0 0 50% 50%;color:#6c7e90;font-size:14px; }.legal-score section { display:grid;grid-template-columns:auto 1fr;gap:8px;color:#697b8e;font-size:14px; }.legal-score section b { color:#142a43;font-size:14px; }
.legal-protected-list button { grid-template-columns:30px 1fr auto; }.legal-protected-list button>svg { width:18px;color:#8e1d31; }
.legal-policy-list button { min-height:48px;display:grid;grid-template-columns:28px 1fr auto auto;align-items:center;gap:8px;border:0;border-bottom:1px solid #edf1f4;text-align:left;background:#fff; }.legal-policy-list button>span { width:27px;height:27px;display:grid;place-items:center;border-radius:7px;color:#956c27;background:#fff7e8; }.legal-policy-list svg { width:14px; }.legal-policy-list strong,.legal-policy-list small { display:block; }.legal-policy-list strong { font-size:14px; }.legal-policy-list small,.legal-policy-list time { margin-top:3px;color:#7a8a99;font-size:14px; }
.legal-deadline-list button { min-height:49px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:8px;border:0;border-bottom:1px solid #edf1f4;text-align:left;background:#fff; }.legal-deadline-list time { width:38px;height:38px;display:grid;place-items:center;border-radius:7px;color:#8d1f33;background:#fff0f2; }.legal-deadline-list time b,.legal-deadline-list time span { display:block;line-height:1; }.legal-deadline-list time b { font-size:14px; }.legal-deadline-list time span { font-size:14px;text-transform:uppercase; }.legal-deadline-list strong,.legal-deadline-list small { display:block; }.legal-deadline-list strong { font-size:14px; }.legal-deadline-list small { margin-top:3px;color:#7b8b9b;font-size:14px; }
.legal-risk { padding:4px 7px;border-radius:6px;font-size:14px;font-style:normal;font-weight:900;text-transform:capitalize;white-space:nowrap; }.legal-risk.low { color:#0b3b70;background:#eaf8ef; }.legal-risk.medium { color:#95620d;background:#fff4df; }.legal-risk.high,.legal-risk.critical { color:#a52137;background:#ffedf0; }
.legal-notifications strong { font-size:14px!important; }.legal-notifications time { font-size:14px!important; }
.legal-workflow { margin-bottom:13px;padding:11px;display:flex;align-items:center;justify-content:center;gap:7px;overflow:auto;border:1px solid #e0e7ee;border-radius:9px;background:#fff; }.legal-workflow span { min-width:108px;display:flex;align-items:center;gap:7px;color:#3f5368;font-size:14px;font-weight:800; }.legal-workflow b { width:23px;height:23px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#17385f;font-size:14px; }.legal-workflow i { color:#9ca9b5;font-style:normal; }
.legal-case-cards { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }.legal-case-cards article { padding:15px;border:1px solid #dfe6ed;border-top:4px solid #17385f;border-radius:10px;background:#fff;box-shadow:0 4px 16px rgba(13,37,67,.04); }.legal-case-cards header,.legal-case-cards footer { display:flex;align-items:center;justify-content:space-between;gap:8px; }.legal-case-cards header>span { color:#17385f;font-size:14px;font-weight:900; }.legal-case-cards h3 { margin:9px 0 5px;font:800 13px Manrope; }.legal-case-cards>article>p { min-height:44px;color:#607487;font-size:14px;line-height:1.5; }.legal-case-cards dl { display:grid;grid-template-columns:1fr 1fr;gap:7px; }.legal-case-cards dl>div { padding:7px;border-radius:7px;background:#f5f7f9; }.legal-case-cards dt { color:#768798;font-size:14px; }.legal-case-cards dd { margin:3px 0 0;font-size:14px;font-weight:700; }.legal-case-cards footer { margin-top:12px; }.legal-case-cards footer button { padding:7px 9px;border:1px solid #ccd9e6;border-radius:7px;color:#17385f;background:#f1f6fa;font-size:14px;font-weight:800; }
.legal-confidential-notice { border-color:#dacbac!important;color:#624718!important;background:#fffbf1!important; }
.legal-contract-list,.legal-complaint-list,.legal-compliance-list { display:grid;gap:9px; }.legal-contract-list article { padding:14px;display:grid;grid-template-columns:42px minmax(260px,1fr) 170px auto minmax(180px,auto);align-items:center;gap:12px;border:1px solid #dfe6ed;border-radius:10px;background:#fff; }.legal-contract-mark { width:42px;height:42px;display:grid;place-items:center;border-radius:9px;color:#17385f;background:#edf3f8; }.legal-contract-mark svg { width:20px; }.legal-contract-list article>div:nth-child(2)>span { color:#8b6525;font-size:14px;font-weight:900; }.legal-contract-list h3 { margin:4px 0;font:800 12px Manrope; }.legal-contract-list p { margin:0;color:#607386;font-size:14px; }.legal-contract-list small { display:block;margin-top:4px;color:#81909e;font-size:14px; }.legal-contract-list article>div:nth-child(3) { text-align:right; }.legal-contract-list article>div:nth-child(3) strong { font-size:14px; }.legal-contract-actions { display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap; }.legal-contract-actions button { padding:6px 8px;border:1px solid #dbe4ed;border-radius:6px;color:#52677a;background:#fff;font-size:14px;font-weight:800; }.legal-contract-actions .approve { color:#0b3b70;border-color:#eaf1f8;background:#edf9f1; }.legal-contract-actions .reject { color:#a92137;border-color:#ebc0c7;background:#fff0f2; }
.legal-policy-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }.legal-policy-grid article { padding:15px;border:1px solid #dfe6ed;border-radius:10px;background:#fff; }.legal-policy-grid header { display:flex;align-items:center;justify-content:space-between; }.legal-policy-grid header>span { width:38px;height:38px;display:grid;place-items:center;border-radius:9px;color:#946923;background:#fff7e8; }.legal-policy-grid header svg { width:18px; }.legal-policy-grid article>small { display:block;margin-top:11px;color:#8d6625;font-size:14px;font-weight:900; }.legal-policy-grid h3 { margin:5px 0;font:800 13px Manrope; }.legal-policy-grid p { min-height:32px;color:#65778a;font-size:14px; }.legal-policy-grid article>div { display:grid;grid-template-columns:1fr 1fr;gap:7px; }.legal-policy-grid article>div span { padding:8px;border-radius:7px;color:#738495;background:#f5f7fa;font-size:14px; }.legal-policy-grid article>div strong { display:block;margin-top:4px;color:#182d45;font-size:14px; }.legal-policy-grid article>button { width:100%;margin-top:12px;padding:8px;border:1px solid #d4dee8;border-radius:7px;color:#17385f;background:#f2f6fa;font-size:14px;font-weight:800; }
.legal-complaint-list article { padding:14px;display:grid;grid-template-columns:38px minmax(280px,1fr) auto auto;align-items:center;gap:12px;border:1px solid #e1e7ed;border-radius:10px;background:#fff; }.legal-confidential-badge { width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:#8e1d31;background:#fff0f2; }.legal-confidential-badge svg { width:17px; }.legal-complaint-list article>div:nth-child(2)>span { color:#8c1d31;font-size:14px;font-weight:900; }.legal-complaint-list h3 { margin:4px 0;font:800 12px Manrope; }.legal-complaint-list p { margin:0;color:#617487;font-size:14px; }.legal-complaint-list small { display:block;margin-top:4px;color:#81909e;font-size:14px; }.legal-complaint-list article>div:last-child button { padding:7px 9px;border:1px solid #d0dce7;border-radius:7px;color:#17385f;background:#f2f6fa;font-size:14px;font-weight:800; }
.legal-opinion-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:12px; }.legal-opinion-grid article { padding:15px;border:1px solid #dfe6ed;border-radius:10px;background:#fff; }.legal-opinion-grid header,.legal-opinion-grid footer { display:flex;align-items:center;justify-content:space-between;gap:8px; }.legal-opinion-grid header>span { color:#8b6423;font-size:14px;font-weight:900; }.legal-opinion-grid h3 { margin:10px 0 6px;font:800 13px Manrope; }.legal-question { color:#52687c;font-size:14px;font-weight:700; }.legal-opinion-text { margin:11px 0;padding:11px;border-left:3px solid #c6a05b;background:#fffbf3; }.legal-opinion-text strong { font-size:14px; }.legal-opinion-text p { margin:5px 0 0;color:#5f7284;font-size:14px;line-height:1.5; }.legal-opinion-grid footer small { color:#7b8b9a;font-size:14px; }.legal-opinion-grid footer button { width:30px;height:28px;border:1px solid #d5dfe8;border-radius:6px;color:#17385f;background:#fff; }.legal-opinion-grid footer svg { width:14px; }
.legal-compliance-list article { padding:12px 14px;display:grid;grid-template-columns:minmax(220px,1fr) 160px 150px minmax(240px,1fr) auto;align-items:center;gap:12px;border:1px solid #dfe6ed;border-radius:9px;background:#fff; }.legal-compliance-list article>div:first-child span { color:#17385f;font-size:14px;font-weight:900; }.legal-compliance-list h3 { margin:3px 0;font:800 11px Manrope; }.legal-compliance-list p { margin:0;color:#637689;font-size:14px; }.legal-compliance-score strong { font-size:14px; }.legal-compliance-list article>div:nth-child(3) { display:flex;gap:5px;flex-wrap:wrap; }.legal-compliance-list article>div:nth-child(4) small,.legal-compliance-list article>div:nth-child(4) strong { display:block; }.legal-compliance-list article>div:nth-child(4) small { color:#718395;font-size:14px; }.legal-compliance-list article>div:nth-child(4) strong { margin-top:4px;font-size:14px; }.legal-compliance-list time { color:#6c7e90;font-size:14px; }
.legal-court-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:12px; }.legal-court-grid article { padding:16px;border:1px solid #dfe6ed;border-top:4px solid #8d2033;border-radius:10px;background:#fff; }.legal-court-grid header { display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px; }.legal-court-grid header>span { width:39px;height:39px;display:grid;place-items:center;border-radius:9px;color:#8d2033;background:#fff0f2; }.legal-court-grid header svg { width:19px; }.legal-court-grid header small { color:#8d2033;font-size:14px;font-weight:900; }.legal-court-grid h3 { margin:3px 0;font:800 13px Manrope; }.legal-court-grid dl { margin:14px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px; }.legal-court-grid dl>div { padding:8px;border-radius:7px;background:#f5f7f9; }.legal-court-grid dt { color:#738496;font-size:14px; }.legal-court-grid dd { margin:4px 0 0;font-size:14px;font-weight:700; }
.legal-report-grid article { border-top:3px solid #17385f; }.legal-document-panel .exec-document-row>span { color:#8b6423;background:#fff7e8; }
.legal-calendar { display:grid;gap:10px; }.legal-calendar article { padding:13px;display:grid;grid-template-columns:58px 1fr auto auto;align-items:center;gap:12px;border:1px solid #dfe6ed;border-radius:10px;background:#fff; }.legal-calendar time { height:54px;display:grid;place-items:center;border-radius:9px;color:#8e1e32;background:#fff0f2; }.legal-calendar time strong,.legal-calendar time span { display:block;line-height:1; }.legal-calendar time strong { font-size:17px; }.legal-calendar time span { font-size:14px;text-transform:uppercase; }.legal-calendar article>div>span { color:#896225;font-size:14px;font-weight:900; }.legal-calendar h3 { margin:4px 0;font:800 12px Manrope; }.legal-calendar p { margin:0;color:#748597;font-size:14px; }.legal-calendar article>button { padding:7px 9px;border:1px solid #d1dce7;border-radius:7px;color:#17385f;background:#f1f6fa;font-size:14px;font-weight:800; }
.legal-case-hero { padding:15px;display:flex;align-items:center;gap:10px;border-radius:9px;background:linear-gradient(105deg,#eef3f8,#fff); }.legal-case-hero>div { margin-right:auto; }.legal-case-hero span,.legal-case-hero strong { display:block; }.legal-case-hero span { color:#6d7f91;font-size:14px; }.legal-case-hero strong { margin-top:4px;font:800 18px Manrope; }
.legal-floating { background:linear-gradient(100deg,#77172a,#a7293e);box-shadow:0 10px 25px rgba(84,14,29,.28); }.legal-floating-menu button { font-size:14px; }

@media (max-width: 1100px) {
  .metric-grid { grid-template-columns: repeat(2, 1fr); }
  .products { grid-template-columns: 1fr 1fr; }
  .department-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .department-layout { grid-template-columns:1fr; }
  .exec-stat-grid { grid-template-columns:repeat(2,1fr); }
  .exec-department-layout { grid-template-columns:1fr; }
  .exec-department-cards { grid-template-columns:repeat(2,1fr); }
  .exec-health-grid { grid-template-columns:repeat(2,1fr); }
  .finance-stat-grid { grid-template-columns:repeat(3,1fr); }
  .finance-dashboard-grid { grid-template-columns:repeat(2,1fr); }
  .finance-dashboard-grid>.finance-panel:nth-child(n) { grid-column:span 1; }
  .finance-lower-grid { grid-template-columns:1fr; }
  .finance-budget-cards,.finance-account-grid { grid-template-columns:repeat(2,1fr); }
  .credits-dashboard-grid { grid-template-columns:repeat(2,1fr); }
  .credits-dashboard-grid>.finance-panel:nth-child(n) { grid-column:span 1; }
  .credits-lower-grid { grid-template-columns:1fr; }
  .credits-statement-grid { grid-template-columns:repeat(2,1fr); }
  .investment-dashboard-grid { grid-template-columns:repeat(2,1fr); }
  .investment-dashboard-grid>.finance-panel:nth-child(n) { grid-column:span 1; }
  .investment-lower-grid { grid-template-columns:1fr; }
  .investment-project-grid { grid-template-columns:repeat(2,1fr); }
  .welfare-stat-grid { grid-template-columns:repeat(3,1fr); }
  .welfare-dashboard-grid { grid-template-columns:repeat(2,1fr); }
  .welfare-dashboard-grid>.welfare-panel:nth-child(n) { grid-column:span 1; }
  .welfare-dashboard-grid>.finance-panel:nth-child(n) { grid-column:span 1; }
  .welfare-emergency-grid { grid-template-columns:repeat(2,1fr); }
  .legal-dashboard-grid { grid-template-columns:repeat(2,1fr); }
  .legal-dashboard-grid>.legal-panel:nth-child(n) { grid-column:span 1; }
  .legal-case-cards,.legal-policy-grid { grid-template-columns:repeat(2,1fr); }
  .legal-compliance-list article { grid-template-columns:1fr 150px auto; }
  .legal-compliance-list article>div:nth-child(4) { grid-column:1/-1; }
}
@media (max-width: 840px) {
  .login-page { grid-template-columns:1fr; }
  .login-brand { min-height:270px;padding:32px 28px; }
  .login-message h1 { font-size:34px; }
  .login-message p,.login-features { display:none; }
  .login-panel { padding:42px 24px; }
  .app-shell { display:block; }
  .sidebar { transform:translateX(-100%); transition:.22s; box-shadow:16px 0 45px rgba(0,0,0,.2); }
  .sidebar.open { transform:translateX(0); }
  .sidebar-backdrop {
    display:block;
    position:fixed;
    inset:0;
    z-index:19;
    border:0;
    padding:0;
    margin:0;
    background:rgba(8,22,40,.45);
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }
  .main { grid-column:auto; }
  .mobile-menu { display:grid; place-items:center; }
  .mobile-back { display:grid; place-items:center; }
  .mobile-signout { display:grid !important; }
  .topbar { padding:0 12px; gap:6px; }
  .top-search { flex:1; width:auto; min-width:0; }
  .date-chip,.desktop-only-back { display:none; }
  .content { padding:25px 18px 40px; }
  .dashboard-grid { grid-template-columns:1fr; }
  .settings-grid { grid-template-columns:1fr; }
  .messenger { grid-template-columns:290px minmax(0,1fr);height:calc(100vh - 175px); }
  .loan-detail-summary { grid-template-columns:1fr 1fr; }
  .loan-application-grid { grid-template-columns:1fr; }
  .organization-hero { align-items:flex-start;flex-direction:column; }
  .department-header { grid-template-columns:auto 1fr; }
  .authority-card { grid-column:1/-1;width:100%; }
  .app-shell:has(.executive-sidebar) { display:block; }
  .executive-sidebar { transform:translateX(-100%);transition:.22s;box-shadow:16px 0 45px rgba(0,0,0,.2);z-index:20; }
  .executive-sidebar.open { transform:translateX(0); }
  .executive-sidebar+.main { grid-column:auto; }
  .exec-command-grid,.exec-bottom-grid,.exec-analytics-grid { grid-template-columns:1fr; }
  .exec-dept-top,.exec-module-metrics,.exec-approval-summary { grid-template-columns:repeat(2,1fr); }
  .exec-top-profile { display:none; }
  .finance-voucher-list article { grid-template-columns:1fr auto; }
  .finance-voucher-actions { grid-column:1/-1;justify-content:flex-start; }
  .credits-loan-list>article,.credits-loan-card { grid-template-columns:1fr auto; }
  .credits-active-loan,.credits-active-figures { grid-template-columns:1fr; }
  .credits-loan-actions { grid-column:1/-1;justify-content:flex-start; }
  .investment-proposal-list article { grid-template-columns:1fr auto; }
  .investment-proposal-list article>div:last-child { grid-column:1/-1;justify-content:flex-start; }
  .welfare-beneficiary-cards article { grid-template-columns:45px 1fr auto; }
  .welfare-beneficiary-cards article>button { grid-column:2/-1;justify-self:start; }
  .legal-contract-list article { grid-template-columns:42px 1fr auto; }
  .legal-contract-actions { grid-column:2/-1;justify-content:flex-start; }
  .legal-complaint-list article { grid-template-columns:38px 1fr auto; }
  .legal-complaint-list article>div:last-child { grid-column:2/-1; }
}
@media (max-width: 560px) {
  .topbar { height:65px; }
  .top-actions .icon-button:not(.mobile-signout):not(.exec-calendar-button) { display:none; }
  .page-head { flex-direction:column; }
  .head-actions { width:100%; }
  .head-actions .button { flex:1; }
  .metric-grid { grid-template-columns:1fr; }
  .metric { min-height:115px; }
  .products { grid-template-columns:1fr; }
  .loan-hero { flex-direction:column; }
  .loan-hero .button { align-self:flex-start; }
  .form-grid { grid-template-columns:1fr; }
  .field.full { grid-column:auto; }
  .chart { gap:5px; }
  .messenger { height:calc(100vh - 190px);min-height:560px;grid-template-columns:1fr; }
  .messenger.chat-open .conversation-panel { display:none; }
  .messenger:not(.chat-open) .chat-panel { display:none; }
  .chat-back { display:grid;place-items:center; }
  .message-bubble { max-width:86%; }
  .department-grid { grid-template-columns:1fr; }
  .department-card { min-height:auto; }
  .department-card p { min-height:0; }
  .organization-strip { align-items:flex-start;flex-direction:column; }
  .organization-strip .button { width:100%; }
  .department-header { grid-template-columns:1fr; }
  .department-header>.department-icon { width:44px; }
  .exec-welcome { align-items:flex-start;flex-direction:column; }
  .exec-live { width:100%; }
  .exec-stat-grid,.exec-health-grid,.exec-dept-top,.exec-module-metrics,.exec-approval-summary,.exec-department-cards,.exec-project-grid,.exec-report-grid,.exec-document-groups { grid-template-columns:1fr; }
  .exec-stat-card { min-height:92px; }
  .exec-calendar-page article { grid-template-columns:58px 1fr; }
  .exec-calendar-page article>button { grid-column:1/-1;text-align:right; }
  .exec-approval-row { grid-template-columns:1fr; }
  .exec-approval-row>div:last-child { max-width:none;justify-content:flex-start; }
  .exec-approval-row>div:last-child>b { text-align:left; }
  .exec-report-grid article { grid-template-columns:40px 1fr; }
  .exec-report-actions { grid-column:1/-1; }.exec-report-actions button { flex:1;justify-content:center; }
  .exec-notification-page article { grid-template-columns:35px 1fr auto; }
  .exec-notification-page article>button { grid-column:2/-1;justify-self:start; }
  .exec-floating { right:14px;bottom:14px; }
  .finance-title-strip { align-items:flex-start;flex-direction:column; }
  .finance-stat-grid,.finance-dashboard-grid,.finance-budget-cards,.finance-account-grid { grid-template-columns:1fr; }
  .finance-dashboard-grid>.finance-panel:nth-child(n) { grid-column:span 1; }
  .finance-summary-row { grid-template-columns:1fr; }
  .finance-voucher-list article,.finance-procurement-list article { grid-template-columns:1fr; }
  .finance-voucher-value { text-align:left; }
  .finance-voucher-actions { justify-content:flex-start; }
  .credits-dashboard-grid,.credits-recovery-cards,.credits-statement-grid { grid-template-columns:1fr; }
  .credits-portfolio { grid-template-columns:1fr;justify-items:center; }
  .credits-loan-list>article,.credits-loan-card { grid-template-columns:1fr; }
  .credits-loan-meta { justify-items:start;text-align:left; }
  .credits-loan-list>article>div:nth-child(2) { text-align:left; }
  .credits-loan-actions { justify-content:flex-start; }
  .investment-dashboard-grid,.investment-project-grid { grid-template-columns:1fr; }
  .investment-portfolio-layout { grid-template-columns:1fr;justify-items:center; }
  .investment-portfolio-metrics { grid-template-columns:1fr; }
  .investment-pl-flow { grid-template-columns:1fr; }
  .investment-pl-flow>i { text-align:center; }
  .investment-proposal-list article { grid-template-columns:1fr; }
  .investment-proposal-list article>div:nth-child(2) { text-align:left; }
  .welfare-stat-grid,.welfare-dashboard-grid,.welfare-emergency-grid,.welfare-activity-grid { grid-template-columns:1fr; }
  .welfare-dashboard-grid>.finance-panel:nth-child(n) { grid-column:span 1; }
  .welfare-fund-layout,.welfare-contribution-layout { grid-template-columns:1fr;justify-items:center; }
  .welfare-fund-lines,.welfare-contribution-legend { width:100%; }
  .welfare-beneficiary-cards article { grid-template-columns:45px 1fr; }
  .welfare-beneficiary-cards article>div:nth-child(3),.welfare-beneficiary-cards article>button { grid-column:2; }
  .welfare-activity-grid article { grid-template-columns:50px 1fr; }.welfare-activity-grid article>.status { grid-column:2;justify-self:start; }
  .welfare-activity-grid dl { grid-template-columns:1fr; }
  .legal-confidential-strip { grid-template-columns:30px 1fr; }.legal-confidential-strip time { grid-column:2; }
  .legal-dashboard-grid,.legal-case-cards,.legal-policy-grid,.legal-opinion-grid,.legal-court-grid { grid-template-columns:minmax(0,1fr); }
  .legal-dashboard-grid>.legal-panel:nth-child(n) { grid-column:1;min-width:0; }
  .legal-contract-list article,.legal-complaint-list article,.legal-compliance-list article,.legal-calendar article { grid-template-columns:1fr; }
  .legal-contract-list article>div:nth-child(3),.legal-compliance-list article>div:nth-child(n) { text-align:left; }
  .legal-contract-actions,.legal-complaint-list article>div:last-child { grid-column:auto;justify-content:flex-start; }
  .legal-case-cards dl,.legal-court-grid dl { grid-template-columns:1fr; }
}

/* 2026 readability, larger dashboard cards, member portal and personal settings. */
body{font-size:15.5px;line-height:1.5}.content{padding:28px 36px 48px}.page-head h1{font-size:clamp(29px,2.4vw,38px)}
.nav-item{min-height:48px;padding:13px 14px;font-size:15px}.nav-item svg{width:21px;height:21px}.topbar{min-height:86px}.top-search{min-height:46px}.button{min-height:44px;padding:11px 17px;font-size:14px}.button.small{min-height:38px}
.card,.finance-panel,.exec-panel,.dept-panel{border-radius:20px}.card{padding:22px}.metric,.exec-stat-card,.finance-stat-card,.exec-module-metric,.bio-stats article,.audit-stat,.sup-stat-card{min-height:128px;padding:20px}.metric-value,.finance-stat-card strong,.exec-stat-card strong,.exec-module-metric strong{font-size:clamp(20px,1.7vw,28px)}
.metric-grid,.exec-stats-grid,.finance-stats-grid,.investment-stats-grid,.credits-stats-grid{gap:18px}.finance-panel,.exec-panel,.dept-panel{padding:22px}.card-title,.finance-panel h3,.exec-panel h3,.dept-panel h3{font-size:18px}.card-subtitle,.finance-panel p,.exec-panel p,.dept-panel p{font-size:14px}
table th,table td{padding:15px 14px;font-size:14px}.field input,.field select,.field textarea{min-height:46px;padding:11px 13px;font-size:15px}.field textarea{min-height:110px}.field label{font-size:14px}.status,.dept-tag{font-size:14px;padding:6px 10px}
.account-settings{margin-bottom:24px}.account-settings-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,#f1faf5,#fff)}.account-settings-head h2{margin:3px 0;font:800 25px Manrope}.account-settings-head p{margin:0;color:var(--muted)}.account-photo{width:82px;height:82px;border-radius:22px;display:grid;place-items:center;overflow:hidden;background:var(--green-900);color:#fff;font:800 24px Manrope}.account-photo img{width:100%;height:100%;object-fit:cover}.account-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}.account-form{display:flex;flex-direction:column;gap:14px}.account-form h3{margin:0;font:800 18px Manrope}.account-form>p{margin:-8px 0 0;color:var(--muted)}.account-form>.button{margin-top:auto}
.member-context-link{margin-top:10px;border:1px solid rgba(240,180,41,.38);color:var(--lime)}.member-crest{background:linear-gradient(135deg,#d89b00,#d89b00)}.member-welcome{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:27px 30px;border-radius:22px;background:linear-gradient(135deg,#0b3b70,#0b3b70);color:#fff}.member-welcome:not(.member-hero-card) span{color:var(--lime);font-weight:700}.member-welcome:not(.member-hero-card) h2{margin:4px 0;font:800 clamp(25px,2vw,34px) Manrope}.member-welcome p{margin:0;color:#c6ded3}.member-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:20px 0}.member-summary-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.member-summary-card{min-height:142px;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;text-align:left;display:flex;gap:15px;align-items:flex-start;box-shadow:var(--shadow)}.member-summary-card>span{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:var(--green-100);color:var(--green-700)}.member-summary-card svg{width:23px}.member-summary-card div{display:flex;flex-direction:column;gap:5px;min-width:0}.member-summary-card small{color:var(--muted);font-weight:700}.member-summary-card strong{font:800 clamp(19px,1.4vw,25px) Manrope}.member-summary-card em{font-style:normal;color:var(--muted)}.member-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.member-list{display:grid}.member-list article{display:grid;grid-template-columns:38px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.member-list article>span{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:var(--soft);color:var(--green-700)}.member-list svg{width:18px}.member-list strong,.member-list p{display:block;margin:0}.member-list p,.member-list time{color:var(--muted)}.member-list .unread{background:#f3f8ff}.member-empty{padding:26px;color:var(--muted);text-align:center}.member-profile-layout,.member-stack{display:grid;gap:20px}.member-identity{display:flex;align-items:center;gap:22px}.member-passport{width:120px;height:145px;border-radius:18px;overflow:hidden;display:grid;place-items:center;background:var(--green-900);color:#fff;font:800 28px Manrope}.member-passport img{width:100%;height:100%;object-fit:cover}.member-identity h2{margin:5px 0;font:800 28px Manrope}.member-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0}.member-profile-grid div{padding:15px;border-bottom:1px solid var(--line)}.member-profile-grid dt{color:var(--muted);font-size:14px}.member-profile-grid dd{margin:5px 0 0;font-weight:700}.module-actions,.legal-registration-actions{display:flex;justify-content:flex-end;gap:12px;margin-bottom:18px}.module-actions .button,.module-actions a{display:inline-flex;align-items:center;gap:8px;text-decoration:none}.member-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.member-document-grid article{display:flex;flex-direction:column;gap:15px;min-height:240px}.member-document-grid article>span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:var(--blue-soft);color:var(--blue)}.member-document-grid article>.button{margin-top:auto}.member-meeting-list{display:grid;gap:15px}.member-meeting-list article{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:20px}.member-meeting-list time{display:grid;place-items:center;border-radius:15px;padding:9px;background:var(--green-100)}.member-meeting-list time b{font-size:24px}.member-meeting-list h3,.member-meeting-list p{margin:3px 0}.legal-register-modal{width:min(920px,94vw);max-height:92vh;overflow:auto}.legal-form-section{padding:18px;border:1px solid var(--line);border-radius:16px;margin-bottom:16px}.legal-form-section h3{margin:0 0 15px;font:800 18px Manrope}.organization-role-box{padding:14px;border-radius:12px;background:var(--soft)}.organization-role-box p{margin:5px 0;color:var(--muted)}
.status.finance-verification,.status.executive-authorization{color:#75570c;background:#fff0c7}
@media(max-width:1200px){.member-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-settings-grid,.member-document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.content{padding:22px 16px 38px}.member-welcome{align-items:flex-start;flex-direction:column}.member-summary-grid,.member-summary-grid.compact,.member-home-grid,.account-settings-grid,.member-document-grid,.member-profile-grid{grid-template-columns:1fr}.member-meeting-list article{grid-template-columns:60px 1fr}.member-meeting-list article>.status{grid-column:2}.account-settings-head{align-items:flex-start}.metric,.exec-stat-card,.finance-stat-card,.exec-module-metric,.member-summary-card{min-height:118px}.module-actions,.legal-registration-actions{justify-content:flex-start;flex-wrap:wrap}}

/* Unified 2026 visual system: readable system typography and collision-safe cards. */
*{font-family:Inter,"Segoe UI",Arial,sans-serif!important}
body{font-size:14.5px;line-height:1.42}.content{padding:24px 30px 42px}.page-head h1{font-size:clamp(27px,2.1vw,34px)}
.nav-item{min-height:44px;padding:11px 13px;font-size:14.5px}.topbar{min-height:78px}.top-search{min-height:42px}.button{min-height:40px;padding:9px 14px;font-size:14px}
.card,.finance-panel,.exec-panel,.dept-panel{border-radius:16px}.card{padding:18px}.finance-panel,.exec-panel,.dept-panel{padding:18px}
.metric,.finance-stat-card,.exec-module-metric,.bio-stats article,.audit-stat,.sup-stat-card{min-height:112px;padding:16px}
.card-title,.finance-panel h3,.exec-panel h3,.dept-panel h3{font-size:17px}.metric-value,.finance-stat-card strong,.exec-module-metric strong{font-size:clamp(19px,1.45vw,24px)}
table th,table td{padding:12px 11px;font-size:14px}.field input,.field select,.field textarea{min-height:42px;padding:9px 11px;font-size:14.5px}.field textarea{min-height:96px}
.exec-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.exec-stat-card{position:relative;min-width:0;min-height:112px;padding:16px;grid-template-columns:42px minmax(0,1fr);overflow:hidden}.exec-stat-card>span:nth-child(2){min-width:0;padding-right:12px}.exec-stat-card small{font-size:14px;white-space:normal;line-height:1.18}.exec-stat-card strong{font-size:clamp(18px,1.35vw,23px);white-space:normal;line-height:1.08;overflow-wrap:anywhere}.exec-stat-card em{font-size:14px;white-space:normal}.exec-stat-card>b{position:absolute;right:11px;top:50%;transform:translateY(-50%)}
.profile-avatar-image,.avatar img,.chat-avatar img,.message-avatar img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}.avatar,.chat-avatar{overflow:hidden}.message-row{align-items:flex-end}.message-avatar{width:32px;height:32px;flex:0 0 32px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#dfe9f4;color:#173654;font-weight:700}.message-row.mine .message-avatar{display:none}
.account-profile-form{grid-column:1/-1}.account-profile-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.account-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-photo{width:74px;height:74px;border-radius:18px}.account-settings-head h2{font-size:23px}
.document-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.document-actions a{display:inline-flex;align-items:center;justify-content:center;gap:5px;text-decoration:none;white-space:nowrap}.exec-document-row .document-actions a{min-height:34px;padding:6px 9px;border:1px solid var(--line);border-radius:8px;color:var(--blue);background:#fff}.document-actions svg{width:16px}
.exec-document-row{grid-template-columns:40px minmax(0,1fr)!important;align-items:start!important}.exec-document-copy{min-width:0;grid-column:2}.exec-document-copy strong,.exec-document-copy small{max-width:100%;line-height:1.4;overflow-wrap:break-word;word-break:normal;hyphens:none}.exec-document-controls{grid-column:2;min-width:0;display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap}.exec-document-controls>.status{flex:0 0 auto}.status,.dept-tag,.no-file-badge{white-space:nowrap;word-break:normal}.document-delete{width:34px!important;height:34px!important;min-width:34px;display:inline-grid!important;place-items:center;border:1px solid #f2c8ce!important;border-radius:8px!important;color:#bd3145!important;background:#fff4f5!important;padding:0!important}.document-delete:hover{color:#fff!important;background:#bd3145!important}.document-delete svg{width:16px!important}.exec-panel,.finance-panel,.dept-panel,.exec-document-row>*{min-width:0}
.document-publication-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.document-publication-actions .button{width:auto!important;height:auto!important;min-height:34px;padding:7px 12px!important;white-space:nowrap}
.exec-approval-row.executive-document-approval>div:last-child{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.exec-approval-row.executive-document-approval .document-actions a{min-height:34px;padding:6px 9px;border:1px solid var(--line);border-radius:8px;color:var(--blue);background:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.credits-verification-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:12px 14px;border:1px solid #f0d7a4;border-radius:12px;background:#fff8ea}
html,body{max-width:100%;overflow-x:hidden}body,button,input,select,textarea,h1,h2,h3,h4,h5,h6,strong,small{font-family:Inter,Arial,sans-serif!important}.content p,.content small,.content strong,.content h1,.content h2,.content h3,.content h4{overflow-wrap:break-word}
@media(max-width:650px){.exec-document-row{grid-template-columns:40px minmax(0,1fr)}.exec-document-controls{justify-content:flex-start}.exec-document-groups{grid-template-columns:1fr}.credits-verification-banner{flex-direction:column;align-items:stretch}}
@media(max-width:1100px){.exec-document-groups{grid-template-columns:1fr}}
@media(max-width:1450px){.exec-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.exec-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-profile-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.content{padding:20px 15px 34px}.exec-stat-grid,.account-settings-grid,.account-profile-form .form-grid{grid-template-columns:1fr}.exec-stat-card{min-height:102px}}

/* Collision-safe departmental dashboards. Cards reflow before their content becomes cramped. */
.finance-stat-grid,.investment-stat-grid,.credits-stat-grid,.welfare-stat-grid,.legal-stat-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:14px!important;
}
.finance-stat-card{
  width:100%;min-width:0;min-height:150px;
  grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto 1fr auto;
  overflow:hidden;align-content:start;
}
.finance-stat-card>div{min-width:0}
.finance-stat-card small,.finance-stat-card strong,.finance-stat-card em{
  max-width:100%;white-space:normal!important;overflow-wrap:anywhere;word-break:normal;line-height:1.28;
}
.finance-stat-card strong{font-size:clamp(17px,1.3vw,22px)!important}
.finance-stat-card>b{grid-column:1/-1;align-self:end;margin-top:10px;white-space:normal;overflow-wrap:anywhere}
.investment-dashboard-grid>.finance-panel,.credits-dashboard-grid>.finance-panel{min-width:0;overflow:hidden}
.credits-dashboard-grid>.finance-panel.credits-pending-apps,
.credits-dashboard-grid>.finance-panel.credits-approval-queue,
.credits-approval-queue{overflow:visible}
.investment-portfolio-layout,.investment-project-mini article,.investment-ranking>div,.investment-proposal-mini>div,.investment-milestones>div{min-width:0}
.investment-allocation>div{grid-template-columns:8px minmax(0,1fr);align-items:start}
.investment-allocation>div>strong{grid-column:2;white-space:normal;overflow-wrap:anywhere}
.investment-portfolio-metrics{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}
.investment-portfolio-metrics strong,.investment-project-facts strong,.investment-project-mini strong,.investment-project-mini b{white-space:normal;overflow-wrap:anywhere}
.investment-project-mini article{grid-template-columns:42px minmax(0,1fr)}
.investment-project-mini article>div:last-child{grid-column:2;text-align:left}
@media(max-width:1250px){
  .investment-dashboard-grid>.finance-panel:nth-child(n){grid-column:span 6}
  .investment-lower-grid{grid-template-columns:1fr 1fr}
  .investment-lower-grid>.finance-panel:last-child{grid-column:1/-1}
}
@media(max-width:820px){
  .finance-stat-grid,.investment-stat-grid,.credits-stat-grid,.welfare-stat-grid,.legal-stat-grid{grid-template-columns:1fr!important}
  .investment-dashboard-grid>.finance-panel:nth-child(n){grid-column:1/-1}
  .investment-lower-grid{grid-template-columns:1fr}
  .investment-portfolio-layout{grid-template-columns:1fr}
}
.record-file-field input[type=file]{padding:8px;background:#f8fafc;border:1px dashed #b8c8d8}
.record-file-field small{display:block;margin-top:6px;color:var(--muted)}
.record-photo-preview{width:100%;max-height:190px;object-fit:cover;border-radius:12px;border:1px solid var(--line);background:#f4f7fa}
.record-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.record-actions button,.record-actions a{min-height:34px;padding:7px 10px;border:1px solid #d8e3ef;border-radius:8px;background:#fff;color:#176bd5;font-weight:750;text-decoration:none}
.record-actions .danger-action,.danger-action{border-color:#efc4ca!important;color:#bf2b40!important;background:#fff4f5!important}.record-actions .danger-action:hover,.danger-action:hover{color:#fff!important;background:#bf2b40!important}
.asset-table-photo{width:58px;height:44px;display:block;object-fit:cover;border-radius:8px;border:1px solid var(--line);background:#f1f4f7}
.investment-card-banner{background-size:cover;background-position:center}

/* Readable system typography and Legal layout corrections. */
html,body,button,input,select,textarea,table,*{font-family:Inter,"Segoe UI",Arial,sans-serif!important}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
body{font-size:15px;line-height:1.5}.nav-item,.button,.top-search input,.field input,.field select,.field textarea{font-size:15px}
table th,table td{font-size:15px;line-height:1.45}.dept-panel td small,.dept-panel-head p,.page-subtitle{font-size:14px}
.page-head{min-width:0}.page-head>div:first-child{flex:1;min-width:0}.head-actions{flex:0 1 auto;justify-content:flex-end;max-width:58%}.head-actions .button{white-space:nowrap}
.legal-stat{min-width:0;min-height:108px}.legal-stat small{font-size:14px}.legal-stat strong{font-size:19px}.legal-stat em{font-size:13px}
.legal-contract-summary{display:grid}.legal-contract-summary>button{display:grid;grid-template-columns:minmax(135px,1.3fr) minmax(120px,1fr) auto;gap:14px;align-items:center;width:100%;padding:13px 0;border:0;border-bottom:1px solid #e7edf0;background:transparent;text-align:left;color:#172b3c}.legal-contract-summary>button:last-child{border-bottom:0}.legal-contract-summary div{display:grid;gap:3px;min-width:0}.legal-contract-summary strong,.legal-contract-summary span,.legal-contract-summary small{overflow-wrap:anywhere}.legal-contract-summary span,.legal-contract-summary small{color:#687b89;font-size:14px}.legal-contract-summary b{white-space:nowrap;font-size:15px}
@media(max-width:1100px){.head-actions{max-width:100%}.page-head{align-items:stretch;flex-direction:column}.head-actions{justify-content:flex-start}.legal-contract-summary>button{grid-template-columns:1fr auto}.legal-contract-summary>button>div:nth-child(2){grid-column:1/-1;grid-row:2}}
@media(max-width:620px){.legal-contract-summary>button{grid-template-columns:1fr}.legal-contract-summary b{grid-column:1}.head-actions .button{flex:1 1 100%}}

/* Secure in-system document viewer. */
.document-viewer-backdrop{padding:18px;z-index:120}.document-viewer-modal{width:min(1180px,97vw);height:min(880px,94vh);max-height:94vh;display:flex;flex-direction:column;overflow:hidden}.document-viewer-modal .modal-head{flex:0 0 auto}.document-viewer-frame{flex:1;min-height:0;border:1px solid #dce5e9;border-radius:12px;overflow:auto;background:#e7ecef}.document-viewer-loading{min-height:520px;display:grid;place-content:center;justify-items:center;gap:14px;color:#536974}.document-viewer-loading span{width:38px;height:38px;border:4px solid #d5e1e5;border-top-color:#0b3b70;border-radius:50%;animation:document-spin .75s linear infinite}.pdf-preview-toolbar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:12px;padding:11px 16px;border-bottom:1px solid #d5dfe4;background:rgba(255,255,255,.96);color:#49606c}.pdf-preview-toolbar span{font-size:14px}.pdf-preview-pages{display:grid;justify-items:center;gap:22px;padding:22px}.pdf-preview-page{position:relative;max-width:100%;padding-top:25px}.pdf-preview-page>span{position:absolute;top:0;left:0;color:#607580;font-size:12px}.pdf-preview-page canvas{display:block;max-width:100%;height:auto!important;background:#fff;box-shadow:0 5px 22px rgba(23,42,53,.18)}.image-document-preview{min-height:100%;display:grid;place-items:center;padding:20px}.image-document-preview img{display:block;max-width:100%;max-height:100%;object-fit:contain}.text-document-preview{min-height:100%;margin:0;padding:24px;white-space:pre-wrap;background:#fff;color:#1f3039;font:14px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace!important}.document-preview-unavailable{min-height:520px;display:grid;place-content:center;justify-items:center;gap:8px;padding:30px;text-align:center;color:#607580}.document-preview-unavailable svg{width:38px}.document-preview-unavailable h3,.document-preview-unavailable p{margin:0}.document-preview-unavailable.danger{color:#b4233e}@keyframes document-spin{to{transform:rotate(360deg)}}.document-viewer-actions{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:13px}.document-viewer-actions>span{display:flex;align-items:center;gap:7px;margin-right:auto;color:#687985;font-size:14px}.document-viewer-actions svg{width:16px}.document-viewer-actions a{display:inline-flex;align-items:center;text-decoration:none}
@media(max-width:700px){.document-viewer-backdrop{padding:6px}.document-viewer-modal{width:99vw;height:98vh;max-height:98vh;border-radius:12px}.document-viewer-frame iframe{min-height:420px}.document-viewer-actions>span{display:none}.document-viewer-actions .button{flex:1}}

/* Finance cash accounts and maker-checker guidance. */
.finance-account-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.finance-account-actions button{flex:1 1 90px;min-width:0}.maker-checker-note{display:inline-flex;max-width:220px;padding:7px 10px;border-radius:9px;background:#fff7df;color:#8a5a00;font-size:.82rem;font-weight:700;line-height:1.25;white-space:normal}.check-field{display:flex!important;align-items:center;gap:9px;min-height:44px}.check-field input{width:18px!important;height:18px}

/* Member-submitted savings deposit verification. */
.credits-verification-banner{margin:16px 0;padding:15px 17px;border:1px solid #f0d28f;border-radius:13px;background:#fff9e8;color:#754d00}.credits-verification-banner>div{display:flex;align-items:flex-start;gap:11px}.credits-verification-banner svg{width:21px;flex:0 0 21px;margin-top:2px}.credits-verification-banner span{display:grid;gap:3px}.credits-verification-banner small{color:#806831}.pending-receipt{display:inline-flex;padding:5px 8px;border-radius:8px;background:#fff4d9;color:#8a5a00;font-size:12px;font-weight:800;white-space:normal}.transaction-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.transaction-detail-grid>div{display:grid;gap:4px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:11px;background:#f7fafb}.transaction-detail-grid span{color:var(--muted);font-size:13px}.transaction-detail-grid strong{min-width:0;overflow-wrap:anywhere}.transaction-detail-grid .full{grid-column:1/-1}.deposit-proof{display:grid;place-items:center;min-height:180px;max-height:430px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#edf2f4;overflow:auto}.deposit-proof img{display:block;max-width:100%;max-height:400px;object-fit:contain;border-radius:8px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
@media(max-width:650px){.transaction-detail-grid{grid-template-columns:1fr}.transaction-detail-grid .full{grid-column:auto}.modal-actions .button{flex:1 1 100%}}
.member-form-message{display:none;margin-top:14px;padding:11px 13px;border-radius:10px;font-weight:700;line-height:1.4}.member-form-message.error{display:block;border:1px solid #efbdc5;background:#fff1f3;color:#a71d36}.member-form-message.sending{display:block;border:1px solid #eaf1f8;background:#edf9f4;color:#0b3b70}
.loan-eligibility-modal{max-width:480px}
.loan-eligibility-modal .modal-head{padding:22px 24px 16px}
.loan-eligibility-card{display:grid;gap:18px;padding:20px 24px 24px}
.loan-eligibility-message{margin:0;font-size:15px;line-height:1.6;color:#3d4f66}
.loan-eligibility-highlight{display:grid;gap:6px;padding:16px 18px;border-radius:14px;background:linear-gradient(135deg,#fff8e8,#fff3f0);border:1px solid #f0d4a8}
.loan-eligibility-highlight span{font-size:13px;color:#8a6a3a;font-weight:700;line-height:1.35}
.loan-eligibility-highlight strong{font-size:28px;color:#0b3b70;line-height:1.15;letter-spacing:-.02em}
.loan-eligibility-highlight small{font-size:12px;line-height:1.45;color:#7a6a58}
.loan-eligibility-progress{display:grid;gap:12px;padding:16px 18px;border-radius:14px;background:#f8fafb;border:1px solid #e6ebf2}
.loan-eligibility-progress-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.loan-eligibility-progress-head>div{min-width:0}
.loan-eligibility-progress-head strong{display:block;font-size:14px;color:#1a2d49;line-height:1.3}
.loan-eligibility-progress-head span{display:block;margin-top:4px;font-size:13px;line-height:1.45;color:#708078}
.loan-eligibility-progress-head b{flex:0 0 auto;font-size:18px;color:#0b3b70;line-height:1.2}
.loan-eligibility-progress-bar{height:10px;border-radius:999px;background:#e8eee6;overflow:hidden}
.loan-eligibility-progress-bar em{display:block;height:100%;min-width:0;border-radius:inherit;background:linear-gradient(90deg,#d89b00,#ee711f);transition:width .25s ease}
.loan-eligibility-progress-note{margin:0;font-size:13px;font-weight:700;line-height:1.4}
.loan-eligibility-progress-note.behind{color:#c13945}
.loan-eligibility-progress-note.ahead{color:#d89b00}
.loan-eligibility-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.loan-eligibility-details>div{padding:12px 14px;border-radius:12px;background:#f6f8fb;border:1px solid #e6ebf2}
.loan-eligibility-details span{display:block;font-size:12px;color:#7b8998}
.loan-eligibility-details strong{display:block;margin-top:4px;font-size:14px;color:#1a2d49;line-height:1.35;overflow-wrap:anywhere}
.loan-eligibility-actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:18px;margin-top:2px;border-top:1px solid var(--line)}
.loan-eligibility-actions .button{flex:1;min-width:140px;justify-content:center}
@media(max-width:560px){.loan-eligibility-card{padding:16px 18px 20px;gap:16px}.loan-eligibility-highlight strong{font-size:24px}.loan-eligibility-progress-head{flex-direction:column;gap:8px}.loan-eligibility-progress-head b{align-self:flex-end}.loan-eligibility-details{grid-template-columns:1fr}.loan-eligibility-actions .button{flex:1 1 100%}}

/* Collision-safe member summary cards and Credits portfolio. */
.member-summary-grid,.member-summary-grid.compact{grid-template-columns:repeat(auto-fit,minmax(225px,1fr))}.member-summary-card{min-width:0;min-height:132px;display:grid;grid-template-columns:46px minmax(0,1fr);overflow:hidden}.member-summary-card>span{flex:none}.member-summary-card div,.member-summary-card small,.member-summary-card strong,.member-summary-card em{min-width:0;max-width:100%;overflow-wrap:anywhere}
.credits-dashboard-grid>.finance-panel:nth-child(1),.credits-dashboard-grid>.finance-panel:nth-child(2){grid-column:span 6}.credits-dashboard-grid>.finance-panel:nth-child(3){grid-column:1 / -1}.credits-portfolio{grid-template-columns:minmax(108px,125px) minmax(0,1fr);min-width:0}.credits-portfolio-legend{min-width:0;width:100%}.credits-portfolio-legend>div{grid-template-columns:8px minmax(0,1fr) auto;min-width:0}.credits-portfolio-legend span{min-width:0;overflow-wrap:anywhere}.credits-portfolio-legend strong{white-space:nowrap}
@media(max-width:1250px){.credits-dashboard-grid>.finance-panel:nth-child(1),.credits-dashboard-grid>.finance-panel:nth-child(2){grid-column:span 6}.credits-dashboard-grid>.finance-panel:nth-child(3){grid-column:1 / -1}.credits-portfolio{grid-template-columns:minmax(108px,125px) minmax(0,1fr)}}
@media(max-width:920px){.credits-dashboard-grid>.finance-panel:nth-child(n){grid-column:1/-1}.credits-portfolio{grid-template-columns:minmax(108px,125px) minmax(0,1fr)}}
@media(max-width:560px){.member-summary-grid,.member-summary-grid.compact{grid-template-columns:1fr}.credits-portfolio{grid-template-columns:1fr;justify-items:center}.credits-portfolio-legend{max-width:280px}}

/* Member investment and welfare self-service. */
.member-opportunity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.member-opportunity{display:flex;flex-direction:column;gap:16px;min-width:0;padding:20px}.member-opportunity h3{margin:4px 0 7px;font-size:19px}.member-opportunity p{margin:0;color:var(--muted);overflow-wrap:anywhere}.member-opportunity>div>small{color:#0b3b70;font-weight:800;text-transform:uppercase}.member-opportunity dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.member-opportunity dl div{min-width:0;padding:10px;border-radius:10px;background:#f4f7f8}.member-opportunity dt{color:var(--muted);font-size:13px}.member-opportunity dd{margin:3px 0 0;font-weight:800;overflow-wrap:anywhere}.member-opportunity .button{margin-top:auto}.member-list article{min-width:0}.member-list article>div{min-width:0}.member-list article time{white-space:nowrap}.member-list article.unread{border-left:4px solid #0b3b70;background:#f1faf6}.member-list article .button{flex:0 0 auto}.member-panel td small{display:block;color:var(--muted);overflow-wrap:anywhere}.member-panel td,.member-panel th{max-width:280px;overflow-wrap:anywhere}.record-file-field input[type=file]{max-width:100%}
@media(max-width:640px){.member-opportunity-grid{grid-template-columns:1fr}.member-opportunity dl{grid-template-columns:1fr}.member-list article{grid-template-columns:auto minmax(0,1fr)}.member-list article time,.member-list article .button{grid-column:2}}

/* Kasangati G40 Kwagalana brand finishing layer. */
.executive-crest,
.executive-crest.investment-crest,
.executive-crest.credits-crest,
.executive-crest.finance-crest,
.executive-crest.welfare-crest,
.executive-crest.member-crest,
.executive-crest.audit-crest,
.executive-crest.legal-crest {
  background:#fff!important;
  border-color:rgba(243,106,24,.72)!important;
  color:var(--amber)!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.2),0 8px 18px rgba(0,0,0,.16)!important;
}
.executive-crest::before,.brand-mark::before{background-color:#fff!important}

/* Executive read-only Finance account summary. */
.executive-finance-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.executive-account-summary{margin:18px 0}.executive-readonly-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:9px;color:#0b3b70;background:#e8f4de;font-size:13px;font-weight:800}.executive-readonly-badge svg{width:16px}
.executive-account-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 17px}.executive-account-overview>span{padding:13px 14px;border-radius:11px;background:#f4f8f1;color:var(--muted);font-size:13px}.executive-account-overview strong{display:block;margin-top:5px;color:var(--ink);font-size:17px;overflow-wrap:anywhere}
.executive-account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));gap:13px}.executive-account-grid article{min-width:0;padding:16px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#fff,#f8fbf6)}.executive-account-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:#0b3b70;background:#e8f4de}.executive-account-icon svg{width:21px}.executive-account-title{min-width:0}.executive-account-title>span{color:#d89b00;font-size:12px;font-weight:800;text-transform:uppercase}.executive-account-title h4{margin:2px 0 4px;font-size:16px;overflow-wrap:anywhere}.executive-account-title p{margin:0;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.executive-account-grid article>strong{align-self:center;font-size:17px;white-space:nowrap}.executive-account-meta{grid-column:2/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid var(--line)}.executive-account-meta small{color:var(--muted);text-align:right}
@media(max-width:1100px){.executive-finance-metrics,.executive-account-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.executive-finance-metrics,.executive-account-overview{grid-template-columns:1fr}.executive-account-grid article{grid-template-columns:42px minmax(0,1fr)}.executive-account-grid article>strong{grid-column:2}.executive-account-meta{grid-column:1/-1;align-items:flex-start;flex-direction:column}.executive-account-meta small{text-align:left}}

/* Executive approval history and decision traceability. */
.exec-approval-history{margin-top:20px}.exec-history-counts{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.exec-history-counts span{padding:6px 9px;border-radius:8px;color:#0b3b70;background:#e8f4de;font-size:12px;font-weight:800}.exec-approval-history table{min-width:1180px}.exec-approval-history td{vertical-align:top}.exec-approval-history td strong,.exec-approval-history td small{display:block}.exec-approval-history td small{margin-top:3px;color:var(--muted);font-size:12px}.exec-approval-history .status.information_requested{color:#a76d08;background:var(--amber-soft)}
@media(max-width:760px){.exec-approval-history .exec-panel-head{align-items:flex-start;flex-direction:column}.exec-history-counts{justify-content:flex-start}}
.executive-project-note{margin:16px 0}.executive-project-note>div{display:flex;gap:12px;align-items:flex-start}.executive-project-note svg{width:24px;color:var(--green)}.executive-project-note strong,.executive-project-note span{display:block}.executive-project-note span{margin-top:4px;color:var(--muted)}
.executive-governance-projects .exec-project-card{min-width:0;overflow:hidden}.executive-project-meta{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;margin:14px 0}.executive-project-meta span{min-width:0;padding:9px;background:var(--surface-soft);border-radius:9px;color:var(--muted)}.executive-project-meta strong{display:block;overflow-wrap:anywhere;color:var(--text);margin-top:3px}.executive-project-proposal{display:block;margin:10px 0;color:var(--muted)}
.executive-project-modal{width:min(1060px,94vw);max-height:92vh;overflow:auto}.executive-project-detail{padding:20px}.executive-project-hero{width:100%;height:220px;object-fit:cover;border-radius:14px;margin-bottom:16px}.executive-project-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.executive-project-kpis span,.executive-project-related span{padding:12px;background:var(--surface-soft);border-radius:10px;color:var(--muted);min-width:0}.executive-project-kpis strong,.executive-project-related strong{display:block;margin-top:4px;color:var(--text);overflow-wrap:anywhere}.executive-project-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.executive-project-columns section,.executive-project-related,.executive-project-detail>section{border:1px solid var(--border);border-radius:13px;padding:16px}.executive-project-columns h3,.executive-project-detail>section h3{margin:0 0 12px}.executive-project-columns dl{display:grid;grid-template-columns:145px 1fr;gap:9px;margin:14px 0}.executive-project-columns dt{color:var(--muted)}.executive-project-columns dd{margin:0;overflow-wrap:anywhere}.executive-project-related>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.executive-oversight-list{display:grid;gap:9px}.executive-oversight-list article{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;border-bottom:1px solid var(--border);padding:10px 0}.executive-oversight-list article p{grid-column:2/-1;margin:0;color:var(--muted)}.executive-project-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end;margin-top:18px}.executive-project-actions button{padding:10px 13px;border:1px solid var(--border);border-radius:9px;background:#fff;font-weight:700}.executive-project-actions .approve{color:#0b3b70;background:#e8f6ee}.executive-project-actions .more{color:#9a5d00;background:#fff4dc}.executive-project-actions .reject{color:#bd2739;background:#fff0f2}
.finance-analysis-queue{margin-bottom:18px}.finance-analysis-queue>article{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.35fr) auto;gap:16px;align-items:center;padding:15px;border-top:1px solid var(--border)}.finance-analysis-queue article span,.finance-analysis-queue article small,.finance-analysis-queue article a{display:block;color:var(--muted)}.finance-analysis-queue article h3,.finance-analysis-queue article p{margin:4px 0}.finance-analysis-queue .record-actions{justify-content:flex-end}
@media(max-width:900px){.executive-project-kpis{grid-template-columns:repeat(3,1fr)}.executive-project-columns{grid-template-columns:1fr}.finance-analysis-queue>article{grid-template-columns:1fr}.finance-analysis-queue .record-actions{justify-content:flex-start}}
@media(max-width:560px){.executive-project-kpis{grid-template-columns:repeat(2,1fr)}.executive-project-meta{grid-template-columns:1fr}.executive-project-columns dl{grid-template-columns:1fr}.executive-oversight-list article{grid-template-columns:1fr}.executive-oversight-list article p{grid-column:1}.executive-project-actions{justify-content:stretch}.executive-project-actions button{width:100%}}
.messenger{height:clamp(540px,calc(100dvh - 225px),760px);min-height:540px;max-height:760px}.conversation-panel{display:flex;min-height:0;flex-direction:column}.conversation-list{height:auto;min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain}.conversation-footer{padding:12px 14px;border-top:1px solid var(--line);background:#fff}.conversation-footer .button{width:100%;justify-content:center}.chat-panel{min-height:0;overflow:hidden}.chat-head{flex:0 0 auto}.chat-head-copy{min-width:0;flex:1}.chat-head-copy strong,.chat-head-copy span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-head-avatar{width:42px!important;height:42px!important;flex:0 0 42px!important}.chat-back{display:grid;place-items:center;flex:0 0 34px;transform:rotate(90deg);cursor:pointer}.chat-messages{min-height:0;overscroll-behavior:contain;scrollbar-gutter:stable}.clickable-profile{padding:0;border:0;cursor:pointer;box-shadow:0 0 0 2px rgba(255,255,255,.9)}.clickable-profile:hover{box-shadow:0 0 0 3px rgba(216,155,0,.25)}.contact-item{padding:10px 4px}.contact-start{min-width:0;display:flex;align-items:center;gap:10px;flex:1;padding:2px 0;border:0;background:transparent;text-align:left}.contact-start .contact-copy{min-width:0}.contact-start>svg{width:16px;color:var(--green-700)}.message-avatar{border:0;cursor:pointer}.messenger-profile-modal{width:min(480px,92vw)}.messenger-profile-card{padding:25px;text-align:center}.messenger-profile-photo{width:96px;height:96px;margin:0 auto;display:grid;place-items:center;overflow:hidden;border:4px solid #fff;border-radius:50%;color:var(--green-900);background:var(--green-100);box-shadow:0 8px 25px rgba(6,38,74,.18);font-size:28px;font-weight:800}.messenger-profile-photo img{width:100%;height:100%;object-fit:cover}.messenger-profile-card h3{margin:14px 0 3px;font-size:22px}.messenger-profile-card>p{margin:0;color:var(--green-700)}.messenger-profile-departments{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin:13px 0}.messenger-profile-departments span{padding:5px 8px;border-radius:8px;background:var(--green-100);font-size:13px;font-weight:700}.messenger-profile-card dl{display:grid;grid-template-columns:120px 1fr;gap:9px;margin:18px 0 0;padding:16px;border-radius:12px;background:var(--surface-soft);text-align:left}.messenger-profile-card dt{color:var(--muted)}.messenger-profile-card dd{margin:0;overflow-wrap:anywhere;font-weight:700}
@media(max-width:560px){.messenger{height:calc(100dvh - 185px);min-height:500px;max-height:none}.conversation-footer{position:sticky;bottom:0}.chat-head{padding:9px 10px}.chat-messages{padding:16px 12px}.messenger-profile-card dl{grid-template-columns:1fr}.messenger-profile-card dd{margin-bottom:5px}}
.exec-fab {
  background:linear-gradient(105deg,#ef671b,#ff8a2f)!important;
  box-shadow:0 12px 28px rgba(243,106,24,.3)!important;
}
.member-welcome {
  background:linear-gradient(135deg,#0b3b70,#d89b00);
}
.member-welcome.member-hero-card {
  background:linear-gradient(135deg,#0b3b70 0%,#0f4f8a 48%,#d89b00 160%);
}
.account-settings-head {
  background:linear-gradient(135deg,#f0f8e8,#fff7f1);
}

/* Unified Kasangati G40 department identity and redesigned secure login. */
.executive-sidebar,
.finance-sidebar,
.credits-sidebar,
.investment-sidebar,
.welfare-sidebar,
.legal-sidebar,
.audit-sidebar,
.supervisory-sidebar {
  background:
    radial-gradient(circle at 108% -5%,rgba(121,197,49,.2),transparent 32%),
    linear-gradient(180deg,#0b3b70 0%,#0b3b70 54%,#0b3b70 100%)!important;
}
.executive-sidebar .nav-item.active,
.finance-sidebar .nav-item.active,
.credits-sidebar .nav-item.active,
.investment-sidebar .nav-item.active,
.welfare-sidebar .nav-item.active,
.legal-sidebar .nav-item.active,
.audit-sidebar .nav-item.active,
.supervisory-sidebar .nav-item.active {
  color:#fff!important;
  background:linear-gradient(100deg,#f36a18,#ff832f)!important;
  box-shadow:0 8px 22px rgba(243,106,24,.3)!important;
}
.executive-sidebar .nav-item:hover { background:rgba(255,255,255,.08); }
.executive-crest { width:66px;height:66px;border-color:rgba(255,255,255,.65)!important; }
.executive-crest::before { width:60px;height:60px; }
.executive-brand { align-items:center; }
.executive-brand strong { color:#fff; }
.executive-brand span { color:#d3e4cd; }
.executive-quick { border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.07); }
.welfare-primary,.legal-primary {
  border-color:#0b3b70!important;
  color:#fff!important;
  background:linear-gradient(105deg,#0b3b70,#d89b00)!important;
  box-shadow:0 7px 17px rgba(6,38,74,.2)!important;
}
.finance-fab,.credits-fab,.investment-fab,.welfare-fab,.exec-fab {
  color:#fff!important;
  background:linear-gradient(105deg,#ef671b,#ff832f)!important;
  box-shadow:0 12px 28px rgba(243,106,24,.3)!important;
}

.login-page{min-height:100vh;grid-template-columns:minmax(460px,46%) minmax(560px,54%);background:#f8faf7}
.login-brand{min-height:100vh;padding:30px clamp(44px,7vw,105px);justify-content:center;gap:24px;background:radial-gradient(circle at 105% 0,rgba(121,197,49,.18) 0 18%,transparent 18.3%),radial-gradient(circle at -10% 64%,rgba(121,197,49,.1) 0 22%,transparent 22.3%),linear-gradient(145deg,#0b3b70 0%,#0b3b70 56%,#0b3b70 100%)}
.login-brand::before{width:360px;height:360px;right:-210px;top:-190px;border:54px solid rgba(255,255,255,.045)}
.login-brand::after{width:350px;height:350px;left:-250px;bottom:-210px;border:50px solid rgba(121,197,49,.08)}
.login-brand-identity,.login-message,.login-features,.login-trust{position:relative;z-index:1}
.login-brand-identity{display:grid;justify-items:center;text-align:center}
.login-brand-identity img{width:min(220px,52%);height:auto;aspect-ratio:1/1;object-fit:contain;filter:drop-shadow(0 12px 20px rgba(0,0,0,.2))}
.login-brand-identity strong{margin-top:-5px;font-size:29px;line-height:1;color:#f36a18;letter-spacing:-1px}.login-brand-identity strong span{color:#d89b00}.login-brand-identity small{margin-top:8px;color:#d89b00;font-size:17px;font-weight:700;letter-spacing:7px}
.login-message{max-width:560px}.login-message h1{margin:0 0 14px;font-size:clamp(35px,3.5vw,49px);line-height:1.05;letter-spacing:-1.8px}.login-message h1 em{color:#f36a18;font-style:normal}.login-message h1 span{color:#d89b00}.login-message p{max-width:500px;margin:0;color:#f0f7ef;font-size:18px;line-height:1.55}
.login-features{display:grid;gap:16px;color:#fff}.login-features article{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:16px}.login-features i{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#d89b00,#d89b00);box-shadow:0 8px 18px rgba(0,0,0,.16)}.login-features i svg{width:25px}.login-features strong,.login-features span{display:block}.login-features strong{font-size:16px}.login-features span{margin-top:3px;color:#e2eee0;font-size:13px;line-height:1.45}
.login-trust{max-width:415px;padding:15px 18px;display:flex;align-items:center;gap:14px;border-radius:13px;color:#0b3b70;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.2)}.login-trust>svg{width:25px;color:#f36a18}.login-trust strong,.login-trust span{display:block}.login-trust span{margin-top:2px;color:#657266;font-size:13px}
.login-panel{position:relative;min-height:100vh;padding:86px clamp(36px,7vw,100px) 95px;align-items:center;background:radial-gradient(circle at 50% 42%,#fff 0,#fafcf9 58%,#f5f8f3 100%)}
.login-language{position:absolute;right:8%;top:26px;display:flex;align-items:center;gap:7px;padding:8px 15px;border:1px solid #e3e9df;border-radius:24px;background:#fff;box-shadow:0 5px 16px rgba(20,55,30,.08);font-weight:700}.login-language select{border:0;outline:0;background:transparent;font-weight:700}
.login-box{width:min(650px,100%);padding:38px 55px 44px;border:1px solid #e4eae1;border-radius:20px;background:rgba(255,255,255,.96);box-shadow:0 18px 55px rgba(20,55,30,.1);text-align:center}.login-form-logo{width:145px;height:122px;object-fit:contain;margin-bottom:4px}.login-box h2{margin:0 0 5px;font-size:34px;color:#0b3b70;letter-spacing:-1px}.login-box>p{margin:0 0 29px;font-size:16px}.login-box form{text-align:left}.login-box .field{margin-bottom:18px}.login-box .field label{display:block;margin-bottom:8px;color:#0b3b70;font-size:15px;font-weight:750}
.login-input-wrap{position:relative}.login-input-wrap>span{position:absolute;z-index:1;left:15px;top:50%;width:21px;height:21px;transform:translateY(-50%);color:#63706a}.login-input-wrap>span svg{width:21px;height:21px}.login-input-wrap input{width:100%;min-height:57px;padding:13px 48px 13px 52px!important;border:1px solid #dce3d9;border-radius:9px;background:#fff;font-size:16px}.login-input-wrap input:focus{outline:0;border-color:#d89b00;box-shadow:0 0 0 3px rgba(78,159,50,.12)}.login-input-wrap .password-toggle{right:10px}
.login-form-options{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:2px 0 23px}.login-form-options label{display:flex;align-items:center;gap:8px;color:#505b53}.login-form-options input{width:18px;height:18px;accent-color:#d89b00}.login-form-options button{border:0;color:#d89b00;background:none;font-weight:700}.login-submit{width:100%;min-height:57px;display:flex;align-items:center;justify-content:center;font-size:16px!important;background:linear-gradient(100deg,#0b3b70,#d89b00)!important}.login-submit svg,.login-sso svg{width:19px}
.login-divider{margin:26px 0;display:flex;align-items:center;gap:16px;color:#68726b}.login-divider::before,.login-divider::after{content:"";height:1px;flex:1;background:#dfe5dc}.login-sso{width:100%;min-height:55px;display:flex;align-items:center;justify-content:center;gap:10px;border:1.5px solid #d89b00;border-radius:9px;color:#0b3b70;background:#fff;font-size:16px;font-weight:750}.login-sso:hover{background:#f0f8e8}.login-assistance{margin:0 0 18px;padding:11px 13px;border:1px solid #cfe2c7;border-radius:9px;color:#0b3b70;background:#f1f8ed;text-align:left}.login-footer{position:absolute;bottom:22px;left:0;right:0;display:grid;justify-items:center;gap:8px;color:#5f6962}.login-footer span{display:flex;align-items:center}.login-footer svg{width:16px}.login-footer small{font-size:13px}
@media(max-width:1000px){.login-page{grid-template-columns:42% 58%}.login-brand{padding:32px}.login-brand-identity img{width:180px;height:180px}.login-message h1{font-size:34px}.login-message p{font-size:15px}.login-box{padding:32px}.login-features article{grid-template-columns:44px 1fr}.login-features i{width:44px;height:44px}}
@media(max-width:840px){.login-page{display:block}.login-brand{min-height:auto;padding:28px}.login-brand-identity img{width:150px;height:150px}.login-message{text-align:center;margin:auto}.login-message h1{font-size:31px}.login-message p{display:block}.login-features,.login-trust,.login-brand-identity strong,.login-brand-identity small{display:none}.login-panel{min-height:calc(100vh - 310px);padding:72px 18px 92px}.login-box{padding:24px 18px}.login-language{right:18px}.login-form-logo{width:100px;height:100px}.login-box h2{font-size:22px}}
@media(max-width:520px){.login-brand{min-height:auto}.login-message h1{font-size:27px}.login-message p{font-size:14px}.login-form-options{align-items:flex-start;flex-direction:column}.login-footer{display:none}.login-box{padding:20px 16px}.login-box h2{font-size:20px}.login-box>p{font-size:13px}}

/* Imported financial-statement snapshot: historical figures are separated from live operations. */
.finance-snapshot-block{margin:0 0 18px;padding:16px;border:1px solid #cfe3d2;border-radius:14px;background:linear-gradient(135deg,#f7fcf7 0%,#fffaf3 100%);box-shadow:0 5px 18px rgba(30,93,44,.05)}
.finance-period-heading{margin:0 0 12px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.finance-period-heading>div{min-width:0}.finance-period-heading strong,.finance-period-heading span{display:block}.finance-period-heading strong{color:#0b3b70;font-size:17px}.finance-period-heading span{margin-top:3px;color:#6b7d70;font-size:14px;line-height:1.4}.finance-period-heading>small{color:#657568;font-size:13px;white-space:nowrap}
.finance-snapshot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:10px}
.finance-snapshot-card{min-width:0;padding:12px;display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:start;border:1px solid #dce9de;border-radius:10px;background:#fff;text-align:left;box-shadow:0 2px 8px rgba(18,56,28,.035)}
.finance-snapshot-card:hover{border-color:#eaf1f8;transform:translateY(-1px)}.finance-snapshot-card>span{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;color:#0b3b70;background:#e9f6ec}.finance-snapshot-card>span.red{color:#c73345;background:#ffedf0}.finance-snapshot-card>span.blue{color:#176bd6;background:#eaf2ff}.finance-snapshot-card>span.violet,.finance-snapshot-card>span.purple{color:#7045d8;background:#f0ebff}.finance-snapshot-card>span.orange{color:#c8780a;background:#fff1dd}.finance-snapshot-card>span.teal{color:#087f85;background:#e7f7f7}.finance-snapshot-card svg{width:19px}.finance-snapshot-card small,.finance-snapshot-card strong,.finance-snapshot-card em{display:block;overflow-wrap:anywhere}.finance-snapshot-card small{color:#52665a;font-size:13px;font-weight:750}.finance-snapshot-card strong{margin:5px 0;color:#0b3b70;font-size:18px;line-height:1.2}.finance-snapshot-card em{color:#849187;font-size:12px;font-style:normal}.finance-snapshot-note{margin:11px 0 0;color:#677a6c;font-size:13px;line-height:1.45}
.finance-current-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.finance-snapshot-block+.finance-period-heading{margin-top:4px}
@media(max-width:950px){.finance-current-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.finance-period-heading{align-items:flex-start;flex-direction:column}.finance-current-grid,.finance-snapshot-grid{grid-template-columns:1fr!important}}

/* Member financial-year targets and Credits contribution monitoring. */
.member-target-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}
.member-target-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;padding:11px 0;border-bottom:1px solid #e6ece4}
.member-target-line:last-of-type{border-bottom:0}.member-target-line strong,.member-target-line span,.member-target-line small{display:block}.member-target-line span{margin-top:3px;color:#708078;font-size:13px}.member-target-line>b{color:#0b3b70}.member-target-line>i{grid-column:1/-1;height:8px;overflow:hidden;border-radius:10px;background:#e8eee6}.member-target-line>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d89b00,#ee711f)}.member-target-line>i.met em,.member-target-line.met>i em{background:linear-gradient(90deg,#1a7a4a,#2ea86a)}.member-target-line>small{grid-column:1/-1;font-weight:700}.member-target-line .behind,.member-closing-grid .behind,.negative{color:#c13945!important}.member-target-line .ahead,.member-closing-grid .ahead,.positive{color:#d89b00!important}.member-target-line .met,.member-closing-grid .met{color:#1a7a4a!important}
.member-policy-note{margin:12px 0 0;padding:10px 12px;border-radius:8px;color:#50645a;background:#f3f7f1;font-size:13px;line-height:1.5}.finance-subscription-progress{margin:0 0 16px}
.finance-subscription-bar{display:block;width:100%;padding:16px 18px;border:1px solid #d7e3ef;border-radius:14px;background:linear-gradient(180deg,#fff,#f7fbff);text-align:left;cursor:pointer}
.finance-subscription-bar:hover{border-color:#0b3b70;box-shadow:0 8px 20px rgba(11,59,112,.08)}
.finance-subscription-track{height:10px;margin:12px 0 10px;border-radius:999px;background:#e6eef6;overflow:hidden}
.finance-subscription-track em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b3b70,#2f7cc7)}
.finance-subscription-meta{display:flex;flex-wrap:wrap;gap:10px 18px;color:#667788;font-size:13px;font-weight:650}
.finance-subscription-detail p{margin:0 0 14px;color:#506070}.member-closing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.member-closing-grid>div{min-width:0;padding:11px;border-radius:9px;background:#f4f7f3}.member-closing-grid span,.member-closing-grid strong{display:block;overflow-wrap:anywhere}.member-closing-grid span{color:#738079;font-size:12px}.member-closing-grid strong{margin-top:4px;font-size:15px}
.credits-contribution-panel{margin:14px 0}.credits-contribution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.credits-contribution-grid>div{min-width:0;padding:13px;border:1px solid #e0e9de;border-radius:10px;background:linear-gradient(145deg,#fbfdf9,#fff)}.credits-contribution-grid span,.credits-contribution-grid strong,.credits-contribution-grid small{display:block;overflow-wrap:anywhere}.credits-contribution-grid span{color:#64756b;font-size:12px;font-weight:700}.credits-contribution-grid strong{margin:5px 0;color:#0b3b70;font-size:17px}.credits-contribution-grid small{color:#78877e;font-size:12px;line-height:1.35}
.credits-policy-explainer{margin:0 0 14px;padding:13px 15px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;border:1px solid #cfe2cd;border-radius:11px;background:#f6fbf3}.credits-policy-explainer strong{color:#0b3b70}.credits-policy-explainer span{font-weight:700}.credits-policy-explainer small{flex-basis:100%;color:#65756b}
@media(max-width:900px){.member-target-layout{grid-template-columns:1fr}.credits-contribution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.member-closing-grid,.credits-contribution-grid{grid-template-columns:1fr}}

.member-next-up{margin:4px 0 18px;padding:16px 18px;border:1px solid #dfe7ef;border-radius:16px;background:#fff;box-shadow:0 3px 13px rgba(11,34,65,.03)}
.member-next-up-head{margin-bottom:12px}
.member-next-up-head h3{margin:0 0 3px;color:#0b1f3b;font:800 15px Manrope}
.member-next-up-head p{margin:0;color:#7a8a99;font-size:13px}
.member-next-up-list{display:grid;gap:10px}
.member-next-up-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0 0;border:0;border-top:1px solid #e8eef3;border-radius:0;background:transparent;text-align:left;cursor:pointer}
.member-next-up-item:first-child{padding-top:2px;border-top:0}
.member-next-up-item strong,.member-next-up-item span{display:block}
.member-next-up-item strong{color:#122b3f;font-size:14px}
.member-next-up-item span{margin-top:3px;color:#667788;font-size:13px}
.member-next-up-item em{flex:0 0 auto;color:#0b3b70;font:800 13px Manrope;font-style:normal}
.member-next-up-item.warning strong{color:#8a5a00}
.member-next-up-item.danger strong{color:#b42318}
@media(max-width:640px){.member-next-up-item{align-items:flex-start;flex-direction:column}}
.member-hero-card{display:flex;flex-direction:column;align-items:stretch;gap:28px;padding:24px 26px 28px;border-radius:22px;background:linear-gradient(135deg,#0b3b70 0%,#0f4f8a 48%,#d89b00 160%);color:#fff;box-shadow:0 10px 28px rgba(11,59,112,.18)}
.member-hero-card .member-welcome-top span{color:#ffd27a;font-weight:700}
.member-hero-card .member-welcome-top h2{margin:4px 0 0;font:800 clamp(25px,2vw,34px) Manrope;color:#fff}
.member-loan-cta-body{display:flex;flex-direction:column;align-items:center;padding-top:10px;border-top:0;text-align:center}
.member-loan-cta-label{margin:0 0 36px;color:#ffd27a;font:800 18px/1.3 Manrope;letter-spacing:.1em}
.member-loan-cta-copy{margin:0 0 18px;color:#e8f0fa;font-size:14px;line-height:1.45;max-width:42rem}
.member-loan-cta-btn{width:100%;min-height:54px;justify-content:center;gap:10px;border:0;border-radius:14px;color:#0b3b70;background:#fff;font:800 17px Manrope;box-shadow:0 8px 20px rgba(0,0,0,.12)}
.member-loan-cta-btn:hover{filter:brightness(1.03)}
.member-loan-cta-btn.secondary{color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35)}
.member-page-tag{margin:4px 0 0;color:#8a7350;font:800 13px/1.3 Manrope;letter-spacing:.06em;text-transform:uppercase}
.page-head .eyebrow[hidden]{display:none!important}
.sidebar-backdrop{display:none}
@media(min-width:720px){.member-loan-cta-btn{width:auto;min-width:min(100%,420px);padding:14px 28px}}
@media(max-width:760px){.member-hero-card{padding:18px}}
.member-dashboard-reveals{display:grid;gap:14px;margin:18px 0 8px}
.member-reveal-card{border:1px solid #dfe7ef;border-radius:16px;background:#fff;box-shadow:0 3px 13px rgba(11,34,65,.03);overflow:hidden}
.member-reveal-toggle{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 18px;border:0;background:#fff;text-align:left;cursor:pointer}
.member-reveal-toggle>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#eef4fb;color:#0b3b70}
.member-reveal-toggle svg{width:20px}
.member-reveal-toggle strong,.member-reveal-toggle small{display:block}
.member-reveal-toggle strong{color:#122b3f;font:800 15px Manrope}
.member-reveal-toggle small{margin-top:3px;color:#6d7f8e;font-size:13px}
.member-reveal-toggle em{color:#0b3b70;font:800 13px Manrope;font-style:normal}
.member-reveal-toggle.open{border-bottom:1px solid #e8eef3;background:#f8fbff}
.member-reveal-panel{padding:8px 18px 18px}
.member-reveal-sub{margin:0 0 12px;color:#6d7f8e;font-size:13px}
.member-year-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.member-year-tab{min-height:34px;padding:7px 12px;border:1px solid #d5e0ea;border-radius:999px;background:#fff;color:#506070;font-weight:700;cursor:pointer}
.member-year-tab.active{border-color:#0b3b70;color:#fff;background:#0b3b70}
.member-activity-scroll{max-height:280px;overflow:auto}

/* Multi-role workspace picker and switcher */
.workspace-picker-box{text-align:left}.workspace-picker-box h2,.workspace-picker-box>p{text-align:center}
.workspace-pick-grid{display:grid;gap:12px;margin:22px 0 18px}
.workspace-pick-card{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:14px;row-gap:2px;width:100%;padding:16px 18px;border:1px solid #d7e1d8;border-radius:14px;background:#fff;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}
.workspace-pick-card:hover{border-color:#0b3b70;box-shadow:0 10px 24px rgba(11,59,112,.1);transform:translateY(-1px)}
.workspace-pick-card.member{border-color:rgba(240,180,41,.55);background:linear-gradient(180deg,#fffdf6,#fff)}
.workspace-pick-icon{grid-row:1/span 3;width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#eef3f8;color:#0b3b70}
.workspace-pick-card.member .workspace-pick-icon{background:#fff4d6;color:#b57b00}
.workspace-pick-card strong{color:#0b1f3b;font:800 16px Manrope}
.workspace-pick-card span{color:#667788;font-size:13px}
.workspace-pick-card em{color:#8a98a5;font-size:12px;font-style:normal}
.workspace-signout{width:100%}
.workspace-switcher{margin:0 0 12px;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.05)}
.workspace-switcher label{display:block;margin-bottom:8px;color:#8da99d;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}
.workspace-switch-list{display:grid;gap:7px}
.workspace-switch-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:transparent;color:#d7e6dc;text-align:left;cursor:pointer}
.workspace-switch-item svg{width:16px;height:16px;flex:0 0 auto}
.workspace-switch-item span{font-size:13px;font-weight:650}
.workspace-switch-item:hover{background:rgba(255,255,255,.07)}
.workspace-switch-item.active{border-color:rgba(240,180,41,.55);background:rgba(240,180,41,.12);color:#f0b429}
.workspace-switch-item.member{color:#f0b429;border-color:rgba(240,180,41,.35)}

/* Financial-year controls and contribution comparisons */
.dashboard-year-control{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.dashboard-year-control label{font-size:.78rem;font-weight:700;color:#64748b}.dashboard-year-control select{min-width:190px;border:1px solid #d6e1dc;border-radius:10px;background:#fff;color:#17372b;padding:.68rem .85rem;font:inherit;font-weight:700}.credits-year-progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.credits-year-card{border:1px solid #dbe5e1;border-radius:14px;padding:1rem;background:#fff;min-width:0}.credits-year-card.past{border-top:4px solid #f97316}.credits-year-card.current{border-top:4px solid #d89b00}.credits-year-card header{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin-bottom:.9rem}.credits-year-card header span{font-weight:800;color:#0b3b70}.credits-year-card header strong{font-size:.9rem;color:#526477}.credits-year-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-bottom:.8rem}.credits-year-metrics div{background:#f6f9f7;border-radius:10px;padding:.7rem;min-width:0}.credits-year-metrics span,.credits-lifetime-total span,.credits-lifetime-total small{display:block;color:#718096;font-size:.78rem}.credits-year-metrics strong{display:block;margin-top:.2rem;overflow-wrap:anywhere}.credits-year-card>small{display:block;margin-top:.65rem;font-weight:700}.credits-lifetime-total{margin-top:1rem;padding:.85rem 1rem;border-radius:12px;background:#edf8f0;display:grid;grid-template-columns:1fr auto;gap:.15rem 1rem}.credits-lifetime-total strong{grid-row:1/3;grid-column:2;align-self:center;font-size:1.15rem}.credits-lifetime-total small{grid-column:1}
@media(max-width:800px){.dashboard-year-control{justify-content:flex-start;width:100%}.dashboard-year-control select{width:100%}.credits-year-progress-grid{grid-template-columns:1fr}.credits-year-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.credits-year-metrics{grid-template-columns:1fr}.credits-lifetime-total{grid-template-columns:1fr}.credits-lifetime-total strong{grid-row:auto;grid-column:1}}
/* Registered family modal */
.modal.family-modal{width:min(640px,100%);overflow-x:hidden}
.family-register{display:grid;gap:16px;padding:18px 22px 22px;min-width:0}
.family-policy-notice{display:grid;gap:6px;padding:12px 14px;border:1px solid #e4ebf3;border-left:4px solid #d89b00;border-radius:10px;background:#fffaf0}
.family-policy-notice strong{color:#0b3b70;font-size:14px}
.family-policy-notice p{margin:0;color:#5b6b7c;font-size:14px;line-height:1.45}
.family-table-wrap{min-width:0;overflow-x:auto;border:1px solid #e2e8f0;border-radius:10px}
.family-table{width:100%;border-collapse:collapse;table-layout:fixed}
.family-table th,.family-table td{padding:10px 12px;text-align:left;font-size:13px;vertical-align:middle;overflow-wrap:anywhere}
.family-table th{color:#607286;background:#f5f8fb;font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:12px}
.family-table td{border-top:1px solid #edf1f5;color:#24384d}
.family-empty{color:#7a8a9a;text-align:center!important;padding:18px 12px!important}
.family-form{display:grid;gap:12px;padding:14px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;min-width:0}
.family-form h3{margin:0;color:#0b3b70;font-size:15px}
.family-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}
.family-form-grid .field{min-width:0}
.family-form-grid .field input,.family-form-grid .field select{width:100%;box-sizing:border-box}
.family-eligible-check{display:flex;align-items:center;gap:10px;min-height:44px;margin-top:22px;padding:0 4px;color:#35506b;font-size:14px;font-weight:700;cursor:pointer}
.family-eligible-check input{width:18px!important;height:18px!important;min-width:18px;padding:0!important;margin:0;flex:none;accent-color:#d89b00;border-radius:4px}
.family-form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px;padding-top:12px;border-top:1px solid #e2e8f0}
@media(max-width:560px){.family-form-grid{grid-template-columns:1fr}.family-eligible-check{margin-top:0}.family-form-actions{flex-wrap:wrap}.family-form-actions .button{flex:1 1 auto}}
