/*
Theme Name: Voces Africanas
Theme URI: https://vocesafricanas.com
Author: Damian
Description: Tema a medida para el blog de Simplicio Nsué Avoro. Portada tipo revista, lectura cuidada de artículos y promoción integrada de sus libros. Los libros, la biografía, el contacto y el color de cada categoría se editan desde el panel.
Version: 1.6.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: voces-africanas
*/


/* Layout: a magazine-style blog. Masthead like the night sky over the baobab,
   a lead story with "Lo último" beside it, then the article feed with a sidebar that sells the books
   quietly (author, books, newsletter, topics). Articles open as full reading pages. */
:root{
  --bg:#FAFAF8; --surface:#FFFFFF; --ink:#141312; --muted:#5E5A55; --line:rgba(20,19,18,.12);
  --accent:#8A6318; --accent-ink:#FFFFFF;
  --c1:#9E3B3B; --c2:#8A6318; --c3:#5B4A8A; --c4:#3E6B4F; --c5:#3F5F82; --c6:#2F6E78;
  --band:#141312; --band-fg:#F5F2EC; --band-muted:#A8A39B; --gold:#D4A24C;
  --logo-filter:none;
  --shadow:0 14px 30px rgba(20,19,18,.16);
  --display:"Bodoni Moda", "Didot", "Bodoni 72", "Georgia", serif;
  --label:"Marcellus", "Trajan Pro", "Optima", "Georgia", serif;
  --body:"Source Serif 4", "Georgia", "Times New Roman", serif;
  --ui:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
  --wrap:1180px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0F0F0E; --surface:#1A1918; --ink:#F2EFE9; --muted:#A7A29A; --line:rgba(242,239,233,.13);
    --accent:#D4A24C; --accent-ink:#141312;
    --c1:#E08A8A; --c2:#D9AE5E; --c3:#AFA0E0; --c4:#86C29C; --c5:#8FB0D8; --c6:#7CC0C8;
    --band:#1C1B19; --band-fg:#F5F2EC; --band-muted:#A8A39B; --gold:#D4A24C;
    --logo-filter:invert(1);
    --shadow:0 14px 30px rgba(0,0,0,.5);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#0F0F0E; --surface:#1A1918; --ink:#F2EFE9; --muted:#A7A29A; --line:rgba(242,239,233,.13);
  --accent:#D4A24C; --accent-ink:#141312;
  --c1:#E08A8A; --c2:#D9AE5E; --c3:#AFA0E0; --c4:#86C29C; --c5:#8FB0D8; --c6:#7CC0C8;
  --band:#1C1B19; --band-fg:#F5F2EC; --band-muted:#A8A39B; --gold:#D4A24C;
  --logo-filter:invert(1);
  --shadow:0 14px 30px rgba(0,0,0,.5);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:1.0625rem;line-height:1.65}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(16px,4vw,32px)}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;line-height:1.15;overflow-wrap:break-word;hyphens:auto;text-wrap:balance;margin:0}
.kicker{font-family:var(--label);font-size:.72rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--k,var(--accent));margin:0}
.meta{font-family:var(--ui);font-size:.8rem;color:var(--muted);display:flex;gap:6px 12px;flex-wrap:wrap;align-items:center}
.meta span+span::before{content:"·";margin-right:12px;opacity:.6}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-family:var(--ui);font-weight:700;font-size:.9rem;text-decoration:none;border-radius:999px;padding:.72em 1.25em;border:1.5px solid transparent;cursor:pointer;transition:transform .15s ease,border-color .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn-buy{background:var(--gold);color:#1A1407}
.btn-accent{background:var(--ink);color:var(--bg)}
.btn-line{border-color:var(--line);background:transparent}
.btn-line:hover{border-color:var(--accent)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Masthead */
.mast{background:var(--bg);color:var(--ink)}
.mast .wrap{display:flex;flex-direction:column;align-items:center;gap:16px;padding-block:12px 26px}
.mast .top{width:100%;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-family:var(--ui);font-size:.76rem;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:10px}
.mast .top a{text-decoration:none;color:var(--muted)} .mast .top a:hover{color:var(--ink)}
.social{display:flex;gap:14px}
.logo{display:block;margin-top:10px}
.logo img{width:clamp(200px,24vw,290px);height:auto;filter:var(--logo-filter)}
.mast .tag{margin:0;font-family:var(--label);font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);text-align:center}
.stripe{height:5px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.navbar .mono{flex:none;display:block}
.navbar .mono img{height:26px;width:auto;filter:var(--logo-filter)}
.navbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.navbar .wrap{display:flex;align-items:center;gap:16px;padding-block:10px}
.navbar ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}
.navbar ul::-webkit-scrollbar{display:none}
.navbar a,.navbar button.cat{font-family:var(--label);font-weight:400;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--muted);white-space:nowrap;padding:.45em .55em;border-radius:999px;border:0;background:none;cursor:pointer}
.navbar a:hover,.navbar button.cat:hover{color:var(--ink);background:var(--surface)}
.navbar .books-link{color:var(--ink)}
.navbar button.cat i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--k);margin-right:7px;vertical-align:1px}
.search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:.35em .9em;background:var(--surface);flex:0 1 220px;min-width:0}

