
:root{
  --bg:#0a0c0d; --panel:#0f1112; --card:#121416; --muted:#1b1f22;
  --ink:#e7eaed; --ink-dim:#a9b2ba; --accent:#8a7dff; --ok:#1db36a; --warn:#f2b93b; --err:#ff6767;
}
*{box-sizing:border-box} html,body{background:var(--bg);color:var(--ink);font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;font-size:16px;line-height:1.45;margin:0}
a{color:#9fa6ff;text-decoration:none} a:hover{text-decoration:underline}
.lead{color:var(--ink-dim)}
.container{max-width:1100px;margin:0 auto;padding:20px}
header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--muted);background:var(--panel);position:sticky;top:0;z-index:5}
.btn{display:inline-block;background:var(--card);border:1px solid var(--muted);padding:8px 12px;border-radius:10px;color:var(--ink);text-decoration:none;margin-right:8px}
.btn:hover{background:#15191c}
.input{width:100%;padding:10px 12px;background:var(--card);border:1px solid var(--muted);border-radius:10px;color:var(--ink);margin:14px 0}
table{width:100%;border-collapse:separate;border-spacing:0 10px}
thead th{color:var(--ink-dim);font-weight:600;text-align:left;padding:10px}
tbody td{background:var(--card);border-top:1px solid var(--muted);border-bottom:1px solid var(--muted);padding:12px 14px;vertical-align:top}
tbody tr td:first-child{border-left:1px solid var(--muted);border-top-left-radius:10px;border-bottom-left-radius:10px}
tbody tr td:last-child{border-right:1px solid var(--muted);border-top-right-radius:10px;border-bottom-right-radius:10px}
.small{font-size:12px;color:var(--ink-dim)}
.right{text-align:right}
.pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--muted);padding:2px 8px;border-radius:999px;background:#15181a;margin-right:6px;white-space:nowrap}
.pill.ok{border-color:#144c36;color:#b8f5d5;background:rgba(29,179,106,.08)}
.pill.warn{border-color:#5a4514;color:#ffe5a6;background:rgba(242,185,59,.08)}
.pill.err{border-color:#5a1d1d;color:#ffc2c2;background:rgba(255,103,103,.08)}
.tip{position:relative;display:inline-flex;align-items:center;gap:6px}
.tip .bubble{visibility:hidden;opacity:0;transition:opacity .12s ease;position:absolute;left:0;top:125%;background:#0f1112;border:1px solid var(--muted);padding:8px 10px;border-radius:8px;min-width:220px;max-width:340px;color:var(--ink-dim);font-size:12px;z-index:10}
.tip:hover .bubble,.tip:focus-within .bubble{visibility:visible;opacity:1}
.sortable .arrow{margin-left:6px;color:var(--ink-dim)}
.drawer{display:none;padding:10px;border:1px solid var(--muted);border-radius:10px;background:#121416;margin:8px 0}
.meta-kv{display:grid;grid-template-columns:140px 1fr;gap:4px 12px}
.card{background:var(--card);border:1px solid var(--muted);border-radius:12px;padding:14px;margin:10px 0}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.bar{height:6px;background:#101214;border-radius:999px;margin-top:6px;border:1px solid #202529;overflow:hidden}
.fill{height:100%;background:var(--accent)}
.chips{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}
.delta-pos{color:#9ae6b4}.delta-neg{color:#feb2b2}.delta-zero{color:var(--ink-dim)}
.chev{cursor:pointer}


/* fixed-additions */
.audit{display:inline-flex;align-items:center;gap:8px;flex-wrap:nowrap}
.audit,.audit *{white-space:nowrap!important}
.pill,.badge,.chip{display:inline-flex;align-items:center;gap:6px;white-space:nowrap!important}
.audit > *:nth-child(-n+2)::after{content:"›";margin-left:4px;opacity:.8}
figure.card[data-kind="radar"]{pointer-events:none;max-width:640px;margin:0 auto 8px}
figure.card[data-kind="radar"] svg{pointer-events:none}


/* v7.2 additions */
/* chevrons single-line */
.pill, .badge, .chip { display:inline-flex; align-items:center; gap:6px; white-space:nowrap !important; line-height:1; }
.pill.chev::after, .badge.chev::after, .chip.chev::after { content:"›"; display:inline-block; margin-left:4px; vertical-align:middle; }
.audit { display:inline-flex; align-items:center; gap:8px; flex-wrap:nowrap; white-space:nowrap !important; }

/* radar never blocks drawers; keep z-order below */
figure.card[data-kind="radar"] { pointer-events:none; position:relative; z-index:0; }
.report main details, .report main summary { position:relative; z-index:1; }


/* v7.4 additions */
/* Keep Audit column single-line regardless of inner markup (10th column) */
table thead th:nth-child(10),
table tbody td:nth-child(10) { white-space: nowrap !important; }

/* Pills and chevrons stay on one line */
.pill { display:inline-flex; align-items:center; gap:6px; line-height:1; white-space:nowrap !important; }
.pill + .pill::before { content:"›"; display:inline-block; margin:0 4px 0 6px; opacity:.8; vertical-align:middle; }

/* Ensure report drawer sits above any decorative cards */
details, details > summary { position:relative; z-index:2; }

/* v7.8 additions */
#exportPDF.btn{cursor:pointer}
