/* Dark arcade world. This stylesheet is enabled only in dark mode. */
:root { --bg:#11160f; --ink:#e8efdf; --muted:#aab69e; --line:#3d4b34; --white:#1b2317; --lime:#a5b998; color-scheme:dark; }
[data-light-art] { display:none; }
.arcade-art { display:block; image-rendering:pixelated; overflow:hidden; }
.site-header { background:#11160ff5; border-color:var(--line); }
.brand-period,.accent-period { color:var(--lime); }
.button,.button:hover { background:var(--lime); color:#17200e; border-color:var(--lime); box-shadow:4px 4px 0 #3d5127; }
.button-light,.button-outline { color:var(--ink); border-color:var(--line); background:var(--bg); }
.button-light:hover,.button-outline:hover { color:var(--lime); background:#202b19; }
.hero-intro>.eyebrow { color:var(--muted); }
.development-world,.steps>li,.sandbox-feature,.evidence-chart,.core-stack,.closing,.blog-empty { background:var(--bg); border-color:var(--line); box-shadow:4px 4px 0 #080c06; }
.arcade-hud { display:none; }
.development-cycle li { background:transparent; border-color:var(--line); }
.development-cycle li .mono,.step-number { color:var(--muted); }
.outline-tag { color:var(--lime); border-color:var(--line); }
.environment-key,.cycle-caption,.environment-note,.sandbox-number { color:var(--muted); }
.environment-note { background:#192214; border-color:var(--line); }
.hero-bottom,.sandbox-section,.cycle-caption,.step-top,.core-stack article+article,.faq-list details,.footer { border-color:var(--line); }
.entities-section,.scenario-section { background:#161f12; border-color:#3d4b34; box-shadow:none; }
.entities-section h2 { color:var(--ink); }
.entities-section .entity-grid>li:nth-child(n) { background:#1a2415; border-color:var(--line); }
.entities-section .section-heading>p:last-child { color:var(--muted); }
.scenario-picker button[aria-pressed="true"] { color:var(--lime); }
.scenario-picker button[aria-pressed="true"] .scenario-index { color:var(--lime); border-color:#6b8645; }
.run-panel,.run-header,.context-strip,.run-finding,.snapshot-card { background:#1b2516; color:var(--ink); border-color:var(--line); }
.run-header { background:#25311d; }
.run-badge,.trace-dot.failure { background:#324522; color:var(--lime); border-color:#536348; }
.trace-state.failure,.trace-state,.run-finding strong,.trace-dot,.trace-dot.success { color:var(--lime); }
.trace-dot { background:#26371c; border-color:#536348; }
.trace-step,.trace-list>li { border-color:var(--line); }
.run-finding { border-color:#536348; }
.run-footer,.snapshot-title,.record { background:transparent; }
.snapshot-label { background:#26371c; color:var(--lime); border-color:#536348; }
.snapshot-label.raw { background:#3a301c; color:#e8ce8d; }
.effort-total>p:last-child>strong,.effort-research a { color:var(--lime); }
.effort-baseline,.legend-baseline { background:#36452c; }
.effort-info:hover,.effort-info[aria-expanded="true"] { background:#293721; }
.effort-tooltip { background:#e8efdf; color:#17200e; }
.closing { box-shadow:5px 5px 0 #526d30; }
.core-stack article { background:#1a2315; }
.core-stack li,.core-stack .mono,.core-stack p,.core-stack li:before { color:var(--muted); }
.blog-empty { background:#1a2315; }
:focus-visible { outline-color:var(--lime); }
::selection { color:#17200e; }
@media(forced-colors:active) { .arcade-art { filter:none; mix-blend-mode:normal; } }

.hero-bottom p,.trace small,.run-finding .mono,.run-footer button { color:var(--muted); }

/* Keep every font metric, box size, gap, and responsive placement from styles.css. */
.button { border-radius:0; transition:background .15s,box-shadow .15s; }
.button:hover { box-shadow:2px 2px 0 #3d5127; }
.button-small { box-shadow:3px 3px 0 #3d5127; }
.development-world,.snapshot-card,.snapshot-label,.switch,.switch:after,.evidence-chart,.effort-info,.effort-tooltip,.effort-scope,.evidence-track,.scenario-picker button,.scenario-index,.run-panel,.run-badge,.trace-dot,.context-strip,.run-finding,.core-stack,.core-stack article,.outline-tag,.closing,.blog-empty { border-radius:0; }
.development-cycle .mono { background:transparent; }
.status-dot,.environment-key span:before { border-radius:0; background:var(--lime); }
.effort-direction { stroke:var(--lime); }
@media(prefers-reduced-motion:reduce) { .button { transition:none; } }

/* Brighter sage panels echo the inverse rhythm of the original light theme. */
.entities-section { --ink:#23311f; --muted:#3e5035; --line:#819773; background:#bccfaa; color:var(--ink); border-color:var(--line); }
.entities-section .eyebrow,.entities-section .section-heading>p:last-child,.entities-section .entity-grid p { color:var(--muted); }
.entities-section .entity-grid,.entities-section .entity-grid>li:nth-child(n) { background:transparent; border-color:var(--line); }
/* The selected atlas supplies its own approved sage colors. */
.scenario-section { background:#a9c08f; color:#23311f; border-color:#819773; }
.scenario-section .eyebrow,.scenario-intro p,.scenario-label,.scenario-picker small,.example-disclaimer { color:#3e5035; }
.scenario-picker,.scenario-picker button { border-color:#7c936b; }
.scenario-picker button,.scenario-picker button:hover,.scenario-picker button[aria-pressed="true"],.scenario-picker button[aria-pressed="true"] .scenario-index { color:#23311f; }
.scenario-picker button[aria-pressed="true"] { background:#c7d8b5; box-shadow:inset 3px 0 0 #536e3d; }
.scenario-section :focus-visible { outline-color:#334b28; }
.scenario-section .run-panel { color:#e8efdf; }
@media(forced-colors:active) {
 .entities-section,.scenario-section { background:Canvas; color:CanvasText; }
 .entities-section .arcade-art { filter:none; }
}

/* Match the baseline selector's specificity so the light-theme fill cannot win. */
.effort-chart[data-bar-variant="balanced-dark"] .effort-baseline,
.legend-baseline { background:#293622; }
@media(forced-colors:active) { .effort-chart[data-bar-variant="balanced-dark"] .effort-baseline { background:GrayText; } }

/* Closing panel shares the approved entity-panel sage, with dark readable type. */
.closing { --ink:#23311f; --muted:#3e5035; background:#bccfaa; color:var(--ink); border-color:#819773; box-shadow:5px 5px 0 #536e3d; }
.closing .eyebrow,.closing .text-link { color:#3e5035; }
.closing h2 { color:#23311f; }
.closing .button { background:#293b27; color:#e8efdf; border-color:#293b27; box-shadow:4px 4px 0 #819773; }
.closing :focus-visible { outline-color:#334b28; }
@media(forced-colors:active) { .closing { background:Canvas; color:CanvasText; } }

/* Refined pixel variant; original isometric rules above remain unchanged. */
:root[data-dark-style="pixel"] { --bg:#102c21; --ink:#e4f9ba; --muted:#8fcb65; --line:#397046; --white:#102c21; --lime:#8fcb65; }
[data-dark-style="pixel"] .arcade-art { display:none; }
[data-dark-style="pixel"] .pixel-art { display:block; image-rendering:pixelated; object-fit:contain; }
[data-dark-style="pixel"] .site-header { background:#102c21f5; }
[data-dark-style="pixel"] .entities-section,[data-dark-style="pixel"] .closing,[data-dark-style="pixel"] .blog-empty { --ink:#e4f9ba; --muted:#8fcb65; --line:#397046; background:#102c21; color:var(--ink); border-color:var(--line); }
[data-dark-style="pixel"] .entities-section h2,[data-dark-style="pixel"] .closing h2 { color:var(--ink); }
[data-dark-style="pixel"] .closing .eyebrow,[data-dark-style="pixel"] .closing .text-link { color:var(--muted); }
[data-dark-style="pixel"] .closing .button { background:#8fcb65; color:#102c21; border-color:#397046; }
