/* Bukankah Lore — story pages (hand-built, /8/ full & /9/ summary) */
.story{--serif:'Spectral',Georgia,serif}
.progress{position:fixed;top:0;left:0;right:0;height:4px;z-index:99;background:transparent}
.progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--accent,#21D4B4),var(--yellow));transition:width .1s linear}

.reader{max-width:74ch;margin:0 auto;padding:44px 22px 110px}
.crumbs{font-size:.82rem;color:var(--muted);letter-spacing:.02em;margin-bottom:34px;display:flex;flex-wrap:wrap;gap:.45em;align-items:center}
.crumbs a{color:var(--muted);text-decoration:none;border-bottom:1px dotted transparent}
.crumbs a:hover{color:#fff;border-bottom-color:var(--accent)}
.crumbs b{color:#fff;font-weight:600}

.chapter-head{margin-bottom:40px}
.kicker{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.74rem;text-transform:uppercase;letter-spacing:.22em;color:var(--accent);margin-bottom:14px}
.chapter-head h1{font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:clamp(2.4rem,7vw,3.7rem);line-height:1.06;letter-spacing:-1.5px;margin-bottom:12px;color:#fff;text-wrap:balance}
.dek{font-family:var(--serif);font-style:italic;font-size:clamp(1.02rem,2.6vw,1.2rem);color:var(--muted);max-width:56ch;margin-bottom:22px}
.rule{height:3px;background:var(--border);border-radius:2px;max-width:96px;position:relative;margin:26px 0 0}
.rule i{position:absolute;inset:0;width:38%;background:var(--accent);border-radius:2px}

.lang-row{display:flex;justify-content:flex-end;margin:18px 0 -6px}
.lang-pill{display:inline-flex;border:2px solid var(--border);border-radius:999px;overflow:hidden;box-shadow:var(--shadow-sm)}
.lang-pill button{background:var(--surface);color:var(--muted);border:0;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.76rem;letter-spacing:.08em;padding:7px 16px;cursor:pointer}
.lang-pill button.active{background:var(--accent);color:var(--border)}
.lang-pill button:first-child{border-right:2px solid var(--border)}

article.prose{font-family:var(--serif);font-size:1.075rem;line-height:1.92;color:#e7e7f2;text-wrap:pretty}
article.prose p{margin:0 0 1.35em}
article.prose>p:first-of-type::first-letter{font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:3.6em;line-height:.82;float:left;padding:.06em .14em 0 0;color:var(--accent)}
article.prose h2{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1.28rem;letter-spacing:-.01em;color:#fff;margin:2em 0 .8em;padding-left:14px;border-left:4px solid var(--accent)}
article.prose strong{color:#fff;font-weight:600}
article.prose em{color:#fff}
article.prose .aside{font-size:.86rem;font-style:normal;font-family:'Inter',sans-serif;color:var(--muted)}
blockquote{margin:2em 0;padding:2px 0 2px 20px;border-left:3px solid var(--accent);color:#cfd0de;font-style:italic;font-size:1.02rem}

.page-pager,.part-pager{display:flex;gap:14px;align-items:center;justify-content:center;margin-top:54px}
.page-pager a,.part-pager a{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.88rem;color:var(--muted);border:2px solid var(--border);border-radius:12px;padding:11px 18px;background:var(--surface);box-shadow:var(--shadow-sm);transition:.15s ease-out}
.page-pager a:hover,.part-pager a:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--border);color:#fff}
.page-pager a.next,.part-pager a.next{background:var(--accent);color:var(--border)}
.page-pager span.pos{font-weight:700;color:#fff;font-family:'Space Grotesk',sans-serif;font-size:.88rem;letter-spacing:.06em}
.page-pager a.ghost.off,.part-pager a.off{opacity:.32;pointer-events:none}

.part-pager{margin-top:26px;flex-wrap:wrap}
.parts-strip{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:44px;padding-top:30px;border-top:3px solid var(--border)}
.parts-strip a{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.8rem;letter-spacing:.05em;color:var(--muted);text-decoration:none;padding:8px 15px;border-radius:999px;border:2px solid var(--border);background:var(--surface)}
.parts-strip a.on{background:var(--accent);color:var(--border);border-color:var(--border)}
.parts-strip a:hover:not(.on){color:#fff}

/* hub (/8/) */
.hub-list{display:grid;gap:16px;margin-top:36px}
.hub-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;text-decoration:none;background:var(--surface);border:3px solid var(--border);border-radius:16px;padding:20px 22px;box-shadow:var(--shadow-sm);transition:.15s ease-out}
.hub-card:hover{transform:translate(-3px,-3px);box-shadow:7px 7px 0 var(--border)}
.hub-card .n{font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:1.5rem;color:var(--border);background:var(--accent);min-width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:3px solid var(--border)}
.hub-card h3{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1.12rem;color:#fff;letter-spacing:-.01em}
.hub-card p{font-size:.87rem;color:var(--muted);margin-top:3px;font-family:'Inter',sans-serif;line-height:1.55}
.hub-card .go{font-size:1.25rem;color:var(--accent);padding-right:6px}

@media(max-width:640px){.reader{padding:30px 16px 90px}article.prose{font-size:1.02rem}}
