:root{--navy:#0f172a;--indigo:#4f46e5;--cyan:#06b6d4;--slate:#475569;--soft:#f8fafc;--line:#e2e8f0}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--soft);color:#0f172a}.top{background:var(--navy);color:#fff;padding:20px 28px;display:flex;justify-content:space-between;gap:20px;align-items:flex-end;flex-wrap:wrap}.top h1{margin:0}.top p{margin:.25rem 0 0;color:#cbd5e1}.top nav{display:flex;gap:8px;flex-wrap:wrap}.top nav a{color:#fff;text-decoration:none;background:#1f2937;padding:9px 12px;border-radius:10px;font-weight:700}.wrap{max-width:1250px;margin:28px auto;padding:0 20px}.card{background:white;border:1px solid var(--line);border-radius:20px;padding:22px;margin-bottom:20px;box-shadow:0 12px 30px rgba(15,23,42,.06)}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.module-card{display:block;text-decoration:none;color:#0f172a;transition:.2s}.module-card:hover{transform:translateY(-3px);border-color:var(--indigo)}input,select,textarea{width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:12px;background:#fff}textarea{min-height:96px}label{font-weight:700;font-size:.92rem;margin-top:10px;display:block}button,.btn{display:inline-block;border:0;border-radius:12px;background:var(--indigo);color:#fff;padding:11px 15px;font-weight:800;text-decoration:none;cursor:pointer}.btn.secondary{background:#334155}.btn.green{background:#059669}.btn.warn{background:#d97706}.btn.danger{background:#dc2626}.btn.light{background:#e0e7ff;color:#3730a3}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.85rem;text-transform:uppercase;color:#475569}.badge{display:inline-block;padding:5px 9px;border-radius:999px;background:#e0e7ff;color:#3730a3;font-size:12px;font-weight:800;margin:2px}.badge.red{background:#fee2e2;color:#991b1b}.badge.amber{background:#fef3c7;color:#92400e}.badge.green{background:#dcfce7;color:#166534}.notice{background:#ecfeff;color:#155e75;padding:12px 14px;border-radius:12px;margin-bottom:16px}.impersonation{background:#7c2d12;color:white;text-align:center;padding:10px}.impersonation a{color:white;font-weight:800}.stat{font-size:36px;font-weight:900}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.tabs a{padding:9px 12px;border-radius:10px;background:#e2e8f0;color:#0f172a;text-decoration:none;font-weight:800}.print-header{display:none}.bodymap{max-width:360px;margin:auto}.bodymap svg{width:100%;height:auto}.bodymap circle{cursor:pointer;fill:#e2e8f0;stroke:#64748b}.bodymap circle.selected{fill:#ef4444}@media(max-width:900px){.grid,.grid3,.grid4{grid-template-columns:1fr}.top{align-items:flex-start}table{font-size:13px}}@media print{.top,.btn,button,.tabs,.no-print{display:none!important}.wrap{max-width:none;margin:0;padding:0}.card{box-shadow:none;border:1px solid #999;page-break-inside:avoid}.print-header{display:block;text-align:center;margin-bottom:20px}}

/* PRISM Insight header/menu structure fix v39 - final override */
.top{
    background:linear-gradient(135deg,#0f172a,#1e1b4b 65%,#075985) !important;
    color:#ffffff !important;
    padding:26px 30px !important;
    display:block !important;
    justify-content:initial !important;
    align-items:initial !important;
    gap:0 !important;
    flex-wrap:initial !important;
}

.top h1{
    margin:0 0 6px !important;
    font-size:32px !important;
    line-height:1.1 !important;
    letter-spacing:-0.035em !important;
    color:#ffffff !important;
}

.top p{
    margin:0 !important;
    color:#cbd5e1 !important;
    font-size:15px !important;
}

.top nav{
    display:none !important;
}

.nav{
    background:#111827 !important;
    padding:10px 28px !important;
    display:flex !important;
    gap:10px !important;
    flex-wrap:wrap !important;
    justify-content:flex-start !important;
    align-items:center !important;
    border:0 !important;
    box-shadow:none !important;
}

.nav a{
    color:#ffffff !important;
    text-decoration:none !important;
    font-weight:800 !important;
    background:#1f2937 !important;
    padding:9px 12px !important;
    border-radius:10px !important;
    line-height:1.2 !important;
    display:inline-flex !important;
    align-items:center !important;
    min-height:36px !important;
}

.nav a:hover{
    background:#374151 !important;
}

.nav a.active{
    background:#4f46e5 !important;
}

.impersonation,
.imp{
    background:#7c2d12 !important;
    color:#ffffff !important;
    padding:12px 18px !important;
    text-align:center !important;
    font-weight:800 !important;
}

.impersonation a,
.imp a{
    color:#ffffff !important;
    text-decoration:underline !important;
}

@media(max-width:760px){
    .top{
        padding:22px 18px !important;
    }

    .top h1{
        font-size:27px !important;
    }

    .nav{
        padding:10px 18px !important;
    }

    .nav a{
        flex:1 1 auto !important;
        justify-content:center !important;
        font-size:14px !important;
    }
}


/* PRISM Insight system admin impersonation banner v40 */
.impersonation,
.imp{
    background:#7c2d12 !important;
    color:#ffffff !important;
    padding:12px 18px !important;
    text-align:center !important;
    font-weight:800 !important;
    border:0 !important;
}

.impersonation a,
.imp a{
    color:#ffffff !important;
    text-decoration:underline !important;
    margin-left:10px !important;
}

