/* SEEN layout only: preserve palette, type, copy, art and reading order. */
[data-seen-layout]{width:100%;min-width:0;grid-auto-flow:row;align-items:start!important}
[data-seen-card]{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;min-width:0;min-height:0!important;height:auto!important;align-self:start!important}
[data-seen-card]>:is(h2,h3,h4,p,figure){max-width:100%;overflow-wrap:break-word}
[data-seen-card]>figure{margin-inline:0}
[data-seen-card-action]{margin-top:auto!important;padding-top:16px}
/* Similar-length cards may stretch within their own row, never across the whole grid. */
[data-seen-layout="aligned"]{align-items:stretch!important}
[data-seen-layout="aligned"]>[data-seen-card]{align-self:stretch!important}
/* A complete eight-card index: four plus four, rather than three plus three plus two. */
.city-grid[data-seen-cards="8"]{grid-template-columns:repeat(4,minmax(0,1fr))!important}
/* Count-driven spans fill each row without moving items out of source order. */
@media(min-width:851px){
 [data-seen-cards="2"],[data-seen-cards="4"],[data-seen-cards="8"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .city-grid[data-seen-cards="8"]{grid-template-columns:repeat(4,minmax(0,1fr))!important}
 [data-seen-cards="5"]{grid-template-columns:repeat(6,minmax(0,1fr))!important}
 [data-seen-cards="5"]>[data-seen-card]{grid-column:span 2!important}
 [data-seen-cards="5"]>[data-seen-card]:nth-child(n+4){grid-column:span 3!important}
 [data-seen-cards="7"]{grid-template-columns:repeat(6,minmax(0,1fr))!important}
 [data-seen-cards="7"]>[data-seen-card]{grid-column:span 2!important}
 [data-seen-cards="7"]>[data-seen-card]:last-child{grid-column:1/-1!important}
 /* The approved two-row Manhattan feature is intentionally different. */
 [data-seen-layout]:has(>.seen-manhattan){grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important}
 [data-seen-layout]:has(>.seen-manhattan)>[data-seen-card]{grid-column:auto!important;align-self:stretch!important}
 [data-seen-layout]>.seen-manhattan{grid-column:1!important;grid-row:span 2!important}
}
@media(min-width:681px) and (max-width:850px){
 [data-seen-layout]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 [data-seen-layout]>[data-seen-card]{grid-column:auto!important;grid-row:auto!important}
 [data-seen-layout]>[data-seen-card]:last-child:nth-child(odd){grid-column:1/-1!important}
}
@media(max-width:680px){
 [data-seen-layout]{grid-template-columns:minmax(0,1fr)!important}
 [data-seen-layout]>[data-seen-card]{grid-column:auto!important;grid-row:auto!important;align-self:start!important}
 .seen-bottom{left:12px!important;right:12px!important;width:auto!important;max-width:calc(100vw - 24px)!important}
 .seen-bottom>*{flex:1 1 auto;min-width:0;white-space:normal!important}
}
.seen-bottom{display:flex!important;align-items:stretch!important;gap:0!important}
.seen-bottom>a,.seen-bottom>button{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;margin:0!important;min-height:44px;line-height:1.3;box-sizing:border-box}
.seen-publication-inner{align-items:center!important}
.seen-publication nav{align-items:center}
.seen-section-nav>a{display:inline-flex;align-items:center;gap:8px}
.seen-section-nav img{flex:none;object-fit:contain}
/* Category marks use a consistent slot; existing varied icon sizes stay intact. */
[data-seen-card]>.icon{object-fit:contain;flex:none}
@media(min-width:681px) and (max-width:850px){.city-grid[data-seen-cards="8"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){.city-grid[data-seen-cards="8"]{grid-template-columns:minmax(0,1fr)!important}}
[data-seen-card]>.street-move{margin-top:auto!important;padding-top:16px}
[data-seen-card]>img:not([src$=".svg"]){max-width:100%;height:auto}
/* One legacy Chicago figure lacked the shared responsive image constraint. */
.chi-art{max-width:100%;margin-inline:auto}
.chi-art>img{display:block;width:100%;max-width:100%;height:auto}
/* Magazine-column packing for genuinely mixed-length groups. Source order reads
   down each column; no dense grid placement or artificial card stretching. */
[data-seen-layout="natural"]:not(.city-grid):not(.seen-la-guide-grid){display:block!important;columns:3;column-gap:24px}
[data-seen-layout="natural"]:not(.city-grid):not(.seen-la-guide-grid)>[data-seen-card]{display:inline-flex!important;width:100%;break-inside:avoid;vertical-align:top;margin-bottom:24px;box-sizing:border-box}
[data-seen-layout="natural"][data-seen-cards="2"],
[data-seen-layout="natural"][data-seen-cards="4"],
[data-seen-layout="natural"][data-seen-cards="8"]{columns:2}
@media(min-width:851px){
 .seen-la-guide-grid[data-seen-cards="7"]{grid-template-columns:repeat(12,minmax(0,1fr))!important}
 .seen-la-guide-grid[data-seen-cards="7"]>[data-seen-card]{grid-column:span 3!important}
 .seen-la-guide-grid[data-seen-cards="7"]>[data-seen-card]:nth-child(n+5){grid-column:span 4!important}
}
@media(min-width:681px) and (max-width:850px){[data-seen-layout="natural"]:not(.city-grid):not(.seen-la-guide-grid){columns:2}}
@media(max-width:680px){[data-seen-layout="natural"]:not(.city-grid):not(.seen-la-guide-grid){columns:1}}

/* Stability pass: one publication grid, preserving legacy copy and links. */
.seen-publication-inner{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));align-items:start!important}
.seen-publication-inner>.seen-legacy-content,.seen-legacy-content>.wrap,.seen-legacy-content>.wrap>.foot-grid,.seen-legacy-content>.foot-grid{display:contents}
.seen-publication .foot-bottom{grid-column:1/-1;width:100%;margin-top:18px}
.seen-publication .seen-update{max-width:1220px;margin-inline:auto}
.seen-publication .foot-statement{margin-top:16px}
.seen-publication p{color:inherit}
body:has(.seen-bottom){padding-bottom:88px}
@media(max-width:680px){.seen-publication-inner{grid-template-columns:1fr}.seen-publication .foot-grid{grid-template-columns:1fr!important}.seen-publication [style*="text-align:end"]{text-align:start!important}}
@media(prefers-reduced-motion:reduce){.ticker,.seen-ticker-track{animation:none!important;transform:none!important}}
/* Text-container QA: give long footer headings adequate columns before resizing type. */
.seen-publication-inner{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
[data-seen-card]>:is(h2,h3,h4),.city-card-body,.seen-bottom>a,.seen-bottom>button{min-width:0;max-width:100%;white-space:normal;overflow-wrap:break-word}
.seen-publication .foot-statement{max-width:100%;overflow-wrap:break-word}
