/* Pass 77: typographic, card, clock, and document-viewer standardization. */
:root{--panel:#061820;--panel-deep:#020d12;--line:rgba(214,170,87,.34);--muted:#b8c5c1}

/* A single readable hierarchy across the long-form museum rooms. */
.exhibit-section h2,.story-main h1,.story-main h2,.station-main h1,.station-main h2{font-family:var(--deco);font-weight:400!important;text-transform:uppercase;letter-spacing:.025em;line-height:1.03}
.exhibit-section h2{font-size:clamp(2rem,4.2vw,3.75rem)!important;max-width:24ch!important}
.exhibit-section h3,.paper-subgroup>h3,.rose-history h3{font-family:var(--deco);font-weight:400!important;line-height:1.15;letter-spacing:.025em}
.exhibit-section p,.rose-history p,.paper-subgroup p{font-weight:400!important;line-height:1.65;color:#d7d2c5}
.section-lede{font-size:clamp(1rem,1.45vw,1.16rem)!important;line-height:1.6!important;max-width:68ch}
.rose-history{max-width:78ch;padding:clamp(20px,3vw,34px);border:1px solid var(--line);background:rgba(3,18,24,.82)}
.rose-history strong{font-weight:650;color:#ead49d}
.exhibit-section{padding-block:clamp(34px,5vw,68px)!important}

/* Cards use one frame, one crop treatment, and complete rows on desktop. */
.source-card,.archive-item,.survey-frame,.paper-source-leads>a{border:1px solid var(--line)!important;background:var(--panel-deep)!important;box-shadow:none!important}
.source-card img,.source-card.contain-card img,.weather-source-rail .source-card.contain-card img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;padding:0!important;background:var(--panel-deep)!important}
.source-card span,.source-card strong{font-family:var(--nav)!important;font-weight:600!important;letter-spacing:.075em!important;background:rgba(2,10,16,.78)!important;box-shadow:0 0 0 10px rgba(2,10,16,.72)!important}
.source-card strong{font-size:clamp(.92rem,1.25vw,1.14rem)!important;line-height:1.18!important}
.weather-source-rail{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.collection-context{max-width:76ch;margin:18px 0 0;padding:14px 16px;border-left:3px solid #d6aa57;background:rgba(3,18,24,.72);color:#bdc8c3!important;font-size:.9rem;line-height:1.55!important}
.documents-source-rail{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.paper-source-leads{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.paper-source-leads>a{grid-template-rows:180px auto;overflow:hidden;padding:0!important}
.paper-source-leads img{width:100%;height:180px;object-fit:cover;background:var(--panel-deep)}
.paper-lead-caption{padding:13px 15px}
.story-figure,.source-pair figure{background:var(--panel-deep)!important}
.story-figure img,.source-pair img{background:var(--panel-deep)!important}

/* The station clock no longer changes height or type treatment between events. */
.station-player{grid-template-columns:minmax(0,1.48fr) minmax(310px,.72fr);align-items:stretch}
.barograph-stage{height:500px;min-height:500px;background:var(--panel-deep)}
.barograph-stage img{object-fit:contain;background:var(--panel-deep)}
.station-readout{min-height:500px;justify-content:flex-start;padding:clamp(24px,3vw,36px);overflow:hidden}
.station-date,.station-kind{font-family:var(--nav);font-weight:650;letter-spacing:.12em;text-transform:uppercase}
.station-time{display:block;min-height:2.35em;margin:.28rem 0 0;font-family:var(--nav)!important;font-size:clamp(1.45rem,2.6vw,2.25rem)!important;font-weight:650;line-height:1.08;text-transform:uppercase;letter-spacing:.02em;color:#f2c86f}
.station-readout h3{min-height:2.5em;margin:.55rem 0;font-family:var(--deco);font-size:clamp(1.18rem,1.7vw,1.5rem);font-weight:400;line-height:1.22;text-transform:uppercase}
.station-readout p{min-height:6.3em;margin:.25rem 0 1rem;font-size:.96rem;line-height:1.55}
.station-controls{margin-top:auto}

/* A consistent dark shell around every locally held PDF. */
.pdf-reader{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:rgba(0,7,10,.9);color:#eee4ca}
.pdf-reader::backdrop{background:rgba(0,7,10,.88)}
.pdf-reader-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr);width:min(96vw,1500px);height:94dvh;margin:3dvh auto;border:1px solid rgba(214,170,87,.55);background:var(--panel-deep);box-shadow:0 24px 80px #000}
.pdf-reader header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;border-bottom:1px solid var(--line);background:#061820}
.pdf-reader header span{font:650 .67rem/1 var(--nav);letter-spacing:.12em;text-transform:uppercase;color:#c9ac70}
.pdf-reader h2{margin:.3rem 0 0;font:400 clamp(1.15rem,2vw,1.65rem)/1.1 var(--deco);text-transform:uppercase}
.pdf-reader header button{width:42px;height:42px;border:1px solid var(--line);background:#020d12;color:#f0d18d;font-size:1.7rem;cursor:pointer}
.pdf-reader-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line);background:#031219}
.pdf-reader-toolbar button,.pdf-reader-toolbar a,.pdf-reader-toolbar label{min-height:38px;padding:9px 11px;border:1px solid rgba(214,170,87,.32);background:#071c24;color:#ead097;font:650 .68rem/1 var(--nav);letter-spacing:.055em;text-transform:uppercase;text-decoration:none}
.pdf-reader-toolbar label{display:flex;align-items:center;gap:7px}
.pdf-reader-toolbar input{width:4.2rem;border:0;background:#020d12;color:#fff;padding:4px}
.pdf-reader-toolbar output{min-width:76px;text-align:center;color:var(--muted);font:.75rem/1.2 var(--nav)}
.pdf-reader iframe{width:100%;height:100%;border:0;background:#17252b}

/* Aerial survey inherits the same page background and reader behavior. */
.library-page,.library-page .story-main{background-color:#021015}
.survey-frame a{background:var(--panel-deep)!important}
.survey-frame img{background:var(--panel-deep);object-fit:cover}

@media(max-width:900px){
 .weather-source-rail,.documents-source-rail,.paper-source-leads{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .station-player{grid-template-columns:1fr}.barograph-stage{height:auto;min-height:310px}.station-readout{min-height:390px}
}
@media(max-width:600px){
 .exhibit-section h2{font-size:clamp(1.72rem,8.5vw,2.45rem)!important}
 .weather-source-rail,.documents-source-rail{display:grid!important;grid-auto-flow:column!important;grid-template-columns:none!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;grid-auto-columns:minmax(152px,44vw)!important;overflow-x:auto!important;scroll-snap-type:x proximity;gap:8px!important;padding-bottom:10px}
 .weather-source-rail .source-card,.documents-source-rail .source-card{min-height:230px!important;scroll-snap-align:start}
 .paper-source-leads{grid-template-columns:1fr!important}
 .station-time{min-height:0}.station-readout h3,.station-readout p{min-height:0}
 .pdf-reader-panel{width:100vw;height:100dvh;margin:0;border-inline:0}.pdf-reader-toolbar{overflow-x:auto;flex-wrap:nowrap}.pdf-reader-toolbar>*{flex:0 0 auto}
}
