/* Shared public themes, loaded after the magazine and article styles. */
:root { color-scheme: light; }
.theme-toggle { display: none; width: 34px; height: 34px; flex: none; align-items: center; justify-content: center; border: 1px solid var(--line); background: transparent; padding: 7px; color: var(--ink); }
html[data-theme] .theme-toggle { display: inline-flex; }
.theme-toggle:hover { background: var(--soft); }
.theme-toggle svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.theme-toggle .theme-sun { display: none; }
html[data-theme="dark"] .theme-toggle .theme-moon { display: none; }
html[data-theme="dark"] .theme-toggle .theme-sun { display: block; }
html[data-theme="dark"] {
  color-scheme: dark;
  --paper: #17191c;
  --white: #202328;
  --ink: #edece8;
  --muted: #b0b3b8;
  --line: #3b3e43;
  --accent: #ec967f;
  --soft: #292c31;
}
html[data-theme="dark"] ::selection { background: #6e3d32; color: #fff; }
html[data-theme="dark"] .skip-link { background: var(--accent); color: var(--paper); }
html[data-theme="dark"] .topline { background: #22252a; color: #b9bdc3; }
html[data-theme="dark"] :is(.site-header,.nav-border,.site-footer,.hero-story,.excerpt-card,.ranking-mention,.ranking-jump,.planner-tool,dialog,.dialog-close,.search-field) { background: var(--white); }
html[data-theme="dark"] :is(.hero-label,.view-switch button[aria-pressed="true"]) { background: var(--white); color: var(--ink); }
html[data-theme="dark"] :is(.tool-feature,.reader-tool-card) { background: #272a2e; border-color: var(--line); }
html[data-theme="dark"] :is(.editorial-band,.demo-notice,.placement-note,.view-switch) { background: var(--soft); }
html[data-theme="dark"] :is(.tool-feature p,.tool-note,.dimension-label,.topic-strip>span,.reading-time,.card-bottom,.footer-bottom,.free-label,.demo-notice,.planner-controls label,.placement-note,.view-switch button,.planner-summary>span,.article-body figcaption) { color: var(--muted); }
html[data-theme="dark"] :is(.free-label,kbd,.button-outline,.search-field,.planner-controls select,.share-layout input,.planner-tool .measurement-field) { border-color: var(--line); }
html[data-theme="dark"] :is(.planner-tool select,.planner-controls select,.share-layout input,.planner-tool .measurement-field) { background: var(--paper); color: var(--ink); border-color: var(--line); }
html[data-theme="dark"] .monitor-fields label { color: var(--muted); }
html[data-theme="dark"] .language-switch a[aria-current] { background: #41454b; color: var(--ink); }
html[data-theme="dark"] :is(.button-dark,.filters button.selected) { background: #b44732; color: #fff; }
html[data-theme="dark"] .button-dark:hover { background: #c4523b; }
html[data-theme="dark"] :is(.button-outline:hover,.language-switch a:not([aria-current]):hover,.filters button:hover) { background: #35393f; }
html[data-theme="dark"] .filters button.selected:hover { background: #c4523b; }
html[data-theme="dark"] .planner-canvas-wrap { background: #25292e; border-color: var(--line); }
html[data-theme="dark"] .planner-status { color: #a6d5ba; }
html[data-theme="dark"] .planner-status.warning { color: #f3b98e; }
html[data-theme="dark"] #planner-canvas :is(.planner-view-label,.planner-dimension-label) { fill: var(--muted); }
html[data-theme="dark"] #planner-canvas .planner-dimension-line { stroke: var(--muted); }
html[data-theme="dark"] .local-editor-bar { background: #30343a; }
html[data-theme="dark"][data-preview-ads] .ad-slot[hidden] { background: var(--soft); color: var(--muted); border-color: var(--line); }
@media(max-width:760px) { .header-actions { gap: 7px; } .theme-toggle { width: 30px; height: 30px; padding: 6px; } }
@media(max-width:370px) { .header-actions { gap: 4px; } .masthead { gap: 8px; } .brand { font-size: 21px; gap: 6px; } .theme-toggle { width: 28px; height: 28px; padding: 5px; } }
