/* =====================================================================
   SolRPG — MEDIEVAL reskin. Layers OVER theme-ps1.css (loaded after it), so it
   re-colours + re-shapes the same selectors into a warm, muted, medieval look
   (aged parchment + dark wood + bronze/amber; no bright pastels).
   Decorative window frame: "Fantasy UI Borders" by Kenney (kenney.nl, CC0),
   recoloured warm wood -> /cozy/frame-med.png. See /cozy/CREDITS.txt.
   Everything else is CSS (fully responsive, scales on mobile).
   ===================================================================== */

/* 1) Palette — MEDIEVAL warm + muted (aged parchment, dark wood, bronze/amber; no bright pastels) */
.ps1-theme {
  --ps1-ink:      #43301a;   /* dark walnut text */
  --ps1-ink-dim:  #6a4d28;   /* muted brown — darker than the old #8a6c42 so muted/.sub text is readable on cream */
  --ps1-gold:     #a3701f;   /* muted amber heading */
  --ps1-cyan:     #3f7ea0;   /* muted teal links */
  --ps1-green:    #6f8f39;
  --ps1-red:      #b23b46;
  --ps1-fill:     #e2ca8f;   /* aged parchment (warmer + less bright than cream) */
  --ps1-fill2:    #d3b878;   /* darker parchment inset */
  --ps1-edge-lt:  #efdcac;   /* soft parchment highlight */
  --ps1-edge-dk:  #a9834a;   /* warm inner shadow */
  --ps1-line:     #4e3418;   /* dark wood outline */
  --panel: #e2ca8f; --border:#4e3418; --ink:#43301a; --accent:#6f8f39;
  --cz-wood:#4e3418; --cz-woodlt:#8a5a2b; --cz-cream:#e2ca8f; --cz-go:#6f9a3f; --cz-godk:#496827;
}

/* 2) Panels → cream with the Cozyland wood frame (9-slice border-image) */
.ps1-theme .ps1-panel, .ps1-theme .panel,
.ps1-theme #charPanel, .ps1-theme #statsPanel, .ps1-theme #invPanel,
.ps1-theme #bankPanel, .ps1-theme #stationPanel, .ps1-theme #vendorPanel, .ps1-theme #marketPanel,
.ps1-theme #builderPanel, .ps1-theme #debugPanel, .ps1-theme #inspectPanel, .ps1-theme #partyPanel,
.ps1-theme #patchPanel, .ps1-theme #aboutPanel, .ps1-theme #settingsOverlay .panel, .ps1-theme #bugPanel,
.ps1-theme #infoPop, .ps1-theme #playerMenu, .ps1-theme #itemTip, .ps1-theme #coinDialog {
  color: var(--ps1-ink) !important;
  background: var(--cz-cream) !important;
  border: 16px solid transparent !important;
  border-image: url(/cozy/frame-med.png) 16 fill / 16px / 0 stretch !important;   /* Kenney Fantasy UI border (CC0), recoloured warm wood */
  border-radius: 0 !important;
  box-shadow: 0 6px 0 rgba(50,30,12,.5), 0 10px 22px rgba(40,22,8,.32) !important;
  backdrop-filter: none !important;
  letter-spacing: .3px;
}
.ps1-theme .ps1-panel::before, .ps1-theme #charPanel::before, .ps1-theme #chatBox::before { content:none !important; } /* drop the PS1 rivet line */

/* chat + bottom-bar pills: cozy cream bar (border-image frame looks odd on wide/edge bars).
   #bottomBar itself is now just a transparent flex positioner — the visible bar is the two .bbPill halves
   flanking the transparent face-cam window (the game canvas shows through #facecamWin). */
.ps1-theme #chatBox, .ps1-theme .bbPill {
  background: var(--cz-cream) !important; color: var(--ps1-ink) !important;
  border: 3px solid var(--cz-wood) !important; border-radius: 16px !important;
  box-shadow: 0 5px 0 rgba(107,66,32,.4), 0 8px 16px rgba(60,30,10,.25) !important;
}
.ps1-theme #bottomBar { background:none !important; border:none !important; box-shadow:none !important; }
/* face-cam window -> ornate Kenney frame; NO `fill` keyword so the centre stays TRANSPARENT (the live
   in-world face view renders on the game canvas beneath it) */
