html[data-theme="workbench"] {
  color-scheme: dark;
  --bg: #0B1115;
  --bg2: #152027;
  --panel: #10181B;
  --raised: #152027;
  --line: #293840;
  --line-soft: #1E2B31;
  --txt: #E7ECE8;
  --muted: #9CAEB1;
  --accent: #F9C85D;
  --accent-ink: #101316;
  --amber: #E8A948;
  --green: #5BC68D;
  --bad: #C45B52;
  --gold: #F9C85D;
  --radius: 6px;
  --mono: "Cascadia Mono", Consolas, ui-monospace, monospace;
  --scrub-sunset: #E8A948;
  --scrub-civil: #AF8270;
  --scrub-nautical: #54718E;
  --scrub-astronomical: #35435E;
  --scrub-night: #1C2538;
}
/* Open Workbench: workspace sections share the page; temporary windows have
   their own opaque surface. Geometry remains in style.css. */
html[data-theme="workbench"] body { background: var(--bg); font-size: 14px; }
html[data-theme="workbench"] body::before { display: none; }
html[data-theme="workbench"] .topbar {
  position: sticky;
  top: 0;
  z-index: 55;
  margin: 0; padding: 8px 22px; border: 0; border-bottom: 1px solid var(--line-soft);
  background: var(--bg); box-shadow: none; backdrop-filter: none;
}
html[data-theme="workbench"] .tabs { z-index: 50; }
html[data-theme="workbench"] .tabs {
  margin: 0; padding: 0 22px; gap: 8px; background: var(--bg);
  border-bottom: 1px solid var(--line-soft);
}
html[data-theme="workbench"] .tabs a {
  padding: 11px 10px 10px; border: 0; border-bottom: 2px solid transparent;
  border-radius: 0; background: transparent; color: var(--muted); font-size: 13px;
}
html[data-theme="workbench"] .tabs a.active {
  color: var(--accent); background: transparent; border-bottom-color: var(--accent);
}
html[data-theme="workbench"] .tabs a:hover { color: var(--txt); }
html[data-theme="workbench"] .brand h1 em { color: var(--accent); }
html[data-theme="workbench"] .topbar .brand-ico { display: none; }
html[data-theme="workbench"] main {
  max-width: min(100%, max(320px, calc(100% - 2 * var(--edge, 14px))));
  padding: 22px 22px 46px;
}
html[data-theme="workbench"] .card,
html[data-theme="workbench"] .cat-filter-rail,
html[data-theme="workbench"] .tonight-ranked {
  border: 0; border-radius: 0; background: transparent; box-shadow: none;
  backdrop-filter: none;
}
html[data-theme="workbench"] .card { padding: 14px 0; }
html[data-theme="workbench"] .card h3 { color: var(--muted); font-size: 12px; letter-spacing: .06em; }
html[data-theme="workbench"] .tonight-ranked,
html[data-theme="workbench"] .catalog-table-card { padding: 0; }
html[data-theme="workbench"] .cat-filter-rail { padding: 0 16px 0 0; }
html[data-theme="workbench"] .cat-visibility { border: 0; padding: 0; }
html[data-theme="workbench"] .cat-visibility legend { padding: 0; margin-bottom: 6px; }
html[data-theme="workbench"] .cat-more {
  border: 0; border-top: 1px solid var(--line-soft); background: transparent; padding: 10px 0 0;
}
html[data-theme="workbench"] .cat-results table.cat th {
  color: var(--muted); background: var(--bg); border-bottom-color: var(--line);
}
html[data-theme="workbench"] table.cat td { border-bottom-color: var(--line-soft); }
html[data-theme="workbench"] .cat-results table.cat tbody tr.selected td {
  box-shadow: none; background: color-mix(in srgb, var(--accent) 5%, var(--bg));
}
html[data-theme="workbench"] .cat-results table.cat tbody tr.selected td:first-child {
  border-left: 0; box-shadow: inset 3px 0 var(--accent);
}
html[data-theme="workbench"] .cat-results table.cat tbody tr.selected td:last-child { border-right: 0; }
html[data-theme="workbench"] .btn,
html[data-theme="workbench"] .ghost,
html[data-theme="workbench"] .chip,
html[data-theme="workbench"] .modal .close {
  border: 0; border-radius: 0; background: transparent; color: var(--muted); box-shadow: none;
}
html[data-theme="workbench"] .btn.primary,
html[data-theme="workbench"] .chip.on { color: var(--accent); background: transparent; font-weight: 650; }
html[data-theme="workbench"] :is(.btn, .ghost, .chip, .modal .close):hover {
  color: var(--accent); background: transparent; filter: none;
}
html[data-theme="workbench"] .context-settings:is(:hover, :focus-visible) {
  color: var(--accent); text-decoration: underline; text-underline-offset: 3px;
}
html[data-theme="workbench"] :is(.btn, .ghost, .chip):disabled { color: var(--muted); opacity: .45; }
html[data-theme="workbench"] input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),
html[data-theme="workbench"] select,
html[data-theme="workbench"] textarea {
  color: var(--txt); background: var(--bg); border: 1px solid var(--line);
  border-radius: 4px;
}
html[data-theme="workbench"] .planner-controls select,
html[data-theme="workbench"] .planner-controls input[type="date"] {
  background: transparent; border: 0; border-bottom: 1px solid var(--line-soft); border-radius: 0;
}
html[data-theme="workbench"] select option { color: var(--txt); background: var(--bg); }
html[data-theme="workbench"] input[type="range"],
html[data-theme="workbench"] input[type="checkbox"],
html[data-theme="workbench"] input[type="radio"] { accent-color: var(--accent); }
html[data-theme="workbench"] .sky-wrap { gap: 24px; }
html[data-theme="workbench"] .sky-side { gap: 20px; }
html[data-theme="workbench"] .sky-canvas-box { padding: 0; }
html[data-theme="workbench"] .sky-controls-tray { padding-top: 0; border-bottom: 1px solid var(--line-soft); }
html[data-theme="workbench"] canvas#sky,
html[data-theme="workbench"] canvas#graph { border: 0; border-radius: 0; }
html[data-theme="workbench"] .pick li {
  border: 0; border-bottom: 1px solid var(--line-soft); border-radius: 0;
  background: transparent; box-shadow: none;
}
html[data-theme="workbench"] .pick li:hover { background: transparent; }
html[data-theme="workbench"] .ed-hint { background: transparent; border: 0; }
html[data-theme="workbench"] .ed-view-overlay {
  background: transparent; border: 0; border-radius: 0;
}
html[data-theme="workbench"] .ed-confirm-box { box-shadow: none; }
html[data-theme="workbench"] .tooltip,
html[data-theme="workbench"] #menuPanel.menu-panel,
html[data-theme="workbench"] #weatherPanel.weather-panel {
  background: var(--panel); border-color: var(--line); box-shadow: none; backdrop-filter: none;
}
/* Sticky editing actions need an opaque surface while the photo scrolls below. */
html[data-theme="workbench"] .horizon-stage > .ed-tools { background: var(--bg); }
html[data-theme="workbench"] .modal-wrap { background: color-mix(in srgb, var(--bg) 76%, transparent); }
html[data-theme="workbench"] .modal { background: var(--panel); border-color: var(--line); border-radius: 6px; box-shadow: none; }
html[data-theme="workbench"] #modal.detail-docked {
  inset: var(--detail-top, 130px) 0 0 auto; width: var(--detail-width, min(420px, 32vw));
  padding: 0; background: transparent; backdrop-filter: none; pointer-events: none;
}
html[data-theme="workbench"] #modal.detail-docked > .modal {
  width: 100%; height: 100%; max-height: none; margin: 0; overflow-y: auto;
  background: var(--bg); border-width: 0 0 0 1px; border-radius: 0; pointer-events: auto;
}
html[data-theme="workbench"] #modal.detail-inline > .modal {
  padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none;
}
html[data-theme="workbench"] .foot { border-top-color: var(--line-soft); }
html[data-theme="workbench"] ::-webkit-scrollbar-thumb { background: var(--line); border-radius: 3px; }
html[data-theme="workbench"] ::-webkit-scrollbar-track { background: var(--bg); }
@media (max-width: 900px) {
  html[data-theme="workbench"] .topbar { position: relative; padding: 8px 12px; }
  html[data-theme="workbench"] .tabs { padding: 0 12px; }
  html[data-theme="workbench"] main { padding: 16px 12px 36px; }
  html[data-theme="workbench"] .sky-wrap { grid-template-columns: 1fr; }
  html[data-theme="workbench"] .cat-filter-rail { padding-right: 0; }
}
html[data-theme="workbench"] {
  --viz-canvas-bg: #0B1115;
  --viz-sky-surface: #0B1115;
  --viz-graph-surface: #0B1115;
  --viz-grid: rgba(48,64,73,.58);
  --viz-grid-strong: #304049;
  --viz-grid-sub: rgba(48,64,73,.36);
  --viz-axis: #9CAEB1;
  --viz-dim: #9CAEB1;
  --viz-text: #E7ECE8;
  --viz-field-star: rgba(231,236,232,.30);
  --viz-constellation: rgba(156,174,177,.38);
  --viz-constellation-star: rgba(231,236,232,.55);
  --viz-constellation-label: rgba(156,174,177,.78);
  --viz-obstacle-fill: rgba(196,91,82,.20);
  --viz-obstacle-stroke: rgba(196,91,82,.92);
  --viz-blocked-dot: rgba(196,91,82,.55);
  --viz-ceiling: #9CAEB1;
  --viz-ceiling-top: #F9C85D;
  --viz-min-fill: rgba(249,200,93,.10);
  --viz-min-stroke: rgba(249,200,93,.78);
  --viz-min-label: #F9C85D;
  --viz-below: #304049;
  --viz-bad: #C45B52;
  --viz-warn: #E8A948;
  --viz-good: #5BC68D;
  --viz-good-fill: rgba(91,198,141,.12);
  --viz-moon: #f3e7cc;
  --viz-moon-line: rgba(115,182,219,.92);
  --viz-moon-label: #9CAEB1;
  --viz-moon-marker: #ffffff;
  --viz-moon-marker-shadow: #0B1115;
  --viz-moon-marker-outline: #ffffff;
  --viz-guide-min-dash: 9 4;
  --viz-guide-moon-dash: 4 3 1 3;
  --viz-guide-ceiling-dash: 3 4;
  --viz-guide-ceiling-top-dash: 10 3 2 3;
  --viz-sun: #F9C85D;
  --viz-sun-line: #F9C85D;
  --viz-sun-label: #F9C85D;
  --viz-target: #E7ECE8;
  --viz-target-label: #E7ECE8;
  --viz-target-selected: #F9C85D;
  --viz-target-secondary: #73B6DB;
  --viz-target-blocked: #C45B52;
  --viz-target-shadow: rgba(0,0,0,.78);
  --viz-favorite: #dfae61;
  --viz-favorite-outer: rgba(0,0,0,.75);
  --viz-crosshair: rgba(231,236,232,.50);
  --viz-crosshair-fill: #0B1115;
  --viz-crosshair-stroke: #F9C85D;
  --viz-object-outline: rgba(0,0,0,.65);
  --viz-moon-band: rgba(123,169,199,.14);
  --viz-horizon-line: rgba(231,236,232,.25);
  --viz-twilight-shade: rgba(156,174,177,.08);
  --viz-twilight-1: #152027;
  --viz-twilight-2: #152027;
  --viz-twilight-3: #10181B;
  --viz-twilight-4: #10181B;
  --viz-twilight-5: #152027;
  --viz-twilight-6: #152027;
  --viz-type-galaxy: #F9C85D;
  --viz-type-open-cluster: #73B6DB;
  --viz-type-globular: #9CAEB1;
  --viz-type-nebula: #5BC68D;
  --viz-type-planetary: #73B6DB;
  --viz-type-supernova-remnant: #C45B52;
  --viz-type-asterism: #E8A948;
  --viz-type-star-cloud: #E7ECE8;
  --viz-sun-glow-blur: 0;
  --viz-moon-glow-blur: 0;
  --viz-label-shadow-blur: 2;
}
html[data-theme="workbench"] canvas#sky,
html[data-theme="workbench"] canvas#graph {
  background: var(--viz-sky-surface);
}
html[data-theme="workbench"] canvas#graph {
  background: var(--viz-graph-surface);
}
