:root[data-dorat-theme="light"] {
  color-scheme:light; --ink:#182638; --muted:#566477; --accent:#b94721; --accent-hover:#963617; --line:#dce2e8; --paper:#f6f7f9; --dark:#142030;
  --page-bg:#f7f8fa; --page-panel:#fff; --page-panel-strong:#f1f4f7; --page-text:#182638; --page-muted:#566477; --page-border:#dce2e8; --page-accent:#b94721; --page-accent-strong:#963617; --page-accent-soft:#fff0e8; --page-success:#167044;
  --public-bg:#fff; --public-panel:#fff; --public-soft:#f6f7f9; --public-raised:#eef1f5; --public-header:#fffffff2; --public-button-text:#fff; --public-green-bg:#e8f6ef; --public-green:#146a43; --public-orange-bg:#fff0e7; --public-orange:#9c401c; --public-blue-bg:#edf2ff; --public-blue:#355ca9;
}
:root[data-dorat-theme="dark"] {
  color-scheme:dark; --ink:#f6f8fc; --muted:#afbed1; --accent:#ffad80; --accent-hover:#ffc7a9; --line:#334356; --paper:#141e2a; --dark:#182330;
  --page-bg:#101720; --page-panel:#182330; --page-panel-strong:#202e3e; --page-text:#dfe8f3; --page-muted:#afbed1; --page-border:#334356; --page-accent:#ffad80; --page-accent-strong:#ffc7a9; --page-accent-soft:#3a2b26; --page-success:#77d5a7;
  --public-bg:#101720; --public-panel:#182330; --public-soft:#141e2a; --public-raised:#202e3e; --public-header:#101720f2; --public-button-text:#142235; --public-green-bg:#183b30; --public-green:#8de1b6; --public-orange-bg:#3a2b26; --public-orange:#ffb58f; --public-blue-bg:#243750; --public-blue:#a7c8ff;
}
.public-theme-switch { display:flex; flex-shrink:0; gap:2px; padding:3px; border:1px solid var(--line); border-radius:8px; background:var(--public-panel); }
.public-theme-switch button { display:flex; align-items:center; justify-content:center; gap:5px; border:0; border-radius:5px; background:transparent; color:var(--muted); font:600 11px/1.4 "Inter Variable",Inter,system-ui,sans-serif; min-height:32px; padding:6px 9px; cursor:pointer; }
.public-theme-switch button[aria-pressed="true"] { background:var(--public-raised); color:var(--ink); }
.public-theme-switch button>span:first-child { font-size:15px; }
.public-theme-switch button:focus-visible { outline:3px solid #648fe9; outline-offset:3px; }
.public-themed-page { background:var(--public-bg); color:var(--ink); }
.public-themed-page .site-header,.public-themed-page .public-header { background:var(--public-header); border-color:var(--line); }
.public-themed-page .hero { background:radial-gradient(ellipse at 80% 20%,var(--page-accent-soft),transparent 45%),var(--public-bg); }
.public-themed-page :is(.hero-product,.feature-card,.demo-workspace,.demo-document,.product-screen,.guide-note,.guide-nav,.contact-section,.price-card,.faq-list details,.clarity-list article) { background:var(--public-panel); border-color:var(--line); }
.public-themed-page .hero-product { transform:none; box-shadow:0 20px 60px #10243a12; }
.public-themed-page :is(.product-top,.product-footer,.product-stats>div,.section-soft,.demo-tabs,.demo-disclaimer,.demo-tag,.section-dark,.contact-section,footer) { background:var(--public-soft); color:var(--ink); border-color:var(--line); }
.public-themed-page :is(.product-top,.product-footer,.preview-order,.feature-card,.clarity-list article,.faq-list details,.footer-bottom,.demo-document dl>div) { border-color:var(--line); }
.public-themed-page :is(.product-heading small,.example-label,.product-status,.product-stats small,.preview-order small,.product-footer,.section-heading p,.section-copy,.feature-card p,.clarity-list p,.demo-panel p,.demo-document>span,.demo-document dt,.demo-disclaimer,.price-card p,.price span,.plan-details,.pricing-note,.faq-list p,footer p,.footer-bottom,.guide-content p,.guide-content li) { color:var(--muted); }
.public-themed-page :is(h1,h2,h3,h4,.wordmark,.mini-brand,.product-stats strong,.preview-order strong,.demo-document dd,.price strong,.footer-grid strong,.guide-nav a) { color:var(--ink); }
.public-themed-page .hero-copy h1 em { color:var(--accent); }
.public-themed-page .section-dark .eyebrow,.public-themed-page .price-label { color:var(--accent); }
.public-themed-page .price-card.annual { border-color:var(--accent); background:var(--public-panel); }
.public-themed-page .button:not(.button-outline),.public-themed-page .public-cta:not(.public-cta--secondary) { background:var(--accent); border-color:var(--accent); color:var(--public-button-text); }
.public-themed-page .button-outline { color:var(--ink); border-color:var(--line); background:transparent; }
.public-themed-page .button:not(.button-outline):hover { background:var(--accent-hover); }
.public-themed-page .state-green { background:var(--public-green-bg); color:var(--public-green); }
.public-themed-page .state-orange { background:var(--public-orange-bg); color:var(--public-orange); }
.public-themed-page .state-blue { background:var(--public-blue-bg); color:var(--public-blue); }
.public-themed-page .product-status { background:var(--public-green-bg); color:var(--public-green); }
.public-themed-page .preview-icon { background:var(--public-raised); color:var(--muted); }
.public-themed-page .demo-tabs button { color:var(--muted); }
.public-themed-page .demo-tabs button[aria-selected="true"] { background:var(--public-panel); color:var(--accent); border-color:var(--line); }
.public-themed-page .menu-toggle { background:var(--public-panel); color:var(--ink); border-color:var(--line); }
.public-themed-page .site-header nav { background:var(--public-header); border-color:var(--line); }
.public-themed-page .public-footer { background:var(--public-soft); border-color:var(--line); }
.public-themed-page .public-brand { color:var(--ink); }
.public-themed-page .public-header__inner { flex-wrap:wrap; gap:15px; }
.public-themed-page .public-header__inner .public-theme-switch { margin-left:auto; }
@media(max-width:760px) {
  .public-themed-page .header-inner { gap:8px; }
  .public-themed-page .header-inner .wordmark { font-size:20px; }
  .public-themed-page .header-login { padding:8px 10px; font-size:11px; }
  .public-themed-page .header-login>span { display:none; }
  .public-themed-page .menu-toggle { font-size:11px; padding:8px; }
  .public-theme-switch { padding:2px; }
  .public-theme-switch button { padding:5px 7px; min-height:32px; }
  .public-theme-switch button>span:last-child { display:none; }
  .public-themed-page .public-header__inner .public-nav { order:3; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
