@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#15263d;--muted:#748399;--line:#e8edf3;--paper:#fff;--canvas:#f6f8fb;--blue:#376be8;--blue-soft:#edf3ff;--teal:#21a89a;--green:#188a62;--amber:#b77716;--red:#bd4d4d;--shadow:0 8px 28px rgba(23,42,70,.045)}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}.app-shell{min-height:100vh;display:flex}.sidebar{width:244px;flex:none;background:#10243c;color:#c6d0dc;padding:27px 17px 20px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0}.brand{display:flex;align-items:center;gap:11px;margin:0 0 42px;padding:0 10px;color:#fff;text-decoration:none;font:800 19px Manrope,sans-serif;letter-spacing:-.6px}.brand small{display:block;color:#7f96b1;font:600 9px 'DM Sans',sans-serif;letter-spacing:1.5px;margin-top:4px}.brand-mark{height:34px;width:34px;border-radius:11px;background:#356be6;color:white;display:grid;place-items:center;font:700 26px Manrope;box-shadow:0 5px 16px #2e61db55}.nav-label{font-size:9px;letter-spacing:1.5px;color:#7990aa;font-weight:700;padding:0 12px 12px}.sidebar nav{display:grid;gap:4px}.nav-link{height:42px;padding:0 12px;border-radius:8px;display:flex;align-items:center;gap:13px;color:#9aacc0;text-decoration:none;font-weight:500;transition:.15s}.nav-link span{color:inherit}.nav-link:hover{background:#ffffff0d;color:#fff}.nav-link.active{background:#2b4261;color:white;box-shadow:inset 3px 0 #5592ff}.nav-link:first-letter{font-size:18px}.sidebar-note{margin-top:auto;border:1px solid #ffffff17;background:#ffffff08;border-radius:10px;padding:12px;display:flex;gap:10px;align-items:center}.sidebar-note strong,.sidebar-note small{display:block}.sidebar-note strong{font-size:11px;color:#e3eaf1}.sidebar-note small{font-size:10px;color:#8ca1b7;margin-top:3px}.pulse-dot{height:7px;width:7px;border-radius:50%;background:#35cc92;box-shadow:0 0 0 4px #35cc9225}.sidebar-footer{font-size:9px;letter-spacing:1.2px;color:#6e839b;margin:18px 8px 0}.main-area{margin-left:244px;width:calc(100% - 244px);min-height:100vh;display:flex;flex-direction:column}.topbar{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 39px}.breadcrumb{font-size:12px;color:#7d899a}.breadcrumb span{padding:0 8px;color:#c0c9d4}.topbar-right{display:flex;align-items:center;gap:14px}.secure-label{border:1px solid #e3e9f0;border-radius:20px;padding:6px 10px;color:#718097;font-size:9px;font-weight:700;letter-spacing:.8px}.avatar{height:31px;width:31px;display:grid;place-items:center;background:#e9f1ff;color:#3568cf;border-radius:50%;font-weight:700}.page-content{padding:33px 39px 36px;flex:1;max-width:1600px;width:100%;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:25px}.eyebrow{font-size:9px;font-weight:700;color:#7890a7;letter-spacing:1.5px;margin-bottom:8px}.page-heading h1{font:800 27px Manrope,sans-serif;letter-spacing:-.8px;margin:0;color:#172942}.page-heading p{margin:7px 0 0;color:#8290a2;font-size:13px}.button{height:39px;padding:0 15px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:0;font:600 12px 'DM Sans',sans-serif;cursor:pointer;white-space:nowrap}.button.primary{background:#356ce7;color:white;box-shadow:0 4px 10px #356ce733}.button.primary:hover{background:#245bd2}.button.secondary{background:#f0f4fa;color:#53667e}.button.danger{background:#fff2f0;color:#b4534d}.button.small{height:30px;padding:0 10px;font-size:11px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:19px}.stat-card,.panel{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.stat-card{padding:17px 18px 16px}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#758399;font-size:11px;font-weight:600}.stat-card>strong{display:block;font:800 25px Manrope,sans-serif;margin:13px 0 4px;letter-spacing:-.7px}.stat-card>small{color:#9aa5b3;font-size:10px}.stat-icon,.quick-icon{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;font-size:16px;font-weight:600}.blue{background:#eef3ff;color:#4a76dd}.violet{background:#f2efff;color:#7863d2}.amber{background:#fff6e9;color:#c58622}.green{background:#e9f8f1;color:#24936e}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(275px,.9fr);gap:17px;margin-bottom:18px}.panel{padding:19px 20px}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.panel-heading h2{font:700 14px Manrope,sans-serif;margin:0}.panel-heading p{font-size:11px;color:#94a0ae;margin:5px 0 0}.text-link{font-size:11px;color:#3c70dc;text-decoration:none;font-weight:600}.spark{color:#4580e7;font-size:17px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;color:#98a3b0;font-size:9px;letter-spacing:.75px;font-weight:700;padding:10px 9px;border-bottom:1px solid #edf0f4}td{padding:12px 9px;border-bottom:1px solid #f0f2f6;font-size:11px;color:#566579}tbody tr:last-child td{border-bottom:0}td strong{color:#283b55;font-size:11px}.subline{display:block;color:#9ba6b3;font-size:10px;margin-top:4px}.badge{display:inline-block;padding:5px 8px;border-radius:20px;font-size:9px;font-weight:700;letter-spacing:.2px}.green-badge{color:#16845e;background:#e9f7f0}.amber-badge{color:#b77917;background:#fff4e1}.red-badge{color:#b54545;background:#fff0ef}.blue-badge{color:#3f6fc5;background:#edf3ff}.quick-action{display:flex;align-items:center;gap:11px;text-decoration:none;border-bottom:1px solid #f0f2f6;padding:12px 0}.quick-action:last-child{border:0;padding-bottom:2px}.quick-action span:nth-child(2){flex:1}.quick-action strong,.quick-action small{display:block}.quick-action strong{font-size:11px;color:#34475f}.quick-action small{color:#96a1af;font-size:10px;margin-top:4px}.quick-action>b{color:#9aabba;font-size:14px}.quick-icon{width:32px;height:32px}.recent-panel{padding-bottom:8px}.empty-state{padding:27px 10px;text-align:center;color:#96a2b0;font-size:12px}.page-footer{padding:13px 39px;border-top:1px solid var(--line);font-size:10px;color:#95a1af;background:#fff}.page-footer span{float:right}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:10px;font-weight:700;color:#64748b}.field input,.field select,.field textarea{width:100%;border:1px solid #e2e8f0;border-radius:6px;background:#fff;padding:9px 10px;font:12px 'DM Sans',sans-serif;color:#293c54;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7ca1ef;box-shadow:0 0 0 3px #4d7fe51c}.field textarea{min-height:70px;resize:vertical}.field.full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;align-items:center;margin-top:14px}.split-grid{display:grid;grid-template-columns:minmax(285px,.72fr) minmax(0,1.6fr);gap:17px;align-items:start}.form-panel h2,.panel-heading h2{color:#243852}.form-panel h2{font:700 14px Manrope,sans-serif;margin:0 0 5px}.form-panel>p{font-size:11px;color:#96a1af;margin:0 0 17px}.stack-form{display:grid;gap:12px}.inline-form{display:flex;align-items:center;gap:7px}.inline-form input,.inline-form select{min-width:0;border:1px solid #e2e8f0;border-radius:6px;padding:7px 8px;font:11px 'DM Sans',sans-serif}.alert{margin:16px 39px 0;border-radius:7px;padding:11px 14px;font-size:12px}.alert.success{background:#e8f7f0;color:#187b5a;border:1px solid #d0efdf}.alert.error{background:#fff0ee;color:#af4b43;border:1px solid #f7d8d4}.mono{font-family:monospace;color:#627288}.filter-row{display:flex;gap:8px;align-items:end;margin-bottom:15px}.filter-row .field{min-width:180px}.check-row{display:flex;gap:13px;flex-wrap:wrap}.check-row label{font-size:11px;color:#5b6c80;display:flex;gap:6px;align-items:center}.kpi-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:17px}.kpi{padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:9px}.kpi small{display:block;color:#8b98a8;font-size:10px}.kpi strong{display:block;margin-top:7px;font:800 20px Manrope,sans-serif}.muted-note{font-size:10px;color:#9aa5b3}.danger-text{color:#b94e48!important}.section-title{display:flex;justify-content:space-between;align-items:center;margin:0 0 12px}.section-title h2{font:700 14px Manrope;margin:0}.tagline{font-size:10px;color:#92a0af}.amount{font-weight:700;color:#2c405a}
@media(max-width:1050px){.sidebar{width:205px}.main-area{margin-left:205px;width:calc(100% - 205px)}.page-content{padding:26px 24px}.topbar{padding:0 24px}.alert{margin-left:24px;margin-right:24px}.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.split-grid{grid-template-columns:1fr}}
@media(max-width:700px){.sidebar{width:64px;padding:18px 8px}.brand{padding:0;justify-content:center;margin:0 0 28px}.brand>span:not(.brand-mark),.nav-label,.nav-link span,.sidebar-note,.sidebar-footer{display:none}.nav-link{justify-content:center;padding:0;font-size:18px}.main-area{margin-left:64px;width:calc(100% - 64px)}.topbar{height:56px;padding:0 14px}.page-content{padding:22px 14px}.alert{margin:12px 14px 0}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:23px}.stat-grid{gap:9px}.stat-card{padding:13px}.stat-card>strong{font-size:21px}.panel{padding:15px 13px}.page-footer{padding:12px 14px}.page-footer span{float:none;display:block;margin-top:4px}.form-grid,.form-grid.three{grid-template-columns:1fr}.field.full{grid-column:auto}.kpi-strip{grid-template-columns:1fr}.topbar-right .secure-label{display:none}}


