:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--app-bg:#fff;--app-fg:#111;--app-error:#b91c1c;--reading-font-size:1.125rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*,:before,:after{box-sizing:border-box}html,body{overflow-x:hidden}img{max-width:100%;height:auto}button,input[type=file]{min-width:44px;min-height:44px;padding:.5rem 1rem}@media (prefers-color-scheme:dark){:root:not([data-theme]){--app-bg:#121212;--app-fg:#eaeaea;--app-error:#fca5a5}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-bg:#fff;--app-fg:#111;--app-error:#b91c1c}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-bg:#121212;--app-fg:#eaeaea;--app-error:#fca5a5}:root[data-theme=sepia]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-bg:#f4ecd8;--app-fg:#3b2f1e;--app-error:#b91c1c}:root[data-text-size=small]{--reading-font-size:.95rem}:root[data-text-size=medium]{--reading-font-size:1.125rem}:root[data-text-size=large]{--reading-font-size:1.3rem}:root[data-text-size=x-large]{--reading-font-size:1.55rem}body{background:var(--app-bg);color:var(--app-fg);margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif}@keyframes dice-tray-roll{0%{opacity:.4;transform:scale(1.4)}to{opacity:1;transform:scale(1)}}.dice-tray__result--rolling{animation:.3s ease-out dice-tray-roll;display:inline-block}@media (prefers-reduced-motion:reduce){.dice-tray__result--rolling{animation:none}}.dice-tray__manual-entry{align-items:center;gap:.5rem;display:inline-flex}.dice-tray__manual-entry input{width:4rem}.dice-tray__error{color:var(--app-error)}.reading-screen__prose{max-width:65ch;line-height:1.6;font-size:var(--reading-font-size)}.reading-screen__image{max-width:min(65ch,100%);height:auto}.reading-screen__layout{flex-direction:column;align-items:flex-start;gap:1rem;max-width:100%;display:flex}.reading-screen__nav-link{align-items:center;min-height:44px;padding:.25rem .5rem;display:inline-flex}.reading-screen__choice{text-align:left;width:100%;max-width:100%;margin-bottom:.5rem;display:block}.settings__option{align-items:center;gap:.5rem;min-height:44px;display:flex}.character-sheet__toggle{display:inline-block}.character-sheet__body[data-state=closed]{display:none}.combat__panels{flex-wrap:wrap;gap:1rem;display:flex}.combat__enemy-image{object-fit:contain;max-width:8rem;max-height:8rem}.combat__round-log{max-height:12rem;overflow-y:auto}@media (width>=768px){.reading-screen__layout{flex-direction:row}.character-sheet{flex:0 0 16rem;order:1}.character-sheet__toggle{display:none}.character-sheet__body[data-state=closed]{display:block}}:root[data-direction] main{max-width:60rem;margin:0 auto;padding:1.5rem 1.25rem 4rem}:root[data-direction] main>section>h2{margin-top:0}:root[data-direction] main section>ul{padding:0;list-style:none}:root[data-direction] main>section>ul{gap:1rem;display:grid}:root[data-direction] main>section>ul>li a{color:inherit;text-decoration:none}:root[data-direction=codex]{--accent:#9a3b1f;--accent-fg:#fdf6ee;--surface:color-mix(in srgb, var(--app-bg) 88%, var(--app-fg));--border:color-mix(in srgb, var(--app-bg) 62%, var(--app-fg));--muted:color-mix(in srgb, var(--app-fg) 62%, var(--app-bg));--serif:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif}:root[data-direction=codex] header{text-align:center;border-bottom:3px double var(--border);padding:1.75rem 1rem 1.25rem}:root[data-direction=codex] header h1{font-family:var(--serif);letter-spacing:.01em;margin:0 0 .5rem;font-size:2.4rem;font-weight:600}:root[data-direction=codex] header nav{justify-content:center;gap:2rem;display:flex}:root[data-direction=codex] header nav a{font-family:var(--serif);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);font-size:.78rem;text-decoration:none}:root[data-direction=codex] main>section>h2,:root[data-direction=codex] main section>h3{font-family:var(--serif);font-weight:600}:root[data-direction=codex] main>section>h2{border-bottom:1px solid var(--border);padding-bottom:.4rem;font-size:1.9rem}:root[data-direction=codex] .reading-screen__prose{font-family:var(--serif)}:root[data-direction=codex] main>section>ul>li{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:2px;padding:1rem 1.25rem}:root[data-direction=codex] main>section>ul>li span{font-family:var(--serif);font-size:1.25rem;font-weight:600}:root[data-direction=codex] button{background:var(--accent);color:var(--accent-fg);font-family:var(--serif);letter-spacing:.02em;cursor:pointer;border:none;border-radius:2px}:root[data-direction=codex] fieldset{border:1px solid var(--border);background:var(--surface);border-radius:2px}:root[data-direction=codex] legend{font-family:var(--serif);padding:0 .5rem;font-weight:600}:root[data-direction=nightfall]{--accent:#7c5cff;--accent-2:#22d3ee;--accent-fg:#fff;--surface:color-mix(in srgb, var(--app-bg) 84%, var(--app-fg));--border:color-mix(in srgb, var(--app-bg) 68%, var(--app-fg));--muted:color-mix(in srgb, var(--app-fg) 60%, var(--app-bg));--shadow:color-mix(in srgb, var(--app-fg) 22%, transparent);--sans:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", sans-serif}:root[data-direction=nightfall] body{font-family:var(--sans)}:root[data-direction=nightfall] header{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;padding:1.25rem 1.5rem;display:flex}:root[data-direction=nightfall] header h1{letter-spacing:-.01em;background:linear-gradient(90deg, var(--accent), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.6rem;font-weight:800}:root[data-direction=nightfall] header nav{gap:1.25rem;display:flex}:root[data-direction=nightfall] header nav a{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:.72rem;font-weight:700;text-decoration:none}:root[data-direction=nightfall] main>section>h2{letter-spacing:-.01em;font-size:1.75rem;font-weight:800}:root[data-direction=nightfall] main section>h3,:root[data-direction=nightfall] legend{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:.8rem;font-weight:700}:root[data-direction=nightfall] main>section>ul>li{background:var(--surface);border:1px solid var(--border);box-shadow:0 6px 20px -12px var(--shadow);border-radius:14px;padding:1.1rem 1.25rem}:root[data-direction=nightfall] main>section>ul>li span{font-size:1.2rem;font-weight:700}:root[data-direction=nightfall] button{background:linear-gradient(90deg, var(--accent), var(--accent-2));color:var(--accent-fg);cursor:pointer;border:none;border-radius:999px;font-weight:700}:root[data-direction=nightfall] .reading-screen__choice{background:var(--surface);color:inherit;border:1px solid var(--border);border-radius:12px}:root[data-direction=nightfall] fieldset{border:1px solid var(--border);background:var(--surface);border-radius:14px}:root[data-direction=almanac]{--accent:#d2492c;--accent-fg:#fff;--border:color-mix(in srgb, var(--app-bg) 72%, var(--app-fg));--muted:color-mix(in srgb, var(--app-fg) 55%, var(--app-bg));--sans:"Helvetica Neue", Helvetica, Arial, system-ui, sans-serif}:root[data-direction=almanac] body{font-family:var(--sans)}:root[data-direction=almanac] header{border-bottom:2px solid var(--app-fg);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;padding:1.5rem 1.5rem 1rem;display:flex}:root[data-direction=almanac] header h1{letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:700}:root[data-direction=almanac] header nav{gap:1.5rem;display:flex}:root[data-direction=almanac] header nav a{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:.72rem;font-weight:600;text-decoration:none}:root[data-direction=almanac] main>section>h2{letter-spacing:-.02em;border-bottom:2px solid var(--app-fg);padding-bottom:.5rem;font-size:2.1rem;font-weight:700}:root[data-direction=almanac] main section>h3,:root[data-direction=almanac] legend{text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-size:.7rem;font-weight:700}:root[data-direction=almanac] main>section>ul{gap:0}:root[data-direction=almanac] main>section>ul>li{border-top:1px solid var(--border);padding:1.1rem 0}:root[data-direction=almanac] main>section>ul>li:last-child{border-bottom:1px solid var(--border)}:root[data-direction=almanac] main>section>ul>li span{letter-spacing:-.01em;font-size:1.3rem;font-weight:700}:root[data-direction=almanac] main>section>ul>li p{color:var(--muted);margin:.25rem 0 0}:root[data-direction=almanac] button{background:var(--accent);color:var(--accent-fg);letter-spacing:.02em;cursor:pointer;border:none;border-radius:0;font-weight:600}:root[data-direction=almanac] .reading-screen__choice{color:inherit;border:1px solid var(--app-fg);background:0 0;border-radius:0}:root[data-direction=almanac] fieldset{border:none;border-top:1px solid var(--border);padding-left:0;padding-right:0}
