/* Published palette; overrides main.css and field-guide.css. */
:root {
  --paper: #fffdf5;
  --paper-sunk: #edf1fb;
  --paper-edge: #d4def4;
  --ink: #14244b;
  --ink-soft: #35466a;
  --ink-faint: #4b5d7b;
  --rule: #c1cce3;
  --accent: #003399;
  --accent-lit: #174bc0;
  --accent-wash: #e8efff;
  --green: #003399;
  --green-wash: #edf1fb;
  --alarm: #a62835;
  --eu-blue: #003399;
  --eu-yellow: #ffcc00;
  --panel-blue: #11275d;
  --panel-text: #fffdf5;
  --panel-muted: #d3def8;
  --note-paper: #fff3bd;
  --note-ink: #172a55;
}
[data-power="out"] {
  --paper: #0c1731;
  --paper-sunk: #17284d;
  --paper-edge: #223a66;
  --ink: #fffdf5;
  --ink-soft: #d2def6;
  --ink-faint: #b4c6e9;
  --rule: #4d6590;
  --accent: #ffdc55;
  --accent-lit: #ffe88c;
  --accent-wash: #263b64;
  --green: #ffdc55;
  --green-wash: #17284d;
  --alarm: #ffabb0;
}
.top { border-top: 4px solid var(--eu-blue); border-bottom: 1px solid var(--rule); }
.top nav { flex-wrap: wrap; }
.brand__icon,[data-power="out"] .brand__icon { color: #ffcc00; filter: drop-shadow(0 0 5px #ffcc005c); }
.top nav a.nav-star { background: var(--eu-yellow); color: #14244b; border: 1px solid #003399; box-shadow: 2px 2px 0 #003399; padding: 6px 13px; }
.btn { background: var(--eu-blue); border-color: var(--eu-blue); color: #fffdf5; box-shadow: 3px 3px 0 #ffcc00; border-radius: 2px; }
.btn--primary,[data-power="out"] .btn--primary { color: #fffdf5; background: var(--eu-blue); border-color: var(--eu-blue); }
.btn--ghost { color: var(--ink); background: var(--paper); border-color: var(--rule); box-shadow: none; }
.btn:hover { box-shadow: 4px 4px 0 #ffcc00; }
.btn--ghost:hover { box-shadow: 3px 3px 0 var(--rule); }
.landing-hero h1 em { color: var(--accent); text-decoration: underline; text-decoration-color: var(--eu-yellow); text-decoration-thickness: .055em; text-underline-offset: .09em; }
.headline-spark { color: var(--eu-blue); }
[data-power="out"] .headline-spark { color: var(--eu-yellow); }
.status-dot,.world-top__title i { background: var(--eu-yellow); box-shadow: 0 0 0 3px #00339922; }
.world,[data-power="out"] .world { background: #11275d; border-color: #003399; box-shadow: 6px 7px 0 #ffcc00; border-radius: 3px; }
.world-top,.world-controls { background: #11275d; border-color: #4b6291; }
.world-top__title,.world-stat span,.world-prompt,.world-prompt kbd { color: #d3def8; }
.world-stat b,.world-stat:first-child b,.world-stat:last-child b { color: #ffe06a; }
.world-view { background: #142443; }
.story-dialogue { background: #0e1e45; border-color: #4b6291; }
.story-dialogue .world-note,.story-dialogue .provider-notice span,.story-dialogue .room-alert small { color: #d3def8; }
.story-dialogue .world-note strong,.story-dialogue .provider-notice strong { color: #fffdf5; }
.story-dialogue .provider-notice p,.story-dialogue .room-alert { color: #ffe06a; }
.unplug,.blackout__backup { background: #ffcc00; color: #14244b; border: 1px solid #ffdf59; border-bottom: 4px solid #bc9000; border-radius: 2px; }
.unplug:hover { background: #ffdf59; }
.object-tag { background: #11275df5; color: #fff3bd; border-color: #e0c855; }
.object-tag--klod { color: #ffdf59; border-color: #ffcc00; }
.object-tag--provider { color: #ffd5b1; }
.room-label,.world[data-scene="backup"] .room-label { background: #11275de8; color: #fff3bd; border-color: #a9bbdf; }
.blackout { background: #0c1731; }
.blackout__code,.blackout__status { color: #ffdc55; }
.blackout__title { color: #fffdf5; }
.blackout__question,.blackout__replay { color: #d3def8; }
.case-card__signal,.case-card:nth-child(2) .case-card__signal { background: #e5ecfd; color: #003399; }
.case-card:nth-child(3) .case-card__signal { background: #fff0aa; color: #172a55; }
.pricing-warning,.manual-card--featured,.quickstart { background: #003399; border-color: #003399; color: #fffdf5; border-radius: 3px; }
.pricing-warning p:not(.eyebrow),.pricing-warning strong,.manual-card--featured p,.manual-card--featured .manual-card__tag,.quickstart p { color: #e3ebff; }
.pricing-warning .eyebrow,.manual-card--featured .manual-card__bottom,.quickstart a { color: #ffdc55; }
.quickstart pre { border-color: #91a6dd; background: #11275d; color: #fffdf5; }
.quickstart code { color: inherit; background: transparent; }
.level-guide i,.level-guide a:nth-child(3) i { background: #003399; }
.level-guide a:nth-child(2) i,.level-guide a:nth-child(4) i { background: #ffcc00; box-shadow: 0 0 0 1px #003399; }
.mission-panel { background: #fff0aa; color: #14244b; border-color: #d9b750; }
.mission-panel p,.mission-panel .eyebrow { color: #35466a; }
.pixel-icon path[stroke="#b84628"],.pixel-icon path[fill="#b84628"] { stroke: #003399; }
.guide-prose pre { background: #11275d; color: #fffdf5; border-color: #4b6291; border-radius: 3px; white-space: pre-wrap; overflow-wrap: anywhere; }
.guide-prose code { background: var(--paper-sunk); color: var(--ink); }
.guide-prose pre code { background: transparent; color: #fffdf5; }
.guide-prose blockquote,.note { background: var(--note-paper); color: var(--note-ink); border-left-color: #003399; }
.guide-prose blockquote p,.guide-prose blockquote li,.note p { color: var(--note-ink); }
.guide-prose blockquote a,.note a { color: #003399; text-decoration: underline; }
.guide-prose blockquote code { color: #172a55; background: #ffe88c; }
.callout { background: var(--paper-sunk); color: var(--ink); border-color: var(--accent); }
.callout p,.callout__caveat { color: var(--ink-soft); }
.callout__label { color: var(--accent); }
.table-scroll { border-color: var(--rule); }
.table-scroll th { background: var(--paper-sunk); color: var(--ink); }
.table-scroll td { background: var(--paper); color: var(--ink); }
.table-scroll td,.table-scroll th { border-color: var(--rule); }
.spec-clause,.guide-related,.guide-nav,.copy-code { border-color: var(--rule); }
.spec-clause:target { background: var(--note-paper); color: var(--note-ink); outline-color: var(--note-paper); }
.spec-clause:target a { color: #003399; }
.spec-clause:target code { color: #172a55; background: #ffe88c; }
.guide-nav { color: var(--ink-soft); }
.guide-nav summary { color: var(--ink); }
.foot p { font-size: var(--text-small); line-height: 1.85; }
.doc-source,.copy-code { font-size: var(--text-small); }
.result { border-top-color: var(--accent); }
@media(max-width:1200px){.top nav a.nav-star{padding:8px 12px;justify-self:start}}
@media print{.guide-prose blockquote,.note,.table-scroll td,.table-scroll th{background:#fff;color:#000}.guide-prose blockquote p,.note p{color:#000}}
