/* Editorial Ink visual system. Loaded after page-local CSS. */
:root {
  --ei-ground: #FAF9F6;
  --ei-surface: #FDFCF9;
  --ei-surface-muted: #F1EDE4;
  --ei-hairline: #E7E2D8;
  --ei-rail: #211E1A;
  --ei-rail-text: #B7AE9F;
  --ei-rail-active: #312C25;
  --ei-ink: #171512;
  --ei-muted: #6A6152;
  --ei-subtle: #8A8069;
  --ei-accent: #0F5C4E;
  --ei-accent-pressed: #0B453A;
  --ei-action: #171512;
  --ei-action-text: #F4EFE6;
  --ei-secondary-border: #D8D2C4;
  --ei-secondary-text: #4A4438;
  --ei-verified-bg: #EAF3EF;
  --ei-verified-fg: #0F5C4E;
  --ei-warn-bg: #FFF7E8;
  --ei-warn-fg: #8A5A12;
  --ei-danger-bg: #FFF1EE;
  --ei-danger-fg: #A33A2E;
  --ei-radius-sm: 10px;
  --ei-radius-md: 12px;
  --ei-radius-lg: 14px;
  --ei-shadow: 0 6px 20px rgba(23, 21, 18, .06);
  --ei-shadow-raised: 0 12px 32px rgba(23, 21, 18, .09);
  --ei-font-serif: "Iowan Old Style", "Palatino Linotype", Georgia, "Songti SC", "Source Han Serif SC", serif;
  --ei-font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", Roboto, sans-serif;

  --action-blue: var(--ei-accent);
  --action-blue-dk: var(--ei-accent-pressed);
  --ink: var(--ei-ink);
  --ink-muted-80: var(--ei-muted);
  --ink-muted-48: var(--ei-subtle);
  --canvas: var(--ei-surface);
  --parchment: var(--ei-ground);
  --hairline: var(--ei-hairline);
  --success-green: var(--ei-accent);
  --on-dark: var(--ei-action-text);

  --l-ink: var(--ei-ink);
  --l-canvas: var(--ei-surface);
  --l-parchment: var(--ei-ground);
  --l-hairline: var(--ei-hairline);
  --l-ink-muted-48: var(--ei-subtle);
  --l-ink-muted-80: var(--ei-muted);
  --l-action-blue: var(--ei-accent);
  --l-action-blue-dk: var(--ei-accent-pressed);
}

[data-theme="dark"] {
  --ei-ground: #171512;
  --ei-surface: #211E1A;
  --ei-surface-muted: #2A261F;
  --ei-hairline: #3B352C;
  --ei-rail: #171512;
  --ei-rail-text: #B7AE9F;
  --ei-rail-active: #312C25;
  --ei-ink: #F4EFE6;
  --ei-muted: #CFC6B6;
  --ei-subtle: #A79B88;
  --ei-accent: #78B8A7;
  --ei-accent-pressed: #9DD0C2;
  --ei-action: #F4EFE6;
  --ei-action-text: #171512;
  --ei-secondary-border: #4C4438;
  --ei-secondary-text: #D8D2C4;
  --ei-verified-bg: #17352E;
  --ei-verified-fg: #9DD0C2;
  --ei-warn-bg: #3A2A14;
  --ei-warn-fg: #F1C16B;
  --ei-danger-bg: #3A1F1A;
  --ei-danger-fg: #E7988E;
  --ei-shadow: 0 8px 28px rgba(0, 0, 0, .28);
  --ei-shadow-raised: 0 18px 46px rgba(0, 0, 0, .38);

  --action-blue: var(--ei-accent);
  --action-blue-dk: var(--ei-accent-pressed);
  --ink: var(--ei-ink);
  --ink-muted-80: var(--ei-muted);
  --ink-muted-48: var(--ei-subtle);
  --canvas: var(--ei-surface);
  --parchment: var(--ei-ground);
  --hairline: var(--ei-hairline);
  --success-green: var(--ei-accent);
  --on-dark: var(--ei-action-text);
}

html,
body {
  background: var(--ei-ground);
  color: var(--ei-ink);
}

body,
button,
input,
textarea,
select {
  font-family: var(--ei-font-ui) !important;
  letter-spacing: 0 !important;
}

a {
  color: var(--ei-accent);
}

::selection {
  background: rgba(15, 92, 78, .16);
}

