/*
 * Implied Lens — canonical visual layer
 * Quiet institutional surfaces, decisive typography, restrained brass,
 * and market colors reserved for data meaning.
 */

:root {
  color-scheme: light;
  --il-bg: #f3f5f2;
  --il-bg-elevated: #f8f9f7;
  --il-surface: #ffffff;
  --il-surface-2: #f7f8f6;
  --il-surface-3: #eef1ed;
  --il-ink: #111714;
  --il-ink-2: #2b3530;
  --il-muted: #647069;
  --il-faint: #89928d;
  --il-line: #dce2de;
  --il-line-strong: #cbd3ce;
  --il-brass: #9b6b2d;
  --il-brass-bright: #c99548;
  --il-brass-soft: rgba(155, 107, 45, .09);
  --il-green: #07864c;
  --il-green-bright: #00a962;
  --il-red: #d03d52;
  --il-red-bright: #ed5164;
  --il-shadow-xs: 0 1px 2px rgba(13, 24, 18, .035);
  --il-shadow-sm: 0 8px 24px rgba(13, 24, 18, .055);
  --il-shadow-md: 0 18px 48px rgba(13, 24, 18, .085);
  --il-radius-sm: 4px;
  --il-radius: 8px;
  --il-radius-lg: 8px;
  --il-header: #0b100e;
  --il-header-line: rgba(255, 255, 255, .09);
  --il-focus: 0 0 0 3px rgba(201, 149, 72, .2);
  --cream: var(--il-bg);
  --cream2: var(--il-bg-elevated);
  --cream3: var(--il-surface-3);
  --card: var(--il-surface);
  --panel: var(--il-surface-2);
  --ink: var(--il-ink);
  --ink2: var(--il-ink-2);
  --ink3: #47534d;
  --ink4: var(--il-muted);
  --ink5: var(--il-faint);
  --text: var(--il-ink);
  --text2: var(--il-ink-2);
  --text3: #47534d;
  --text4: var(--il-muted);
  --text5: var(--il-faint);
  --border: var(--il-line);
  --border2: var(--il-line);
  --border3: var(--il-line-strong);
  --surface: var(--il-surface);
  --surface-2: var(--il-surface-2);
  --surface-3: var(--il-surface-3);
  --gold: var(--il-brass);
  --gold-d: #76501f;
  --gold-bright: var(--il-brass-bright);
  --gold-hi: #dfb86f;
  --gold-grad: linear-gradient(180deg, #d5ad68 0%, #b68136 100%);
  --gold-tint: var(--il-brass-soft);
  --gold-tint2: rgba(155, 107, 45, .14);
  --gold-ring: rgba(155, 107, 45, .3);
  --market-up: var(--il-green);
  --market-up-strong: var(--il-green-bright);
  --market-down: var(--il-red);
  --market-down-strong: var(--il-red-bright);
  --chart-price: var(--il-green-bright);
  --chart-positive: var(--il-green-bright);
  --chart-negative: var(--il-red-bright);
}

html[data-theme="dark"] {
  color-scheme: dark;
  --il-bg: #090d0b;
  --il-bg-elevated: #0c1210;
  --il-surface: #111815;
  --il-surface-2: #151e1a;
  --il-surface-3: #1a2520;
  --il-ink: #f2f4f1;
  --il-ink-2: #d7ddd9;
  --il-muted: #9aa59f;
  --il-faint: #748078;
  --il-line: #26312c;
  --il-line-strong: #35413b;
  --il-brass: #d0a45b;
  --il-brass-bright: #e2bd77;
  --il-brass-soft: rgba(208, 164, 91, .1);
  --il-green: #20d982;
  --il-green-bright: #31e792;
  --il-red: #ff6173;
  --il-red-bright: #ff7181;
  --il-shadow-xs: 0 1px 2px rgba(0, 0, 0, .18);
  --il-shadow-sm: 0 10px 28px rgba(0, 0, 0, .2);
  --il-shadow-md: 0 22px 60px rgba(0, 0, 0, .3);
  --cream: var(--il-bg);
  --cream2: var(--il-bg-elevated);
  --cream3: var(--il-surface-3);
  --card: var(--il-surface);
  --panel: var(--il-surface-2);
  --ink: var(--il-ink);
  --ink2: var(--il-ink-2);
  --ink3: #bcc5bf;
  --ink4: var(--il-muted);
  --ink5: var(--il-faint);
  --text: var(--il-ink);
  --text2: var(--il-ink-2);
  --text3: #bcc5bf;
  --text4: var(--il-muted);
  --text5: var(--il-faint);
  --border: var(--il-line);
  --border2: var(--il-line);
  --border3: var(--il-line-strong);
  --surface: var(--il-surface);
  --surface-2: var(--il-surface-2);
  --surface-3: var(--il-surface-3);
  --gold: var(--il-brass);
  --gold-d: var(--il-brass-bright);
  --gold-bright: var(--il-brass-bright);
  --gold-hi: #f0d49d;
  --gold-grad: linear-gradient(180deg, #e0bc78 0%, #bd8739 100%);
  --gold-tint: var(--il-brass-soft);
  --gold-tint2: rgba(208, 164, 91, .15);
  --gold-ring: rgba(208, 164, 91, .3);
  --market-up: var(--il-green);
  --market-up-strong: var(--il-green-bright);
  --market-down: var(--il-red);
  --market-down-strong: var(--il-red-bright);
  --chart-price: var(--il-green-bright);
  --chart-positive: var(--il-green-bright);
  --chart-negative: var(--il-red-bright);
}

html,
body {
  background: var(--il-bg) !important;
  background-image: none !important;
  color: var(--il-ink) !important;
  font-family: "DM Sans", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-feature-settings: "tnum" 1, "ss01" 1;
  text-rendering: optimizeLegibility;
}

body::before { content: none !important; }

h1, h2, h3, h4,
.auth-title,
.cex-title,
.panel-heading strong {
  font-family: "Space Grotesk", "DM Sans", sans-serif !important;
  letter-spacing: -.025em;
}

a, button, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button, a, input, select, textarea { transition: border-color .14s ease, background-color .14s ease, color .14s ease, box-shadow .14s ease, transform .14s ease; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: none !important;
  box-shadow: var(--il-focus) !important;
}

/* One stable product header. */
#main-nav,
nav#main-nav.il-static-main-nav {
  min-height: 60px !important;
  height: 60px !important;
  padding: 0 max(20px, env(safe-area-inset-right, 0px)) 0 max(20px, env(safe-area-inset-left, 0px)) !important;
  background: rgba(11, 16, 14, .96) !important;
  background-image: none !important;
  border: 0 !important;
  border-bottom: 1px solid var(--il-header-line) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) saturate(1.15) !important;
}

