/* DocuLens workspace v2.7.233. Visual layer; no runtime dependencies. */
:root {
  --bg: #080f1c;
  --bg-raised: #101c2d;
  --bg-panel: #152338;
  --bg-input: #0b1626;
  --bg-hover: #1c3048;
  --border: #2b4059;
  --border-hover: #4c718d;
  --text: #f0f5fc;
  --text-muted: #b0bfd1;
  --text-faint: #94a8c0;
  --accent: #6ee7d4;
  --accent-2: #72b6ff;
  --text-on-accent: #07231f;
  --font-heading: 'Segoe UI', Arial, sans-serif;
  --font-body: 'Segoe UI', Arial, sans-serif;
}
body { background: radial-gradient(ellipse at 85% 0%, #17304a55, transparent 48%), var(--bg); }
button, input, select, textarea { font-family: inherit; }
.sidebar { background: #0c1726; border-right: 1px solid #24364b; }
.sidebar::after { display: none; }
.brand { gap: 12px; }
.brand-name { font-size: 1.22rem; letter-spacing: -.035em; }
.brand-mark { width: 36px; height: 36px; }
.nav-group-label { color: #93a6bf; font-size: .65rem; letter-spacing: .14em; padding-top: 24px; }
.nav-item { min-height: 44px; font-size: .9rem; line-height: 1.4; padding: 11px 12px; transition: background-color .18s, color .18s; }
.nav-item:hover { padding-left: 12px; background: #1a2b40; }
.nav-item.active { color: #b0ffef; background: #173b40; box-shadow: inset 3px 0 0 var(--accent); }
.nav-icon { width: 17px; height: 17px; margin-right: 8px; vertical-align: -3px; color: var(--accent); }
.keyboard-nav-hint { background: #122236; border-color: #2a4059; }
.keyboard-nav-hint small { font-size: .65rem; line-height: 1.5; }
.sidebar-version strong { color: var(--accent); }
.content { padding: 40px clamp(24px, 3vw, 64px) 70px; }
.tab-header { margin-bottom: 26px; }
.tab-header h2 { font-size: clamp(1.85rem, 3vw, 2.5rem); letter-spacing: -.045em; font-weight: 650; }
.tab-header p { font-size: .95rem; color: var(--text-muted); max-width: 780px; line-height: 1.65; }
.panel { background: linear-gradient(135deg, #152338, #101c2c); border-color: #2b4059; border-radius: 16px; box-shadow: 0 14px 34px #00000016; }
.panel input:not([type="checkbox"]):not([type="radio"]), .panel select, .panel textarea { border-radius: 8px; border-color: #38516c; color: var(--text); }
.panel input::placeholder, .panel textarea::placeholder { color: #98abc2; opacity: 1; }
.run-btn { background: linear-gradient(120deg, #6ee7d4, #8ce8ec); color: #082923; border: 1px solid #a3f5e5; border-radius: 9px; min-height: 46px; font-weight: 700; box-shadow: 0 4px 14px #6ee7d414; transition: transform .18s, box-shadow .18s, background-color .18s; }
.run-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 22px #6ee7d424; background: #a3f5e5; }
.run-btn:disabled { transform: none; box-shadow: none; }
.run-btn.secondary { color: #d6e6f7; background: #182c43; border-color: #3a536d; box-shadow: none; }
.run-btn.secondary:hover { background: #233d58; }
.intro-layout { min-height: auto; padding: 52px 0 60px; grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr); gap: 48px; max-width: 1500px; }
.intro-layout::after { display: none; }
.intro-hero { padding: 0; }
.intro-hero::before { display: none; }
.intro-mark { display: none; }
.intro-kicker { opacity: 1; animation: none; color: #b9cbe0; font-size: .7rem; letter-spacing: .12em; margin-bottom: 28px; }
.intro-kicker span:first-child { color: var(--accent); border: 1px solid #38615f; background: #123333; padding: 7px 10px; border-radius: 6px; }
.intro-overline { opacity: 1; animation: none; font-size: .7rem; color: #9eb5d0; letter-spacing: .13em; margin-bottom: 18px; }
.intro-hero h1 { font-size: clamp(3rem, 4.4vw, 5.15rem); line-height: 1.06; letter-spacing: -.055em; font-weight: 650; max-width: 800px; }
.intro-hero h1 span { color: var(--accent); }
.intro-tagline { font-size: 1.15rem; color: #dce8f5; line-height: 1.55; margin-top: 24px; }
.intro-sub { font-size: .98rem; color: #aebed2; max-width: 600px; line-height: 1.75; }
.intro-actions { gap: 12px; margin-top: 28px; }
.intro-actions .run-btn { font-size: .9rem; padding: 14px 20px; }
.intro-help-link { font-size: .86rem; color: #c2d0e1; min-height: 44px; }
.intro-proof { animation: none; opacity: 1; max-width: 650px; margin-top: 28px; }
.intro-proof span { font-size: .86rem; padding-top: 17px; padding-bottom: 17px; }
.intro-proof b { font-size: .68rem; }
.intro-credit { font-size: .8rem; color: #a2b5cd; }
.intro-signal-board { opacity: 1; animation: none; width: 100%; max-width: none; padding: 26px; border: 1px solid #34516d; border-radius: 22px; background: radial-gradient(ellipse at 90% 0%, #1d536d55, transparent 65%), #101e30; box-shadow: 0 32px 80px #00000028; }
.intro-signal-board::before { display: none; }
.intro-board-top { color: #b0c3da; font-size: .68rem; letter-spacing: .12em; }
.intro-board-kicker { margin-top: 22px; font-size: .65rem; }
.intro-signal-board h2 { font-size: 2rem; line-height: 1.1; margin-bottom: 20px; letter-spacing: -.04em; }
.intro-flow-step strong { font-size: .75rem; }
.intro-flow-step small { font-size: .82rem; color: #b0c3da; }
.intro-flow-number { border-radius: 10px; border-color: #497b82; background: #15343d; }
.intro-flow-line { height: 18px; }
.intro-board-footer { font-size: .65rem; color: #b0c3da; }
.evidence-map { width: 100%; height: auto; display: block; margin: 20px 0 26px; overflow: visible; }
.evidence-map text { font: 12px 'Segoe UI', Arial, sans-serif; fill: #d9e8f7; }
.evidence-map .map-caption { font-size: 10px; fill: #a7bfd6; letter-spacing: 1.5px; }
.evidence-map .map-path { stroke-dasharray: 7 5; animation: studio-connect .65s ease-out both; }
.evidence-map .map-node { transform-box: fill-box; transform-origin: center; animation: studio-node .5s ease-out both; }
.evidence-map .map-node:nth-of-type(2) { animation-delay: .08s; }
.evidence-map .map-node:nth-of-type(3) { animation-delay: .16s; }
@keyframes studio-node { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@keyframes studio-connect { from { opacity: 0; stroke-dashoffset: 30; } to { opacity: 1; stroke-dashoffset: 0; } }
.intro-seo { border-top: 1px solid #2b4059; padding-top: 38px; }
.intro-seo-heading h2 { letter-spacing: -.035em; }
.intro-seo-heading p, .intro-seo-card p, .intro-seo-bottom p { font-size: .9rem; line-height: 1.7; color: #b3c3d6; }
.intro-seo-card { background: #112034; border-color: #304963; border-radius: 14px; transition: transform .2s, border-color .2s; }
.intro-seo-card:hover { transform: translateY(-3px); border-color: #6ee7d4; }
.intro-seo-card-label, .intro-seo-kicker { color: #91e5d7; }
.workspace-eyebrow { color: var(--accent); font-size: .7rem; font-weight: 700; letter-spacing: .16em; margin: 0 0 12px; }
.research-journey { display: flex; gap: 24px; flex-wrap: wrap; margin-top: 22px; color: #b0c3da; font-size: .85rem; }
.research-journey span { display: inline-flex; align-items: center; gap: 9px; }
.research-journey b { display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid #39576f; border-radius: 8px; color: var(--accent); font-size: .65rem; }
.cr-settings-button { color: #cce0f5; border-color: #38516c; border-radius: 8px; min-height: 40px; }
.cr-setup-panel { border-radius: 18px; background: linear-gradient(130deg, #182b40, #101c2d); border-color: #35516b; }
.cr-setup-fields { padding: 26px; gap: 16px; }
.cr-setup-fields label { color: #c3d2e4; font-size: .72rem; letter-spacing: .08em; }
.cr-setup-fields input { font-size: .95rem; font-weight: 400; padding: 13px; min-height: 46px; }
.cr-setup-fields input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px #6ee7d41a; }
.cr-setup-panel .source-details { border-color: #35516b; border-radius: 12px; }
.cr-setup-panel .source-details summary { min-height: 64px; }
.cr-setup-panel .source-details summary span { font-family: var(--font-body); }
.cr-setup-actions { padding: 20px 26px; border-top: 1px solid #35516b; background: #0b172580; gap: 12px; }
.cr-setup-actions .checkbox-label { font-size: .78rem; line-height: 1.5; border-radius: 10px; border-color: #35516b; }
.cr-setup-actions .checkbox-label:has(input:checked) { border-color: #559e9c; background: #173b4055; box-shadow: none; }
.cr-setup-actions .run-btn { font-size: .88rem; min-height: 48px; }
.cr-setup-actions > #client-compute-status { font-size: .76rem; color: #b5c8de; }
.report-frame { border-color: #3b5871; border-radius: 14px; }
@media (min-width: 821px) { .sidebar { width: 240px; flex: 0 0 240px; padding: 24px 16px; } }
@media (max-width: 1200px) { .intro-layout { grid-template-columns: minmax(0, 1fr) minmax(320px, .82fr); gap: 28px; } .cr-setup-actions { grid-template-columns: 1fr 1fr; } .cr-setup-actions .run-btn { grid-column: 2; grid-row: auto; } .cr-setup-actions > #client-compute-status { grid-column: 1; grid-row: auto; } }
@media (max-width: 1000px) { .intro-layout { grid-template-columns: 1fr; padding-top: 24px; } .intro-signal-board { max-width: 680px; } .intro-hero h1 { font-size: clamp(2.8rem, 6vw, 4.8rem); } }
@media (max-width: 820px) { .content { padding: 26px 20px 50px; } .sidebar { background: #0c1726; } .intro-layout { gap: 32px; } .intro-signal-board { padding: 24px; } .cr-setup-fields { padding: 20px; } }
@media (max-width: 700px) { .cr-setup-actions { grid-template-columns: 1fr; padding: 18px; } .cr-setup-actions .run-btn, .cr-setup-actions > #client-compute-status { grid-column: 1; grid-row: auto; } .research-journey { gap: 12px; font-size: .76rem; } .cr-settings-button { margin: 0 0 16px; } }
@media (max-width: 560px) { .content { padding: 24px 16px 44px; } .intro-hero h1 { font-size: 2.85rem; } .intro-kicker { font-size: .61rem; gap: 7px; } .intro-kicker i { width: 14px; } .intro-sub { font-size: .94rem; } .intro-actions .run-btn { width: 100%; } .intro-proof { grid-template-columns: 1fr; } .intro-proof span + span { padding-left: 0; border-left: 0; } .intro-signal-board { padding: 20px; } .intro-board-top { font-size: .6rem; } .cr-setup-fields input { font-size: 1rem; } }
@media (prefers-reduced-motion: reduce) { .evidence-map .map-node, .evidence-map .map-path { animation: none; } .run-btn, .intro-seo-card { transition: none; } .run-btn:hover, .intro-seo-card:hover { transform: none; } }