.search input{border:0;background:transparent;font-family:var(--ui);font-size:.88rem;color:var(--ink);width:100%;min-width:0;outline:none}
.search svg{flex:none;opacity:.6}


/* Lead */
.lead{padding-block:clamp(28px,4vw,48px)}
.lead .wrap{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:clamp(24px,3.5vw,44px)}
.feature{position:relative;display:block;width:100%;text-align:left;background:none;border:0;padding:0;cursor:pointer;border-radius:8px;overflow:hidden}
.feature .pic{aspect-ratio:4/3;width:100%;max-width:100%}
.feature .pic img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.feature:hover .pic img{transform:scale(1.03)}
.feature .txt{position:absolute;inset:auto 0 0 0;padding:clamp(20px,3.5vw,40px);display:grid;gap:12px;background:linear-gradient(to top,rgba(12,11,10,.94) 0%,rgba(12,11,10,.72) 58%,rgba(12,11,10,0) 100%)}
.feature .kicker{color:#fff;border-left:3px solid var(--k);padding-left:10px}
.feature h2{font-size:clamp(2rem,4.4vw,3.5rem);color:#fff;max-width:18ch}
.feature p.dek{margin:0;color:rgba(255,255,255,.84);font-size:1.1rem;max-width:54ch}
.feature .meta{color:rgba(255,255,255,.72)}
@media (max-width:640px){.feature{border-radius:6px}.feature .txt{position:static;background:none;padding:16px 0 0}.feature .kicker{color:var(--k)}.feature h2{color:var(--ink)}.feature p.dek{color:var(--muted)}.feature .meta{color:var(--muted)}}
.latest h3.lbl{font-family:var(--label);font-size:.78rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;padding-bottom:10px;border-bottom:2px solid var(--ink);margin-bottom:6px}
.latest ol{list-style:none;margin:0;padding:0}
.latest li{border-bottom:1px solid var(--line)}
.mini{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:14px;padding:14px 0;width:100%;text-align:left;background:none;border:0;cursor:pointer}
.mini h4{font-size:1.18rem;margin-top:4px}
.mini:hover h4{color:var(--accent)}
.mini img{width:96px;height:72px;object-fit:cover;border-radius:4px}
@media (max-width:900px){.lead .wrap{grid-template-columns:1fr}}

/* Themes */
.themes{padding-block:0 clamp(32px,4vw,48px)}
.themes .hd{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:2px solid var(--ink);padding-bottom:10px;margin-bottom:16px}
.themes .hd h2{font-family:var(--label);font-size:.78rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase}
.themes .row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.theme{position:relative;border-radius:6px;overflow:hidden;aspect-ratio:4/5;border:0;padding:0;cursor:pointer;text-align:left;color:#fff;background:var(--band)}
.theme img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.theme:hover img{transform:scale(1.06)}
.theme::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--k);z-index:1}
.theme span{position:absolute;inset:auto 0 0 0;padding:14px 12px 12px;background:linear-gradient(to top,rgba(12,11,10,.92),rgba(12,11,10,0));font-family:var(--ui);font-weight:700;font-size:.92rem;line-height:1.2;display:flex;flex-direction:column;gap:3px}
.theme small{font-weight:500;opacity:.8;font-size:.75rem}
@media (max-width:900px){.themes .row{grid-template-columns:repeat(3,minmax(0,1fr))}.theme{aspect-ratio:16/11}}
@media (max-width:520px){.themes .row{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Quote band */
.qband{padding-block:clamp(56px,9vw,110px);border-top:1px solid var(--line)}
.qband .wrap{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(16px,3vw,36px);align-items:start}
.qband .mark{font-family:var(--display);font-size:clamp(5rem,12vw,9rem);line-height:.7;color:var(--accent)}
.qband blockquote{margin:0;font-family:var(--display);font-size:clamp(1.8rem,4.2vw,3.2rem);line-height:1.18;max-width:24ch;text-wrap:balance}
.qband p{margin:18px 0 0;font-family:var(--ui);font-size:.88rem;color:var(--muted)}
.qband a{color:var(--accent);font-weight:700;text-decoration:none;margin-left:8px}

/* Main + sidebar */
.main{padding-block:clamp(24px,4vw,48px) clamp(48px,7vw,88px);border-top:1px solid var(--line)}
.main .wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(28px,4vw,56px);align-items:start}
@media (max-width:980px){.main .wrap{grid-template-columns:1fr}}
.feedhead{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.feedhead .chips{flex-basis:100%}
.feedhead h2{font-size:clamp(1.8rem,3.4vw,2.4rem)}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{font-family:var(--ui);font-weight:600;font-size:.8rem;padding:.42em .9em;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.feed{display:flex;flex-direction:column}
.card{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:clamp(16px,2.6vw,28px);padding:clamp(18px,2.6vw,26px) 0;border-bottom:1px solid var(--line);text-align:left;background:none;border-left:0;border-right:0;border-top:0;cursor:pointer;width:100%}
.card .pic{aspect-ratio:16/10;overflow:hidden;border-radius:5px;max-width:100%}
.card .pic img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.card:hover .pic img{transform:scale(1.04)}
.card .txt{display:flex;flex-direction:column;gap:8px;min-width:0}
.card h3{font-size:clamp(1.35rem,2.3vw,1.7rem)}
.card:hover h3{color:var(--accent)}
.card p{margin:0;color:var(--muted)}
@media (max-width:560px){.card{grid-template-columns:1fr}}
.empty{padding:40px 0;color:var(--muted);font-family:var(--ui)}
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,32px);border-bottom:1px solid var(--line);padding-bottom:6px}
.duo .card{grid-template-columns:1fr;border-bottom:0;padding-top:0}
.duo .card h3{font-size:clamp(1.45rem,2.4vw,1.85rem)}
@media (max-width:560px){.duo{grid-template-columns:1fr}}

/* Promo band inside feed */
.promo{border-top:3px solid var(--gold);display:grid;grid-template-columns:120px minmax(0,1fr);gap:22px;align-items:center;margin:26px 0;padding:22px;border-radius:8px;background:var(--band);color:var(--band-fg)}
.promo img{width:120px;border-radius:3px;box-shadow:0 10px 24px rgba(0,0,0,.4)}
.promo .kicker{color:var(--gold)}
.promo h3{font-size:1.6rem;margin:6px 0 6px}
.promo p{margin:0 0 14px;color:var(--band-muted);font-size:.98rem}
@media (max-width:520px){.promo{grid-template-columns:1fr}.promo img{width:110px}}

/* Sidebar */
aside{display:flex;flex-direction:column;gap:28px;position:sticky;top:calc(env(safe-area-inset-top,0px) + 76px)}
@media (max-width:980px){aside{position:static}}
.box h3.lbl{font-family:var(--label);font-size:.74rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;padding-bottom:10px;border-bottom:2px solid var(--ink);margin-bottom:14px}
.me{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;align-items:center}
.me img{width:76px;height:76px;border-radius:50%;object-fit:cover}
.me b{font-family:var(--display);font-weight:400;font-size:1.25rem;display:block}
.me p{margin:2px 0 0;font-size:.92rem;color:var(--muted)}
.box .more{font-family:var(--ui);font-weight:700;font-size:.85rem;color:var(--accent);text-decoration:none;display:inline-block;margin-top:12px}
.shelf{display:flex;flex-direction:column;gap:14px}
.shelf a{display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center;text-decoration:none}
.shelf img{width:54px;border-radius:2px;box-shadow:0 4px 10px rgba(0,0,0,.25)}
.shelf b{font-family:var(--display);font-weight:400;font-size:1.05rem;display:block;line-height:1.2}
.shelf span{font-family:var(--ui);font-size:.75rem;color:var(--muted)}
.shelf a:hover b{color:var(--accent)}
.news{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:20px}
.news h3{font-size:1.4rem}
.news p{margin:6px 0 12px;font-size:.93rem;color:var(--muted)}
.news form{display:flex;flex-direction:column;gap:8px}
.news input{font-family:var(--ui);font-size:.92rem;padding:.7em .9em;border-radius:6px;border:1px solid var(--line);background:var(--bg);color:var(--ink)}
.news .ok{font-family:var(--ui);font-size:.82rem;color:var(--muted);margin:8px 0 0}
.topics{display:flex;flex-direction:column}
.topics button{display:flex;justify-content:space-between;padding:.55em 0;border:0;border-bottom:1px solid var(--line);background:none;cursor:pointer;font-family:var(--ui);font-weight:600;font-size:.9rem;text-align:left}
.topics button:hover{color:var(--accent)}
.topics span{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:500}
.popular{list-style:none;margin:0;padding:0;counter-reset:p}
.popular li{counter-increment:p}
.popular button{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;padding:.6em 0;border:0;border-bottom:1px solid var(--line);background:none;width:100%;text-align:left;cursor:pointer;font-family:var(--display);font-size:1.02rem;line-height:1.25}
.popular button::before{content:counter(p);font-family:var(--display);color:var(--accent);font-size:1.3rem;line-height:1}
.popular button:hover{color:var(--accent)}

/* Books */
.books{background:var(--band);color:var(--band-fg);padding-block:clamp(56px,8vw,96px)}
.books .head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:36px}
.books .kicker{color:var(--gold)}
.books h2{font-size:clamp(2rem,4vw,3rem);margin-top:8px}
.books .head p{max-width:44ch;margin:0;color:var(--band-muted)}
.bookgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,5vw,56px) clamp(24px,4vw,48px)}
.book{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr);column-gap:24px;row-gap:10px;align-content:start}
.book .cv{position:relative;grid-row:1/9;max-width:100%;perspective:900px}
.book .cv img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:2px 4px 4px 2px;box-shadow:-6px 0 0 -2px rgba(0,0,0,.25) inset,0 22px 40px rgba(0,0,0,.5);transform:rotateY(-10deg);transform-origin:left center;transition:transform .5s ease}
.book:hover .cv img{transform:rotateY(0)}
.book .tag{position:absolute;top:10px;left:-8px;z-index:1;background:var(--gold);color:#1A1407;font-family:var(--ui);font-weight:700;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;padding:.35em .65em;border-radius:3px}
.book .tag.out{background:#D6593D;color:#fff}
.book h3{font-size:1.55rem}
.book .sub{margin:0;font-style:italic;color:var(--band-muted);font-size:.98rem}
.book p.syn{margin:0;color:var(--band-muted);font-size:.95rem}
.book .facts{font-family:var(--ui);font-size:.76rem;color:var(--band-muted);margin:0;padding-top:10px;border-top:1px solid rgba(243,234,219,.14)}
.book .row{display:flex;gap:8px;flex-wrap:wrap;padding-top:6px}
.book .btn-line{border-color:rgba(243,234,219,.25);color:var(--band-fg)}
.book.lead-book{grid-column:1/-1;grid-template-columns:minmax(0,300px) minmax(0,1fr);column-gap:clamp(28px,6vw,80px);row-gap:14px;padding-bottom:clamp(36px,5vw,56px);border-bottom:1px solid rgba(243,234,219,.14);align-items:start}
.book.lead-book h3{font-size:clamp(2.2rem,4.6vw,3.6rem)}
.book.lead-book .sub{font-size:1.2rem}
.book.lead-book p.syn{font-size:1.08rem;max-width:56ch;color:var(--band-fg);opacity:.86}
.book.lead-book .tag{font-size:.74rem}
.fmts{display:flex;gap:8px;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.fmts li{font-family:var(--ui);font-size:.8rem;font-weight:600;border:1px solid rgba(243,234,219,.22);border-radius:999px;padding:.35em .85em}
@media (max-width:860px){.bookgrid{grid-template-columns:1fr}.book.lead-book{grid-template-columns:minmax(0,200px) minmax(0,1fr)}}
@media (max-width:560px){.book,.book.lead-book{grid-template-columns:1fr}.book .cv{grid-row:auto;max-width:170px}.book.lead-book .cv{max-width:220px}}

/* About */
.about{padding-block:clamp(56px,8vw,96px)}
.about .wrap{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}
.about img.pt{width:100%;max-width:340px;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;border-radius:6px}
.about h2{font-size:clamp(2rem,4vw,3rem);margin-top:8px}
.about .bio p{max-width:62ch;margin:16px 0 0}
.facts3{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.facts3 li{border-top:2px solid var(--accent);padding-top:10px;font-family:var(--ui);font-size:.85rem;color:var(--muted)}
.facts3 b{display:block;font-family:var(--display);font-weight:400;font-size:1.7rem;color:var(--ink);font-variant-numeric:tabular-nums}
.contact{display:flex;gap:12px 20px;flex-wrap:wrap;align-items:center;margin-top:28px;font-family:var(--ui);font-size:.92rem}
.contact .mail{font-weight:600;user-select:all;padding:.6em .9em;border:1px solid var(--line);border-radius:6px;background:var(--surface)}
@media (max-width:760px){.about .wrap{grid-template-columns:1fr}.about img.pt{max-width:260px}.facts3{grid-template-columns:1fr}}

footer{border-top:1px solid var(--line);padding-block:30px;font-family:var(--ui);font-size:.82rem;color:var(--muted)}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
footer a{text-decoration:none} footer a:hover{color:var(--ink)}

/* Reader */
.progress{position:fixed;left:0;top:0;height:3px;background:var(--accent);width:0;z-index:100}
.rhead{max-width:760px;margin-inline:auto;padding:clamp(28px,5vw,56px) clamp(16px,4vw,32px) 0}
.rhead h1{font-size:clamp(2.2rem,5.4vw,3.6rem);margin-top:12px}
.rhead .dek{font-size:clamp(1.12rem,2vw,1.3rem);color:var(--muted);margin:16px 0 0}
.byline{display:flex;gap:12px;align-items:center;margin-top:22px}
.byline img{width:44px;height:44px;border-radius:50%;object-fit:cover}
.byline b{font-family:var(--ui);font-size:.9rem;display:block}
.rhero{max-width:1040px;margin:clamp(24px,4vw,40px) auto 0;padding-inline:clamp(16px,4vw,32px)}
.rhero img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:6px}
.rhero figcaption{font-family:var(--ui);font-size:.75rem;color:var(--muted);margin-top:8px}
.rbody{max-width:680px;margin-inline:auto;padding:clamp(24px,4vw,40px) clamp(16px,4vw,32px) 0;font-size:1.14rem;line-height:1.75}
.rbody p{margin:0 0 1.2em}
.rbody::after{content:"";display:block;width:44px;height:3px;background:var(--accent);margin:2.2em auto .6em}
.rbody>p:first-child::first-letter{font-family:var(--display);float:left;font-size:3.9em;line-height:.82;padding:.06em .12em 0 0;color:var(--accent)}
.rbody blockquote{margin:1.6em 0;padding:0 0 0 20px;border-left:3px solid var(--accent);font-family:var(--display);font-size:1.55rem;line-height:1.3}
.inbook{display:grid;grid-template-columns:84px minmax(0,1fr);gap:18px;align-items:center;margin:1.8em 0;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:1rem;line-height:1.5}
.inbook img{width:84px;border-radius:3px;box-shadow:0 6px 16px rgba(0,0,0,.25)}
.inbook b{font-family:var(--display);font-weight:400;font-size:1.3rem;display:block;margin:4px 0}
.inbook p{margin:0 0 10px;color:var(--muted);font-size:.93rem}
.rfoot{max-width:680px;margin-inline:auto;padding:10px clamp(16px,4vw,32px) 0}
.share{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:18px 0;border-block:1px solid var(--line);font-family:var(--ui);font-size:.85rem}
.authorbox{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;margin:28px 0;align-items:start}
.authorbox img{width:72px;height:72px;border-radius:50%;object-fit:cover}
.authorbox b{font-family:var(--display);font-weight:400;font-size:1.3rem}
.authorbox p{margin:4px 0 0;color:var(--muted);font-size:.95rem}
.related{max-width:1040px;margin-inline:auto;padding:24px clamp(16px,4vw,32px) 80px}
.related h3.lbl{font-family:var(--label);font-size:.76rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;padding-bottom:10px;border-bottom:2px solid var(--ink);margin-bottom:18px}
.relgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.relgrid a{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit}
.relgrid img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:5px}
.relgrid h4{font-size:1.2rem}
.relgrid a:hover h4{color:var(--accent)}
@media (max-width:720px){.relgrid{grid-template-columns:1fr}}

/* ---------- WordPress ---------- */
.card,.feature,.mini,.theme,.popular a,.topics a,.chip,.shelf a{text-decoration:none;color:inherit}
.card{border-left:0;border-right:0;border-top:0}
a.chip[aria-current="page"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.popular a{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;padding:.6em 0;border-bottom:1px solid var(--line);font-family:var(--display);font-size:1.02rem;line-height:1.25}
.popular a::before{content:counter(p);font-family:var(--display);color:var(--accent);font-size:1.3rem;line-height:1}
.popular a:hover{color:var(--accent)}
.topics a{display:flex;justify-content:space-between;padding:.55em 0;border-bottom:1px solid var(--line);font-family:var(--ui);font-weight:600;font-size:.9rem}
.topics a:hover{color:var(--accent)}
.topics em{display:flex;align-items:center;gap:8px;font-style:normal}
.topics i{width:8px;height:8px;border-radius:50%;background:var(--k)}
.navbar ul a i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--k);margin-right:7px;vertical-align:1px}
.navbar ul li.current-menu-item>a,.navbar ul li.current-cat>a{color:var(--ink)}
.admin-bar .navbar{top:32px}
@media (max-width:782px){.admin-bar .navbar{top:46px}}
@media (max-width:600px){.admin-bar .navbar{top:0}}
.admin-bar .progress{top:32px}
.news .embed{font-family:var(--ui);font-size:.9rem}
.news .embed input[type=email],.news .embed input[type=text]{width:100%}
.search button{border:0;background:none;padding:0;cursor:pointer;color:var(--muted);display:flex}
.archive-head{padding-block:clamp(32px,5vw,56px) 8px}
.archive-head h1{font-size:clamp(2.2rem,5vw,3.6rem);margin-top:10px}
.archive-head p{max-width:60ch;color:var(--muted);margin:12px 0 0}
.pagination{display:flex;gap:6px;flex-wrap:wrap;padding-top:28px;font-family:var(--ui);font-size:.9rem}
.pagination .page-numbers{padding:.5em .9em;border:1px solid var(--line);border-radius:999px;text-decoration:none}
.pagination .current{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.pagination a:hover{border-color:var(--accent)}
.rbody a{color:var(--accent);text-underline-offset:3px}
.rbody h2{font-size:1.9rem;margin:1.6em 0 .6em}
.rbody h3{font-size:1.5rem;margin:1.4em 0 .5em}
.rbody h4{font-size:1.25rem;margin:1.2em 0 .5em}
.rbody ul,.rbody ol{margin:0 0 1.2em;padding-left:1.3em}
.rbody li{margin-bottom:.4em}
.rbody img{border-radius:4px}
.rbody figure{margin:1.8em 0}
.rbody figcaption,.wp-caption-text,.wp-element-caption{font-family:var(--ui);font-size:.78rem;color:var(--muted);margin-top:8px}
.rbody .alignwide{margin-inline:calc(-1 * min(8vw,120px))}
.rbody .alignfull{margin-inline:calc(50% - 50vw);max-width:100vw}
.rbody .wp-block-pullquote{border-block:2px solid var(--ink);padding:1.2em 0;text-align:left}
.rbody .wp-block-pullquote blockquote{border:0;padding:0}
.rbody cite{display:block;font-family:var(--ui);font-size:.8rem;color:var(--muted);font-style:normal;margin-top:.6em}
.rbody pre{overflow-x:auto;background:var(--surface);padding:1em;border-radius:6px;font-size:.9rem}
.rbody table{border-collapse:collapse;width:100%;font-family:var(--ui);font-size:.92rem}
.rbody .wp-block-table{overflow-x:auto}
.rbody td,.rbody th{border-bottom:1px solid var(--line);padding:.5em .6em;text-align:left}
.rbody iframe,.rbody video,.rbody embed{max-width:100%}
.rbody .wp-block-embed__wrapper{position:relative}
.alignleft{float:left;margin:.3em 1.4em 1em 0}
.alignright{float:right;margin:.3em 0 1em 1.4em}
.aligncenter{display:block;margin-inline:auto}
.wp-caption{max-width:100%}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.screen-reader-text:focus{clip:auto;width:auto;height:auto;z-index:1000;background:var(--surface);padding:10px 14px;top:8px;left:8px}
.sticky,.bypostauthor,.gallery-caption{}
.tags{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 18px;font-family:var(--ui);font-size:.8rem}
.tags a{padding:.3em .8em;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--muted)}
.tags a:hover{color:var(--ink);border-color:var(--ink)}
.comments{max-width:680px;margin-inline:auto;padding:10px clamp(16px,4vw,32px) 0;font-family:var(--ui);font-size:.95rem}
.comments h2{font-size:1.6rem;margin:1.2em 0 .6em}
.comments ol{list-style:none;padding:0;margin:0}
.comments ol ol{padding-left:24px}
.comments .comment-body{padding:16px 0;border-bottom:1px solid var(--line)}
.comments .comment-meta{font-size:.8rem;color:var(--muted);margin-bottom:6px}
.comments .comment-author img{border-radius:50%;float:left;margin-right:10px}
.comments .reply a{font-weight:700;font-size:.8rem;color:var(--accent)}
.comments textarea,.comments input[type=text],.comments input[type=email],.comments input[type=url]{width:100%;font:inherit;padding:.7em .9em;border-radius:6px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}
.comments .form-submit input{font-family:var(--ui);font-weight:700;background:var(--ink);color:var(--bg);border:0;border-radius:999px;padding:.8em 1.4em;cursor:pointer}
.page-simple{max-width:760px;margin-inline:auto;padding:clamp(32px,5vw,64px) clamp(16px,4vw,32px) 80px}
.page-simple h1{font-size:clamp(2.2rem,5vw,3.4rem);margin-bottom:24px}
.page-simple .rbody{padding:0}
.page-simple .rbody::after,.page-simple .rbody>p:first-child::first-letter{display:none}
.nf{text-align:center;padding-block:clamp(64px,10vw,120px)}
.nf h1{font-size:clamp(2.4rem,6vw,4rem)}
.nf p{color:var(--muted)}
.nf .search{margin:24px auto 0;max-width:340px}
.logo-wrap{font-size:inherit;line-height:1}
.custom-logo-link{display:block;margin-top:10px}
.custom-logo-link img{width:clamp(200px,24vw,290px);height:auto;filter:var(--logo-filter)}
.foot-menu{list-style:none;display:flex;flex-wrap:wrap;gap:14px;margin:0;padding:0}
.navbar nav{align-items:center}
.feedhead .search{margin-left:auto}
.archive-head .muted p{margin:10px 0 0;max-width:60ch}
.contact a.mail{text-decoration:none}
.inbook .btn+.btn,.promo .btn+.btn{margin-left:8px}
.promo .btn-line{border-color:rgba(245,242,236,.3);color:var(--band-fg)}

/* v1.1 — ajustes con contenido real */
.feature.long h2{font-size:clamp(1.7rem,3.1vw,2.5rem);max-width:24ch}
.feature.long p.dek{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.feature .txt{padding-top:clamp(60px,10vw,120px)}
.card h3,.mini h4,.relgrid h4,.popular a{overflow-wrap:break-word}
.card h3{font-size:clamp(1.3rem,2.1vw,1.6rem)}
.duo .card h3{font-size:clamp(1.35rem,2.2vw,1.7rem)}
.card p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mini h4{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.rhead h1{font-size:clamp(2rem,4.6vw,3.2rem)}
.theme span{color:#fff;font-size:.95rem;text-shadow:0 1px 8px rgba(0,0,0,.5)}

/* v1.2 — cabecera compacta */
.navbar{border-top:0}
.navbar .wrap{padding-block:12px;gap:22px}
.navbar .mono{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);flex:none}
.navbar .mono img{height:34px}
.navbar .wm{font-family:var(--label);font-size:.82rem;letter-spacing:.26em;text-transform:uppercase;white-space:nowrap;padding-right:18px;border-right:1px solid var(--line)}
@media (max-width:1360px){.navbar .wm{display:none}}

/* v1.3 — línea superior */
.topbar{background:var(--bg);border-bottom:1px solid var(--line)}
.topbar .top{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;padding-block:8px;font-family:var(--ui);font-size:.78rem;color:var(--muted)}
.topbar .top::first-letter{text-transform:uppercase}
.topbar a{color:var(--muted);text-decoration:none}
.topbar a:hover{color:var(--ink)}
.topbar .social{display:flex;gap:16px}

/* v1.3.1 — barra de temas: solo desplazamiento horizontal en móvil */
.navbar ul{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;touch-action:pan-x;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;align-items:center}
.navbar ul li{flex:none;line-height:1.6}
.navbar nav{overflow:hidden}

/* v1.3.2 — buscador a ancho completo en móvil */
@media (max-width:640px){
  .feedhead .search{flex:1 1 100%;max-width:none;margin-left:0;padding:.6em 1em}
  .feedhead .search input{font-size:1rem}
}

/* v1.4 — próximos libros */
.upcoming{margin-top:clamp(40px,6vw,64px);padding-top:clamp(32px,5vw,48px);border-top:1px solid rgba(245,242,236,.14);display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:clamp(20px,4vw,56px);align-items:start}
.upcoming .up-head h3{font-size:clamp(1.8rem,3.4vw,2.4rem);margin-top:8px}
.upcoming .up-head p:not(.kicker){margin:10px 0 0;color:var(--band-muted);font-family:var(--ui);font-size:.88rem}
.up-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.up-list li{display:grid;grid-template-columns:10px minmax(0,1fr);gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid rgba(245,242,236,.14)}
.up-list li:first-child{padding-top:0}
.up-spine{width:10px;align-self:stretch;min-height:44px;border-radius:2px;background:linear-gradient(var(--gold),#8a6318)}
.up-list b{display:block;font-family:var(--display);font-weight:400;font-size:clamp(1.25rem,2.2vw,1.55rem);line-height:1.25;color:var(--band-fg)}
.up-note{display:block;margin-top:4px;font-family:var(--ui);font-size:.82rem;color:var(--band-muted)}
.up-tag{font-family:var(--label);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(212,162,76,.45);border-radius:999px;padding:.4em .8em;white-space:nowrap}
@media (max-width:760px){.upcoming{grid-template-columns:1fr}}

/* v1.6 — compra directa al autor */
.buydirect{margin-top:clamp(40px,6vw,64px);padding:clamp(22px,3.5vw,36px);border:1px solid rgba(212,162,76,.45);border-radius:8px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 40px;align-items:center}
.buydirect h3{font-size:clamp(1.6rem,3vw,2.2rem);margin-top:8px}
.buydirect p:not(.kicker){margin:8px 0 0;color:var(--band-muted);max-width:52ch}
.buy-actions{display:flex;flex-direction:column;gap:10px;align-items:stretch}
.buy-actions .btn{justify-content:center}
.buydirect .btn-line{border-color:rgba(245,242,236,.3);color:var(--band-fg)}
@media (max-width:760px){.buydirect{grid-template-columns:1fr}}
.contact .mail+.mail{margin-left:0}