#main-nav .nav-logo,
#main-nav .il-global-brand {
  gap: 9px !important;
  flex: 0 0 174px !important;
  width: 174px !important;
  min-width: 174px !important;
  margin: 0 !important;
  padding-right: 14px !important;
  color: #f4f4ef !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  letter-spacing: -.035em !important;
}
#main-nav .nav-logo img,
#main-nav .il-global-brand img {
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  filter: none !important;
}
#main-nav .nav-logo em,
#main-nav .il-global-brand em { color: #d6ad67 !important; }

#main-nav .nav-links,
#main-nav .il-global-links {
  gap: 3px !important;
  height: 60px !important;
  align-items: center !important;
}
#main-nav .nav-tab,
#main-nav .il-global-tab {
  width: auto !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 10px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: rgba(242, 244, 241, .64) !important;
  box-shadow: none !important;
  font: 600 12px/34px "DM Sans", sans-serif !important;
  letter-spacing: -.005em !important;
}
#main-nav .nav-tab:hover,
#main-nav .il-global-tab:hover { background: rgba(255, 255, 255, .055) !important; color: #fff !important; }
#main-nav .nav-tab.active-tab,
#main-nav .il-global-tab.active,
#main-nav .il-global-tab.active-tab {
  background: rgba(214, 173, 103, .11) !important;
  color: #f2d9aa !important;
  box-shadow: inset 0 0 0 1px rgba(214, 173, 103, .18) !important;
}

