/* The Living Road: a readable illuminated fieldbook, not a dark dashboard.
   Paper and ornaments are decorative layers. Text remains selectable HTML;
   controls keep native semantics. Artwork is authored by manuscript_art.py. */
body.manuscript {
  --paper:#25302f; --paper-light:#33423f; --ink:#efe1bf; --muted:#c8b792;
  --rubric:#c18469; --gold:#d2b06f; --line:#c4ae8042; --panel:#1e2827;
  --serif:Palatino,'Palatino Linotype','Book Antiqua','URW Palladio L',P052,Georgia,serif;
  --sans:var(--serif);
  --paper-texture:url("assets/manuscript/paper.svg");
  background:radial-gradient(circle at top,#243635 0,#171f20 38%,#111718 100%),#171d1f url("assets/manuscript/bookcloth.svg");
  color:#e6d7b7; font:16px/1.65 var(--serif); color-scheme:dark;
}
.manuscript ::selection {background:#baa16c66;color:#342a22}
.manuscript h1,.manuscript h2,.manuscript h3,.manuscript h4 {font-family:var(--serif);font-weight:500;letter-spacing:-.3px}
.manuscript main {background:none!important}
.manuscript .site-header {min-height:88px;height:auto;align-items:flex-start;background:var(--paper-texture),#232a23e8;border-bottom:1px solid #c1ab7744;color:#e5d6b6;box-shadow:none;padding:14px 4% 12px;gap:20px}
.manuscript .brand {gap:10px;flex-shrink:0}
.manuscript .brand svg {color:#c2aa74;width:32px;height:42px}
.manuscript .brand>span {display:flex;flex-direction:column;gap:3px;font-size:24px;line-height:1.02;letter-spacing:1.1px;color:#f0dfb8}
.manuscript .brand b {color:inherit}
.manuscript .brand small {font:italic 12px/1.28 var(--serif);letter-spacing:.2px;color:#cdbb95;max-width:395px;text-transform:none}
.manuscript .site-header nav {gap:20px;font:14px/1.3 var(--serif);color:#e2d3b2;padding-top:7px}
.manuscript .header-motion {background:none;border:0;border-bottom:1px solid #b7a16d55;border-radius:0;color:#cfc19e;font:12px/1.4 var(--serif);width:132px}
.manuscript .button {border-radius:2px;font:15px/1.3 var(--serif);min-height:42px;padding:10px 18px;box-shadow:none}
.manuscript .button:hover {transform:none}
.manuscript .button.outline {background:none;border-color:#b99b624d;color:inherit}
.manuscript .button.primary {color:#f0dfbb;background:#596c56;border-color:#3e5240;box-shadow:inset 0 0 0 2px #d0bf8b33}
.manuscript .button.primary:hover {background:#475b46}
.manuscript :is(button,a,input,select,textarea,summary):focus-visible {outline:2px solid #98614a;outline-offset:4px}
.manuscript .section-wrap {max-width:1260px;padding-left:54px;padding-right:54px}
/* A single manuscript leaf holds the creator, not one panel per field. */
.manuscript .setup {isolation:isolate;position:relative;margin:22px auto 48px;padding-top:26px;padding-bottom:40px;color:var(--ink);overflow:visible}
.manuscript .setup::before,.manuscript .chapter::before,.manuscript .epilogue-frame::before {
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,#293534f2,#18201ff5),radial-gradient(ellipse at 50% 22%,#a17a4233 0,#2f352c00 46%),linear-gradient(90deg,#9d83553b,transparent 9%,transparent 91%,#8f75523d),var(--paper-texture),var(--paper);
  clip-path:polygon(2px 2px,7% 0,18% 2px,30% 1px,40% 2px,56% 0,70% 2px,85% 1px,calc(100% - 2px) 2px,100% 7%,calc(100% - 1px) 25%,100% 42%,calc(100% - 1px) 67%,100% 83%,calc(100% - 2px) calc(100% - 2px),83% 100%,68% calc(100% - 1px),44% 100%,28% calc(100% - 2px),13% 100%,2px calc(100% - 1px),0 82%,1px 61%,0 38%,1px 17%);
  box-shadow:inset 0 0 0 1px #b99c6662,inset 0 0 0 6px #00000026,0 16px 34px #09111240;
}
.manuscript .setup::after {content:"";position:absolute;left:4px;top:205px;bottom:60px;width:44px;pointer-events:none;background:url("assets/manuscript/margin.svg") top center/54px 324px repeat-y;opacity:.55;filter:brightness(.88) saturate(.8)}
.manuscript .creator-intro {text-shadow:none;text-align:left;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:0 0 10px;position:relative;padding-bottom:10px;border-bottom:1px solid #94836944}
.manuscript .creator-intro .eyebrow {font:11px/1.6 var(--serif);letter-spacing:2.4px;color:var(--rubric)}
.manuscript .creator-intro h1 {font-size:35px;line-height:1.12;color:#f0e2bf;margin:0;letter-spacing:-.8px}
.manuscript .creator-intro .eyebrow,.manuscript .creator-intro p:not(.eyebrow) {display:none}
.manuscript .creator-intro p:not(.eyebrow) {font:italic 16px/1.6 var(--serif);max-width:none;color:#d5c5a1}
.manuscript .snapshot-link {color:#d1bf96;font:11px/1.4 var(--serif);padding:0;border:0;display:inline-block;margin-top:0;white-space:nowrap}
.manuscript .adventure-invitation {font:italic 12px/1.5 var(--serif);color:#cfbf99;margin:0 0 20px;justify-content:flex-start}
.manuscript .adventure-invitation button {color:#d6c7a3;border:0;border-bottom:1px solid #b49a6755;background:none;border-radius:0;padding:2px 0;font:12px/1.5 var(--serif)}
.manuscript .setup-layout {grid-template-columns:minmax(0,1fr) 278px;gap:34px}
.manuscript .builder-block {border:0;background:none;box-shadow:none;padding:0;margin:0 0 27px}
.manuscript .block-label {font:22px/1.25 var(--serif);color:#eadbb8;gap:12px;margin:0 0 14px;align-items:center}
.manuscript .block-label .num {font:italic 24px/1 var(--serif);background:none;border:0;border-radius:0;box-shadow:none;width:32px;height:32px;color:var(--rubric)}
.manuscript .block-label .aside-label {font:9px/1.3 var(--serif);color:#cdb88e;letter-spacing:1px}
.manuscript .field-label {font:13px/1.5 var(--serif);color:#d6c5a0}
.manuscript input[type=text],.manuscript select,.manuscript textarea,.manuscript input[type=search] {font:16px/1.45 var(--serif);color:#efe4ca;background:#101716bf;border:0;border-bottom:1px solid #a38859;border-radius:0;box-shadow:none;padding:9px 7px;min-height:42px}
.manuscript input::placeholder {color:#c0ab82;font-style:italic}
.manuscript .small-note,.manuscript .faction-note,.manuscript .rules-note,.manuscript .race-note {font:12px/1.65 var(--serif);color:#cab891}
.manuscript .small-note {margin-top:9px}
.manuscript .rules-note strong,.manuscript .race-note strong {color:#efe0bf}
.manuscript .creator-core-row {display:grid;grid-template-columns:176px minmax(0,1fr);gap:26px;align-items:start}
.manuscript .creator-core-row .builder-block {margin-bottom:16px}
.manuscript .creator-core-row .appearance-line {align-items:flex-start;gap:8px}
.manuscript .creator-core-row .appearance-row {display:grid;grid-template-columns:repeat(2,68px);gap:7px}
.manuscript .creator-core-row .appearance-mode-toggle {margin-top:2px}
.manuscript .creator-core-row .race-grid {grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.manuscript .creator-decision-summary {margin-top:4px}
.manuscript .appearance-line {gap:12px}
.manuscript .appearance-choice {border:1px solid #97825c77;border-radius:2px;background:#202a29;color:#d6c19a;width:68px;height:60px}
.manuscript .appearance-choice[aria-pressed=true] {border-color:#b68262;background:#2b3735;box-shadow:inset 0 0 0 2px #f1dfb44d}
.manuscript .appearance-choice strong {color:#ddcbac;font:10px/1.1 var(--serif);letter-spacing:0;text-transform:none;white-space:nowrap}
.manuscript .appearance-check {background:#8b6646;color:#f4e4bd}
.manuscript .appearance-glyph {filter:none;stroke-width:2.3}
.manuscript .appearance-mode-toggle {background:none;border:0;color:#d7c8a5;padding:3px;font:10px/1.2 var(--serif)}
.manuscript .appearance-mode-toggle:hover {background:#c8b68d22}
.manuscript .appearance-switch {background:#b4ad89;border-color:#8b815e}
.manuscript .appearance-switch::after {background:#f1dfb8;box-shadow:0 1px 2px #58483455}
.manuscript .appearance-mode-toggle[aria-pressed=true] .appearance-switch {background:#948d74;border-color:#786e56}
.manuscript .appearance-line>.small-note {font:11px/1.5 var(--serif);color:#cab890;max-width:250px;margin:0}
.manuscript .faction-row {display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:0 0 10px}
.manuscript .faction-button {display:flex;flex-direction:column;gap:6px;min-height:0;padding:5px;border:1px solid #a78f6244;border-radius:1px;box-shadow:none;background:none;overflow:visible;position:relative}
.manuscript .faction-button .faction-art {position:static;inset:auto;width:100%;height:auto;aspect-ratio:2.75;opacity:1!important;mask-image:none;flex:none}
.manuscript .faction-copy {width:100%;position:static;color:#e7d8b7;text-align:center;pointer-events:none}
.manuscript .faction-copy strong {font:22px/1.2 var(--serif);color:#e9dfc4}
.manuscript .faction-copy small {font:11px/1.5 var(--serif);color:#cbb890;max-width:none;margin:4px 0}
.manuscript .faction-button.horde .faction-copy strong {color:#d8926e}
.manuscript .faction-button[aria-pressed=true],.manuscript .faction-button.horde[aria-pressed=true] {border-color:#a16b50;background:#b3955e16;box-shadow:0 0 0 2px #a16b5030}
.manuscript .faction-selected {background:#e7d6ac;color:#734a2c;border:1px solid #a08453;right:8px;top:8px;width:21px;height:21px;font-size:13px}
/* Full miniatures replace masked-out heads. Labels sit on the page below them. */
.manuscript .class-grid {grid-template-columns:repeat(5,minmax(0,1fr));gap:15px 12px}
.manuscript .class-card {display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:0 0 7px;border:1px solid transparent;border-radius:0;background:none;box-shadow:none;overflow:visible;text-align:center;min-height:0}
.manuscript .class-card>.art-frame {display:block;flex:none;position:static;width:100%;height:auto;aspect-ratio:.8;mask-image:none;opacity:1;max-width:none}
.manuscript .class-card .art-frame>svg,.manuscript .class-card .art-frame>img {width:100%;height:100%;object-fit:contain;mask-image:none;opacity:1}
.manuscript .class-card>span:not(.art-frame) {padding:0 3px}
.manuscript .class-card strong {font:17px/1.25 var(--serif);color:#e7d7b4}
.manuscript .class-card small {font:10px/1.35 var(--serif);color:#c9b891;margin:3px auto 0;max-width:100%;min-height:27px}
.manuscript .class-card:hover {background:#c6b68f11;border-color:#a3906455;transform:none}
.manuscript .class-card[aria-pressed=true] {background:#c3ac7722;border-color:#af7358;box-shadow:0 0 0 2px #af735828}
.manuscript .class-card[aria-pressed=true] strong {color:var(--rubric)}
.manuscript .class-help {color:#d39a74;font:12px/1.4 var(--serif)}
.manuscript .class-description,.manuscript .identity-lesson,.manuscript .racial-insight,.manuscript .book-identity {background:none;border:0;border-top:1px solid #a08b6255;border-radius:0;box-shadow:none;padding:20px 0 0;margin-top:22px}
.manuscript :is(.class-description,.identity-lesson,.racial-insight,.book-identity) h3,.manuscript .racial-insight h4 {font-size:26px;color:#eadcbb;line-height:1.25}
.manuscript :is(.class-description,.identity-lesson,.racial-insight,.book-identity) p {color:#d4c39d;font:15px/1.7 var(--serif)}
.manuscript :is(.class-description,.book-identity) p.eyebrow {font:10px/1.5 var(--serif);color:var(--rubric);letter-spacing:1.4px}
.manuscript .class-description .small-note {font-size:12px;color:#c6b58f}
.manuscript .creator-lenses {gap:16px;border-bottom:1px solid #9d8a6344}
.manuscript .creator-lenses button,.manuscript .lens-buttons button {background:none;border:0;border-bottom:2px solid transparent;color:#ceb993;border-radius:0;padding:7px 0;font:14px/1.4 var(--serif)}
.manuscript .creator-lenses button[aria-pressed=true],.manuscript .lens-buttons button[aria-pressed=true] {color:#7f4834;border-bottom-color:#986449;background:none}
.manuscript .small-link,.manuscript .inline-source {color:#d59a74;border-color:#ab8a5c;font-family:var(--serif)}
.manuscript .small-link {font-size:13px}
.manuscript .inline-source {font-size:11px}
.manuscript .race-grid {gap:14px}
.manuscript .race-card {border:1px solid transparent;background:none;border-radius:0;min-height:0;padding:3px 2px 8px;box-shadow:none}
.manuscript .race-card>.art-frame {width:78%;height:auto;aspect-ratio:160/180;margin:0 auto 6px}
.manuscript .race-card span:not(.art-frame) {font:14px/1.3 var(--serif);color:#e6d7b5}
.manuscript .race-card small {font:8px/1.6 var(--serif);color:#ccb891;min-height:13px}
.manuscript .race-card[aria-pressed=true] {border-color:#9d6951;background:#c3ab7422}
.manuscript .race-card:disabled {opacity:.36;filter:grayscale(.8)}
.manuscript .racial-insight .racial-mechanic {color:#e0cfad}
.manuscript .insight-kicker,.manuscript .insight-kicker span {color:#c48366;font:10px/1.5 var(--serif);letter-spacing:.8px}
.manuscript .racial-pair>strong,.manuscript .direction-emphasis strong {color:#d49575;font-size:12px}
.manuscript .direction-emphasis {border-color:#a17a5144}
.manuscript .direction-emphasis p,.manuscript .racial-insight details {color:#d3c19b;font-size:13px}
.manuscript .lesson-evidence {color:#cdb991;font:11px/1.5 var(--serif)}
.manuscript .lesson-evidence a {color:#d49a72}
.manuscript .lesson-tools button {background:#d8c29a;border:1px solid #a68d5e55;border-radius:1px;color:#4d3d2a;font:12px/1.35 var(--serif);box-shadow:none}
.manuscript .lesson-tools small {color:#d1a47d}
.manuscript .premium-note {font-size:12px;color:#d99971;border-color:#a07c53}
.manuscript .begin-row p {color:#cab892;font:italic 13px/1.6 var(--serif)}
.manuscript .character-card {border:0;background:none;padding:0;box-shadow:none;top:6px;color:#e6d7b4}
.manuscript .character-card::before,.manuscript .character-card::after {display:none}
.manuscript .character-card>.eyebrow {text-align:center;font:11px/1.5 var(--serif);color:#cb8c6d;letter-spacing:1.5px;margin-bottom:12px}
.manuscript .portrait-wrap {width:100%;height:auto;border:0;border-radius:0;overflow:visible;background:none;padding:0;box-shadow:0 4px 8px #51433325}
.manuscript .portrait-wrap>.art-frame {width:100%;height:auto;aspect-ratio:.8}
.manuscript .character-card h3 {font:26px/1.25 var(--serif);color:#f0e0bf;text-align:center;margin-top:17px}
.manuscript .character-subtitle {color:#d3c19b;font:14px/1.5 var(--serif)}
.manuscript .portrait-caption {color:#ca8c6d;font:10px/1.5 var(--serif);letter-spacing:1.1px;text-transform:uppercase}
.manuscript .character-card .character-quote {font:italic 16px/1.75 var(--serif);color:#d6c4a1;border:0;padding:15px 2px 18px}
.manuscript .character-card .character-quote::first-letter {color:#7b462b;font-size:28px}
.manuscript .character-details {border-top:1px solid #a8926955}
.manuscript .character-details dt {color:#cc8d6d;font:12px/1.5 var(--serif)}
.manuscript .character-details dd {color:#dbcbaa;font:13px/1.5 var(--serif)}
.manuscript .save-micro {color:#c9b790;font:11px/1.5 var(--serif)}
.manuscript .save-micro>span {background:#7e8864}
/* Chapters are pages; abilities are entries in their margins, never nested cards. */
.manuscript .journey-intro {text-align:center;color:#eadcbb;padding-top:20px;padding-bottom:22px}
.manuscript .journey-intro .eyebrow {color:#c5ac76}
.manuscript .journey-intro h2 {font-size:36px;color:#efdfb7;text-shadow:0 2px 4px #15231c}
.manuscript .journey-intro>p:not(.eyebrow),.manuscript .timing-note {color:#d7c9a9;font:14px/1.7 var(--serif);max-width:660px;margin:12px auto 0}
.manuscript .timing-note {font-size:11px}
.manuscript .chapter-nav {background:var(--paper-texture),#2c3529f5;border:0;border-top:1px solid #b5a06a55;border-bottom:1px solid #b5a06a55;box-shadow:0 5px 18px #17231a22;backdrop-filter:none;color:#dcccaa;min-height:60px}
.manuscript .chapter-nav a {color:#b6a482}
.manuscript .chapter-nav a.active {color:#f4dfac}.manuscript .chapter-nav a.active .level-number{background:#b18b4c;color:#f5e6c1}
.manuscript .chapter-nav a.complete {color:#dcc695}
.manuscript .journal-layout {grid-template-columns:268px minmax(0,1fr);gap:34px;padding-top:35px}
.manuscript .story-side {top:95px}
.manuscript .story-plate {position:relative;height:auto;min-height:0;border:0;border-radius:0;box-shadow:none;background:none;overflow:visible}
.manuscript .story-art-host {position:static;height:auto;inset:auto;aspect-ratio:1000/700}
.manuscript .story-art-host>.art-frame {position:static;width:100%;height:100%;opacity:1}
.manuscript .plate-caption {position:static;padding:16px 5px 8px;color:#dfd0ad}
.manuscript .plate-caption h3 {font:25px/1.25 var(--serif);color:#f1dfb7;margin:6px 0}
.manuscript .plate-caption p {font:italic 14px/1.6 var(--serif);color:#d3c5a4}
.manuscript .plate-caption>span {color:#c8af7d;font-size:10px}
.manuscript .plate-gradient,.manuscript .plate-corner {display:none}
.manuscript .lens-control {background:linear-gradient(180deg,#293332,#1e2626),var(--paper-texture);border:1px solid #a4895b40;border-radius:0;box-shadow:none;padding:18px;color:#dac8a7;margin-top:17px}
.manuscript .lens-control p {color:#d0be9b;font:12px/1.5 var(--serif)}
.manuscript .plate-note,.manuscript .plate-note button {color:#d5c09a;font:12px/1.7 var(--serif)}
.manuscript .chapter {position:relative;isolation:isolate;padding:32px 33px 45px;margin-bottom:35px;border:0;color:var(--ink)}
.manuscript .chapter-kicker {color:#c18469;font:10px/1.4 var(--serif);letter-spacing:.7px;gap:10px}
.manuscript .chapter-num {border:0;background:none;color:#c18469;font:italic 30px/1.2 var(--serif);width:auto;height:auto}
.manuscript .chapter-kicker .badge {border:0;background:none;color:#ccb993;padding:0;font:9px/1.35 var(--serif);letter-spacing:.3px;margin-left:auto;text-align:right}
.manuscript .chapter h2 {font-size:35px;color:#f1e0c0;margin:13px 0;line-height:1.15;letter-spacing:-.5px}
.manuscript .chapter .story-prose {font:italic 18px/1.65 var(--serif);color:#d7c7a4;margin:13px 0}
.manuscript .chapter .story-prose::first-letter {float:left;color:#814229;font:42px/.9 var(--serif);margin:4px 6px 0 0}
.manuscript .chapter .chapter-explainer {font:15px/1.7 var(--serif);color:#d0bf9a}
.manuscript .choice-card {background:none;border:1px solid #a48c5d66;border-radius:1px;box-shadow:none;color:#d5c39f;padding:17px;min-height:0}
.manuscript .choice-card strong {color:#eedfbd;font:19px/1.3 var(--serif)}
.manuscript .choice-card small,.manuscript .choice-card p,.manuscript .choice-card span {color:#d4c29d;font-family:var(--serif)}
.manuscript .choice-card .icon {color:#d2b06f}
.manuscript .choice-card[aria-pressed=true] {border-color:#98674b;background:#b8ab7b33;box-shadow:inset 0 0 0 2px #a7915933}
.manuscript #chapter-15 .choice-card {min-height:0}
.manuscript .chapter .impact-box {background:none;border:0;border-left:2px solid #9da87466;border-radius:0;color:#d4c19d;padding:10px 0 10px 15px;font:14px/1.7 var(--serif)}
.manuscript .chapter .impact-box strong {color:#efdcb8}
.manuscript .ability-card,.manuscript .chapter-spellbook .ability-card {background:none;border:0;border-top:1px solid #ac966966;border-radius:0;padding:20px 0 8px;box-shadow:none}
.manuscript .ability-level-group {border-left-color:#97815855}
.manuscript .ability-level-heading>span,.manuscript .ability-level-heading h4 {color:#d08f71;font-family:var(--serif)}
.manuscript .ability-level-heading>span::before {background:#d8c69e;border-color:#9f7750}
.manuscript .ability-heading h4,.manuscript .chapter-spellbook .ability-heading h4 {color:#f0e0bc;font:25px/1.15 var(--serif)}
.manuscript .ability-kind,.manuscript .ability-provenance,.manuscript .spellbook-caption {color:#ccb992;font-family:var(--serif)}
.manuscript .ability-provenance {font-size:10px}
.manuscript .ability-provenance>span {color:#c8b58e;font:10px/1.5 var(--serif);letter-spacing:.4px}
.manuscript .ability-provenance .is-announced {color:#acc291}
.manuscript .ability-card::before {display:none}
.manuscript .ability-level {color:#d49375;background:none;border-color:#a58b5f66}
.manuscript .ability-level small {color:#cab790;font:9px/1.5 var(--serif);letter-spacing:1px}
.manuscript .ability-mechanic,.manuscript .chapter-spellbook .ability-mechanic {color:#d2c19f;font:15px/1.75 var(--serif)}
.manuscript .ability-use,.manuscript .chapter-spellbook .ability-use {background:none;border:0;border-left:2px solid #8fa06d77;border-radius:0;padding:0 0 0 15px;margin-top:16px}
.manuscript .ability-use p,.manuscript .chapter-spellbook .ability-use p {color:#d3c29d;font:15px/1.75 var(--serif)}
.manuscript .ability-use>span,.manuscript .ability-use>strong {color:#b7ca98;font:11px/1.5 var(--serif);letter-spacing:.5px}
.manuscript .ability-watch {color:#d6c4a1;font:13px/1.6 var(--serif);border-color:#ab715466}
.manuscript .ability-watch strong {color:#d38f73}
.manuscript .ability-tradeoffs {border-color:#a7906355}
.manuscript .ability-tradeoffs dt {color:#d28f71;font-size:11px}
.manuscript .ability-tradeoffs dd {color:#d3c29c;font:14px/1.65 var(--serif)}
.manuscript .ability-more,.manuscript .ability-more summary,.manuscript .ability-more p {color:#d2c09b;font:13px/1.6 var(--serif)}
.manuscript .ability-source {color:#d59b73}
.manuscript .ability-more strong {color:#efe0be}
.manuscript .spellbook-role {background:none;border:0;border-left:2px solid #8a956477;padding:10px 0 10px 15px}
.manuscript .spellbook-role strong {color:#bcd2a0;font:12px/1.5 var(--serif)}
.manuscript .spellbook-role p {color:#d1bf9c;font:14px/1.65 var(--serif)}
.manuscript .spellbook-section-foot small {color:#cdb98f;font:12px/1.6 var(--serif)}
.manuscript .spellbook-quiet {background:none;border:0;color:#ceb997;font:14px/1.7 var(--serif);padding:16px 0}
.manuscript .spellbook-controls {background:none;border:0;border-bottom:1px solid #9e845a66;border-radius:0;padding:14px 0}
.manuscript .spellbook-controls label {color:#d4c29d;font:14px/1.5 var(--serif)}
.manuscript .spellbook-controls input[type=search] {color:#efe4ca;background:#101716bf;border:0;border-bottom:1px solid #89744f;border-radius:0;font:15px/1.45 var(--serif)}
.manuscript .chapter-spellbook .ability-heading {grid-template-columns:65px minmax(0,1fr) auto}
.manuscript .chapter-spellbook .ability-icon {width:65px;height:65px;border-radius:2px}
.manuscript .chapter-spellbook:after {content:"";display:block;height:50px;margin-top:23px;background:url("assets/manuscript/endpiece.svg") center/240px 57px no-repeat;opacity:.8}
.manuscript .epilogue-frame {isolation:isolate;position:relative;background:none;border:0;border-radius:0;box-shadow:none;color:#d6c5a1;padding:35px}
.manuscript .epilogue-frame h2,.manuscript .epilogue-frame h3,.manuscript .epilogue-frame p,.manuscript .epilogue-frame dd {color:#dfcfab}
.manuscript .epilogue-frame dt {color:#c48669}
.manuscript .next-step {background:#c7ba9822;border:0;border-left:2px solid #9b8052;color:#d8c8a8}
.manuscript .last-note {color:#e6d6b3;padding-top:25px;padding-bottom:40px}
.manuscript .last-note h2 {color:#eddfbc;font-size:33px}
.manuscript .last-note p,.manuscript .last-note button {color:#d3c4a6;font-family:var(--serif)}
.manuscript .last-note .ornament {color:#d3b77c}
.manuscript .site-footer {background:#202a23e8;border-top:1px solid #b6a27155;color:#dac6a0}
.manuscript .site-footer>p,.manuscript .site-footer span,.manuscript .site-footer button {color:#caba99;font:12px/1.6 var(--serif)}
.manuscript .footer-brand {color:#e4d1a7;font:18px/1.4 var(--serif)}
.manuscript .footer-brand span {font-size:10px;letter-spacing:.8px}
.manuscript dialog#modal {background:linear-gradient(180deg,#2c3534,#1e2827),var(--paper-texture);color:#eadaba;border:3px double #997f55;border-radius:3px;box-shadow:0 20px 90px #081610aa}
.manuscript .dialog-head {background:#d3c29e33;border-bottom:1px solid #a58d6344;padding:10px 20px}
.manuscript .dialog-head .eyebrow {color:#cc8d6d}
.manuscript .dialog-head .icon-button {color:#d3c19b;background:none;border:1px solid #9d82534d;border-radius:0}
.manuscript .modal-intro,.manuscript .modal-section p,.manuscript .source-list small,.manuscript .art-item p,.manuscript .quiz-question,.manuscript .quiz-result p {color:#d4c29e;font-family:var(--serif)}
.manuscript .modal-section h3,.manuscript .source-list a {color:#d79d77}
.manuscript .source-disclaimer {color:#f0d8c0;background:#bf9a6133;border-color:#ac7a4d66}
.manuscript .quiz-option {color:#4d3f2b;background:#dcc9a4;border-color:#ac946566}
.manuscript .quiz-option[aria-pressed=true] {background:#c0b58b;color:#443c29}
.manuscript .toast {color:#e8d6ac;background:#2d3529;border:1px solid #b89e69;font:14px/1.5 var(--serif)}
/* The independent road remains a scene. No second journal card, no thick frame. */
.manuscript #adventure-world::after {content:"";position:absolute;inset:0;pointer-events:none;background:var(--paper-texture);opacity:.27}
.manuscript #adventure-hud {background:var(--paper-texture),linear-gradient(100deg,#32392bed,#25372fed);border:0;border-top:1px solid #c7ae7688;border-bottom:1px solid #8b896144;border-radius:2px;box-shadow:0 7px 24px #0e211b88;color:#efdfb9;font-family:var(--serif)}
.manuscript .road-title-line {font:18px/1.3 var(--serif)}
.manuscript .road-guide-note {font:italic 14px/1.3 var(--serif);color:#e5c583;text-shadow:0 1px 1px #1c2b22}
.manuscript .road-caption,.manuscript .road-next,.manuscript .road-progress-head {color:#cfc6a7;font-family:var(--serif);font-size:10px}
.manuscript .road-event {color:#d9c391;font:12px/1.4 var(--serif)}
.manuscript .road-event small {color:#b2b99d;font:9px/1.4 var(--serif);letter-spacing:.7px}
.manuscript .road-controls button,.manuscript .road-controls select {font:12px/1.2 var(--serif);color:#e6d9b7;background:#d1bd8130;border:1px solid #bca57055;border-radius:1px;padding:8px;min-height:36px}
.manuscript .road-controls select {width:auto}
.manuscript #adventure-reopen {background:#2c3b2c;color:#d7c698;border-color:#b69b62;font-family:var(--serif)}
@media(max-width:1320px){.manuscript .setup{margin-left:22px;margin-right:22px}.manuscript .setup-layout{gap:26px;grid-template-columns:minmax(0,1fr) 244px}.manuscript .section-wrap{padding-left:42px;padding-right:42px}.manuscript .site-header nav{gap:15px}}
@media(max-width:1100px){.manuscript .class-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.manuscript .class-card>.art-frame{max-height:none;aspect-ratio:.8;object-fit:contain}.manuscript .site-header{gap:12px}.manuscript .brand>span{font-size:18px}.manuscript .site-header nav{gap:12px;font-size:12px}.manuscript .site-header>.button{font-size:12px;padding:8px 12px}.manuscript .journal-layout{grid-template-columns:225px minmax(0,1fr);gap:25px}.manuscript .chapter{padding:28px 25px 35px}}
@media(max-width:850px){.manuscript .setup-layout{grid-template-columns:1fr}.manuscript .character-card{display:none}.manuscript .class-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.manuscript .section-wrap{padding-left:30px;padding-right:30px}.manuscript .setup::after{width:26px;left:0;background-size:34px 204px}.manuscript .journal-layout{grid-template-columns:195px minmax(0,1fr);gap:18px}.manuscript .chapter h2{font-size:30px}}
@media(max-width:620px){
  .manuscript .site-header{height:auto;min-height:80px;padding:12px 15px;gap:8px}
  .manuscript .brand>span{font-size:16px;letter-spacing:.4px;gap:2px}.manuscript .brand small{font-size:8px;letter-spacing:0;line-height:1.2;max-width:235px}.manuscript .brand svg{width:23px;height:33px}
  .manuscript .site-header>.button{font-size:11px;padding:7px 8px;min-height:34px}.manuscript .header-motion{width:100%;font-size:11px;min-height:24px;padding:3px}
  .manuscript .section-wrap{padding-left:18px;padding-right:18px}.manuscript .setup{margin:16px 9px 35px;padding:23px 17px 28px}.manuscript .setup::after{display:none}
  .manuscript .creator-intro{margin-bottom:12px;padding-bottom:10px;align-items:flex-start;flex-direction:column}.manuscript .creator-intro h1{font-size:29px;letter-spacing:-.7px}.manuscript .snapshot-link{font-size:10px;margin-top:0}
  /* Reserve two narration lines on phones. Restoring a saved character replaces
     the longer starting-fire copy, and must not pull the whole creator upward. */
  .manuscript .adventure-invitation{font-size:11px;margin-bottom:22px;gap:4px;display:grid;grid-template-columns:1fr;justify-items:center}
  .manuscript .adventure-invitation>span{display:block;width:100%;min-height:3em;text-align:center}
  .manuscript .adventure-invitation button{font-size:11px;min-width:175px}
  .manuscript .block-label{font-size:20px;gap:8px;flex-wrap:wrap}.manuscript .block-label .num{font-size:22px;width:25px;height:27px}.manuscript .block-label .aside-label{font-size:8px}
  .manuscript .builder-block{margin-bottom:24px}.manuscript .two-fields{gap:12px}.manuscript .field-label{font-size:12px}.manuscript input[type=text],.manuscript select{font-size:16px}
  .manuscript .appearance-choice{width:68px;height:56px}.manuscript .appearance-line{gap:8px}.manuscript .appearance-line>.small-note{max-width:none;font-size:11px;flex-basis:100%}
  .manuscript .faction-row{gap:12px}.manuscript .faction-copy strong{font-size:21px}.manuscript .faction-copy small{font-size:10px;max-width:none}.manuscript .faction-art{opacity:1!important}
  .manuscript .class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 9px}.manuscript .class-card>.art-frame{height:auto;width:100%;max-height:none;mask-image:none}.manuscript .class-card strong{font-size:16px}.manuscript .class-card small{font-size:10px;min-height:28px}
  .manuscript .race-grid{gap:5px}.manuscript .race-card span:not(.art-frame){font-size:12px}.manuscript .race-card small{font-size:7px}.manuscript .race-card>.art-frame{width:90%}
  .manuscript .class-description,.manuscript .racial-insight,.manuscript .identity-lesson{padding-top:15px}.manuscript .class-description p,.manuscript .racial-insight p,.manuscript .identity-lesson p{font-size:14px}
  .manuscript .journey-intro h2{font-size:29px}.manuscript .journey-intro>p:not(.eyebrow){font-size:13px}.manuscript .timing-note{font-size:11px}
  .manuscript .journal-layout{display:block;padding:17px 9px 0}.manuscript .story-side{margin:0 8px 24px}.manuscript .story-plate{display:none}.manuscript .lens-control{padding:13px 16px}.manuscript .plate-note{font-size:11px}
  .manuscript .chapter{padding:24px 18px 32px}.manuscript .chapter h2{font-size:29px}.manuscript .chapter .story-prose{font-size:17px}.manuscript .chapter .chapter-explainer{font-size:14px}.manuscript .chapter-kicker .badge{font-size:7px}
  .manuscript .chapter-spellbook .ability-heading{grid-template-columns:49px minmax(0,1fr) auto;gap:9px}.manuscript .chapter-spellbook .ability-icon{height:49px;width:49px}.manuscript .chapter-spellbook .ability-heading h4{font-size:22px}.manuscript .chapter-spellbook .ability-card{padding:16px 0 5px}.manuscript .chapter-spellbook .ability-mechanic,.manuscript .chapter-spellbook .ability-use p{font-size:14px}.manuscript .ability-watch{font-size:12px}
  .manuscript .road-guide-note{font-size:11px;line-height:1.18;padding:0 0 1px;gap:5px}.manuscript .road-title-line{font-size:15px}.manuscript .road-caption,.manuscript .road-next,.manuscript .road-progress-head{font-size:9px}.manuscript .road-controls button,.manuscript .road-controls select{font-size:10px;padding:7px 6px;min-height:34px}.manuscript .road-sigil{font-size:18px}
  .manuscript .epilogue-frame{padding:23px 18px}.manuscript .site-footer>p{font-size:11px}
}
/* The storybook faces need more than the old 81-105px phone cards. Keep
   desktop/tablet composition; two complete miniatures fit a narrow phone. */
@media(max-width:850px){.manuscript .creator-core-row{grid-template-columns:1fr;gap:0}.manuscript .creator-core-row .appearance-block{margin-bottom:18px}.manuscript .creator-core-row .appearance-line{align-items:center}.manuscript .creator-core-row .appearance-row{display:inline-flex}}
@media(max-width:480px){.manuscript .class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-height:550px){.manuscript .road-guide-note{font-size:10px}.manuscript .road-title-line{font-size:14px}.manuscript .road-controls button,.manuscript .road-controls select{font-size:10px;padding:6px;min-height:30px}}
@media(forced-colors:active){.manuscript .setup::before,.manuscript .chapter::before,.manuscript .setup::after{display:none}.manuscript .setup,.manuscript .chapter,.manuscript dialog{color:CanvasText;background:Canvas}.manuscript button[aria-pressed=true]{outline:2px solid Highlight}}
@media print{body.manuscript{background:white;color:black}.manuscript main{background:none!important}.manuscript .setup::after,.manuscript .setup::before,.manuscript .chapter::before,.manuscript .epilogue-frame::before{display:none}.manuscript .chapter,.manuscript .epilogue-frame{background:white;box-shadow:none}.manuscript .epilogue-frame *{color:black!important}}

/* Ink tones for the little sidebar counters and source annotations. */
.manuscript .lens-control .lens-motion{color:#cbb790!important}
.manuscript .kit-progress>strong{color:#d29574}.manuscript .kit-progress small{color:#b5c698}
.manuscript .kit-progress>span,.manuscript .kit-status .kit-next,.manuscript .kit-status small{color:#d1bf9b}
.manuscript .chapter .small-note{color:#cab790}

.manuscript .site-header .share-icon{color:#ccb582}
