:root {
  --ink: #eef3f7;
  --ink-strong: #fbfcfd;
  --muted: #9caab4;
  --dim: #687984;
  --line: rgba(198, 214, 222, .14);
  --line-strong: rgba(198, 214, 222, .26);
  --base: #0a1014;
  --base-soft: #111a1f;
  --surface: rgba(17, 26, 31, .86);
  --surface-solid: #131e23;
  --surface-raised: #18262b;
  --surface-dark: #0d1519;
  --blue: #7aa7ff;
  --blue-strong: #4d83ed;
  --teal: #63d7bf;
  --amber: #e5b86b;
  --coral: #f38b82;
  --shadow: 0 24px 80px rgba(0, 0, 0, .28);
  --radius: 12px;
  --mono: "DM Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  --sans: "Manrope", "Noto Sans SC", system-ui, sans-serif;
}

* { box-sizing: border-box; }
html { background: var(--base); }
body { margin: 0; min-width: 320px; color: var(--ink); background: var(--base); font-family: var(--sans); font-size: 14px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
button, input, select { font: inherit; }
button { color: inherit; cursor: pointer; }
button:focus-visible, input:focus-visible, select:focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; }
button, input { border: 0; }
h1, h2, h3, p { margin: 0; }
h1, h2, h3, strong { letter-spacing: -.025em; }
h1 { font-size: 78px; line-height: .98; font-weight: 700; }
h2 { font-size: 38px; line-height: 1.08; font-weight: 700; }
h3 { font-size: 16px; line-height: 1.25; font-weight: 700; }
em { color: var(--teal); font-style: normal; }