#main-nav .nav-search,
#main-nav .il-global-search {
  height: 34px !important;
  border: 1px solid rgba(255, 255, 255, .1) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, .045) !important;
  box-shadow: none !important;
}
#main-nav .nav-search input,
#main-nav .il-global-search input { color: #f1f3ef !important; }
#main-nav .nav-search input::placeholder,
#main-nav .il-global-search input::placeholder { color: rgba(242, 244, 241, .42) !important; }
#main-nav .nav-live,
#main-nav .il-global-live {
  min-height: 26px !important;
  padding: 0 8px !important;
  border-color: rgba(32, 217, 130, .2) !important;
  border-radius: 4px !important;
  background: rgba(32, 217, 130, .065) !important;
  color: #68e8ad !important;
  box-shadow: none !important;
}
#main-nav .btn-nav-outline,
#main-nav .il-global-login,
#main-nav .il-global-account {
  min-height: 34px !important;
  border: 1px solid rgba(255, 255, 255, .13) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, .04) !important;
  color: rgba(255, 255, 255, .84) !important;
  box-shadow: none !important;
}
#main-nav .btn-nav,
#main-nav .il-global-trial {
  min-height: 34px !important;
  border-radius: 8px !important;
  background: #d2aa67 !important;
  color: #16120c !important;
  box-shadow: none !important;
  font-weight: 700 !important;
}

/* Home — useful first, with one clear visual hierarchy. */
.il-product-page #view-home {
  padding-top: calc(60px + env(safe-area-inset-top, 0px)) !important;
  background: var(--il-bg) !important;
}
.il-product-page #view-tool {
  height: 100dvh !important;
  padding-top: calc(60px + env(safe-area-inset-top, 0px)) !important;
}
#landing-page.il-landing { max-width: none !important; color: var(--il-ink) !important; }
#landing-page .il-landing-rail { display: none !important; }
#landing-page .il-landing-hero {
  width: min(100%, 1320px) !important;
  max-width: 1320px !important;
  margin-inline: auto !important;
  min-height: 690px !important;
  padding: 76px clamp(28px, 5vw, 72px) 68px !important;
  grid-template-columns: minmax(380px, .88fr) minmax(500px, 1.12fr) !important;
  gap: clamp(52px, 6vw, 92px) !important;
}
#landing-page .il-landing-copy { max-width: 610px !important; }
#landing-page .il-landing-kicker,
.il-static-page .eyebrow,
.il-lens-page .eyebrow,
.il-auth-page .auth-eyebrow {
  color: var(--il-brass) !important;
  font: 700 11px/1.4 "DM Sans", sans-serif !important;
  letter-spacing: .12em !important;
  text-transform: uppercase;
}
#landing-page .il-landing-kicker::before { background: var(--il-green-bright) !important; box-shadow: 0 0 0 5px rgba(0, 169, 98, .1) !important; }
#landing-page .il-landing-copy h1 {
  max-width: 620px !important;
  margin-bottom: 20px !important;
  color: var(--il-ink) !important;
  font-size: clamp(46px, 4.6vw, 70px) !important;
  font-weight: 600 !important;
  line-height: .99 !important;
  letter-spacing: -.055em !important;
}
#landing-page .il-landing-copy > p {
  max-width: 570px !important;
  color: var(--il-muted) !important;
  font-size: 18px !important;
  line-height: 1.68 !important;
}
#landing-page .il-landing-search {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) auto !important;
  align-items: center !important;
  width: 100% !important;
  margin-top: 28px !important;
  padding: 6px 6px 6px 15px !important;
  border: 1px solid var(--il-line-strong) !important;
  border-radius: 8px !important;
  background: var(--il-surface) !important;
  box-shadow: var(--il-shadow-sm) !important;
}
#landing-page .il-landing-search input {
  min-height: 44px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--il-ink) !important;
  font-size: 15px !important;
  outline: 0 !important;
}
#landing-page .il-landing-search button,
#landing-page .il-landing-primary {
  min-height: 44px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #c99a53 !important;
  color: #17120b !important;
  box-shadow: none !important;
  font-weight: 700 !important;
}
#landing-page .il-landing-actions { margin-top: 14px !important; }
#landing-page .il-landing-actions #il-hero-primary { display: none !important; }
#landing-page .il-landing-secondary {
  min-height: 42px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--il-muted) !important;
  box-shadow: none !important;
  text-decoration: underline !important;
  text-decoration-color: var(--il-line-strong) !important;
  text-underline-offset: 4px;
}
#landing-page .il-landing-proof {
  display: flex !important;
  gap: 16px !important;
  margin-top: 16px !important;
  color: var(--il-faint) !important;
  font-size: 11px !important;
}
#landing-page .il-landing-preview { max-width: 700px !important; }
#landing-page .il-landing-preview::before { content: none !important; }
#landing-page .il-hero-mock {
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, .1) !important;
  border-radius: 8px !important;
  background: #101513 !important;
  box-shadow: 0 34px 80px rgba(8, 15, 11, .22), 0 0 0 1px rgba(17, 24, 21, .08) !important;
  transform: perspective(1200px) rotateY(-2deg) rotateX(1deg);
}
#landing-page .il-preview-caption {
  right: 18px !important;
  bottom: 16px !important;
  left: auto !important;
  border: 1px solid rgba(255, 255, 255, .1) !important;
  border-radius: 8px !important;
  background: rgba(8, 12, 10, .8) !important;
  box-shadow: none !important;
  backdrop-filter: blur(12px);
}

