:root{--bg: #f2f4f7;--surface: #fbfcfd;--ink: #141a2a;--muted: #586176;--line: #dce1e9;--accent: #e8491d;--accent-ink: #ffffff;--heart: #e3284f;--gold: #ffcf33;--display: "Bricolage Grotesque", "Helvetica Neue", Arial, sans-serif;--body: "Figtree", "Helvetica Neue", Arial, sans-serif;--meta: var(--body);--radius: 14px}@media(prefers-color-scheme:dark){:root{--bg: #272d3b;--surface: #313847;--ink: #f1f3f8;--muted: #b0b8c9;--line: #434b5e;--accent: #ff6a3f;--accent-ink: #12141b;--heart: #ff5577;color-scheme:dark}}:root[data-cat=children],[data-cat=children]{--bg: #fff3cf;--surface: #fffaee;--ink: #2a2152;--muted: #64598a;--line: #f0d68a;--accent: #f0386f;--accent-ink: #ffffff;--heart: #f0386f;--display: "Fredoka", "Trebuchet MS", sans-serif;--meta: var(--body);--radius: 24px;color-scheme:light}:root[data-cat=christian],[data-cat=christian]{--bg: #efe9dc;--surface: #f8f4ec;--ink: #1b2a4a;--muted: #586379;--line: #d9cdb3;--accent: #8f6b12;--accent-ink: #ffffff;--heart: #a3273a;--display: "Cormorant Garamond", Georgia, serif;--meta: var(--body);--radius: 4px;color-scheme:light}:root[data-cat=horror],[data-cat=horror]{--bg: #2a2222;--surface: #352b2b;--ink: #eee5d6;--muted: #b3a797;--line: #4a3a3a;--accent: #e0333d;--accent-ink: #ffffff;--heart: #f0444f;--display: "Creepster", Impact, fantasy;--meta: var(--body);--radius: 2px;color-scheme:dark}:root[data-cat=mystery],[data-cat=mystery]{--bg: #e7dbc0;--surface: #f1e8d3;--ink: #1c1913;--muted: #5a5040;--line: #c4af86;--accent: #8a1c17;--accent-ink: #f1e8d3;--heart: #8a1c17;--display: "Limelight", Georgia, serif;--meta: "Special Elite", "Courier New", monospace;--radius: 0px;color-scheme:light}:root[data-cat=fantasy],[data-cat=fantasy]{--bg: #1f3d35;--surface: #284a41;--ink: #f4ebd0;--muted: #bcc6ad;--line: #3d6157;--accent: #d9b25a;--accent-ink: #132420;--heart: #e98a7a;--display: "Cinzel", "Trajan Pro", Georgia, serif;--meta: var(--body);--radius: 6px;color-scheme:dark}:root[data-cat=scifi],[data-cat=scifi]{--bg: #1f4b54;--surface: #275a63;--ink: #f6ead2;--muted: #b7cfcb;--line: #3b6e75;--accent: #ff8a3d;--accent-ink: #1b1b1b;--heart: #ff8a8a;--display: "Righteous", "Arial Rounded MT Bold", sans-serif;--meta: var(--body);--radius: 18px;color-scheme:dark}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 var(--body)}h1,h2,h3{font-family:var(--display);line-height:1.1;text-wrap:balance;margin:0}a{color:inherit}button{font:inherit;color:inherit}img{max-width:100%}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}[hidden]{display:none!important}.wrap{max-width:1140px;margin:0 auto;padding-inline:20px}header.top{position:sticky;top:0;z-index:5;background:var(--surface);border-bottom:1px solid var(--line)}header.top .wrap{display:flex;align-items:center;gap:12px 20px;padding-block:12px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:Bricolage Grotesque,sans-serif;font-weight:800;font-size:21px;letter-spacing:-.01em;margin-right:auto}.brand svg{width:34px;height:34px;flex:none}.lg-a{fill:var(--accent)}.lg-k{fill:none;stroke:var(--accent-ink);stroke-width:2.4;stroke-linecap:round}.lg-f{fill:var(--accent-ink)}nav.links{display:flex;gap:6px;align-items:center;flex-wrap:wrap}nav.links>a:not(.kofi){text-decoration:none;padding:7px 12px;border-radius:999px;font-weight:600;font-size:15px}nav.links>a:not(.kofi):hover,nav.links a[aria-current=page]{background:color-mix(in srgb,var(--ink) 8%,transparent)}.req-link{border:1px solid var(--line);background:transparent;cursor:pointer;padding:7px 14px;border-radius:999px;font-weight:600;font-size:15px}.count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;margin-left:4px;border-radius:999px;background:var(--heart);color:#fff;font-size:12px;font-variant-numeric:tabular-nums}.kofi{display:inline-flex;align-items:center;gap:8px;text-decoration:none;background:var(--accent);color:var(--accent-ink);font-weight:700;padding:8px 16px;border-radius:999px;font-size:15px}.kofi svg{width:18px;height:18px}.hero{padding-block:56px 40px}.eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--accent);margin:0 0 14px}.hero h1{font-size:clamp(40px,7vw,76px);font-weight:800;letter-spacing:-.03em;max-width:13ch}.sub{font-size:19px;color:var(--muted);max-width:54ch;margin:18px 0 0}.tiles{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));padding-block:8px 48px}.tile{display:flex;flex-direction:column;justify-content:space-between;gap:28px;min-height:150px;padding:20px;text-decoration:none;background-color:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);position:relative;overflow:hidden;transition:transform .2s}.tile:hover{transform:translateY(-3px)}.tile h3{font-size:26px;font-weight:700;position:relative}.tile p{margin:4px 0 0;font-size:14px;color:var(--muted);position:relative}.tile .n{font-family:var(--meta);font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);position:relative}[data-cat=children].fx{background-image:radial-gradient(circle at 88% 12%,#ffd166 0 30px,transparent 31px),radial-gradient(circle at 64% 6%,#7cc6ff 0 12px,transparent 13px),radial-gradient(circle at 78% 96%,#ff9ab8 0 14px,transparent 15px)}[data-cat=christian].fx{background-image:radial-gradient(ellipse at 50% -20%,rgba(214,170,60,.35),transparent 65%)}[data-cat=horror].fx{background-image:radial-gradient(ellipse at 50% 120%,rgba(200,20,31,.35),transparent 60%),radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.35))}[data-cat=mystery].fx{background-image:repeating-conic-gradient(from 0deg at 50% 115%,rgba(28,25,19,.09) 0 4deg,transparent 4deg 10deg)}[data-cat=fantasy].fx{background-image:radial-gradient(1px 1px at 20% 30%,#f0e6c9,transparent),radial-gradient(1px 1px at 70% 20%,#f0e6c9,transparent),radial-gradient(1.5px 1.5px at 85% 60%,#d9b25a,transparent),radial-gradient(1px 1px at 40% 80%,#f0e6c9,transparent),radial-gradient(ellipse at 50% 120%,rgba(217,178,90,.25),transparent 60%)}[data-cat=scifi].fx{background-image:radial-gradient(circle at 84% 18%,#ffcf6b 0 16px,transparent 17px),radial-gradient(ellipse 46px 12px at 84% 18%,transparent 0 80%,rgba(255,138,61,.8) 82% 92%,transparent 94%),radial-gradient(1px 1px at 20% 70%,#f6ead2,transparent),radial-gradient(1px 1px at 60% 40%,#f6ead2,transparent)}[data-cat=mystery].tile,[data-cat=mystery].band{box-shadow:inset 0 0 0 5px var(--bg),inset 0 0 0 6px var(--ink)}[data-cat=fantasy].tile{box-shadow:inset 0 0 0 4px var(--bg),inset 0 0 0 5px var(--accent)}.section-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px;margin-bottom:18px}.section-head h2{font-size:32px;font-weight:700}.note{color:var(--muted);font-size:14px}.controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:22px}.search{flex:1 1 260px;min-width:0;position:relative}.search input{width:100%;padding:12px 14px 12px 42px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit}.search svg{position:absolute;left:15px;top:50%;translate:0 -50%;width:18px;height:18px;stroke:var(--muted);fill:none;stroke-width:2}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:8px 14px;font-size:14px;font-weight:600;cursor:pointer}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chip.chip-first[aria-pressed=true]{background:var(--gold);color:#1f1a05;border-color:var(--gold)}.grid{display:grid;gap:26px 20px;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));padding-bottom:64px}.book{display:flex;flex-direction:column;gap:10px;min-width:0}.cover-link{display:block;text-decoration:none;border-radius:var(--radius)}.cover{aspect-ratio:2 / 3;width:100%;max-width:100%;display:flex;flex-direction:column;justify-content:space-between;padding:16px 14px;background-color:var(--bg);color:var(--ink);border-radius:var(--radius);border:1px solid var(--line);overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s;object-fit:cover}.cover-link:hover .cover{transform:translateY(-4px);box-shadow:0 14px 28px -12px #00000073}.ctop{display:flex;flex-direction:column;align-items:flex-start;gap:8px;position:relative}.cover .ct{font-family:var(--display);font-size:21px;line-height:1.05;font-weight:700;overflow-wrap:anywhere;position:relative}.cover .ca{font-family:var(--meta);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);position:relative}.cover .first,.first-pill{padding:3px 9px;border-radius:999px;background:var(--gold);color:#1f1a05;font:700 10px/1.3 var(--body);letter-spacing:.06em;text-transform:uppercase}.cover[data-cat=horror] .ct{color:var(--accent);font-weight:400;font-size:25px}.cover[data-cat=fantasy]{box-shadow:inset 0 0 0 5px var(--bg),inset 0 0 0 6px var(--accent)}.cover[data-cat=mystery]{box-shadow:inset 0 0 0 6px var(--bg),inset 0 0 0 7px var(--ink)}.cover[data-cat=christian] .ct{font-size:24px}.book h3{font-family:var(--body);font-size:16px;font-weight:700;line-height:1.25}.book h3 a{text-decoration:none}.book h3 a:hover{text-decoration:underline}.meta{font-family:var(--meta);color:var(--muted);font-size:13px}.row{display:flex;gap:8px;align-items:center}.yt{flex:1;display:inline-flex;justify-content:center;align-items:center;gap:6px;background:var(--ink);color:var(--bg);border-radius:999px;padding:8px 12px;font-size:14px;font-weight:700;text-decoration:none}.yt svg{width:16px;height:16px;fill:currentColor}.soon{flex:1;text-align:center;padding:7px 12px;border-radius:999px;border:1px dashed var(--line);color:var(--muted);font-size:14px;font-weight:600}.fav{flex:none;width:38px;height:38px;display:grid;place-items:center;border-radius:999px;border:1px solid var(--line);background:var(--surface);cursor:pointer}.fav svg{width:18px;height:18px;stroke:var(--heart);stroke-width:2;fill:none;transition:transform .2s}.fav[aria-pressed=true] svg{fill:var(--heart)}.fav:active svg{transform:scale(1.3)}.empty{padding:48px 24px;text-align:center;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);grid-column:1 / -1}.empty h3{color:var(--ink);font-size:24px;margin-bottom:8px}.bundle{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:32px;align-items:center;padding:28px;margin-bottom:48px;background-color:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius)}.stack{display:grid;grid-template-areas:"s";padding:8px 0 8px 8px}.stack .cover{grid-area:s;width:150px;padding:10px;box-shadow:0 8px 18px -10px #0006}.stack .cover .ct{font-size:15px}.stack .cover .ca{font-size:9px}.stack .cover:nth-child(1){translate:0 0;rotate:-6deg}.stack .cover:nth-child(2){translate:24px 4px;rotate:-2deg}.stack .cover:nth-child(3){translate:48px 2px;rotate:2deg}.stack .cover:nth-child(4){translate:72px 0;rotate:6deg}.bundle-body{display:flex;flex-direction:column;gap:10px;min-width:0}.bundle-body .eyebrow{margin:0}.bundle-body h2{font-size:clamp(26px,4vw,36px)}.bundle-body p{margin:0;color:var(--muted);max-width:56ch}.bundle-body .row{justify-content:flex-start}.bundle-body .soon{flex:none;padding:10px 20px}.bundle details{font-size:15px}.bundle summary{cursor:pointer;font-weight:600}.bundle ol{columns:2 220px;margin:10px 0 0;padding-left:22px}.bundle ol a{text-decoration:none}.bundle ol a:hover{text-decoration:underline}.part-of{margin:16px 0 0}.band{padding-block:56px 44px;margin-bottom:32px;background-color:var(--bg);border-bottom:1px solid var(--line)}.crumb{font-family:var(--meta);font-size:13px;color:var(--muted);text-decoration:none}.band h1{font-size:clamp(44px,9vw,96px);font-weight:700;margin-top:12px}.band .blurb{font-family:var(--display);font-size:clamp(20px,3vw,28px);color:var(--accent);margin:10px 0 0}.band .intro{max-width:56ch;color:var(--muted);margin:12px 0 0}[data-cat=horror] .band h1{color:var(--accent);font-weight:400;letter-spacing:.02em;animation:flicker 6s infinite}[data-cat=mystery] .band h1{letter-spacing:.04em;text-transform:uppercase}[data-cat=children] .band h1{animation:bob 3s ease-in-out infinite}[data-cat=fantasy] .band h1{color:var(--accent);letter-spacing:.06em}[data-cat=christian] .band h1{font-weight:500;font-style:italic}[data-cat=scifi] .band h1{color:var(--accent);font-weight:400;text-shadow:3px 3px 0 color-mix(in srgb,var(--ink) 25%,transparent)}@keyframes flicker{0%,92%,to{opacity:1}93%{opacity:.35}94%{opacity:1}96%{opacity:.5}97%{opacity:1}}@keyframes bob{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-6px) rotate(1deg)}}.detail{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:40px;padding-block:40px 64px;align-items:start}.detail .cover .ct{font-size:34px}.detail h1{font-size:clamp(34px,6vw,60px);font-weight:700;margin-top:10px}.by{font-size:19px;color:var(--muted);margin:8px 0 0}.tags{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0}.tag{font-family:var(--meta);font-size:13px;padding:4px 12px;border-radius:999px;border:1px solid var(--line);text-decoration:none}.tag:hover{border-color:var(--accent)}.desc{font-size:18px;max-width:60ch}.answer{font-size:17px;max-width:60ch;margin:0 0 12px}.desc p{margin:0 0 12px}.first-note{display:flex;gap:12px;align-items:flex-start;margin:18px 0 0;padding:14px 16px;border-radius:var(--radius);background:color-mix(in srgb,var(--gold) 22%,var(--surface));border:1px solid color-mix(in srgb,var(--gold) 60%,var(--line));max-width:60ch}.first-note b{display:block;font-size:16px}.first-note span{color:var(--muted);font-size:15px}.first-note svg{flex:none;width:26px;height:26px;fill:#e0a800}.facts{display:flex;flex-wrap:wrap;gap:8px 28px;margin:22px 0;padding:14px 0;border-block:1px solid var(--line);font-family:var(--meta);font-size:14px;color:var(--muted)}.facts b{display:block;color:var(--ink);font-family:var(--body);font-size:17px;font-variant-numeric:tabular-nums}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions .yt,.actions .soon{flex:none;padding:12px 22px;font-size:16px}.actions .yt{background:var(--accent);color:var(--accent-ink)}.actions .fav{width:auto;height:auto;padding:10px 18px;gap:8px;display:inline-flex;font-weight:600}.download{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:16px}.download .meta{flex:1 1 220px}.buy{display:inline-flex;padding:12px 22px;border-radius:999px;background:var(--ink);color:var(--bg);font-weight:700;text-decoration:none}.buy:hover{background:var(--accent);color:var(--accent-ink)}.print{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px}.print .ghost{font-size:14px;padding:6px 14px}.player{margin-top:28px;width:100%;aspect-ratio:16 / 9;border:0;border-radius:var(--radius);background:#000}.more-h{font-size:28px;margin-bottom:18px}.request{border-top:1px solid var(--line);padding-block:40px;background:color-mix(in srgb,var(--accent) 7%,var(--bg))}.split{display:grid;gap:20px 32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center}.split h2{font-size:30px}.split p{color:var(--muted);margin:8px 0 0;max-width:52ch}.request form{display:flex;flex-wrap:wrap;gap:10px}.request input{flex:1 1 180px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit}.request button{border:0;cursor:pointer;background:var(--accent);color:var(--accent-ink);font-weight:700;padding:12px 22px;border-radius:999px}.request small{flex-basis:100%;color:var(--muted)}.support{border-top:1px solid var(--line);padding-block:40px}.acts{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.ghost{display:inline-flex;align-items:center;padding:8px 16px;border-radius:999px;border:1px solid var(--line);text-decoration:none;font-weight:600;font-size:15px}footer{padding-block:22px 32px;font-size:13px;color:var(--muted)}footer .wrap{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}.toast{position:fixed;left:50%;bottom:20px;translate:-50% 0;background:var(--ink);color:var(--bg);padding:10px 18px;border-radius:999px;font-size:14px;font-weight:600;z-index:20;max-width:calc(100% - 32px);text-align:center}@media(max-width:640px){.wrap{padding-inline:16px}.detail,.bundle{grid-template-columns:minmax(0,1fr);gap:24px}.bundle{padding:20px}.stack .cover{width:120px}.detail .cover{max-width:220px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.cover .ct{font-size:18px}.yt span{display:none}.acts{justify-content:flex-start}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
