@import url('https://fonts.googleapis.com/css2?family=Onest:wght@400;450;500;550;600;650;700;800&family=Wix+Madefor+Display:wght@400;500;600;700;800&display=swap');

/* Shared visual language: homepage, public tools and the learning workspace. */
:root {
  --bg: #f8f7f3;
  --paper: #fff;
  --soft: #f1eee8;
  --ink: #242323;
  --muted: #716b66;
  --action: #242323;
  --on-action: #fff;
  --line: #e6e3dd;
  --control: #b6aea7;
  --lavender: #e8d5fa;
  --lilac: #e8d5fa;
  --butter: #f8edae;
  --mint: #d6eec9;
  --sky: #cde7f1;
  --blue: #cde7f1;
  --peach: #f6d8c8;
  --focus: #8d72c6;
  --success: #436d36;
  --error: #943e53;
  --sans: 'Onest', Arial, sans-serif;
  --display: 'Wix Madefor Display', 'Onest', Arial, sans-serif;
  color-scheme: light;
}
body { background: var(--bg); color: var(--ink); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
button, input, textarea, select { font-family: inherit; }
h1, h2, h3, h4, .wordmark, .editorial-heading > h2, .story-copy > h2,
.free-section h2, .feature-story h1, .job-progress h2, .empty-state h2,
.citation-dialog h2, .learning-title, .lesson-title, .podcast-title {
  font-family: var(--display) !important;
  font-weight: 700;
  font-style: normal;
  letter-spacing: -.045em;
}
h1 em, h2 em, h3 em { font-style: normal; }
a, button { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible,
select:focus-visible, summary:focus-visible { outline: 3px solid var(--focus); outline-offset: 3px; }
.button { border-radius: 999px; font-weight: 650; min-height: 46px; transition: background .18s, border-color .18s, transform .18s; }
.button.primary { background: var(--ink); border-color: var(--ink); color: #fff; }
.button.primary:hover { background: #443a42; border-color: #443a42; transform: translateY(-2px); }
.button.secondary { background: transparent; border: 1px solid var(--ink); color: var(--ink); }
.button.secondary:hover { background: var(--soft); }
.wordmark { font-size: 30px; font-weight: 800; letter-spacing: -.075em; color: var(--ink); }
.wordmark > .logo, .wordmark > .brand-star { display: none; }
.public-header { min-height: 80px; padding-top: 18px; padding-bottom: 18px; background: var(--bg); }
.public-nav a { font-size: 13px; font-weight: 600; }
.public-nav a:hover { color: #7e59a4; }
.preview { background: var(--bg); border-radius: 0; box-shadow: none; max-width: none; margin-bottom: 0; }
.review-caption { margin-top: 0; padding-top: 10px; }
.page-width { max-width: 1320px; padding-left: 40px; padding-right: 40px; }
.tool-hero h1, .feature-story h1 { font-size: clamp(40px, 5.2vw, 72px); line-height: 1.06; letter-spacing: -.055em; }
.editorial-heading > h2, .story-copy > h2, .free-section h2 { font-weight: 700; line-height: 1.08; }
.editorial-heading p, .story-copy p { color: var(--muted); }
.popular-tool, .tool-card, .audience, .panel, .source-choice, .answer-option { border-color: var(--line); }
.popular-tool, .tool-card { transition: border-color .18s, background .18s, transform .18s; }
.popular-tool:hover, .tool-card:hover { border-color: #c1a3d6; background: #faf6fd; transform: translateY(-3px); }
.tool-example, .feature-story, .panel { border-radius: 24px; }
.tag, .badge { color: var(--ink); font-weight: 550; }
.extended-footer { border-color: var(--line); background: var(--bg); }
.simple-cta { border-radius: 0; }
.app-header { background: var(--bg); border-color: var(--line); }
.workspace-header-label { color: var(--muted); }
.alpha-note { background: #eee5f3; color: #625469; }
.workspace-navigation { background: var(--bg); border-color: var(--line); }
.workspace-nav-brand, .workspace-tools-heading, .workspace-nav-footer { border-color: var(--line); }
.workspace-nav-link, .workspace-tool-link { border-radius: 12px; }
.workspace-nav-link[aria-current=page], .workspace-tool-link[aria-current=page] { background: var(--lavender); color: var(--ink); }
.workspace-nav-link:hover, .workspace-tool-link:hover { background: #eee8f1; }
.workspace-new { box-shadow: none; }
.workspace-tool-search { background: #fff; border-color: var(--line); border-radius: 999px; }
.workspace-nav-footer { color: var(--muted); }
.workspace-footer-star { color: #9b78bf; }
.workspace-navigation::backdrop { background: #24232366; }
.panel { box-shadow: none; }
.panel.pastel { background: var(--lavender); }
.field > input, .field > textarea, .field > select, .search { border-color: var(--control); border-radius: 14px; }
.field > input:focus, .field > textarea:focus, .field > select:focus { border-color: var(--focus); }
.account-home { color: var(--ink); background: var(--lavender); border-radius: 999px; }
.job-progress { background: #eee5f3; }
.job-progress .job-progress-copy h2 { font-family: var(--display) !important; font-weight: 700; }
.learning-progress progress::-webkit-progress-value { background: #a17bbe; }
.learning-progress progress::-moz-progress-bar { background: #a17bbe; }
.item-actions-menu { border-color: var(--line); box-shadow: 0 12px 30px #24232316; }
.item-actions-menu button:hover { background: #f2eaf8; }
@media (max-width: 760px) {
  .page-width { padding-left: 20px; padding-right: 20px; }
  .public-header { min-height: 68px; }
  .public-header .button { font-size: 11px; }
  .tool-hero h1, .feature-story h1 { font-size: clamp(35px, 9vw, 52px); }
  .panel { border-radius: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