#landing-page .il-capabilities,
#landing-page .il-workflow-visual,
#landing-page .il-landing-band,
#landing-page .il-landing-pricing {
  width: min(calc(100% - 40px), 1180px) !important;
  margin-inline: auto !important;
}
#landing-page .il-capabilities,
#landing-page .il-workflow-visual { padding-block: 78px !important; }
#landing-page .il-cap-head,
#landing-page .il-workflow-copy { max-width: 720px !important; }
#landing-page .il-cap-head h2,
#landing-page .il-workflow-copy h2,
#landing-page .il-landing-band h2,
#landing-page .il-landing-pricing h2 {
  color: var(--il-ink) !important;
  font-size: clamp(30px, 3.1vw, 46px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.045em !important;
}
#landing-page .il-cap-head p,
#landing-page .il-workflow-copy p,
#landing-page .il-landing-band p,
#landing-page .il-landing-pricing p { color: var(--il-muted) !important; line-height: 1.7 !important; }
#landing-page .il-cap-grid,
#landing-page .il-workflow-panels { gap: 14px !important; }
#landing-page .il-cap-card,
#landing-page .il-wf-panel {
  border: 1px solid var(--il-line) !important;
  border-radius: 8px !important;
  background: var(--il-surface) !important;
  background-image: none !important;
  box-shadow: var(--il-shadow-xs) !important;
}
#landing-page .il-cap-card:hover,
#landing-page .il-wf-panel:hover {
  border-color: var(--il-line-strong) !important;
  box-shadow: var(--il-shadow-sm) !important;
  transform: translateY(-2px) !important;
}
#landing-page .il-cap-card i,
#landing-page .il-wf-head i { color: var(--il-brass) !important; }
#landing-page .il-cap-card strong,
#landing-page .il-wf-head strong { color: var(--il-ink) !important; }
#landing-page .il-cap-card span,
#landing-page .il-wf-panel p { color: var(--il-muted) !important; }
#landing-page .il-landing-band,
#landing-page .il-landing-pricing {
  margin-bottom: 64px !important;
  padding: 42px !important;
  border: 1px solid var(--il-line) !important;
  border-radius: 8px !important;
  background: var(--il-surface) !important;
  background-image: none !important;
  box-shadow: var(--il-shadow-sm) !important;
}

/* Research application: reduce chrome, increase information clarity. */
.il-product-page #view-tool,
.il-product-page .app-shell,
.il-product-page .app-main { background: var(--il-bg) !important; background-image: none !important; }
.il-product-page .app-shell { border: 0 !important; }
.il-product-page .app-sidebar {
  background: var(--il-bg-elevated) !important;
  border-right: 1px solid var(--il-line) !important;
  box-shadow: none !important;
}
.il-product-page .sb-section-label { color: var(--il-faint) !important; letter-spacing: .11em !important; }
.il-product-page .sb-item {
  margin: 2px 8px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: var(--il-muted) !important;
  box-shadow: none !important;
}
.il-product-page .sb-item:hover { background: var(--il-surface-3) !important; color: var(--il-ink) !important; }
.il-product-page .sb-item.active {
  background: var(--il-brass-soft) !important;
  color: var(--il-ink) !important;
  box-shadow: inset 2px 0 0 var(--il-brass) !important;
}
.il-product-page .app-section-hdr {
  min-height: 56px !important;
  border-bottom: 1px solid var(--il-line) !important;
  background: rgba(243, 245, 242, .92) !important;
  box-shadow: none !important;
  backdrop-filter: blur(14px) !important;
}
html[data-theme="dark"] .il-product-page .app-section-hdr { background: rgba(9, 13, 11, .92) !important; }
.il-product-page .app-content-scroll { padding: 22px clamp(16px, 2.2vw, 32px) 48px !important; }
.il-product-page .app-section,
.il-product-page .app-section .acc-body { background: transparent !important; border: 0 !important; box-shadow: none !important; }