body.theme-light { --ink: #172126; --ink-strong: #0d171b; --muted: #617079; --dim: #8b9ba3; --line: rgba(36, 60, 70, .15); --line-strong: rgba(36, 60, 70, .3); --base: #eef3f0; --base-soft: #f6f8f5; --surface: rgba(255, 255, 255, .8); --surface-solid: #fff; --surface-raised: #f3f7f3; --surface-dark: #e6eeea; --shadow: 0 20px 60px rgba(28, 54, 53, .12); }

#signal-canvas { position: fixed; z-index: 0; inset: 0; width: 100%; height: 100%; opacity: .7; pointer-events: none; }
.noise-layer { position: fixed; z-index: 1; inset: 0; pointer-events: none; opacity: .045; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E"); }
.site-shell { position: relative; z-index: 2; min-height: 100vh; overflow: hidden; }
.topbar { position: sticky; z-index: 20; top: 0; display: flex; align-items: center; justify-content: space-between; gap: 24px; width: 100%; max-width: 1440px; height: 78px; margin: 0 auto; padding: 0 52px; border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--base) 82%, transparent); backdrop-filter: blur(20px); }
.brand { display: inline-flex; align-items: center; gap: 10px; padding: 0; background: transparent; }
.brand-mark { display: inline-flex; align-items: flex-end; gap: 3px; width: 28px; height: 28px; padding: 5px 4px; border: 1px solid rgba(99, 215, 191, .46); border-radius: 8px; background: rgba(99, 215, 191, .08); }
.brand-mark span { display: block; width: 4px; border-radius: 4px 4px 1px 1px; background: var(--teal); }
.brand-mark span:nth-child(1) { height: 37%; opacity: .6; }.brand-mark span:nth-child(2) { height: 70%; }.brand-mark span:nth-child(3) { height: 100%; opacity: .78; }
.brand-name { color: var(--ink-strong); font-size: 17px; font-weight: 800; letter-spacing: -.06em; }.brand-name span { color: var(--teal); }
.main-nav { display: flex; align-items: center; gap: 28px; margin-left: auto; }
.nav-link { position: relative; padding: 7px 0; color: var(--muted); background: transparent; font-size: 12px; font-weight: 700; letter-spacing: .02em; }
.nav-link::after { position: absolute; right: 0; bottom: 0; left: 0; height: 1px; background: var(--teal); content: ""; opacity: 0; transform: scaleX(.3); transition: .2s ease; }.nav-link:hover, .nav-link.is-active { color: var(--ink-strong); }.nav-link.is-active::after { opacity: 1; transform: scaleX(1); }
.top-actions { display: flex; align-items: center; gap: 14px; }.icon-button { display: inline-grid; place-items: center; width: 34px; height: 34px; padding: 0; border: 1px solid var(--line); border-radius: 9px; color: var(--muted); background: transparent; }.icon-button:hover { border-color: var(--line-strong); color: var(--ink-strong); background: rgba(255,255,255,.04); }.icon-button svg { width: 16px; height: 16px; }
.mobile-menu { display: none; }
.text-button { display: inline-flex; align-items: center; gap: 8px; padding: 7px 0; color: var(--ink); background: transparent; font-size: 13px; font-weight: 700; }.text-button:hover { color: var(--teal); }.text-button.muted { color: var(--muted); }.text-button.small { font-size: 11px; }.text-button svg { width: 14px; height: 14px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 42px; padding: 0 17px; border: 1px solid var(--line-strong); border-radius: 9px; color: var(--ink-strong); background: var(--surface-raised); font-size: 12px; font-weight: 800; letter-spacing: -.01em; transition: transform .18s ease, border-color .18s ease, background .18s ease; }.button:hover { border-color: rgba(99,215,191,.6); background: #1d302f; transform: translateY(-1px); }.button svg { width: 15px; height: 15px; }.button-small { min-height: 34px; padding: 0 12px; font-size: 11px; }.button-primary { border-color: rgba(99,215,191,.36); color: #07110f; background: var(--teal); }.button-primary:hover { background: #83ead4; }.button-outline { color: var(--ink); background: transparent; }.button-dark { border-color: transparent; color: #f8fbfb; background: #1d2d32; }
.section-wrap { width: min(1180px, calc(100% - 64px)); margin-right: auto; margin-left: auto; }
.page { display: none; }.page.is-active { display: block; }
.section-kicker, .eyebrow, .micro-label { color: var(--amber); font-family: var(--mono); font-size: 10px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; }.eyebrow { display: flex; align-items: center; gap: 9px; color: var(--teal); font-size: 11px; }.signal-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--teal); box-shadow: 0 0 0 4px rgba(99,215,191,.12); }
.hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(450px, 1fr); align-items: center; gap: 74px; min-height: 610px; padding-top: 76px; padding-bottom: 70px; }.hero-copy { max-width: 510px; }.hero h1 { margin-top: 20px; }.hero-lede { max-width: 438px; margin-top: 26px; color: var(--muted); font-size: 16px; line-height: 1.8; }.hero-actions { display: flex; align-items: center; gap: 23px; margin-top: 34px; }.hero-proof { display: flex; gap: 32px; margin-top: 58px; }.hero-proof div { display: grid; gap: 4px; }.hero-proof strong { color: var(--ink-strong); font-family: var(--mono); font-size: 19px; font-weight: 500; }.hero-proof span { color: var(--dim); font-size: 10px; }
.hero-visual { position: relative; min-height: 430px; padding: 18px; border: 1px solid var(--line-strong); border-radius: 18px; overflow: hidden; background: rgba(16, 26, 31, .7); box-shadow: var(--shadow); }.visual-topline { position: relative; z-index: 3; display: flex; align-items: center; justify-content: space-between; color: var(--dim); font-family: var(--mono); font-size: 9px; letter-spacing: .12em; }.visual-image { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(9,15,18,.18) 0%, rgba(9,15,18,.86) 83%), url("https://images.unsplash.com/photo-1551288049-bebda4e38f71?auto=format&fit=crop&w=1200&q=82") center/cover; filter: saturate(.62) contrast(1.08); opacity: .64; }.visual-image::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,16,20,.5), transparent 54%, rgba(10,16,20,.23)); content: ""; }
.status-chip, .neutral-chip, .demo-badge, .run-status { display: inline-flex; align-items: center; gap: 7px; width: fit-content; padding: 5px 8px; border: 1px solid var(--line); border-radius: 6px; color: var(--muted); background: rgba(9,16,20,.68); font-family: var(--mono); font-size: 9px; letter-spacing: .04em; }.status-pulse, .demo-badge span, .run-status span { width: 6px; height: 6px; border-radius: 50%; background: var(--teal); box-shadow: 0 0 0 3px rgba(99,215,191,.13); }.visual-ui { position: absolute; z-index: 2; right: 34px; bottom: 37px; left: 34px; padding: 20px; border: 1px solid rgba(214,237,231,.25); border-radius: 12px; background: rgba(10, 19, 22, .83); box-shadow: 0 14px 38px rgba(0,0,0,.25); backdrop-filter: blur(8px); }.visual-ui-head, .visual-ui-foot { display: flex; align-items: flex-start; justify-content: space-between; }.visual-ui-head strong { display: block; margin-top: 7px; font-family: var(--mono); font-size: 31px; font-weight: 500; }.delta { font-family: var(--mono); font-size: 10px; }.positive { color: var(--teal); }.sparkline { display: flex; align-items: flex-end; gap: 6px; height: 86px; margin-top: 19px; padding-top: 16px; border-top: 1px solid var(--line); }.sparkline span { flex: 1; min-width: 4px; border-radius: 3px 3px 0 0; background: linear-gradient(180deg, var(--teal), rgba(99,215,191,.22)); opacity: .85; }.visual-ui-foot { margin-top: 8px; color: var(--dim); font-family: var(--mono); font-size: 9px; }.visual-callout { position: absolute; z-index: 4; right: -6px; padding: 10px 13px; border: 1px solid var(--line-strong); border-radius: 8px; background: rgba(11, 19, 23, .86); box-shadow: 0 15px 32px rgba(0,0,0,.2); }.visual-callout small { display: block; color: var(--amber); font-family: var(--mono); font-size: 9px; }.visual-callout strong { display: block; margin-top: 4px; color: var(--ink-strong); font-size: 11px; line-height: 1.35; }.callout-a { top: 135px; }.callout-b { bottom: 142px; left: -10px; right: auto; }.callout-line { position: absolute; right: 100%; top: 50%; width: 35px; height: 1px; background: var(--amber); opacity: .6; }.callout-b .callout-line { left: 100%; right: auto; }
.trusted-strip { display: flex; align-items: center; justify-content: space-between; min-height: 71px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--dim); font-family: var(--mono); font-size: 9px; letter-spacing: .13em; }.trusted-lines { display: flex; gap: 31px; color: var(--muted); font-family: var(--sans); font-size: 12px; font-weight: 700; letter-spacing: 0; }.trusted-lines span:nth-child(2), .trusted-lines span:nth-child(4) { color: var(--teal); }
.intro-band { padding: 118px 0 59px; }.intro-grid { display: grid; grid-template-columns: minmax(390px, .9fr) minmax(320px, .8fr); gap: 90px; margin-top: 20px; }.intro-grid h2 { font-size: 47px; }.intro-grid h2 span, .workflow-copy h2 span { color: var(--muted); }.intro-grid p { max-width: 420px; margin-top: 11px; color: var(--muted); font-size: 15px; line-height: 1.8; }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }.feature-panel { min-height: 245px; padding: 25px; border: 1px solid var(--line); border-radius: var(--radius); background: rgba(17,26,31,.72); }.feature-panel-accent { border-color: rgba(99,215,191,.31); background: rgba(21, 39, 40, .7); }.feature-index { color: var(--dim); font-family: var(--mono); font-size: 10px; }.feature-panel > svg { width: 21px; height: 21px; margin-top: 35px; color: var(--teal); }.feature-panel h3 { margin-top: 17px; font-size: 18px; }.feature-panel p { min-height: 49px; margin-top: 9px; color: var(--muted); font-size: 12px; line-height: 1.6; }.inline-link { display: inline-flex; align-items: center; gap: 7px; padding: 0; color: var(--teal); background: transparent; font-size: 11px; font-weight: 700; }.inline-link svg { width: 13px; height: 13px; }
.workflow-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; align-items: center; margin-top: 122px; padding: 66px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.workflow-copy h2 { margin-top: 16px; font-size: 44px; }.workflow-copy p { max-width: 385px; margin-top: 18px; color: var(--muted); line-height: 1.75; }.workflow-copy .button { margin-top: 27px; }.workflow-map { position: relative; display: flex; align-items: center; justify-content: space-between; min-height: 178px; }.map-line { position: absolute; top: 50%; right: 8%; left: 8%; height: 1px; background: linear-gradient(90deg, var(--teal), rgba(99,215,191,.2), var(--amber)); opacity: .5; }.flow-node { position: relative; z-index: 1; display: grid; justify-items: center; gap: 8px; width: 105px; color: var(--muted); }.flow-node span { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--line-strong); border-radius: 50%; color: var(--dim); background: var(--base); font-family: var(--mono); font-size: 10px; }.flow-node.active span { border-color: var(--teal); color: var(--base); background: var(--teal); }.flow-node strong { color: var(--ink-strong); font-size: 12px; }.flow-node small { color: var(--dim); font-family: var(--mono); font-size: 9px; }.quote-band { display: grid; justify-items: center; padding: 113px 0 125px; text-align: center; }.quote-mark { color: var(--amber); font-family: Georgia, serif; font-size: 68px; line-height: .5; }.quote-band blockquote { margin-top: 20px; color: var(--ink-strong); font-size: 39px; font-weight: 600; line-height: 1.18; letter-spacing: -.04em; }.quote-caption { margin-top: 23px; color: var(--dim); font-family: var(--mono); font-size: 9px; letter-spacing: .14em; }
.site-footer { display: flex; justify-content: space-between; width: min(1180px, calc(100% - 64px)); margin: auto; padding: 22px 0 36px; border-top: 1px solid var(--line); color: var(--dim); font-family: var(--mono); font-size: 9px; letter-spacing: .04em; }

