/* Version 5 analytics/reporting additions. Uploading this file appends/overwrites the existing stylesheet with backward-compatible styles. */
:root{
  --rose:#f43f5e;--rose-dark:#be123c;--rose-light:#fff1f5;--teal:#0f766e;--ink:#1f2937;--muted:#6b7280;--bg:#fff7f9;--card:#ffffff;--line:#f3d4dc;--red:#dc2626;--blue:#2563eb;--purple:#7c3aed;--orange:#ea580c;
}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink)}a{color:var(--rose-dark);text-decoration:none}a:hover{text-decoration:underline}.topbar{background:linear-gradient(135deg,var(--rose),var(--teal));color:white;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:0;z-index:10}.brand-wrap{display:flex;align-items:center;gap:12px}.logo-mark{width:42px;height:42px;border-radius:16px;background:rgba(255,255,255,.22);display:grid;place-items:center;font-weight:900;letter-spacing:.04em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}.brand{font-weight:800;font-size:1.25rem;letter-spacing:.2px}.subtitle{font-size:.85rem;opacity:.92}.userbox{display:flex;align-items:center;gap:10px;font-size:.9rem;flex-wrap:wrap;justify-content:flex-end}.userbox a{color:white;font-weight:700}.role-pill,.notif-pill{border-radius:999px;padding:3px 8px;background:rgba(255,255,255,.22);font-size:.75rem}.notif-pill{background:#fef08a;color:#854d0e;font-weight:800}.menu-toggle{display:none;border:1px solid rgba(255,255,255,.45);background:rgba(255,255,255,.12);color:white;padding:8px 10px;border-radius:10px}.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:calc(100vh - 116px)}.sidebar{background:white;border-right:1px solid var(--line);padding:16px}.sidebar a{display:block;padding:11px 12px;border-radius:14px;color:var(--ink);margin-bottom:6px;font-weight:700}.sidebar a small{color:var(--muted);font-weight:500}.sidebar a:hover{background:var(--rose-light);text-decoration:none}.nav-section{margin:18px 12px 8px;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.sidebar-note{margin:8px 12px 14px;color:var(--muted);font-size:.82rem;line-height:1.35}.content{padding:22px}.footer{padding:14px 18px;color:var(--muted);text-align:center;font-size:.86rem;border-top:1px solid var(--line);background:white}h1{margin:0 0 6px;font-size:1.65rem}h2{margin-top:0}.page-subtitle{color:var(--muted);margin:0 0 18px}.card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 12px 24px rgba(31,41,55,.06);margin-bottom:18px}.card-title{font-weight:800;font-size:1.05rem;margin-bottom:12px}.card-title::first-letter{color:var(--rose-dark)}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.stat{background:white;border:1px solid var(--line);border-radius:20px;padding:16px;position:relative;overflow:hidden}.stat::after{content:"";position:absolute;right:-22px;top:-22px;width:76px;height:76px;border-radius:999px;background:var(--rose-light);opacity:.9}.stat .num{font-size:2rem;font-weight:900;color:var(--rose-dark)}.stat .label{color:var(--muted);font-weight:700}.stat .num,.stat .label{position:relative;z-index:1}.btn{border:0;border-radius:12px;padding:10px 13px;font-weight:800;cursor:pointer;display:inline-block;background:var(--rose);color:white;text-decoration:none}.btn:hover{text-decoration:none;filter:brightness(.97)}.btn-secondary{background:var(--teal)}.btn-muted{background:#6b7280}.btn-danger{background:var(--red)}.btn-light{background:var(--rose-light);color:var(--rose-dark);border:1px solid #fecdd3}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0}.compact-filter{gap:6px;flex-wrap:wrap}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-row-3{grid-template-columns:repeat(3,minmax(0,1fr))}label{display:block;font-weight:800;margin-bottom:6px}label small{display:block;color:var(--muted);font-weight:600}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:white;color:var(--ink);font:inherit}textarea{min-height:90px}.help,.help-text{color:var(--muted);font-size:.9rem;line-height:1.45;margin-top:4px}.table-wrap{overflow-x:auto;border-radius:18px;border:1px solid var(--line);background:white}table{width:100%;border-collapse:collapse;min-width:850px}th,td{padding:12px 11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#fff1f5;font-size:.86rem;text-transform:uppercase;letter-spacing:.04em;color:#831843}tr:last-child td{border-bottom:0}.simple-table{min-width:0}.simple-table th,.simple-table td{text-transform:none;letter-spacing:0}.table-wrap table tbody tr:hover{background:#fff7f9}.badge{display:inline-block;padding:4px 9px;border-radius:999px;font-weight:800;font-size:.78rem;background:#e5e7eb;color:#374151}.badge-red{background:#fee2e2;color:#991b1b}.badge-darkred{background:#7f1d1d;color:white}.badge-yellow{background:#fef9c3;color:#854d0e}.badge-green{background:#dcfce7;color:#166534}.badge-blue{background:#dbeafe;color:#1d4ed8}.badge-purple{background:#ede9fe;color:#5b21b6}.badge-orange{background:#ffedd5;color:#9a3412}.alert{border-radius:16px;padding:12px 14px;margin-bottom:14px;font-weight:700}.alert-success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.alert-info{background:#dbeafe;color:#1d4ed8;border:1px solid #bfdbfe}.login-wrap{max-width:440px;margin:40px auto;padding:18px}.login-card{background:white;border:1px solid var(--line);border-radius:26px;padding:26px;box-shadow:0 16px 32px rgba(31,41,55,.08)}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}.check-item{display:flex;align-items:flex-start;gap:8px;font-weight:600}.check-item input{width:auto;margin-top:4px}.kpi-note{font-size:.9rem;color:var(--muted)}.print-only{display:none}hr{border:0;border-top:1px solid var(--line);margin:18px 0}.session-warning{position:fixed;right:18px;bottom:18px;z-index:9999;max-width:340px;background:#fff7ed;color:#7c2d12;border:1px solid #fed7aa;border-left:6px solid #ea580c;border-radius:18px;box-shadow:0 18px 42px rgba(31,41,55,.18);padding:14px 16px;font-size:.92rem}.session-warning strong{display:block;margin-bottom:4px}.session-warning small{color:#9a3412}.timeline{display:grid;gap:12px}.timeline-item{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:16px;background:white}.timeline-dot{width:14px;height:14px;border-radius:999px;margin-top:4px;background:var(--rose);flex:0 0 auto}.timeline-item.done .timeline-dot{background:var(--teal)}.timeline-item.overdue .timeline-dot{background:var(--red)}.timeline-title{font-weight:900}.timeline-meta{color:var(--muted);font-size:.9rem}.profile-section{display:grid;grid-template-columns:1fr 1fr;gap:16px}.referral-slip{max-width:820px;margin:0 auto;background:white;padding:22px;border:1px solid #ddd}.referral-slip h1{text-align:center}.referral-slip .slip-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}.callout{border-left:6px solid var(--rose);background:#fff1f5;padding:12px 14px;border-radius:14px;margin-bottom:18px}.callout-red{border-left-color:var(--red);background:#fff1f2}.code-box,pre.code-box{background:#111827;color:#f9fafb;padding:14px;border-radius:14px;overflow:auto;font-size:.85rem}.sms-mode-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#f0fdf4;color:#166534;font-weight:800}
/* V5 analytics widgets */
.kpi-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:10px 0 6px;font-weight:800}.progress{height:12px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;overflow:hidden;margin-bottom:10px}.progress>div{height:100%;background:linear-gradient(90deg,var(--rose),var(--teal));border-radius:999px}.big-kpi{border:1px solid var(--line);background:#fff7f9;border-radius:18px;padding:14px;margin-bottom:12px}.big-kpi span{display:block;font-size:2.1rem;font-weight:900;color:var(--rose-dark)}.big-kpi small{color:var(--muted);font-weight:700}.mini-chart,.trend-grid{display:grid;gap:10px}.trend-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.trend-card{border:1px solid var(--line);border-radius:18px;padding:12px;background:#fff}.chart-line{display:grid;grid-template-columns:62px 1fr 42px;gap:8px;align-items:center;margin:7px 0}.chart-label{font-size:.82rem;color:var(--muted);font-weight:800}.chart-track{height:12px;background:#f3f4f6;border-radius:999px;overflow:hidden}.chart-track span{display:block;height:100%;border-radius:999px}.bar-ref{background:var(--rose)}.bar-closed{background:var(--teal)}.bar-24{background:var(--blue)}.chart-number{text-align:right;font-size:.82rem;font-weight:900}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:4px}.legend-dot.rose{background:var(--rose)}
@media(max-width:850px){.menu-toggle{display:block}.app-shell{display:block}.sidebar{display:none;border-right:0;border-bottom:1px solid var(--line)}body.nav-open .sidebar{display:block}.content{padding:14px}.grid-2,.grid-3,.grid-4,.form-row,.form-row-3,.profile-section,.referral-slip .slip-grid,.trend-grid{grid-template-columns:1fr}.topbar{align-items:flex-start}.userbox{font-size:.82rem}.check-grid{grid-template-columns:1fr}.session-warning{left:12px;right:12px;bottom:12px;max-width:none}}
@media print{.topbar,.sidebar,.footer,.actions,.btn,.menu-toggle,.no-print{display:none!important}body{background:white}.app-shell{display:block}.content{padding:0}.card{box-shadow:none;border:1px solid #ddd;break-inside:avoid}.print-only{display:block}table{min-width:0;font-size:11px}th,td{padding:6px}.referral-slip{border:0;padding:0;max-width:100%}.referral-slip .slip-grid{grid-template-columns:1fr 1fr}}


/* Version 6 branding and production-readiness additions */
.brand-logo{width:48px;height:48px;border-radius:16px;object-fit:contain;background:rgba(255,255,255,.92);padding:4px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35),0 6px 16px rgba(31,41,55,.16)}
.login-logo-wrap{text-align:center;margin-bottom:10px}.login-logo{width:96px;height:96px;object-fit:contain;border-radius:24px;background:#fff;padding:6px;border:1px solid var(--line);box-shadow:0 12px 24px rgba(31,41,55,.08)}
.privacy-notice{border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;border-radius:16px;padding:11px 13px;font-size:.9rem;line-height:1.45;margin:12px 0 16px}.privacy-notice strong{display:block;margin-bottom:3px}.branding-preview{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.branding-preview img{width:112px;height:112px;object-fit:contain;border:1px solid var(--line);border-radius:20px;background:#fff;padding:8px}.upload-box{border:2px dashed var(--line);border-radius:20px;background:#fff7f9;padding:18px}.report-logo,.slip-logo{width:82px;height:82px;object-fit:contain;display:block;margin:0 auto 8px}.slip-logo{width:78px;height:78px}@media(max-width:850px){.brand-logo{width:42px;height:42px}.login-logo{width:82px;height:82px}}


/* Version 6.1 logo/header fix
   Keeps uploaded MHO logo compact in the website header. */
.topbar{
  min-height:72px !important;
  padding:10px 18px !important;
  align-items:center !important;
  overflow:hidden !important;
}
.brand-wrap{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  min-width:0 !important;
  flex:1 1 auto !important;
}
.topbar img,
.topbar .brand-logo,
header.topbar img.brand-logo{
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  max-width:52px !important;
  min-height:52px !important;
  max-height:52px !important;
  flex:0 0 52px !important;
  object-fit:contain !important;
  display:block !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.95) !important;
  padding:4px !important;
}
.brand-wrap > div:last-child{
  min-width:0 !important;
}
.brand{
  font-size:1.05rem !important;
  line-height:1.12 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.subtitle{
  font-size:.78rem !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.userbox{
  flex:0 1 auto !important;
}
@media(max-width:850px){
  .topbar{
    min-height:64px !important;
    padding:9px 12px !important;
    gap:8px !important;
  }
  .topbar img,
  .topbar .brand-logo,
  header.topbar img.brand-logo{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    border-radius:12px !important;
    padding:3px !important;
  }
  .brand{font-size:.98rem !important;}
  .subtitle{font-size:.72rem !important;}
}

/* Version 7 governance documentation module */
.gov-domain-list{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.gov-domain{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;font-weight:800;font-size:.88rem}.gov-domain input{width:auto}.note-panel{border:1px solid var(--line);border-radius:18px;background:#fff;padding:14px;margin-bottom:12px}.note-panel h3{margin:0 0 6px}.note-meta{color:var(--muted);font-size:.9rem;line-height:1.45}.note-body{white-space:pre-wrap;line-height:1.55}.tag-row{display:flex;gap:6px;flex-wrap:wrap}.gov-print-header{text-align:center;margin-bottom:18px}.gov-print-header h1{margin-bottom:4px}.status-open{background:#fef9c3;color:#854d0e}.status-in_progress{background:#dbeafe;color:#1d4ed8}.status-closed{background:#dcfce7;color:#166534}.status-overdue{background:#7f1d1d;color:white}.domain-accountability{background:#ede9fe;color:#5b21b6}.domain-coordination{background:#dbeafe;color:#1d4ed8}.domain-transparency{background:#fef9c3;color:#854d0e}.domain-responsiveness{background:#fee2e2;color:#991b1b}.governance-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.governance-summary-box{border:1px solid var(--line);border-radius:16px;background:#fff;padding:12px}.governance-summary-box strong{display:block;font-size:1.55rem;color:var(--rose-dark)}@media(max-width:850px){.governance-summary-grid{grid-template-columns:1fr 1fr}}@media print{.governance-summary-grid{grid-template-columns:repeat(4,1fr)}.note-panel{break-inside:avoid}.gov-domain-list input{display:none}}

/* Version 8 production readiness additions */
.stat-danger { border-color: #fca5a5 !important; background: #fff1f2 !important; }
.stat-warning { border-color: #facc15 !important; background: #fffbeb !important; }
.inline-form { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.inline-form input { max-width: 320px; }
.sub-row td { background: #fff7fb; border-top: 0; }
.filter-form { display: flex; align-items: end; gap: 12px; flex-wrap: wrap; }
.filter-form label { display: block; margin-bottom: 4px; }
.checklist-readonly { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 10px; padding-left: 18px; }
.checklist-readonly li { background: #fff7fb; border: 1px solid #f9c5d5; border-radius: 14px; padding: 10px 12px; }
.table-wrap textarea { width: 100%; min-width: 220px; }
@media (max-width: 900px) {
    .inline-form { display: block; }
    .inline-form input, .inline-form button { width: 100%; margin-top: 8px; max-width: none; }
}

/* V9 RHU + Risk Monitoring Upgrade */
.wrap-actions { flex-wrap: wrap; gap: .55rem; align-items: end; }
.callout-blue { border-left: 5px solid #2563eb; background: #eff6ff; }
.callout-green { border-left: 5px solid #16a34a; background: #f0fdf4; }
.callout-yellow { border-left: 5px solid #f59e0b; background: #fffbeb; }
.badge-blue { background: #dbeafe; color: #1d4ed8; }
.badge-orange { background: #ffedd5; color: #c2410c; }
.badge-purple { background: #ede9fe; color: #6d28d9; }
.help-text { color: #64748b; font-size: .92rem; }
@media (max-width: 720px) {
    .wrap-actions input, .wrap-actions select, .wrap-actions label { width: 100%; max-width: 100% !important; }
    .actions.wrap-actions .btn { width: 100%; justify-content: center; }
}

/* V10 Case Follow-up and Delivery Outcome Upgrade */
.case-summary-box{border:1px solid var(--line);border-radius:18px;background:#fff;padding:14px;margin-bottom:12px}.section-divider{border-top:1px solid var(--line);margin:18px 0}.status-card{border-left:6px solid var(--teal);background:#f0fdfa}.delivery-card{border-left:6px solid #16a34a;background:#f0fdf4}.followup-card{border-left:6px solid #f59e0b;background:#fffbeb}.stat-danger::after{background:#fee2e2!important}.stat-warning::after{background:#fef9c3!important}.compact-table table{min-width:620px}.priority-critical{background:#fee2e2;color:#991b1b}.priority-high{background:#ffedd5;color:#9a3412}.priority-normal{background:#e5e7eb;color:#374151}.priority-low{background:#f3f4f6;color:#6b7280}@media print{.case-summary-box,.status-card,.delivery-card,.followup-card{box-shadow:none;break-inside:avoid}}

/* V11 Dashboard Charts + UI Enhancement */
:root{
  --shadow:0 16px 36px rgba(15,23,42,.08);
  --soft-line:#f0d6df;
  --surface:#fff;
  --surface-soft:#fff7fb;
  --mint:#ecfdf5;
  --sky:#eff6ff;
  --amber:#fffbeb;
}
body{background:linear-gradient(180deg,#fff7fb 0,#f8fafc 42%,#fff7f9 100%)}
.topbar{padding:12px 18px;box-shadow:0 12px 28px rgba(15,23,42,.12)}
.brand-logo{width:42px;height:42px;object-fit:contain;border-radius:12px;background:rgba(255,255,255,.9);padding:3px;box-shadow:0 6px 14px rgba(15,23,42,.16)}
.brand{line-height:1.1}.subtitle{line-height:1.1}.user-name{font-weight:800}.app-shell{grid-template-columns:280px 1fr}.sidebar{background:rgba(255,255,255,.92);backdrop-filter:blur(8px);padding:14px;border-right:1px solid var(--soft-line);box-shadow:8px 0 24px rgba(15,23,42,.04)}.nav-group{margin-bottom:12px}.sidebar a{border:1px solid transparent;line-height:1.22}.sidebar a.active,.sidebar a:hover{background:linear-gradient(135deg,#fff1f5,#ecfdf5);border-color:#fecdd3;box-shadow:0 8px 18px rgba(244,63,94,.08)}.content{padding:24px;max-width:1500px;width:100%;}.page-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.page-title-row h1{margin-bottom:4px}.quick-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.hero-panel{border-radius:28px;background:linear-gradient(135deg,#fff,#fff1f5 48%,#ecfdf5);border:1px solid var(--line);box-shadow:var(--shadow);padding:22px;margin-bottom:18px;position:relative;overflow:hidden}.hero-panel:after{content:"";position:absolute;right:-80px;top:-100px;width:220px;height:220px;background:rgba(244,63,94,.11);border-radius:50%}.hero-panel>*{position:relative;z-index:1}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kpi-tile{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:0 12px 24px rgba(15,23,42,.05);position:relative;overflow:hidden}.kpi-tile:before{content:"";position:absolute;right:-26px;top:-26px;width:84px;height:84px;border-radius:50%;background:#fff1f5}.kpi-tile.danger:before{background:#fee2e2}.kpi-tile.success:before{background:#dcfce7}.kpi-tile.info:before{background:#dbeafe}.kpi-tile.warning:before{background:#fef3c7}.kpi-value{font-size:2.05rem;font-weight:950;color:#9f1239;line-height:1}.kpi-label{font-weight:900;margin-top:8px}.kpi-hint{color:var(--muted);font-size:.85rem;margin-top:3px}.kpi-tile>*{position:relative;z-index:1}.chart-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:0 12px 24px rgba(15,23,42,.05);margin-bottom:16px}.chart-title{font-weight:950;margin-bottom:12px;color:#831843}.bar-row{margin:11px 0}.bar-row-head{display:flex;justify-content:space-between;gap:10px;font-size:.9rem;font-weight:850;margin-bottom:6px}.bar-row-head span{overflow:hidden;text-overflow:ellipsis}.bar-track{height:13px;background:#f1f5f9;border-radius:999px;overflow:hidden;border:1px solid #e5e7eb}.bar-fill{height:100%;display:block;border-radius:999px;background:linear-gradient(90deg,var(--rose),var(--teal))}.bar-danger{background:linear-gradient(90deg,#dc2626,#fb7185)}.bar-warning{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.bar-success{background:linear-gradient(90deg,#16a34a,#5eead4)}.bar-info{background:linear-gradient(90deg,#2563eb,#38bdf8)}.bar-neutral{background:linear-gradient(90deg,#6b7280,#cbd5e1)}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.chart-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.empty-state{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:14px;padding:12px;color:var(--muted);font-weight:700}.attention-list{display:grid;gap:10px}.attention-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:11px}.attention-dot{width:12px;height:12px;border-radius:50%;background:#f59e0b}.attention-item.danger .attention-dot{background:#dc2626}.attention-item.warning .attention-dot{background:#f59e0b}.attention-type{font-weight:900;font-size:.78rem;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.attention-title{font-weight:900}.attention-meta{font-size:.88rem;color:var(--muted)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 12px}.section-heading h2{margin:0}.card{box-shadow:var(--shadow);border-radius:24px}.stat{box-shadow:0 12px 24px rgba(15,23,42,.05)}.stat-danger{border-color:#fecaca;background:#fff1f2}.stat-danger .num{color:#b91c1c}.wrap-actions{align-items:end}.form-row,.form-row-3{align-items:start}.table-wrap{box-shadow:0 10px 22px rgba(15,23,42,.04)}tbody tr:nth-child(even){background:#fffafa}.login-card{border-radius:30px;background:linear-gradient(180deg,#fff,#fff7fb);box-shadow:0 22px 48px rgba(15,23,42,.12)}.login-logo-wrap{text-align:center;margin-bottom:10px}.login-logo{max-width:112px;max-height:112px;object-fit:contain}.privacy-notice{border-left:5px solid var(--teal);background:#ecfdf5;border-radius:14px;padding:12px;margin:14px 0;color:#134e4a;font-size:.93rem}.report-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:2px solid #111827;padding-bottom:12px;margin-bottom:18px}.report-brand{display:flex;gap:12px;align-items:center}.report-logo{width:72px;height:72px;object-fit:contain}.print-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.print-kpi{border:1px solid #d1d5db;border-radius:12px;padding:10px}.print-kpi strong{display:block;font-size:1.35rem}.executive-watermark{font-size:.8rem;color:#6b7280}.mobile-card-list{display:none}
@media(max-width:1100px){.dashboard-grid,.chart-grid,.chart-grid-3{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{grid-template-columns:250px 1fr}}
@media(max-width:850px){.topbar{position:sticky}.brand-logo{width:38px;height:38px}.app-shell{display:block}.content{padding:14px}.page-title-row{display:block}.quick-actions{justify-content:flex-start;margin-top:10px}.kpi-grid{grid-template-columns:1fr}.chart-grid,.chart-grid-3{grid-template-columns:1fr}.sidebar{max-height:72vh;overflow:auto}.sidebar a{padding:13px 12px}.stat .num,.kpi-value{font-size:1.75rem}.attention-item{grid-template-columns:auto 1fr}.attention-item .btn{grid-column:2}.table-wrap table{min-width:760px}.form-row,.form-row-3{gap:10px}}
@media print{body{background:white}.content{max-width:none}.hero-panel,.chart-card,.kpi-tile,.card{box-shadow:none!important}.quick-actions,.no-print{display:none!important}.chart-grid,.chart-grid-3,.dashboard-grid{display:block}.chart-card{break-inside:avoid;margin-bottom:10px}.bar-track{border:1px solid #999}.report-header{display:flex}.print-summary-grid{grid-template-columns:repeat(4,1fr)}.page-title-row{display:block}}