.il-product-page .tool-welcome,
.il-product-page .panel-box,
.il-product-page .chart-wrap,
.il-product-page .metric-card,
.il-product-page .summary-card,
.il-product-page .il-research-panel,
.il-product-page .il-workspace-card,
.il-product-page .edu-hero,
.il-product-page .edu-path,
.il-product-page .edu-lesson-panel,
.il-product-page .edu-checklist,
.il-product-page .edu-glossary,
.il-product-page .tw-market .twm-cell,
.il-product-page .tw-tool,
.il-product-page .tw-recent-card {
  border: 1px solid var(--il-line) !important;
  border-radius: var(--il-radius) !important;
  background: var(--il-surface) !important;
  background-image: none !important;
  box-shadow: var(--il-shadow-xs) !important;
}
.il-product-page .tool-welcome { padding: clamp(22px, 3vw, 38px) !important; }
.il-product-page .tool-welcome::before,
.il-product-page .tool-welcome::after { content: none !important; }
.il-product-page .tw-title,
.il-product-page .panel-box-title,
.il-product-page .chart-header strong { color: var(--il-ink) !important; }
.il-product-page .tw-sub,
.il-product-page .muted,
.il-product-page .chart-data-note { color: var(--il-muted) !important; }

.il-product-page .app-chart-toolbar,
.il-product-page .app-tf-strip,
.il-product-page .mobile-sec-tabs {
  border: 1px solid var(--il-line) !important;
  border-radius: 8px !important;
  background: var(--il-surface) !important;
  box-shadow: none !important;
}
.il-product-page .act-btn,
.il-product-page .tf-pill,
.il-product-page .mst-btn,
.il-product-page .ind-pill {
  min-height: 34px !important;
  border-color: transparent !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: var(--il-muted) !important;
  box-shadow: none !important;
}
.il-product-page .act-btn:hover,
.il-product-page .tf-pill:hover,
.il-product-page .mst-btn:hover,
.il-product-page .ind-pill:hover { background: var(--il-surface-3) !important; color: var(--il-ink) !important; }
.il-product-page .act-btn.on,
.il-product-page .tf-pill.on,
.il-product-page .tf-pill.active,
.il-product-page .mst-btn.active,
.il-product-page .ind-pill.on {
  border-color: rgba(155, 107, 45, .18) !important;
  background: var(--il-brass-soft) !important;
  color: var(--il-brass) !important;
  box-shadow: none !important;
}

.il-product-page input,
.il-product-page select,
.il-product-page textarea,
.il-auth-page input,
.il-auth-page select,
.il-auth-page textarea,
.il-lens-page input,
.il-lens-page select,
.il-lens-page textarea {
  border: 1px solid var(--il-line-strong) !important;
  border-radius: 8px !important;
  background: var(--il-surface) !important;
  color: var(--il-ink) !important;
  box-shadow: none !important;
}
.il-product-page input:focus,
.il-product-page select:focus,
.il-product-page textarea:focus,
.il-auth-page input:focus,
.il-lens-page input:focus { border-color: var(--il-brass-bright) !important; box-shadow: var(--il-focus) !important; }

.il-product-page table,
.il-lens-page table {
  overflow: hidden;
  border: 1px solid var(--il-line) !important;
  border-radius: 8px !important;
  background: var(--il-surface) !important;
  box-shadow: none !important;
}
.il-product-page table thead th,
.il-lens-page table thead th {
  border-bottom: 1px solid var(--il-line) !important;
  background: var(--il-surface-2) !important;
  color: var(--il-muted) !important;
}
.il-product-page table tbody tr,
.il-lens-page table tbody tr { background: var(--il-surface) !important; }
.il-product-page table tbody tr:nth-child(even),
.il-lens-page table tbody tr:nth-child(even) { background: var(--il-surface-2) !important; }
.il-product-page table td,
.il-lens-page table td { border-bottom-color: var(--il-line) !important; color: var(--il-ink-2) !important; }

