
:root{
  --icare-bg:#f4f7f6;
  --icare-surface:#ffffff;
  --icare-border:#e4ebe8;
  --icare-text:#17241f;
  --icare-muted:#6b7c75;
  --icare-primary:#0f6b4d;
  --icare-primary-2:#159267;
  --icare-primary-soft:#e8f5ef;
  --icare-sidebar:#0d2a20;
  --icare-sidebar-2:#12382b;
  --icare-sidebar-text:#dce9e3;
  --icare-sidebar-muted:#8fb1a3;
  --icare-danger:#b53c3c;
  --icare-radius:14px;
  --icare-shadow:0 8px 30px rgba(12,45,34,.08);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--icare-bg);color:var(--icare-text);font-family:Inter,Segoe UI,Arial,sans-serif}

.icare-app-shell{min-height:100vh;display:flex}
.icare-sidebar{
  width:278px;min-width:278px;height:100vh;position:sticky;top:0;overflow-y:auto;
  background:linear-gradient(180deg,var(--icare-sidebar),var(--icare-sidebar-2));
  color:var(--icare-sidebar-text);padding:20px 14px 16px;border-right:1px solid rgba(255,255,255,.06)
}
.icare-brand{display:flex;align-items:center;gap:12px;padding:5px 8px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.icare-brand-mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#fff;color:var(--icare-primary);font-weight:900;letter-spacing:-1px}
.icare-brand-copy{display:flex;flex-direction:column}
.icare-brand-copy strong{font-size:16px;letter-spacing:.3px}
.icare-brand-copy span{font-size:10px;color:var(--icare-sidebar-muted);margin-top:3px}

.icare-user-chip{display:flex;align-items:center;gap:10px;margin:14px 6px;padding:11px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.04)}
.icare-user-avatar{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.12);font-weight:800}
.icare-user-chip div:last-child{display:flex;flex-direction:column}
.icare-user-chip strong{font-size:12px}
.icare-user-chip span{font-size:10px;color:var(--icare-sidebar-muted);margin-top:2px}

.icare-nav{padding-top:4px}
.icare-nav-section{margin:4px 0}
.icare-nav-section-toggle{width:100%;border:0;background:transparent;color:var(--icare-sidebar-muted);display:grid;grid-template-columns:22px 1fr 18px;align-items:center;text-align:left;padding:10px 10px;border-radius:10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;cursor:pointer}
.icare-nav-section-toggle:hover{background:rgba(255,255,255,.04);color:#fff}
.icare-nav-chevron{transition:.2s;text-align:center}
.icare-nav-section.is-open .icare-nav-chevron{transform:rotate(180deg)}
.icare-nav-items{display:none;padding:1px 0 5px 31px}
.icare-nav-section.is-open .icare-nav-items{display:block}
.icare-nav-item{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--icare-sidebar-text);font-size:13px;padding:9px 11px;border-radius:9px;margin:2px 0;transition:.15s}
.icare-nav-item:hover{background:rgba(255,255,255,.07);color:#fff}
.icare-nav-item.is-active{background:linear-gradient(90deg,rgba(21,146,103,.32),rgba(21,146,103,.12));color:#fff;font-weight:700;box-shadow:inset 3px 0 0 #4ad39e}
.icare-nav-dot{width:5px;height:5px;border-radius:50%;background:#678f7e}
.icare-nav-item.is-active .icare-nav-dot{background:#5ee3b0;box-shadow:0 0 0 4px rgba(94,227,176,.12)}

.icare-sidebar-footer{border-top:1px solid rgba(255,255,255,.08);margin-top:18px;padding:15px 9px 5px;display:flex;flex-direction:column}
.icare-sidebar-footer strong{font-size:11px}
.icare-sidebar-footer span{font-size:10px;color:var(--icare-sidebar-muted);margin-top:4px}

.icare-main{flex:1;min-width:0}
.icare-topbar{height:68px;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--icare-border);display:flex;align-items:center;justify-content:space-between;padding:0 28px}
.icare-topbar-title{font-size:14px;font-weight:800}
.icare-topbar-meta{font-size:11px;color:var(--icare-muted)}
.icare-content{padding:26px 28px 40px;max-width:1680px;margin:0 auto}

.page-title{font-size:28px;margin:0 0 5px;letter-spacing:-.5px}
.sub{color:var(--icare-muted);font-size:13px;margin-bottom:22px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:16px 0}
.card,.panel{background:var(--icare-surface);border:1px solid var(--icare-border);border-radius:var(--icare-radius);box-shadow:var(--icare-shadow)}
.card{padding:17px}
.card span{font-size:11px;color:var(--icare-muted);text-transform:uppercase;letter-spacing:.5px}
.card b{display:block;font-size:23px;margin-top:8px}
.panel{padding:20px;margin:15px 0;overflow:auto}
.panel h2{margin-top:0;font-size:17px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border-radius:9px;text-decoration:none;border:1px solid var(--icare-primary);background:var(--icare-primary);color:white;font-size:12px;font-weight:700;margin:2px 4px 2px 0}
.btn:hover{background:var(--icare-primary-2);border-color:var(--icare-primary-2)}
table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}
th{background:#f0f5f3;color:#53655e;text-transform:uppercase;letter-spacing:.45px;font-size:10px;text-align:left;padding:11px;border-bottom:1px solid var(--icare-border)}
td{padding:11px;border-bottom:1px solid #edf1ef;vertical-align:top}
tr:hover td{background:#fbfdfc}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}

@media(max-width:1000px){
 .icare-sidebar{width:236px;min-width:236px}
 .icare-content{padding:20px}
 .grid2{grid-template-columns:1fr}
}
@media(max-width:760px){
 .icare-app-shell{display:block}
 .icare-sidebar{position:fixed;left:-285px;z-index:100;width:278px;transition:.2s}
 .icare-sidebar.mobile-open{left:0}
 .icare-content{padding:16px}
 .icare-topbar{padding:0 16px}
}