h1,
h2,
h3,
.display,
.typo-hero,
.typo-display-lg,
.section-headline,
.hero h1,
.auth-hero h1,
.logo h1,
.empty-hero-title,
.doc-title,
.workspace-brand,
.workspace-pane-title,
.modal h2,
.doc-drawer-header h2 {
  font-family: var(--ei-font-serif) !important;
  text-wrap: balance;
}

.trust-num,
.stat-num,
.accuracy-num,
.price-amount,
.auth-stat-num,
.workspace-kpi-value,
.word-count,
.analytics-stat-value,
.workspace-account-name {
  font-variant-numeric: tabular-nums;
}

input,
textarea,
select {
  border-color: var(--ei-hairline) !important;
  background: var(--ei-surface) !important;
  color: var(--ei-ink) !important;
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--ei-accent) !important;
  box-shadow: 0 0 0 3px rgba(15, 92, 78, .12) !important;
  outline: none;
}

input::placeholder,
textarea::placeholder {
  color: var(--ei-subtle) !important;
}

/* Shared buttons */
.btn-primary,
.workspace-search-button,
.workspace-new-doc,
.workspace-btn.primary,
.workspace-action-btn.primary,
.empty-hero-btn.primary,
.doc-setup-btn.primary,
.latex-modal-btn.primary,
.rv-run-btn:hover,
.proof-run-btn,
.chat-send,
.comment-send,
.vh-save-btn {
  background: var(--ei-action) !important;
  border-color: var(--ei-action) !important;
  color: var(--ei-action-text) !important;
}

.workspace-new-doc,
.workspace-search-button,
.sr-cite-btn,
.cite-popup-btn.primary {
  background: var(--ei-accent) !important;
  border-color: var(--ei-accent) !important;
  color: var(--ei-action-text) !important;
}

.btn-primary:hover,
.workspace-new-doc:hover,
.workspace-search-button:hover,
.workspace-btn.primary:hover,
.workspace-action-btn.primary:hover,
.empty-hero-btn.primary:hover,
.doc-setup-btn.primary:hover,
.latex-modal-btn.primary:hover,
.sr-cite-btn:hover,
.cite-popup-btn.primary:hover {
  background: var(--ei-accent-pressed) !important;
  border-color: var(--ei-accent-pressed) !important;
  color: var(--ei-action-text) !important;
  text-decoration: none;
}

body:not(.unified-workspace) .btn-primary,
.auth-card .btn-primary {
  background: var(--ei-accent) !important;
  border-color: var(--ei-accent) !important;
  color: var(--ei-action-text) !important;
}

body:not(.unified-workspace) .btn-primary:hover,
.auth-card .btn-primary:hover {
  background: var(--ei-accent-pressed) !important;
  border-color: var(--ei-accent-pressed) !important;
  color: var(--ei-action-text) !important;
}

.btn-secondary,
.workspace-btn,
.workspace-btn.ghost,
.workspace-action-btn,
.empty-hero-btn,
.doc-setup-btn.secondary,
.latex-modal-btn.secondary,
.cite-popup-btn,
.find-replace-btn,
.outline-mini-btn,
.patch-mini-btn,
.tb-dropdown-item,
.workspace-top-action,
.workspace-ai-entry,
.workspace-rail-link {
  background: transparent !important;
  border: 1px solid var(--ei-secondary-border) !important;
  color: var(--ei-secondary-text) !important;
}

.btn-secondary:hover,
.workspace-btn:hover,
.workspace-btn.ghost:hover,
.workspace-action-btn:hover,
.empty-hero-btn:hover,
.cite-popup-btn:hover,
.find-replace-btn:hover,
.outline-mini-btn:hover,
.patch-mini-btn:hover,
.tb-dropdown-item:hover,
.workspace-top-action:hover,
.workspace-ai-entry:hover,
.workspace-rail-link:hover {
  background: var(--ei-surface-muted) !important;
  border-color: var(--ei-hairline) !important;
  color: var(--ei-ink) !important;
  text-decoration: none;
}

.tile--dark .btn-secondary,
.tile--dark2 .btn-secondary,
.hero .btn-secondary {
  background: transparent !important;
  border-color: var(--ei-secondary-border) !important;
  color: var(--ei-action-text) !important;
}

.tile--dark .btn-secondary:hover,
.tile--dark2 .btn-secondary:hover,
.hero .btn-secondary:hover {
  background: rgba(244, 239, 230, .08) !important;
  border-color: var(--ei-action-text) !important;
  color: var(--ei-action-text) !important;
}

