:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#171412;--ink:#f4f0ea;--muted:#a0968d;--dim:#6c625b;--hair:#3b332e;--accent:#d08e76;--pip:#5a4e47;--onaccent:#1a1512;--navbg:#1b1714;--serif:Georgia, "Iowan Old Style", "Times New Roman", serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--nav:calc(58px + env(safe-area-inset-bottom))}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (prefers-color-scheme:light){:root{--bg:#f6f2ec;--ink:#1c1a19;--muted:#655c55;--dim:#8a8079;--hair:#e0d7ce;--accent:#8f5443;--pip:#c9b3aa;--onaccent:#fbf6f2;--navbg:#efe9e1}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);margin:0;padding:0}body{color:var(--ink);font-family:var(--serif);font-size:17px;line-height:1.4}#root{padding:max(16px, env(safe-area-inset-top)) 18px calc(var(--nav) + 24px);max-width:540px;min-height:100vh;margin:0 auto}.eyebrow{font-family:var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:500}header{text-align:center;padding:4px 0 16px}header .rule{background:var(--accent);width:34px;height:1px;margin:11px auto 9px}header p{color:var(--muted);margin:0;font-size:14px;font-style:italic}.empty{color:var(--dim);text-align:center;padding:18px 2px;font-size:14px;font-style:italic}nav{background:var(--navbg);border-top:1px solid var(--hair);padding-bottom:env(safe-area-inset-bottom);z-index:5;display:flex;position:fixed;bottom:0;left:0;right:0}nav button{color:var(--dim);font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;flex:1;padding:19px 4px;font-size:9.5px}nav button[aria-current=page]{color:var(--accent)}h2{font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin:26px 0 10px;font-size:11px;font-weight:500}.note{color:var(--muted);margin:10px 2px 0;font-size:12.5px;font-style:italic}.card{border:1px solid var(--hair);background:var(--navbg);border-radius:6px;margin:14px 0;padding:20px 18px}.card-hd{text-align:center;margin-bottom:4px}.card .rule{background:var(--accent);width:34px;height:1px;margin:9px auto 2px}details{border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);margin-bottom:20px}summary{cursor:pointer;justify-content:space-between;align-items:center;padding:13px 2px;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary .chev{color:var(--muted);font-size:11px;font-family:var(--sans)}.row{justify-content:space-between;align-items:center;padding:7px 0;display:flex}.row .name{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:400}.seg{border:1px solid var(--hair);border-radius:2px;display:flex;overflow:hidden}.seg button{font-family:var(--sans);letter-spacing:.12em;color:var(--muted);cursor:pointer;background:0 0;border:0;min-width:54px;padding:7px 14px;font-size:11px;font-weight:500}.seg button[aria-pressed=true]{background:var(--accent);color:var(--onaccent)}.roll{background:var(--accent);width:100%;color:var(--onaccent);font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;cursor:pointer;border:0;border-radius:2px;padding:19px;font-size:13px;font-weight:600}.roll:active{transform:translateY(1px)}.ghost{border:1px solid var(--hair);width:100%;color:var(--muted);font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:2px;margin-top:10px;padding:15px;font-size:11.5px}.ghost:active{color:var(--ink)}.linkish{color:var(--muted);font-family:var(--sans);letter-spacing:.04em;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin:12px auto 0;font-size:12px;text-decoration:underline;display:block}.linkish:active{color:var(--ink)}button:focus-visible,summary:focus-visible,.field{border:1px solid var(--hair);width:100%;color:var(--ink);font-family:var(--sans);background:0 0;border-radius:4px;margin:12px 0;padding:12px 14px;font-size:16px;display:block}.field::placeholder{color:var(--dim)}input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.kodrad{font-family:var(--sans);letter-spacing:.18em;color:var(--accent);text-align:center;word-break:break-all;padding:18px 0 4px;font-size:15px}.line{border-bottom:1px solid var(--hair);opacity:0;align-items:flex-start;gap:15px;padding:13px 0;animation:.34s forwards in;display:flex}.line:last-child{border-bottom:0}.die{flex:0 0 30px;width:30px;height:30px;margin-top:1px}.die circle{fill:var(--accent)}.die rect{stroke:var(--pip)}.body{flex:1;min-width:0}.cat{font-family:var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--muted);margin-bottom:3px;font-size:9.5px;display:block}.res{font-size:20px;line-height:1.2}.line.bonusline{border:1.5px solid var(--accent);background:color-mix(in srgb, var(--accent) 9%, transparent);border-radius:10px;margin:10px 0 6px;padding:12px 14px}.line.bonusline .cat{color:var(--accent);font-weight:700}.finrow .die{opacity:.45}.rollfin{border:1px solid var(--accent);color:var(--accent);font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:2px;margin-top:2px;padding:8px 16px;font-size:11px}.rollfin:active{background:var(--accent);color:var(--onaccent)}.sub{font-family:var(--sans);color:var(--muted);margin-top:4px;font-size:11.5px}.dot{background:var(--accent);vertical-align:middle;border-radius:50%;width:5px;height:5px;margin-left:8px;display:inline-block}@keyframes in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.line{opacity:1;animation:none}}.ask{border:1px solid var(--accent);border-radius:2px;margin:16px 0 4px;padding:15px}.ask p{margin:0 0 12px;font-size:14px}.pick{gap:8px;display:flex}.pick button{border:1px solid var(--hair);color:var(--ink);font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:2px;flex:1;padding:12px 4px;font-size:11px}.wild{font-family:var(--serif);text-align:center;color:var(--ink);padding:22px 10px;font-size:19px;line-height:1.45}.lvltag{vertical-align:middle;margin-left:6px;font-size:12px}.custom{vertical-align:middle;opacity:.85;margin-left:4px;font-size:11px}nav button:disabled{opacity:.35;cursor:default}footer{text-align:center;color:var(--muted);margin-top:26px;font-size:13px;font-style:italic;line-height:1.6}.chips{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.chips button{border:1px solid var(--hair);color:var(--muted);font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:2px;padding:9px 12px;font-size:10.5px}.chips button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.rec{border:1px solid var(--accent);text-align:center;color:var(--ink);font-family:var(--serif);letter-spacing:.01em;border-radius:2px;margin:14px 0 0;padding:16px;font-size:19px}.rrow{color:var(--dim);cursor:pointer;background:0 0;border:0;align-self:center;padding:2px 6px;font-size:16px}.rrow:active{color:var(--accent)}.toast{left:50%;bottom:calc(var(--nav) + 18px);background:var(--accent);color:var(--onaccent);font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;opacity:0;pointer-events:none;z-index:9;border-radius:2px;padding:11px 20px;font-size:11px;transition:opacity .25s;position:fixed;transform:translate(-50%)}.toast.on{opacity:1}.storyimg{border-radius:4px;width:100%;margin:8px 0 12px;display:block}.storyblock.noimg .storyimg,.storyblock.noimg .page-img{display:none}.imgtog{color:var(--dim);font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:2px 6px;font-size:11px}.storyposter{margin:8px 0 12px;position:relative}.storyposter .storyimg{margin:0}.poster-cap{text-align:center;pointer-events:none;z-index:1;background:linear-gradient(#000c,#0000008c 38%,#0003 72%,#0000);border-radius:4px 4px 0 0;padding:22px 16px 44px;position:absolute;top:0;left:0;right:0}.poster-title{font-family:var(--serif);color:#f4efe6;text-transform:uppercase;text-shadow:0 1px 12px #000000bf,0 0 3px #00000080;font-size:clamp(20px,6.2vw,31px);line-height:1.04}.poster-rule{opacity:.95;border-radius:1px;width:38px;height:1.5px;margin:9px auto 8px}.poster-sub{font-family:var(--serif);color:#f4efe6;letter-spacing:.22em;text-shadow:0 1px 10px #000000b3,0 0 3px #00000080;font-size:clamp(12px,3.4vw,16px);font-style:italic}.gallery{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px;display:grid}.gcard{cursor:pointer;aspect-ratio:2/3;background:0 0;border:0;border-radius:5px;padding:0;position:relative;overflow:hidden}.gcard .storyposter{margin:0;position:absolute;inset:0}.gcard .storyimg{object-fit:cover;border-radius:0;height:100%;margin:0}.gcard .poster-cap{padding:14px 8px 30px}.gcard .poster-title{font-size:clamp(12px,3.2vw,17px)}.gcard .poster-rule{width:26px;margin:6px auto 5px}.gcard .poster-sub{letter-spacing:.14em;font-size:clamp(9px,2.1vw,12px)}.gcard .gnoimg{background:var(--navbg);border:1px solid var(--hair);height:100%;font-family:var(--serif);color:var(--ink);text-align:center;justify-content:center;align-items:center;padding:10px;font-size:14px;display:flex}.storyblock .storyt{font-family:var(--serif);text-align:center;margin:6px 0 4px;font-size:19px}.storytext{font-family:var(--serif);color:var(--ink);margin:0 0 12px;font-size:16.5px;line-height:1.62}.book{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-top:8px;display:flex;overflow-x:auto}.book::-webkit-scrollbar{display:none}.page{scroll-snap-align:center;box-sizing:border-box;scrollbar-width:none;flex-direction:column;flex:0 0 100%;max-height:68vh;padding-right:2px;display:flex;overflow-y:auto}.page::-webkit-scrollbar{display:none}.page-img{border-radius:6px;width:100%;margin:12px 0 2px}.page-cover{justify-content:center;min-height:42vh}.booknav{justify-content:center;align-items:center;gap:16px;margin-top:12px;display:flex}.booknav button{border:1px solid var(--hair);color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;width:36px;height:36px;font-size:18px;line-height:0}.booknav button:disabled{opacity:.3;cursor:default}.bookpage{font-family:var(--sans);letter-spacing:.12em;color:var(--muted);text-align:center;min-width:58px;font-size:12px}
