/* Generated by game-rules.mjs. Edit game-rules-themes.mjs. */

:root{
  --bg:#0a0e10; /* games/vale/style.css :root --bg: #0a0e10 */
  --sheet:#eee8d8; /* games/vale/style.css :root --paper: #eee8d8 */
  --ink:#1c1a15; /* games/vale/style.css :root --paper-ink: #1c1a15 */
  --muted:#5b5747; /* games/vale/style.css :root --paper-muted: #5b5747 */
  --accent:#7a2a1c; /* games/vale/style.css .vale-c-needs: #7a2a1c */
  --line:#5b5747; /* games/vale/style.css :root --paper-muted: #5b5747 */
  --display:"Courier Prime","Courier New",Courier,ui-monospace,monospace; /* games/vale/style.css :root --type: "Courier Prime","Courier New",Courier,ui-monospace,monospace */
  --reading:"Courier Prime","Courier New",Courier,ui-monospace,monospace; /* games/vale/style.css :root --type: "Courier Prime","Courier New",Courier,ui-monospace,monospace */
  --label:ui-monospace,"Cascadia Mono",Consolas,"Courier New",monospace; /* games/vale/style.css :root --mono: ui-monospace,"Cascadia Mono",Consolas,"Courier New",monospace */
  --titleInk:#1c1a15; /* games/vale/style.css :root --paper-ink: #1c1a15 */
  --outerInk:#ece8dc; /* games/vale/style.css :root --ink: #ece8dc */
  --dot:#c23b2a; /* games/vale/style.css :root --seal: #c23b2a */
  --weight:700; /* games/vale/style.css .vale-cover h1: 700 */
  --tracking:-.03em; /* games/vale/style.css .vale-cover h1: -.03em */
  --casing:none; /* games/vale/style.css .vale-main button,.vale-top button,.vale-rules button,.results-dialog button: none */
  --italic:normal; /* games/vale/style.css .size-market .vale-c-top h4,.size-party .vale-c-top h4: normal */
  --buttonBg:#e6b85c; /* games/vale/style.css :root --accent: #e6b85c */
  --buttonInk:#1d1406; /* games/vale/style.css :root --accent-ink: #1d1406 */
  --buttonBorder:#e6b85c; /* games/vale/style.css :root --accent: #e6b85c */
  --buttonRadius:3px; /* games/vale/style.css .vale-main button,.vale-top button,.vale-rules button,.results-dialog button: 3px */
  --buttonShadow:none; /* games/vale/style.css .vale-main button,.vale-top button,.vale-rules button,.results-dialog button: none */
  --panel:#e2dac6; /* games/vale/style.css :root --paper2: #e2dac6 */
  --panelInk:#1c1a15; /* games/vale/style.css :root --paper-ink: #1c1a15 */
  --panelMuted:#5b5747; /* games/vale/style.css :root --paper-muted: #5b5747 */
  --panelBorder:#5b5747; /* games/vale/style.css :root --paper-muted: #5b5747 */
  --panelRadius:2px; /* games/vale/style.css .vale-doc: 2px */
  --panelShadow:0 1px 0 #fff4 inset,0 14px 40px #0009; /* games/vale/style.css .vale-doc: 0 1px 0 #fff4 inset,0 14px 40px #0009 */
  --cover-position:42% 45%;
  --motif:"§";
}
:root{--reading-inset:24px}.lead,.sticky-name{color:var(--outerInk)}.cover-copy .eyebrow{color:var(--muted)}.cover-copy{background:var(--sheet);color:var(--ink);padding:24px!important;border-top:7px solid var(--ink)}.cover-copy nav,.cover-copy .eyebrow{color:var(--muted)}.rulebook{background:var(--sheet);color:var(--ink);box-shadow:0 14px 40px #0009;padding:24px}#rules-content h2,#rules-content h3{font:700 1.15em/1.4 var(--label)}.glance{border-top:7px solid var(--panelInk)}.document-strip{border-bottom:2px solid var(--ink);padding-bottom:16px;margin-bottom:36px;font:700 13px/1.6 var(--label);letter-spacing:.14em}.glance::before{content:"FIELD COPY";color:var(--accent);display:block;width:max-content;border:2px solid var(--panelInk);padding:2px 8px;margin-bottom:16px;font:700 11px var(--label);transform:rotate(-3deg)}
.glance::before{content:"KEEPER’S ALMANAC"}.title-name small{display:block;font-size:.42em;letter-spacing:0;color:var(--muted)}

[data-toy=reading-suns]{height:50px;margin:12px 0}
.reading-sun-track{display:flex;justify-content:space-between;gap:4px;max-width:100%;padding:8px 0}
.reading-sun{width:25px;height:25px;border:1px solid #9b7c45;border-radius:50%;text-align:center;font:13px/25px Georgia;color:#735f43;background:#bcb29844}
.sun-risen{background:#e3af46;color:#382f24}
[data-toy=seek-spirits]{margin:24px 0;position:relative}
.footprints{overflow:hidden;font:14px/1.5 Georgia;color:#605342;border-bottom:1px dashed #a18d6e;height:auto;min-height:44px}
.footprints[data-reverse=true]{border-bottom-style:solid}
.keeper-markers{height:48px;display:flex;align-items:center;justify-content:space-around;gap:4px}
.keeper-marker{border:1px solid #8d7560;border-radius:50%;padding:6px 8px;background:#ddceb2;font:13px Georgia}
.market{display:grid;align-content:start;height:auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.sanctuary-spirit,.spirit,.stir-spirit{min-width:0;padding:5px;border:1px solid #a58c68;border-radius:5px;background:#f3e8d0;color:#443b2e;font:14px/1.35 Georgia;cursor:pointer;text-align:left}
.sanctuary-spirit img,.spirit img,.stir-spirit img{display:block;width:100%;object-fit:cover;border-radius:2px}
.spirit img{height:108px}
.spirit strong,.spirit-cost{display:block;margin-top:5px}
.spirit-cost{font-size:12px}
.market .spirit{position:relative;height:auto;min-height:156px}
.market .spirit:disabled{cursor:default}
.market .spirit[data-owner=visitor]{outline:2px solid #947231}
.spirit-seal{display:block;color:#863e31;border-top:1px solid #bfb098;margin-top:6px;font:13px Georgia}
.note{font:16px/1.6 Georgia;color:#514631;min-height:0;padding:8px 0}
.new-almanac,.sunset-seal{width:44px;height:44px;border:3px double #953a31;color:#963d33;background:#f0dfc0;font:26px Georgia;border-radius:3px;cursor:pointer}
.new-almanac{right:0;bottom:0;position:relative;margin-left:auto;display:block}
[data-toy=act-spirits]{margin:24px 0;position:relative}
.pouch{background:radial-gradient(ellipse at center,#cfb98a77,transparent 70%);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;height:auto;min-height:70px}
.pouch-label{width:100%;text-align:center;font:16px Georgia}
.pouch-bead{font:13px Georgia;border:1px solid #9d7655;border-radius:45%;padding:8px;background:#d9b092}
.pouch-bead[data-bead=j]{background:#b7c5a0}
.pouch-bead[data-bead=g]{background:#e0c376}
.rack{overflow-y:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px;padding:8px 2px}
.spirit-on-paper{min-width:0}
.spirit-on-paper>.spirit{width:100%}
.decision,.spirit-decision{display:block;width:100%;min-height:38px;border:1px solid #b29a74;background:#e8dbc0;color:#4d3825;font:14px/1.4 Georgia;padding:6px;margin:4px 0}
.hand-note{font:14px Georgia}
.sanctuary{overflow-y:auto;display:flex;flex-wrap:wrap;align-content:start;gap:6px;border-top:3px double #a18b66;padding:8px 0}
.sanctuary-title{width:100%;font:16px Georgia;height:24px}
.sanctuary-spirit{width:95px;flex-shrink:0}
.sanctuary-spirit img{height:64px}
.sanctuary-spirit strong{font-size:13px}
.decisions{overflow-y:auto;display:flex;flex-wrap:wrap;align-content:start;gap:6px}
.decisions button{width:auto;flex:1 0 40%}
.effect{font:16px/1.5 Georgia;overflow-y:auto;color:#59492f}
[data-toy=stir-merit]{margin:24px 0}
.merit-track{background:repeating-linear-gradient(90deg,transparent 0 9.8%,#ac987255 9.8% 10%);border:1px solid #a99673;padding:8px}
.merit-lane{height:38px;position:relative;border-bottom:1px dotted #ad9c80;margin:2px 0}
.merit-stone{position:absolute;top:4px;background:#d7c59f;border:1px solid #7e6a4b;border-radius:50%;font:12px/24px Georgia;padding:0 5px;transform:translateX(-30%)}
.merit-value{position:absolute;right:0;font:16px/28px Georgia;background:#f2e5cd}
.stir-spirits{display:flex;gap:6px;flex-wrap:wrap;overflow-y:auto;padding:6px 0}
.stir-spirit{width:100px}
.stir-spirit img{height:64px}
.sunset-seal{display:block;margin-left:auto}
[data-toy=almanac-discoveries]{height:190px;display:flex;align-items:center;justify-content:space-around}
.almanac-fox{width:200px;height:160px;padding:0;border:0;background:none;overflow:hidden}
.almanac-fox img{width:200px;height:150px;object-fit:cover;clip-path:inset(0 26% 0 26%)}
.tails-fanned img{clip-path:inset(0)}



/* Temporary paper lantern stand-in, wired to the painter's exact transparent slot.
   See root art-wanted.md. The card paintings remain the game's original art. */.traveller-lantern{width:58px;height:90px;border:3px solid #806039;border-radius:35%;background:url(art/rules-traveller-lantern.webp) 50%/contain no-repeat,repeating-linear-gradient(#e9c581 0 12px,#9f763755 13px 15px);transform-origin:50% 0;padding:0;position:relative}
.traveller-lantern::before{content:"";position:absolute;left:24px;top:-24px;height:24px;border-left:2px solid #796747}
[data-toy=jade-rabbit]{height:0;position:relative}
.rabbit-glance{isolation:isolate;position:relative;cursor:default}
.almanac-rabbit{position:absolute;width:70px;height:70px;border:0;padding:0;background:none;z-index:0;top:0;right:8px;transform:translateY(0);clip-path:inset(0 0 100%);pointer-events:none}
.almanac-rabbit img{width:70px;height:70px;object-fit:cover;border-radius:50%}
.rabbit-peeking{transform:translateY(-12px)}
.marked{animation:vale-marked .3s ease-out 1}
.beads-paid [data-paid=true]{animation:beads-paid .4s ease-out 1}
.spirit-arrives{animation:spirit-arrives .35s ease-out 1}
.merit-earned{animation:merit-earned .4s ease-out 1}
.lantern-sway{animation:lantern-sway .9s ease-out 1}
@keyframes vale-marked{50%{filter:sepia(.35)}}
@keyframes beads-paid{50%{transform:translateY(10px);opacity:.6}}
@keyframes spirit-arrives{0%{transform:translateY(16px);opacity:.4}}
@keyframes merit-earned{50%{filter:brightness(1.15)}}
@keyframes lantern-sway{20%{transform:rotate(18deg)}
50%{transform:rotate(-12deg)}
80%{transform:rotate(5deg)}}
@media(max-width:560px){.spirit img{height:105px}
.footprints{font-size:13px}
.reading-sun{width:23px;height:23px;line-height:23px}}
[data-toy]{overflow:clip;min-width:0;max-width:100%;overflow-wrap:anywhere}
[data-toy] [hidden]{display:none!important}
.rabbit-glance:hover{cursor:pointer}
.rabbit-glance:focus-visible{outline:3px solid var(--accent)}
.almanac-rabbit.rabbit-peeking{transform:translateY(-40px);clip-path:inset(0 0 43%);pointer-events:auto}
[data-toy=act-spirits],[data-toy=seek-spirits],[data-toy=stir-merit]{height:auto;min-height:0}
.decisions,.effect,.rack,.sanctuary{position:relative;inset:auto;height:auto}
.market .spirit img{height:76px}
.decisions:empty,.rack:empty,.stir-spirits:empty{display:none}
.merit-track,.stir-spirits{height:auto}
.spirit-on-paper img{height:90px}
.spirit strong{overflow-wrap:anywhere}
@media(max-width:560px){.market .spirit{min-height:165px;font-size:11px;padding:3px}
.market .spirit img{height:62px}
.spirit-cost{font-size:10px}
.keeper-marker{font-size:10px;padding:4px 2px}}
.sanctuary:not(:has(.sanctuary-spirit)){padding-block:4px}
.sanctuary:not(:has(.sanctuary-spirit)) .sanctuary-title{height:auto}
.effect:empty{display:none}
[data-toy] *{transition:transform .3s,translate .3s,opacity .3s}
@media(prefers-reduced-motion:reduce){[data-toy],[data-toy] *{animation:none!important;transition:none!important}}