.il-product-page .chart-wrap,
#chart-expand-modal .cex-box {
  border-color: var(--il-line) !important;
  background: var(--il-surface) !important;
  background-image: none !important;
}
#chart-expand-modal { background: rgba(4, 7, 6, .78) !important; backdrop-filter: blur(16px) !important; }
#chart-expand-modal .cex-header,
#chart-expand-modal .cex-toolbar,
#il-cex-controls { background: var(--il-surface) !important; border-color: var(--il-line) !important; }
#chart-expand-modal .cex-body { background: var(--il-bg-elevated) !important; background-image: none !important; }
#chart-expand-modal .cex-title { color: var(--il-ink) !important; }
#chart-expand-modal .il-cexc.on,
#chart-expand-modal .cex-tool.active { background: var(--il-brass-soft) !important; color: var(--il-brass) !important; border-color: rgba(155,107,45,.24) !important; }

/* LensScore: sophisticated research report, not a glowing score arcade. */
.il-lens-page { background: var(--il-bg) !important; color: var(--il-ink) !important; }
.il-lens-page main { width: min(calc(100% - 40px), 1240px) !important; padding-block: 38px 72px !important; }
.il-lens-page .search-shell,
.il-lens-page .panel,
.il-lens-page .diligence-rail,
.il-lens-page .company-nav,
.il-lens-page .trend-regime-card,
.il-lens-page .golden-lens-signal {
  border: 1px solid var(--il-line) !important;
  border-radius: var(--il-radius) !important;
  background: var(--il-surface) !important;
  background-image: none !important;
  box-shadow: var(--il-shadow-xs) !important;
}
.il-lens-page .search-shell { padding: clamp(24px, 4vw, 42px) !important; }
.il-lens-page .search-shell h1 { color: var(--il-ink) !important; font-size: clamp(34px, 4vw, 54px) !important; line-height: 1.02 !important; }
.il-lens-page .search-shell .intro { color: var(--il-muted) !important; }
.il-lens-page .ticker-control button,
.il-lens-page .primary-action {
  border: 0 !important;
  border-radius: 8px !important;
  background: #c99a53 !important;
  color: #17120b !important;
  box-shadow: none !important;
}
.il-lens-page .company-nav { padding: 5px !important; }
.il-lens-page .company-nav button { border: 0 !important; border-radius: 8px !important; background: transparent !important; color: var(--il-muted) !important; }
.il-lens-page .company-nav button.active { background: var(--il-brass-soft) !important; color: var(--il-brass) !important; box-shadow: none !important; }
.il-lens-page .score-ring { box-shadow: none !important; filter: saturate(.9); }
.il-lens-page .lens-card,
.il-lens-page .decision-section,
.il-lens-page .zone-group,
.il-lens-page .invalidation-box {
  border-color: var(--il-line) !important;
  border-radius: 8px !important;
  background: var(--il-surface-2) !important;
  background-image: none !important;
  box-shadow: none !important;
}
.il-lens-page .score-card::before,
.il-lens-page .panel::before { opacity: .35 !important; }

/* Public information and account pages. */
.il-static-page,
.il-auth-page { min-height: 100vh; background: var(--il-bg) !important; }
.il-static-page main,
.il-static-page .hero,
.il-static-page .section { color: var(--il-ink) !important; }
.il-static-page .hero,
.il-static-page main#public-main,
.il-static-page .wrap { width: min(calc(100% - 40px), 980px) !important; margin-inline: auto !important; }
.il-static-page .hero { padding-top: 92px !important; }
.il-static-page .hero h1,
.il-static-page main h1 { color: var(--il-ink) !important; font-size: clamp(38px, 5vw, 62px) !important; line-height: 1.02 !important; }
.il-static-page p,
.il-static-page li { color: var(--il-muted) !important; line-height: 1.75 !important; }
.il-static-page .section,
.il-static-page article,
.il-static-page .card,
.il-static-page .source-card,
.il-static-page .step,
.il-static-page .calculator {
  border-color: var(--il-line) !important;
  border-radius: var(--il-radius) !important;
  background: var(--il-surface) !important;
  background-image: none !important;
  box-shadow: var(--il-shadow-xs) !important;
}
.il-static-page footer,
.il-auth-page footer { border-top-color: var(--il-line) !important; color: var(--il-faint) !important; }

