:root { --ink:#172321; --muted:#687773; --brand:#126b5b; --brand-dark:#0b493f; --cream:#f5f3ed; --line:#dfe6e3; --warning:#d98b2b; }
.quick-actions { display:flex; gap:.4rem; align-items:center; white-space:nowrap; }
.quick-actions-horizontal { flex-wrap:nowrap; }
.quick-actions-horizontal > * { flex-shrink:0; }
.quick-actions-horizontal .quick-actions-select { width:170px; }
.quick-actions-vertical { flex-direction:column; align-items:stretch; width:180px; }
.quick-actions-vertical .btn,.quick-actions-vertical .form-select { width:100%; }
.quick-action-form { margin:0; }
.quick-actions-restore { white-space:normal; }
.skill-delete-marked > td { background-color:#fff1f1 !important; }
html { font-size:15px; min-height:100%; position:relative; }
body { min-height:100%; margin-bottom:72px; color:var(--ink); background:#fbfcfb; font-family:Inter,"Segoe UI",sans-serif; }
.app-nav { background:linear-gradient(100deg,var(--brand-dark),#126b5b); box-shadow:0 3px 16px rgba(10,55,47,.16); }
.navbar-brand { font-weight:700; letter-spacing:-.02em; }
.brand-mark { display:inline-grid; place-items:center; width:34px; height:34px; margin-right:.55rem; border:1px solid rgba(255,255,255,.45); border-radius:10px; font-size:.78rem; }
.nav-link { color:rgba(255,255,255,.78)!important; border-radius:8px; padding:.55rem .8rem!important; }
.nav-link:hover { color:white!important; background:rgba(255,255,255,.09); }
.page-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:2rem; margin:1rem 0 2rem; }
.page-heading h1 { margin:.25rem 0 .55rem; font-size:clamp(2rem,3vw,3.2rem); letter-spacing:-.045em; font-weight:720; }
.page-heading p { color:var(--muted); max-width:780px; margin:0; font-size:1.08rem; }
.eyebrow { color:var(--brand); text-transform:uppercase; letter-spacing:.11em; font-size:.74rem; font-weight:750; }
.metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.metric-card,.panel { background:white; border:1px solid var(--line); border-radius:16px; box-shadow:0 8px 28px rgba(22,55,48,.055); }
.metric-card { padding:1.25rem 1.35rem; display:flex; flex-direction:column; }
.metric-card span,.metric-card small { color:var(--muted); }
.metric-card strong { font-size:2rem; line-height:1.25; letter-spacing:-.04em; }
.metric-card.warning { border-top:4px solid var(--warning); padding-top:1.05rem; }
.content-grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,1fr); gap:1rem; }
.panel { padding:1.4rem; }
.soft-panel { background:var(--cream); }
.panel-heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.panel h2 { font-size:1.25rem; margin:.15rem 0; }
.workflow { list-style:none; padding:0; margin:1.1rem 0 0; counter-reset:step; }
.workflow li { counter-increment:step; display:grid; grid-template-columns:2rem 10rem 1fr; gap:1rem; align-items:start; padding:1rem 0; border-top:1px solid var(--line); }
.workflow li:before { content:counter(step); display:grid; place-items:center; width:1.8rem; height:1.8rem; border-radius:50%; background:#dceee9; color:var(--brand-dark); font-weight:700; }
.workflow span { color:var(--muted); }
.table-shell { overflow:auto; border:1px solid var(--line); border-radius:14px; background:white; }
.category-anchor { scroll-margin-top: 1rem; }
.table { margin:0; }
.table thead th { background:#f1f5f3; color:#52625e; font-size:.75rem; text-transform:uppercase; letter-spacing:.05em; border-bottom:1px solid var(--line); white-space:nowrap; }
.table td { vertical-align:middle; border-color:#edf1ef; }
.oid { font-family:"Cascadia Mono",Consolas,monospace; font-size:.78rem; color:#52625e; }
.badge-soft { display:inline-block; padding:.25rem .55rem; border-radius:999px; background:#e7f2ef; color:var(--brand-dark); font-size:.75rem; font-weight:650; }
.confidence { min-width:88px; }
.confidence-bar { height:6px; border-radius:99px; background:#e8ecea; overflow:hidden; margin-top:.25rem; }
.confidence-bar i { display:block; height:100%; background:var(--brand); }
.filters { display:flex; flex-wrap:wrap; gap:.65rem; margin-bottom:1rem; }
.filters .form-control,.filters .form-select { max-width:290px; }
.detail-list { display:grid; grid-template-columns:180px 1fr; gap:.65rem 1.2rem; }
.detail-list dt { color:var(--muted); font-weight:500; }
.footer { position:absolute; bottom:0; width:100%; line-height:60px; }
@media (max-width:1000px) { .metric-grid{grid-template-columns:repeat(2,1fr)} .content-grid{grid-template-columns:1fr} }
@media (max-width:600px) { .metric-grid{grid-template-columns:1fr} .page-heading{display:block} .page-heading .btn{margin-top:1rem} .workflow li{grid-template-columns:2rem 1fr}.workflow span{grid-column:2}.detail-list{grid-template-columns:1fr} }
