:root{--navy:#0f2a44;--navy-2:#162e4d;--accent:#1a73e8;--bg:#f1f5f9;--card:#fff;--border:#e2e8f0;--text:#0f172a;--muted:#64748b;--radius:14px;--shadow:0 1px 2px rgba(15,42,68,.06),0 4px 12px rgba(15,42,68,.04)}body,html{background:var(--bg);color:var(--text)}.app-shell{max-width:1200px;margin:0 auto;padding:16px;display:grid;grid-gap:16px;gap:16px}@media (max-width:720px){.app-shell{padding:12px}}.page-print{max-width:1200px;margin:0 auto;padding:16px;display:grid;grid-gap:16px;gap:16px}.page-print>.card,.page-print>div{page-break-inside:avoid;break-inside:avoid}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.page-header h1{margin:0;font-size:20px;font-weight:900;color:var(--navy);letter-spacing:-.02em}.page-header p{margin:4px 0 0;font-size:13px;color:var(--muted)}.menu-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.menu-card{display:block;text-decoration:none;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow);transition:transform .12s,box-shadow .12s,border-color .12s}.menu-card:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(15,42,68,.08);border-color:#cbd5e1}.menu-card-title{font-size:14px;font-weight:800;color:var(--navy)}.menu-card-desc{font-size:12px;color:var(--muted);margin-top:4px}.menu-card-meta{font-size:11px;font-weight:700;color:var(--accent);margin-top:8px}.nav-pill-active{background:var(--accent)!important;color:#fff!important}.nav-pill{transition:background .15s,color .15s}@media (min-width:1024px){.two-col{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}}@media (max-width:1023px){.two-col{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px}}@media (max-width:720px){.kpi-grid{grid-template-columns:repeat(2,1fr)!important}}@media print{.no-print,button,nav,select{display:none!important}body,main{background:#fff!important;color:#000!important}#dashboard-print,.page-print{max-width:100%!important;padding:0!important}#dashboard-print>div,.page-print>.card,.page-print>div{page-break-inside:avoid;break-inside:avoid}}