:root { --rd-side: 232px; --rd-accent: #2563eb; }
body { background: var(--bs-tertiary-bg); font-size: .925rem; }
.rd-side { position: fixed; inset: 0 auto 0 0; width: var(--rd-side); background: #0f172a; color: #cbd5e1; overflow-y: auto; z-index: 1030; }
.rd-side a { color: #cbd5e1; text-decoration: none; display: flex; gap: .6rem; align-items: center; padding: .42rem 1rem; border-radius: .4rem; margin: 1px .5rem; }
.rd-side a:hover { background: #1e293b; color: #fff; }
.rd-side a.active { background: var(--rd-accent); color: #fff; }
.rd-side .title { font-size: .7rem; text-transform: uppercase; letter-spacing: .08em; color: #64748b; padding: .9rem 1.5rem .3rem; }
.rd-logo { font-weight: 700; font-size: 1.15rem; color: #fff !important; padding: 1rem 1.5rem !important; margin: 0 !important; }
.rd-main { margin-left: var(--rd-side); min-height: 100vh; }
.rd-top { background: var(--bs-body-bg); border-bottom: 1px solid var(--bs-border-color); padding: .55rem 1.25rem; position: sticky; top: 0; z-index: 1020; }
.rd-content { padding: 1.25rem; }
.card { border: 1px solid var(--bs-border-color); box-shadow: 0 1px 2px rgba(0,0,0,.04); }
.stat .num { font-size: 1.75rem; font-weight: 700; line-height: 1.1; }
.stat .lbl { color: var(--bs-secondary-color); font-size: .8rem; }
.lv-critical { background: #7f1d1d !important; color: #fff !important; }
.lv-high { background: #dc2626 !important; color: #fff !important; }
.lv-medium { background: #f59e0b !important; color: #111 !important; }
.lv-low { background: #64748b !important; color: #fff !important; }
.table-sm td, .table-sm th { padding: .3rem .5rem; vertical-align: middle; }
.mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .85em; }
.tbl-wrap { max-height: 70vh; overflow: auto; }
.tbl-wrap thead th { position: sticky; top: 0; background: var(--bs-body-bg); z-index: 1; }
textarea.code { font-family: ui-monospace, monospace; font-size: .82rem; }
@media (max-width: 900px) { .rd-side { position: static; width: auto; } .rd-main { margin-left: 0; } }
.audit-raw { display: none; margin-top: .15rem; }
body.show-raw .audit-raw { display: block; }
.audit-text a { text-decoration: none; }