.ps1-theme #facecamWin { border:13px solid transparent !important; border-image:url(/cozy/frame-med.png) 16 / 13px / 0 stretch !important; border-radius:0 !important; background:transparent !important; box-shadow:inset 0 0 14px rgba(30,18,8,.45) !important; }
/* solid dark-wood ring UNDER the Kenney frame (its ornament pixels are semi-transparent and washed out over
   the bright world) — a border-only ::before backs the frame while the centre stays a transparent window */
.ps1-theme #bbPortrait::before { content:''; position:absolute; inset:0; border:13px solid rgba(42,27,12,.92); border-radius:4px; pointer-events:none; }
.ps1-theme #facecamWin { z-index:1; }

/* 3) Headings → warm brown, soft cream shadow (not black) */
.ps1-theme h1, .ps1-theme h2, .ps1-theme h3, .ps1-theme .ps1-title, .ps1-theme legend, .ps1-theme h4 {
  color: var(--ps1-gold) !important; text-shadow: 0 2px 0 #efdcac !important;
}

/* 4) Buttons → chunky rounded, warm; primary = green with a pressable bottom edge */
.ps1-theme .ps1-btn, .ps1-theme .bbBtn, .ps1-theme button:not(.chatTab):not(.tqBig):not(.tanGo) {
  color:#fff5e2 !important; background:var(--cz-woodlt) !important;
  border:3px solid var(--cz-wood) !important; border-radius:12px !important;
  box-shadow:0 4px 0 var(--cz-wood) !important; text-shadow:0 2px 0 rgba(90,50,20,.5) !important;
  transform:none;
}
.ps1-theme .ps1-btn:hover, .ps1-theme .bbBtn:hover, .ps1-theme button:not(.chatTab):hover { filter:brightness(1.08) !important; }
.ps1-theme .ps1-btn:active, .ps1-theme .bbBtn:active, .ps1-theme button:not(.chatTab):active {
  box-shadow:0 1px 0 var(--cz-wood) !important; transform:translateY(3px) !important;
}
.ps1-theme .ps1-btn.gold, .ps1-theme .bbBtn.go, .ps1-theme #connect, .ps1-theme .tanGo, .ps1-theme .tanstart {
  background:var(--cz-go) !important; border-color:var(--cz-godk) !important; box-shadow:0 4px 0 var(--cz-godk) !important; color:#1e3a12 !important; text-shadow:0 1px 0 rgba(255,255,255,.35) !important;
}
/* close (X) buttons → soft cozy red pill */
.ps1-theme #setClose, .ps1-theme #stationClose, .ps1-theme #bankClose, .ps1-theme #patchClose,
.ps1-theme #aboutClose, .ps1-theme #bugClose, .ps1-theme #inspectClose, .ps1-theme .sheet-head button {
  background:#c25a44 !important; border:3px solid #8a3320 !important; border-radius:10px !important;
  box-shadow:0 3px 0 #8a3320 !important; color:#fff !important;
}

/* 5) Tabs → cozy */
.ps1-theme .ps1-tab, .ps1-theme .chatTab, .ps1-theme #charPanel [data-tab] {
  color:var(--ps1-ink-dim) !important; background:#d8c088 !important;
  border:3px solid var(--cz-wood) !important; border-bottom:none !important; border-radius:12px 12px 0 0 !important; box-shadow:none !important;
}
.ps1-theme .ps1-tab.active, .ps1-theme .chatTab.active, .ps1-theme #charPanel [data-tab].active {
  color:#6a3d12 !important; background:var(--cz-cream) !important; box-shadow:inset 0 -3px 0 0 var(--ps1-gold) !important;
}