/* Workspace shell */
body.unified-workspace {
  background: var(--ei-ground) !important;
  color: var(--ei-ink) !important;
}

.workspace-shell,
.unified-workspace .main,
.unified-workspace .editor-panel {
  background: var(--ei-ground) !important;
}

.workspace-rail {
  background: var(--ei-rail) !important;
  color: var(--ei-rail-text) !important;
  border-right: 1px solid rgba(244, 239, 230, .06);
}

.workspace-brand {
  color: var(--ei-action-text) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}

.workspace-brand-mark {
  background: var(--ei-accent) !important;
  color: var(--ei-action-text) !important;
  border-radius: 9px !important;
}

.workspace-new-doc {
  border-radius: var(--ei-radius-sm) !important;
  box-shadow: 0 6px 18px rgba(15, 92, 78, .2);
}

.workspace-nav-item {
  border-radius: var(--ei-radius-sm) !important;
  color: var(--ei-rail-text) !important;
}

.workspace-nav-item:hover,
.workspace-nav-item.active {
  background: var(--ei-rail-active) !important;
  color: var(--ei-action-text) !important;
}

.workspace-nav-icon {
  color: var(--ei-accent) !important;
}

.workspace-privacy-pill {
  background: rgba(15, 92, 78, .12) !important;
  border-color: rgba(120, 184, 167, .35) !important;
  color: var(--ei-action-text) !important;
  border-radius: var(--ei-radius-sm) !important;
}

.workspace-privacy-pill.cloud {
  background: rgba(138, 90, 18, .18) !important;
  border-color: rgba(241, 193, 107, .38) !important;
  color: #F4D39A !important;
}

.workspace-privacy-sub {
  color: var(--ei-rail-text) !important;
}

.unified-workspace .top-bar,
.unified-workspace .toolbar,
.unified-workspace .side-panel,
.ref-header,
.chat-header,
.doc-drawer,
.tb-dropdown-menu,
.lang-menu,
.modal,
.cite-popup,
.slash-palette,
.at-cite-popup,
.bubble-menu,
.latex-modal,
.img-insert-modal,
.doc-setup-card {
  background: var(--ei-surface) !important;
  border-color: var(--ei-hairline) !important;
  color: var(--ei-ink) !important;
}

.unified-workspace .top-bar,
.unified-workspace .toolbar {
  box-shadow: none !important;
}

.unified-workspace .doc-title {
  color: var(--ei-ink) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
}

.unified-workspace .doc-title:hover,
.unified-workspace .doc-title:focus {
  background: var(--ei-ground) !important;
  border-color: var(--ei-hairline) !important;
}

.workspace-account,
.unified-workspace .save-indicator,
.unified-workspace .lang-dropdown-btn,
.unified-workspace .theme-toggle,
.workspace-ac-toggle {
  background: var(--ei-surface-muted) !important;
  border: 1px solid var(--ei-hairline) !important;
  color: var(--ei-secondary-text) !important;
  border-radius: 999px !important;
}

.workspace-ac-dot {
  background: var(--ei-accent) !important;
}

.workspace-ac-toggle:not(.active) .workspace-ac-dot {
  background: var(--ei-subtle) !important;
}

.workspace-logout-btn {
  background: var(--ei-rail-active) !important;
  color: var(--ei-action-text) !important;
}

.workspace-logout-btn:hover {
  background: var(--ei-accent) !important;
}

.workspace-verified-badge,
.workspace-badge.verified,
.workspace-btn.success,
.sr-badge,
.ref-trust-badge,
.cite-trust.verified,
.workspace-card.active .workspace-badge,
.workspace-inline-status.success {
  background: var(--ei-verified-bg) !important;
  border-color: rgba(15, 92, 78, .18) !important;
  color: var(--ei-verified-fg) !important;
}

.workspace-verified-badge.warning,
.workspace-badge.warn,
.sr-badge.unverified {
  background: var(--ei-warn-bg) !important;
  color: var(--ei-warn-fg) !important;
  border-color: rgba(138, 90, 18, .18) !important;
}

.workspace-verified-badge.error,
.workspace-badge.danger,
.workspace-btn.danger {
  background: var(--ei-danger-bg) !important;
  color: var(--ei-danger-fg) !important;
  border-color: rgba(163, 58, 46, .18) !important;
}