/* Workspace shell */
.app-layout { display: grid; grid-template-columns: 232px minmax(0, 1fr); min-height: calc(100vh - 78px); }.app-sidebar { display: flex; flex-direction: column; min-width: 0; padding: 28px 16px 19px; border-right: 1px solid var(--line); background: rgba(11, 18, 22, .78); }.workspace-switcher { display: flex; align-items: center; gap: 9px; min-width: 0; padding: 8px 7px 26px; }.workspace-switcher > div { min-width: 0; flex: 1; }.workspace-switcher strong, .workspace-switcher span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.workspace-switcher strong { color: var(--ink-strong); font-size: 12px; }.workspace-switcher span { margin-top: 3px; color: var(--dim); font-size: 10px; }.workspace-switcher > svg { width: 14px; color: var(--dim); }.workspace-avatar { display: grid; place-items: center; width: 29px; height: 29px; border: 1px solid rgba(99,215,191,.4); border-radius: 8px; color: var(--teal); background: rgba(99,215,191,.1); font-family: var(--mono); font-size: 10px; font-weight: 500; }.workspace-avatar-admin { border-color: rgba(229,184,107,.4); color: var(--amber); background: rgba(229,184,107,.1); }.side-caption { padding: 0 9px 10px; color: var(--dim); font-family: var(--mono); font-size: 9px; letter-spacing: .13em; }.side-caption-later { margin-top: 34px; }.side-nav { display: grid; gap: 4px; }.side-nav-link { display: flex; align-items: center; gap: 11px; width: 100%; min-height: 35px; padding: 0 9px; border: 1px solid transparent; border-radius: 8px; color: var(--muted); background: transparent; text-align: left; font-size: 12px; }.side-nav-link:hover, .side-nav-link.is-active { border-color: var(--line); color: var(--ink-strong); background: rgba(255,255,255,.04); }.side-nav-link.is-active { color: var(--teal); }.side-nav-link svg { width: 15px; height: 15px; }.side-nav-link span { margin-left: auto; color: var(--dim); font-family: var(--mono); font-size: 9px; }.sidebar-footer { display: flex; align-items: center; gap: 9px; margin-top: auto; padding: 17px 8px 0; border-top: 1px solid var(--line); }.sidebar-footer > div { min-width: 0; flex: 1; }.sidebar-footer strong, .sidebar-footer span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.sidebar-footer strong { color: var(--ink-strong); font-size: 11px; }.sidebar-footer span { margin-top: 2px; color: var(--dim); font-size: 9px; }.avatar { display: inline-grid; place-items: center; flex: 0 0 auto; width: 28px; height: 28px; border-radius: 50%; font-family: var(--mono); font-size: 9px; font-weight: 500; }.avatar-warm { color: #251a0d; background: var(--amber); }.avatar-blue { color: #101b34; background: var(--blue); }.avatar-green { color: #102620; background: var(--teal); }.app-content { min-width: 0; background: rgba(9, 15, 19, .55); }.app-topbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; height: 64px; padding: 0 34px; border-bottom: 1px solid var(--line); }.breadcrumbs { display: flex; align-items: center; gap: 8px; color: var(--dim); font-size: 11px; }.breadcrumbs svg { width: 13px; height: 13px; }.breadcrumbs strong { color: var(--ink); font-size: 11px; }.app-top-actions { display: flex; align-items: center; gap: 11px; }.demo-badge { color: var(--amber); background: rgba(229,184,107,.08); }.run-status { color: var(--teal); background: rgba(99,215,191,.06); }.app-main { max-width: 1250px; margin: auto; padding: 48px 42px 64px; }.page-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 25px; }.page-heading h2 { margin-top: 13px; font-size: 35px; }.page-heading p { max-width: 560px; margin-top: 9px; color: var(--muted); font-size: 13px; }.page-heading > .text-button { margin-top: 18px; color: var(--muted); }
.stepper { display: flex; align-items: center; max-width: 680px; margin-top: 42px; }.step { display: flex; align-items: center; gap: 9px; min-width: 130px; }.step > span { display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid var(--line-strong); border-radius: 50%; color: var(--dim); font-family: var(--mono); font-size: 9px; }.step.is-active > span { border-color: var(--teal); color: var(--base); background: var(--teal); }.step strong, .step small { display: block; }.step strong { color: var(--ink-strong); font-size: 11px; }.step small { margin-top: 2px; color: var(--dim); font-size: 9px; }.step-line { flex: 1; height: 1px; margin: 0 17px; background: var(--line); }
.import-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(250px, .55fr); gap: 18px; margin-top: 35px; }.import-primary { min-width: 0; }.upload-zone { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 210px; padding: 26px; border: 1px dashed rgba(99,215,191,.47); border-radius: 14px; background: rgba(21, 40, 41, .55); text-align: center; }.upload-zone:hover, .upload-zone:focus-within { background: rgba(25, 51, 49, .74); }.upload-icon { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 12px; color: var(--teal); background: rgba(99,215,191,.1); }.upload-icon svg { width: 21px; }.upload-zone h3 { margin-top: 16px; font-size: 17px; }.upload-zone p { margin-top: 5px; color: var(--muted); font-size: 11px; }.upload-zone .button { margin-top: 18px; }.upload-status { margin-top: 10px; color: var(--dim); font-family: var(--mono); font-size: 9px; }.data-preview-panel, .aside-block, .aside-next, .chart-panel, .metric-card, .insight-panel, .evidence-panel, .admin-panel { border: 1px solid var(--line); border-radius: var(--radius); background: rgba(16, 26, 31, .78); }.data-preview-panel { margin-top: 18px; padding: 20px; }.panel-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }.panel-heading h3 { margin-top: 7px; font-size: 15px; }.neutral-chip { color: var(--dim); }.table-wrap { overflow-x: auto; margin-top: 17px; }.data-table { width: 100%; min-width: 570px; border-collapse: collapse; color: var(--muted); font-size: 11px; }.data-table th { padding: 0 11px 10px; color: var(--dim); font-family: var(--mono); font-size: 9px; font-weight: 400; text-align: left; }.data-table td { padding: 12px 11px; border-top: 1px solid var(--line); }.data-table .num { color: var(--ink-strong); font-family: var(--mono); text-align: right; }.data-table th:nth-child(n+4) { text-align: right; }.mono { font-family: var(--mono); }.muted-cell { color: var(--dim) !important; }.import-aside { display: grid; align-content: start; gap: 12px; }.aside-block { padding: 18px; }.aside-title { display: flex; align-items: center; justify-content: space-between; color: var(--dim); font-family: var(--mono); font-size: 9px; letter-spacing: .13em; }.aside-title > svg { width: 16px; color: var(--teal); }.quality-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 17px; color: var(--muted); font-size: 11px; }.quality-row span { display: flex; align-items: center; gap: 7px; }.quality-row svg { width: 14px; height: 14px; color: var(--teal); }.quality-row .lucide-alert-triangle { color: var(--amber); }.good-text { color: var(--teal); font-family: var(--mono); font-size: 9px; font-weight: 400; }.warn-text { color: var(--amber); font-family: var(--mono); font-size: 9px; font-weight: 400; }.mapping-block label { display: grid; gap: 6px; margin-top: 14px; color: var(--dim); font-size: 10px; }.mapping-block select { width: 100%; min-height: 32px; padding: 0 8px; border: 1px solid var(--line); border-radius: 6px; color: var(--ink); background: var(--surface-dark); font-size: 11px; }.aside-next { padding: 19px; border-color: rgba(229,184,107,.25); background: rgba(47, 37, 24, .5); }.aside-next strong { display: block; margin-top: 8px; color: var(--ink-strong); font-size: 16px; }.aside-next p { margin-top: 7px; color: var(--muted); font-size: 11px; line-height: 1.55; }.aside-next .button { width: 100%; margin-top: 18px; }

