/* UX polish: calm operator workspace, compact and touch-friendly. */
:root{
  --ux-bg:#0b1020;--ux-surface:#121a2b;--ux-surface-2:#0f1728;--ux-surface-3:#18233a;
  --ux-line:#263653;--ux-line-soft:#1d2a43;--ux-text:#edf4ff;--ux-muted:#9aabc4;
  --ux-accent:#62dfb0;--ux-accent-strong:#35c894;--ux-info:#8fc7ff;--ux-warn:#f3c878;
  --ux-danger:#f28c9d;--ux-radius:14px;--ux-shadow:0 18px 55px rgba(0,0,0,.24)
}
html{background:var(--ux-bg);scroll-behavior:smooth}
body{background:radial-gradient(900px 480px at 86% -12%,#1b3156 0%,transparent 62%),var(--ux-bg);color:var(--ux-text)}
.app-shell{background:transparent}
.sidebar{background:rgba(14,23,40,.86);border-color:var(--ux-line);backdrop-filter:blur(16px)}
.brand-mark{border-radius:12px;background:linear-gradient(145deg,var(--ux-accent),#367fb0);box-shadow:0 8px 22px #35c89433}
.sidebar-nav a,.sidebar-nav button{border-radius:10px;color:var(--ux-muted);transition:background .16s,color .16s,transform .16s}
.sidebar-nav a:hover,.sidebar-nav button:hover,.sidebar-nav .active{background:var(--ux-surface-3);color:var(--ux-text);transform:translateX(2px)}
.workspace{max-width:1900px;padding:24px 28px 36px}
.topbar{background:linear-gradient(var(--ux-bg) 72%,transparent);padding:7px 0 22px}
.topbar h2{letter-spacing:-.02em}
.status-pill{border-color:#3e6b68;background:#12302e;color:#a7f3d0;border-radius:999px;padding:6px 11px}
.panel,.library-panel,.card,.metric-card{border:1px solid var(--ux-line);border-radius:var(--ux-radius);background:rgba(18,26,43,.94);box-shadow:var(--ux-shadow)}
.panel-head,.library-side-head,.reader-head{border-color:var(--ux-line-soft);background:rgba(18,26,43,.98)}
.library-panel{overflow:hidden}
.library-tabs{background:#0d1628;border-color:var(--ux-line)}
.library-tab{border:0;color:var(--ux-muted);font-weight:650;transition:color .16s,background .16s}
.library-tab:hover{color:var(--ux-text);background:#14233a}
.library-tab.active{color:#b9f8dd;background:#172a40;box-shadow:inset 0 -3px 0 var(--ux-accent)}
.input,textarea,select{border:1px solid var(--ux-line);border-radius:10px;background:#0d1627;color:var(--ux-text);min-height:42px}
.input::placeholder,textarea::placeholder{color:#70829e}
.input:focus,.input:focus-visible,textarea:focus,select:focus{border-color:var(--ux-accent);box-shadow:0 0 0 3px #62dfb01c;outline:0}
.btn{border:1px solid var(--ux-line);border-radius:10px;background:#18253b;color:var(--ux-text);min-height:40px;font-weight:650;transition:background .16s,border-color .16s,transform .16s}
.btn:hover{background:#203452;border-color:#416184;transform:translateY(-1px)}
.btn.primary,.btn.success{background:var(--ux-accent-strong);border-color:var(--ux-accent-strong);color:#061b16;box-shadow:0 7px 18px #35c89426}
.btn.primary:hover,.btn.success:hover{background:var(--ux-accent);border-color:var(--ux-accent)}
.btn.danger{color:#ffc0ca;border-color:#77404c;background:#321e2b}
.library-side{border-color:var(--ux-line)}
.chapter-card,.glossary-row,.prescan-row{border:1px solid var(--ux-line-soft);background:#141f33;border-radius:11px;transition:border-color .16s,background .16s}
.chapter-card:hover,.glossary-row:hover,.prescan-row:hover{border-color:#466487;background:#192842}
.chapter-card.active{border-color:var(--ux-accent);background:#15312f;box-shadow:inset 3px 0 var(--ux-accent)}
.chapter-list,.glossary-list{scrollbar-color:#38506f transparent}
.reader-pane{background:var(--ux-surface);border-color:var(--ux-line)}
.reader-text{background:#0e1728;color:#dce8f8;line-height:1.95;font-size:15px}
.reader-head strong,.panel-head h3{color:#f5f8ff}
.badge,.tag,.chip{border-color:var(--ux-line);background:#18253b;color:#b5c7df;border-radius:999px}
.badge.success,.status-approved{background:#15332f;color:#a7f3d0;border-color:#2f7561}
.badge.warn,.status-candidate{background:#352d1b;color:#f7d898;border-color:#766133}
.badge.danger,.status-conflict{background:#351e2b;color:#ffb9c5;border-color:#754150}
.empty-state{border:1px dashed #38506f;color:var(--ux-muted);border-radius:12px;background:#111c2f}
.metric-card{background:linear-gradient(145deg,#17243a,#111a2c)}
.metric-card strong{color:#f8fbff}
hr{border-color:var(--ux-line-soft)}
:focus-visible{outline:2px solid var(--ux-focus,#8fc7ff);outline-offset:3px}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:14px 16px;gap:10px}.sidebar-nav{display:flex;overflow:auto;gap:6px}.sidebar-nav a,.sidebar-nav button{white-space:nowrap}.workspace{padding:16px 14px 28px}}
@media(max-width:760px){.workspace{padding:10px}.topbar{padding-bottom:14px}.panel,.library-panel,.card,.metric-card{border-radius:12px}.reader-text{font-size:15px;padding:16px}.library-side{max-height:44vh}.reader-pane{height:54vh;min-height:340px}.btn{min-height:44px}.input,textarea,select{min-height:44px;font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