.tb-btn {
  border-radius: 8px !important;
  color: var(--ei-muted) !important;
}

.tb-btn:hover,
.tb-btn.active {
  background: var(--ei-surface-muted) !important;
  color: var(--ei-accent) !important;
}

.unified-workspace .editor-wrapper {
  background: var(--ei-surface) !important;
  border: 1px solid var(--ei-hairline) !important;
  border-radius: var(--ei-radius-md) !important;
  box-shadow: var(--ei-shadow) !important;
}

.unified-workspace #editor,
#editor {
  background: var(--ei-surface) !important;
  color: var(--ei-ink) !important;
  font-family: var(--ei-font-serif) !important;
  font-size: 17px !important;
  line-height: 1.72 !important;
}

#editor:empty::before {
  color: var(--ei-subtle) !important;
}

#editor h1,
#editor h2,
#editor h3 {
  color: var(--ei-ink) !important;
  font-family: var(--ei-font-serif) !important;
  text-wrap: balance;
}

.empty-hero {
  background: var(--ei-surface) !important;
  border: 1px solid var(--ei-hairline) !important;
  border-radius: var(--ei-radius-lg) !important;
  box-shadow: var(--ei-shadow) !important;
}

.empty-hero-title {
  color: var(--ei-ink) !important;
  font-size: 24px !important;
}

.empty-hero-sub,
.workspace-pane-subtitle,
.workspace-section-sub,
.workspace-card-meta,
.workspace-card-text,
.sr-authors,
.sr-meta,
.search-status,
.workspace-empty,
.workspace-inline-status,
.analytics-section-title,
.analytics-stat-label,
.chat-empty,
.pdf-upload-hint,
.ref-meta,
.ref-abstract,
.rv-intro,
.rv-card p {
  color: var(--ei-muted) !important;
}

.side-pane {
  background: var(--ei-surface) !important;
}

.workspace-pane-heading {
  background: var(--ei-surface) !important;
  border-bottom: 1px solid var(--ei-hairline) !important;
}

.workspace-pane-title,
.workspace-section-title,
.workspace-card-title,
.sr-title,
.ref-title,
.analytics-gauge-label,
.workspace-result-head,
.doc-card-title {
  color: var(--ei-ink) !important;
}

.workspace-section-card,
.workspace-card,
.workspace-kpi,
.workspace-result-item,
.search-result-card,
.ref-item,
.pdf-item,
.rv-card,
.outline-section-card,
.patch-item,
.process-node,
.template-card,
.doc-card {
  background: var(--ei-surface) !important;
  border: 1px solid var(--ei-hairline) !important;
  border-radius: var(--ei-radius-md) !important;
  box-shadow: var(--ei-shadow) !important;
}

.workspace-card:hover,
.search-result-card:hover,
.ref-item:hover,
.pdf-item:hover,
.doc-card:hover,
.template-card:hover {
  border-color: rgba(15, 92, 78, .28) !important;
  box-shadow: var(--ei-shadow-raised) !important;
}

.workspace-card.active,
.doc-card.active {
  border-color: var(--ei-accent) !important;
  background: var(--ei-verified-bg) !important;
  box-shadow: 0 0 0 1px rgba(15, 92, 78, .18), var(--ei-shadow) !important;
}

.workspace-empty,
.pdf-upload-area {
  background: rgba(253, 252, 249, .65) !important;
  border-color: var(--ei-secondary-border) !important;
  border-radius: var(--ei-radius-md) !important;
}

.workspace-segmented,
.chat-mode-toggle {
  background: var(--ei-surface-muted) !important;
  border-radius: var(--ei-radius-sm) !important;
}

.workspace-segment-btn,
.chat-mode-btn {
  color: var(--ei-muted) !important;
  border-radius: 8px !important;
}

.workspace-segment-btn.active,
.chat-mode-btn.active {
  background: var(--ei-surface) !important;
  color: var(--ei-accent) !important;
  box-shadow: 0 1px 3px rgba(23, 21, 18, .08) !important;
}

.sr-cite-btn {
  border-radius: 8px !important;
  font-weight: 800 !important;
}

.sr-related-btn {
  border-color: var(--ei-secondary-border) !important;
  color: var(--ei-secondary-text) !important;
}

.chat-bubble.ai {
  background: var(--ei-ground) !important;
  border: 1px solid var(--ei-hairline) !important;
  color: var(--ei-ink) !important;
}