/* 6) Slots (inventory / hotbar / output) → cream rounded */
.ps1-theme .ps1-slot, .ps1-theme .hotslot, .ps1-theme .slot, .ps1-theme .hbSlot {
  background:#d6bd80 !important; border:3px solid var(--cz-wood) !important; border-radius:10px !important;
  box-shadow:inset 0 2px 0 #efdcac, 0 3px 0 rgba(107,66,32,.35) !important;
}
.ps1-theme .slot.empty { border-color:#c9a86e !important; opacity:.8; }
.ps1-theme .hbSlot.sel { border-color:var(--cz-go) !important; box-shadow:inset 0 0 0 2px var(--cz-go), 0 3px 0 var(--cz-godk) !important; }
.ps1-theme .slot .qty, .ps1-theme .ps1-slot .qty, .ps1-theme .hbSlot .qty { color:#5a3a1a !important; text-shadow:0 1px 0 #efdcac !important; }

/* 7) Bars → rounded pastel; HP pink, XP honey, skills green */
.ps1-theme .ps1-bar, .ps1-theme .skbar, .ps1-theme .recipe, .ps1-theme #shpbar, .ps1-theme #xptrack {
  background:#d8c088 !important; border:3px solid var(--cz-wood) !important; border-radius:9px !important; box-shadow:inset 0 2px 0 #d8c48e !important;
}
.ps1-theme .ps1-bar > i, .ps1-theme .skbar > i { background:linear-gradient(#8faa4a,#6f8f39) !important; }
.ps1-theme .ps1-bar.hp > i { background:linear-gradient(#c25560,#a3323f) !important; }
.ps1-theme .ps1-bar.xp > i, .ps1-theme .skbar.maxed > i { background:linear-gradient(#d9a94a,#b8842f) !important; }
.ps1-theme .recipe { padding:10px !important; }

/* 8) Fishing bar → cozy blue reel (the responsiveness upgrade) */
.ps1-theme #fishbar { background:#dff0fa !important; border:3px solid #3f6ea0 !important; border-radius:12px !important; height:22px !important; box-shadow:inset 0 2px 0 #fff !important; overflow:hidden; }
.ps1-theme #fishfill { background:linear-gradient(#7fc8f0,#4aa3e0) !important; }
.ps1-theme #fishlabel, .ps1-theme #gatherLbl { color:#3a6a2a !important; text-shadow:0 1px 0 #fff !important; }

/* 9) inputs + misc text */
.ps1-theme #chatInput, .ps1-theme .ps1-input, .ps1-theme #nameInput, .ps1-theme #bugText, .ps1-theme #chatLog {
  background:#efdcac !important; color:#5a3a1a !important; border:3px solid var(--cz-wood) !important; border-radius:10px !important; box-shadow:none !important;
}
.ps1-theme .muted, .ps1-theme .ps1-sub { color:var(--ps1-ink-dim) !important; }

/* 10) Tannery panel: cozy stepper buttons + dark-on-cream text (its inline colours were tuned for the dark theme) */
.ps1-theme .tqBig { background:#d6bd80 !important; border:3px solid var(--cz-wood) !important; color:#5a3a1a !important; box-shadow:0 3px 0 var(--cz-wood) !important; }
.ps1-theme .tqBig:active { box-shadow:0 1px 0 var(--cz-wood) !important; transform:translateY(2px) !important; }
.ps1-theme .tanMult, .ps1-theme .tqvBig { color:#5a3a1a !important; }
.ps1-theme .tanArrow { color:#b06a24 !important; }
.ps1-theme .tanStock.ok { color:#6f8f39 !important; }
.ps1-theme .tanStock.low { color:#a3323f !important; }
.ps1-theme .tanTime { color:#b06a24 !important; }
.ps1-theme .tanCollect { background:rgba(224,169,75,.28) !important; border-color:#b0742a !important; }
.ps1-theme .tanCollect .tanMult { color:#6a3d12 !important; }
.ps1-theme .tanDown { color:#6f8f39 !important; }
.ps1-theme .tanIcon, .ps1-theme .slot img, .ps1-theme .ic { image-rendering:pixelated; }

/* 11) Settings menu: its inner labels / value read-outs / version / tabs kept the DARK theme's
   light-grey text (base index.html <style>), so they wash out on the cozy CREAM panel. Repaint
   dark-on-cream so every line reads (headings/buttons/close are already handled by rules 3–5). */
.ps1-theme #settingsPanel .setSection label { color: var(--ps1-ink) !important; }        /* slider + toggle labels */
.ps1-theme #settingsPanel .setSection .setval { color: var(--ps1-line) !important; }      /* live % read-out */
.ps1-theme #settingsPanel #setVer { color: var(--ps1-line) !important; }                  /* version string */
.ps1-theme #settingsPanel .setTab { color: var(--ps1-ink) !important; background:#d8c088 !important; border:3px solid var(--cz-wood) !important; }   /* inactive tab: dark text on tan (was light-grey on a dark blob) */
.ps1-theme #settingsPanel .setTab.active { color:#fff5e2 !important; background: var(--cz-woodlt) !important; border-color: var(--cz-wood) !important; box-shadow:0 3px 0 var(--cz-wood) !important; }   /* active tab: cozy wood, not the lone purple */

/* 12) Character panel polish — Kevon: cut-off slots, blend-y stat text, ugly drag title */
/* gear-stat box: parchment inset, dark walnut text, dmg red / heal olive (was light-on-dark, washed out) */
.ps1-theme .gearStats { background:#d3b878 !important; border:2px solid var(--cz-wood) !important; box-shadow:inset 0 2px 0 #e2ca8f !important; color:#5a3d20 !important; }
.ps1-theme .gsRole, .ps1-theme .gsOff, .ps1-theme .gsDef { color:#5a3d20 !important; }
.ps1-theme .statChip[data-stip="dmg"], .ps1-theme .statChip[data-stip="dps"],
.ps1-theme .statChip[data-stip="bleed"], .ps1-theme .statChip[data-stip="poison"], .ps1-theme .statChip[data-stip="burn"] { color:#a3323f !important; }
.ps1-theme .statChip[data-stip="heal"], .ps1-theme .statChip[data-stip="hps"], .ps1-theme .statChip[data-stip="lifesteal"] { color:#5a7d28 !important; }
.ps1-theme .gsHi { color:#5a7d28 !important; } .ps1-theme .gsMid { color:#a3701f !important; }
/* drag handle: a subtle warm grip instead of the blue-grey blob */
.ps1-theme .dragbar { background:rgba(78,52,24,.16) !important; color:#7a5a2e !important; font-family:var(--ps1-font,monospace) !important; letter-spacing:.1em !important; border-radius:10px 10px 0 0 !important; }
/* wider character/inventory/stats windows (desktop) so the equipment-slot columns clear the 16px frame */
@media (min-width:701px) { .ps1-theme #charPanel, .ps1-theme #invPanel, .ps1-theme #statsPanel { width:352px !important; } }

/* 13) Fish-caught popup -> parchment card (the rarity-coloured border stays, set inline) */
.ps1-theme #catchPop .catchInner { background:#e2ca8f !important; border-width:3px !important; border-radius:14px !important; box-shadow:0 6px 0 rgba(50,30,12,.45), 0 10px 20px rgba(40,22,8,.3) !important; color:#5a3d20 !important; }
.ps1-theme #catchPop .muted { color:#8a6c42 !important; }
/* the self-HUD health bar (bottom) -> medieval wood track + deep-red fill */
.ps1-theme #shpbar { background:#5a3d20 !important; border:3px solid var(--cz-wood) !important; border-radius:10px !important; box-shadow:inset 0 2px 0 rgba(0,0,0,.35) !important; }
.ps1-theme #shpbar::before { opacity:.5; }
/* mana + stamina bars -> same wood track as HP (blue/amber fills show on top) */
.ps1-theme #mpbar, .ps1-theme #stbar { background:#5a3d20 !important; border:2px solid var(--cz-wood) !important; border-radius:8px !important; box-shadow:inset 0 2px 0 rgba(0,0,0,.35) !important; }
/* ability bar (Q/E/R/F) -> darker inset slots than the item hotbar so the two rows read as different systems */
.ps1-theme .abSlot { background:linear-gradient(180deg,#6a4520,#3c2610) !important; border:3px solid var(--cz-wood) !important; border-radius:10px !important; box-shadow:inset 0 2px 0 rgba(255,224,150,.15), 0 3px 0 rgba(60,32,12,.5) !important; }
.ps1-theme .abSlot .abKey { color:#efdcac !important; }

/* ============================================================================
   14–16) CONTRAST SWEEP (Kevon: "any light text on light background needs to be
   black instead of white"). The old PS1 theme was dark-panels + light text
   everywhere; the medieval reskin flipped panels to parchment but a lot of text
   kept its light colour -> washed out. Fixes below are all theme-scoped + use
   !important so they also beat the runtime inline colours main.js writes.
   ============================================================================ */

/* 14) Tooltips + the right-click menu were DESIGNED dark (light + item-rarity inner
   text); §2's panel rule wrongly flipped them to parchment, so every rarity/stat line
   went light-on-light. Put them back on a dark WALNUT surface (still medieval) — this
   fixes their whole inner cluster at once AND keeps the rarity colour language intact.
   Also drop the ornate 16px frame (looks broken at tooltip size). */
.ps1-theme #itemTip, .ps1-theme #playerMenu, .ps1-theme #infoPop {
  background:#241a0d !important; color:#efe0c4 !important;
  border:2px solid var(--cz-wood) !important; border-image:none !important; border-radius:10px !important;
  box-shadow:0 6px 0 rgba(20,12,4,.55), 0 8px 18px rgba(0,0,0,.45) !important;
}
.ps1-theme #playerMenu button { color:#e8dcc2 !important; }
.ps1-theme #playerMenu button:hover { background:#3a2a15 !important; }

/* 15) Text sitting DIRECTLY on the parchment (not in a dark inset) kept the dark-theme's
   light-grey/white — repaint dark walnut. */
.ps1-theme .hbSlot span, .ps1-theme .hbSlot b.hbq { color:#43301a !important; text-shadow:0 1px 0 #efdcac !important; }  /* hotbar key number + item qty */
.ps1-theme #aboutPanel p, .ps1-theme #patchPanel li { color:#4a3418 !important; }
.ps1-theme #bugHint, .ps1-theme #bugStatus { color:#43301a !important; }                 /* bug-report hint + status line (status colour is set inline by JS) */
.ps1-theme #partyCount { color:#5a4326 !important; }                                     /* "0/5" party counter */
.ps1-theme #nameOverlay .panel p { color:#4a3418 !important; }
.ps1-theme #nameErr { color:#a3323f !important; }                                        /* pale red -> deep red on parchment */

/* 16) JS-baked text that renders bare on parchment (verified NOT inside a dark inset). */
.ps1-theme [style*="7f8aa0"] { color:#6a4d28 !important; }                                /* the uppercase section sub-labels (wiki / station / trade / $PLONK / ranks) */
.ps1-theme #inspBody2 [style*="cdd9e5"] { color:#43301a !important; }                     /* inspect: stat-block labels */
.ps1-theme #inspBody2 b[style*="f0cc6e"] { color:#8a5a12 !important; }                    /* inspect: stat values (bright gold -> dark amber) */

/* 15) GLOBAL CONTRAST SWEEP — the whole UI is cream for players, but many inline text colours were authored
   for the old DARK theme (light greys/blues) and wash out on the parchment. Remap them to readable browns,
   theme-scoped so the dev-only PS1 dark theme is untouched. Light labels that live INSIDE a dark slot/box are
   protected right after (their light colour is correct there — higher specificity wins). */
.ps1-theme [style*="color:#cdd9e5"], .ps1-theme [style*="color:#cdd6e4"], .ps1-theme [style*="color:#cdd3e0"],
.ps1-theme [style*="color:#dfe6f0"], .ps1-theme [style*="color:#e6eef5"], .ps1-theme [style*="color:#e6edf5"],
.ps1-theme [style*="color:#e8ebf4"], .ps1-theme [style*="color:#e7e1ff"], .ps1-theme [style*="color:#cdd6ff"] { color:#43301a !important; }
.ps1-theme [style*="color:#9aa6b2"], .ps1-theme [style*="color:#8a93a8"], .ps1-theme [style*="color:#8a93a6"],
.ps1-theme [style*="color:#8a93a3"], .ps1-theme [style*="color:#7f8aa0"], .ps1-theme [style*="color:#6f7990"],
.ps1-theme [style*="color:#9fb4c8"], .ps1-theme [style*="color:#9ec5ff"] { color:#6a4d28 !important; }
/* protect light labels that sit INSIDE a dark box/slot (equipped tool/pet slots, market sort, station boxes) */
.ps1-theme [style*="background:rgba(0,0,0"] [style*="color:#8a93a8"], .ps1-theme [style*="background:rgba(0,0,0"] [style*="color:#9aa6b2"],
.ps1-theme [style*="background:rgba(0,0,0"] [style*="color:#cdd9e5"], .ps1-theme [style*="background:rgba(0,0,0"] [style*="color:#cdd6e4"] { color:#cdb98a !important; }
.ps1-theme [style*="background:rgba(0,0,0"][style*="color:#e6eef5"], .ps1-theme select[style*="background:rgba(0,0,0"] { color:#e6eef5 !important; }

/* 16) GOLD/AMBER text on the cream parchment washes out (both are light). Remap the coin AMOUNT (.coins)
   and the light-gold inline text to a rich, readable dark amber. Protect the one gold that sits on a dark box. */
.ps1-theme .coins { color:#8a5a12 !important; }
.ps1-theme [style*="color:#ffd166"], .ps1-theme [style*="color:#ffd54a"], .ps1-theme [style*="color:#ffd23d"],
.ps1-theme [style*="color:#f0cc6e"], .ps1-theme [style*="color:#ffd98a"], .ps1-theme [style*="color:#ffe08a"],
.ps1-theme [style*="color:#e0b46a"], .ps1-theme [style*="color:#ffcf5a"] { color:#8a5a12 !important; }
.ps1-theme [style*="background:rgba(0,0,0"] [style*="color:#ffd166"], .ps1-theme [style*="background:rgba(0,0,0"][style*="color:#ffd166"] { color:#ffd166 !important; } /* keep gold light on a dark box */

/* ============================================================================
   17) READABILITY FIXES — Kevon-approved audit items (vpschanges #358 artifact,
   "fix all"). Extends §15/16's remap machinery: same [style*=] technique, same
   dark-inset protections. Every rule !important + placed LAST so it wins ties.
   ============================================================================ */
/* A7/A13-16 + B7: RARITY colours on parchment/tan cards (crate names, wiki titles, market rows).
   Darker variants of the SAME hue so tiers stay distinguishable. */
.ps1-theme [style*="color:#b7c0cb"] { color:#3d4650 !important; }   /* common: slate */
.ps1-theme [style*="color:#4ee06a"] { color:#1e7a34 !important; }   /* uncommon: green */
.ps1-theme [style*="color:#3da5ff"] { color:#155e9e !important; }   /* rare: blue */
.ps1-theme [style*="color:#b65cff"] { color:#7a2ea8 !important; }   /* epic: purple */
/* A8/A11: "missing ingredient" pale red -> deep red (still reads as red) */
.ps1-theme [style*="color:#ff9d9d"] { color:#a32e2e !important; }
/* A9: chat "System:" mint -> forest green on the cream chat log */
.ps1-theme [style*="color:#8fd6a0"] { color:#1e6b3f !important; }
/* A3/B8: mint balances/status (online, $PLONK) — keep mint but outline it so it reads on any band */
.ps1-theme [style*="color:#9be3a8"], .ps1-theme #onlineRow {
  text-shadow:-1px -1px 0 #2a1f14, 1px -1px 0 #2a1f14, -1px 1px 0 #2a1f14, 1px 1px 0 #2a1f14 !important; }
/* ...but inside the TRUE dark surfaces (tooltip / right-click menu / info pop) the ORIGINAL light
   palette is correct — restore it there. */
.ps1-theme #itemTip [style*="color:#b7c0cb"], .ps1-theme #playerMenu [style*="color:#b7c0cb"], .ps1-theme #infoPop [style*="color:#b7c0cb"] { color:#b7c0cb !important; }
.ps1-theme #itemTip [style*="color:#4ee06a"], .ps1-theme #playerMenu [style*="color:#4ee06a"], .ps1-theme #infoPop [style*="color:#4ee06a"] { color:#4ee06a !important; }
.ps1-theme #itemTip [style*="color:#3da5ff"], .ps1-theme #playerMenu [style*="color:#3da5ff"], .ps1-theme #infoPop [style*="color:#3da5ff"] { color:#3da5ff !important; }
.ps1-theme #itemTip [style*="color:#b65cff"], .ps1-theme #playerMenu [style*="color:#b65cff"], .ps1-theme #infoPop [style*="color:#b65cff"] { color:#b65cff !important; }
.ps1-theme #itemTip [style*="color:#ff9d9d"], .ps1-theme #playerMenu [style*="color:#ff9d9d"], .ps1-theme #infoPop [style*="color:#ff9d9d"] { color:#ff9d9d !important; }
/* A1: version string in the corner sits on the DARK app footer -> antique gold, readable */
.ps1-theme #ver { color:#c9a86a !important; opacity:.85 !important; }
/* B1+A2+B16: the Controls hint panel was unreadable dark-on-dark AND covered the pickup/skill feed.
   Restyle as a dark-wood card (matches the bottom-bar pills) w/ cream text + full-strength done-green,
   and move it below the feed lines. */
.ps1-theme #tutControls { background:linear-gradient(180deg, rgba(44,34,21,.94), rgba(17,12,8,.96)) !important;
  border:2px solid #7a5c2e !important; border-image:none !important; border-radius:12px !important;
  color:#efe0c4 !important; top:176px !important; box-shadow:0 6px 18px rgba(0,0,0,.5) !important; }
.ps1-theme #tutControls .ctrlTitle { color:#ffd166 !important; }
.ps1-theme #tutControls .ctrlItem { color:#e8d9b8 !important; opacity:1 !important; }
.ps1-theme #tutControls .ctrlItem.done { color:#7be39a !important; }
.ps1-theme #tutControls #ctrlClose { color:#f5e9d0 !important; opacity:.95 !important; }
/* B3: bounty pool line (top-right panel) -> cream + outline (band brightness varies) */
.ps1-theme #econ { color:#f0e0bd !important; text-shadow:-1px -1px 0 #2a1f14, 1px -1px 0 #2a1f14, -1px 1px 0 #2a1f14, 1px 1px 0 #2a1f14 !important; }
/* B2: "HP 100/100 · CMB 1" sits on the CREAM pill -> dark ink */
.ps1-theme #shptext { color:#43301a !important; text-shadow:none !important; }
/* B5: hotbar key digits + qty — §15 made them dark, but the bottom bar went DARK WOOD since -> cream w/ shadow */
.ps1-theme .hbSlot span, .ps1-theme .hbSlot b.hbq { color:#f0e0bd !important; text-shadow:0 1px 2px #000, 0 0 3px #000 !important; }
/* B6: panel TITLES (Settings / Patch Notes / Report a Bug...) — amber was ~2.5:1 on parchment -> darker antique gold */
.ps1-theme h1, .ps1-theme h2, .ps1-theme h3, .ps1-theme h4, .ps1-theme .ps1-title, .ps1-theme legend { color:#6e4a00 !important; }
/* A6: patch-notes day labels (class-based gold, missed by the [style*] gold remap) */
.ps1-theme .patchLabel { color:#7a5200 !important; border-bottom-color:rgba(78,52,24,.35) !important; }
/* B4: chat placeholder + disabled send were ghost-faint on the cream input */
.ps1-theme #chatInput::placeholder { color:#8a6c42 !important; opacity:1 !important; }
.ps1-theme #chatSend:disabled { color:#8a6c42 !important; opacity:.85 !important; }
/* B10: coin-dialog amount input was dark-on-dark -> parchment input like every other themed input */
.ps1-theme #coinDialog input[type=number] { background:#efdcac !important; color:#5a3a1a !important; border:2px solid var(--cz-wood) !important; }
/* A4/A5/B12: character equipment/tool slots — the rgba(0,0,0,.3) boxes composite to MID-TAN over the
   parchment panel, so §15's light protection colour is too faint HERE. Dark ink instead (id-scoped =
   more specific than the generic protection). */
.ps1-theme #charPanel [style*="background:rgba(0,0,0"] [style*="color:#8a93a8"] { color:#2e2412 !important; }
.ps1-theme #charPanel [style*="background:rgba(0,0,0"] [style*="color:#6f7990"] { color:#33230e !important; }
/* B14: disabled settings rows kept a readable-but-clearly-disabled tone */
.ps1-theme .setSection label.setDisabled { opacity:.62 !important; }
/* §17 follow-up — stragglers the after-audit re-run caught: */
.ps1-theme #voiceRow label { color:#43301a !important; }                                   /* A10: class-based colour, the [style*] remap can't see it */
.ps1-theme #chatSend:disabled { color:#e8d9b8 !important; opacity:.65 !important; }        /* my B4 pick was brown-on-wood-button — cream @ 65% reads AND still looks disabled */
.ps1-theme #stationBody [style*="color:#a3701f"] { color:#6e4a00 !important; }             /* A12: dish/recipe names amber->darker on tan cards */
.ps1-theme [style*="color:#b8c0cb"], .ps1-theme [style*="color:#9fb0c0"] { color:#3d4650 !important; }  /* new grey variants from the weapon-kit recipes */
.ps1-theme [style*="color:#4ee06a"] { color:#176028 !important; }                          /* uncommon green: one shade deeper (3.04 -> ~4.2:1 on tan) */
.ps1-theme .recipe .top b { color:#6e4a00 !important; }                                    /* A12 (real source: ps1 theme rule paints recipe titles --ps1-gold) */
/* 18) World Builder palette (Kevon: 'hard to read the text on the world builder menu'): .btool tiles kept
   their DARK navy background while --ink went dark walnut for the parchment panels -> dark-on-dark labels.
   Re-tile in the theme's tan slot language: tan cells, dark ink, green active. */
.ps1-theme .btool { background:#d6bd80 !important; color:#43301a !important; border:2px solid var(--cz-wood) !important; border-radius:9px !important; }
.ps1-theme .btool .bvar { background:#efdcac !important; color:#5a3a1a !important; border:1px solid var(--cz-wood) !important; }
.ps1-theme .btool.active { background:var(--cz-go) !important; color:#1e3a12 !important; border-color:var(--cz-godk) !important; }
/* active debug toggle: was wood #8a5a2b = identical to an INACTIVE wood button (Kevon: "doesn't show when active").
   Bright green + inner ring + glow so ON reads at a glance against the wood off-state. ID beats the button rule. */
.ps1-theme #debugPanel .btool.on { background:var(--cz-go) !important; color:#12300a !important; border-color:#3e5f1e !important; box-shadow:inset 0 0 0 2px rgba(255,255,255,.5), 0 0 11px rgba(111,154,63,.85) !important; font-weight:800 !important; text-shadow:none !important; }

/* 19) World Builder / Debug readouts: the selection line ("Selected: vendor"), collision hints and value
   labels are .muted = tan #6a4d28 on the parchment panel — low contrast, and the see-through slider fades
   them further (Kevon: "Selected: vendor is hard to read... anything selected in the world builder").
   Dark walnut so they read; the primary readout also goes bold. */
.ps1-theme #builderPanel .muted, .ps1-theme #debugPanel .muted { color:#4a3418 !important; }
.ps1-theme #builderPanel #bSel { color:#33281a !important; font-weight:700 !important; }

/* 19) KEVON CONTRAST PASS (2026-07-07, root session): "some UI has bad text color where it fits too
   much to the UI background" — bright/ghost text on the bright parchment panels goes DARK WALNUT.
   (a) panel headings (SETTINGS / titles): the antique gold + 2px cream emboss read washed-out at the
       pixel font size — much darker ink, halo killed. */
.ps1-theme h1, .ps1-theme h2, .ps1-theme h3, .ps1-theme h4, .ps1-theme .ps1-title, .ps1-theme legend {
  color:#452e07 !important; text-shadow:none !important;
}
/* (b) .muted at 50% opacity over parchment = ghost text (Daily "0/20" counters, "Finish all 3..."
       footnote, "claimed", Loading…) — keep it quieter than body ink but actually readable. */
.ps1-theme .muted { opacity:.78 !important; }
/* (c) character-panel slot chips (HEAD/TORSO/AMULET labels + "soon"/"—"): the old navy-theme greys
       (#8a93a8 / #6f7990) sit on translucent chips over parchment -> tan-on-tan. Dark walnut, scoped
       to the char panel so the same greys stay LIGHT on dark surfaces (player menu etc.). */
.ps1-theme #charPanel [style*="color:#8a93a8"], .ps1-theme #charPanel [style*="color:#6f7990"] { color:#3f2e16 !important; }
/* (d) top announce/feed banners ("RECIPE BOOK IS LOCKED — ...") — bolder, darker on the parchment strip */
.ps1-theme #feed .panel { color:#3a2a12 !important; font-weight:700; }
/* (e) locked slot chips (HEAD/LEGS/FEET "SOON"): the 50% whole-chip fade over parchment made them
   near-invisible — still clearly dimmed vs live slots, but readable now. */
.ps1-theme #charPanel [data-slot][style*="opacity:.5"] { opacity:.74 !important; }
/* (f) crafting-station recipe rows (Kevon screenshot: "blacksmithing lv 8 barely visible"): the pale
   MINT "requirement met" notes + pale blue tabs/links wash out on parchment — deep green / walnut / ink-blue. */
.ps1-theme [style*="color:#9fe0b0"] { color:#256b39 !important; font-weight:700; }  /* met mats + "Blacksmithing Lv 8" when you HAVE it — still reads as go-green */
.ps1-theme [style*="color:#cdd9e5"] { color:#43301a !important; }                    /* inactive category tabs (MELEE/ARMOUR/TOOLS) */
.ps1-theme [style*="color:#9ec5ff"] { color:#2b5f8f !important; }                    /* Recipe Book inline links */
