@charset "UTF-8";
html:not(.nav-ready) .site-head .menu-button{display:none}
@media(max-width:900px){html:not(.nav-ready) .site-head{position:static}html:not(.nav-ready) .site-head .head-inner{height:auto;min-height:80px;flex-wrap:wrap;padding-block:16px}html:not(.nav-ready) .site-head #navigation{display:flex;position:static;flex:1 0 100%;width:100%;flex-wrap:wrap;gap:8px 20px;padding:10px 0 0;border-bottom:0}html:not(.nav-ready) .site-head #navigation a{display:block;padding:7px 0}html:not(.nav-ready) .site-head #navigation .nav-action{padding:7px 12px;margin:0}}
.site-footer .footer-links{display:flex;flex-wrap:wrap;gap:10px 22px;align-content:flex-start;min-width:0}.release-preview{background:#e8eefb;color:#264080;text-align:center;padding:7px 20px;font-size:12px;line-height:1.8}.release-preview a{text-decoration:underline}.release-contact-link{color:var(--blue);overflow-wrap:anywhere}.home-restored-links{display:flex;gap:18px 30px;flex-wrap:wrap;margin-top:25px;color:var(--blue);font-size:14px}.home-restored-links a{border-bottom:1px solid #b3bfdc;padding:5px 0}.release-footer-note{font-size:11px;color:var(--muted)}
@media print{.release-preview{display:none}}
/* 新增栏目独立样式；颜色、字体与品牌继承原样稿。 */
.site-footer .footer-bottom{flex-wrap:wrap;min-width:0}.footer-contact{flex:0 0 auto;width:100%;max-width:100%;min-width:0;overflow-wrap:anywhere;font-size:12px;color:var(--muted)}.footer-contact a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.author-contact-panel{border-top:1px solid var(--line);margin-top:27px;padding-top:22px}.author-contact-panel p{font-size:14px;line-height:1.9}.author-contact-panel dl>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:18px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}.author-contact-panel dt{color:var(--muted)}.author-contact-panel dd{margin:0;overflow-wrap:anywhere}
.life-teasers{padding:45px 0 60px;border-top:1px solid var(--line)}.life-teaser-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.life-teaser-grid>a{display:block;min-width:0;border-top:2px solid var(--blue);padding:23px 0}.evidence-label{display:inline-block;background:#edf1fb;color:#2848ba;padding:4px 8px;font-size:11px;line-height:1.8;margin-bottom:15px}.life-teaser-grid h3{font-size:24px;line-height:1.6;font-weight:500}.life-teaser-grid p{font-size:14px;color:var(--muted);line-height:1.9;margin-top:17px}.life-teaser-grid .catalog-text-link{margin-top:20px;font-size:13px}.life-teaser-grid>a:hover h3{color:var(--blue)}
.life-topic-links{display:flex;gap:10px 25px;flex-wrap:wrap;font-size:13px;color:var(--blue);margin-bottom:36px}.life-topic-links>a{border-bottom:1px solid var(--line);padding:6px 0}.guiguzi-profile .catalog-source-divider h2{margin-top:16px}.guiguzi-profile .profile-references{background:var(--paper);padding:24px}.profile-references a{color:var(--blue);overflow-wrap:anywhere;text-decoration:underline;font-size:14px}.profile-references p{font-size:13px;line-height:1.95}.reference-date{display:block;color:var(--muted);font-size:11px;margin-top:8px}.profile-references ul{padding-left:19px}.profile-references li{margin-top:25px}
@media(max-width:760px){.life-teaser-grid{grid-template-columns:1fr;gap:12px}.life-teasers{padding:30px 0}.life-teaser-grid>a{padding:21px 0}.life-teaser-grid h3{font-size:23px}.life-teaser-grid p{font-size:13px;margin-top:11px}.life-teaser-grid .catalog-text-link{margin-top:12px}.author-contact-panel dl>div{grid-template-columns:75px minmax(0,1fr);gap:12px}.author-contact-panel p{font-size:13px}.guiguzi-profile .profile-references{padding:20px 16px}}

.home-model-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:26px;font-size:13px;color:var(--blue)}
.home-model-links .quiet-link{font-size:15px;margin-bottom:5px}.home-model-links a:hover{text-decoration:underline}
.home-culture{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;border-top:1px solid var(--line)}
.home-culture-visual{background:#edf0f8;padding:20px;border-radius:75px 0 0 0}.home-culture-visual img{width:100%;height:auto;mix-blend-mode:multiply}.home-culture-visual>span{display:block;text-align:center;font-size:11px;color:var(--muted)}
.scholar-hero{min-width:0;margin:0;padding:0;align-self:center}.scholar-hero picture,.scholar-home picture,.scholar-link{display:block;width:100%}.scholar-hero img,.home-culture-visual.scholar-home img{display:block;width:100%;height:auto;aspect-ratio:auto;max-height:none;object-fit:contain;mix-blend-mode:normal;border-radius:3px}.scholar-hero figcaption,.scholar-home figcaption{font-size:11px;line-height:1.8;color:var(--muted);margin-top:12px;text-align:left}.home-culture-visual.scholar-home{background:transparent;border:0;border-radius:0;padding:0;min-width:0}.scholar-link:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
@media(max-width:620px){.scholar-hero figcaption,.scholar-home figcaption{font-size:11px;margin-top:9px}.home-culture-visual.scholar-home{padding:0}.home-culture-visual.scholar-home img{max-height:none}}
.home-culture-copy h2{font-size:38px;line-height:1.45;font-weight:500}.home-culture-copy>p:not(.section-kicker){font-size:15px;color:var(--muted);margin:22px 0 27px;line-height:1.95}.home-culture-links{display:flex;gap:25px;flex-wrap:wrap;margin:23px 0 18px;font-size:13px;color:var(--blue)}.home-culture-copy>small{display:block;font-size:11px;color:var(--muted);line-height:1.9}
@media(max-width:1150px){.home-culture{gap:45px}.home-culture-copy h2{font-size:32px}}
@media(max-width:620px){.home-culture{grid-template-columns:1fr;gap:26px}.home-culture-visual{max-width:100%;padding:15px}.home-culture-visual img{max-height:240px}.home-culture-copy h2{font-size:28px}.home-culture-copy>p:not(.section-kicker){font-size:13px;margin:18px 0 22px}.home-culture-links{gap:20px;font-size:12px}.home-culture-copy>small{font-size:10px}.home-model-links{font-size:12px}.home-model-links .quiet-link{font-size:14px}}
.book-room .book-identity{align-items:center;gap:28px;margin:32px 0}
.book-room .cover-slot.is-filled{width:180px;aspect-ratio:auto;display:block;border:0;background:transparent;overflow:visible}
.cover-image-link{display:block;width:100%}.book-room .cover-slot.is-filled img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;max-height:none}
.book-room .cover-view-link{display:inline-block;margin-top:19px;font-size:12px;color:var(--blue)}.book-author-link{display:block;width:fit-content;color:var(--muted);font-size:12px;margin-top:15px;padding:5px 0}.book-author-link:hover{color:var(--blue)}
.author-live{display:grid;grid-template-columns:220px minmax(0,700px);justify-content:center;align-items:start;gap:90px;border-bottom:1px solid var(--line)}
.author-live-photo{padding-top:8px}.author-portrait{width:100%;max-width:249px;background:#e9edf3;border-radius:3px;overflow:hidden}
.author-portrait img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.author-photo-note{font-size:10px;color:var(--muted);line-height:1.8;margin-top:12px}
.author-live-copy h2{font-size:38px;line-height:1.4;font-weight:500}.author-book-line{font-size:14px;color:var(--muted);margin-top:9px}
.author-bio{font-size:16px;line-height:2.05;margin-top:27px;max-width:43em}.author-bio p+p{margin-top:20px}
.bio-source-note{color:var(--muted);font-size:11px;line-height:1.85;margin-top:22px}.author-live-copy>.quiet-link{display:inline-block;margin-top:24px;color:var(--blue)}
@media(max-width:1150px){.book-room .cover-slot.is-filled{width:145px}.book-room .book-identity{gap:22px}.author-live{grid-template-columns:190px minmax(0,1fr);gap:55px}}
@media(max-width:760px){.author-live{grid-template-columns:155px minmax(0,1fr);gap:32px}.author-bio{font-size:14px}.author-live-copy h2{font-size:32px}}
@media(max-width:620px){.book-room .cover-slot.is-filled{width:130px}.book-room .book-identity{gap:22px;margin:26px 0}.author-live{grid-template-columns:1fr;gap:27px}.author-live-photo{width:165px;padding-top:0}.author-live-copy h2{font-size:30px}.author-book-line{font-size:12px}.author-bio{font-size:15px;line-height:2;margin-top:21px}.bio-source-note{font-size:10px}.author-live-copy>.quiet-link{font-size:12px;margin-top:20px}.author-photo-note{font-size:9px}}
@media(max-width:360px){.book-room .cover-slot.is-filled{width:110px}.book-room .book-identity{gap:18px}.book-room .cover-view-link,.book-author-link{font-size:11px}.author-live-photo{width:145px}}
.catalog-page { --catalog-reading: 17px; }
.model-card figure:has(img[data-original="true"]){background:#fff;border-bottom:1px solid var(--line)}
.model-card figure img[data-original="true"],.model-hero-art img[data-original="true"]{mix-blend-mode:normal;background:#fff}
.model-hero-art.original-hero{border-radius:6px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--blue);padding:24px}
.original-ribbon{display:block;color:var(--blue);font-size:12px;margin-bottom:18px}.original-hero .catalog-text-link{font-size:13px;margin-top:17px;line-height:1.9}
.model-detail-figure.original-figure{background:#fff}.model-dialog .dialog-image-scroll:has(img[data-original="true"]){background:#fff}
.selected-model-preview{border-bottom:1px solid var(--line)}.selected-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.selected-preview-grid>a{display:block;min-width:0;padding-bottom:22px;border-bottom:1px solid var(--line)}.selected-preview-grid img{width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;background:white;padding:12px;border:1px solid var(--line)}.selected-preview-grid span{display:block;font-size:11px;color:var(--blue);margin-top:18px}.selected-preview-grid h3{font-size:23px;font-weight:500;margin-top:9px}.selected-preview-grid p{font-size:13px;color:var(--muted);margin-top:10px}.selected-preview-grid>a:hover h3{color:var(--blue)}
.culture-model-link{display:block;margin-top:18px;font-size:14px;color:var(--blue);text-decoration:underline;text-underline-offset:5px}
@media(max-width:620px){.selected-preview-grid{grid-template-columns:1fr;gap:28px}.selected-preview-grid img{max-height:245px}.selected-preview-grid h3{font-size:22px}.selected-preview-grid span{margin-top:13px}.model-hero-art.original-hero{padding:18px}.original-hero .catalog-text-link{font-size:12px}.culture-model-link{font-size:13px}}
:is(.catalog-page, .expanded-shell) #navigation { gap: clamp(13px, 1.7vw, 27px); }
:is(.catalog-page, .expanded-shell) #navigation > a[aria-current="page"] { color: var(--blue); text-decoration: underline; text-underline-offset: 9px; text-decoration-thickness: 2px; }
:is(.catalog-page, .expanded-shell) .head-inner { gap: 24px; }
.catalog-shell { width: calc(100% - 96px); max-width: var(--max); margin-inline: auto; }
.catalog-hero { padding-top: 30px; padding-bottom: 64px; }
.catalog-page .breadcrumb { flex-wrap: wrap; margin-bottom: 34px; }
.catalog-hero-grid { display: grid; grid-template-columns: 1fr 1.05fr; align-items: center; gap: 64px; }
.catalog-page h1 { font-size: clamp(36px, 4.1vw, 58px); font-weight: 500; line-height: 1.34; letter-spacing: -1.6px; }
.catalog-deck { color: var(--muted); font-size: 18px; line-height: 1.95; margin-top: 25px; max-width: 42em; }
.catalog-count { border-left: 2px solid var(--blue); padding-left: 14px; margin-top: 29px; font-size: 13px; max-width: 32em; color: var(--muted); }
.catalog-text-link { color: var(--blue); display: inline-flex; gap: 20px; align-items: center; min-height: 44px; font-size: 14px; line-height: 1.6; }
.catalog-text-link:hover { text-decoration: underline; text-underline-offset: 5px; }
.catalog-hero .catalog-text-link { margin-top: 23px; }
.model-hero-art { position: relative; background: var(--pale); padding: 22px 38px 24px; border-radius: 100px 0 0 0; }
.model-hero-art img { width: 100%; height: auto; object-fit: contain; mix-blend-mode: multiply; }
.model-index .growth-hero-grid { grid-template-columns: minmax(0,.85fr) minmax(0,1.25fr); gap: 40px; }
.model-index .growth-hero-grid h1 { font-size: clamp(30px,3.4vw,47px); line-height: 1.5; }
.hero-image-link { display: block; width: 100%; }
.model-index .model-hero-art img { display: block; width: 100%; height: auto; min-height: 0; max-height: none; aspect-ratio: auto; object-fit: contain; }
@media(max-width:760px){.model-index .growth-hero-grid{grid-template-columns:1fr;gap:26px}.model-index .growth-hero-grid h1{font-size:clamp(30px,7vw,41px)}}
.model-hero-art figcaption, .culture-hero-art figcaption { color: var(--muted); font-size: 12px; text-align: center; margin-top: 7px; }
.art-side-label { position: absolute; right: 17px; top: 65px; writing-mode: vertical-rl; color: var(--blue); letter-spacing: 3px; font-size: 11px; }
.catalog-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 34px; }
.catalog-section-heading h2, .culture-section-label h2 { font-size: 34px; font-weight: 500; line-height: 1.5; letter-spacing: -.8px; }
.catalog-section-heading > p { color: var(--muted); font-size: 13px; max-width: 32em; }
.model-catalog { border-top: 1px solid var(--line); padding-top: 55px; padding-bottom: 40px; }
.catalog-filter { display: flex; justify-content: space-between; align-items: end; gap: 25px; border-bottom: 1px solid var(--line); padding-bottom: 22px; }
.catalog-filter-options { display: flex; flex-wrap: wrap; gap: 6px; }
.catalog-filter-options button { min-height: 46px; padding: 9px 15px; background: transparent; font-size: 14px; border: 1px solid transparent; }
.catalog-filter-options button span { margin-left: 9px; font-size: 12px; opacity: .8; }
.catalog-filter-options button[aria-pressed="true"] { background: var(--blue); border-color: var(--blue); color: #fff; }
.catalog-filter-options button:hover:not([aria-pressed="true"]) { background: var(--pale); border-color: var(--line); }
.catalog-search { display: flex; flex-direction: column; gap: 5px; font-size: 12px; color: var(--muted); min-width: 235px; }
.catalog-search input { background: var(--white); border: 1px solid var(--line); padding: 10px 13px; color: var(--ink); width: 100%; border-radius: 0; font-size: 16px; min-height: 46px; }
.catalog-search input::placeholder { color: var(--muted); opacity: 1; }
.catalog-results { min-height: 46px; padding: 14px 0; font-size: 12px; color: var(--muted); overflow-wrap: anywhere; }
.model-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; align-items: start; }
.model-card { min-width: 0; border-bottom: 1px solid var(--line); }
.model-card-link { display: block; padding-bottom: 25px; }
.model-card figure { background: #eef1f8; border-top: 2px solid var(--blue); padding: 12px 12px 13px; }
.model-thumb { aspect-ratio: 4/3; width: 100%; display: grid; place-items: center; min-width: 0; min-height: 0; }
.model-card .model-thumb img { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; aspect-ratio: auto; object-fit: contain; mix-blend-mode: multiply; }
.model-card figcaption { font-size: 11px; color: var(--muted); text-align: center; padding-top: 5px; }
.model-card-copy { padding-top: 22px; }
.catalog-eyebrow { font-size: 12px; color: var(--muted); letter-spacing: .3px; line-height: 1.8; }
.model-card .catalog-eyebrow { display: flex; flex-wrap: wrap; gap: 6px 14px; justify-content: space-between; color: var(--blue); }
.model-card .catalog-eyebrow span { color: var(--muted); }
.model-card h2 { font-size: 24px; font-weight: 500; margin-top: 11px; }
.model-use { font-size: 15px; margin-top: 14px; line-height: 1.85; min-height: 56px; }
.model-scene { color: var(--muted); font-size: 13px; line-height: 1.85; margin-top: 15px; }
.model-scene > span { display: block; font-size: 11px; color: var(--blue); margin-bottom: 4px; }
.model-card .catalog-text-link { margin-top: 16px; }
.model-card-link:hover h2 { color: var(--blue); }
.model-card-link:hover figure { background: #e6ebf8; }
.catalog-empty { text-align: center; background: var(--white); border: 1px dashed var(--line); padding: 64px 22px; }
.catalog-empty h3 { font-size: 24px; font-weight: 500; }
.catalog-empty p { margin: 14px 0 23px; color: var(--muted); }
.catalog-button { display: inline-flex; align-items: center; justify-content: center; background: var(--blue); color: #fff; min-height: 46px; padding: 11px 20px; font-size: 14px; border: 1px solid var(--blue); }
.catalog-button:hover { background: #203d9e; }
.catalog-boundary { display: grid; grid-template-columns: 135px 1fr; gap: 28px; padding: 28px 0; margin-top: 38px; border-top: 1px solid var(--line); font-size: 13px; }
.catalog-boundary strong { font-weight: 500; color: var(--blue); }
.catalog-boundary p { color: var(--muted); max-width: 60em; }
.catalog-note { color: var(--muted); font-size: 12px; line-height: 1.9; margin-top: 20px; }
.culture-hero-art { padding: 15px 15px 25px; position: relative; border-bottom: 1px solid var(--blue); }
.culture-hero-art::before { content: ""; position: absolute; inset: 10% 0 12% 15%; z-index: -1; border: 1px solid var(--line); border-radius: 50% 50% 0 0; }
.culture-hero-art img { width: 100%; height: auto; mix-blend-mode: multiply; }
.culture-jump { display: flex; gap: 22px; flex-wrap: wrap; margin-top: 30px; }
.culture-jump a { color: var(--blue); font-size: 13px; padding: 10px 0; border-bottom: 1px solid var(--blue); }
.culture-jump a:hover { border-bottom-width: 3px; }
.culture-feature { display: grid; grid-template-columns: .75fr 1.3fr; gap: 95px; padding: 66px 0; border-top: 1px solid var(--line); align-items: start; }
.culture-section-label { position: relative; }
.culture-glyph { display: block; font-family: var(--serif); font-size: 120px; line-height: 1.3; color: var(--blue); opacity: .17; padding: 10px 0 0 38px; }
.culture-reading-link { display: block; padding: 6px 0; max-width: 670px; }
.culture-reading-link h3 { font-size: 27px; font-weight: 500; line-height: 1.6; margin-top: 14px; }
.culture-reading-link > p { color: var(--muted); font-size: 15px; line-height: 1.95; margin-top: 17px; }
.culture-reading-link .catalog-text-link { margin-top: 23px; }
.culture-reading-link:hover h3 { color: var(--blue); }
.source-ribbon { display: flex; justify-content: space-between; gap: 14px; padding-top: 26px; margin-top: 15px; border-top: 1px solid var(--line); font-family: var(--serif); font-size: 21px; color: var(--blue); }
.reading-stages { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 38px; }
.reading-stages > div { padding: 22px 17px; border-left: 1px solid #bbc9ec; background: var(--pale); }
.reading-stages > div:nth-child(2) { margin-top: 18px; }
.reading-stages > div:nth-child(3) { margin-top: 36px; }
.reading-stages span { font-family: var(--serif); font-size: 26px; color: var(--blue); }
.reading-stages p { color: var(--muted); font-size: 12px; margin-top: 10px; }
.culture-news { padding-top: 60px; border-top: 1px solid var(--line); padding-bottom: 60px; }
.news-list { border-top: 1px solid var(--line); }
.news-entry { display: grid; grid-template-columns: 155px minmax(0, 1fr); gap: 38px; padding: 34px 0; border-bottom: 1px solid var(--line); }
.news-calendar { color: var(--blue); display: flex; flex-direction: column; padding-top: 4px; }
.news-calendar strong { font-size: 37px; font-weight: 400; line-height: 1.4; }
.news-calendar span { font-size: 12px; }
.news-calendar span:last-child { color: var(--muted); margin-top: 7px; font-size: 11px; }
.news-entry h3 { font-size: 25px; line-height: 1.6; font-weight: 500; margin-top: 10px; }
.news-entry h3 a:hover { color: var(--blue); }
.news-entry h3 span { color: var(--blue); margin-left: 12px; }
.news-entry h3 + p { color: var(--muted); font-size: 14px; margin-top: 12px; }
.news-dates { display: flex; flex-wrap: wrap; gap: 13px 35px; margin: 21px 0 16px; }
.news-dates div { display: flex; flex-direction: column; gap: 3px; }
.news-dates dt { font-size: 11px; color: var(--muted); }
.news-dates dd { margin: 0; font-size: 13px; font-variant-numeric: tabular-nums; }
.news-source { font-size: 12px; color: var(--muted); }
.news-source a { color: var(--blue); display: inline-block; padding: 8px 0; margin-left: 15px; }
.catalog-detail-hero { padding-top: 30px; padding-bottom: 48px; }
.catalog-detail-hero h1 { max-width: 23em; font-size: clamp(34px, 3.6vw, 49px); line-height: 1.5; }
.catalog-detail-hero .catalog-deck { max-width: 50em; font-size: 18px; }
.catalog-meta { display: flex; flex-wrap: wrap; gap: 8px 23px; margin-top: 23px; font-size: 12px; color: var(--muted); }
.catalog-reading-ground { background: var(--white); border-block: 1px solid var(--line); }
.catalog-reading-layout { display: grid; grid-template-columns: 220px minmax(0, 830px); gap: clamp(40px, 7vw, 108px); padding-top: 56px; padding-bottom: 65px; justify-content: start; align-items: start; }
.catalog-sidebar { position: sticky; top: 127px; font-size: 12px; }
.catalog-sidebar > p { color: var(--muted); margin-bottom: 15px; }
.catalog-sidebar nav { display: flex; flex-direction: column; border-left: 1px solid var(--line); }
.catalog-sidebar nav a { display: block; padding: 8px 0 8px 16px; color: var(--muted); line-height: 1.65; }
.catalog-sidebar nav a:hover { color: var(--blue); border-left: 2px solid var(--blue); padding-left: 14px; }
.catalog-sidebar > a { margin-top: 23px; font-size: 12px; }
.catalog-prose { min-width: 0; font-size: var(--catalog-reading); line-height: 2.05; color: #35404e; }
.catalog-prose h2 { font-size: 27px; font-weight: 500; line-height: 1.55; margin-bottom: 23px; color: var(--ink); letter-spacing: -.4px; }
.catalog-prose section { margin-bottom: 45px; }
.catalog-prose section[id] { scroll-margin-top: 126px; }
.catalog-prose p + p { margin-top: 22px; }
.catalog-prose ul, .catalog-prose ol { margin: 22px 0; padding-left: 1.5em; }
.catalog-prose li + li { margin-top: 10px; }
.catalog-prose .catalog-eyebrow { margin-bottom: 12px; }
.catalog-prose .catalog-note { font-size: 12px; }
.model-detail-figure { padding: 22px 25px 18px; background: var(--paper); border: 1px solid var(--line); }
.model-detail-figure img { width: 100%; height: auto; object-fit: contain; }
.model-detail-figure figcaption, .culture-detail-art figcaption { font-size: 12px; color: var(--muted); text-align: center; line-height: 1.8; margin-top: 8px; }
.diagram-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 25px; margin-top: 20px; }
.diagram-actions .catalog-text-link { font-size: 12px; }
.catalog-prose .diagram-text-list { list-style: none; padding: 0; border-top: 1px solid var(--line); }
.diagram-text-list li { padding: 13px 0 13px 22px; border-bottom: 1px solid var(--line); position: relative; }
.diagram-text-list li::before { content: ""; width: 6px; height: 6px; background: var(--blue); position: absolute; top: 27px; left: 0; }
.catalog-prose .diagram-text-list li + li { margin-top: 0; }
.catalog-source-divider { border-top: 1px solid var(--blue); margin: 43px 0 32px; padding-top: 18px; }
.catalog-source-divider > span { font-size: 13px; color: var(--blue); }
.catalog-source-divider p { font-size: 12px; color: var(--muted); line-height: 1.85; margin-top: 9px; }
.catalog-source-divider .model-scope-note { padding: 14px 18px; background: var(--pale); border-left: 2px solid var(--blue); }
.catalog-exercise { background: var(--paper); border-left: 3px solid var(--blue); padding: 27px 32px; }
.catalog-exercise > p:last-child { font-size: 12px; color: var(--muted); }
.catalog-prose .catalog-sources { padding-top: 24px; border-top: 1px solid var(--line); font-size: 13px; color: var(--muted); line-height: 1.9; }
.catalog-sources h2 { font-size: 20px; }
.catalog-sources a { color: var(--blue); text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.catalog-prose .catalog-related { margin: 45px 0 0; }
.catalog-related > div { display: flex; flex-direction: column; }
.catalog-related a { padding: 17px 0; border-top: 1px solid var(--line); font-size: 16px; color: var(--ink); display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.catalog-related a:hover, .catalog-related a span { color: var(--blue); }
.culture-detail-art { display: grid; grid-template-columns: minmax(0, 1fr) 170px; align-items: center; padding: 10px 28px 10px 5px; margin-bottom: 42px; background: var(--paper); border-bottom: 1px solid var(--blue); }
.culture-detail-art img { width: 100%; height: auto; max-height: 275px; }
.culture-detail-art figcaption { text-align: left; }
.news-source-panel { background: var(--paper); border-left: 2px solid var(--blue); padding: 26px 30px; margin-bottom: 43px; font-size: 13px; }
.news-source-panel .news-dates { margin-top: 8px; }
.news-source-panel .news-dates dd { font-size: 16px; }
.news-source-panel p + p { margin-top: 10px; }
.news-source-panel .catalog-text-link { margin-top: 10px; }
.catalog-prose #source-summary > section { margin-top: 27px; }
.model-dialog { width: min(1100px, calc(100vw - 40px)); max-width: none; max-height: calc(100dvh - 40px); border: 1px solid var(--line); padding: 24px; color: var(--ink); background: var(--paper); overflow: auto; }
.model-dialog::backdrop { background: rgb(20 30 55 / .73); }
.model-dialog:not([open]) { display: none; }
.dialog-toolbar { display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.dialog-toolbar h2 { font-size: 23px; font-weight: 500; }
.dialog-toolbar button, .dialog-zoom-controls button { min-height: 44px; padding: 8px 16px; border: 1px solid var(--blue); background: #fff; color: var(--blue); flex-shrink: 0; font-size: 14px; }
.model-dialog > p { margin-top: 12px; color: var(--muted); font-size: 12px; }
.dialog-zoom-controls { display: flex; gap: 18px; align-items: center; margin: 16px 0; }
.dialog-zoom-controls > span { font-size: 12px; color: var(--muted); }
.dialog-image-scroll { overflow: auto; max-height: 60dvh; border: 1px solid var(--line); overscroll-behavior: contain; }
.dialog-image-scroll img { width: 100%; height: auto; max-width: none; }
.dialog-image-scroll.is-zoomed img { width: 150%; }
.model-dialog > a { display: inline-block; min-height: 44px; margin-top: 10px; color: var(--blue); font-size: 13px; padding-top: 8px; }
.catalog-dialog-open { overflow: hidden; }
.catalog-page .catalog-prose a:focus-visible, .catalog-page [tabindex]:focus-visible { outline: 3px solid var(--blue); outline-offset: 4px; }
@media (max-width: 1150px) {
  .catalog-shell { width: calc(100% - 64px); }
  :is(.catalog-page, .expanded-shell) #navigation { gap: 14px; font-size: 12px; }
  :is(.catalog-page, .expanded-shell) .nav-action { padding-inline: 13px; }
  :is(.catalog-page, .expanded-shell) .nav-action span { margin-left: 8px; }
  .catalog-hero-grid { gap: 35px; }
  .catalog-deck { font-size: 16px; }
  .model-hero-art { padding-inline: 20px; }
  .model-grid { gap: 22px; }
  .model-card h2 { font-size: 22px; }
  .catalog-filter { align-items: start; }
  .catalog-filter-options button { padding-inline: 11px; }
  .culture-feature { gap: 55px; }
  .catalog-reading-layout { grid-template-columns: 180px minmax(0, 1fr); gap: 45px; }
}
@media (max-width: 1000px) and (min-width: 901px) {
  :is(.catalog-page, .expanded-shell) .head-inner { gap: 14px; }
  .catalog-page .brand > span { font-size: 21px; }
  .catalog-page .brand svg { width: 35px; height: 35px; }
  :is(.catalog-page, .expanded-shell) #navigation { gap: 11px; }
}
@media (max-width: 900px) {
  .catalog-hero-grid { gap: 26px; }
  .catalog-page h1 { font-size: 38px; }
  .catalog-hero { padding-bottom: 42px; }
  .model-hero-art { padding: 16px 12px 20px; border-top-left-radius: 70px; }
  .art-side-label { display: none; }
  .catalog-deck { font-size: 15px; }
  .catalog-count { font-size: 12px; }
  .catalog-filter { flex-direction: column; gap: 14px; }
  .catalog-search { width: min(100%, 400px); }
  .model-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 24px; }
  .catalog-section-heading h2, .culture-section-label h2 { font-size: 29px; }
  .catalog-section-heading { align-items: start; }
  .culture-feature { grid-template-columns: .7fr 1.3fr; gap: 32px; padding-block: 48px; }
  .culture-reading-link h3 { font-size: 24px; }
  .source-ribbon { font-size: 17px; }
  .reading-stages > div { padding-inline: 10px; }
  .reading-stages p { font-size: 11px; }
  .news-entry { grid-template-columns: 115px minmax(0, 1fr); gap: 25px; }
  .catalog-reading-layout { grid-template-columns: 1fr; gap: 28px; padding-top: 30px; }
  .catalog-sidebar { position: static; }
  .catalog-sidebar nav { flex-direction: row; flex-wrap: wrap; gap: 5px 18px; border-left: 0; border-bottom: 1px solid var(--line); padding-bottom: 15px; }
  .catalog-sidebar nav a { padding: 6px 0; }
  .catalog-sidebar nav a:hover { padding-left: 0; border-left: 0; text-decoration: underline; }
  .catalog-sidebar > a { margin-top: 8px; }
  .catalog-prose section[id] { scroll-margin-top: 105px; }
  .catalog-detail-hero h1 { font-size: 38px; }
}
@media (max-width: 620px) {
  .catalog-shell { width: calc(100% - 40px); }
  .catalog-page .site-head #navigation { font-size: 14px; gap: 0; }
  .catalog-hero, .catalog-detail-hero { padding-top: 22px; }
  .catalog-page .breadcrumb { font-size: 11px; margin-bottom: 27px; }
  .catalog-hero-grid { grid-template-columns: 1fr; gap: 25px; }
  .catalog-page h1 { font-size: clamp(33px, 8vw, 46px); letter-spacing: -.8px; }
  .catalog-deck { font-size: 15px; margin-top: 18px; }
  .catalog-count { margin-top: 21px; max-width: 30em; }
  .catalog-hero .catalog-text-link { margin-top: 16px; }
  .model-hero-art { padding: 10px 28px 18px; border-top-left-radius: 65px; }
  .model-hero-art img { max-height: none; object-fit: contain; }
  .model-hero-art figcaption, .culture-hero-art figcaption { font-size: 11px; }
  .catalog-hero { padding-bottom: 38px; }
  .catalog-section-heading { flex-direction: column; gap: 18px; margin-bottom: 25px; }
  .catalog-section-heading h2, .culture-section-label h2 { font-size: 28px; }
  .catalog-section-heading > p { font-size: 12px; }
  .model-catalog { padding-top: 34px; padding-bottom: 20px; }
  .catalog-filter { gap: 20px; }
  .catalog-filter-options { display: grid; grid-template-columns: 1fr 1fr; width: 100%; gap: 8px; }
  .catalog-filter-options button { border-color: var(--line); font-size: 13px; text-align: left; padding-inline: 13px; }
  .catalog-search { width: 100%; }
  .catalog-results { min-height: 49px; padding-block: 14px; }
  .model-grid { grid-template-columns: 1fr; gap: 30px; }
  .model-card figure { padding: 8px 20px 14px; }
  .model-card .model-thumb { max-height: 315px; }
  .model-card-copy { padding-top: 20px; }
  .model-card h2 { font-size: 25px; }
  .model-use { min-height: auto; margin-top: 12px; }
  .model-scene { font-size: 13px; }
  .catalog-boundary { grid-template-columns: 1fr; gap: 10px; margin-top: 29px; padding-block: 23px; }
  .catalog-boundary p { font-size: 12px; }
  .culture-jump { gap: 20px; margin-top: 22px; }
  .culture-jump a { font-size: 12px; }
  .culture-hero-art { padding: 0 0 19px; }
  .culture-hero-art img { max-height: 295px; }
  .culture-feature { grid-template-columns: 1fr; gap: 25px; padding: 38px 0; }
  .culture-section-label h2 br { display: none; }
  .culture-section-label h2 { max-width: 12em; }
  .culture-glyph { position: absolute; right: 8px; top: -3px; font-size: 80px; padding: 0; }
  .culture-reading-link h3 { font-size: 23px; line-height: 1.6; }
  .culture-reading-link > p { font-size: 14px; }
  .source-ribbon { font-size: 19px; gap: 9px; padding-top: 21px; }
  .reading-stages { margin-bottom: 23px; }
  .reading-stages > div { padding: 16px 10px; }
  .reading-stages span { font-size: 24px; }
  .culture-news { padding-top: 38px; padding-bottom: 35px; }
  .news-entry { grid-template-columns: 1fr; gap: 19px; padding-block: 28px; }
  .news-calendar { flex-direction: row; align-items: baseline; gap: 12px; }
  .news-calendar strong { font-size: 28px; }
  .news-calendar span:last-child { margin-top: 0; font-size: 10px; }
  .news-entry h3 { font-size: 23px; }
  .news-dates { gap: 10px 23px; }
  .news-dates dd { font-size: 12px; }
  .news-source a { margin-left: 0; display: block; }
  .catalog-detail-hero { padding-bottom: 31px; }
  .catalog-detail-hero h1 { font-size: 32px; line-height: 1.5; }
  .catalog-detail-hero .catalog-deck { font-size: 15px; }
  .catalog-meta { font-size: 11px; gap: 7px 16px; margin-top: 20px; }
  .catalog-reading-layout { padding-top: 25px; padding-bottom: 38px; gap: 20px; }
  .catalog-sidebar nav { gap: 5px 17px; }
  .catalog-sidebar nav a { font-size: 11px; }
  .catalog-prose { --catalog-reading: 16px; line-height: 2; }
  .catalog-prose h2 { font-size: 24px; margin-bottom: 20px; }
  .catalog-prose section { margin-bottom: 34px; }
  .catalog-prose section[id] { scroll-margin-top: 96px; }
  .model-detail-figure { padding: 13px 5px 16px; }
  .model-detail-figure figcaption { font-size: 11px; }
  .diagram-actions { gap: 9px 18px; margin-top: 17px; }
  .catalog-button { padding: 10px 15px; font-size: 13px; }
  .catalog-source-divider { margin-top: 34px; margin-bottom: 25px; }
  .catalog-exercise { padding: 24px 21px; }
  .catalog-related a { font-size: 15px; }
  .culture-detail-art { grid-template-columns: 1fr; padding: 7px 10px 17px; margin-bottom: 30px; }
  .culture-detail-art img { max-height: 225px; }
  .culture-detail-art figcaption { text-align: center; font-size: 11px; }
  .news-source-panel { padding: 22px 20px; margin-bottom: 32px; }
  .news-source-panel .news-dates dd { font-size: 14px; }
  .model-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); padding: 15px; }
  .dialog-toolbar { align-items: start; gap: 12px; }
  .dialog-toolbar h2 { font-size: 19px; }
  .dialog-toolbar button { font-size: 12px; padding-inline: 10px; }
  .dialog-zoom-controls { gap: 12px; }
  .dialog-zoom-controls button { font-size: 12px; }
  .dialog-image-scroll { max-height: 55dvh; }
}
@media (prefers-reduced-motion: reduce) {
  .catalog-page { scroll-behavior: auto; }
}
@media print {
  .catalog-page .catalog-sidebar, .catalog-page .diagram-actions, .catalog-page .catalog-filter, .catalog-page .catalog-related, .catalog-page .culture-jump, .model-dialog { display: none !important; }
  .catalog-shell { width: 100%; }
  .catalog-reading-layout { display: block; padding: 0; }
  .catalog-reading-ground { border: 0; }
  .catalog-prose { font-size: 12pt; }
  .catalog-prose h2 { break-after: avoid; }
  .model-detail-figure, .news-entry { break-inside: avoid; }
  .model-detail-figure img { max-height: 350px; }
  .catalog-detail-hero h1 { font-size: 25pt; }
}