/* Forest-teal and sage visual theme. */
:root{
  --ink:#183532;--muted:#71827d;--line:#dfe8e2;--paper:#fffefa;--canvas:#f2f6f2;
  --blue:#0d8185;--blue-soft:#e4f3f0;--teal:#128b7d;--green:#257653;
  --amber:#a9680f;--red:#b54444;--shadow:0 8px 24px rgba(24,53,50,.06)
}
body{background:var(--canvas);color:var(--ink);font-size:15px;-webkit-font-smoothing:antialiased}
.sidebar{background:linear-gradient(180deg,#103940 0%,#102f36 100%);box-shadow:8px 0 28px rgba(12,43,47,.12)}
.brand{font-size:20px}.brand small{font-size:10px;color:#92b7b5}
.brand-mark{background:#0e9292;box-shadow:0 5px 16px rgba(14,146,146,.35)}
.nav-label{font-size:10px;color:#8baead}.nav-link{font-size:14px;color:#b1c8c7}
.nav-link.active{background:rgba(32,143,139,.24);box-shadow:inset 3px 0 #63d1c1}
.nav-link:hover{background:rgba(255,255,255,.09)}
.sidebar-note{border-color:rgba(176,222,213,.17);background:rgba(255,255,255,.055)}
.sidebar-note strong{font-size:12px}.sidebar-note small{font-size:11px}
.sidebar-footer{font-size:10px;color:#86a8a7}
.pulse-dot{background:#5ad2a3;box-shadow:0 0 0 4px rgba(90,210,163,.17)}
.topbar,.page-footer{background:#fffefa;border-color:var(--line)}
.breadcrumb{font-size:13px;color:#637a75}.page-heading h1{font-size:30px;color:#183532}
.page-heading p{font-size:14px;color:#728580}.eyebrow{font-size:10px;color:#14847f}
.stat-card,.panel,.kpi{background:var(--paper);border-color:var(--line)}
.stat-card,.panel{box-shadow:0 2px 8px rgba(24,53,50,.025),0 9px 24px rgba(24,53,50,.045)}
.stat-card:hover{border-color:#c3dcd4;box-shadow:0 8px 22px rgba(24,53,50,.085)}
.stat-top{font-size:12px;color:#607873}.stat-card>strong{font-size:28px;color:#183532}
.stat-card>small{font-size:11px;color:#71827d}
.panel-heading h2,.form-panel h2,.section-title h2{font-size:16px;color:#23423e}
.panel-heading p,.form-panel>p{font-size:12px;color:#728580}
.text-link,.spark{color:#0d8185}.text-link{font-size:12px}
.button{font-size:13px;border-radius:8px}.button.small{font-size:12px}
.button.primary{background:linear-gradient(135deg,#159b91,#08767c);box-shadow:0 5px 13px rgba(13,129,133,.22)}
.button.primary:hover{background:linear-gradient(135deg,#108b83,#07676f);box-shadow:0 7px 16px rgba(13,129,133,.28)}
.button.secondary{background:#edf3ef;color:#405b55;border:1px solid #dce7e0}
.button.secondary:hover{background:#e3eee8;color:#23443e}
.blue{background:#e2f3f0;color:#0c7b7d}.violet{background:#efedfa;color:#7061ad}
.green{background:#e7f4ec;color:#247653}
.green-badge{color:#18724e;background:#e6f4eb}.blue-badge{color:#0c7477;background:#e3f3f0}
.amber-badge{color:#9b6719;background:#fff3df}.red-badge{color:#a83f3f;background:#ffefec}
.panel-heading p{line-height:1.45}
th{font-size:10px;color:#718780;background:#f8fbf8;border-bottom-color:#e7eee9}
td{font-size:13px;color:#536a64}td strong{font-size:13px;color:#27453f}
.subline{font-size:11px;color:#82938d}.badge{font-size:10px}
tbody tr:hover{background:#f3f8f4}
.quick-action{border-bottom-color:#edf2ee}.quick-action strong{font-size:13px;color:#284640}
.quick-action small{font-size:11px;color:#748781}.quick-action>b{font-size:16px}
.empty-state{font-size:13px;color:#748781}
.field label,.check-row label{font-size:12px;color:#506a64}
.field input,.field select,.field textarea{font-size:14px;border-color:#d7e4dc;color:#23453f}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#62aaa1;box-shadow:0 0 0 3px rgba(20,139,125,.14)}
.inline-form input,.inline-form select{font-size:13px;border-color:#d7e4dc;color:#23453f}
.alert{font-size:13px;border-radius:9px}.alert.success{background:#e8f5ed;color:#176a4a;border-color:#cfe7d7}
.kpi small,.muted-note,.tagline{font-size:11px}.kpi strong{font-size:22px}
.page-footer{font-size:11px;color:#778a83}
.avatar{background:#e4f3f0;color:#0b7d7f}
.auth-user{font-size:12px;color:#4f6b64}
.role-pill{font-size:10px;background:#eef7f3;border-color:#d8e8df;color:#28715f}
.button:focus-visible,.nav-link:focus-visible,.quick-action:focus-visible,.text-link:focus-visible{outline:3px solid rgba(13,129,133,.38);outline-offset:2px}
@media(max-width:700px){
  .nav-link{font-size:14px}.page-heading h1{font-size:26px}
  .stat-card>strong{font-size:23px}.panel-heading h2,.form-panel h2,.section-title h2{font-size:15px}
  td{font-size:12px}
}
