/* Shared public theme. React, generated guides and standalone documents load
   this file before paint; legacy layouts consume the same semantic tokens. */
html[data-site-theme="tech"] {
  color-scheme: light;
  background: #ffffff;
  --bg-primary: #ffffff;
  --bg-secondary: #f4f7fb;
  --bg-panel: #ffffff;
  --bg-panel-soft: #f4f7fb;
  --ink: #101820;
  --ink-strong: #101820;
  --text-primary: #101820;
  --text-secondary: #526073;
  --text-muted: #657286;
  --line: #d6dfe9;
  --line-strong: #9eadc2;
  --accent: #0757ff;
  --accent-strong: #0049df;
  --accent-soft: #eef4ff;
  --accent-line: #b9ceff;
  --accent-purple: #0757ff;
  --accent-blue: #0757ff;
  --accent-glow: transparent;
  --navy: #17212b;
  --navy-strong: #101820;
  --navy-soft: #f4f7fb;
  --navy-line: #d6dfe9;
  --glass-bg: #ffffff;
  --glass-border: #d6dfe9;
  --glass-hover: #f4f7fb;
  --shadow-sm: none;
  --shadow-md: none;
  --shadow-lg: none;
  --tint-022: rgba(16,24,32,.022);
  --tint-025: rgba(16,24,32,.025);
  --tint-028: rgba(16,24,32,.028);
  --tint-032: rgba(16,24,32,.032);
  --tint-035: rgba(16,24,32,.035);
  --tint-06: rgba(16,24,32,.06);
  --tint-08: rgba(16,24,32,.08);
  --tint-10: rgba(16,24,32,.10);
  --tint-11: rgba(16,24,32,.11);
  --tint-12: rgba(16,24,32,.12);
  --tint-13: rgba(16,24,32,.13);
  --tint-14: rgba(16,24,32,.14);
  --tint-15: rgba(16,24,32,.15);
  --scrim: rgba(16,24,32,.4);
  --placeholder-ink: #657286;
  --font-main: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
  --cta-final-bg: #0757ff;
  --cta-final-bg-hover: #0049df;
  --cta-final-line: #0757ff;
  --cta-final-ink: #ffffff;
  --fm-input-bg: #ffffff;
  --fm-error: #b42318;
  --fm-slot-selected: #0757ff;
}
html[data-site-theme="tech"] body {
  color: var(--text-secondary);
  background: var(--bg-primary);
  font-family: var(--font-main);
}
html[data-site-theme="tech"] .fm-page {
  --font-display: var(--font-main);
  --hairline: var(--line);
}
html[data-site-theme="tech"] .pro-page :is(h1, h2, h3),
html[data-site-theme="tech"] body[data-theme="tech"] :is(h1, h2, h3) {
  color: var(--ink);
  font-family: var(--font-main);
  font-weight: 650;
  letter-spacing: -.03em;
}
html[data-site-theme="tech"] :is(a, button, input, select, textarea):focus-visible {
  outline: 3px solid var(--accent);
  outline-offset: 4px;
}
html[data-site-theme="tech"] .nav-header {
  background: #ffffff;
  backdrop-filter: none;
  border-color: var(--line);
}
html[data-site-theme="tech"] :is(.pro-brand-sub, .fm-progress, .fm-chapter-rail) { display: none; }
html[data-site-theme="tech"] .pro-brand-link { color: var(--ink); }
html[data-site-theme="tech"] .pro-nav-links a { font: 500 14px/1.5 var(--font-main); text-transform: none; letter-spacing: normal; }
html[data-site-theme="tech"] .pro-brand-name { font-size: 20px; letter-spacing: -.035em; }
html[data-site-theme="tech"] .pro-nav-cta { border-color: transparent; border-radius: 7px; min-height: 44px; }
html[data-site-theme="tech"] .pro-secondary-link { background: #ffffff; border-color: var(--line); border-radius: 7px; }
html[data-site-theme="tech"] :is(.fm-em, .fm-em::after) { background-image: none; }
html[data-site-theme="tech"] .fm-jobfile { border-left: 0; border-right: 0; border-radius: 0; background: #f4f7fb; }
html[data-site-theme="tech"] :is(.glass-panel, .fm-file-card, .work-detail-panel) { box-shadow: none; border-radius: 7px; }
html[data-site-theme="tech"] .work-detail-panel { padding: 0; border: 0; background: transparent; }
html[data-site-theme="tech"] .work-hero .pro-hero-copy { max-width: 860px; }
html[data-site-theme="tech"] .work-hero h1 { font-size: clamp(36px, 4.55vw, 60px); line-height: 1.08; }
html[data-site-theme="tech"] :is(.pro-advisor-note, .pro-boundary-panel, .free-kit-advisor-panel, .scorecard-preview-card) {
  background: var(--bg-panel-soft); border-color: var(--line);
}
html[data-site-theme="tech"] .pro-homepage-final-actions { background: #17212b; border-color: #17212b; border-radius: 7px; }
html[data-site-theme="tech"] .pro-homepage-final-actions :is(h2, h3) { color: #ffffff; }
html[data-site-theme="tech"] .pro-homepage-final-actions p { color: #c6d0dc; }
html[data-site-theme="tech"] .pro-homepage-final-actions .pro-card-label { color: #67b7ff; }
html[data-site-theme="tech"] .pro-homepage-final-actions .pro-secondary-link { background: transparent; color: #ffffff; border-color: #657286; }
/* Keep the homepage's intentional graphite method band. */
html[data-site-theme="tech"] .atelier-method :is(h2, h3) { color: #ffffff; }
/* Standalone policies, downloads and generated guides. */
html[data-site-theme="tech"] body[data-theme="tech"] a { color: var(--accent-strong); }
html[data-site-theme="tech"] .logo-bar { border-color: var(--line); }
html[data-site-theme="tech"] .logo-bar :is(a, .brand-link) { color: var(--ink); }
html[data-site-theme="tech"] .logo-bar .static-primary-nav a { color: var(--text-secondary); }
html[data-site-theme="tech"] .logo-bar .static-primary-nav a:hover { color: var(--accent); }
html[data-site-theme="tech"] :is(.updated, .meta, .cta-note, .post-meta, .post-excerpt, .empty-note, .related-grid span) { color: var(--text-secondary); }
html[data-site-theme="tech"] :is(.tag, .post-tag, .eyebrow, .pillar-num, .back) { color: var(--accent-strong); }
html[data-site-theme="tech"] :is(.tag, .archive-note, .provenance-note, .callout, blockquote) {
  background: var(--bg-panel-soft); color: var(--text-secondary); border-color: var(--line);
}
html[data-site-theme="tech"] :is(.cta-box, .post-card, .link-card, .related-grid a) {
  background: #ffffff; border: 1px solid var(--line); border-radius: 7px;
}
html[data-site-theme="tech"] :is(.post-title, .related-grid strong, .pillar-problem) { color: var(--ink); }
html[data-site-theme="tech"] :is(.pillar, .related, .sources) { border-color: var(--line); }
html[data-site-theme="tech"] body[data-theme="tech"] :is(.btn, .cta) {
  background: var(--accent); color: #ffffff; border-radius: 7px;
}
html[data-site-theme="tech"] body[data-theme="tech"] :is(.btn, .cta):hover { background: var(--accent-strong); color: #ffffff; }
html[data-site-theme="tech"] code { color: var(--ink); background: var(--bg-panel-soft); border-color: var(--line); }
@media(max-width:600px) {
  html[data-site-theme="tech"] .pro-brand-link { color: var(--ink); }
html[data-site-theme="tech"] .pro-nav-links a { font: 500 14px/1.5 var(--font-main); text-transform: none; letter-spacing: normal; }
html[data-site-theme="tech"] .pro-brand-name { font-size: 17px; }
  html[data-site-theme="tech"] .logo-bar .static-primary-nav { border-color: var(--line) !important; }
}
@media(prefers-reduced-motion:reduce) {
  html[data-site-theme="tech"] *, html[data-site-theme="tech"] *::before, html[data-site-theme="tech"] *::after {
    animation: none !important; transition: none !important; scroll-behavior: auto !important;
  }
}