.il-auth-page main {
  min-height: calc(100vh - 130px) !important;
  padding: 72px 20px 48px !important;
}
.il-auth-page .auth-card {
  width: min(100%, 460px) !important;
  padding: 38px !important;
  border: 1px solid var(--il-line) !important;
  border-radius: 8px !important;
  background: var(--il-surface) !important;
  background-image: none !important;
  box-shadow: var(--il-shadow-md) !important;
}
.il-auth-page .auth-card::before { content: none !important; }
.il-auth-page .auth-title { color: var(--il-ink) !important; font-size: 28px !important; line-height: 1.05 !important; }
.il-auth-page .auth-title em { color: var(--il-brass) !important; }
.il-auth-page .auth-sub,
.il-auth-page .sec-note { color: var(--il-muted) !important; }
.il-auth-page .btn-primary {
  min-height: 46px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #c99a53 !important;
  color: #17120b !important;
  box-shadow: none !important;
  font-weight: 700 !important;
}
.il-auth-page > nav {
  min-height: 60px !important;
  height: 60px !important;
  padding: 0 clamp(18px, 4vw, 48px) !important;
  border-bottom: 1px solid var(--il-header-line) !important;
  background: rgba(11, 16, 14, .96) !important;
  box-shadow: none !important;
  color: #f4f4ef !important;
  backdrop-filter: blur(18px) saturate(1.15) !important;
}
.il-auth-page > nav .nav-logo {
  color: #f4f4ef !important;
  font-family: "Space Grotesk", "DM Sans", sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: -.035em !important;
}
.il-auth-page > nav .nav-logo img { width: 30px !important; height: 30px !important; filter: none !important; }
.il-auth-page > nav .nav-logo em { color: #d6ad67 !important; }
.il-auth-page > nav .nav-right { color: rgba(242, 244, 241, .58) !important; }
.il-auth-page > nav .nav-right a { color: #f2d9aa !important; }

/* Internal analytics uses the same restrained visual vocabulary. */
.il-admin-page {
  --il-bg: #090d0b;
  --il-surface: #111815;
  --il-surface-2: #151e1a;
  --il-line: #26312c;
  --il-ink: #f2f4f1;
  --il-muted: #9aa59f;
  min-height: 100vh;
  background: var(--il-bg) !important;
  color: var(--il-ink) !important;
}
.il-admin-page .auth-box,
.il-admin-page .stat-card,
.il-admin-page .funnel,
.il-admin-page .chart-wrap,
.il-admin-page .tbl-wrap {
  border: 1px solid var(--il-line) !important;
  border-radius: 8px !important;
  background: var(--il-surface) !important;
  box-shadow: none !important;
}
.il-admin-page .top-bar {
  min-height: 60px !important;
  border-bottom: 1px solid rgba(255,255,255,.09) !important;
  background: #0b100e !important;
}
.il-admin-page .logo,
.il-admin-page .stat-val,
.il-admin-page .funnel-val,
.il-admin-page .auth-box h2 { color: var(--il-ink) !important; }
.il-admin-page .auth-box p,
.il-admin-page .stat-label,
.il-admin-page .stat-sub,
.il-admin-page .funnel-name,
.il-admin-page .last-updated { color: var(--il-muted) !important; }
.il-admin-page .auth-input {
  border-color: var(--il-line) !important;
  background: var(--il-surface-2) !important;
  color: var(--il-ink) !important;
}
.il-admin-page .auth-btn {
  border-radius: 8px !important;
  background: #d2aa67 !important;
  color: #16120c !important;
}
.il-admin-page th { background: var(--il-surface-2) !important; color: var(--il-muted) !important; }
.il-admin-page td { border-bottom-color: var(--il-line) !important; color: #d7ddd9 !important; }

/* Mobile: fewer surfaces, calmer navigation, stronger content rhythm. */
@media (max-width: 960px) {
  #main-nav,
  nav#main-nav.il-static-main-nav {
    min-height: calc(60px + env(safe-area-inset-top, 0px)) !important;
    height: calc(60px + env(safe-area-inset-top, 0px)) !important;
    padding: env(safe-area-inset-top, 0px) max(14px, env(safe-area-inset-right, 0px)) 0 max(14px, env(safe-area-inset-left, 0px)) !important;
  }
  #main-nav .nav-logo,
  #main-nav .il-global-brand {
    flex: 0 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    padding-right: 0 !important;
    border-right: 0 !important;
    font-size: 18px !important;
  }
  #main-nav .nav-logo img,
  #main-nav .il-global-brand img { width: 32px !important; height: 32px !important; }
  .il-product-page #view-home { padding-top: calc(60px + env(safe-area-inset-top, 0px)) !important; }
  .il-product-page #view-tool { padding-top: calc(60px + env(safe-area-inset-top, 0px)) !important; }
}

@media (max-width: 640px) {
  #landing-page .il-landing-hero {
    min-height: 0 !important;
    padding: 42px 20px 48px !important;
    gap: 34px !important;
  }
  #landing-page .il-landing-copy { align-items: flex-start !important; text-align: left !important; }
  #landing-page .il-landing-copy h1 {
    max-width: 530px !important;
    margin-bottom: 18px !important;
    font-size: clamp(39px, 11.4vw, 52px) !important;
    line-height: 1.01 !important;
    text-align: left !important;
  }
  #landing-page .il-landing-copy > p { font-size: 15px !important; line-height: 1.62 !important; text-align: left !important; }
  #landing-page .il-landing-search { margin-top: 24px !important; }
  #landing-page .il-landing-search input { min-width: 0 !important; font-size: 13px !important; }
  #landing-page .il-landing-search button { min-width: 86px !important; padding-inline: 14px !important; }
  #landing-page .il-landing-actions { justify-content: flex-start !important; }
  #landing-page .il-landing-proof { display: grid !important; grid-template-columns: 1fr !important; gap: 7px !important; }
  #landing-page .il-landing-preview { width: 100% !important; }
  #landing-page .il-hero-mock { min-height: 275px !important; border-radius: 8px !important; transform: none !important; }
  #landing-page .ihm-top { padding-inline: 12px !important; }
  #landing-page .ihm-tabs { display: none !important; }
  #landing-page .il-preview-caption { display: none !important; }
  #landing-page .il-capabilities,
  #landing-page .il-workflow-visual { width: 100% !important; padding: 60px 20px !important; }
  #landing-page .il-cap-grid,
  #landing-page .il-workflow-panels { grid-template-columns: 1fr !important; }
  #landing-page .il-cap-card,
  #landing-page .il-wf-panel { padding: 22px !important; }
  #landing-page .il-landing-band,
  #landing-page .il-landing-pricing {
    width: calc(100% - 40px) !important;
    margin-bottom: 36px !important;
    padding: 28px 22px !important;
    border-radius: 8px !important;
  }

  .il-product-page .app-content-scroll { padding: 14px 12px calc(92px + env(safe-area-inset-bottom, 0px)) !important; }
  .il-product-page .tool-welcome { padding: 22px 18px !important; }
  .il-product-page .chart-wrap,
  .il-product-page .panel-box,
  .il-product-page .il-research-panel,
  .il-product-page .il-workspace-card { border-radius: 8px !important; }
  .il-product-page .mobile-sec-tabs {
    margin: 0 -12px 14px !important;
    padding: 6px 12px !important;
    border-width: 0 0 1px !important;
    border-radius: 0 !important;
  }
  .mobile-bottom-nav {
    min-height: calc(66px + env(safe-area-inset-bottom, 0px)) !important;
    height: calc(66px + env(safe-area-inset-bottom, 0px)) !important;
    padding-bottom: env(safe-area-inset-bottom, 0px) !important;
    border-top: 1px solid rgba(255,255,255,.09) !important;
    background: rgba(9, 13, 11, .96) !important;
    box-shadow: none !important;
    backdrop-filter: blur(18px) !important;
  }
  .mobile-bottom-nav .mbn-item { color: rgba(242,244,241,.58) !important; }
  .mobile-bottom-nav .mbn-item.active { color: #e1bd7a !important; background: transparent !important; }

  .il-lens-page main { width: 100% !important; padding: 24px 14px 88px !important; }
  .il-lens-page .search-shell { padding: 24px 18px !important; border-radius: 8px !important; }
  .il-lens-page .search-shell h1 { font-size: 40px !important; }
  .il-lens-page .score-grid,
  .il-lens-page .snapshot-lower,
  .il-lens-page .chart-layout,
  .il-lens-page .drivers-layout,
  .il-lens-page .scenario-layout { gap: 12px !important; }
  .il-lens-page .panel { border-radius: 8px !important; }

  .il-static-page .hero,
  .il-static-page main#public-main,
  .il-static-page .wrap { width: 100% !important; padding-inline: 20px !important; }
  .il-static-page .hero { padding-top: 54px !important; }
  .il-static-page .hero h1,
  .il-static-page main h1 { font-size: 40px !important; }
  .il-auth-page main { padding: 42px 14px 34px !important; }
  .il-auth-page .auth-card { padding: 28px 22px !important; border-radius: 8px !important; }
  .il-auth-page .auth-title { font-size: 28px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