/* Analysis page */
.analysis-layout { display: grid; grid-template-columns: 216px minmax(0, 1fr); min-height: calc(100vh - 142px); }.analysis-history { padding: 29px 16px; border-right: 1px solid var(--line); background: rgba(11,18,22,.42); }.history-head { display: flex; align-items: center; justify-content: space-between; }.history-item { display: flex; align-items: flex-start; gap: 9px; width: 100%; margin-top: 13px; padding: 11px 9px; border: 1px solid transparent; border-radius: 8px; color: var(--muted); background: transparent; text-align: left; }.history-item.is-active { border-color: rgba(99,215,191,.23); background: rgba(99,215,191,.07); }.history-dot { flex: 0 0 auto; width: 7px; height: 7px; margin-top: 5px; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 3px rgba(122,167,255,.12); }.history-dot.done { background: var(--teal); box-shadow: 0 0 0 3px rgba(99,215,191,.11); }.history-item strong, .history-item small { display: block; }.history-item strong { color: var(--ink); font-size: 10px; line-height: 1.35; }.history-item small { margin-top: 5px; color: var(--dim); font-size: 9px; }.history-divider { height: 1px; margin: 23px 9px; background: var(--line); }.new-thread { display: flex; align-items: center; gap: 8px; padding: 0 9px; color: var(--teal); background: transparent; font-size: 10px; font-weight: 700; }.new-thread svg { width: 14px; }.analysis-canvas { min-width: 0; padding: 43px 42px 58px; }.analysis-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 22px; }.analysis-heading h2 { margin-top: 10px; font-size: 29px; }.analysis-heading p { max-width: 585px; margin-top: 7px; color: var(--muted); font-size: 12px; }.analysis-heading .neutral-chip { margin-top: 7px; white-space: nowrap; }.neutral-chip svg { width: 12px; height: 12px; }.metric-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 31px; }.metric-card { min-height: 122px; padding: 18px; }.metric-card strong { display: block; margin-top: 12px; color: var(--ink-strong); font-family: var(--mono); font-size: 26px; font-weight: 500; }.metric-note { display: block; margin-top: 4px; color: var(--dim); font-size: 10px; }.metric-card-green { border-color: rgba(99,215,191,.25); background: rgba(21, 42, 40, .7); }.metric-card-warm { border-color: rgba(229,184,107,.27); background: rgba(47,37,24,.46); }.chart-grid { display: grid; grid-template-columns: 1.13fr .87fr; gap: 10px; margin-top: 10px; }.chart-panel { min-height: 266px; padding: 20px; }.chart-unit { color: var(--dim); font-family: var(--mono); font-size: 9px; }.bar-chart { margin-top: 45px; }.bar-row { display: grid; grid-template-columns: 54px 1fr 48px; align-items: center; gap: 11px; margin-top: 23px; color: var(--muted); font-size: 10px; }.bar-row:first-child { margin-top: 0; }.bar-track { position: relative; display: flex; align-items: center; height: 18px; border-bottom: 1px solid var(--line); }.bar { position: absolute; left: 0; height: 6px; border-radius: 0 4px 4px 0; }.bar.paid { top: 2px; background: var(--blue); }.bar.net { bottom: 1px; background: var(--teal); }.bar-row strong { color: var(--ink); font-family: var(--mono); font-size: 10px; font-weight: 400; text-align: right; }.bar-legend { display: flex; gap: 15px; margin-top: 34px; color: var(--dim); font-size: 9px; }.bar-legend span { display: inline-flex; align-items: center; gap: 6px; }.legend-dot { width: 6px; height: 6px; border-radius: 50%; }.paid-dot { background: var(--blue); }.net-dot { background: var(--teal); }.line-chart { margin-top: 28px; }.line-chart svg { display: block; width: 100%; height: 142px; overflow: visible; }.line-chart .area { fill: url(#areaFill); }.line-chart .line { fill: none; stroke: var(--teal); stroke-width: 2.2; vector-effect: non-scaling-stroke; }.axis { display: flex; justify-content: space-between; color: var(--dim); font-family: var(--mono); font-size: 9px; }.insight-panel { display: grid; grid-template-columns: 39px 1fr auto; gap: 14px; margin-top: 10px; padding: 21px; border-color: rgba(99,215,191,.24); background: rgba(19, 40, 40, .6); }.insight-icon { display: grid; place-items: center; width: 37px; height: 37px; border-radius: 9px; color: var(--teal); background: rgba(99,215,191,.1); }.insight-icon svg { width: 18px; }.insight-panel h3 { margin-top: 7px; color: var(--ink-strong); font-size: 17px; }.insight-panel p { max-width: 650px; margin-top: 7px; color: var(--muted); font-size: 12px; line-height: 1.7; }.insight-panel p strong { color: var(--ink); }.insight-index { color: var(--dim); font-family: var(--mono); font-size: 9px; }.evidence-panel { margin-top: 10px; padding: 20px; }.evidence-head { display: flex; align-items: center; justify-content: space-between; }.evidence-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-top: 19px; }.evidence-grid span, .evidence-grid strong { display: block; }.evidence-grid span { color: var(--dim); font-size: 9px; }.evidence-grid strong { margin-top: 6px; color: var(--ink); font-family: var(--mono); font-size: 10px; font-weight: 400; }.followup-box { display: flex; align-items: center; gap: 11px; margin-top: 13px; padding: 6px 6px 6px 14px; border: 1px solid var(--line-strong); border-radius: 10px; background: rgba(18,28,32,.9); }.followup-box > svg { width: 16px; color: var(--dim); }.followup-box input { min-width: 0; flex: 1; color: var(--ink); outline: 0; background: transparent; font-size: 11px; }.followup-box input::placeholder { color: var(--dim); }.followup-box .icon-button { border: 0; background: var(--teal); color: var(--base); }

/* Admin */
.admin-main { max-width: 1370px; }.admin-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 37px; }.admin-kpi { min-height: 130px; padding: 20px; border: 1px solid var(--line); border-radius: var(--radius); background: rgba(16,26,31,.78); }.admin-kpi strong { display: block; margin-top: 11px; color: var(--ink-strong); font-family: var(--mono); font-size: 27px; font-weight: 500; }.kpi-trend { display: block; margin-top: 8px; color: var(--dim); font-family: var(--mono); font-size: 9px; }.admin-grid { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(285px, .82fr); gap: 10px; margin-top: 10px; }.admin-panel { min-width: 0; padding: 20px; }.admin-panel h3 { margin-top: 7px; }.task-list { margin-top: 17px; }.task-row { display: grid; grid-template-columns: 24px 1fr auto; align-items: center; gap: 10px; min-height: 56px; border-top: 1px solid var(--line); }.task-state { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 7px; }.task-state svg { width: 12px; }.state-running { color: var(--blue); background: rgba(122,167,255,.11); }.state-running svg { animation: spin 1.8s linear infinite; }.state-done { color: var(--teal); background: rgba(99,215,191,.1); }.state-warn { color: var(--amber); background: rgba(229,184,107,.1); }.task-row strong, .task-row small { display: block; }.task-row strong { color: var(--ink); font-size: 11px; }.task-row small { margin-top: 3px; color: var(--dim); font-size: 9px; }.task-pill { padding: 4px 7px; border-radius: 5px; font-family: var(--mono); font-size: 8px; }.pill-blue { color: var(--blue); background: rgba(122,167,255,.1); }.pill-green { color: var(--teal); background: rgba(99,215,191,.1); }.pill-warm { color: var(--amber); background: rgba(229,184,107,.1); }.health-list { margin-top: 21px; }.health-list > div { display: grid; grid-template-columns: 64px 1fr 36px; align-items: center; gap: 10px; margin-top: 16px; color: var(--muted); font-size: 10px; }.health-list > div:first-child { margin-top: 0; }.health-list strong { color: var(--ink); font-family: var(--mono); font-size: 9px; font-weight: 400; text-align: right; }.health-bar { height: 5px; overflow: hidden; border-radius: 4px; background: rgba(255,255,255,.06); }.health-bar span { display: block; height: 100%; border-radius: inherit; background: var(--teal); }.health-foot { display: flex; align-items: center; justify-content: space-between; margin-top: 26px; padding-top: 13px; border-top: 1px solid var(--line); color: var(--dim); font-family: var(--mono); font-size: 9px; }.health-foot svg { width: 13px; }.audit-panel { min-height: 245px; }.audit-list { margin-top: 18px; }.audit-list > div { display: flex; gap: 10px; padding: 12px 0; border-top: 1px solid var(--line); }.audit-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 24px; height: 24px; border-radius: 7px; color: var(--teal); background: rgba(99,215,191,.1); font-family: var(--mono); font-size: 8px; }.audit-avatar-blue { color: var(--blue); background: rgba(122,167,255,.1); }.audit-avatar-warm { color: var(--amber); background: rgba(229,184,107,.1); }.audit-list p { color: var(--muted); font-size: 10px; }.audit-list p strong { color: var(--ink); }.audit-list small { display: block; margin-top: 4px; color: var(--dim); font-size: 9px; }.usage-panel { min-height: 245px; }.usage-chart { display: flex; align-items: flex-end; gap: 13px; height: 139px; margin-top: 20px; padding: 13px 8px 0; border-bottom: 1px solid var(--line); }.usage-chart div { flex: 1; border-radius: 4px 4px 0 0; background: linear-gradient(180deg, var(--blue), rgba(122,167,255,.22)); }.usage-axis { margin-top: 9px; }
@keyframes spin { to { transform: rotate(360deg); } }

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
@media (max-width: 1080px) { h1 { font-size: 65px; }.topbar { padding: 0 28px; }.hero { grid-template-columns: minmax(0, .94fr) minmax(390px, 1fr); gap: 38px; }.hero-visual { min-height: 385px; }.section-wrap { width: min(100% - 48px, 1180px); }.app-main { padding-right: 27px; padding-left: 27px; }.analysis-canvas { padding-right: 27px; padding-left: 27px; }.evidence-grid { gap: 10px; } }
@media (max-width: 860px) { h1 { font-size: 56px; }.main-nav { display: none; }.top-actions { margin-left: auto; }.mobile-menu { display: inline-grid; }.hero { grid-template-columns: 1fr; gap: 45px; padding-top: 57px; }.hero-copy { max-width: 650px; }.hero-visual { max-width: 620px; width: 100%; }.workflow-section { grid-template-columns: 1fr; gap: 42px; }.workflow-map { max-width: 670px; }.intro-grid { gap: 35px; }.app-layout { grid-template-columns: 205px minmax(0, 1fr); }.import-grid { grid-template-columns: 1fr; }.import-aside { grid-template-columns: repeat(2, 1fr); }.aside-next { grid-column: 1 / -1; }.analysis-layout { grid-template-columns: 178px minmax(0, 1fr); }.metric-grid { grid-template-columns: repeat(2, 1fr); }.chart-grid { grid-template-columns: 1fr; }.admin-kpis { grid-template-columns: repeat(2, 1fr); }.admin-grid { grid-template-columns: 1fr; } }
@media (max-width: 860px) { .topbar.mobile-open { flex-wrap: wrap; height: auto; min-height: 65px; padding-top: 15px; padding-bottom: 15px; }.topbar.mobile-open .main-nav { display: flex; order: 4; width: 100%; padding-top: 14px; border-top: 1px solid var(--line); }.topbar.mobile-open .main-nav .nav-link { flex: 1; text-align: center; } }
@media (max-width: 620px) { h1 { font-size: 45px; }.section-wrap { width: calc(100% - 32px); }.topbar { height: 65px; padding: 0 16px; }.top-actions .text-button, .top-actions .button { display: none; }.hero { min-height: 0; padding-top: 45px; padding-bottom: 54px; }.hero-lede { font-size: 14px; }.hero-actions { align-items: flex-start; flex-direction: column; gap: 15px; }.hero-proof { flex-wrap: wrap; gap: 18px 28px; margin-top: 38px; }.hero-visual { min-height: 350px; padding: 13px; }.visual-ui { right: 17px; bottom: 22px; left: 17px; padding: 15px; }.visual-ui-head strong { font-size: 24px; }.callout-a { top: 96px; }.callout-b { bottom: 118px; }.trusted-strip { display: block; padding: 17px 0; }.trusted-lines { flex-wrap: wrap; gap: 10px 18px; margin-top: 12px; }.intro-band { padding-top: 74px; }.intro-grid { grid-template-columns: 1fr; gap: 17px; }.intro-grid h2 { font-size: 33px; }.feature-grid { grid-template-columns: 1fr; }.feature-panel { min-height: 0; padding: 20px; }.workflow-section { margin-top: 73px; padding: 55px 0; }.workflow-copy h2 { font-size: 34px; }.workflow-map { min-height: 250px; align-items: flex-start; flex-direction: column; padding-left: 24px; }.map-line { top: 11%; right: auto; bottom: 10%; left: 41px; width: 1px; height: auto; background: linear-gradient(180deg, var(--teal), rgba(99,215,191,.2), var(--amber)); }.flow-node { display: grid; grid-template-columns: 34px 1fr; justify-items: start; gap: 0 12px; width: auto; min-height: 60px; }.flow-node span { grid-row: 1 / span 2; }.flow-node small { align-self: start; }.quote-band { padding: 80px 0 92px; }.quote-band blockquote { font-size: 31px; }.site-footer { display: grid; gap: 6px; width: calc(100% - 32px); }.app-layout { display: block; min-height: 0; }.app-sidebar { display: none; }.app-topbar { height: 56px; padding: 0 16px; }.breadcrumbs span, .breadcrumbs svg { display: none; }.app-top-actions .icon-button:first-child { display: none; }.app-main { padding: 32px 16px 45px; }.page-heading { display: block; }.page-heading > .text-button { margin-top: 20px; }.page-heading h2 { font-size: 30px; }.stepper { max-width: 100%; margin-top: 29px; }.step { min-width: 0; }.step > div { display: none; }.step-line { margin: 0 8px; }.import-grid { margin-top: 24px; }.import-aside { grid-template-columns: 1fr; }.aside-next { grid-column: auto; }.data-preview-panel { padding: 15px; }.analysis-layout { display: block; min-height: 0; }.analysis-history { display: flex; gap: 7px; overflow-x: auto; padding: 11px 16px; border-right: 0; border-bottom: 1px solid var(--line); }.history-head, .history-divider, .new-thread { display: none; }.history-item { flex: 0 0 185px; margin-top: 0; }.analysis-canvas { padding: 29px 16px 45px; }.analysis-heading { display: block; }.analysis-heading h2 { font-size: 25px; }.analysis-heading .neutral-chip { margin-top: 17px; }.metric-grid { gap: 7px; margin-top: 23px; }.metric-card { min-height: 105px; padding: 14px; }.metric-card strong { font-size: 21px; }.chart-panel { padding: 15px; }.bar-chart { margin-top: 28px; }.insight-panel { grid-template-columns: 35px 1fr; padding: 15px; }.insight-index { display: none; }.evidence-grid { grid-template-columns: repeat(2, 1fr); row-gap: 15px; }.admin-kpis { gap: 7px; }.admin-kpi { min-height: 112px; padding: 14px; }.admin-kpi strong { font-size: 22px; }.admin-panel { padding: 15px; }.task-row { grid-template-columns: 24px 1fr; }.task-pill { display: none; } }

.question-block label { display: grid; gap: 8px; margin-top: 13px; color: var(--muted); font-size: 10px; line-height: 1.45; }
.question-block textarea { width: 100%; min-height: 76px; resize: vertical; padding: 9px; border: 1px solid var(--line); border-radius: 7px; color: var(--ink); background: var(--surface-dark); font-size: 10px; line-height: 1.5; }
.question-block textarea:focus { border-color: var(--teal); outline: 0; }
.button-dark.is-saved { color: var(--teal); border-color: rgba(99, 215, 191, .3); }
.hero-visual { --tilt-x: 0deg; --tilt-y: 0deg; --lift-x: 0px; --lift-y: 0px; transform: perspective(1200px) rotateX(var(--tilt-y)) rotateY(var(--tilt-x)) translate3d(var(--lift-x), var(--lift-y), 0); transition: transform .32s cubic-bezier(.2,.7,.2,1); will-change: transform; }
@media (prefers-reduced-motion: reduce) { .hero-visual { transform: none; transition: none; } }
