/* Border Lab shared visual system. Loaded last by build_borderlab.py. */
:root{
 --bl-serif:Georgia,"Times New Roman","Songti SC","STSong","Noto Serif CJK SC",serif;
 --bl-sans:Arial,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
 --bl-bg:#000000;--bl-panel:transparent;--bl-panel-raised:transparent;--bl-ink:#edece6;--bl-text:#c9c9c5;--bl-muted:#aaa9a4;--bl-dim:#92918c;--bl-line:#333333;
 --bl-copper:#d18a5b;--bl-copper-soft:#e5b38e;--bl-gold:#f1c38d;
 --bl-title:36px;--bl-section:30px;--bl-card:22px;--bl-body:15px;--bl-small:12px;--bl-ui:13px;--bl-caption:11px;
 --bg:var(--bl-bg);--surface:var(--bl-panel);--surface-raised:var(--bl-panel-raised);--ink:var(--bl-ink);--muted:var(--bl-muted);--dim:var(--bl-dim);--line:var(--bl-line);--accent:var(--bl-copper);--serif:var(--bl-serif);--sans:var(--bl-sans);
 color-scheme:dark;
}
body{background:var(--bl-bg);color:var(--bl-ink);font-family:var(--bl-sans);font-size:var(--bl-body);line-height:1.75;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body main :is(p,li,dt,dd,small,summary,label,input,select,textarea,button){font-family:var(--bl-sans)!important}
body[data-page] main :is(h1,h2,h3,h4){font-family:var(--bl-serif)!important;font-style:normal!important;font-weight:500!important;letter-spacing:-.02em}
body[data-page] main h1{font-size:var(--bl-title)!important;line-height:1.3!important;color:var(--bl-ink)}
body[data-page] main h2{font-size:var(--bl-section)!important;line-height:1.4!important;color:var(--bl-ink)}
body[data-page] main h3{font-size:var(--bl-card)!important;line-height:1.45!important;color:var(--bl-ink)}
body[data-page] main h4{font-size:18px!important;line-height:1.5!important;color:var(--bl-ink)}
body[data-page] main :is(.section-index,.eyebrow,.outcomes-kicker){font:600 var(--bl-caption)/1.6 var(--bl-sans)!important;letter-spacing:.11em;color:var(--bl-dim)}
body[data-page] main :is(.lead,.home-profile-lead,.studio-intro,.detail-lead,.cc-lead){font:400 18px/1.85 var(--bl-sans)!important;color:var(--bl-text)}
body[data-page] main :is(.home-profile-body,.home-rhythm-card>p,.home-rhythm-detail,.home-rhythm-heading>p,.home-purpose-inner>p:not(.section-index),.studio-copy>p,.studio-entry>p,.studio-teaching>p,.detail-copy>p,.detail-body>p,.detail-content>p,.network-card>p,.cc-course-concepts p,.cc-learning-grid p,.cc-history-grid p,.cc-course-copy>p:not(.cc-lead):not(.cc-source-note),.journey-method>p){font-size:var(--bl-body)!important;line-height:1.85!important;color:var(--bl-text)}
body[data-page] main :is(.section-heading>p,.page-lead>p:last-child,.studio-hero>p,.outcomes-deck,.members-map-caption,.members-panel-intro,.members-panel-meta,.network-role,.cc-detail-note,.cc-aliases,.cc-index-context,.home-certificate-intro,.home-certificate-context,.home-certificate-date){font-size:var(--bl-small)!important;line-height:1.8!important;color:var(--bl-muted)}
body[data-page] main :is(.card-type,.card-meta,.catalog-card p,.catalog-card-source,.catalog-card-open,.catalog-card-source-note,.catalog-note,.results-row,.detail-meta,.detail-source,.detail-sources,.studio-meta,.studio-facts,.studio-tags,.source-note,.cc-source-note,.cc-data-note,.cc-course-byline){font-size:var(--bl-small)!important;line-height:1.75!important;color:var(--bl-muted)!important}
body :is(button,input,select,textarea){font-family:var(--bl-sans)!important;border-radius:0}
body[data-page] main :is(.button,.inline-link,.tab-list a,.tab-list button,.stage-filter button,.activity-filter button,.catalog-card-actions a,.detail-back,.studio-read-more,.cc-toolbar button,.cc-toolbar select){font-size:var(--bl-ui)!important;font-weight:500;line-height:1.45;min-height:44px}
body main input{font-size:14px!important}body main input::placeholder{color:var(--bl-dim);opacity:1}
body :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--bl-gold)!important;outline-offset:3px}
body main :is(.button,.search-box,.stage-filter button,.activity-filter button,.catalog-card,.network-card,.studio-entry,.studio-teaching,.detail-sources){border-color:var(--bl-line)}
body main :is(.search-box,.stage-filter button,.activity-filter button){background:var(--bl-panel);color:var(--bl-text)}
body main :is(.stage-filter button.active,.activity-filter button.active,.button-primary){background:var(--bl-copper);border-color:var(--bl-copper);color:#171a1b}
body main :is(.catalog-card,.network-card){background:var(--bl-panel)}body main :is(.catalog-card:hover,.network-card:hover){background:var(--bl-panel-raised)}
body main :is(.inline-link,.row-arrow,.topic-arrow,.catalog-card-open:hover,.catalog-card-source:hover){color:var(--bl-copper-soft)}
body main :is(.section-heading,.home-exchanges-list,.activity-list,.activity-row,.catalog-grid,.network-directory-heading,.studio-phase,.detail-sources,.cc-introduction,.cc-learning,.cc-history){border-color:var(--bl-line)}
/* Common chrome: preserve the formal name and its existing semantic line breaks. */
body[data-page] .site-header{background:#000000f7;border-color:var(--bl-line)}
body[data-page] .site-nav a{font:600 12px/1.4 var(--bl-sans);color:var(--bl-muted);min-height:42px}
body[data-page] .site-nav a.active,body[data-page] .site-nav a:hover{color:var(--bl-ink);border-bottom-color:var(--bl-copper)}
body[data-page] .brand-text small{font-family:var(--bl-sans);color:var(--bl-text)}
body[data-page] .menu-toggle{border-color:#555555;min-width:44px;min-height:44px}
body[data-page] .site-footer{background:#000000;border-color:var(--bl-line)}body[data-page] .footer-line-note,body[data-page] .footer-line-links a{font:400 var(--bl-caption)/1.6 var(--bl-sans);color:var(--bl-muted)}
body[data-page] .site-footer-compact .footer-line{min-height:66px}body[data-page] .footer-line-links a{min-height:44px}
/* Home: long formal name is a compact display title, not a slogan. */
body[data-page="home"] #home-title{font-size:clamp(32px,3.15vw,46px)!important;line-height:1.4!important}
body[data-page] .home-background,body[data-page] .home-rhythm-card,body[data-page] .home-rhythm,body[data-page] .home-purpose{background:var(--bl-panel);border-color:var(--bl-line)}
body[data-page] .home-background{padding:24px}body[data-page] .home-rhythm-card{padding:24px}
body[data-page] .home-recognition-badge{background:transparent;border-color:#956944;color:var(--bl-gold)}body[data-page] .home-recognition-badge span:last-child{color:var(--bl-copper-soft)}
body[data-page] .home-rhythm-top :is(small,span),body[data-page] .home-exchange-meta{font-size:var(--bl-caption);color:var(--bl-muted)}
body[data-page] .home-exchange h3,body[data-page] .activity-row h3{font-size:var(--bl-card)!important}
body[data-page] .home-purpose-inner>p:not(.section-index){max-width:920px}
/* Directory cards and details share one reading scale. */
body[data-page] .catalog-card{padding:22px}body[data-page] .catalog-card h2{font-size:var(--bl-card)!important;line-height:1.45!important}
body[data-page] .catalog-card p{font-size:14px!important;line-height:1.75!important}
body[data-page] .network-card{padding:22px}body[data-page] .network-card h2{font-size:26px!important}
body[data-page] .network-person{font-family:var(--bl-sans)}body[data-page] .network-person strong,body[data-page] .network-name{font-size:15px}
body[data-page] .studio-entry h2{font-size:var(--bl-section)!important}body[data-page] .studio-entry h2 span{font-size:var(--bl-card)!important;line-height:1.5}
body[data-page] .studio-entry p,body[data-page] .studio-case p{font-size:var(--bl-body);line-height:1.85}
body[data-page] .detail-hero h1{max-width:1050px}body[data-page] .detail-body{font-family:var(--bl-sans);font-size:var(--bl-body);line-height:1.9}
body[data-page] .detail-body :is(p,li){font-size:var(--bl-body)!important;line-height:1.9!important;color:var(--bl-text)}
body[data-page] .detail-sources h2{font-size:22px!important}body[data-page] .detail-sources :is(p,li,a){font-size:var(--bl-small)!important;line-height:1.8!important}
/* Members: keep geography and school identity, share the graphite surfaces. */
body[data-page] .members-hero{--map-accent:var(--bl-copper);--map-gold:var(--bl-gold)}
body[data-page] .members-atlas,body[data-page] .members-map-panel,body[data-page] .members-school-strip{background:var(--bl-panel);border-color:var(--bl-line)}
body[data-page] .members-map-canvas{background:#000000}body #members-map-svg image{opacity:1}
body #members-map-links path{stroke:var(--bl-copper);opacity:.3}body #members-map-links path.is-focused{stroke:var(--bl-gold);opacity:.85}
body[data-page] .members-city-dot{border-color:var(--bl-copper-soft);background:#000000}body[data-page] .members-city.is-lead .members-city-dot{background:var(--bl-copper)}body[data-page] .members-city.is-selected .members-city-dot{background:var(--bl-gold)}
body[data-page] .members-city-label strong{font:600 13px/1.3 var(--bl-sans);color:var(--bl-ink)}body[data-page] .members-city-label small{font:400 11px/1.5 var(--bl-sans);color:var(--bl-muted)}
body[data-page] .members-panel-title{font:500 26px/1.4 var(--bl-serif)}body[data-page] .members-panel-kicker{font-size:var(--bl-caption);color:var(--bl-muted)}
body[data-page] .members-panel-person{font:400 13px/1.5 var(--bl-sans)}body[data-page] .members-panel-person img,body[data-page] .members-person-name{border-color:#606060}
body[data-page] .members-panel-link,body[data-page] .members-panel-reset,body[data-page] .members-school-strip button{font-size:var(--bl-small);min-height:44px;color:var(--bl-copper-soft)}
body[data-page] .members-school-strip button[aria-pressed=true]{background:transparent;box-shadow:inset 0 -2px var(--bl-copper);color:var(--bl-gold)}
body[data-page] .members-map-controls button{background:var(--bl-panel-raised);border-color:#444444;color:var(--bl-ink)}
body[data-page] .members-map-corner,body[data-page] .members-map-hint{color:var(--bl-muted);font-size:11px}
/* Clone Class: retain the approved cartographic colors and first-screen map. */
body[data-page] .cc-main{--cc-line:var(--bl-line);--cc-muted:var(--bl-muted);--cc-ink:var(--bl-ink)}
body[data-page] .cc-heading h1{font-size:var(--bl-title)!important}body[data-page] .cc-totals b,body[data-page] .members-map-totals b{font:500 30px/1.1 var(--bl-serif);color:var(--bl-copper-soft)}
body[data-page] .cc-totals span,body[data-page] .members-map-totals{font-size:11px!important}
body[data-page] .cc-index-heading h2{font-size:24px!important}body[data-page] .cc-city-schools>h3{font-size:20px!important}body[data-page] .cc-school-identity h3{font-size:26px!important}
body[data-page] .cc-city-name strong{font:500 20px/1.4 var(--bl-serif)}body[data-page] .cc-city-name small,body[data-page] .cc-school-name small{font-size:11px!important}
body[data-page] .cc-school-name strong{font:500 14px/1.6 var(--bl-sans)}body[data-page] .cc-index-context{font-size:12px!important}
body[data-page] .cc-school-count{font:500 24px/1.1 var(--bl-serif)}body[data-page] .cc-school-count small{font-size:10px!important}
body[data-page] .cc-detail-stats span,body[data-page] .cc-mini-title,body[data-page] .cc-panel-kicker{font-size:11px!important}body[data-page] .cc-school-timeline small{font-size:10px!important}
body[data-page] .cc-terms button{font-family:var(--bl-sans);font-size:12px;padding-inline:10px}body[data-page] .cc-terms small{font-size:11px}
body[data-page] .cc-map-caption strong{font-size:13px}body[data-page] .cc-map-caption small,body[data-page] .cc-map-note{font-size:10px}body[data-page] .cc-hero-note{font-size:11px}
body[data-page] .cc-marker-label b{font:500 11px/1.4 var(--bl-sans)}body[data-page] .cc-marker-label small{font:400 10px/1.4 var(--bl-sans)}
/* Outcomes: one type family and neutral panels, original figures stay intact. */
body #outcomes-engine{--panel:var(--bl-panel);--ink:var(--bl-ink);--muted:var(--bl-muted);--line:var(--bl-line);--accent:var(--bl-copper);--accent-soft:var(--bl-copper-soft);--serif:var(--bl-serif);--sans:var(--bl-sans)}
body #outcomes-engine .engine-subtitle{font-size:var(--bl-body);line-height:1.8}
body #outcomes-engine .phase-nav a{background:var(--bl-panel);min-height:96px;padding:16px}
body #outcomes-engine .phase-nav a[aria-pressed=true]{background:transparent;border-color:var(--bl-copper)}
body #outcomes-engine .phase-nav a strong{font:500 15px/1.5 var(--bl-sans)}body #outcomes-engine .phase-nav a :is(i,small){font-size:11px}
body #outcomes-engine :is(.engine-core,.input-column,.output-column){background:var(--bl-panel);border-color:var(--bl-line)}
body #outcomes-engine .column-title h2{font-size:22px!important;line-height:1.4!important}
body #outcomes-engine .engine-core .column-title h2{font-size:24px!important}
body #outcomes-engine :is(.column-title>span,.method-detail>a,.tool-row,.image-caption small,.data-tags span,.output-note,.image-source,.gallery-tag,.engine-caption){font-family:var(--bl-sans);font-size:11px!important;line-height:1.7}
body #outcomes-engine .column-deck,body #outcomes-engine .method-detail p{font-size:14px;line-height:1.8}
body #outcomes-engine .method-nodes button{background:transparent;border-color:#444444;min-height:128px}
body #outcomes-engine .method-nodes button[aria-pressed=true]{background:transparent;border-color:var(--bl-copper)}
body #outcomes-engine .method-nodes strong{font:500 14px/1.5 var(--bl-sans);white-space:normal}body #outcomes-engine .method-nodes small{font-size:10px;white-space:normal}
body #outcomes-engine .image-caption strong{font:500 14px/1.6 var(--bl-sans);color:var(--bl-text)}
body #outcomes-engine .flow-input,body #outcomes-engine .flow-output{background:transparent;border-color:#444444;color:var(--bl-text);font-size:14px}
body #outcomes-engine :is(.engine-heading-actions a,#engine-motion){font-size:12px}
body :is(.outcomes-page-map,.outcomes-units,.outcomes-materials){border-color:var(--bl-line)}
body :is(.page-map-heading>p,.page-map-range,.page-map-legend small,.outcomes-stage-nav,.analysis-card-head>span,.method-application b,.material-kind){font-family:var(--bl-sans);font-size:11px!important;color:var(--bl-muted)}
body :is(.analysis-card,.outcomes-material-card,.method-application){background:var(--bl-panel);border-color:var(--bl-line)}
body[data-page] .analysis-card h3,body[data-page] .outcomes-material-card h3{font-size:22px!important}body[data-page] .analysis-card p,body[data-page] .method-application p,body[data-page] .outcomes-stage-copy p{font-size:var(--bl-body);line-height:1.85;color:var(--bl-text)}
/* Journeys: its light relief is a map surface, while controls follow the site. */
body[data-page="journeys"] .journeys-copy h1{font-size:20px!important;line-height:1.2!important}
body[data-page="journeys"] .journeys-copy h1 em{color:var(--bl-copper)}
body[data-page] .journey-map-toolbar,body[data-page] .journey-controls{background:var(--bl-panel);border-color:var(--bl-line)}
body[data-page] .journey-controls :is(input,select),body[data-page] .journey-reset,body[data-page] .map-zoom-controls button{background:var(--bl-panel-raised);color:var(--bl-ink);border-color:#444444;font:500 13px/1.5 var(--bl-sans);min-height:44px}
body[data-page] .journey-map-legend,body[data-page] .journey-map-heading>p{font-size:11px;color:var(--bl-muted)}
body[data-page] .journey-card{background:var(--bl-panel);border-color:var(--bl-line)}body[data-page] .journey-card h3{font-size:var(--bl-card)!important;line-height:1.5!important}
body[data-page] .journey-card :is(p,dd,.journey-duration,.journey-id-label){font-family:var(--bl-sans);font-size:var(--bl-small);color:var(--bl-muted)}
body[data-page] .journey-detail{background:#000000f2;border-color:#444444;color:var(--bl-ink)}body[data-page] .journey-detail h2{font-size:24px!important}
body[data-page] .journey-detail :is(p,small,.journey-detail-kicker){font-family:var(--bl-sans);font-size:12px!important;line-height:1.7;color:var(--bl-muted)}
body[data-page] .journey-year-filter,body[data-page] .journey-timeline{background:#000000f2;border-color:var(--bl-line)}
@media(max-width:1100px){:root{--bl-title:32px;--bl-section:28px}body[data-page] .cc-totals,body[data-page] .members-map-totals{gap:16px}}
@media(max-width:760px){
 :root{--bl-title:28px;--bl-section:26px;--bl-card:20px;--bl-body:14px;--bl-small:12px;--bl-ui:13px;--bl-caption:11px}
 body[data-page] .site-nav a{font-size:14px;line-height:1.5;min-height:46px}
 body[data-page] .site-nav{top:100%;background:#000000;border-color:var(--bl-line)}
 body[data-page] .brand-text small{font-size:10px;line-height:1.35}body[data-page] .brand-text small span{white-space:normal}
 body[data-page] .site-footer-compact .footer-line{min-height:60px}
 body[data-page="home"] #home-title{font-size:clamp(22px,6vw,26px)!important;line-height:1.45!important}
 body[data-page] .home-background,body[data-page] .home-rhythm-card,body[data-page] .catalog-card,body[data-page] .network-card{padding:18px}
 body[data-page] main :is(.lead,.home-profile-lead,.studio-intro,.detail-lead,.cc-lead){font-size:16px!important;line-height:1.8!important}
 body main input,body[data-page] .journey-controls input{font-size:16px!important}
 body[data-page] .cc-heading h1{font-size:26px!important}body[data-page] .cc-totals{gap:20px}body[data-page] .cc-totals b,body[data-page] .members-map-totals b{font-size:26px}
 body[data-page] .cc-totals span{font-size:10px!important}body[data-page] .cc-course-byline{font-size:11px!important}
 body[data-page] .cc-map-caption small,body[data-page] .cc-map-note{font-size:10px}body[data-page] .cc-hero-note{font-size:10px}
 body[data-page] .cc-marker-label b{font-size:10px}body[data-page] .cc-marker-label small{font-size:9px}
 body[data-page] .cc-terms button{font-size:11px;padding-inline:8px}body[data-page] .cc-terms small{font-size:10px}
 body[data-page] .cc-index-heading h2{font-size:22px!important}body[data-page] .cc-school-identity h3{font-size:24px!important}
 body[data-page] .members-panel-title{font-size:24px}body[data-page] .members-city-label small{font-size:10px}
 body #outcomes-engine .phase-nav a{min-height:86px;padding:12px}body #outcomes-engine .phase-nav a strong{font-size:14px}
 body #outcomes-engine .column-title h2{font-size:22px!important}body #outcomes-engine .engine-core .column-title h2{font-size:24px!important}
 body #outcomes-engine .method-nodes button{min-height:124px}
 body[data-page="journeys"] .journeys-copy h1{font-size:16px!important}
 body[data-page] .journey-detail h2{font-size:22px!important}
}
@media(max-width:350px){body[data-page] .brand-text small{font-size:10px}body[data-page] .cc-heading h1{font-size:24px!important}body[data-page] .cc-totals{gap:14px}body[data-page] .cc-totals b{font-size:24px}}
@media(prefers-reduced-motion:reduce){body{scroll-behavior:auto}body main :is(button,a){transition:none}}
/* Compact map heading is a toolbar title; the map keeps the first screen. */
body[data-page="journeys"]{--journey-orange:var(--bl-copper);--journey-paper:var(--bl-ink)}
body[data-page="journeys"] #journeys-title{font:500 20px/1.2 var(--bl-serif)!important}
body[data-page="journeys"] #journeys-title span{font:400 12px/1.4 var(--bl-sans);color:var(--bl-muted)}
body[data-page] .journey-map-selection,body[data-page] .journey-timebar,body[data-page] .journey-map-nearby{background:#000000f2;border-color:#444444}
body[data-page] .map-selection-copy strong{font:500 20px/1.45 var(--bl-serif);color:var(--bl-ink)}
body[data-page] .map-selection-copy :is(span,button),body[data-page] .journey-timebar-heading>span,body[data-page] .journey-timebar-all{font:400 12px/1.5 var(--bl-sans);color:var(--bl-muted)}
body[data-page] .journey-timebar-heading strong{font:500 24px/1.2 var(--bl-serif);color:var(--bl-ink)}
body[data-page] .journey-timebar-years{font:400 10px/1.4 var(--bl-sans);color:var(--bl-muted)}
body[data-page] .journey-map-nearby :is(button,summary){font:400 12px/1.6 var(--bl-sans);color:var(--bl-text)}
body[data-page] .journey-map-selection .journey-map-nearby button{background:var(--bl-panel-raised);border-color:var(--bl-line);min-height:44px}
body[data-page] .journey-map-selection .journey-selection-close{background:var(--bl-panel-raised);border-color:#444444;color:var(--bl-ink)}
body[data-page] .journey-map-scale{background:#000000e8;color:var(--bl-ink);font-family:var(--bl-sans)}
body[data-page] .journey-card-index :is(.journey-year-label,.journey-focus-days){font:500 12px/1.6 var(--bl-sans);color:var(--bl-muted)}
body[data-page] .journey-card-index .journey-year-label{color:var(--bl-copper-soft)}
body[data-page] .journey-card-focus{font:500 13px/1.6 var(--bl-sans);color:var(--bl-copper-soft);min-height:44px}
body[data-page] .map-marker-ring{fill:#b65734;stroke:#6f321e}body[data-page] .journey-map-marker.is-cluster .map-marker-ring{fill:#9d4529}
body[data-page] .journey-map-marker.is-selected .map-marker-ring{fill:var(--bl-gold);stroke:#714a2e}
body[data-page] .journey-map-marker.is-selected .map-marker-count{fill:#302315}
body[data-page] .journey-map-marker:hover .map-marker-ring,body[data-page] .journey-map-marker:focus-visible .map-marker-ring{fill:#d18a5b;stroke:#714a2e}
body[data-page] .journey-map-marker:hover .map-marker-count,body[data-page] .journey-map-marker:focus-visible .map-marker-count{fill:#171a1b}
body[data-page] .journey-legend-duration b{background:#b65734}
@media(max-width:760px){body[data-page="journeys"] #journeys-title{font-size:16px!important}body[data-page="journeys"] #journeys-title span{font-size:10px}body[data-page] .map-selection-copy strong{font-size:16px}body[data-page] .map-selection-copy :is(span,button){font-size:11px}body[data-page] .journey-timebar-heading strong{font-size:22px}}
/* Metadata uses a readable minimum; only dense map labels/ticks stay smaller. */
body[data-page] main small,body[data-page] main figcaption{font-family:var(--bl-sans)!important;font-size:11px!important;line-height:1.65}
body[data-page] main time{font:500 12px/1.6 var(--bl-sans);color:var(--bl-copper-soft)}
body[data-page] .cc-marker-label small{font-size:10px!important;line-height:1.4}
body[data-page] .cc-school-timeline small{font-size:10px!important;line-height:1.4}
body[data-page="journeys"] .site-nav{background:#000000;border-color:var(--bl-line)}
@media(min-width:761px) and (max-width:1200px){
 body[data-page="journeys"] .journey-map-section.shell{grid-template-columns:minmax(0,1.2fr) minmax(150px,1fr) auto auto;grid-template-rows:46px 36px minmax(0,1fr);gap:0 8px}
 body[data-page="journeys"] .journey-heading-name{grid-column:1;grid-row:1}
 body[data-page="journeys"] .journey-map-heading>p{display:none}
 body[data-page="journeys"] .journey-search{grid-column:2;grid-row:1}
 body[data-page="journeys"] .journey-reset{grid-column:3;grid-row:1}
 body[data-page="journeys"] .map-zoom-controls{grid-column:4;grid-row:1}
 body[data-page="journeys"] .journey-map-legend{grid-column:1/-1;grid-row:2;gap:8px 16px;font-size:11px}
 body[data-page="journeys"] .journey-map-frame{grid-row:3}
}
@media(max-width:760px){
 body[data-page] .cc-main .cc-map{height:clamp(250px,calc(100svh - 375px),420px);min-height:250px}
 body[data-page] .cc-marker-label small{font-size:9px!important}
 body[data-page] .cc-terms small{font-size:10px!important}
}
@media(max-width:350px){body[data-page] .cc-main .cc-map{height:232px;min-height:232px}}
/* Image viewers use the same type and surfaces without altering image fitting. */
body[data-page] .photo-lightbox,body #outcomes-engine dialog{background:#000000;color:var(--bl-ink);border-color:#444444}
body[data-page] .photo-lightbox :is(.photo-lightbox-toolbar,.photo-lightbox-bottom){border-color:var(--bl-line);font:400 12px/1.6 var(--bl-sans)}
body[data-page] .photo-lightbox :is(button,figcaption),body #outcomes-engine .dialog-foot :is(p,a,button){font:400 13px/1.7 var(--bl-sans);color:var(--bl-text)}
body[data-page] .photo-lightbox button,body #outcomes-engine .dialog-head button,body #outcomes-engine .dialog-foot button{min-height:44px;border-color:#444444}
body #outcomes-engine .dialog-head h2{font-size:24px!important;line-height:1.4!important}
body #outcomes-engine .dialog-head small{font-size:11px!important;color:var(--bl-muted)}
body[data-page] .members-person-name{background:transparent;color:#d2d2cc}
body[data-page] .working-photos-heading>span,body[data-page] .working-photos-heading p{font:400 12px/1.75 var(--bl-sans);color:var(--bl-muted)}
@media(max-width:760px){body #outcomes-engine .dialog-head h2{font-size:22px!important}}
body[data-page]{background:var(--bl-bg);color:var(--bl-ink);font-family:var(--bl-sans)}
body[data-page] .outcomes-main{background:transparent}
@media(max-width:760px){body[data-page] .brand-text small{font-size:11px;line-height:1.35}}
@media(max-width:350px){body[data-page] .brand-text small{font-size:10px}}
/* Map symbols and close glyphs retain one legible visual size. */
body[data-page] :is(.map-zoom-controls,.members-map-controls,.cc-map-controls) button{font-size:22px!important;line-height:1!important;min-width:44px;min-height:44px}
body[data-page] :is(.map-zoom-controls,.members-map-controls,.cc-map-controls) button:last-child{font-size:13px!important;line-height:1.4!important}
body[data-page] :is(.journey-selection-close,.cc-sheet-close,.photo-lightbox-close,#engine-close-figure){font:400 24px/1 var(--bl-sans)!important;min-width:44px;min-height:44px}
body[data-page] #cc-course-info,body[data-page] #cc-index-count{font-size:11px!important}
body #outcomes-engine .engine-bottom>a{font-size:12px;line-height:1.6}
body #outcomes-engine .engine-credit,body #outcomes-engine .engine-credit a{font-size:11px;line-height:1.7}

/* Black canvas: content stays open; rules, spacing and small accents carry hierarchy. */
body[data-page] :is(.site-header,.site-footer,.site-nav){background:#000}
body[data-page] main :is(.intro-band,.network-section,.resource-panel,.feature-card,.feature-card:first-child,.detail-aside,.detail-alert,.detail-sources,.network-roster-note,.network-unit,.network-unit-composition,.network-profile-highlight,.network-profile-unavailable,.studio-home,.studio-facts,.studio-method-grid>div,.studio-team-grid>section,.studio-outcome,.studio-timeline-step,.outcomes-home-path,.method-library-meta,.method-stage-grid a,.outcomes-framework,.outcome-stage,.analysis-matrix section,.page-map-legend li,.outcomes-stage-nav a,.stage-flow li){background:transparent;box-shadow:none}
body[data-page] main :is(.button,.outcomes-button,.home-recognition-badge,.stage-filter button,.activity-filter button,.studio-jump a){background:transparent;color:var(--bl-ink);border-color:var(--bl-line)}
body[data-page] main :is(.button-primary,.outcomes-button.primary,.home-recognition-badge,.stage-filter button.active,.activity-filter button.active){background:transparent;color:var(--bl-copper-soft);border-color:var(--bl-copper)}
body[data-page] main :is(.button:hover,.outcomes-button:hover,.studio-jump a:hover,.stage-filter button:hover,.activity-filter button:hover){background:transparent;color:var(--bl-gold);border-color:var(--bl-copper)}
body[data-page] main :is(.catalog-card,.network-card,.journey-card,.home-rhythm-card,.studio-timeline-step,.studio-method-grid>div,.studio-team-grid>section,.studio-outcome,.outcomes-material-card,.analysis-card){background:transparent;box-shadow:none;border:0;border-top:1px solid var(--bl-line)}
body[data-page] main :is(.catalog-card:hover,.network-card:hover,.journey-card:hover,.outcomes-material-card:hover,.analysis-card:hover){background:transparent;border-color:var(--bl-copper);transform:none}
body[data-page] main :is(.catalog-card,.network-card){padding-inline:0}
body[data-page] .home-background{padding-block:0;padding-left:28px;padding-right:0;border:0;border-left:1px solid var(--bl-line);background:transparent}
body[data-page] .home-rhythm-card{padding-inline:0}
body[data-page] .home-rhythm-card-field{background:transparent}
body[data-page] .home-purpose,body[data-page] .home-rhythm{background:transparent}
body[data-page] .detail-aside,body[data-page] .detail-sources{border:0;border-top:1px solid var(--bl-line);padding-inline:0}
body[data-page] .members-atlas,body[data-page] .cc-atlas{background:transparent;border:0;border-block:1px solid var(--bl-line)}
body[data-page] .members-map-canvas,body[data-page] .cc-main .cc-map{background:#000}
body[data-page] .members-map-panel,body[data-page] .cc-main .cc-index{background:transparent;border-color:var(--bl-line)}
body[data-page] .members-school-strip,body[data-page] .cc-main .cc-terms{background:transparent;border-color:var(--bl-line)}
body[data-page] .members-school-strip button[aria-pressed=true],body[data-page] .cc-main .cc-terms .is-active,body[data-page] .cc-main .cc-school-timeline button[aria-pressed=true]{background:transparent;color:var(--bl-gold);box-shadow:inset 0 -2px var(--bl-copper)}
body[data-page] .members-map-controls{background:#000e;border-color:var(--bl-line)}
body[data-page] .members-map-controls button,body[data-page] .cc-main :is(.cc-toolbar input,.cc-toolbar select,.cc-toolbar button,.cc-map-controls button){background:transparent;color:var(--bl-ink);border-color:#444}
body[data-page] .cc-main .cc-map-controls{background:#000e}
body[data-page] .cc-main :is(.cc-city-list button:hover,.cc-school-list button:hover,.cc-toolbar button:hover,.cc-map-controls button:hover){background:transparent;color:var(--bl-gold)}
body[data-page] .cc-main .cc-marker-label,body[data-page] .cc-main .cc-map-note{background:#000c}
body[data-page] .cc-main .cc-terms i{background:#222}
body[data-page] .cc-main .cc-terms i:after{background:#82827c}
body[data-page] .cc-main .cc-terms .is-active i:after{background:var(--bl-copper)}
body[data-page] .cc-main .cc-school-timeline i{background:linear-gradient(to top,var(--bl-copper) calc(var(--share)*100%),#222 0)}
body[data-page] .cc-main :is(.cc-sheet-close,.cc-map-panel .cc-back){background:#000;color:var(--bl-ink);border-color:var(--bl-line)}
body[data-page] .members-person-name,body[data-page] .network-unit-roster .network-member-initial{background:transparent;border-color:#555;color:var(--bl-text)}
body[data-page] .members-panel-logo:not([data-surface=light]),body[data-page] .cc-main .cc-school-mark:not([data-surface=light]),body[data-page] .cc-main .cc-campus-icon{background:transparent;border-color:var(--bl-line)}
body #outcomes-engine .engine-board{background:transparent;border:0;border-block:1px solid var(--bl-line)}
body #outcomes-engine :is(.engine-core,.input-column,.output-column,.flow-input,.flow-output,.method-nodes button,.phase-nav a,.phase-nav a[aria-pressed=true],.method-nodes button[aria-pressed=true]){background:transparent;border-color:var(--bl-line)}
body #outcomes-engine :is(.method-nodes button:hover,.phase-nav a:hover){background:transparent;border-color:var(--bl-copper)}
body #outcomes-engine .method-nodes button[aria-pressed=true]{border-color:var(--bl-copper);box-shadow:inset 0 -2px var(--bl-copper)}
body #outcomes-engine .phase-nav a[aria-pressed=true]{border-color:var(--bl-copper)}
body #outcomes-engine :is(.image-plate,.image-stage){background:#000}
body #outcomes-engine .image-source{background:#000d}
body #outcomes-engine #engine-zoom-figure{background:transparent;color:var(--bl-copper-soft);border-color:var(--bl-line)}
body[data-page] .journey-map-frame{box-shadow:none}
body[data-page] .journey-map-selection,body[data-page] .journey-timebar,body[data-page] .journey-map-nearby{background:#000e;box-shadow:none;border-color:#444}
body[data-page] .journey-map-selection :is(.journey-selection-close,.journey-map-nearby button){background:transparent;border-color:#555}
body[data-page] .journey-timebar-all[aria-pressed=true]{background:transparent;color:var(--bl-copper-soft)}
body[data-page] .photo-lightbox,body #outcomes-engine dialog{background:#000;border-color:#444}
body[data-page] .photo-lightbox button,body[data-page] .photo-lightbox figure img{background:transparent}
body[data-page] .photo-lightbox::backdrop,body #outcomes-engine dialog::backdrop{background:#000e}
@media(max-width:900px){body[data-page] .cc-main .cc-index{background:#000}}
@media(max-width:760px){
 body[data-page] .home-background{padding:24px 0 0;border-left:0;border-top:1px solid var(--bl-line)}
 body[data-page] main :is(.catalog-card,.network-card,.home-rhythm-card){padding-inline:0}
}

/* Photo containers and documentary notes share the open black canvas. */
body[data-page] main :is(.network-activity-photo,.network-activity-photo img,.activity-media-figure img,.detail-media .activity-media-figure img,.activity-photo-cover img,.studio-photo,.working-photo-open,.journey-card-photo,.journey-method,.page-map-chart){background:transparent;box-shadow:none}
body[data-page] .page-map-chart>span{background:transparent;border-bottom:2px solid #5e5953}
body[data-page] .page-map-chart>span:nth-child(2){background:transparent;border-bottom-color:#9f6c52}
body[data-page] .page-map-chart>span:nth-child(3){background:transparent;border-bottom-color:#c48056}
body[data-page] .page-map-chart>span:nth-child(4){background:transparent;border-bottom-color:#e2a36e}
body[data-page] .page-map-chart>span:nth-child(5){background:transparent;border-bottom-color:#c28d69}
body[data-page] .page-map-chart>span:nth-child(6){background:transparent;border-bottom-color:#926c54}
