/* The scenery is static. Motion is limited to controls and health indicators. */
.page{--v-accent:#d4b876;--v-soft:#d4b87612}.page[data-tone="arcane"]{--v-accent:#b8b6e7;--v-soft:#aaa8ed12}.page[data-tone="ember"]{--v-accent:#e7ac89;--v-soft:#e7ac8912}.page[data-tone="sage"]{--v-accent:#9fc6b0;--v-soft:#9fc6b012}.page[data-tone="amber"]{--v-accent:#e8ba7e;--v-soft:#e8ba7e12}.page[data-tone="crimson"]{--v-accent:#dea1a2;--v-soft:#dea1a212}
:root[data-theme="light"] .page{--v-accent:#755318;--v-soft:#9a742510}:root[data-theme="light"] .page[data-tone="arcane"]{--v-accent:#5d4b8c;--v-soft:#6750a20c}:root[data-theme="light"] .page[data-tone="ember"]{--v-accent:#944524}:root[data-theme="light"] .page[data-tone="sage"]{--v-accent:#28684d}:root[data-theme="light"] .page[data-tone="crimson"]{--v-accent:#913f4b}
.nv-icon{display:inline-block;width:22px;height:22px;flex:none;vertical-align:middle}.nv-hero{position:relative;isolation:isolate;overflow:hidden;min-height:310px;border:1px solid #bdc5ad30;border-radius:18px;margin-bottom:2rem;padding:clamp(28px,4vw,58px);background:#13231e;color:#f5efdf}.nv-hero-art{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:center 45%}.nv-hero:before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#081713f5 0%,#081713d9 38%,#08171338 100%),linear-gradient(0deg,#08171395,transparent 70%)}.nv-hero-copy{max-width:720px}.nv-hero .ph__e{display:flex;align-items:center;gap:12px;color:#e5ce99;font-size:.73rem;letter-spacing:.15em}.nv-hero h1{font-size:clamp(2.5rem,4.5vw,4.6rem);line-height:1.04;letter-spacing:-.035em;margin:1.1rem 0;color:#fff4df;max-width:17ch}.nv-hero .ph__d{font-size:1rem;color:#e3e5d9;max-width:54ch;line-height:1.8;margin:0}.nv-hero-rule{display:flex;align-items:center;gap:12px;margin-top:1.6rem;color:#cdb887;font-size:9px;letter-spacing:.23em}.nv-hero-rule i{display:block;height:1px;width:52px;background:currentColor}
.page>.s,.fg-section>.s{padding-top:.6rem}.page .callout{border-left:2px solid var(--v-accent);background:var(--v-soft);border-radius:0 12px 12px 0}.fg-section{position:relative}.fg-section:before{content:'';display:block;width:70px;height:1px;background:linear-gradient(90deg,var(--v-accent),transparent);margin:0 0 1.7rem}.fg-facts>div,.fg-badge,.fg-species-card{box-shadow:0 10px 30px #00000010}.fg-reviewed{gap:.35rem 1.2rem;font-size:.72rem}.fg-reviewed time{color:var(--v-accent)}.fg-species-card{border:1px solid var(--rule);border-radius:14px;background:radial-gradient(ellipse at 50% 0,var(--v-soft),transparent 65%),var(--bg-raised)}.fg-creature{height:160px;margin-bottom:1rem}.fg-badge-icon{color:var(--v-accent);width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--rule);border-radius:50%;background:var(--v-soft)}.fg-badge-icon .nv-icon{width:26px;height:26px}
.nav a>.nv-icon{width:16px;height:16px;opacity:.7;margin-right:9px}.nav a{display:flex;align-items:center}.nav a i{margin-left:auto}.nv-search{display:inline-flex;align-items:center;gap:7px;background:transparent;border:1px solid #c4cba543;border-radius:6px;padding:9px 11px;color:#eee9d9;cursor:pointer;font-size:12px}.nv-search .nv-icon{width:16px;height:16px}.ed-header nav{gap:20px}.ed-header-tools{gap:13px}.nv-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;max-width:1180px;margin:24px auto 0;border:1px solid var(--rule);border-radius:10px;overflow:hidden;background:var(--rule)}.nv-quick a{display:flex;align-items:center;gap:12px;padding:18px 24px;background:var(--bg-raised);color:var(--text);text-decoration:none;font-size:14px}.nv-quick a>.nv-icon:first-child{color:var(--brass)}.nv-quick a>.nv-icon:last-child{margin-left:auto;width:17px;opacity:.55}.nv-quick a:hover{background:var(--bg-sunken)}
.ed-button,.ed-header-portal{border-radius:5px}.ed-header-portal:hover,.ed-button:hover{box-shadow:0 0 22px #d4b87615}.ed-journeys a,.ed-character,.fg-badge,.fg-species-card{transition:border-color .18s,box-shadow .18s}.fg-species-card:hover,.fg-badge:hover{border-color:var(--v-accent);box-shadow:0 12px 30px #0002}.ed-section-heading h2{letter-spacing:-.02em}.ed-section+.ed-section{border-top:1px solid var(--rule)}
/* Character selection and the six-stage path. */
.nv-roster{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:2rem 0}.nv-roster a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:10px 7px;color:var(--text);text-decoration:none;border:1px solid var(--rule);border-radius:10px;background:radial-gradient(ellipse at center bottom,var(--v-soft),transparent 75%),var(--bg-raised);min-width:0}.nv-roster img{height:100px;width:100%;object-fit:contain;filter:drop-shadow(0 5px 9px #0003)}.nv-roster span{font-size:.76rem;padding-top:6px;font-weight:700}.nv-roster a:hover,.nv-roster a:focus-visible{border-color:var(--v-accent);background:var(--v-soft)}.fg-mastery{border-radius:14px;background:var(--bg-raised)}.fg-mastery>summary{display:grid;grid-template-columns:65px 1fr 20px;gap:15px;padding:14px 22px}.nv-summary-portrait{height:68px;width:60px;object-fit:contain}.fg-mastery summary strong{font-family:var(--serif);font-size:1.8rem;font-weight:500;letter-spacing:-.02em}.fg-mastery summary small{font-family:Arial,sans-serif;font-size:.85rem;color:var(--text-dim)}.fg-mastery[open]{border-color:var(--v-accent)}.fg-mastery[open] summary>span:last-child{transform:rotate(45deg)}.fg-mastery-body{padding:0}.nv-character-intro{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:25px;padding:30px;background:radial-gradient(ellipse at 10% 80%,var(--v-soft),transparent 65%);border-bottom:1px solid var(--rule)}.nv-character-intro>img{width:100%;height:260px;object-fit:contain;filter:drop-shadow(0 10px 18px #0005)}.nv-character-intro h3{font-family:var(--serif);font-size:2rem;margin:.5rem 0}.nv-character-intro .fg-example-note{font-size:.95rem;line-height:1.9}.nv-character-intro .ed-label{color:var(--v-accent)}.nv-timeline{padding:12px 30px 15px 52px;counter-reset:mastery-stage}.nv-timeline .fg-stage{position:relative;padding:24px 0 24px 28px;border-top:0;border-left:1px solid var(--rule-strong)}.nv-timeline .fg-stage:before{counter-increment:mastery-stage;content:counter(mastery-stage);position:absolute;left:-15px;top:23px;display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--bg-raised);border:1px solid var(--v-accent);color:var(--v-accent);font-size:12px}.fg-stage header span{color:var(--v-accent)}.fg-stage header h3{font-size:1.1rem}.fg-stage p{font-size:.92rem}.nv-branch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.nv-branch{padding:17px;border:1px solid var(--rule);border-radius:10px;background:var(--bg)}.nv-branch>b{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--v-accent);margin-bottom:10px}.nv-branch:nth-child(2){background:var(--v-soft)}.nv-branch p{margin:0}.fg-mastery .fg-rule{margin:0 30px 24px;padding:18px;border:1px solid var(--rule);border-left:2px solid var(--v-accent);border-radius:0 8px 8px 0}.fg-mastery-body>.ed-link{display:inline-block;margin:0 30px 24px}
/* A deterministic, illustrated lesson with accessible controls. */
.nv-lesson{margin:2rem 0 3rem;border:1px solid var(--rule-strong);border-radius:18px;background:var(--bg-raised);overflow:hidden;scroll-margin-top:30px}.nv-lesson-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:28px 30px 12px}.nv-lesson h2{font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.1;margin-top:9px;max-width:20ch}.nv-lesson-heading label{display:grid;gap:8px;font-size:.75rem;color:var(--text-dim);min-width:190px}.nv-lesson select{background:var(--bg);border:1px solid var(--rule-strong);border-radius:7px;color:var(--text);padding:11px;font-size:.85rem;max-width:100%}.nv-lesson-intro{padding:0 30px 22px;font-size:.86rem;color:var(--text-dim);max-width:75ch}.nv-stage{display:grid;grid-template-columns:1fr 38px 1fr;position:relative;isolation:isolate;gap:12px;min-height:360px;background:#15221c url('/assets/design-20261110/combat-arena.webp') center/cover;color:#f4eddb;padding:22px 26px 0}.nv-stage:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#091813ed,transparent 65%),linear-gradient(180deg,#07130dcc,transparent 45%)}.nv-fighter{display:flex;flex-direction:column;align-items:center;justify-content:space-between;min-width:0}.nv-fighter>img{height:240px;width:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 12px 10px #0008)}.nv-health{width:100%;max-width:300px}.nv-health>div:first-child{display:flex;justify-content:space-between;gap:10px;align-items:baseline;font-size:.82rem;margin-bottom:9px}.nv-health span{font-size:.72rem;white-space:nowrap;color:#e0e8dc}.nv-hp-track{height:8px;border:1px solid #b8d6bd55;background:#08140ed9;border-radius:12px;overflow:hidden}.nv-hp-track i{display:block;height:100%;background:linear-gradient(90deg,#407963,#a5cba2)}.nv-other .nv-hp-track i{background:linear-gradient(90deg,#9a584a,#d6b082)}.nv-versus{align-self:center;color:#e5d3a3;opacity:.75}.nv-status{grid-column:1/-1;display:flex;justify-content:center;flex-wrap:wrap;gap:8px;padding:16px 0}.nv-status span{display:flex;align-items:center;gap:6px;font-size:.75rem;padding:7px 10px;border:1px solid #b4c5b23b;border-radius:5px;background:#081610c7}.nv-status .nv-icon{width:16px;height:16px}.nv-status .is-charged{color:#eed08c;border-color:#e2b95f;background:#523f1590;box-shadow:0 0 16px #edc36620}.nv-lesson-copy{padding:24px 30px;min-height:205px}.nv-lesson-copy h3{font-size:1.4rem;margin:7px 0 10px}.nv-lesson-copy>p:not(.ed-label){font-size:.96rem;line-height:1.9;max-width:75ch}.nv-formula{margin-top:15px;padding:12px 16px;border:1px solid var(--rule);border-radius:7px;font-family:var(--mono);font-size:.8rem;color:var(--v-accent);background:var(--bg)}.nv-lesson-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 30px 24px}.nv-lesson button{cursor:pointer;border:1px solid var(--rule-strong);border-radius:6px;padding:10px 15px;background:var(--bg);color:var(--text);font-size:.85rem;min-height:42px}.nv-lesson button:disabled{opacity:.4;cursor:default}.nv-lesson-controls>div{display:flex;gap:6px}.nv-lesson-controls [data-lesson-step]{padding:7px;width:36px;min-height:36px}.nv-lesson [aria-current="step"]{background:var(--v-accent);color:#12221a;border-color:var(--v-accent)}.nv-lesson .nv-next{display:flex;gap:8px;align-items:center;background:var(--brass);color:var(--bg-sunken);border-color:var(--brass);font-weight:700}.nv-next .nv-icon{width:17px}.nv-assumptions{padding:15px 30px;border-top:1px solid var(--rule);font-size:.82rem;color:var(--text-dim)}.nv-assumptions summary{cursor:pointer;font-weight:700}.nv-assumptions p{margin:14px 0;line-height:1.8}.nv-lesson-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
/* Immersive atlas and a mobile place sheet. */
.atlas--grand #dos{display:block}.atlas--grand .nv-region-cover{display:block;height:auto;max-width:100%}.atlas--grand #map{background:var(--bg-sunken)}
.atlas-toolbar [data-atlas-close]{display:none}.atlas-toolbar button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px}.atlas-toolbar .nv-icon{width:17px;height:17px}.atlas-toolbar [data-atlas-expand]{margin-left:auto;border-color:var(--brass);color:var(--brass)}.atlas-toolbar{gap:10px}.nv-region-cover{width:100%;aspect-ratio:2;object-fit:cover;border-radius:9px;margin-bottom:20px}.dos{position:relative}.nv-sheet-close{display:none}.atlas--grand .atlas__s{border-radius:12px;background:var(--bg-raised)}.nv-map-open{overflow:hidden!important}.nv-expanded{position:fixed!important;inset:0!important;z-index:1000;background:var(--bg);padding:22px;overflow:auto;display:flex;flex-direction:column;gap:8px;margin:0!important}.nv-expanded .atlas-toolbar{flex:none;margin:0}.nv-expanded .atlas-help{font-size:.78rem;margin:0}.nv-expanded .atlas-downloads{margin:0}.nv-expanded .atlas{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;margin:8px 0 0}.nv-expanded #map{height:100%;max-height:none;min-height:200px;align-self:stretch;overflow:auto}.nv-expanded .atlas__s{overflow:auto;max-height:100%}.nv-expanded .atlas-toolbar [data-atlas-close]{display:inline-flex}.nv-expanded [data-atlas-expand]{display:none}.nv-expanded .atlas-toolbar{background:var(--bg);z-index:2}.nv-expanded .atlas__s .dos{padding:18px}.nv-expanded .atlas-downloads a{font-size:.75rem}
@media(min-width:701px){.atlas--grand{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px;align-items:start}.atlas--grand .atlas__s{border:1px solid var(--rule)}.atlas--grand .dos{padding:18px}.atlas--grand #map{min-width:0}.atlas--grand .mapwrap{min-width:100%}}
@media(max-width:1100px){.ed-header nav{gap:12px}.ed-header nav a{font-size:11px}.nv-search span{display:none}.nv-search{padding:9px}.nv-character-intro{grid-template-columns:170px 1fr}.nv-roster{grid-template-columns:repeat(4,minmax(0,1fr))}.nv-quick{margin-inline:24px}.atlas--grand{grid-template-columns:minmax(0,1fr)}.nv-expanded .atlas{grid-template-columns:minmax(0,1fr) 270px}}
@media(max-width:700px){.nv-hero{min-height:290px;padding:26px 22px;border-radius:13px;margin-bottom:1.5rem}.nv-hero h1{font-size:2.55rem;max-width:14ch}.nv-hero .ph__d{font-size:.9rem;line-height:1.7}.nv-hero:before{background:linear-gradient(90deg,#071711ec,#071711a6),linear-gradient(0deg,#071711ab,transparent)}.nv-hero .ph__e{font-size:.63rem}.nv-hero-art{object-position:60% center}.nv-quick{margin:14px 22px 0;gap:1px}.nv-quick a{padding:13px 10px;gap:7px;justify-content:center;font-size:12px}.nv-quick a>.nv-icon:last-child{display:none}.nv-quick .nv-icon{width:17px}.nv-character-intro{grid-template-columns:110px 1fr;gap:16px;padding:22px 18px;align-items:start}.nv-character-intro>img{height:180px}.nv-character-intro h3{font-size:1.6rem}.nv-character-intro .fg-example-note{font-size:.86rem;line-height:1.8}.nv-roster{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.nv-roster img{height:75px}.nv-roster a{padding:8px 4px}.nv-roster span{font-size:.65rem;overflow-wrap:anywhere}.fg-mastery>summary{padding:12px;grid-template-columns:46px 1fr 16px;gap:10px}.nv-summary-portrait{height:56px;width:44px}.fg-mastery summary strong{font-size:1.5rem}.fg-mastery summary small{font-size:.76rem}.nv-timeline{padding:8px 18px 10px 31px}.nv-timeline .fg-stage{padding-left:22px}.nv-branch-grid{grid-template-columns:1fr}.fg-mastery .fg-rule{margin:0 18px 20px;padding:14px}.fg-stage header{gap:5px}.fg-stage header span{font-size:.7rem}.nv-lesson-heading{display:block;padding:22px 18px 12px}.nv-lesson-heading label{margin-top:16px}.nv-lesson-intro{padding:0 18px 18px}.nv-stage{min-height:280px;padding:16px 12px 0;grid-template-columns:1fr 18px 1fr;gap:6px}.nv-fighter>img{height:170px}.nv-health>div:first-child{display:block;font-size:.72rem}.nv-health span{display:block;margin-top:4px;font-size:.65rem}.nv-status{gap:6px;padding:12px 0}.nv-status span{padding:6px;font-size:.65rem}.nv-lesson-copy{padding:20px 18px;min-height:235px}.nv-lesson-copy h3{font-size:1.2rem}.nv-lesson-copy>p:not(.ed-label){font-size:.9rem}.nv-lesson-controls{padding:0 18px 20px;flex-wrap:wrap;gap:12px}.nv-lesson-controls>div{order:-1;width:100%;justify-content:center}.nv-lesson button{font-size:.8rem;padding:10px 12px}.nv-formula{font-size:.72rem;padding:10px;overflow-wrap:anywhere}.nv-assumptions{padding:15px 18px}.nv-lesson h2{max-width:24ch}.nv-sheet-open .atlas__s{position:fixed;inset:auto 0 0;z-index:1002;max-height:72dvh;overflow:auto;border-radius:20px 20px 0 0;box-shadow:0 -12px 50px #0008;border:1px solid var(--rule-strong);padding:20px 22px;background:var(--bg-raised)}.nv-sheet-open .nv-sheet-close{display:grid;place-items:center;position:sticky;float:right;top:0;right:0;width:40px;height:40px;background:var(--bg);border:1px solid var(--rule-strong);border-radius:50%;color:var(--text);cursor:pointer;margin:0 0 8px 12px}.nv-sheet-open .nv-region-cover{max-height:150px;margin-bottom:15px}.nv-sheet-open .dos__e{clear:both}.nv-expanded{padding:14px}.nv-expanded .atlas{display:block;position:relative;flex:1;min-height:300px}.nv-expanded #map{height:100%;min-height:300px}.nv-expanded .atlas__s{display:none}.nv-expanded.nv-sheet-open .atlas__s{display:block;max-height:65dvh}.nv-expanded .atlas-downloads{display:none}.nv-expanded .atlas-help{font-size:.7rem;line-height:1.6}.atlas-toolbar [data-atlas-expand]{margin-left:0}.atlas-toolbar{align-items:center}.atlas-picker{width:100%}.nv-expanded .atlas-picker{flex:1;min-width:150px;width:auto}.nv-region-cover{margin-top:12px}}
@media(max-width:650px){.ed-section{padding-top:44px;padding-bottom:44px}.ed-world{gap:26px}.ed-section-heading{gap:16px;margin-bottom:22px}.ed-world figure img{aspect-ratio:1.6}.ed-journeys{gap:12px}.ed-journeys>a{min-height:270px}.ed-roster-band .ed-section{padding-top:38px;padding-bottom:38px}.ed-character img{height:165px}.ed-steps{gap:20px}.ed-journal{gap:24px}.ed-faq details{padding-block:15px}.ed-finale{padding-top:55px;padding-bottom:55px}.ed-footer{padding-block:35px}.ed-header-tools{gap:8px}.nv-search{border:0;padding:7px}.nv-search .nv-icon{width:16px}.ed-header nav{display:none}.cg-symbol .nv-icon{width:28px;height:28px}}
@media(max-width:360px){.nv-character-intro{grid-template-columns:1fr}.nv-character-intro>img{height:180px;max-width:140px;margin:auto}.nv-hero h1{font-size:2.2rem}.nv-roster{grid-template-columns:repeat(3,minmax(0,1fr))}.nv-search{padding:5px}.ed-header-tools{gap:5px}.ed-header .ed-brand small{font-size:7px}}
@media(prefers-reduced-motion:reduce){.nv-icon,.nv-stage *,.nv-hero *,.nv-roster *{animation:none!important;transition:none!important}}
@media(max-width:700px){.nv-sheet-open .nv-sheet-close{position:absolute;top:10px;right:10px;float:none;margin:0;z-index:3}.nv-sheet-open .nv-region-cover{margin-top:0}.nv-sheet-open .dos{padding-top:0}}
@media(max-width:650px){.ed-path-grid{gap:12px}.ed-path{min-height:285px}.ed-path>div{padding:22px}.ed-path h3{font-size:29px}.ed-final{padding-block:48px}.ed-character img{aspect-ratio:auto}.ed-world-copy>p:nth-of-type(3){margin-bottom:14px}}
