:root{--bg:#f7f8fb;--surface:#fff;--surface-2:#eef2f7;--text:#12213a;--muted:#66748b;--line:#dfe5ed;--primary:#0b4c81;--primary-2:#0f7b8b;--gold:#c88a14;--gold-light:#f2c45d;--danger:#b42318;--shadow:0 18px 50px rgba(16,35,60,.09);--radius:22px;--container:1220px}
html[data-theme=dark]{--bg:#061326;--surface:#0b1e37;--surface-2:#102a48;--text:#f4f7fb;--muted:#aab7c8;--line:#1c3b5e;--primary:#53b7d0;--primary-2:#67d0bd;--gold:#f2bd4f;--gold-light:#ffda7e;--shadow:0 20px 60px rgba(0,0,0,.32)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Tahoma,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.85}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(var(--container),calc(100% - 32px));margin-inline:auto}.narrow{width:min(860px,calc(100% - 32px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;right:16px;top:-100px;background:var(--gold);color:#111;padding:.7rem 1rem;z-index:100}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-row{min-height:112px;display:flex;align-items:center;gap:24px}.brand{display:block;flex:0 1 590px;min-width:260px}.brand-logo{width:min(590px,100%);height:96px;object-fit:contain;object-position:right center}.logo-dark{display:none}html[data-theme=dark] .logo-light{display:none}html[data-theme=dark] .logo-dark{display:block}.main-nav{display:flex;align-items:center;gap:18px;margin-inline-start:auto;white-space:nowrap}.main-nav a{font-weight:700;color:var(--muted);padding:.45rem .2rem}.main-nav a:hover{color:var(--gold)}.theme-toggle,.nav-toggle{border:1px solid var(--line);background:var(--surface-2);color:var(--text);width:42px;height:42px;border-radius:50%;cursor:pointer}.nav-toggle{display:none}.header-search{padding-bottom:12px}.header-search form,.big-search{display:flex;max-width:720px;margin-inline:auto}.header-search input,.big-search input{flex:1;border:1px solid var(--line);border-radius:0 14px 14px 0;background:var(--surface);color:var(--text);padding:.72rem 1rem;outline:none}.header-search button,.big-search button{border:0;background:var(--primary);color:#fff;padding:.7rem 1.4rem;border-radius:14px 0 0 14px;cursor:pointer}.flash{margin-top:18px;padding:1rem 1.2rem;border-radius:14px;background:#e8f7ed;color:#176638}.flash.error{background:#feeceb;color:#a11}.hero{padding:58px 0 36px;background:radial-gradient(circle at 10% 10%,color-mix(in srgb,var(--gold) 15%,transparent),transparent 35%),linear-gradient(160deg,var(--surface),var(--bg))}.hero-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px;align-items:center}.hero-copy h1{font-size:clamp(2rem,4.4vw,4.5rem);line-height:1.2;margin:.4rem 0 1rem;background:linear-gradient(135deg,var(--gold),var(--gold-light));-webkit-background-clip:text;color:transparent}.hero-copy p{font-size:1.15rem;color:var(--muted)}.eyebrow{display:inline-block;color:var(--gold);font-weight:800;letter-spacing:.04em}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:14px;padding:.78rem 1.35rem;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-weight:800;cursor:pointer}.button.ghost{background:var(--surface-2);color:var(--text);border:1px solid var(--line)}.featured-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.featured-card img{width:100%;aspect-ratio:16/8.5;object-fit:cover}.featured-card>div{padding:24px}.featured-card h2{font-size:1.7rem;line-height:1.45;margin:.5rem 0}.featured-card p,.content-card p,.book-card p,.mini-card p{color:var(--muted)}.badge,.category{display:inline-flex;color:var(--gold);font-weight:800;font-size:.88rem}.section{padding:58px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-head h2,.category-strip h2{font-size:2rem;margin:.15rem 0}.section-head>a{color:var(--primary);font-weight:800}.category-strip{padding:24px 0}.category-strip>div{display:flex;gap:10px;flex-wrap:wrap}.category-strip a{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.45rem .9rem}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.articles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-card,.book-card,.mini-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px rgba(15,35,55,.05)}.content-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.content-card>div,.book-card,.mini-card{padding:20px}.content-card h2,.content-card h3,.book-card h2,.book-card h3,.mini-card h3{line-height:1.5;margin:.45rem 0}.content-card small,.book-card small,.meta{color:var(--muted)}.book-card{text-align:center}.book-card img{width:min(240px,90%);aspect-ratio:2/3;object-fit:cover;margin:0 auto 18px;border-radius:12px;box-shadow:0 16px 35px rgba(0,0,0,.18)}.book-placeholder{display:grid;place-items:center;width:min(240px,90%);aspect-ratio:2/3;margin:0 auto 18px;border-radius:12px;background:linear-gradient(150deg,var(--primary),#14233d);color:var(--gold-light);font-size:2rem;font-weight:900}.book-placeholder.large{width:280px}.quote-band{padding:48px 0;text-align:center;background:linear-gradient(135deg,#07162c,#0d3a55);color:#fff}.quote-band blockquote{font-size:clamp(1.35rem,3vw,2.3rem);margin:12px auto;max-width:900px;color:var(--gold-light)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:20px 0 60px}.stats div{background:var(--surface);border:1px solid var(--line);padding:22px;border-radius:18px;text-align:center}.stats strong{display:block;font-size:2rem;color:var(--gold)}.stats span{color:var(--muted)}.newsletter{padding:52px 0;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 15%,var(--surface)),var(--surface))}.newsletter-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.newsletter form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}.newsletter input,.filters input,.filters select,.contact-form input,.contact-form textarea,.admin-form input,.admin-form select,.admin-form textarea{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:12px;padding:.75rem 1rem;min-width:0}.page-hero{padding:55px 0;background:linear-gradient(145deg,var(--surface),var(--surface-2));border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2rem,5vw,4rem);line-height:1.25;margin:.3rem 0}.page-hero p{color:var(--muted);font-size:1.12rem}.content-with-sidebar{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:30px;padding-block:42px}.sidebar{display:flex;flex-direction:column;gap:24px}.filters{display:grid;grid-template-columns:1fr 220px auto;gap:10px;margin-bottom:24px}.pagination{display:flex;gap:8px;justify-content:center;margin-top:32px}.pagination a{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);background:var(--surface);border-radius:10px}.pagination a.active{background:var(--primary);color:#fff}.article-head{padding-top:48px;text-align:center}.article-head h1{font-size:clamp(2rem,5vw,4.5rem);line-height:1.3;margin:.5rem 0}.lead{font-size:1.25rem;color:var(--muted)}.article-cover{width:100%;max-height:650px;object-fit:cover;border-radius:26px;margin-top:30px;box-shadow:var(--shadow)}.prose{font-size:1.12rem;line-height:2.05;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(22px,5vw,54px)}.prose h2,.prose h3{line-height:1.5;margin-top:2em;color:var(--primary)}.prose img{margin:28px auto;border-radius:16px}.prose blockquote{border-right:5px solid var(--gold);background:var(--surface-2);margin:2rem 0;padding:1rem 1.4rem;border-radius:12px}.prose pre{direction:ltr;text-align:left;background:#07111f;color:#d9e7f5;padding:18px;border-radius:14px;overflow:auto}.prose a{color:var(--primary);text-decoration:underline}.related{margin-top:32px}.book-detail{display:grid;grid-template-columns:300px 1fr;gap:40px;align-items:center}.book-cover{width:280px;aspect-ratio:2/3;object-fit:cover;border-radius:16px;box-shadow:var(--shadow)}.book-facts{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.book-facts span{background:var(--surface);border:1px solid var(--line);padding:.45rem .8rem;border-radius:999px}.download-button{margin-top:22px;font-size:1.08rem}.notice,.empty{padding:24px;background:var(--surface);border:1px dashed var(--line);border-radius:16px;text-align:center;color:var(--muted)}.big-search{max-width:760px;margin-top:20px}.standalone{padding-block:45px}.contact-form{display:grid;gap:16px;background:var(--surface);border:1px solid var(--line);padding:28px;border-radius:var(--radius);margin-block:40px}.contact-form label{display:grid;gap:7px;font-weight:700}.error-page{text-align:center;padding:100px 0}.error-page strong{font-size:7rem;line-height:1;color:var(--gold)}.site-footer{background:#07162c;color:#d9e3ef;padding:48px 0 20px;margin-top:40px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}.site-footer h2{color:var(--gold-light)}.site-footer a{color:#fff}.copyright{border-top:1px solid #25405d;margin-top:28px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.ad-slot{position:relative;margin-block:22px;text-align:center}.ad-slot a{display:block}.ad-slot img{max-width:100%;height:auto;margin:auto;border-radius:14px}.ad-label{position:absolute;z-index:2;top:6px;left:8px;background:rgba(0,0,0,.65);color:#fff;font-size:.68rem;padding:.15rem .4rem;border-radius:5px}.ad-horizontal img{max-height:220px;object-fit:contain}.ad-vertical img{max-height:580px;object-fit:contain}.ad-bottom{width:100%;margin:0;background:var(--surface);padding:12px}.grid-wide{grid-column:1/-1}.flash{position:relative;z-index:2}
@media(max-width:1050px){.header-row{min-height:88px}.brand{flex-basis:440px}.brand-logo{height:74px}.nav-toggle{display:block;margin-inline-start:auto}.main-nav{display:none;position:absolute;top:88px;right:16px;left:16px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:16px;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.theme-toggle{margin-inline-start:0}.hero-grid,.newsletter-grid{grid-template-columns:1fr}.content-with-sidebar{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:repeat(2,1fr)}.book-detail{grid-template-columns:240px 1fr}.book-cover{width:220px}}
@media(max-width:760px){.container,.narrow{width:min(100% - 22px,var(--container))}.header-row{gap:8px;min-height:72px}.brand{min-width:0;flex:1}.brand-logo{height:58px}.header-search{display:none}.hero{padding-top:34px}.hero-grid{gap:22px}.hero-copy h1{font-size:2.4rem}.card-grid,.articles-grid,.books-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.newsletter form{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.content-with-sidebar{padding-block:24px}.sidebar{grid-template-columns:1fr}.article-head h1{font-size:2.25rem}.prose{padding:22px;font-size:1.05rem}.book-detail{grid-template-columns:1fr;text-align:center}.book-cover{margin:auto}.book-facts{justify-content:center}.section{padding:38px 0}.section-head{align-items:center}.copyright{display:block}.copyright span{display:block;margin-top:8px}.page-hero{padding:38px 0}}

/* v1.6.1 performance, typography and stability */
body{font-family:var(--site-font);font-weight:400}.site-header{background:var(--surface);backdrop-filter:none}.header-row{min-height:96px}.brand{display:flex;align-items:center;gap:12px;flex:0 1 535px;min-width:300px}.brand-mark{width:78px;height:75px;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 5px 10px rgba(20,35,55,.12))}.brand-copy{display:grid;line-height:1.25}.brand-copy strong{font-size:clamp(1.45rem,2.2vw,2.3rem);font-weight:500;color:var(--gold)}.brand-copy small{font-size:.9rem;color:var(--muted);white-space:nowrap}.hero-copy h1{font-size:clamp(2rem,3.7vw,3.8rem);font-weight:500}.page-hero h1{font-size:clamp(2rem,4vw,3.6rem);font-weight:500}.article-head h1{font-size:clamp(2rem,4vw,3.8rem);font-weight:500}.section-head h2,.category-strip h2{font-size:clamp(1.55rem,2.5vw,2rem);font-weight:500}.content-card h2,.content-card h3,.book-card h2,.book-card h3,.mini-card h3{font-weight:500}.featured-card{min-height:390px}.content-card img{background:var(--surface-2)}.book-card img,.book-cover{background:#07162c}.section,.newsletter,.quote-band,.site-footer{content-visibility:auto;contain-intrinsic-size:1px 700px}.ad-slot{min-height:0}.ad-slot:has(img){min-height:90px}html[data-theme=dark] .brand-mark{filter:drop-shadow(0 0 12px rgba(242,189,79,.24)) brightness(1.06)}
@media(max-width:1050px){.header-row{min-height:84px}.brand{flex-basis:430px}.brand-mark{width:66px;height:64px}.brand-copy strong{font-size:1.7rem}.brand-copy small{font-size:.78rem}}
@media(max-width:760px){.brand{min-width:0;flex:1;gap:7px}.brand-mark{width:52px;height:50px}.brand-copy strong{font-size:1.27rem}.brand-copy small{display:none}.hero-copy h1{font-size:2.15rem}.article-head h1{font-size:2.05rem}}

/* v1.6.1b — natural book proportions and category library layout */
.book-category-nav{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}
.book-category-nav a{padding:.42rem .86rem;border:1px solid var(--line);background:var(--surface);border-radius:999px;color:var(--text);font-weight:700}
.book-category-nav a:hover{border-color:var(--gold);color:var(--gold)}
.library-groups{min-width:0}
.book-category-section{scroll-margin-top:125px;margin-bottom:52px}
.book-category-section:last-child{margin-bottom:0}
.book-category-head{display:flex;align-items:end;justify-content:space-between;gap:18px;padding-bottom:14px;margin-bottom:22px;border-bottom:1px solid var(--line)}
.book-category-head h2{font-size:clamp(1.55rem,2.5vw,2.15rem);font-weight:500;line-height:1.35;margin:.15rem 0 0}
.book-count{white-space:nowrap;padding:.32rem .72rem;border:1px solid var(--line);background:var(--surface-2);border-radius:999px;color:var(--muted);font-size:.88rem}
.books-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.book-card{display:flex;flex-direction:column;min-width:0;height:100%;text-align:center}
.book-card .category{align-self:center}
.book-card p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.book-card small{display:block;margin-top:auto;padding-top:10px}
.book-cover-link{display:grid;place-items:center;width:100%;margin-bottom:18px}
.book-card img.book-cover-thumb{width:min(220px,88%);aspect-ratio:5/7;object-fit:contain;object-position:center;margin:0 auto;border-radius:12px;background:color-mix(in srgb,var(--surface-2) 88%,#07162c 12%);box-shadow:0 14px 30px rgba(0,0,0,.16)}
.book-card img.book-cover-thumb.is-default-cover{object-fit:cover;background:#07162c}
.book-cover{width:280px;aspect-ratio:5/7;object-fit:contain;object-position:center;background:color-mix(in srgb,var(--surface-2) 88%,#07162c 12%)}
.book-cover.is-default-cover{object-fit:cover;background:#07162c}
html[data-theme=dark] .book-card img.book-cover-thumb,html[data-theme=dark] .book-cover{background:#07162c}
@media(max-width:1180px){.books-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.book-category-head{align-items:center}.books-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.book-card{padding:14px}.book-card img.book-cover-thumb{width:min(190px,96%)}.book-card p{display:none}}
@media(max-width:480px){.books-grid{grid-template-columns:1fr}.book-card{padding:18px}.book-card p{display:-webkit-box}}

/* v1.6.1c — definitive normal-width book cover proportions */
:root{--book-cover-ratio:4/5;--book-cover-card-width:270px;--book-cover-detail-width:330px}

/* The frame owns the ratio; the image only fills it. This prevents any
   intrinsic image dimensions or older CSS from producing a tall thin cover. */
.book-cover-frame{
  display:grid!important;
  place-items:center!important;
  width:min(100%,var(--book-cover-card-width))!important;
  max-width:var(--book-cover-card-width)!important;
  aspect-ratio:var(--book-cover-ratio)!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 auto 18px!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:14px!important;
  background:color-mix(in srgb,var(--surface-2) 90%,#07162c 10%)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.16)!important;
}
.book-cover-frame>img.book-cover-thumb,
.book-cover-frame>img{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  object-fit:contain!important;
  object-position:center!important;
}
.book-cover-frame>img.is-default-cover,
.book-cover-frame>img[src*="default-book-cover"]{object-fit:cover!important}

/* Normal, wider book proportion on the detail page as well. */
.book-detail{grid-template-columns:minmax(280px,340px) minmax(0,1fr)!important}
.book-detail-cover-frame{
  display:grid!important;
  place-items:center!important;
  width:min(100%,var(--book-cover-detail-width))!important;
  max-width:var(--book-cover-detail-width)!important;
  aspect-ratio:var(--book-cover-ratio)!important;
  height:auto!important;
  min-height:0!important;
  margin-inline:auto!important;
  overflow:hidden!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--surface-2) 90%,#07162c 10%)!important;
  box-shadow:var(--shadow)!important;
}
.book-detail-cover-frame>.book-cover{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  object-fit:contain!important;
  object-position:center!important;
}
.book-detail-cover-frame>.book-cover.is-default-cover,
.book-detail-cover-frame>.book-cover[src*="default-book-cover"]{object-fit:cover!important}

/* Neutralize the tall 3-D/mockup rules that may remain from older themes. */
.home-book-cover,.book-catalog-cover,.book-card-cover,.book-visual-stage{
  min-height:0!important;
  max-height:none!important;
  height:auto!important;
  padding-block:0!important;
}
.book-display-object,.book-mockup,.book-visual{
  width:min(100%,var(--book-cover-card-width))!important;
  max-width:var(--book-cover-card-width)!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  aspect-ratio:var(--book-cover-ratio)!important;
  transform:none!important;
  perspective:none!important;
  margin-inline:auto!important;
}
.book-display-front,.book-front,.book-card-cover img,.home-book-cover img,.book-catalog-cover img{
  width:100%!important;
  max-width:100%!important;
  height:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  transform:none!important;
}
img[src*="default-book-cover.webp"]{object-fit:cover!important;object-position:center!important}

/* Keep the established library distribution: 3 / 2 / 1 cards. */
.books-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important}
.book-card{align-items:stretch!important;min-width:0!important}
@media(max-width:1080px){
  .books-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .book-detail{grid-template-columns:280px minmax(0,1fr)!important}
  :root{--book-cover-card-width:250px;--book-cover-detail-width:270px}
}
@media(max-width:700px){
  .books-grid{grid-template-columns:1fr!important}
  .book-detail{grid-template-columns:1fr!important;text-align:center}
  :root{--book-cover-card-width:250px;--book-cover-detail-width:280px}
}
