/* Bookrak blog. Same brand as the shop: plum, ink, orange, lilac. */
.on-dark{color:#fff}.eyebrow.on-dark{color:#D9C6E6}.lead.on-dark{color:#E8DAF1}.h2.on-dark{color:#fff}
.section{padding-top:36px}.narrow{max-width:760px}
.btn-ghost{border-color:#fff;color:#fff}.btn-ghost:hover{background:rgba(255,255,255,.12);color:#fff}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.note{padding:14px 16px;border-radius:14px;background:var(--lilac);color:var(--soft);font-weight:600;font-size:15px;margin:12px 0}
.note.warn{background:#FFF1E4;color:#8A3A0A}
.tag{display:inline-block;padding:3px 10px;border-radius:999px;background:var(--lilac);color:var(--plum);font:500 11px/1.6 'IBM Plex Mono',monospace;letter-spacing:.06em;text-transform:uppercase}
.tag-guest{background:#FFE6D6;color:#8A3A0A}
.stars{display:inline-flex;gap:2px;color:#D8CBE3;font-size:18px;vertical-align:middle}.stars svg{fill:currentColor}.stars svg.on{color:var(--orange)}.stars.sm{font-size:14px}.stars.lg{font-size:26px}
.inl{display:inline;margin:0}.linkbtn.tiny{font-size:12px;min-height:0;padding:0 6px;color:var(--muted)}
.av{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:800;overflow:hidden;flex:none}.av img{width:100%;height:100%;object-fit:cover}

/* hero */
.bhero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(900px 420px at 85% -10%,rgba(242,107,33,.35),transparent 60%),radial-gradient(700px 400px at -10% 110%,rgba(123,71,151,.55),transparent 60%),linear-gradient(160deg,#4B2455,#2B1434)}
.bhero-in{display:grid;gap:24px;padding-top:44px;padding-bottom:28px}
.bhero h1{font:400 40px/1.05 'Bree Serif',Georgia,serif;margin:12px 0 12px;color:#fff}
.bhero-copy{position:relative;z-index:2}.hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.bhero-art{position:relative;height:210px}
.fl{position:absolute;width:30%;animation:bfloat 7s ease-in-out infinite}.fl .cover{box-shadow:0 22px 34px -14px rgba(0,0,0,.65)}
.fl1{left:6%;top:30px;transform:rotate(-9deg)}.fl2{left:36%;top:0;animation-delay:-2s;z-index:2}.fl3{left:66%;top:34px;transform:rotate(8deg);animation-delay:-4s}
@keyframes bfloat{0%,100%{translate:0 0}50%{translate:0 -10px}}
.ribbon{overflow:hidden;padding:14px 0 26px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.ribbon-track{display:flex;gap:16px;width:max-content;animation:ribbon 60s linear infinite}
.rb{width:78px;flex:none;opacity:.9}.rb .cv-title,.rb .cv-author,.rb .cv-band{display:none}
@keyframes ribbon{to{transform:translateX(calc(-50% - 8px))}}
@media (prefers-reduced-motion:reduce){.fl,.ribbon-track{animation:none}.ribbon{overflow-x:auto}}

/* mood shelf */
.mood{background:var(--lilac);padding:34px 0 38px}
.mood-chips{margin:0 0 18px}
.mood-out{min-height:200px}
.mood-card{display:grid;grid-template-columns:120px 1fr;gap:18px;align-items:center;background:#fff;border-radius:22px;padding:18px;box-shadow:0 22px 40px -28px rgba(43,20,52,.55);animation:pop .45s cubic-bezier(.2,.9,.3,1.2)}
.mc-cover{display:block;text-decoration:none}.mc-title{margin:6px 0 2px;font-size:24px}.mc-price{margin:10px 0;font-size:15px;color:var(--soft)}.mc-cta{display:flex;gap:8px;flex-wrap:wrap}
.mood-empty{padding:40px 16px;text-align:center;border:2px dashed #CDBFD8;border-radius:20px}
@keyframes pop{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.mood-card{animation:none}}

/* featured and cards */
.feat{display:grid;gap:18px;text-decoration:none;color:inherit;border-radius:24px;overflow:hidden;background:#fff;border:2px solid var(--line)}
.feat-art .pc-img{aspect-ratio:16/10;border-radius:0}.feat-body{padding:6px 20px 22px;display:grid;gap:8px;align-content:center}.feat-body p{margin:0;color:var(--soft)}
.go{font-weight:800;color:var(--purple)}
.pgrid{display:grid;gap:18px;margin-top:18px;grid-template-columns:1fr}
.pcard{display:flex;flex-direction:column;background:#fff;border:2px solid var(--line);border-radius:20px;overflow:hidden;transition:transform .2s,box-shadow .2s}
.pcard:hover{transform:translateY(-3px);box-shadow:0 22px 34px -26px rgba(43,20,52,.6)}
.pc-link{display:block;text-decoration:none}
.pc-img{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;overflow:hidden}.pc-img>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pc-book{display:block;width:26%;transform:rotate(-4deg)}.pc-book .cv-author,.pc-book .cv-band{display:none}.pc-book .cv-title{font-size:9px}
.pc-plain span{font:400 26px 'Bree Serif',serif;opacity:.9}
.pc-body{padding:14px 16px 18px;display:grid;gap:8px}.pc-tags{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pc-title{margin:0;font:400 21px/1.2 'Bree Serif',Georgia,serif}.pc-title a{color:var(--ink);text-decoration:none}.pc-title a:hover{color:var(--purple)}.pc-ex{margin:0;color:var(--soft);font-size:15px}
.subband{margin:40px 0 20px;padding:28px 22px;border-radius:26px;background:linear-gradient(135deg,#4B2455,#2B1434);display:grid;gap:16px;align-items:center;color:#fff}

/* post */
.progress{position:fixed;left:0;right:0;top:0;height:4px;z-index:60;background:transparent}.progress i{display:block;height:100%;width:0;background:var(--rainbow)}
.post-head{padding:34px 0 30px}.post-head h1{font:400 34px/1.1 'Bree Serif',Georgia,serif;margin:10px 0 12px;color:inherit}
.crumb.on-dark,.crumb.on-dark a{color:rgba(255,255,255,.8)}
.ph-rate{display:flex;align-items:center;gap:10px;margin-bottom:10px}.ph-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;font-size:14px;opacity:.92}
.byline{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none}.byline img{border-radius:50%;background:#fff;padding:2px}
.post-grid{display:grid;gap:28px;padding-top:26px}
.post-hero{margin:0 0 20px}.post-hero img{width:100%;border-radius:18px;display:block}
.prose{font-size:18px;line-height:1.75;color:#2A1D31}.prose>p:first-of-type::first-letter{float:left;font:400 64px/.85 'Bree Serif',Georgia,serif;color:var(--plum);padding:6px 10px 0 0}
.prose p{margin:0 0 1.1em}.prose h2{font:400 26px/1.2 'Bree Serif',Georgia,serif;margin:1.6em 0 .5em;color:var(--plum)}
.prose blockquote{margin:1.6em 0;padding:6px 0 6px 22px;border-left:5px solid var(--orange);font:400 22px/1.45 'Bree Serif',Georgia,serif;color:var(--plum)}.prose blockquote p{margin:0}.prose cite{display:block;margin-top:8px;font:700 14px Nunito,sans-serif;color:var(--muted);font-style:normal}
.prose ul{padding-left:1.3em}.prose li{margin:.3em 0}
.prose figure{margin:1.6em 0}.prose figure img{width:100%;border-radius:16px;display:block}.prose figcaption{font-size:14px;color:var(--muted);margin-top:6px;text-align:center}
.prose hr.orn{border:0;text-align:center;margin:2em 0;height:14px;background:radial-gradient(circle,var(--orange) 3px,transparent 4px) 50% 50%/16px 14px no-repeat,linear-gradient(90deg,transparent,var(--line),transparent) 50% 50%/100% 2px no-repeat}
.rate-box{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:1.4em 0;padding:16px 18px;border-radius:16px;background:var(--lilac);font-size:16px}.rate-box .stars{font-size:24px}
.bk-inline{display:grid;grid-template-columns:70px 1fr;gap:6px 14px;align-items:center;margin:1.4em 0;padding:14px;border:2px solid var(--line);border-radius:18px;text-decoration:none;color:inherit;background:#fff}.bk-inline strong{display:block;font:400 19px 'Bree Serif',serif}.bk-inline .small{display:block}.bk-inline .go{grid-column:1/-1;justify-self:start;padding:8px 16px;border-radius:999px;background:var(--orange);color:var(--ink)}
.bk-cover .cv-author,.bk-cover .cv-band,.bk-cover .cv-title{display:none}.bk-cover .cover{padding:0}
.guest-note{margin:26px 0 0;padding-top:14px;border-top:1px solid var(--line)}
.comments{margin-top:36px;padding-top:24px;border-top:2px solid var(--line)}
.cm{display:flex;gap:12px;margin:16px 0}.cm p{margin:4px 0 0;line-height:1.55}.cm-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cm-h a{color:var(--ink);text-decoration:none}
.cform{margin-top:16px;display:grid;gap:10px}.cform-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.post-side{display:grid;gap:16px;align-content:start}
.rent-card{display:grid;gap:10px;padding:18px;border-radius:22px;border:2px solid var(--line);background:#fff}.rc-cover{width:110px;margin:0 auto 4px}.rc-tab{width:100%;border-collapse:collapse;font-size:14px}.rc-tab td{padding:7px 0;border-bottom:1px solid var(--line)}.rc-tab td:last-child{text-align:right;color:var(--muted)}
.rc-photo{width:100%;border-radius:14px;display:block}.rent-card.off{background:#FFF8F2;border-color:#F6D2B8}
.side-join{display:grid;gap:8px;padding:18px;border-radius:22px;background:var(--lilac)}

/* join, forms */
.joinpage{padding:34px 0 50px}
.tabs2{display:flex;gap:6px;margin:18px 0;padding:5px;border-radius:999px;background:var(--lilac)}.tabs2 a{flex:1;text-align:center;padding:12px 8px;border-radius:999px;text-decoration:none;font-weight:800;color:var(--soft)}.tabs2 a.on{background:var(--plum);color:#fff}
.rform .field{margin-bottom:18px}.cols2{display:grid;gap:0 14px}
.seg3{display:flex;gap:6px;flex-wrap:wrap}.seg3 label{flex:1 1 90px}.seg3 input{position:absolute;opacity:0}.seg3 span{display:flex;align-items:center;justify-content:center;min-height:48px;border:2px solid var(--line);border-radius:12px;font-weight:800;text-align:center;padding:0 8px;cursor:pointer}.seg3 input:checked+span{background:var(--plum);border-color:var(--plum);color:#fff}.seg3 input:focus-visible+span{outline:3px solid var(--purple);outline-offset:2px}
.chk{display:flex;align-items:flex-start;gap:10px;margin:10px 0;font-weight:600;font-size:15px}.chk input{width:22px;height:22px;margin-top:1px;accent-color:var(--plum);flex:none}
.tick-chip{cursor:pointer;gap:0}.tick-chip input{position:absolute;opacity:0}.tick-chip:has(input:checked){background:var(--plum);border-color:var(--plum);color:#fff}.tick-chip:has(input:focus-visible){outline:3px solid var(--purple);outline-offset:2px}
.sentbox{text-align:center;padding:30px 20px;border-radius:24px;background:var(--lilac);display:grid;gap:12px;justify-items:center}.tick{width:60px;height:60px;border-radius:50%;background:#A6C541;color:#2B1434;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:800;animation:pop .5s}
.starpick{display:inline-flex;flex-direction:row-reverse;gap:2px}.starpick input{position:absolute;opacity:0}.starpick label{cursor:pointer;color:#D8CBE3;line-height:0;padding:4px}.starpick svg{fill:currentColor}
.starpick input:checked~label,.starpick label:hover,.starpick label:hover~label{color:var(--orange)}.starpick input:focus-visible+label{outline:3px solid var(--purple);border-radius:8px}
.count{font-size:13px;color:var(--muted);text-align:right}.count.ok{color:#2F6A2B;font-weight:800}
.offshelf{padding:14px;border:2px dashed #E7C9AE;border-radius:16px;background:#FFF8F2;margin-bottom:18px}
.at{display:flex;align-items:center;border:2px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.at>span{padding:0 4px 0 14px;color:var(--muted);font-weight:800;white-space:nowrap}.at .input{border:0;border-radius:0;padding-left:4px}.at:focus-within{border-color:var(--purple)}
.hd-msg{font-size:14px;min-height:20px;color:var(--muted)}.hd-msg.ok{color:#2F6A2B;font-weight:800}.hd-msg.no{color:#A4223A;font-weight:700}

/* reader card */
.libcard{padding:20px;border-radius:22px;color:#fff;background:radial-gradient(500px 240px at 100% 0,rgba(242,107,33,.4),transparent 60%),linear-gradient(145deg,#4B2455,#2B1434);box-shadow:0 26px 40px -28px rgba(43,20,52,.8)}
.lc-top{display:flex;justify-content:space-between;align-items:center}.lc-no{font:500 14px 'IBM Plex Mono',monospace;letter-spacing:.1em;color:#FFD3B8}
.lc-main{display:flex;align-items:center;gap:16px;margin:16px 0 6px}.lc-lvl{color:#E8DAF1;font-weight:700}.lc-bio{margin:10px 0 0;color:#F1E7F8}.lc-foot{margin-top:14px;font-size:13px;color:#C9B3D8}.small-card{max-width:440px}

@media (min-width:760px){
  .bhero h1{font-size:56px}.bhero-in{grid-template-columns:1.1fr .9fr;align-items:center;padding-top:64px}.bhero-art{height:300px}.rb{width:96px}
  .pgrid{grid-template-columns:repeat(2,1fr)}.feat{grid-template-columns:1.1fr 1fr}.feat-art .pc-img{height:100%;aspect-ratio:auto;min-height:280px}.feat-body{padding:24px}
  .mood-card{grid-template-columns:150px 1fr;padding:24px;gap:28px}.mc-title{font-size:30px}
  .subband{grid-template-columns:1fr auto;padding:36px 40px}.cols2{grid-template-columns:1fr 1fr}
  .post-head h1{font-size:48px}
}
@media (min-width:1024px){.pgrid{grid-template-columns:repeat(3,1fr)}.post-grid{grid-template-columns:minmax(0,1fr) 320px;gap:48px}.post-side{position:sticky;top:90px}}
@media (prefers-reduced-motion:reduce){.pcard{transition:none}.tick{animation:none}}
.nav a,.hdr-actions .btn{white-space:nowrap}
