:root{--font-display:"Fraunces", "Georgia", serif;--font-body:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--radius:14px;--radius-sm:10px;--radius-pill:999px;--ease:cubic-bezier(.16, 1, .3, 1);--t:.18s var(--ease);--text-xs:.78rem;--text-sm:.9rem;--text-base:1rem;--text-lg:clamp(1.1rem, 1rem + .4vw, 1.25rem);--text-xl:clamp(1.4rem, 1.2rem + .9vw, 1.8rem);--text-2xl:clamp(2rem, 1.5rem + 2.4vw, 3.2rem);--text-hero:clamp(2.6rem, 1.8rem + 4vw, 4.6rem)}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4ecdb;--bg-2:#eadcbf;--surface:#fffaf0;--surface-2:#f3e9d4;--glass:#fffaf0e6;--border:#46301629;--text:#2a2217;--muted:#65584a;--accent:#a4502a;--accent-ink:#fff;--accent-soft:#a4502a1f;--gold:#a87a22;--ok:#2f7044;--ok-soft:#2f70441f;--bad:#a83c2b;--bad-soft:#a83c2b1a;--book:#2c628c;--book-soft:#2c628c17;--imagine:#6b4c8a;--imagine-soft:#6b4c8a14;--thread:#3f6d3b;--shadow:0 10px 30px #46301624, 0 2px 6px #46301614}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111724;--bg-2:#0b101a;--surface:#1b2233;--surface-2:#242c40;--glass:#1b2233eb;--border:#fff0d221;--text:#f0e8d8;--muted:#b3aa98;--accent:#e6b062;--accent-ink:#1a1408;--accent-soft:#e6b06224;--gold:#e6b062;--ok:#7cc98f;--ok-soft:#7cc98f21;--bad:#f08c78;--bad-soft:#f08c781f;--book:#8cc2ec;--book-soft:#8cc2ec1a;--imagine:#c6a8e8;--imagine-soft:#c6a8e817;--thread:#a3d39a;--shadow:0 14px 40px #00000073, 0 2px 6px #0000004d}[data-level=kid]{--radius:20px;--radius-sm:14px}[data-level=kid][data-theme=light],[data-level=kid]:not([data-theme]){--accent:#c2401b;--accent-soft:#c2401b1f;--bg:#f7eedc}[data-level=kid][data-theme=dark]{--accent:#ffad4d;--accent-soft:#ffad4d29}html{font-size:100%}html[data-text="2"]{font-size:112.5%}html[data-text="3"]{font-size:125%}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;line-height:1.55}[data-level=kid] body{font-size:1.06rem}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}p{margin:0 0 var(--space-3)}h1,h2,h3{text-wrap:balance;margin:0;line-height:1.15}.display{font-family:var(--font-display);letter-spacing:-.01em;font-weight:650}.h-lg{font-size:var(--text-xl)}.h-md{font-size:var(--text-lg);margin:var(--space-6) 0 var(--space-3);font-weight:800}.h-sm{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:var(--space-2);font-weight:800}.muted{color:var(--muted)}.small{font-size:var(--text-sm)}.tabular{font-variant-numeric:tabular-nums lining-nums}.lead{font-size:var(--text-lg);font-weight:700}.row{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.skip-link{z-index:100;background:var(--surface);border-radius:8px;padding:8px 12px;position:absolute;top:8px;left:-999px}.skip-link:focus{left:8px}.boot{height:100dvh;color:var(--muted);place-items:center;font-weight:700;display:grid}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-5);border-radius:var(--radius-pill);transition:transform var(--t), background var(--t), border-color var(--t), opacity var(--t);border:1.5px solid #0000;font-weight:800;text-decoration:none;display:inline-flex}a.btn:not(.btn--primary):not(.btn--danger){color:var(--text)}.btn:active:not(:disabled){transform:translateY(1px)scale(.98)}.btn:disabled{opacity:.45}.btn--primary{background:var(--accent);color:var(--accent-ink)}.btn--primary:hover:not(:disabled){filter:brightness(1.06)}.btn--ghost{border-color:var(--border);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--accent-soft);border-color:color-mix(in oklab, var(--accent) 40%, transparent)}.btn--danger{color:var(--bad);border-color:color-mix(in oklab, var(--bad) 45%, transparent);background:0 0}.btn--lg{min-height:54px;padding:0 var(--space-8);font-size:var(--text-lg)}[data-level=kid] .btn--lg{min-height:60px}.btn--sm{min-height:40px;padding:0 var(--space-4);font-size:var(--text-sm)}.icon-btn{border-radius:var(--radius-pill);border:1.5px solid var(--border);background:var(--surface);width:44px;height:44px;transition:background var(--t);flex:none;place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--accent-soft)}.icon-btn:disabled{opacity:.35}.icon-btn--sm{width:40px;height:40px}.seg{border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);flex-wrap:wrap;gap:3px;padding:3px;display:inline-flex}.seg__opt{min-height:38px;padding:0 var(--space-4);border-radius:var(--radius-pill);font-weight:700;font-size:var(--text-sm);color:var(--muted);transition:background var(--t), color var(--t);background:0 0;border:0}.seg__opt.is-on{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #0000001f}[data-theme=dark] .seg__opt.is-on{background:var(--accent);color:var(--accent-ink)}.badge{font-size:var(--text-xs);border-radius:var(--radius-pill);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;font-weight:800;display:inline-flex}.badge--draft{background:var(--imagine-soft);color:var(--imagine);border:1px dashed color-mix(in oklab, var(--imagine) 55%, transparent)}.badge--ok{background:var(--ok-soft);color:var(--ok)}.ref-chip{font-size:var(--text-xs);border-radius:var(--radius-pill);background:var(--book-soft);color:var(--book);white-space:nowrap;margin-left:6px;padding:2px 9px;font-weight:800;display:inline-flex}.modal__eyebrow .ref-chip:first-child{margin-left:0}.screen{min-height:100dvh;position:relative}.topbar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);padding-top:max(var(--space-3), env(safe-area-inset-top));z-index:5;background:color-mix(in oklab, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);grid-template-columns:1fr auto 1fr;display:grid;position:sticky;top:0}.topbar>:first-child{justify-self:start}.topbar>:last-child{justify-self:end}.topbar__brand{align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:1.1rem;font-weight:650;display:inline-flex}.title-screen{padding:var(--space-6);background:linear-gradient(180deg, var(--bg-2), var(--bg) 70%);place-items:center;display:grid;overflow:hidden}.title-art{pointer-events:none;position:absolute;inset:0}.title-art svg{width:100%;height:100%}.ta-hill{fill:color-mix(in oklab, var(--accent) 16%, var(--bg))}.ta-hill--back{fill:color-mix(in oklab, var(--accent) 9%, var(--bg-2))}.ta-path{fill:none;stroke:var(--accent);stroke-width:3px;stroke-linecap:round;stroke-dasharray:2 12;opacity:.7}.ta-sun{fill:var(--gold);opacity:.35}.ta-star{fill:var(--gold);opacity:0}[data-theme=dark] .ta-star{opacity:.9}.title-card{text-align:center;justify-items:center;gap:var(--space-3);max-width:560px;padding-bottom:12vh;display:grid;position:relative}.title-logo{color:var(--text)}.title-name{font-size:var(--text-hero);line-height:1}.title-tag{font-size:var(--text-lg);color:var(--muted);margin-bottom:var(--space-4)}.title-actions{gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.title-toggles{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;justify-content:center;display:flex}.setup-grid{max-width:1100px;padding:var(--space-4);gap:var(--space-4);grid-template-columns:1fr;margin:0 auto;display:grid}.setup-preview{border-radius:var(--radius);background:radial-gradient(circle at 50% 70%, var(--accent-soft), transparent 70%), var(--surface-2);border:1px solid var(--border);height:240px;overflow:hidden}.setup-form{align-content:start;gap:var(--space-3);display:grid}.avatar-grid{gap:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}.avatar-card{padding:var(--space-3) var(--space-1);border-radius:var(--radius);border:2px solid var(--border);background:var(--surface);font-weight:700;font-size:var(--text-sm);transition:border-color var(--t), transform var(--t);justify-items:center;gap:4px;display:grid}.avatar-card.is-on{border-color:var(--accent);background:var(--accent-soft)}.look-picker{gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);display:grid}.look-picker .h-sm{margin:0}.swatches{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.swatches__label{min-width:4.5rem;font-size:var(--text-sm);color:var(--muted);font-weight:700}.swatch{width:34px;height:34px;transition:transform var(--t), box-shadow var(--t);border:2px solid #0000002e;border-radius:50%;padding:0;box-shadow:inset 0 -3px #0000001f}.swatch:hover{transform:translateY(-2px)}.swatch.is-on{box-shadow:0 0 0 3px var(--surface), 0 0 0 5px var(--accent)}.look-reset{justify-self:start}.level-grid{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.level-card{text-align:left;padding:var(--space-4);border-radius:var(--radius);border:2px solid var(--border);background:var(--surface);transition:border-color var(--t);gap:4px;display:grid}.level-card strong{font-size:var(--text-lg)}.level-card span{font-size:var(--text-sm);color:var(--muted)}.level-card.is-on{border-color:var(--accent);background:var(--accent-soft)}.setup-row{gap:var(--space-6);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.setup-go{margin-top:var(--space-4);justify-self:start}@media (width>=860px){.setup-grid{padding:var(--space-8) var(--space-6);gap:var(--space-8);grid-template-columns:1fr 1.15fr}.setup-preview{height:auto;min-height:520px;position:sticky;top:90px}}.trail-head{max-width:720px;padding:var(--space-6) var(--space-4) var(--space-2);margin:0 auto}.trail-meter{border-radius:var(--radius-pill);background:var(--surface-2);height:10px;margin-top:var(--space-3);align-items:center;display:flex;position:relative}.trail-meter__bar{border-radius:inherit;background:var(--accent);height:100%;transition:width .6s var(--ease)}.trail-meter span{font-size:var(--text-xs);color:var(--muted);font-weight:800;position:absolute;top:14px;right:0}.trail-map{margin:var(--space-4) auto 0;padding:0 var(--space-3) var(--space-10);max-width:640px;list-style:none}.trail-region{--region:var(--accent);border-radius:calc(var(--radius) * 1.4);background:radial-gradient(ellipse at 20% 30%, color-mix(in oklab, var(--region) 10%, transparent), transparent 60%), radial-gradient(ellipse at 85% 75%, color-mix(in oklab, var(--region) 12%, transparent), transparent 55%), color-mix(in oklab, var(--region) 5%, var(--bg));border:1px solid color-mix(in oklab, var(--region) 22%, transparent);margin-bottom:-1px;position:relative}.trail-region+.trail-region{border-top-left-radius:0;border-top-right-radius:0}.trail-region:has(+.trail-region){border-bottom-right-radius:0;border-bottom-left-radius:0}.trail-region[data-group=intro]{--region:#c8873a}.trail-region[data-group=torah]{--region:#b5832e}.trail-region[data-group=history]{--region:#a8524a}.trail-region[data-group=wisdom]{--region:#6b4c8a}.trail-region[data-group=prophets]{--region:#c8873a}.trail-region[data-group=gospels]{--region:#2c628c}.trail-region[data-group=acts]{--region:#3f7f86}.trail-region[data-group=paul]{--region:#6b4c8a}.trail-region[data-group=catholic]{--region:#3f6d3b}.trail-region[data-group=prophecy]{--region:#a83c2b}[data-theme=dark] .trail-region{--region-ink:color-mix(in oklab, var(--region) 55%, white)}.trail-region__title{z-index:2;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-4) 0;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--region-ink,var(--region));font-weight:800;display:flex;position:relative}.trail-region__road{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.road{fill:none;stroke-linecap:round}.road--base{stroke:color-mix(in oklab, var(--region) 45%, var(--bg));stroke-width:10px;stroke-dasharray:.1 16}.road--done{stroke:var(--gold);stroke-width:6px;opacity:.85}.trail-region__decor{fill:none;width:52px;height:52px;stroke:var(--region-ink,var(--region));stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;opacity:.32;pointer-events:none;position:absolute}.trail-region__nodes{margin:0;padding:0;list-style:none}.map-node{z-index:1;justify-items:center;width:150px;display:grid;position:absolute;transform:translate(-50%,-50%)}.map-node__btn{text-align:center;background:0 0;border:0;justify-items:center;gap:2px;width:100%;padding:0;display:grid}.map-node__seal{width:58px;height:58px;font-family:var(--font-display);color:var(--muted);background:var(--surface);border:3px solid color-mix(in oklab, var(--region) 35%, var(--surface));box-shadow:0 3px 0 color-mix(in oklab, var(--region) 30%, transparent), var(--shadow);transition:transform var(--t);border-radius:50%;place-items:center;font-size:.95rem;font-weight:700;line-height:1;display:grid}.map-node__btn:hover:not(:disabled) .map-node__seal{transform:translateY(-3px)scale(1.04)}.map-node__name{font-weight:800;font-size:var(--text-sm);border-radius:var(--radius-pill);background:color-mix(in oklab, var(--bg) 92%, transparent);margin-top:6px;padding:2px 8px;line-height:1.2}.map-node__state{font-size:var(--text-xs);color:var(--muted);font-weight:700}.map-node--open .map-node__seal{background:var(--accent);border-color:color-mix(in oklab, var(--accent) 60%, white);color:var(--accent-ink);box-shadow:0 0 0 6px var(--accent-soft), 0 3px 0 color-mix(in oklab, var(--accent) 60%, black), var(--shadow);animation:pulse 2.2s var(--ease) infinite}.map-node--open .map-node__state{color:var(--accent)}.map-node--done .map-node__seal{background:radial-gradient(circle at 35% 30%, #f6d98a, var(--gold) 70%);border-color:color-mix(in oklab, var(--gold) 70%, white);color:#3a2608}.map-node--locked .map-node__seal,.map-node--soon .map-node__seal{box-shadow:none;background:color-mix(in oklab, var(--surface) 55%, var(--bg))}.map-node--locked .map-node__name,.map-node--soon .map-node__name{color:var(--muted)}.map-node--soon .map-node__seal{border-style:dashed}.map-node__you{animation:hop 1.8s var(--ease) infinite;filter:drop-shadow(0 3px 2px #0003);position:absolute;top:-44px;left:calc(50% + 26px)}@keyframes hop{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.trail-region--fog:after{content:"";z-index:2;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse at 30% 40%, color-mix(in oklab, var(--bg) 70%, transparent), transparent 60%), radial-gradient(ellipse at 75% 70%, color-mix(in oklab, var(--bg) 65%, transparent), transparent 55%), linear-gradient(color-mix(in oklab, var(--bg) 35%, transparent), color-mix(in oklab, var(--bg) 35%, transparent));position:absolute;inset:0}@keyframes pulse{50%{box-shadow:0 0 0 12px transparent, var(--shadow)}}@media (prefers-reduced-motion:reduce){.map-node__you,.map-node--open .map-node__seal{animation:none}}.land-screen{background:var(--bg);position:fixed;inset:0;overflow:hidden}.world-canvas{touch-action:none;inset:0;position:absolute!important}.hud{pointer-events:none;padding:var(--space-3);padding-top:max(var(--space-3), env(safe-area-inset-top));padding-bottom:max(var(--space-4), env(safe-area-inset-bottom));flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.hud button{pointer-events:auto}.hud__top{align-items:flex-start;gap:var(--space-2);display:flex}.hud__title{text-align:center;flex:1;justify-items:center;gap:4px;min-width:0;display:grid}.hud__land{font-family:var(--font-display);font-weight:650;font-size:var(--text-lg);background:var(--glass);border-radius:var(--radius-pill);box-shadow:var(--shadow);text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:4px 14px;overflow:hidden}.hud__goal{font-size:var(--text-sm);background:var(--glass);border-radius:var(--radius-pill);color:var(--text);max-width:100%;padding:4px 12px;font-weight:700}.hud__right{gap:var(--space-2);display:flex}.hud-chip{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--glass);min-height:44px;box-shadow:var(--shadow);font-weight:800;font-size:var(--text-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:6px;padding:0 14px;display:inline-flex}.hud-chip--icon{justify-content:center;width:44px;padding:0}.hud__bottom{justify-content:center;min-height:64px;display:flex}.action-btn{align-items:center;gap:var(--space-3);max-width:min(92vw,520px);min-height:58px;padding:0 var(--space-6) 0 var(--space-3);border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:var(--text-lg);box-shadow:var(--shadow);animation:rise .26s var(--ease);border:0;display:inline-flex}[data-level=kid] .action-btn{min-height:68px;font-size:1.25rem}.action-btn__key{background:color-mix(in oklab, var(--accent-ink) 22%, transparent);width:36px;height:36px;font-size:var(--text-sm);border-radius:10px;place-items:center;display:grid}@media (pointer:coarse){.action-btn__key{display:none}.action-btn{padding:0 var(--space-6)}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}@media (width<=600px){.hud-chip span:not(.tabular){display:none}.hud__land{font-size:1rem}.hud__top{flex-wrap:wrap;justify-content:space-between}.hud__title{flex-basis:100%;order:3}}.modal-backdrop{z-index:40;animation:fade .2s var(--ease);background:#140e0661;place-items:end center;display:grid;position:fixed;inset:0}[data-theme=dark] .modal-backdrop{background:#0000008c}.modal{background:var(--surface);border-radius:var(--radius) var(--radius) 0 0;width:100%;max-height:90dvh;box-shadow:var(--shadow);border:1px solid var(--border);animation:sheet .28s var(--ease);flex-direction:column;display:flex}.modal__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-3);display:flex}.modal__eyebrow{font-size:var(--text-xs);color:var(--muted);text-transform:none;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;font-weight:800;display:flex}.modal__title{font-family:var(--font-display);font-weight:650;font-size:var(--text-xl)}.modal__body{padding:0 var(--space-5) var(--space-4);overscroll-behavior:contain;overflow-y:auto}.modal__foot{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);padding-bottom:max(var(--space-4), env(safe-area-inset-bottom));border-top:1px solid var(--border);display:flex}.modal__foot>:first-child:not(:only-child){margin-right:auto}@media (width>=720px){.modal-backdrop{padding:var(--space-6);align-items:center}.modal{border-radius:var(--radius);max-width:560px;max-height:86dvh}.modal--wide{max-width:720px}}@keyframes fade{0%{opacity:0}}@keyframes sheet{0%{opacity:0;transform:translateY(24px)}}.controls-box{background:var(--surface-2);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);margin:var(--space-3) 0;font-size:var(--text-sm)}.controls-box ul{margin:6px 0 0;padding-left:1.1em}.layer{border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-3);border-left:4px solid}.layer p:last-child{margin-bottom:0}.layer__label{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;margin-bottom:6px;font-weight:800;display:flex}.layer--book{background:var(--book-soft);border-color:var(--book)}.layer--book .layer__label{color:var(--book)}.layer--meaning{background:var(--accent-soft);border-color:var(--accent)}.layer--meaning .layer__label{color:var(--accent)}.layer--imagine{background:var(--imagine-soft);border:2px dashed color-mix(in oklab, var(--imagine) 50%, transparent);border-left-style:solid;border-left-width:4px;border-left-color:var(--imagine)}.layer--imagine .layer__label{color:var(--imagine)}.layer__note{font-size:var(--text-xs);color:var(--muted);margin-top:6px;font-style:normal}.layer--thread{border-color:var(--thread);background:0 0;border-left-style:dotted}.layer--thread .layer__label{color:var(--thread);text-transform:none;letter-spacing:0}.layer--thread .ref-chip{margin-left:0}.speech{font-size:var(--text-lg);background:var(--surface-2);border-radius:var(--radius) var(--radius) var(--radius) 4px;padding:var(--space-4);line-height:1.5}.choices{gap:var(--space-2);margin:var(--space-3) 0;display:grid}.choice{text-align:left;min-height:48px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);border:2px solid var(--border);background:var(--surface);transition:border-color var(--t), background var(--t), opacity var(--t);font-weight:700}.choice:hover:not(:disabled){border-color:var(--accent)}.choice.is-right{border-color:var(--ok);background:var(--ok-soft)}.choice.is-wrong{border-color:var(--bad);background:var(--bad-soft)}.choice.is-dim,.choice:disabled:not(.is-right){opacity:.5}.reply{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-weight:600}.reply--ok{color:var(--ok);font-weight:700}p.reply--ok{background:var(--ok-soft);color:var(--text)}.reply--no{color:var(--bad);font-weight:700}p.reply--no{background:var(--bad-soft);color:var(--text)}.reply__retry{font-weight:800}.match__items{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;min-height:48px;display:flex}.tile{min-height:48px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);border:2px solid var(--border);background:var(--surface-2);transition:transform var(--t), border-color var(--t), background var(--t);font-weight:800}.tile.is-on{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);transform:translateY(-2px)}.match__targets{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.target{text-align:left;min-height:84px;padding:var(--space-3);border-radius:var(--radius-sm);border:2px dashed var(--border);transition:border-color var(--t), background var(--t);background:0 0;align-content:start;gap:6px;display:grid}.target.is-ready{border-color:color-mix(in oklab, var(--accent) 60%, transparent);background:var(--accent-soft)}.target:disabled{cursor:default;opacity:1}.target.is-shake{border-color:var(--bad);animation:.4s shake}.target__placed{flex-wrap:wrap;gap:4px;display:flex}.placed{font-size:var(--text-sm);color:var(--ok);align-items:center;gap:4px;font-weight:700;display:inline-flex}.hint{margin-top:var(--space-3);font-size:var(--text-sm);background:var(--surface-2);padding:var(--space-3);border-radius:var(--radius-sm)}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.order__list{margin:0 0 var(--space-4);gap:var(--space-2);padding:0;list-style:none;display:grid}.order__row{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:2px solid var(--border);background:var(--surface-2);transition:border-color var(--t), background var(--t);display:flex}.order__row.is-good{border-color:var(--ok);background:var(--ok-soft)}.order__row.is-bad{border-color:color-mix(in oklab, var(--bad) 60%, transparent)}.order__num{background:var(--surface);border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.order__label{flex:1;font-weight:700}.order__btns{gap:4px;display:flex}.summary-points{margin:0 0 var(--space-4);gap:var(--space-2);padding:0;list-style:none;display:grid}.summary-points li{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--surface-2);align-items:flex-start;font-weight:700;display:flex}.summary-points__n{background:var(--accent);width:28px;height:28px;color:var(--accent-ink);font-size:var(--text-sm);border-radius:50%;flex:none;place-items:center;display:grid}.reflect label{margin-bottom:6px;display:block}textarea{width:100%;font:inherit;color:var(--text);background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3);resize:vertical}textarea.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-xs);word-break:break-all;margin-bottom:var(--space-2)}.next-line{margin-top:var(--space-4);color:var(--accent);font-weight:800}.dlist{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.dlist__item{gap:var(--space-3);text-align:left;width:100%;padding:var(--space-3);border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface);align-items:center;min-height:56px;display:flex}.dlist__item:hover:not(:disabled){border-color:var(--accent)}.dlist__item>span:last-child{display:grid}.dlist__item small{color:var(--muted);font-weight:600}.dlist__item:disabled{opacity:.6}.dlist__state{background:var(--surface-2);width:32px;height:32px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.dlist__item.is-done .dlist__state{background:var(--ok);color:var(--surface)}.settings-grid{gap:var(--space-4);margin-bottom:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));display:grid}.field{justify-items:start;gap:6px;display:grid}.field__label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.save-box{background:var(--surface-2);border-radius:var(--radius-sm);padding:var(--space-4);margin-bottom:var(--space-4)}.save-box .field__label{margin:var(--space-2) 0 4px;display:block}.danger-row{justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]),select{width:100%;min-height:44px;font:inherit;color:var(--text);background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:0 var(--space-3)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.form{gap:var(--space-2);justify-items:start;display:grid}.form>input,.form>select{max-width:420px}.check{gap:var(--space-2);font-size:var(--text-sm);margin:var(--space-2) 0;cursor:pointer;align-items:flex-start;display:flex}.check input{width:20px;height:20px;accent-color:var(--accent);flex:none;margin-top:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.prose p{margin:0 0 var(--space-3)}.boot--overlay{z-index:70;background:color-mix(in oklab, var(--bg) 70%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);position:fixed;inset:0}.account-chip svg{width:26px;height:30px}.title-account{top:max(var(--space-4), env(safe-area-inset-top));right:var(--space-4);z-index:3;position:absolute}.topbar .row{flex-wrap:nowrap;margin:0}@media (width<=520px){.topbar .account-chip span{display:none}}.draft-banner,.catalog-error{max-width:720px;margin:var(--space-3) auto 0;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:700}.draft-banner{background:var(--imagine-soft);color:var(--imagine)}.catalog-error{background:var(--bad-soft);color:var(--bad);gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.testaments{max-width:900px;padding:var(--space-4) var(--space-4) var(--space-10);gap:var(--space-4);margin:0 auto;display:grid}@media (width>=760px){.testaments{grid-template-columns:1fr 1fr}}.testament-card{gap:var(--space-2);padding:var(--space-6);border-radius:var(--radius);background:var(--surface);border:2px solid var(--border);box-shadow:var(--shadow);align-content:start;display:grid;position:relative}.testament-card h2{font-family:var(--font-display);font-size:var(--text-xl);margin:0}.testament-card p{margin:0}.testament-card--ot{background:linear-gradient(160deg, color-mix(in oklab, var(--gold) 12%, var(--surface)), var(--surface) 60%)}.testament-card--nt{background:linear-gradient(160deg, color-mix(in oklab, var(--book) 12%, var(--surface)), var(--surface) 60%)}.testament-card.is-last{border-color:color-mix(in oklab, var(--accent) 60%, transparent)}.testament-card__count{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.testament-card__go{margin-top:var(--space-5);justify-self:start}.trail-head .seg{margin-bottom:var(--space-3)}.account-wrap{max-width:720px;padding:var(--space-5) var(--space-4) var(--space-10);margin:0 auto}.panel{gap:var(--space-3);display:grid}.panel h1,.panel p{margin:0}.account-email{align-items:center;gap:6px;display:flex}.account-foot{gap:var(--space-2);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;display:flex}.profile-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.profile-card{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius);border:2px solid var(--border);background:var(--surface);flex-wrap:wrap;display:flex}.profile-card.is-on{border-color:var(--accent)}.profile-card .row{margin:0}.profile-card__text{flex:1;min-width:140px;display:grid}.profile-card__text small{color:var(--muted);font-weight:600;display:block}.profile-form,.profile-form .avatar-grid{width:100%}.toast{left:50%;bottom:max(96px, calc(env(safe-area-inset-bottom) + 96px));z-index:60;max-width:min(92vw,480px);padding:var(--space-3) var(--space-5);border-radius:var(--radius);background:var(--text);color:var(--bg);text-align:center;opacity:0;pointer-events:none;transition:opacity var(--t), transform var(--t);font-weight:700;position:fixed;transform:translate(-50%,20px)}.toast.is-on{opacity:1;transform:translate(-50%)}[data-motion=reduced] *,[data-motion=reduced] :before,[data-motion=reduced] :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-dyslexia=on]{--font-body:"Atkinson Hyperlegible", "Verdana", "Trebuchet MS", system-ui, sans-serif;--font-display:"Atkinson Hyperlegible", "Verdana", system-ui, sans-serif}[data-dyslexia=on] body{letter-spacing:.03em;word-spacing:.1em;line-height:1.75}[data-contrast=high][data-theme=light]{--bg:#fff;--surface:#fff;--surface-2:#f0f0f0;--text:#000;--muted:#2b2b2b;--border:#0009;--accent:#8a2f00}[data-contrast=high][data-theme=dark]{--bg:#000;--surface:#0d0d0d;--surface-2:#1a1a1a;--text:#fff;--muted:#e6e6e6;--border:#ffffffb3;--accent:#ffc94d}[data-contrast=high] .btn,[data-contrast=high] .seg,[data-contrast=high] .modal{border-width:2px}.steps{margin:var(--space-2) auto 0;border-radius:var(--radius-pill);background:var(--glass);border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);top:calc(max(var(--space-3), env(safe-area-inset-top)) + 84px);align-self:center;gap:2px;max-width:96vw;padding:4px;list-style:none;display:flex;position:absolute;left:50%;transform:translate(-50%)}.steps__item{border-radius:var(--radius-pill);font-size:var(--text-xs);color:var(--muted);white-space:nowrap;align-items:center;gap:6px;padding:3px 10px 3px 4px;font-weight:800;display:flex}.steps__dot{background:var(--surface-2);border-radius:50%;place-items:center;width:22px;height:22px;font-size:11px;display:grid}.steps__dot svg{width:13px;height:13px}.steps__item.is-now{color:var(--text);background:var(--accent-soft)}.steps__item.is-now .steps__dot{background:var(--accent);color:var(--accent-ink)}.steps__item.is-done .steps__dot{background:var(--ok);color:var(--surface)}@media (width<=480px){.steps__label{display:none}.steps__item.is-now .steps__label{display:inline}}.compass{right:var(--space-4);bottom:calc(max(var(--space-4), env(safe-area-inset-bottom)) + 84px);background:var(--glass);border:1px solid var(--border);width:52px;height:52px;color:var(--accent);border-radius:50%;place-items:center;display:grid;position:absolute}.compass__arrow{transition:opacity var(--t);place-items:center;display:grid}.joystick{left:var(--space-5);bottom:calc(max(var(--space-4), env(safe-area-inset-bottom)) + 16px);background:var(--glass);border:2px solid var(--border);pointer-events:auto;touch-action:none;border-radius:50%;place-items:center;width:128px;height:128px;display:grid;position:absolute}.joystick__knob{background:var(--accent);opacity:.9;width:56px;height:56px;box-shadow:var(--shadow);border-radius:50%}.modal-tools{margin-bottom:var(--space-2);justify-content:flex-end;display:flex}.read-aloud.is-on{background:var(--accent-soft);border-color:var(--accent)}.hint-box{gap:var(--space-2);margin-top:var(--space-3);justify-items:start;display:grid}.target.is-hint{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in oklab, var(--gold) 35%, transparent)}.continue-wrap{max-width:900px;padding:var(--space-3) var(--space-4) 0;margin:0 auto}.continue-card{align-items:center;gap:var(--space-4);text-align:left;width:100%;padding:var(--space-4) var(--space-5);border-radius:var(--radius);border:2px solid var(--accent);background:var(--accent-soft);display:flex}.continue-card__dot{background:var(--accent);width:48px;height:48px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.continue-card__text{flex:1;min-width:0;display:grid}.continue-card__text small{color:var(--muted);font-weight:700}.album-wrap{max-width:860px;padding:var(--space-5) var(--space-4) var(--space-10);gap:var(--space-6);margin:0 auto;display:grid}.cards,.badges{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));margin:0;padding:0;list-style:none;display:grid}.book-card{--region:var(--gold);padding:0 var(--space-4) var(--space-4);border-radius:var(--radius);background:var(--parch,var(--surface));border:2px solid color-mix(in oklab, var(--region) 55%, var(--surface));box-shadow:0 4px 0 color-mix(in oklab, var(--region) 35%, transparent), var(--shadow);transition:transform var(--t);gap:4px;display:grid;overflow:hidden}.book-card:hover{transform:translateY(-3px)rotate(-.6deg)}.book-card[data-group=intro]{--region:#c8873a}.book-card[data-group=torah]{--region:#b5832e}.book-card[data-group=history]{--region:#a8524a}.book-card[data-group=wisdom]{--region:#6b4c8a}.book-card[data-group=prophets]{--region:#c8873a}.book-card[data-group=gospels]{--region:#2c628c}.book-card[data-group=acts]{--region:#3f7f86}.book-card[data-group=paul]{--region:#6b4c8a}.book-card[data-group=catholic]{--region:#3f6d3b}.book-card[data-group=prophecy]{--region:#a83c2b}.book-card__band{margin:0 calc(var(--space-4) * -1) var(--space-2);padding:var(--space-3) var(--space-4);background:radial-gradient(circle at 85% 20%, #ffffff40, transparent 45%), var(--region);color:#fff;justify-content:space-between;align-items:center;display:flex}.book-card__abbr{font-family:var(--font-display);font-weight:700;font-size:var(--text-xl);line-height:1}.book-card small{color:var(--muted)}.badge-item{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);border:1.5px dashed var(--border);align-items:center;display:flex}.badge-item>span:last-child{display:grid}.badge-item small{color:var(--muted)}.badge-item.is-earned{border-style:solid;border-color:color-mix(in oklab, var(--gold) 50%, transparent);background:var(--parch,var(--surface))}.wax-seal{flex:none;place-items:center;width:56px;height:56px;display:grid;position:relative}.wax-seal svg{position:absolute;inset:0}.wax-seal__wax{fill:none;stroke:var(--border);stroke-width:1.5px;stroke-dasharray:3 3}.wax-seal__ring{fill:none;stroke:var(--border);stroke-width:1px}.wax-seal__shine{fill:#0000}.wax-seal__icon{color:var(--muted);opacity:.6;place-items:center;display:grid;position:relative}.wax-seal.is-earned{filter:drop-shadow(0 2px 2px #3c0a0559);animation:stamp .42s var(--ease) both}.wax-seal.is-earned .wax-seal__wax{fill:#b3372a;stroke:#7d1f17;stroke-dasharray:none}.wax-seal.is-earned .wax-seal__ring{stroke:#3c0a0573;stroke-width:2px}.wax-seal.is-earned .wax-seal__shine{fill:#ffffff47}.wax-seal.is-earned .wax-seal__icon{color:#ffe1c8;opacity:1}@keyframes stamp{0%{opacity:0;transform:scale(1.35)rotate(-12deg)}}.tutorial{left:50%;bottom:calc(max(var(--space-4), env(safe-area-inset-bottom)) + 88px);align-items:center;gap:var(--space-3);max-width:min(94vw,560px);padding:var(--space-3) var(--space-4);border-radius:var(--radius);background:var(--text);color:var(--bg);pointer-events:auto;box-shadow:var(--shadow);flex-wrap:wrap;justify-content:center;font-weight:700;display:flex;position:absolute;transform:translate(-50%)}.tutorial .btn--ghost{color:var(--bg);border-color:color-mix(in oklab, var(--bg) 50%, transparent)}.tutorial__n{font-size:var(--text-xs);background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-pill);padding:2px 8px}.pause-actions{gap:var(--space-2);display:grid}.threads{margin:var(--space-2) 0 0;gap:var(--space-2);padding:0;list-style:none;display:grid}.threads li{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1.5px dashed var(--border);color:var(--muted);display:flex}.threads li.is-done{border-style:solid;border-color:var(--thread);color:var(--text)}.threads__dot{background:var(--surface-2);border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.threads li.is-done .threads__dot{background:var(--thread);color:var(--surface)}.quiz-wrap{max-width:620px;padding:var(--space-5) var(--space-4) var(--space-10);margin:0 auto}.quiz-wrap .choices{margin:var(--space-3) 0}@media (width<=640px){.topbar .row .btn--sm{padding:0 var(--space-3)}}.action-btn__icon{place-items:center;display:inline-grid}.trail-group__emblem{flex:none}:root,[data-theme=light]{--parch:#fbf3df;--parch-edge:#e8d4a8;--parch-ink:#3a2a17;--illum-bg:linear-gradient(145deg, #f3c65a, #c8862e);--illum-ink:#8c2a1c}[data-theme=dark]{--parch:#231f2a;--parch-edge:#3d3342;--parch-ink:#f0e6d2;--illum-bg:linear-gradient(145deg, #e0b060, #9a6424);--illum-ink:#2a1408}.modal--parchment{--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.45 0 0 0 0 0.32 0 0 0 0 0.15 0 0 0 0.09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background:var(--grain), radial-gradient(ellipse at 50% 40%, transparent 55%, color-mix(in oklab, var(--parch-edge) 70%, transparent) 100%), var(--parch);color:var(--parch-ink);border:1px solid var(--parch-edge);box-shadow:inset 0 0 0 6px var(--parch), inset 0 0 0 7px color-mix(in oklab, var(--gold) 45%, transparent), var(--shadow);position:relative}.modal--parchment .modal__head{padding-top:var(--space-6)}.modal--parchment .modal__title{letter-spacing:-.01em;font-size:clamp(1.5rem,1.25rem + 1vw,2.1rem)}.modal--parchment .modal__title:after{content:"";background:radial-gradient(circle, var(--gold) 3px, transparent 3.5px) center / 10px 10px no-repeat, linear-gradient(var(--gold), var(--gold)) left center / 52px 1.5px no-repeat, linear-gradient(var(--gold), var(--gold)) right center / 52px 1.5px no-repeat;opacity:.8;width:120px;height:10px;margin-top:8px;display:block}.modal--parchment .modal__foot{border-top-color:color-mix(in oklab, var(--gold) 30%, transparent)}.modal--parchment .layer{background:color-mix(in oklab, var(--parch) 70%, white 30%)}[data-theme=dark] .modal--parchment .layer{background:color-mix(in oklab, var(--parch) 85%, white 6%)}.modal--parchment .layer--book p:first-of-type:first-letter,.modal--parchment .illuminated:first-letter{float:left;font-family:var(--font-display);color:var(--illum-ink);background:var(--illum-bg);border-radius:6px;margin:.06em .12em 0 0;padding:.08em .14em .04em;font-size:2.9em;font-weight:700;line-height:1;box-shadow:inset 0 0 0 2px #ffffff59,0 1px #0003}[data-contrast=high] .modal--parchment{background:var(--surface);color:var(--text)}
