

:root { --ink:#333; --muted:#777; --line:#d9d9d9; --red:#9e0009; }
* { box-sizing:border-box; }
html { background:#ececec; scroll-behavior:smooth; }
body { margin:0; color:var(--ink); font-family:Meiryo,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif; font-size:14px; line-height:1.7; }
a { color:inherit; text-decoration:none; }
a:hover { text-decoration:underline; }
button,input,select { font:inherit; }
img { max-width:100%; }

.legacy-wrapper { width:1060px; min-height:100vh; margin:0 auto; background:#fff; box-shadow:0 0 6px rgb(0 0 0 / 25%); }
.legacy-header-inner,.legacy-nav,.legacy-main,.legacy-footer { width:1000px; margin:0 auto; }
.legacy-header { width:100vw; margin-left:calc((1060px - 100vw) / 2); padding-top:0; position:relative; background:#fff; }
.legacy-header::before { content:""; width:100%; height:107px; position:absolute; inset:0 0 auto; background:url('/assets/header-bg.jpg') 100% 0 repeat-x; }
.legacy-header-inner { height:107px; display:flex; align-items:flex-start; position:relative; z-index:1; }
.legacy-logo { width:161px; height:90px; margin:10px 0 7px 25px; display:block; flex:none; }
.legacy-logo img { width:160px; height:88px; display:block; }
.legacy-catch { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.private-mark { margin:15px 10px 0 auto; padding:5px 10px; border:1px solid rgb(255 255 255 / 68%); border-radius:2px; background:rgb(255 255 255 / 88%); color:#555; font-size:11px; box-shadow:0 1px 3px rgb(0 0 0 / 20%); }
.legacy-nav { padding-top:10px; position:relative; z-index:1; background:#fff; }
.legacy-global-nav,.legacy-genre-nav { margin:0; padding:0; list-style:none; display:flex; }
.legacy-global-nav { gap:20px; padding:0 0 0 2px; font-size:12px; }
.legacy-global-nav li { padding-left:14px; position:relative; }
.legacy-global-nav li::before { content:"›"; position:absolute; left:0; font-weight:bold; }
.legacy-global-nav span { color:#777; }
.legacy-genre-nav { width:100%; margin-top:10px; align-items:stretch; }
.legacy-genre-nav li { flex:1; min-width:0; padding-left:1px; background:#e1e1df; }
.legacy-genre-nav li:first-child { padding-left:0; }
.legacy-genre-nav a { height:35px; margin-top:0; padding:0; display:block; border-bottom:4px solid var(--genre-color,#555); background:#f7f7f5; text-decoration:none; }
.legacy-genre-nav span { height:31px; display:grid; place-items:center; border:0; background:transparent; color:#333; font-size:10px; white-space:nowrap; }
.legacy-genre-nav a:hover span { color:#fff; background:linear-gradient(rgb(255 255 255 / 5%),rgb(255 255 255 / 38%)); }
.genre-science { --genre-color:rgb(15 204 203); }
.genre-medical { --genre-color:rgb(16 204 158); }
.genre-nature { --genre-color:rgb(0 153 107); }
.genre-learning { --genre-color:rgb(98 152 69); }
.genre-artsport { --genre-color:rgb(199 198 92); }
.genre-person { --genre-color:rgb(132 77 160); }
.genre-society { --genre-color:rgb(53 119 187); }
.genre-incident { --genre-color:rgb(208 99 192); }
.genre-culture { --genre-color:rgb(154 108 72); }
.genre-world-history { --genre-color:rgb(208 100 35); }
.genre-japanese-history { --genre-color:rgb(207 48 23); }
.genre-business { --genre-color:rgb(158 0 9); }

.legacy-main { padding:20px 10px 60px; }
.home-intro { padding:12px 0 16px; border-bottom:1px solid var(--line); }
.home-intro h1 { margin:0; font-size:20px; font-weight:normal; }
.home-intro p { margin:3px 0 0; color:var(--muted); font-size:12px; }
.legacy-columns { display:grid; grid-template-columns:654px 300px; gap:26px; margin-top:24px; align-items:start; }
.legacy-primary { min-width:0; }
.legacy-section-title { height:36px; display:flex; align-items:baseline; justify-content:space-between; margin-bottom:18px; border-bottom:3px solid #292929; }
.legacy-section-title h1,.legacy-section-title h2 { margin:0; font-size:18px; font-weight:normal; }
.legacy-section-title span { color:#999; font:10px Arial,sans-serif; letter-spacing:.1em; }
.featured-article>article { min-height:255px; display:grid; grid-template-columns:190px 1fr; gap:24px; padding:10px 14px 22px; border-bottom:1px solid var(--line); }
.featured-cover { min-height:220px; display:grid; place-items:center; background:#f3f3f3; }
.featured-cover img { max-width:155px; max-height:220px; object-fit:contain; box-shadow:0 3px 8px rgb(0 0 0 / 22%); }
.legacy-cover-missing { width:120px; height:175px; display:grid; place-items:center; border:1px solid #bbb; background:#fff; color:#999; font:12px/1.8 Georgia,serif; text-align:center; }
.legacy-category { margin:0 0 7px; color:var(--red); font-size:11px; }
.featured-article h2 { margin:0 0 12px; font-size:22px; line-height:1.5; }
.featured-excerpt { margin:0; color:#555; font-size:13px; line-height:1.8; display:-webkit-box; -webkit-line-clamp:5; -webkit-box-orient:vertical; overflow:hidden; }
.featured-meta { margin:14px 0 0; color:#777; font-size:11px; }
.latest-section { margin-top:30px; }
.legacy-article-list { display:grid; grid-template-columns:1fr 1fr; column-gap:22px; }
.legacy-list-card { min-height:190px; display:grid; grid-template-columns:105px 1fr; gap:14px; padding:15px 0; border-bottom:1px dotted #aaa; }
.legacy-list-cover { min-height:150px; display:grid; place-items:center; align-self:start; background:#f4f4f4; }
.legacy-list-cover img { max-width:92px; max-height:145px; object-fit:contain; }
.legacy-list-cover .legacy-cover-missing { width:78px; height:116px; font-size:10px; }
.legacy-list-card h3 { margin:0; font-size:15px; line-height:1.55; }
.list-excerpt { margin:8px 0 0; color:#666; font-size:11px; line-height:1.7; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }

.legacy-sidebar { min-width:0; }
.sidebar-box { margin-bottom:22px; border-top:4px solid #333; }
.sidebar-box h2 { margin:0; padding:8px 10px; border-bottom:1px solid #ccc; background:linear-gradient(#fff,#eee); font-size:14px; }
.sidebar-search-link { margin-top:10px; padding:10px 12px; display:block; border:1px solid #999; background:#fafafa; font-size:12px; }
.archive-facts { margin:0; }
.archive-facts div { display:flex; justify-content:space-between; padding:8px 10px; border-bottom:1px dotted #aaa; font-size:12px; }
.archive-facts dt { color:#777; }
.archive-facts dd { margin:0; font-weight:bold; }
.restoration-box code { display:block; margin:10px; padding:8px; background:#eee; color:#666; font-size:10px; overflow-wrap:anywhere; }
.status-ok { color:#27805d; }
.status-warn { color:#b33b1f; }
.sidebar-note { padding:15px; border:1px solid #ccc; background:#f2f2f2; color:#666; font-size:11px; }
.sidebar-note b { color:#9e0009; font:11px Arial,sans-serif; letter-spacing:.08em; }
.sidebar-note p { margin:5px 0 0; }

.archive-search { margin-top:22px; padding-top:10px; }
.legacy-search-form { display:grid; grid-template-columns:1fr 130px 190px 90px; gap:10px; align-items:end; padding:15px; background:#efefef; border:1px solid #d5d5d5; }
.legacy-search-form label>span { display:block; margin-bottom:3px; color:#666; font-size:11px; }
.legacy-search-form input,.legacy-search-form select { width:100%; height:32px; border:1px solid #898c90; border-radius:0; background:#fff; padding:0 8px; }
.result-count { margin:0 0 5px; text-align:right; color:#777; font-size:11px; }
.result-count strong { color:#333; font-size:18px; }
.empty-state { padding:30px; text-align:center; color:#777; }

/* Modern editorial home; article and archive pages retain the restored theme. */
.modern-home { padding-top:0; }
.archive-hero { margin:0 -10px; padding:76px 72px 68px; position:relative; overflow:hidden; background:#171715; color:#fff; }
.archive-hero::after { content:"2011—2024"; position:absolute; right:-18px; bottom:-46px; color:rgb(255 255 255 / 6%); font:700 112px/1 Arial,sans-serif; letter-spacing:-.06em; white-space:nowrap; }
.archive-kicker { margin:0 0 25px; color:#e24b2b; font:700 12px/1.2 Arial,sans-serif; letter-spacing:.2em; }
.archive-hero h1 { max-width:680px; margin:0; font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif; font-size:52px; font-weight:700; line-height:1.35; letter-spacing:.01em; }
.archive-lead { max-width:630px; margin:25px 0 0; color:#c8c8c3; font-size:15px; line-height:2; }
.archive-lead span { white-space:nowrap; }
.home-search { margin:0; padding:42px 0 45px; border-bottom:1px solid #cfcfc9; }
.home-search #search { min-height:0; }
.home-section-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:22px; }
.home-section-heading h2 { margin:0; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:28px; font-weight:500; }
.home-section-heading span { color:#999; font:700 10px/1.2 Arial,sans-serif; letter-spacing:.15em; }
.home-section-heading > div { display:flex; align-items:center; gap:18px; }
.directory-all-link { color:#9e0009; font:700 12px/1.2 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif; white-space:nowrap; }
.section-all-link { display:flex; justify-content:flex-end; margin-top:18px; }
.directory-index { padding:10px 0 60px; }
.directory-index-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#d7d7d1; border:1px solid #d7d7d1; }
.directory-index-grid a { min-height:72px; padding:14px 16px; display:flex; align-items:center; gap:10px; background:#fff; font-size:13px; line-height:1.45; }
.directory-index-grid a:hover { background:#171715; color:#fff; text-decoration:none; }
.directory-index-grid small { margin-left:auto; color:#999; font-size:9px; white-space:nowrap; }
.directory-index-grid b { color:#e24b2b; font-family:Arial,sans-serif; }
.home-search .legacy-search-form { grid-template-columns:minmax(280px,1fr) 140px 210px 100px; padding:0; background:transparent; border:0; }
.home-search .legacy-search-form input,.home-search .legacy-search-form select { height:48px; border:1px solid #aaa; padding:0 14px; background:#fff; }
.home-search .search-field input { border-color:#252525; border-width:2px; }
.home-themes,.home-directory,.home-covers { padding:48px 0; border-bottom:1px solid #cfcfc9; }
.theme-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:#d7d7d1; border:1px solid #d7d7d1; }
.theme-grid a { min-height:92px; padding:18px 20px; display:flex; align-items:end; justify-content:space-between; background:#fff; font-size:15px; }
.theme-grid a:hover { background:#171715; color:#fff; text-decoration:none; }
.theme-grid small { margin-left:auto; color:#999; font-size:10px; }
.theme-grid b { color:#e24b2b; font-family:Arial,sans-serif; }
.cover-shelf { display:grid; grid-template-columns:repeat(4,1fr); gap:34px 24px; }
.cover-shelf article { min-width:0; }
.cover-shelf article:not(.is-visible) { display:none; }
.shelf-cover { height:245px; padding:16px; display:grid; place-items:center; background:#f1f1ee; }
.shelf-cover img { max-width:150px; max-height:215px; object-fit:contain; filter:drop-shadow(0 7px 7px rgb(0 0 0 / 18%)); transition:transform .2s ease; }
.shelf-cover:hover img { transform:translateY(-4px); }
.cover-shelf article>p { margin:13px 0 5px; color:var(--red); font-size:10px; }
.cover-shelf h3 { margin:0; font-size:14px; line-height:1.65; }
.cover-shelf small { margin-top:8px; display:block; color:#777; font-size:11px; }
.home-results { padding:46px 0; border-bottom:1px solid #cfcfc9; }
.writer-grid,.corner-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:#d7d7d1; border:1px solid #d7d7d1; }
.writer-grid a,.corner-grid a { min-height:72px; padding:14px 16px; display:flex; align-items:center; justify-content:space-between; gap:9px; background:#fff; font-size:13px; line-height:1.45; }
.writer-grid a:hover,.corner-grid a:hover { background:#171715; color:#fff; text-decoration:none; }
.writer-grid small,.corner-grid small { margin-left:auto; color:#999; font-size:9px; white-space:nowrap; }
.writer-grid b,.corner-grid b { color:#e24b2b; font-family:Arial,sans-serif; }
.corner-grid { grid-template-columns:repeat(3,1fr); }
.year-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:1px; background:#d7d7d1; border:1px solid #d7d7d1; }
.year-grid a { min-height:58px; display:grid; place-items:center; background:#fff; font:600 14px Arial,sans-serif; }
.year-grid small { margin-top:-14px; color:#999; font-size:9px; font-weight:normal; }
.year-grid a:hover { background:#171715; color:#fff; text-decoration:none; }
.home-search .pagefind-ui__search-input { height:58px !important; padding-left:54px !important; border:2px solid #252525 !important; background:#fff !important; font-size:16px !important; }
.home-search .pagefind-ui__search-clear { height:58px !important; }
.home-search .pagefind-ui__drawer { background:#fff; }
.home-search .pagefind-ui__result { padding:22px 0 !important; }

.breadcrumb { padding:10px 0 8px; display:flex; gap:8px; border-bottom:1px solid #ddd; color:#777; font-size:11px; overflow:hidden; }
.breadcrumb b { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.article-layout { margin-top:20px; }
.article-title-block { padding:0 0 12px; border-bottom:1px solid #dcdcdc; }
.article-category-row { display:flex; flex-wrap:wrap; gap:6px; }
.article-category-row span { padding:2px 10px 1px; border:1px solid #d3d3d3; border-radius:2px; background:linear-gradient(#fbfbfb,#f1f1f1); color:#6f6f6f; font-size:12px; }
.article-title-block h1 { margin:10px 0 0; font-size:26px; font-weight:normal; line-height:1.45; }
.byline { margin-top:12px; display:flex; gap:15px; color:#777; font-size:12px; }
.byline b { color:#333; }
.article-content { margin-top:30px; font-size:15px; line-height:2; overflow-wrap:anywhere; }
.article-content>.section:first-child { margin-top:0; }
.article-content p { margin:1.3em 0 0; }
.article-content h2,.article-content h3,.article-content h4 { margin:2em 0 .7em; padding:5px 0 4px 13px; border-left:5px solid #999; font-size:16px; line-height:1.65; }
.article-content a { color:var(--red); text-decoration:underline; text-underline-offset:2px; }
.article-content blockquote { margin:1.8em 0; padding:15px 20px; border-left:4px solid #aaa; background:#f2f2f2; }
.article-content blockquote p:first-child { margin-top:0; }
.article-content img { max-width:100%; height:auto; }
.article-content iframe,.article-content script,.article-content .fb-post,.article-content .twitter-tweet { display:none !important; }
.article-content iframe:only-child,.article-content p:empty,.article-content div:empty { display:none; }
.article-content .book-info,.article-content .book_info { margin:0 0 30px; padding:0; border:0; background:transparent; font-size:13px; line-height:1.7; }
.article-content .book_info .body { min-height:190px; display:flex; gap:20px; align-items:flex-start; padding:15px; border:1px solid #d6d6d6; background:#fafafa; }
.article-content .book_info .body>a { width:140px; min-width:140px; display:grid; place-items:center; }
.article-content .book_info .body>a>img { width:auto; max-width:130px; max-height:190px; object-fit:contain; }
.article-content .book_info .txt { flex:1; min-width:0; }
.article-content .book_info .title { margin-bottom:8px; font-size:16px; font-weight:bold; line-height:1.6; }
.article-content .book_info .meta { color:#555; }
.article-content .boookstores { display:flex; gap:8px; margin:14px 0 0; padding:0; list-style:none; }
.article-content .boookstores li:not(.amazon) { display:none; }
.article-content .boookstores img { width:auto; height:27px; }
.article-content .missing-image { width:120px; min-height:170px; display:grid; place-items:center; border:1px dashed #aaa; background:#f4f4f4; color:#999; font-size:11px; text-align:center; }
.article-content .legacy-book-cover { margin:0 0 22px; display:flex; gap:12px; align-items:end; }
.article-content .legacy-book-cover small { color:#777; font:11px/1.5 monospace; }
.related-articles { margin-top:48px; }
.related-articles .legacy-section-title { margin-bottom:8px; }
.related-articles ul { margin:0; padding:0; list-style:none; display:grid; grid-template-columns:1fr 1fr; column-gap:24px; }
.related-articles li { min-width:0; padding:13px 0 14px; border-bottom:1px dotted #aaa; }
.related-articles li p { margin:0 0 4px; color:var(--red); font-size:11px; line-height:1.5; }
.related-articles li h3 { margin:0; padding:0; border:0; font-size:14px; line-height:1.6; }
.related-articles li small { margin-top:6px; display:block; color:#777; font-size:11px; }
.related-articles a:hover { text-decoration:underline; }
.article-pagination { margin-top:50px; padding-top:20px; border-top:1px solid #333; display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.article-pagination a { display:flex; flex-direction:column; gap:5px; }
.article-pagination .next { text-align:right; }
.article-pagination small { color:var(--red); font-size:10px; font-weight:bold; }
.article-pagination span { font-size:12px; line-height:1.6; }

.legacy-footer { min-height:88px; padding:13px 28px; display:flex; justify-content:flex-start; align-items:flex-start; border-top:0; background:#3a2418 url('/assets/header-bg.jpg') center top/auto 88px repeat-x; color:rgb(255 255 255 / 82%); font-size:11px; }
.legacy-footer img { width:96px; display:block; filter:none; }
.not-found { max-width:760px; margin:0 auto; padding:18vh 30px; }

@media (max-width:1060px) {
  html { background:#fff; }
  .legacy-wrapper { width:100%; box-shadow:none; }
  .legacy-header-inner,.legacy-nav,.legacy-main,.legacy-footer { width:calc(100% - 32px); }
  .legacy-header { margin-left:calc((100% - 100vw) / 2); }
}
@media (max-width:760px) {
  body { font-size:13px; }
  .legacy-header::before { height:82px; background-size:auto 92px; }
  .legacy-header-inner { height:82px; }
  .legacy-logo { width:120px; height:auto; margin:7px 0 5px 4px; }
  .legacy-logo img { width:120px; height:auto; }
  .legacy-catch { display:none; }
  .private-mark { margin-top:10px; font-size:9px; }
  .legacy-global-nav { overflow-x:auto; gap:15px; white-space:nowrap; }
  .legacy-genre-nav { overflow-x:auto; }
  .legacy-genre-nav li { min-width:78px; }
  .legacy-columns { display:block; }
  .legacy-sidebar { margin-top:35px; }
  .featured-article>article { grid-template-columns:110px 1fr; gap:14px; padding-inline:0; }
  .featured-cover { min-height:160px; }
  .featured-cover img { max-width:100px; max-height:155px; }
  .featured-cover .legacy-cover-missing { width:85px; height:125px; }
  .featured-article h2 { font-size:17px; }
  .featured-excerpt { -webkit-line-clamp:4; font-size:11px; }
  .legacy-article-list { grid-template-columns:1fr; }
  .legacy-search-form { grid-template-columns:1fr 1fr; }
  .search-field,.result-count { grid-column:1/-1; }
  .result-count { text-align:left; }
  .article-title-block h1 { font-size:23px; }
  .article-content { font-size:16px; line-height:1.95; }
  .article-content .book_info .body { display:block; }
  .article-content .book_info .body>a { width:100%; margin-bottom:15px; }
  .related-articles ul { grid-template-columns:1fr; }
  .article-pagination { grid-template-columns:1fr; }
  .legacy-footer { display:block; }
  .archive-hero { margin-inline:-6px; padding:48px 22px 44px; }
  .archive-hero::after { right:-5px; bottom:-20px; font-size:58px; }
  .archive-hero h1 { font-size:34px; }
  .archive-lead { font-size:13px; }
  .home-section-heading h2 { font-size:23px; }
  .home-section-heading span { display:none; }
  .home-section-heading > div { margin-left:auto; }
  .directory-all-link { font-size:11px; }
  .directory-index-grid { grid-template-columns:1fr 1fr; }
  .directory-index-grid a { min-height:64px; padding:11px 12px; font-size:11px; }
  .home-search .legacy-search-form { grid-template-columns:1fr 1fr; }
  .theme-grid { grid-template-columns:1fr 1fr; }
  .theme-grid a { min-height:76px; padding:14px; font-size:13px; }
  .cover-shelf { grid-template-columns:1fr 1fr; gap:28px 14px; }
  .shelf-cover { height:205px; }
  .shelf-cover img { max-width:125px; max-height:180px; }
  .writer-grid,.corner-grid { grid-template-columns:1fr 1fr; }
  .writer-grid a,.corner-grid a { min-height:64px; padding:11px 12px; font-size:11px; }
  .year-grid { grid-template-columns:repeat(4,1fr); }
}

/* Approved archive design — 2026-09-10 */

.legacy-logo img{width:160px;height:auto;aspect-ratio:545/305}
.legacy-nav{padding-top:0}.legacy-global-nav{height:44px;align-items:center}
.legacy-genre-nav{margin-top:0;display:grid;grid-template-columns:92px 106px 94px 94px 128px 54px 54px 94px 94px 60px 60px 70px;gap:0;border:1px solid #dadad6;border-bottom:0}
.legacy-genre-nav li{padding:0;background:transparent;border-right:1px solid #dadad6}.legacy-genre-nav li:last-child{border-right:0}
.legacy-genre-nav a{height:40px;border:0;padding-bottom:5px;background:var(--genre-color)}
.legacy-genre-nav span{height:35px;font-size:12px;line-height:1;background:linear-gradient(#eeeeec,#fff);border-bottom:1px solid white}
.archive-hero{padding:60px 62px 58px}.archive-hero h1{font-size:52px;line-height:1.35}.archive-lead{max-width:none;font-size:15px;white-space:nowrap}.archive-hero::after{display:none}
.modern-home{padding-bottom:48px}.home-themes,.home-directory,.home-covers{padding:40px 0}.home-search{padding:36px 0 40px}
.mock-search{height:58px;border:2px solid #252525;display:flex;align-items:center;gap:16px;padding:0 20px}.mock-search span{font:32px Arial;color:#555}.mock-search input{border:0;outline:none;width:100%;font-size:16px;background:transparent}
.shelf-cover{background:transparent;align-items:end;display:flex;justify-content:center;height:235px}.shelf-cover img{max-height:215px;max-width:150px;object-fit:contain}
.cover-shelf h3{font-size:13px;line-height:1.7}.cover-shelf{row-gap:32px}
.legacy-footer{width:100vw;margin-left:calc((1060px - 100vw)/2);height:112px;min-height:112px;padding:0;background:#3a2418 url('/assets/header-bg.jpg') 100% 0/auto 127px repeat-x;display:flex;align-items:center}
.legacy-footer-inner{width:1000px;margin:auto;display:flex;align-items:center;gap:32px;padding:0 25px}.legacy-footer img{width:120px;height:auto;aspect-ratio:545/305}.legacy-footer-meta{margin-left:auto;color:#fff;font-size:12px;line-height:1.9;text-align:right}.legacy-footer-meta p{margin:0}.legacy-footer-meta a{text-decoration:underline;text-underline-offset:3px}

.archive-hero{height:270px;padding:32px 62px}.archive-kicker{margin-bottom:15px}.archive-hero h1{font-size:42px;line-height:1.3}.archive-lead{margin-top:18px}
.legacy-genre-nav{grid-template-columns:92px 108px 96px 96px 132px 52px 52px 96px 96px 56px 56px 66px}
.legacy-genre-nav a{height:46px;padding-bottom:6px}.legacy-genre-nav span{height:40px;font-size:13px;font-weight:600}
.home-themes,.home-directory{padding:28px 0}.home-covers{padding:40px 0}.section-all-link{margin-top:14px}
.legacy-footer-meta{font-size:13px;font-weight:600;text-shadow:0 1px 2px #321b10}
.theme-grid a{position:relative}.theme-grid a::before{content:'';position:absolute;left:20px;top:14px;width:22px;height:3px;background:var(--tile-color)}
.theme-grid a:nth-child(1){--tile-color:rgb(15 204 203)}.theme-grid a:nth-child(2){--tile-color:rgb(16 204 158)}.theme-grid a:nth-child(3){--tile-color:rgb(0 153 107)}.theme-grid a:nth-child(4){--tile-color:rgb(132 77 160)}.theme-grid a:nth-child(5){--tile-color:rgb(53 119 187)}.theme-grid a:nth-child(6){--tile-color:rgb(208 100 35)}.theme-grid a:nth-child(7){--tile-color:rgb(207 48 23)}.theme-grid a:nth-child(8){--tile-color:rgb(158 0 9)}
.archive-hero{background:#f6f4ef;color:#292725}.archive-lead{color:#5c5954}.archive-hero{height:auto;min-height:244px;padding:38px 62px 36px}.archive-hero h1{font-family:Arial,Helvetica,sans-serif;font-weight:700;line-height:1;letter-spacing:-.045em;max-width:none}.archive-title{display:block;font-size:58px}.archive-period{display:block;margin-top:10px;font-size:36px;letter-spacing:-.025em;color:#8a3d2b}.archive-lead{margin-top:24px;font-size:15px;line-height:1.8}
/* Responsive equivalents of the approved desktop composition. */
.archive-lead{white-space:normal;word-break:keep-all;overflow-wrap:anywhere}.archive-lead span{white-space:normal}
.legacy-genre-nav{grid-template-columns:92fr 108fr 96fr 96fr 132fr 52fr 52fr 96fr 96fr 56fr 56fr 66fr}
.legacy-genre-nav a:hover span{background:var(--genre-color);color:#fff}
.shelf-cover img,.legacy-list-cover img{width:auto;height:auto}
.legacy-list-cover{height:150px}.legacy-list-card h3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.listing-pagination{display:flex;gap:14px;align-items:center;justify-content:center;margin:24px 0;flex-wrap:wrap}.listing-pagination a{border:1px solid #bbb;padding:7px 12px}.listing-total{color:#666;font-size:12px}
.nav-scroll-hint{display:none}
@media(max-width:1060px){
 .legacy-footer{width:100vw;margin-left:calc((100% - 100vw)/2)}.legacy-footer-inner{width:calc(100% - 32px)}
 .legacy-genre-nav{display:flex;overflow-x:auto}.legacy-genre-nav li{flex:none;width:auto;min-width:0}.legacy-genre-nav span{padding-inline:12px}
 .nav-scroll-hint{display:block;text-align:right;font-size:11px;color:#777;padding:3px 0}
}
@media(max-width:760px){
 .legacy-header::before{background-size:auto 127px}.legacy-logo img{width:120px}
 .archive-hero{padding:30px 20px;min-height:0}.archive-title{font-size:clamp(27px,7.4vw,48px)}.archive-period{font-size:28px;margin-top:10px}.archive-lead{font-size:13px;margin-top:20px;line-height:1.9}
 .legacy-footer{height:auto;min-height:112px}.legacy-footer-inner{padding:18px 4px;gap:18px}.legacy-footer img{width:92px}.legacy-footer-meta{font-size:10px;text-align:left;max-width:210px}
 .shelf-cover{height:205px}.shelf-cover img{max-height:180px;max-width:125px}
 .theme-grid a{padding-top:25px}.theme-grid a::before{left:14px;top:12px}.theme-grid small{font-size:10px}
 .home-search{padding:28px 0}.home-themes,.home-directory{padding:28px 0}.home-covers{padding:36px 0}
}

@media(max-width:760px){.year-grid{background:#fff;gap:0}.year-grid a{border-right:1px solid #d7d7d1;border-bottom:1px solid #d7d7d1}}

.legacy-genre-nav li[class*="genre-"] { background:#333; }
.article-category-row a:hover { text-decoration:none; }
.article-content > :first-child { margin-top:0; }
.article-content p + p { margin-top:1.3em; }
.article-content .missing-image { margin:10px 0; }
.article-content .book_info .body > a > .missing-image { margin:0; }
.article-content table { max-width:100%; border-collapse:collapse; }
.article-content td,.article-content th { vertical-align:top; }
.article-content table img { max-width:100%; height:auto; }
.archive-search:not(.home-search) #search { min-height:300px; }
.pagefind-ui__search-input { border-radius:0 !important; }
.pagefind-ui__result-link { color:#9e0009 !important; }
@media (max-width:760px) {
  .legacy-main { padding-inline:6px; }
  .article-content table { display:block; width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .article-content .missing-image { max-width:100%; }
}

/* Recovered public reviewer profiles (2024). */

.reviewer-profile{margin:0 0 32px;padding:0 0 28px;border-bottom:1px solid #d8d4cd}.reviewer-profile .profile-date{font-size:13px;color:#666;letter-spacing:0;font-weight:400;margin:10px 0 0}.reviewer-profile .profile-role{font-size:14px;font-weight:700;margin:18px 0 8px}.reviewer-profile .profile-description{font-size:15px;line-height:1.95;color:#444;margin:0;overflow-wrap:anywhere}.reviewer-profile a{color:#a52b25;text-decoration:underline;text-underline-offset:3px}.reviewer-profile h1{font-family:"Hiragino Mincho ProN",serif;font-size:30px;margin:0}.reviewer-profile+.legacy-section-title h2{font-size:22px}@media(max-width:600px){.reviewer-profile{margin-bottom:24px;padding-bottom:24px}.reviewer-profile h1{font-size:26px}.reviewer-profile .profile-date{font-size:12px}.reviewer-profile .profile-description{font-size:14px}}

#search .pagefind-ui__filter-panel { display: none !important; }