.chat-bubble.user {
  background: var(--ei-accent) !important;
  color: var(--ei-action-text) !important;
}

.toast,
.ai-indicator {
  background: var(--ei-rail) !important;
  color: var(--ei-action-text) !important;
  border: 1px solid rgba(244, 239, 230, .12) !important;
}

.modal-overlay,
.latex-modal-overlay,
.img-insert-overlay,
.doc-setup-overlay,
.doc-drawer-overlay {
  background: rgba(23, 21, 18, .42) !important;
}

.modal,
.latex-modal,
.img-insert-modal,
.doc-setup-card,
.doc-drawer,
.cite-popup {
  border-radius: var(--ei-radius-lg) !important;
  box-shadow: var(--ei-shadow-raised) !important;
}

.modal h2,
.latex-modal-title,
.img-insert-title,
.doc-setup-title {
  color: var(--ei-ink) !important;
}

.kbd {
  background: var(--ei-ground) !important;
  border-color: var(--ei-hairline) !important;
  color: var(--ei-secondary-text) !important;
}

.find-replace-bar {
  background: var(--ei-surface) !important;
  border-color: var(--ei-hairline) !important;
  box-shadow: var(--ei-shadow-raised) !important;
}

.workspace-check-highlight,
.find-highlight {
  background: #F6E7AA !important;
  box-shadow: 0 0 0 2px rgba(138, 90, 18, .2) !important;
}

/* Landing page */
body:not(.unified-workspace) {
  background: var(--ei-ground) !important;
  color: var(--ei-ink) !important;
}

.gnav {
  background: var(--ei-rail) !important;
  border-bottom: 1px solid rgba(244, 239, 230, .08);
}

.gnav-brand {
  color: var(--ei-action-text) !important;
  font-family: var(--ei-font-serif) !important;
  font-size: 16px !important;
}

.gnav-brand::before {
  content: "";
  width: 21px;
  height: 21px;
  display: inline-block;
  margin-right: 8px;
  vertical-align: -5px;
  border-radius: 6px;
  background: var(--ei-accent);
}

.gnav-links a,
.gnav-login,
.gnav-lang,
.theme-toggle-nav {
  color: var(--ei-rail-text) !important;
}

.gnav-links a:hover,
.gnav-login:hover,
.gnav-lang:hover,
.theme-toggle-nav:hover {
  color: var(--ei-action-text) !important;
}

.tile {
  background: var(--ei-ground) !important;
}

.tile--white,
.tile--parchment {
  background: var(--ei-ground) !important;
}

.tile--dark,
.tile--dark2,
.hero,
#accuracy,
#how-it-works,
#demo,
#waitlist {
  background: var(--ei-rail) !important;
  color: var(--ei-action-text) !important;
}

.hero {
  min-height: 88vh !important;
}

.hero h1 {
  color: var(--ei-action-text) !important;
  font-weight: 700 !important;
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
}

.hero-sub,
.tile--dark .section-intro,
.tile--dark2 .section-intro,
#waitlist .section-intro {
  color: #D8D2C4 !important;
}

.section-eyebrow,
.tile--dark .section-eyebrow,
.tile--dark2 .section-eyebrow {
  color: var(--ei-accent) !important;
  font-family: var(--ei-font-ui) !important;
  font-weight: 800 !important;
  text-transform: uppercase;
}

.section-headline {
  color: var(--ei-ink) !important;
  font-weight: 700 !important;
}

.tile--dark .section-headline,
.tile--dark2 .section-headline,
#waitlist .section-headline,
#accuracy .section-headline,
#how-it-works .section-headline,
#demo .section-headline {
  color: var(--ei-action-text) !important;
}

.section-intro,
.stat-desc,
.feature-card p,
.price-features,
.pricing-early,
.faq-item .faq-answer {
  color: var(--ei-muted) !important;
}

.stat-card,
.feature-card,
.testimonial-card,
.price-card,
.accuracy-card,
.demo-paper,
.demo-empty {
  background: var(--ei-surface) !important;
  border: 1px solid var(--ei-hairline) !important;
  border-radius: var(--ei-radius-lg) !important;
  box-shadow: var(--ei-shadow) !important;
}

.stat-card:hover,
.feature-card:hover,
.price-card:hover,
.testimonial-card:hover {
  box-shadow: var(--ei-shadow-raised) !important;
}

