.njb{max-width:1100px;margin:0 auto;padding:32px 22px;color:#18251f;font-family:Arial,sans-serif}
.njb *{box-sizing:border-box}
.njb-title{margin:0 0 30px!important;font-size:0!important;line-height:0!important}
.njb-title img{display:block;width:100%;max-width:900px;height:auto}
.njb-notice{padding:16px 20px;background:#f3ead9;border-left:3px solid #a27a3f}
.njb-accounts{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.njb-accounts section{padding:24px;border:1px solid #ded5c7;border-radius:10px;background:#faf7f0}
.njb label{display:block;margin:16px 0;line-height:1.5}
.njb input:not([type=checkbox]){display:block;width:100%;padding:12px;border:1px solid #9dafa3;border-radius:4px}
.njb button,.njb input[type=submit]{border:0;border-radius:5px;background:#193b2e;color:#fff;padding:12px 17px;font:600 14px/1.3 Arial,sans-serif;cursor:pointer}
.njb button:focus-visible,.njb a:focus-visible,.njb select:focus-visible,.njb input:focus-visible{outline:3px solid #bb8b35;outline-offset:3px}
.njb button:disabled{opacity:.5;cursor:default}
.njb-book{display:grid;grid-template-columns:220px 1fr;gap:32px;align-items:start;padding:24px 0}
.njb-book>img{width:100%;height:auto;box-shadow:6px 9px 20px #0003}
.njb-book h2{font:32px/1.2 Georgia,serif}
.njb-loan{padding:20px 0}
.njb .njb-honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.njb-reader{--njb-font:20px;--njb-line:1.85;--njb-bg:#fffaf0;--njb-ink:#242923;--njb-ui:#ede6d6;background:var(--njb-bg);color:var(--njb-ink);border:1px solid #bcb5a6;border-radius:10px;padding:20px;min-height:500px}
.njb-reader[data-theme=dark]{--njb-bg:#181e1b;--njb-ink:#e8e7df;--njb-ui:#2b352f;border-color:#526357}
.njb-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:var(--njb-ui);padding:14px;border-radius:7px}
.njb-toolbar label{margin:0;flex:1;min-width:180px;color:var(--njb-ink)}
.njb-toolbar select{display:block;width:100%;padding:10px;background:var(--njb-bg);color:var(--njb-ink);border:1px solid #8d9c91;max-width:100%;border-radius:4px}
.njb-reader button{background:#214d39;color:#fff}
#njb-status{font:14px/1.5 Arial,sans-serif;color:var(--njb-ink)}
#njb-text{max-width:740px;margin:40px auto;overflow-wrap:break-word;word-break:normal;font:var(--njb-font)/var(--njb-line) Georgia,serif;outline:none;color:var(--njb-ink)}
#njb-text *{color:inherit!important;background:transparent!important;font-family:inherit!important;hyphens:none!important;-webkit-hyphens:none!important;word-break:normal!important;overflow-wrap:break-word!important}
#njb-text p{font-size:inherit!important;line-height:inherit!important;text-align:left!important;margin:0 0 1.15em!important}
#njb-text h1,#njb-text h2,#njb-text h3{line-height:1.3!important;color:var(--njb-ink)!important;margin:1.5em 0 .8em!important}
#njb-text img{display:block;max-width:100%;max-height:75vh;width:auto;height:auto;margin:20px auto}
#njb-text a{color:inherit!important;text-decoration:underline!important}
.njb-navigation{display:flex;justify-content:space-between;align-items:center;gap:12px}
.njb-genres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0}
.njb-genre{display:flex;min-height:150px;flex-direction:column;justify-content:center;gap:14px;padding:28px;border-radius:10px;background:var(--genre-color);color:#fff!important;text-decoration:none!important;box-shadow:0 7px 18px #0002;transition:transform .15s ease}
.njb-genre:hover{transform:translateY(-3px)}
.njb-genre strong{font:26px/1.2 Georgia,serif;color:inherit}
.njb-genre span{font:14px/1.3 Arial,sans-serif;color:inherit}
.njb-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin:28px 0}
.njb-cover{display:flex;flex-direction:column;gap:10px;color:#193b2e!important;text-decoration:none!important}
.njb-cover img{height:260px;width:100%;object-fit:contain;object-position:center bottom}
.njb-cover strong{font:21px/1.2 Georgia,serif}.njb-cover span{font:14px/1.4 Arial,sans-serif}
.njb-purchase{padding:20px;background:#f1eadb;border:1px solid #d2c5ad;border-radius:8px;margin:20px 0}
.njb-buy{display:inline-block;padding:12px 18px;background:#214d39;color:white!important;border-radius:5px;text-decoration:none!important}
.njb-reader dialog{max-width:480px;padding:28px;border:1px solid #b9ae96;border-radius:12px;background:var(--njb-bg);color:var(--njb-ink)}
.njb-reader dialog::backdrop{background:#0009}.njb-reader dialog button{margin:10px 8px 0 0}
.njb-reader [hidden]{display:none!important}
@media(max-width:760px){.njb-genres{gap:12px}.njb-genre{min-height:130px;padding:18px}.njb-genre strong{font-size:22px}.njb-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.njb-genres{grid-template-columns:1fr}.njb-genre{min-height:105px}.njb-navigation{flex-wrap:wrap}}
.njb-reader:fullscreen{overflow:auto;width:100%;height:100%;border:0;border-radius:0;padding:24px}
@media(max-width:680px){.njb{padding:20px 14px}.njb-accounts{grid-template-columns:1fr;gap:20px}.njb-book{grid-template-columns:110px 1fr;gap:18px}.njb-book h2{font-size:24px}.njb-reader{padding:12px}.njb-toolbar{padding:10px}#njb-text{margin:28px auto}}

/* Biblioteca 0.3 — carnet, diez géneros y baldas */
.njb{max-width:1240px}
.njb-title img{margin:auto}
.njb-eyebrow{display:block;font:700 11px/1.4 Arial,sans-serif;letter-spacing:.16em;color:#876b42;text-transform:uppercase}
.njb-welcome{max-width:760px;margin:10px auto 36px;text-align:center}
.njb-welcome h2,.njb-section-intro h2{font:36px/1.15 Georgia,serif;margin:12px 0}
.njb-welcome p{line-height:1.75}
.njb-breadcrumb{display:flex;gap:12px;align-items:center;font-size:14px;margin:14px 0 22px}
.njb-member{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;background:linear-gradient(120deg,#172d28,#284439);color:#fff;border:1px solid #bfa575;border-radius:14px;box-shadow:0 8px 24px #172d281a}
.njb-member .njb-eyebrow{color:#e5c998}.njb-member strong{color:#fff!important;display:block;font:28px/1.3 Georgia,serif;letter-spacing:.06em;margin-top:7px}.njb-member p{margin:0;max-width:430px;color:#f3ead9;line-height:1.6}
.njb-section-intro{margin:36px 0 20px}.njb-section-intro p{margin:10px 0;color:#58665e}
.njb-genres{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.njb-genre{min-height:166px;padding:24px 18px;border-radius:12px;justify-content:space-between;border:1px solid #ffffff30;background:linear-gradient(145deg,#ffffff12,#00000025),var(--genre-color);position:relative;overflow:hidden}
.njb-genre::after{content:"";position:absolute;width:90px;height:90px;right:-40px;bottom:-35px;border:1px solid #ffffff40;border-radius:50%;box-shadow:0 0 0 14px #ffffff08}
.njb-genre strong{font:700 22px/1.25 Georgia,serif}.njb-genre span{opacity:.9}
.njb-genre-heading{padding:24px 28px;border-left:5px solid var(--genre-color);background:#f5f1e9;border-radius:0 12px 12px 0;margin-top:28px}.njb-genre-heading h2{margin:8px 0 0;font:34px/1.2 Georgia,serif}
.njb-shelf{padding:22px 24px 12px;margin:28px 0;background:linear-gradient(#faf6ed,#efe6d5);border:1px solid #e1d3ba;border-bottom:12px solid #8c653c;border-radius:10px 10px 3px 3px;box-shadow:0 14px 18px -12px #36261780,0 -3px 0 #b48b57 inset}
.njb-catalog{grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:22px;margin:8px 0 16px}
.njb-cover{align-items:center;text-align:center;gap:10px;padding-bottom:8px}.njb-cover img{height:240px;filter:drop-shadow(5px 8px 5px #0004);transition:transform .18s}.njb-cover:hover img{transform:translateY(-6px)}.njb-cover strong{font-size:19px}.njb-cover span{font-size:12px}
.njb-empty{padding:38px;text-align:center;margin-top:28px;border:1px dashed #bdab91;border-radius:12px;background:#faf7f0}.njb-empty h3{font:25px/1.3 Georgia,serif}
.njb-reader.njb-immersive{position:fixed!important;inset:0!important;z-index:999999!important;overflow:auto!important;width:100%!important;height:100dvh!important;margin:0!important;border:0!important;border-radius:0!important;padding:16px!important;overscroll-behavior:contain}
body.njb-reading{overflow:hidden!important}
.njb-reader:fullscreen{height:100dvh;overscroll-behavior:contain}
.njb-reader:fullscreen .njb-toolbar,.njb-immersive .njb-toolbar{position:sticky;top:0;z-index:2;box-shadow:0 5px 15px #0001}
.njb-reader:fullscreen .njb-navigation,.njb-immersive .njb-navigation{position:sticky;bottom:0;z-index:2;background:var(--njb-ui);padding:12px;border-radius:8px}
.njb-reader.njb-controls-hidden .njb-toolbar>*:not(#njb-toggle-controls):not(#njb-fullscreen){display:none}
@media(max-width:1000px){.njb-genres{gap:10px}.njb-genre{padding:20px 12px;min-height:150px}.njb-genre strong{font-size:19px}.njb-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.njb-member{display:block;padding:20px}.njb-member p{margin-top:16px}.njb-genres{grid-template-columns:repeat(2,minmax(0,1fr))}.njb-genre{min-height:140px}.njb-genre strong{font-size:22px}.njb-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.njb-cover img{height:220px}.njb-shelf{padding:18px 16px 8px}.njb-book{grid-template-columns:1fr}.njb-book>img{max-width:180px;margin:auto}.njb-toolbar{gap:7px}.njb-toolbar label{min-width:100%;flex-basis:100%}.njb-toolbar button{padding:10px 12px;font-size:12px}.njb-welcome h2,.njb-section-intro h2{font-size:29px}.njb-navigation{flex-wrap:wrap}.njb-title{margin-bottom:22px!important}}
@media(prefers-reduced-motion:reduce){.njb-cover img,.njb-genre{transition:none}}
