/* Public reading/catalogue system. Same palette and Japanese gothic as home.
   13 metadata / 15 descriptions / 16 reading / 18 cards / 24–32 headings.
   Rem units follow text zoom; content width limits long reading lines. */
body.site-polished{color-scheme:light;--paper:#262626;--ink:#fff;--hall:#fff;--chalk:#262626;--chalk-dim:#595959;--muted:#595959;--line:#dedede;--accent:#3158b8;--surface:#fff;--panel:#f5f5f5;--gutter:24px;--sans:var(--font-body);--serif:var(--font-display);--weather-canvas:#fff;--weather-panel:#f5f5f5;--weather-accent:#3158b8;background:#fff;color:#262626;font-family:var(--sans);font-size:var(--type-body);line-height:var(--leading-body)}
body.site-polished[data-daypart],body.site-polished[data-city-weather]{background:#fff;color:#262626;--paper:#262626;--ink:#fff;--hall:#fff;--chalk:#262626;--chalk-dim:#595959;--muted:#595959;--accent:#3158b8}
.site-polished *, .site-polished *::before,.site-polished *::after{box-sizing:border-box}
.site-polished :is(h1,h2,h3,.wk-object,.wk-title,.th-title,.th-object-title){font-family:var(--serif);font-weight:500;letter-spacing:.02em;line-height:var(--leading-heading);word-break:normal;overflow-wrap:anywhere;text-wrap:pretty}
.site-polished :is(h1,.intro h1,.detail h1,.event-detail h1,.wk-title,.th-title){font-size:var(--type-page-title);line-height:var(--leading-heading)}
.site-polished .detail h1,.site-polished .wk-title{word-break:keep-all;overflow-wrap:anywhere;text-wrap:wrap}
.site-polished :is(h2,.event-context h2,.event-connections h2){font-size:var(--type-section-title)}
.site-polished h3{font-size:var(--type-card-title)}
.site-polished :is(p,li,dd){overflow-wrap:anywhere}
.site-polished :is(a,button,summary,select,input,textarea):focus-visible{outline:3px solid #3158b8;outline-offset:4px}
.site-polished :is(input,select,textarea,button){font-family:var(--sans);font-size:var(--type-body)}
.site-polished :is(button,select,summary){min-height:44px}
.site-polished :is(main,.masthead,.footer){max-width:1168px}
.site-polished :is(.masthead,.site-header){min-height:80px;padding-block:20px;border-bottom:1px solid #dedede;background:#fff;color:#262626;gap:16px}
.site-polished .masthead .brand{display:flex;align-items:center;max-width:200px;width:52%;flex-shrink:0}
.site-polished .masthead .brand img{display:block;width:100%;height:auto;filter:brightness(0)}
.site-polished .masthead>a:last-child:not(.brand){max-width:none;font-size:.8125rem;min-height:44px;display:flex;align-items:center}
.site-polished .site-header .brand-lockup-image{filter:brightness(0)}
.site-polished .intro{padding:40px 0 24px}
.site-polished .intro h1{margin-bottom:16px}
.site-polished :is(.lead,.collection-lead,.wk-lead,.detail-hook,.event-detail .detail-hook){color:#595959;font-size:var(--type-lead);line-height:var(--leading-body);max-width:46rem}
.site-polished :is(.eyebrow,.wk-category,.th-eyebrow,.relation){color:#3158b8;font-size:var(--type-meta);line-height:1.7;letter-spacing:.025em}
.site-polished :is(.creator,.detail-creator,.wk-byline,.checked,.credits,.footer,.source,.player-status,.official-media figcaption){color:#595959;font-size:var(--type-meta);line-height:1.75}
.site-polished :is(.primary,.wk-route,.event-card .card-action){background:#3158b8;color:#fff;border:1px solid #3158b8;border-radius:4px;font-size:.9375rem;font-weight:500;padding:12px 18px;min-height:48px;line-height:1.6;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;max-width:100%;white-space:normal}
.site-polished :is(.primary,.wk-route,.event-card .card-action):hover{background:#254594;color:#fff}
.site-polished .city-hero{border:0;background:#f5f5f5;border-radius:6px;overflow:hidden;margin-top:24px;grid-template-columns:1.2fr 1fr}
.site-polished .city-panorama{height:190px}
.site-polished .city-heading h1{font-size:1.75rem}
.site-polished .city-heading h1 span{font-family:var(--sans);font-size:1rem;display:block;margin:6px 0 0}
.site-polished .category-nav{gap:8px;flex-wrap:wrap;overflow:visible}
.site-polished .category-nav :is(a,span){min-width:0;padding:10px 14px;border-radius:4px;font-size:.875rem;gap:8px;min-height:44px}
.site-polished .category-nav [aria-current]{background:#3158b8;border-color:#3158b8;color:#fff}
.site-polished .work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.site-polished .work-card{display:flex;flex-direction:column;min-width:0;border:1px solid #dedede;border-radius:6px;overflow:hidden;background:#fff}
.site-polished .card-body{padding:20px;gap:0}
.site-polished .card-body h2{font-size:var(--type-card-title);margin:0 0 8px}
.site-polished .card-body h2 a{text-decoration:none}
.site-polished .card-body .relation{margin-bottom:10px}
.site-polished .card-body .creator{margin-bottom:12px}
.site-polished .card-hook{font-size:var(--type-body);line-height:var(--leading-body);margin-bottom:16px}
.site-polished .card-links{margin:auto 0 0;display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap}
.site-polished .card-links>a{min-height:44px;display:inline-flex;align-items:center;font-size:.875rem}
.site-polished .card-links .primary{min-height:44px;padding:10px 14px}
.site-polished .official-media{margin:0;max-width:100%;background:#f5f5f5}
.site-polished .official-media iframe{display:block;border:0;width:100%;height:auto;aspect-ratio:16/9;min-height:200px;background:#f5f5f5}
.site-polished .official-media figcaption{padding:8px 16px;margin:0}
.site-polished .official-media figcaption a{color:inherit}
.site-polished .official-media.cover{padding:20px;display:flex;flex-direction:column;align-items:center}
.site-polished .official-media.cover img{display:block;max-width:100%;width:auto;height:210px;object-fit:contain}
.site-polished .official-media.album{padding:20px;display:flex;flex-direction:column;align-items:center}
.site-polished .official-media.album iframe{width:170px;height:170px;min-height:170px;aspect-ratio:1}
.site-polished .detail{max-width:760px;margin:40px auto 64px}
.site-polished .detail>.official-media{margin:24px 0}
.site-polished .detail>.destination{margin-top:20px}
.site-polished .background{font-size:.9375rem;border-color:#dedede}
.site-polished .background summary{font-weight:500;color:#262626}
.site-polished .quick-grid a,.site-polished .feature,.site-polished .connection{border-color:#dedede;background:#f5f5f5;border-radius:6px}
.site-polished .feature{padding:24px}
.site-polished .city-caption h2{font-size:1.5rem}
.site-polished #event-filters{background:#f5f5f5;border-color:#dedede;padding:20px}
.site-polished #event-filters :is(label,select){color:#262626;font-size:.9375rem}
.site-polished #event-filters select{background:#fff;border-color:#999;min-height:48px}
.site-polished .event-card{background:#fff;border-color:#dedede;border-radius:6px}
.site-polished .event-card a:hover,.site-polished .event-card a:focus-visible{background:#f5f5f5}
.site-polished .event-date{background:#f5f5f5;color:#262626}
.site-polished .event-date>span{font:500 1.25rem/1.4 var(--sans);font-variant-numeric:tabular-nums}
.site-polished .event-card h2{font-size:1.125rem;line-height:1.65}
.site-polished .event-card .event-city{font-size:.8125rem;color:#595959}
.site-polished .event-detail{max-width:760px}
.site-polished .event-detail .detail-hook,.site-polished .event-context p{font-size:1rem}
.site-polished .event-card .event-detail-link{color:#3158b8;font-size:.875rem}
.site-polished .event-photo figcaption{font-family:var(--sans);font-size:.75rem;background:rgba(38,38,38,.88)}
.site-polished :is(.wk-root,.th-root){max-width:760px}
.site-polished .wk-head{padding:32px 0 24px}
.site-polished .wk-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.site-polished .wk-entry{margin:0;padding:0 0 20px;border:1px solid #dedede;border-radius:6px;overflow:hidden}
.site-polished .wk-entry>:not(.official-media){margin-left:20px;margin-right:20px}
.site-polished .wk-entry .wk-category{margin-top:20px}
.site-polished .wk-entry .wk-object{font-size:1.125rem}
.site-polished .wk-work{padding:0 0 32px}
.site-polished .wk-work>.wk-object{font-size:1.5rem}
.site-polished .wk-work>.official-media{margin:20px 0}
.site-polished .work-official>a{background:#3158b8;color:#fff;border:1px solid #3158b8;border-radius:4px;font-size:.9375rem;font-weight:500;padding:12px 18px;min-height:48px;line-height:1.6;display:inline-flex;align-items:center;text-decoration:none;max-width:100%}
.site-polished :is(.wk-reading-text,.wk-info-text,.wk-relation,.th-reading,.th-claim-text){font-size:1rem;line-height:1.9}
.site-polished :is(.wk-current,.wk-info-label,.th-source){font-size:.8125rem;color:#595959}
.site-polished :is(.wk-info,.th-claim,.memory-note,.saved-empty,.saved-card){background:#f5f5f5;border-color:#dedede;color:#262626}
.site-polished .memory-note :is(textarea,input,button),.site-polished .saved-filters :is(input,select){background:#fff;color:#262626;border-color:#999;max-width:100%}
.site-polished .memory-stamps button[aria-pressed="true"]{background:#3158b8;color:#fff;border-color:#3158b8}
.site-polished .page-tools a{background:#fff;border-color:#dedede;color:#3158b8;font-family:var(--sans);font-size:.8125rem}
.site-polished .page-tools.is-scrolled{box-shadow:none}
.site-polished .footer{font-size:.8125rem}
.site-polished .city-weather{border-color:#dedede;background:#f5f5f5}
.site-polished .city-weather :is(select,button){background:#fff;color:#262626}
@media(max-width:600px){
 body.site-polished{--gutter:20px}
 .site-polished .weekly-feature-card{grid-template-columns:minmax(0,1fr)}
 .site-polished .weekly-feature-card>*{min-width:0}
 .site-polished .weekly-feature-card .jp-phrase{max-width:100%;overflow-wrap:anywhere;white-space:normal}
 .site-polished :is(main,.masthead,.footer){padding-inline:20px}
 .site-polished .masthead{min-height:72px;gap:8px;padding-block:12px}
 .site-polished .masthead .brand{max-width:190px;width:58%}
 .site-polished .masthead>a:last-child:not(.brand){font-size:.8125rem}
 .site-polished .city-hero{grid-template-columns:1fr}
 .site-polished .city-panorama{height:140px}
 .site-polished .city-heading{padding:20px}
 .site-polished .city-heading h1{font-size:1.5rem}
 .site-polished .category-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .site-polished .category-nav :is(a,span){justify-content:space-between;font-size:.875rem}
 .site-polished :is(.work-grid,.wk-entry-grid){grid-template-columns:1fr;gap:20px}
 .site-polished .detail{margin-top:28px}
 .site-polished :is(.wk-root,.th-root){width:100%}
 .site-polished .wk-head{padding-top:24px}
 .site-polished .primary{width:auto}
 .site-polished .card-links{align-items:flex-start}
 .site-polished :is(.event-card-body,.card-body){padding:20px}
 .site-polished .event-detail>.primary{width:100%}
 .site-polished .page-tools{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){.site-polished *{scroll-behavior:auto;transition:none}}

/* One continuous white canvas; neutral inset surfaces, dark text, blue actions.
   release.css uses --ink as TEXT, discover.css uses it as CANVAS. Do not mix them. */
html:has(body.site-polished){background:#fff;color-scheme:light}
body.site-polished{--hall-raised:#f5f5f5;--hall-line:#dedede;--hall-edge:#777;--bone:#fff;--bone-line:#dedede;--ink-dim:#595959;--signal:#3158b8;--signal-fill:#3158b8;--signal-lift:#254594;min-height:100vh}
body.site-polished:is(.shelf-page,.works-page,.thread-page,.suggest-page){--ink:#262626}
.site-polished :is(.site-menu,.detail-dialog){background:#fff;color:#262626}
.site-polished .footer-brand-image{filter:brightness(0)}
.site-polished :is(.site-menu-close,.dialog-close){background:#fff;color:#262626;font-size:.875rem;letter-spacing:0}
.site-polished .detail-dialog{box-shadow:0 16px 64px #171b2433}
.site-polished :is(.site-menu,.detail-dialog)::backdrop{background:#171b2466}
.site-polished :is(.city-culture-paths a,.open-button,.weekly-feature-secondary){background:#fff;color:#3158b8;border-color:#999}
.site-polished .city-culture-paths a:first-child{background:#3158b8;color:#fff;border-color:#3158b8}
.site-polished .media-plate .plate-inner{background:#f5f5f5}
.site-polished .city-hero{background:#fff;border-bottom:1px solid #dedede;border-radius:0;grid-template-columns:280px 1fr}
.site-polished .city-panorama{height:170px}
.site-polished .city-heading{padding:24px 32px}
.site-polished .city-heading h1{font-size:2rem;font-weight:500}
.site-polished .city-heading h1 span{display:inline;margin-left:.4em}
.site-polished .category-nav a:hover{background:#f5f5f5;color:#254594;border-color:#3158b8}
.site-polished .work-card{border:0;border-bottom:1px solid #dedede;border-radius:0}
.site-polished .card-body{padding:20px 0 24px}
.site-polished .card-hook{font-size:1rem;color:#595959}
.site-polished .card-body h2{font-size:1.375rem;font-weight:500;line-height:1.5}
.site-polished .official-media,.site-polished .official-media iframe{background:#f5f5f5}
.site-polished .official-media figcaption{background:#fff;padding:10px 0}
.site-polished .city-next{display:flex;gap:24px;flex-wrap:wrap;padding:24px 0;margin-top:24px;border-top:1px solid #dedede}
.site-polished .city-next a{display:flex;align-items:center;min-height:44px;font-size:1rem;color:#3158b8}
.site-polished :is(.site-menu-link,.site-menu-secondary-link){font-family:var(--sans);letter-spacing:0}
.site-polished :is(.growth-traversal,.growth-archive-item){border-color:#dedede}
.site-polished .growth-interest-button[aria-pressed="true"]{background:#3158b8;color:#fff;border-color:#3158b8}
.site-polished :is(.primary,.wk-route,.event-card .card-action,.work-official>a){background:#262626;border-color:#262626;color:#fff}
.site-polished :is(.primary,.wk-route,.event-card .card-action,.work-official>a):hover{background:#444;border-color:#444;color:#fff}
.site-polished :is(.category-nav [aria-current],.city-culture-paths a:first-child){background:#262626;border-color:#262626;color:#fff}
.site-polished .category-nav a[aria-current]:hover{background:#444;color:#fff}
.site-polished .card-body{display:flex;flex-direction:column;flex:1}
@media(max-width:600px){
 .site-polished .city-hero{grid-template-columns:1fr}
 .site-polished .city-panorama{height:150px}
 .site-polished .city-heading{padding:20px 0}
 .site-polished .city-heading h1{font-size:1.75rem}
 .site-polished .category-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Article hierarchy: the reading comes first; evidence remains addressable. */
.site-polished .research-article{max-width:42rem;font-size:1.0625rem;line-height:1.95}
.site-polished .research-article :is(p,li){line-height:1.95}
.site-polished .research-article p{margin:0 0 1.25em}
.site-polished .research-article h2{font-size:1.375rem;line-height:1.6;margin:0 0 1em}
.site-polished .research-article h3{line-height:1.65}
.site-polished .research-article>section,.site-polished .research-reading>section{margin:0;padding:32px 0;border-top:1px solid #dedede}
.site-polished .research-reading>section:first-child{border-top:0}
.site-polished .research-article .eyebrow{font-size:.8125rem;margin-bottom:8px}
.site-polished .research-article .research-byline{font-size:.8125rem;margin:0;padding-bottom:20px;border-bottom:0}
.site-polished .research-toc{margin:0;padding:12px 0;border-block:1px solid #dedede;gap:4px 20px;font-size:.875rem}
.site-polished .research-toc a{display:inline-flex;align-items:center;min-height:44px}
.site-polished .article-summary{margin:0 0 20px;padding:16px 0 16px 16px;border-left:2px solid #303030;font-size:1rem;overflow-wrap:anywhere}
.site-polished .article-summary h2{font-size:1rem;margin:0 0 10px}
.site-polished .article-summary ul{margin:0;padding-left:1.2em}
.site-polished .article-summary li{padding-left:.15em;margin:0 0 .55em;line-height:1.75}
.site-polished .article-summary li:last-child{margin-bottom:0}
/* Shared navigation and white reading surface; restrained city-specific accents. */
.site-polished[data-editorial-city="kichijoji"]{--city-accent:#285b43}
.site-polished[data-editorial-city="koenji"]{--city-accent:#713b58}
.site-polished[data-editorial-city="shimokitazawa"]{--city-accent:#245f69}
.site-polished[data-editorial-city="jinbocho"]{--city-accent:#75452b}
.site-polished[data-editorial-city] :is(.eyebrow,.relation){color:var(--city-accent)}
.site-polished[data-editorial-city] .city-hero{border-bottom:2px solid var(--city-accent)}
.site-polished[data-editorial-city] .article-summary{border-left-color:var(--city-accent)}
.site-polished[data-editorial-city] .city-heading h1{color:var(--city-accent)}
.site-polished[data-editorial-city] .city-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,40%);align-items:center;gap:16px}
.site-polished .city-motif{margin:0;min-width:0}
.site-polished .city-motif img{display:block;width:100%;height:auto;aspect-ratio:3/1;object-fit:contain}
.site-polished .city-motif figcaption{font-size:.75rem;line-height:1.6;color:#595959;margin-top:6px}
@media(max-width:360px){.site-polished[data-editorial-city] .city-heading{grid-template-columns:minmax(0,1fr) 100px;gap:8px}.site-polished .city-heading h1 span{display:block;margin-left:0}}
.site-polished .research-source{font-size:.9375rem;padding:24px 0}
.site-polished .research-source h3{font-size:1.0625rem}
.site-polished .research-article :is(section,div,li)[id]{scroll-margin-top:24px}
.site-polished .city-editorials summary{color:#262626}
.site-polished .other-cities{margin-top:40px}
@media(max-width:600px){.site-polished .research-article{font-size:1rem}.site-polished .research-article h2{font-size:1.25rem}}

/* Weekly city rotation: authored flex layout must not reveal off-week cards. */
.site-polished .work-card[hidden]{display:none}

.city-shortcuts{display:flex;flex-wrap:wrap;gap:12px 24px;margin:0 0 24px}
.city-shortcuts a{display:inline-flex;align-items:center;min-height:44px}