.stat-num,
.trust-num,
.price-amount,
.comparison-table .col-us,
.check,
.feature-icon,
.testimonial-quote::before,
.price-features li::before,
.footer-links a:hover,
.demo-doi a,
.demo-verified,
.waitlist-msg.success {
  color: var(--ei-accent) !important;
}

.feature-icon,
.workflow-num {
  background: var(--ei-verified-bg) !important;
  color: var(--ei-accent) !important;
  border-radius: var(--ei-radius-sm) !important;
}

.feature-card h3,
.testimonial-quote,
.testimonial-name,
.price-name,
.faq-item summary,
.comparison-table td:first-child {
  color: var(--ei-ink) !important;
}

.price-card.featured {
  border-color: var(--ei-accent) !important;
  box-shadow: 0 0 0 1px rgba(15, 92, 78, .18), var(--ei-shadow-raised) !important;
}

.price-badge {
  background: var(--ei-accent) !important;
  color: var(--ei-action-text) !important;
}

.comparison-table th,
.comparison-table td {
  background: var(--ei-surface) !important;
  border-bottom-color: var(--ei-hairline) !important;
  color: var(--ei-muted) !important;
}

.comparison-table th {
  color: var(--ei-subtle) !important;
}

.faq-item {
  border-bottom-color: var(--ei-hairline) !important;
}

.demo-search input,
.waitlist-form input {
  border-radius: var(--ei-radius-md) !important;
}

.demo-paper h4 {
  color: var(--ei-ink) !important;
}

.demo-meta,
.demo-note,
.waitlist-count,
.footer-copy,
.testimonial-role,
.price-amount span {
  color: var(--ei-subtle) !important;
}

.footer {
  background: var(--ei-surface-muted) !important;
}

.footer-links a {
  color: var(--ei-secondary-text) !important;
}

.accuracy-card--bad {
  background: var(--ei-danger-bg) !important;
  border-color: rgba(163, 58, 46, .28) !important;
}

.accuracy-card--good {
  background: var(--ei-verified-bg) !important;
  border-color: rgba(15, 92, 78, .24) !important;
}

.accuracy-card--bad .accuracy-label,
.accuracy-card--bad .accuracy-num {
  color: var(--ei-danger-fg) !important;
}

.accuracy-card--good .accuracy-label,
.accuracy-card--good .accuracy-num {
  color: var(--ei-verified-fg) !important;
}

.accuracy-card--bad .accuracy-fill {
  background: var(--ei-danger-fg) !important;
}

.accuracy-card--good .accuracy-fill {
  background: var(--ei-accent) !important;
}

/* Auth page */
.auth-layout {
  background: var(--ei-ground) !important;
}

.auth-hero {
  background: var(--ei-rail) !important;
  color: var(--ei-action-text) !important;
}

.auth-hero h1 {
  color: var(--ei-action-text) !important;
  font-size: 46px !important;
  font-weight: 700 !important;
}

.auth-hero-tagline,
.auth-feature-desc,
.auth-stat-label {
  color: #D8D2C4 !important;
}

.auth-feature-icon,
.auth-stat-num {
  color: var(--ei-accent) !important;
}

.auth-feature-title {
  color: var(--ei-action-text) !important;
}

.auth-stats {
  border-top-color: rgba(244, 239, 230, .14) !important;
}

.auth-form-panel {
  background: var(--ei-ground) !important;
}

.auth-card {
  background: var(--ei-surface) !important;
  border: 1px solid var(--ei-hairline) !important;
  border-radius: var(--ei-radius-lg) !important;
  box-shadow: var(--ei-shadow-raised) !important;
}

.logo h1 {
  color: var(--ei-ink) !important;
  font-weight: 700 !important;
}

.logo p,
.form-group label,
.links,
.divider,
.nav-links a {
  color: var(--ei-muted) !important;
}

.tabs {
  border-bottom-color: var(--ei-hairline) !important;
}

.tab {
  color: var(--ei-subtle) !important;
  font-family: var(--ei-font-ui) !important;
  font-size: 16px !important;
}

.tab.active {
  color: var(--ei-accent) !important;
  border-bottom-color: var(--ei-accent) !important;
}

.tab:hover:not(.active),
.nav-links a:hover,
.links a:hover {
  color: var(--ei-accent) !important;
}

.auth-card a {
  color: var(--ei-accent) !important;
}

.form-group input {
  border-radius: var(--ei-radius-md) !important;
}

.btn {
  border-radius: var(--ei-radius-md) !important;
  font-weight: 800 !important;
}

