/* SCAMURAI — refined evidence workbench. Presentation only. */
:root {
  --bg:#090f12; --sidebar:#0b1215; --panel:#111b1f; --panel-raised:#172328;
  --panel-soft:#0d161a; --line:#26353b; --line-bright:#3a5058;
  --text:#ecf3f2; --muted:#a0b0b5; --dim:#758e96;
  --primary:#98efc5; --teal:#79d7bd; --purple:#bcb0ed; --blue:#a1c4ee;
  --amber:#e8c58f; --red:#f1aaaa; --radius:12px;
  --font:Inter,'Segoe UI',Arial,sans-serif; --display:Inter,'Segoe UI',Arial,sans-serif;
  --mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;
  --shadow:0 18px 60px #0003;
}
html { background:var(--bg); color-scheme:dark; }
body { font-family:var(--font); font-size:13px; line-height:1.65; letter-spacing:0; -webkit-font-smoothing:antialiased; }
h1,h2,h3,h4 { font-family:var(--display); letter-spacing:-.035em; }
button { letter-spacing:0; }
.ambient { display:none; }
::selection { background:#98efc539; color:#fff; }
::-webkit-scrollbar-thumb { background:#3b5159; }
input,textarea,select { background:#0c1519; border:1px solid #32464e; border-radius:8px; color:var(--text); padding:11px 13px; }
input::placeholder,textarea::placeholder { color:#6f8992; opacity:1; }
input:focus,textarea:focus,select:focus { border-color:#98efc5; box-shadow:0 0 0 3px #98efc512; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
button:disabled { opacity:.42; }
.text-button { color:#a4c8bc; font-size:11px; }
.text-button:hover { color:#c8ffe4; }
.button { min-height:40px; border-radius:8px; font-size:12px; font-weight:600; padding:9px 15px; gap:8px; }
.button-primary { background:var(--primary); border-color:var(--primary); color:#0b241b; box-shadow:inset 0 1px 0 #fff4,0 4px 16px #0002; }
.button-primary:hover:not(:disabled) { background:#b1f8d6; border-color:#b1f8d6; color:#0b241b; box-shadow:0 4px 20px #98efc515; transform:translateY(-1px); }
.button-secondary { background:#152126; border-color:#3a5058; color:#d2e1e3; }
.button-secondary:hover:not(:disabled) { background:#1c2b31; border-color:#637c85; color:#f1f8f7; }
.button-ghost { background:#98efc506; border-color:#34564d; color:#b4e8d2; }
.button-ghost:hover:not(:disabled) { background:#98efc510; border-color:#6b9d89; color:#d5ffeb; }
.button-small { min-height:32px; padding:6px 11px; font-size:10.5px; }
.icon-button { color:#94aeb7; border-radius:7px; }
.icon-button:hover { color:#d1f9e7; background:#98efc50c; }
.badge { font:9px/1.5 var(--mono); border-radius:5px; padding:3px 7px; letter-spacing:.01em; }
.badge-green { color:#ade6cc; background:#173a2e; border-color:#2b5c49; }
.badge-purple { color:#c7b9ed; background:#29263b; border-color:#4c4266; }
.badge-blue { color:#b6d0ed; background:#1d3043; border-color:#385771; }
.badge-amber { color:#e5c490; background:#342d21; border-color:#635034; }
.badge-muted { color:#a7bdc3; background:#202e34; border-color:#3b5058; }
.panel { border:1px solid var(--line); border-radius:12px; background:var(--panel); box-shadow:none; }
.brand { color:#f0f7f5; font-family:var(--display); letter-spacing:-1.9px; font-weight:750; }
.brand-symbol { color:#102b21; background:#98efc5; border:1px solid #b2f7d7; border-radius:10px; box-shadow:0 4px 20px #98efc50e; }
.brand-period { color:var(--primary); }
.brand small { font:6.8px/1.25 var(--mono); color:#8ba3ab; letter-spacing:1.6px; }
.version { font:9px var(--mono); color:#9db6bd; background:#152328; border:1px solid #31464e; border-radius:5px; padding:5px 7px; }
.status-dot,.tiny-dot { background:var(--primary); }
.eyebrow,.nav-label,.case-id,.auth-eyebrow,.auth-card-kicker,.auth-graph-top,.auth-graph-legend,.auth-bottom,.auth-preview-note,.stat-title,.graph-help,.graph-note,.inspector-kicker,.detail-section h4,.mono,.hash-line,.app-footer { font-family:var(--mono); }
/* Entry: an evidence workspace, not a promise of universal collection. */
.auth-screen { grid-template-columns:minmax(0,1.14fr) minmax(390px,.86fr); min-height:100svh; max-width:none; background:#090f12; }
.auth-left { padding:36px clamp(30px,4.4vw,76px) 24px; border-right:1px solid #293b42; background-color:#0a1215; background-image:radial-gradient(ellipse at 15% 15%,#193c341f,transparent 60%),radial-gradient(#6c8b9416 .65px,transparent .65px); background-size:auto,25px 25px; }
.auth-left::before { height:1px; background:linear-gradient(90deg,#98efc5aa,#98efc522 65%,transparent); }
.auth-brand { width:100%; margin:0 0 46px; gap:12px; font-size:34px; }
.auth-brand .brand-symbol { width:43px; height:43px; border-radius:11px; }
.auth-brand .brand-symbol svg { width:29px; height:29px; }
.auth-brand small { margin-top:8px; font-size:7px; letter-spacing:1.7px; }
.auth-brand .version { margin-left:auto; margin-top:0; font-size:9px; letter-spacing:.7px; }
.auth-hero { max-width:700px; margin:auto 0; }
.auth-eyebrow { font-size:9px; font-weight:400; letter-spacing:1.35px; color:#a1bab5; margin-bottom:20px; }
.auth-eyebrow .status-dot { width:5px; height:5px; border-radius:50%; box-shadow:0 0 0 4px #98efc50b; }
.auth-hero h1 { font-size:clamp(42px,4.4vw,68px); line-height:1.07; letter-spacing:-.055em; font-weight:650; margin-bottom:21px; color:#f2f7f5; }
.auth-hero h1>span { color:var(--primary); -webkit-text-fill-color:var(--primary); background:none; }
.auth-hero>p { max-width:535px; font-size:13px; line-height:1.85; color:#9eb2b7; }
.auth-graph { margin-top:30px; border:1px solid #354c52; border-radius:12px; background:linear-gradient(145deg,#142124e6,#0b1418); box-shadow:0 18px 50px #0002,inset 0 1px 0 #ffffff03; overflow:hidden; }
.auth-graph::before { background-image:radial-gradient(#a0c6c11b .6px,transparent .6px); background-size:19px 19px; }
.auth-graph-top { padding:12px 16px; border-color:#293e44; color:#78959d; font-size:7px; letter-spacing:.75px; }
.auth-graph-top>span:first-child { color:#bfd9d0; }
.auth-graph-top .tiny-dot { border-radius:50%; width:4px; height:4px; }
.auth-graph>svg { max-height:225px; padding:13px 16px 5px; width:100%; }
.auth-graph>svg text { font-family:var(--mono); }
.auth-graph-legend { border-color:#263b42; color:#96afb4; padding:12px 16px; font-size:7.5px; gap:18px; }
.auth-graph-legend .relation-line { width:18px; }
.auth-principles { margin-top:22px; gap:20px; }
.auth-principles>div { border-top:1px solid #2b3f45; padding:14px 0 0; }
.auth-principles>div>span { display:grid; place-items:center; width:27px; height:27px; margin-bottom:10px; color:#a4e8ca; background:#172d27; border:1px solid #2d4c40; border-radius:7px; }
.auth-principles svg { width:14px; height:14px; }
.auth-principles strong { font-size:10.5px; line-height:1.4; color:#d0e1df; font-weight:600; }
.auth-principles small { font-size:9px; line-height:1.6; color:#829da5; margin-top:5px; }
.auth-bottom { margin-top:35px; padding-top:18px; border-color:#263a40; color:#6f8d95; font-size:7px; letter-spacing:.2px; gap:15px; }
.auth-right { padding:48px clamp(28px,4.5vw,74px); background:radial-gradient(ellipse at 70% 20%,#24463f18,transparent 65%),#0c1418; }
.auth-card { max-width:430px; padding:34px; border:1px solid #35494f; border-radius:16px; background:linear-gradient(145deg,#172329,#111b20 70%); box-shadow:0 30px 90px #0003,inset 0 1px 0 #ffffff04; }
.auth-card::before { left:34px; top:-1px; width:42px; height:2px; background:#a3e9ca; }
.auth-card-kicker { margin-bottom:23px; color:#9dbbb4; font-size:8px; letter-spacing:1px; }
.auth-card-kicker svg { width:12px; height:12px; }
.auth-card h2 { font-size:29px; font-weight:650; line-height:1.2; letter-spacing:-1.1px; }
.auth-card>p { color:#98adb4; font-size:12px; margin-top:11px; margin-bottom:28px; line-height:1.7; }
.auth-card .form-field { margin-bottom:18px; }
.auth-card .form-field label { font-size:11px; color:#c4d5d9; font-weight:500; margin-bottom:8px; }
.auth-card .form-field label small { font-size:8.5px; color:#819ba5; margin-left:5px; font-weight:400; }
.auth-card .form-field input { min-height:44px; background:#0d171c; border-color:#32474f; border-radius:7px; font-size:12px; padding:12px 13px; box-shadow:inset 0 1px 3px #0001; }
.auth-card .form-field input::placeholder { color:#748e99; }
.auth-card .form-field input:focus { border-color:#8bd6b4; box-shadow:0 0 0 3px #98efc510; }
.auth-card #auth-submit { min-height:45px; margin-top:6px; font-size:12px; font-weight:650; }
.auth-switch-row { color:#98aeb6; font-size:11px; gap:7px; margin-top:22px; }
.auth-switch-row .text-button { font-size:11px; color:#b4efcf; }
.auth-data-note { margin-top:25px; padding-top:20px; border-color:#2c4048; color:#8da5ad; font-size:9px; line-height:1.85; gap:9px; }
.auth-data-note svg { width:14px; height:14px; color:#9bbdb1; }
.auth-service-status { max-width:430px; margin-top:21px; font-size:9px; color:#91aaa9; gap:8px; line-height:1.6; }
.auth-service-status button { font-size:9px; color:#a9c6bf; }
.auth-preview-note { max-width:410px; margin-top:15px; color:#718d97; font-size:8px; line-height:1.8; text-align:center; }
/* Investigation workbench: quiet structure, evidence-led color. */
.sidebar { width:232px; padding:28px 18px 16px; background:#0b1317; border-color:#263940; }
.main-shell { margin-left:232px; width:calc(100% - 232px); background:#0b1216; }
.sidebar .brand { font-size:30px; margin-bottom:34px; }
.nav-label { font-size:8px; letter-spacing:1.45px; color:#6e8d98; }
.nav-item { font-size:12px; color:#91aab3; border-radius:8px; padding:11px 12px; min-height:43px; }
.nav-item:hover { color:#d5e7e6; background:#152228; }
.nav-item.active { color:#b1f0d4; background:#193229; border-color:#315344; }
.nav-item.active::before { left:-19px; top:13px; bottom:13px; border-radius:0 3px 3px 0; background:#98efc5; }
.nav-count,.tab-count { color:#b8edce; background:#2b4f3e; border:1px solid #3b6651; border-radius:5px; }
.case-switcher { margin:24px 0; padding:16px 12px; background:#111e23; border:1px solid #2b4149; border-radius:10px; }
.case-switcher .eyebrow { font-size:8px; color:#82a298; }
.case-button strong { font-size:12px; color:#d7e5e5; font-weight:600; }
.case-button small,.members-label { font-size:9px; color:#7c9ca6; }
.filter-check { font-size:11px; color:#9db2b9; min-height:29px; }
.filter-check:hover { color:#d6ece9; }
.filter-check input { border-color:#4c6972; border-radius:3px; }
.filter-check input:checked { background:#5f9e7b; border-color:#83cba3; }
.filter-number { font-size:10px; color:#708e99; }
.mode-card { background:#11251d; border-color:#2c4e3b; border-radius:9px; padding:12px 10px; }
.mode-card strong { font-size:10px; color:#bdd7c7; }
.mode-card small { font-size:9px; color:#7d9c8c; }
.mode-icon { color:#a1ddbb; }
.sidebar-help { font-size:11px; color:#91a9b0; }
.sidebar-footer { color:#6f8d97; font-size:9px; border-color:#283a42; }
.shortcut { background:#19292f; border-color:#3c545e; color:#9cb2b8; }
.topbar { height:72px; padding:0 30px; background:#0e181de8; border-color:#263940; backdrop-filter:blur(16px); }
.breadcrumb { font-size:11px; color:#849fa9; }
.breadcrumb strong { font-size:11px; color:#c7dadd; letter-spacing:0; }
.breadcrumb-icon { color:#8fb8a8; }
.global-search { width:300px; padding:7px 10px; gap:8px; border:1px solid #2d454e; border-radius:8px; background:#0c171c; }
.global-search input { font-size:11px; color:#c6d9de; }
.global-search input::placeholder { color:#7c97a2; }
.global-search svg { color:#7b9da9; }
.global-search kbd { font-family:var(--mono); border:1px solid #3a555f; color:#91abb5; background:#19292f; border-radius:4px; }
.avatar { background:#234238; color:#b7efd0; border-color:#416c58; border-radius:9px; }
.profile label>span { font-size:11px; color:#d0dfe2; }
.profile select { font-size:9px; color:#86a2ad; }
#main-content { padding:28px 30px 24px; }
.page-heading { gap:20px; margin-bottom:23px; }
.heading-kicker { gap:10px; margin-bottom:9px; }
.page-heading h1 { font-size:29px; line-height:1.2; font-weight:650; letter-spacing:-1px; color:#ecf5f3; }
.page-heading p { font-size:12px; line-height:1.7; color:#8ea7b1; margin-top:9px; }
.case-id { color:#8eabae; font-size:9px; }
.demo-banner { background:#11251e; border-color:#2c4b3b; color:#8dac9f; border-radius:8px; font-size:10px; padding:12px 15px; }
.demo-banner strong { color:#bbd8c7; }
.demo-banner>svg { color:#95c3a7; }
.demo-banner .text-button { font-size:10px; color:#a0cdb2; }
.stats-row { gap:13px; margin-block:20px 24px; }
.stat-card { padding:18px; gap:13px; background:linear-gradient(135deg,#142127,#101b20); border:1px solid #2a3e46; border-radius:11px; }
.stat-icon { width:34px; height:34px; border-radius:9px; color:#a4d8c0; background:#1c342c; border:1px solid #325547; }
.stat-icon svg { width:17px; height:17px; }
.stat-title { font-size:8.5px; letter-spacing:.15px; color:#9bb3bc; }
.stat-value { margin-top:5px; font-family:var(--display); font-size:27px; line-height:1.3; font-weight:600; letter-spacing:-1px; color:#e7f1ef; }
.stat-detail { margin-top:4px; color:#7796a2; font-size:9px; line-height:1.6; }
.workspace-layout { gap:19px; grid-template-columns:minmax(0,1fr) 286px; }
.workspace-tabs { background:transparent; border:0; border-bottom:1px solid #2b3f46; border-radius:0; gap:3px; padding:0 0 9px; margin-bottom:18px; overflow-x:auto; scrollbar-width:thin; }
.workspace-tab { font-size:11px; font-weight:500; color:#819eaa; border:1px solid transparent; border-radius:7px; padding:9px 10px; flex-shrink:0; }
.workspace-tab:hover { color:#c8e5de; background:#17272d; }
.workspace-tab.active { color:#b6efcf; background:#1a332a; border-color:#315844; }
.workspace-tab.active::after { display:none; }
.workspace-tab svg { width:14px; height:14px; }
.graph-toolbar { background:#131f24; border-color:#2b4048; height:58px; padding:0 16px; }
.graph-heading h3 { font-size:12px; color:#c6ded8; }
.graph-heading small { font-size:9px; color:#7d9ba6; }
.graph-heading .tiny-dot { width:5px; height:5px; border-radius:50%; }
.graph-canvas { background-color:#0c151a; background-image:radial-gradient(#78959e35 .7px,transparent .7px); background-size:22px 22px; min-height:370px; }
.graph-note { font-size:8px; color:#71909d; }
.graph-node .node-outline { filter:none; }
.graph-node:hover .node-outline { filter:drop-shadow(0 0 7px #98efc538); }
.graph-node.selected .node-outline { stroke:#b7f8d4!important; filter:drop-shadow(0 0 9px #98efc54d); }
.node-label { fill:#c6dde0; stroke:#0c151a; font-family:var(--font); font-size:10px; }
.node-sub { fill:#82a2ae; stroke:#0c151a; font-family:var(--mono); }
.edge-label { fill:#8daaa6; stroke:#0c151a; }
.graph-edge .edge-line { opacity:.72; }
.graph-edge:hover .edge-label,.graph-edge.selected .edge-label { fill:#ddf6ed; }
.graph-controls { background:#15242beb; border-color:#3a5662; border-radius:7px; box-shadow:0 8px 25px #0003; }
.graph-controls button { color:#a4c4d1; border-color:#2b4854; }
.graph-controls button:hover { background:#244037; color:#dcf9ed; }
.graph-footer { background:#101e24; border-color:#2a4049; }
.graph-legend>span { color:#92aeb7; font-size:8px; }
.relation-line { background:none; border-top-color:#79c6ab; }
.relation-line.similarity { border-top-color:#91b8ed; }
.relation-line.hypothesis { border-top-color:#b8a3e2; }
.relation-line.note,.relation-line.analyst { background:none; border-top-color:#dabb81; }
.auth-graph-legend .relation-line.hypothesis { border-top-color:#dabb81; }
.graph-help { color:#7c9da9; font-size:8px; }
.zoom-readout { color:#88aab5; font-family:var(--mono); }
.graph-empty { color:#8daab4; }
.graph-empty h3 { color:#d7e8e7; font-size:19px; letter-spacing:-.5px; }
.graph-empty p { color:#8ba7b1; font-size:12px; line-height:1.85; }
.graph-empty>svg { color:#719e8b; }
.inspector { background:#111e24; border-color:#304b53; }
.inspector-top { padding:16px 18px; border-color:#2c454e; color:#a8c3ca; background:#15242a; }
.inspector-top h3 { font-size:11px; font-weight:600; }
.inspector-body { padding:19px; color:#a1b7bf; }
.inspector-kicker { color:#89aab3; font-size:8px; }
.inspector h2 { color:#e0eceb; font-size:19px; line-height:1.35; }
.inspector-sub { color:#829fac; font-size:10px; }
.detail-section { border-color:#2a414a; padding-block:16px; }
.detail-section h4 { color:#7d9faa; font-size:8px; letter-spacing:.8px; margin-bottom:9px; }
.detail-copy { font-size:11px; line-height:1.8; color:#a1b8c0; }
.detail-row { color:#89a5b0; font-size:10px; }
.detail-row strong { color:#cadde0; font-weight:500; }
.hash-line { background:#0b171d; border-color:#2e4a55; color:#9ab7c2; font-size:9px; }
.inspector-empty { color:#88a7b2; }
.inspector-empty h3 { color:#d1e5e3; }
.inspector-empty>svg { color:#7ea994; }
.inspector-actions { background:#101f25; border-color:#2a454d; padding:16px 18px; }
.inspector-actions .button { font-size:10px; }
.view-panel { padding:23px; }
.view-heading h2 { font-size:22px; font-weight:600; letter-spacing:-.65px; }
.view-heading p { font-size:11px; color:#88a7b3; line-height:1.8; }
.finding-card,.case-card,.connector-card,.comment-card,.export-card,.comparison-card,.agent-card,.source-card,.evidence-card,.provenance-block,.record-summary,.activity-card { background:#142329; border-color:#2d4650; border-radius:10px; }
.connector-card:hover,.case-card:hover { background:#192b32; border-color:#52747a; }
.finding-card h3,.case-card h3,.connector-card h3 { color:#dbeae9; font-weight:600; }
.finding-card p,.connector-card p,.case-card p { font-size:11px; line-height:1.85; color:#8facb7; }
.connector-icon { color:#b0d7c8; background:#213c32; border-color:#3c6050; border-radius:9px; }
.category-tab { color:#90aeb8; font-size:11px; }
.category-tab.active { color:#bcebd6; }
.comment-text { color:#cbdde1; font-size:12px; line-height:1.8; }
.comment-author small,.comment-context { color:#7c9fac; font-size:10px; }
.comment-avatar { color:#b9e4d0; background:#244236; border-color:#3d6551; border-radius:9px; }
.comment-footer { gap:10px; }
.comment-footer .text-button { font-size:10px; }
.inline-notice { background:#14252b; border-color:#304d58; color:#a6bec7; border-radius:8px; font-size:11px; line-height:1.8; }
.inline-notice.teal { background:#142b23; border-color:#315542; color:#a8cdb9; }
.limitation-box { background:#302a20; border-color:#5a4930; color:#cbb58c; border-radius:7px; font-size:10px; line-height:1.8; }
.form-field label { color:#c0d5db; font-size:12px; }
.field-help { color:#88a7b3; font-size:10px; line-height:1.8; }
.form-error { color:#f0a7a7; font-size:11px; }
.check-line { color:#a4c0c8; font-size:11px; line-height:1.7; }
.check-line input { accent-color:var(--primary); }
.data-table th { font:8.5px var(--mono); color:#85a8b4; background:#13252c; border-color:#304d58; letter-spacing:.5px; }
.data-table td { font-size:11px; color:#b8d0d9; border-color:#233e49; }
.data-table tr:hover td { background:#1a3038; }
.table-entity-icon { background:#203e34; color:#a4d5be; border-radius:7px; }
.table-entity small { color:#789da9; }
.empty-state { color:#88aab7; padding:44px 25px; }
.empty-state h3 { color:#d6e8e7; font-size:17px; }
.empty-state p { font-size:11px; max-width:440px; margin-inline:auto; line-height:1.8; }
.activity-strip,.activity-strip-inner { background:#10241d; border-color:#2c503c; color:#8fbba2; }
.app-footer { padding-inline:30px; color:#668996; font-size:8px; border-color:#263d47; }
.app-footer .text-button { color:#86b0a4; font-size:9px; }
.modal-backdrop { background:#02090dc9; backdrop-filter:blur(7px); }
.modal { border:1px solid #3c5b67; background:#122129; border-radius:14px; box-shadow:0 30px 120px #0009; }
.modal-header { padding:23px 25px; border-color:#2e4a57; background:#172b33; }
.modal-header h2 { font-size:23px; }
.modal-header p { color:#93b0bb; font-size:11px; line-height:1.8; }
.modal-body { padding:23px 25px; }
.modal-copy { font-size:12px; color:#adc4ce; line-height:1.9; }
.modal-footer { padding:17px 25px; background:#102029; border-color:#2d4b58; }
.large-code { color:#a9c5d0; background:#0d1c24; border-color:#2f4d5c; border-radius:8px; }
.toast { background:#19362a; color:#c8ebd5; border:1px solid #467456; border-radius:10px; box-shadow:0 12px 35px #0005; font-size:12px; }
.toast.error { background:#352425; border-color:#775051; color:#f0bbbb; }
/* Broad, compact and touch layouts share the same component language. */
@media(min-width:1600px) {
  .auth-left { padding:44px 6vw 30px; }
  .auth-brand { margin-bottom:60px; }
  .auth-hero h1 { font-size:72px; }
  .auth-hero>p { font-size:14px; }
  .auth-graph>svg { max-height:255px; }
  .auth-card { max-width:450px; padding:38px; }
  .auth-service-status { max-width:450px; }
  .sidebar { width:248px; padding-inline:22px; }
  .main-shell { margin-left:248px; width:calc(100% - 248px); }
  #main-content { padding:32px 36px; }
  .workspace-layout { grid-template-columns:minmax(0,1fr) 310px; gap:22px; }
}
@media(min-width:761px) and (max-height:800px) {
  .auth-left { padding-top:27px; padding-bottom:20px; }
  .auth-brand { font-size:31px; margin-bottom:31px; height:auto; }
  .auth-brand .brand-symbol { width:39px; height:39px; }
  .auth-hero h1 { font-size:clamp(42px,4.1vw,58px); margin-bottom:17px; }
  .auth-eyebrow { margin-bottom:16px; }
  .auth-hero>p { font-size:12px; line-height:1.75; }
  .auth-graph { margin-top:24px; }
  .auth-graph>svg { max-height:180px; padding-top:9px; }
  .auth-graph-top,.auth-graph-legend { padding-block:10px; }
  .auth-principles { margin-top:18px; }
  .auth-principles>div { padding-top:11px; }
  .auth-principles>div>span { width:23px; height:23px; margin-bottom:7px; }
  .auth-bottom { margin-top:25px; padding-top:14px; }
  .auth-right { padding-block:30px; }
  .auth-card { padding:28px 30px; }
  .auth-card h2 { font-size:27px; }
  .auth-card-kicker { margin-bottom:19px; }
  .auth-card>p { margin-bottom:22px; }
  .auth-card .form-field { margin-bottom:15px; }
  .auth-data-note { margin-top:21px; padding-top:17px; }
}
@media(max-width:1250px) and (min-width:761px) {
  .sidebar { width:212px; padding-inline:14px; }
  .main-shell { margin-left:212px; width:calc(100% - 212px); }
  .sidebar .brand { font-size:27px; }
  .sidebar .brand-symbol { width:32px; height:32px; }
  .sidebar .brand small { font-size:5.8px; }
  .topbar { padding-inline:24px; }
  .global-search { width:240px; }
  #main-content { padding-inline:24px; }
  .workspace-layout { grid-template-columns:minmax(0,1fr) 258px; gap:16px; }
  .workspace-tab { padding:8px; font-size:10px; }
  .stat-card { padding:15px; gap:10px; }
  .stat-icon { width:29px; height:29px; }
  .stat-title { font-size:8px; }
  .stat-detail { font-size:8px; }
}
@media(max-width:1100px) and (min-width:761px) {
  .auth-screen { grid-template-columns:minmax(0,1.05fr) minmax(350px,.95fr); }
  .auth-left { padding-inline:30px; }
  .auth-right { padding-inline:28px; }
  .auth-hero h1 { font-size:46px; }
  .auth-graph-top>span:last-child { font-size:5.5px; letter-spacing:0; }
  .auth-graph-legend { font-size:6.5px; gap:12px; }
  .auth-principles { gap:12px; }
  .auth-principles strong { font-size:9px; }
  .auth-principles small { font-size:8px; }
  .auth-card { padding:28px; }
  .auth-card h2 { font-size:26px; }
}
@media(max-width:1050px) {
  .workspace-layout { grid-template-columns:minmax(0,1fr); }
  .inspector.visible { background:#13252d; border-color:#4d7581; box-shadow:0 24px 100px #000a; }
  .topbar-right { gap:12px; }
}
@media(max-width:760px) {
  body { font-size:13px; }
  .auth-screen { grid-template-columns:1fr; }
  .auth-left { padding:26px 24px 25px; border-right:0; border-bottom:1px solid #2d424a; }
  .auth-brand { font-size:31px; margin-bottom:34px; }
  .auth-brand .brand-symbol { width:39px; height:39px; }
  .auth-brand .version { font-size:8px; }
  .auth-eyebrow { font-size:7px; letter-spacing:.75px; margin-bottom:17px; }
  .auth-hero h1 { font-size:44px; line-height:1.1; letter-spacing:-2px; margin-bottom:18px; }
  .auth-hero>p { font-size:12px; line-height:1.85; }
  .auth-graph { margin-top:24px; }
  .auth-graph>svg { max-height:190px; padding-inline:9px; }
  .auth-graph-top { font-size:6px; padding:10px 12px; }
  .auth-graph-legend { font-size:6.5px; gap:13px; padding:10px 12px; }
  .auth-principles { gap:12px; margin-top:20px; }
  .auth-principles strong { font-size:9px; }
  .auth-principles small { font-size:8px; }
  .auth-bottom { display:none; }
  .auth-right { padding:28px 22px 38px; }
  .auth-card { padding:27px; max-width:540px; border-radius:14px; }
  .auth-card h2 { font-size:28px; }
  .auth-card>p { font-size:12px; }
  .auth-card .form-field label { font-size:12px; }
  .auth-card .form-field input { font-size:16px; min-height:46px; }
  .auth-card #auth-submit { min-height:46px; font-size:13px; }
  .auth-data-note { font-size:10px; }
  .auth-service-status { max-width:540px; font-size:9px; }
  .auth-preview-note { font-size:8px; }
  .sidebar { width:235px; background:#0e1b21; }
  .main-shell { width:100%; margin:0; }
  .topbar { height:64px; padding-inline:16px; }
  .topbar-left { gap:7px; min-width:0; }
  .breadcrumb { font-size:10px; }
  .breadcrumb strong { font-size:10px; }
  .breadcrumb span { margin-inline:6px; }
  .profile { gap:0; }
  #main-content { padding:23px 16px; }
  .page-heading h1 { font-size:26px; }
  .page-heading p { font-size:11px; }
  .heading-actions .button { font-size:11px; min-height:39px; padding:9px 12px; }
  .demo-banner { padding:11px 12px; font-size:9px; }
  .demo-banner .text-button { font-size:9px; }
  .stats-row { gap:10px; margin-block:18px 21px; }
  .stat-card { padding:14px 12px; gap:10px; }
  .stat-value { font-size:25px; }
  .stat-title { font-size:8px; }
  .stat-detail { font-size:8px; }
  .workspace-tabs { padding-bottom:8px; margin-bottom:15px; gap:3px; }
  .workspace-tab { font-size:10px; padding:8px 10px; }
  .graph-toolbar { padding:11px 12px; height:auto; min-height:58px; gap:10px; }
  .graph-heading h3 { font-size:11px; }
  .graph-heading small { display:none; }
  .graph-actions .button { font-size:9px; padding-inline:8px; }
  .graph-actions { gap:2px; }
  .graph-actions .icon-button { width:25px; }
  .graph-canvas { min-height:330px; }
  .graph-note { font-size:7px; }
  .graph-legend { gap:9px 13px; flex-wrap:wrap; }
  .graph-legend>span { font-size:7px; }
  .graph-help { font-size:7px; }
  .view-panel { padding:19px 16px; }
  .view-heading h2 { font-size:21px; }
  .view-heading p { font-size:11px; }
  .modal { border-radius:12px; }
  .modal-header,.modal-body { padding:21px; }
  .modal-header h2 { font-size:22px; }
  .modal-footer { padding:16px 21px; }
  .modal input:not([type=checkbox]),.modal textarea,.modal select { font-size:16px; }
  .app-footer { padding-inline:16px; font-size:8px; }
}
@media(max-width:520px) {
  .auth-left { padding:23px 22px 24px; }
  .auth-brand { margin-bottom:30px; }
  .auth-hero h1 { font-size:40px; }
  .auth-graph,.auth-principles { display:none; }
  .auth-right { padding:25px 18px 34px; }
  .auth-card { padding:25px 22px; }
  .auth-card::before { left:22px; }
  .auth-card-kicker { font-size:7.5px; letter-spacing:.6px; }
  .auth-card h2 { font-size:27px; }
  .auth-service-status { flex-wrap:wrap; row-gap:7px; padding-inline:3px; }
  .auth-service-status button { margin-left:auto; }
  .auth-preview-note { padding-inline:8px; }
  .heading-kicker { flex-wrap:wrap; gap:7px; }
  .heading-kicker .badge { font-size:7.5px; }
  .stat-card { align-items:flex-start; }
  .stat-icon { width:27px; height:27px; }
  .stat-icon svg { width:14px; height:14px; }
  .stat-title { font-size:7.5px; }
  .stat-detail { font-size:8px; }
  .graph-heading .tiny-dot { display:none; }
  .graph-actions .icon-button { width:23px; }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

.auth-demo-link{display:flex;flex-direction:column;align-items:center;gap:5px;margin:12px 0 4px;text-align:center;font-size:13px}.auth-demo-link a{color:#a7e3b5;text-decoration:underline;text-underline-offset:3px}.auth-demo-link small{color:#9eb6a6;font-size:11px}