.btn-google {
  background: var(--ei-surface) !important;
  border-color: var(--ei-secondary-border) !important;
  color: var(--ei-secondary-text) !important;
}

.btn-google:hover {
  background: var(--ei-surface-muted) !important;
}

.error-msg {
  background: var(--ei-danger-bg) !important;
  color: var(--ei-danger-fg) !important;
}

.success-msg {
  background: var(--ei-verified-bg) !important;
  color: var(--ei-verified-fg) !important;
}

.lang-btn,
.theme-toggle {
  background: var(--ei-surface) !important;
  border-color: var(--ei-hairline) !important;
  color: var(--ei-secondary-text) !important;
}

.lang-option {
  color: var(--ei-muted) !important;
}

.lang-option:hover,
.lang-option.active {
  background: var(--ei-verified-bg) !important;
  color: var(--ei-accent) !important;
}

/* Dark theme final pass */
[data-theme="dark"] .tile--white,
[data-theme="dark"] .tile--parchment,
[data-theme="dark"] .auth-form-panel,
[data-theme="dark"] .workspace-shell,
[data-theme="dark"] .unified-workspace .main,
[data-theme="dark"] .unified-workspace .editor-panel {
  background: var(--ei-ground) !important;
}

[data-theme="dark"] .stat-card,
[data-theme="dark"] .feature-card,
[data-theme="dark"] .testimonial-card,
[data-theme="dark"] .price-card,
[data-theme="dark"] .workspace-section-card,
[data-theme="dark"] .workspace-card,
[data-theme="dark"] .search-result-card,
[data-theme="dark"] .ref-item,
[data-theme="dark"] .pdf-item,
[data-theme="dark"] .auth-card,
[data-theme="dark"] .modal,
[data-theme="dark"] .doc-drawer,
[data-theme="dark"] .cite-popup,
[data-theme="dark"] .unified-workspace .editor-wrapper,
[data-theme="dark"] .unified-workspace #editor {
  background: var(--ei-surface) !important;
  border-color: var(--ei-hairline) !important;
  color: var(--ei-ink) !important;
}

[data-theme="dark"] .section-headline,
[data-theme="dark"] .feature-card h3,
[data-theme="dark"] .testimonial-quote,
[data-theme="dark"] .testimonial-name,
[data-theme="dark"] .price-name,
[data-theme="dark"] .faq-item summary,
[data-theme="dark"] .workspace-pane-title,
[data-theme="dark"] .workspace-card-title,
[data-theme="dark"] .sr-title,
[data-theme="dark"] .logo h1 {
  color: var(--ei-ink) !important;
}

[data-theme="dark"] .section-intro,
[data-theme="dark"] .stat-desc,
[data-theme="dark"] .feature-card p,
[data-theme="dark"] .price-features,
[data-theme="dark"] .faq-item .faq-answer,
[data-theme="dark"] .workspace-pane-subtitle,
[data-theme="dark"] .workspace-section-sub,
[data-theme="dark"] .workspace-card-text,
[data-theme="dark"] .sr-authors,
[data-theme="dark"] .sr-meta {
  color: var(--ei-muted) !important;
}

@media (max-width: 900px) {
  .hero {
    min-height: 82vh !important;
  }

  .auth-hero h1 {
    font-size: 32px !important;
  }
}

/* Rail footer sits on the dark rail in BOTH themes — force light, readable text */
.workspace-rail-link {
  color: var(--ei-rail-text) !important;
  border-color: rgba(244, 239, 230, .14) !important;
}
.workspace-rail-link:hover {
  background: var(--ei-rail-active) !important;
  border-color: rgba(244, 239, 230, .30) !important;
  color: #F4EFE6 !important;
}
.workspace-privacy-pill {
  color: #F4EFE6 !important;
}

/* Hero tile is dark in both themes — force light text/controls */
.hero h1 { color: #F4EFE6 !important; }
.hero .btn-secondary { color: #F4EFE6 !important; border-color: rgba(244, 239, 230, .5) !important; }
.hero .btn-secondary:hover { color: #F4EFE6 !important; border-color: #F4EFE6 !important; background: rgba(244, 239, 230, .10) !important; }

/* Logout pill sits on the dark rail-active in both themes; hover bg is accent */
.workspace-logout-btn { color: #F4EFE6 !important; }
.workspace-logout-btn:hover { color: var(--ei-action-text) !important; }
