:root{--bg:#f5f3ec;--paper:#fffdf8;--ink:#243337;--muted:#66757f;--teal:#2d8b7e;--line:#dedbd3;--soft:#edf7f4;--warm:#fff6df}
*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",Meiryo,sans-serif;background:linear-gradient(180deg,#f8f6f0,#f2f5f2);color:var(--ink)}
.page{max-width:920px;margin:auto;padding:18px 16px 80px}.topnav{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:4px 0 28px}.brand{color:var(--ink);font-weight:900;text-decoration:none}.navlinks{display:flex;gap:8px;flex-wrap:wrap}.navlinks a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;color:var(--muted);font-size:13px;text-decoration:none}.navlinks a[aria-current=page]{color:var(--teal);font-weight:850}
main{background:var(--paper);border:1px solid var(--line);border-radius:26px;padding:42px 48px;box-shadow:0 12px 34px rgba(51,73,80,.05)}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:24px}.breadcrumb a{color:inherit}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.09em;color:var(--teal)}
h1{font-size:clamp(31px,6vw,47px);line-height:1.3;letter-spacing:-.035em;margin:9px 0 16px}h2{font-size:26px;line-height:1.5;margin:44px 0 12px}p,li{font-size:16px;line-height:1.9;color:#43545a}.lead{font-size:19px;line-height:1.9}.meta{color:var(--muted);font-size:12px}
.verdict{margin:28px 0 34px;padding:24px;border-radius:20px;background:linear-gradient(135deg,#153f43,#267268);color:#fff}.verdict small{display:block;color:#bde9e2;font-weight:900;letter-spacing:.08em}.verdict strong{display:block;margin-top:8px;font-size:clamp(22px,3vw,30px);line-height:1.55}
.scoreGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0 10px}.score{padding:17px;border-radius:16px;background:#f7fbfa;border:1px solid #dceae7}.score span{display:block;color:#60726f;font-size:12px;font-weight:800}.score b{display:block;margin-top:5px;color:#246e66;font-size:31px;line-height:1}.score small{display:block;margin-top:6px;color:#7b8987;font-size:10px}.scoreGuide{margin:0 0 28px;color:#748388;font-size:12px;line-height:1.7}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:18px 0}.fact{padding:15px;border:1px solid var(--line);border-radius:14px}.fact span{font-size:11px;color:var(--muted)}.fact strong{display:block;margin-top:4px;font-size:18px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.box{padding:18px 19px;border-top:4px solid var(--teal);background:#fbfdfc;border-radius:0 0 14px 14px}.box.caution{border-top-color:#b99552;background:var(--warm)}.box small{font-size:11px;font-weight:900;letter-spacing:.08em;color:var(--teal)}.box.caution small{color:#927132}.box p{font-size:14px;line-height:1.8;margin:6px 0 0}
.compare{margin:22px 0}.compareRow{display:grid;grid-template-columns:minmax(110px,1.2fr) repeat(3,1fr);gap:8px;padding:11px 0;border-bottom:1px solid var(--line);align-items:center}.compareRow.head{color:var(--muted);font-size:11px;font-weight:800}.compareRow a{color:#2b766e;font-weight:850;text-decoration:none}.compareRow b{text-align:right;font-size:13px}.compareRow span{text-align:right;font-size:12px;color:#55666b}
.source{margin:30px 0;padding:17px 18px;border:1px solid #e2e8e7;border-radius:15px;background:#fafcfb}.source strong{display:block;margin-bottom:6px}.source p{font-size:12px;line-height:1.75;margin:4px 0;color:#66767b}.source a{color:var(--teal);font-weight:800}
.cta{margin-top:38px;padding:24px;border-radius:18px;background:linear-gradient(135deg,#ecf8f5,#f2f7fb);border:1px solid #d9ebe7}.cta strong{display:block;font-size:21px}.cta p{font-size:14px}.cta a{display:inline-block;padding:12px 17px;border-radius:13px;background:#2f9488;color:#fff;text-decoration:none;font-weight:850}
.related{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);font-size:14px;line-height:2}.related a{color:var(--teal);font-weight:750}footer{text-align:center;color:var(--muted);font-size:12px;margin-top:22px}footer a{color:inherit}
.hubGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}.hubCard{display:block;padding:19px;border:1px solid var(--line);border-radius:17px;text-decoration:none;color:inherit;background:#fff}.hubCard:hover{border-color:#9dcec7;box-shadow:0 8px 20px rgba(43,88,82,.06)}.hubCard small{color:var(--teal);font-weight:850}.hubCard strong{display:block;margin:6px 0;font-size:19px}.hubCard p{font-size:13px;margin:0;line-height:1.7}.metricMini{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.metricMini span{padding:4px 7px;border-radius:999px;background:#eef6f4;color:#466963;font-size:11px;font-weight:800}
@media(max-width:600px){.page{padding:12px 9px 60px}.topnav{align-items:flex-start}.navlinks{justify-content:flex-end;gap:9px}.navlinks a{font-size:12px}main{padding:28px 17px;border-radius:20px}.lead{font-size:17px}.scoreGrid,.facts,.split,.hubGrid{grid-template-columns:1fr}.scoreGrid{gap:8px}.score span,.fact span{font-size:13px}.score small{font-size:12px;line-height:1.5}.source p{font-size:13px;line-height:1.75}.hubCard small{font-size:12px}.hubCard p{font-size:14px}.metricMini span{font-size:12px}.compareRow{grid-template-columns:minmax(95px,1fr) repeat(3,60px);gap:4px}.compareRow b,.compareRow span{font-size:12px}h2{font-size:23px}}

/* 2026-09-15: living-area editorial + data-reading layer */
.metricGuide{margin:30px 0 22px;padding:24px;border:1px solid #d7e5e1;border-radius:20px;background:linear-gradient(135deg,#f1f9f7,#fffdf8)}
.metricGuideEyebrow{margin:0 0 7px;color:var(--teal);font-size:11px;font-weight:950;letter-spacing:.09em}
.metricGuide h2{margin:0;font-size:clamp(23px,4vw,31px);line-height:1.45}
.metricGuideLead{margin:9px 0 0;color:#596c6f;font-size:14px;line-height:1.8}
.metricGuideGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:17px}
.metricGuideItem{padding:14px;border:1px solid #dfe9e6;border-radius:14px;background:rgba(255,255,255,.78)}
.metricGuideItem b{display:block;color:var(--teal);font-size:12px}
.metricGuideItem strong{display:block;margin-top:5px;font-size:15px;line-height:1.55}
.metricGuideItem p{margin:5px 0 0;color:#69797b;font-size:12px;line-height:1.65}

.axisSorter{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:22px 0 14px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.axisSorterCopy strong{display:block;font-size:18px}
.axisSorterCopy p{max-width:570px;margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.65}
.axisButtons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.axisButtons button{min-height:42px;padding:8px 12px;border:1px solid #cfdedb;border-radius:999px;background:#fff;color:#4b6662;font:inherit;font-size:12px;font-weight:850;cursor:pointer}
.axisButtons button[aria-pressed="true"]{border-color:#2d8b7e;background:#2d8b7e;color:#fff}
.axisButtons button:focus-visible{outline:3px solid rgba(45,139,126,.25);outline-offset:2px}
.axisSortStatus{min-height:20px;margin:0 0 10px;color:#60736f;font-size:12px;line-height:1.6}

.scoreBar{height:7px;margin-top:10px;border-radius:999px;background:#e4ece9;overflow:hidden}
.scoreBar i{display:block;width:var(--score);height:100%;border-radius:inherit;background:linear-gradient(90deg,#77bdb2,#2d8b7e)}
.scoreGuideLink{margin:-18px 0 28px;font-size:12px!important}
.scoreGuideLink a{color:var(--teal);font-weight:850;text-underline-offset:3px}

.hubCard{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.hubCard:focus-visible{outline:3px solid rgba(45,139,126,.25);outline-offset:3px}
.hubGrid.is-sorting .hubCard{animation:areaCardSettle .22s ease both}
@keyframes areaCardSettle{from{opacity:.72;transform:translateY(3px)}to{opacity:1;transform:none}}

@media(max-width:720px){
  .metricGuideGrid{grid-template-columns:1fr}
  .axisSorter{display:block}
  .axisButtons{justify-content:flex-start;margin-top:13px}
}
@media(max-width:600px){
  .metricGuide{margin:24px 0 18px;padding:18px 15px}
  .metricGuide h2{font-size:24px}
  .metricGuideLead{font-size:14px}
  .metricGuideItem p{font-size:13px}
  .axisSorterCopy p,.axisSortStatus{font-size:13px}
  .axisButtons button{min-height:44px;font-size:13px}
  .scoreGuideLink{font-size:13px!important}
}

.factNote{margin:-6px 0 24px;color:#6b7b7e;font-size:12px;line-height:1.7}
.fact strong{font-variant-numeric:tabular-nums}
@media(max-width:600px){.factNote{font-size:13px}}

/* Direct-answer layer: answer the questions people actually ask */
.questionEntry,.lifeAnswers{margin:30px 0;padding:24px;border:1px solid #dfe7e4;border-radius:20px;background:#fff}
.questionEntryEyebrow,.lifeAnswersEyebrow{margin:0 0 7px;color:var(--teal);font-size:11px;font-weight:950;letter-spacing:.09em}
.questionEntry h2,.lifeAnswers h2{margin:0;font-size:clamp(23px,4vw,31px);line-height:1.45}
.questionEntryLead,.lifeAnswersLead{margin:9px 0 0;color:#596c6f;font-size:14px;line-height:1.8}
.questionEntryGrid,.lifeAnswersGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:17px}
.questionEntryGrid>div,.lifeAnswer{padding:16px;border:1px solid #e0e8e5;border-radius:15px;background:#fbfdfc}
.questionEntryGrid strong{display:block;font-size:15px;line-height:1.55}
.questionEntryGrid span{display:block;margin-top:5px;color:#6b7b7e;font-size:12px;line-height:1.65}
.lifeAnswer h3{margin:0;color:#2b4e4a;font-size:15px;line-height:1.55}
.lifeAnswer p{margin:7px 0 0;color:#4d5f64;font-size:14px;line-height:1.8}
@media(max-width:600px){
  .questionEntry,.lifeAnswers{margin:24px 0;padding:18px 15px}
  .questionEntryGrid,.lifeAnswersGrid{grid-template-columns:1fr}
  .questionEntryLead,.lifeAnswersLead,.lifeAnswer p{font-size:14px}
  .questionEntryGrid span{font-size:13px}
}

/* LDK-style local editorial layer */
.localScene{margin:34px 0;padding:26px;border:1px solid #d8e5e2;border-radius:22px;background:linear-gradient(180deg,#fff,#fbfdfc)}
.localSceneEyebrow{margin:0 0 7px;color:var(--teal);font-size:11px;font-weight:950;letter-spacing:.09em}
.localScene h2{margin:0;font-size:clamp(24px,4vw,32px);line-height:1.45}
.localSceneLead{margin:10px 0 0;color:#4f6267;font-size:15px;line-height:1.9}
.localSceneGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
.localSceneItem{padding:17px;border:1px solid #e0e8e5;border-radius:15px;background:#fff}
.localSceneItem b{display:block;color:var(--teal);font-size:11px;letter-spacing:.04em}
.localSceneItem strong{display:block;margin-top:5px;color:#2d3f43;font-size:16px;line-height:1.55}
.localSceneItem p{margin:8px 0 0;color:#56686d;font-size:13px;line-height:1.8}
.localSceneSource{margin:13px 2px 0;color:#748185;font-size:11px;line-height:1.7}
.localSceneSource a{color:#397c73;font-weight:800;text-underline-offset:3px}
@media(max-width:760px){.localSceneGrid{grid-template-columns:1fr}}
@media(max-width:600px){
  .localScene{margin:27px 0;padding:20px 16px}
  .localScene h2{font-size:24px}
  .localSceneLead{font-size:14px}
  .localSceneItem p{font-size:14px}
  .localSceneSource{font-size:12px}
}

/* Editorial-first override: LDK */
.scoreGrid{gap:24px;margin:28px 0 8px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.score{padding:4px 0;border:0;border-radius:0;background:transparent}
.score b{font-size:34px}
.scoreBar{height:5px;max-width:150px}
.facts{gap:20px;margin:28px 0 12px;padding:4px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fact{padding:13px 0;border:0;border-radius:0}
.fact strong{font-size:19px}

.questionEntry,.metricGuide,.lifeAnswers,.localScene{margin:46px 0;padding:0;border:0;border-radius:0;background:transparent}
.questionEntryEyebrow,.metricGuideEyebrow,.lifeAnswersEyebrow,.localSceneEyebrow,.cityContrastEyebrow{margin:0 0 7px;color:var(--teal);font-size:11px;font-weight:950;letter-spacing:.09em}
.questionEntry h2,.metricGuide h2,.lifeAnswers h2,.localScene h2,.cityContrast h2{margin:0;font-size:clamp(25px,4vw,33px);line-height:1.45}
.questionEntryLead,.metricGuideLead,.lifeAnswersLead,.localSceneLead{max-width:720px;margin:11px 0 0;color:#4c6065;font-size:16px;line-height:1.95}

.answerFlow{margin-top:24px}
.answerBlock{padding:22px 0;border-top:1px solid var(--line)}
.answerBlock:last-child{border-bottom:1px solid var(--line)}
.answerBlock h3{margin:0;color:#253b3f;font-size:19px;line-height:1.55}
.answerBlock p{max-width:720px;margin:8px 0 0;font-size:15px;line-height:1.9}

.sceneFlow{margin-top:28px}
.sceneBlock{max-width:740px;padding:25px 0;border-top:1px solid var(--line)}
.sceneBlock:last-child{border-bottom:1px solid var(--line)}
.sceneBlockLead h3{font-size:23px}
.sceneLabel{margin:0 0 5px!important;color:var(--teal)!important;font-size:11px!important;font-weight:900;letter-spacing:.06em}
.sceneBlock h3{margin:0;color:#263a3e;font-size:20px;line-height:1.55}
.sceneBlock p:not(.sceneLabel){margin:9px 0 0;color:#4a5e63;font-size:15px;line-height:1.95}
.localSceneSource{margin:14px 0 0;color:#748185;font-size:11px;line-height:1.75}
.localSceneSource a{color:#397c73;font-weight:800;text-underline-offset:3px}

.fitCheck{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:34px 0 42px}
.fitCheckItem{padding:16px 0 0;border-top:3px solid var(--teal)}
.fitCheckItem.caution{border-top-color:#b99552}
.fitCheckLabel{margin:0!important;color:var(--teal)!important;font-size:11px!important;font-weight:900;letter-spacing:.07em}
.fitCheckItem.caution .fitCheckLabel{color:#927132!important}
.fitCheckItem p:last-child{margin:8px 0 0;font-size:14px;line-height:1.85}

.metricNotes{margin:22px 0 0}
.metricNotes>div{display:grid;grid-template-columns:90px 1fr;gap:18px;padding:13px 0;border-top:1px solid var(--line)}
.metricNotes>div:last-child{border-bottom:1px solid var(--line)}
.metricNotes dt{color:#2d756c;font-size:13px;font-weight:900}
.metricNotes dd{margin:0;color:#53666b;font-size:14px;line-height:1.75}

.cityContrast{margin:52px 0 38px}
.contrastStory{max-width:750px;padding:24px 0;border-top:1px solid var(--line)}
.contrastStory:last-child{border-bottom:1px solid var(--line)}
.contrastStory h3{margin:0;color:#263a3e;font-size:20px;line-height:1.55}
.contrastStory p{margin:8px 0 0;font-size:15px;line-height:1.95}

.hubCard{border-radius:12px;box-shadow:none}
.hubCard:hover{transform:translateY(-1px);box-shadow:none}
.metricGuideGrid,.questionEntryGrid,.lifeAnswersGrid,.localSceneGrid{display:none}

@media(max-width:600px){
  .scoreGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .score span{font-size:11px}.score b{font-size:27px}.score small{font-size:10px}
  .facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
  .questionEntry,.metricGuide,.lifeAnswers,.localScene{margin:38px 0}
  .questionEntryLead,.metricGuideLead,.lifeAnswersLead,.localSceneLead,.answerBlock p,.sceneBlock p:not(.sceneLabel),.contrastStory p{font-size:14px}
  .answerBlock h3,.sceneBlock h3,.contrastStory h3{font-size:18px}
  .sceneBlockLead h3{font-size:21px}
  .fitCheck{grid-template-columns:1fr;gap:22px}
  .metricNotes>div{grid-template-columns:72px 1fr;gap:12px}
}

/* 2026-09-23 mobile navigation: keep the brand from competing with wrapped links. */
@media(max-width:600px){
  .topnav{flex-direction:column;align-items:stretch;gap:7px;margin:2px 0 20px}
  .brand{display:inline-flex;align-items:center;align-self:flex-start;min-height:40px}
  .navlinks{width:100%;justify-content:flex-start;gap:2px 12px}
  .navlinks a{min-height:38px;padding:0;white-space:nowrap}
}


/* 2026-09-23 station UX refresh: conclusion first, then evidence, then field checks. */
.generatedArea main{max-width:none}
.generatedArea .stationHero{align-items:center}
.generatedArea .stationHero>div{min-width:0}
.generatedArea .stationHero .lead{max-width:700px}
.stationJump{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}
.stationJump a{display:inline-flex;align-items:center;min-height:40px;padding:8px 12px;border:1px solid #d3e3df;border-radius:999px;background:#f8fbfa;color:#356b64;text-decoration:none;font-size:12px;font-weight:850}
.stationJump a:after{content:"↓";margin-left:7px;color:#72a198}
.stationJump a:hover{background:#eef7f5;border-color:#b8d6cf}
.stationVerdict{margin:34px 0 38px;padding:0 0 30px;border-bottom:1px solid var(--line)}
.stationVerdict h2{max-width:760px;margin:6px 0 10px;font-size:clamp(28px,4vw,39px);line-height:1.35;letter-spacing:-.025em}
.stationVerdict p:last-child{max-width:780px;margin:0;color:#43595d;font-size:17px;line-height:1.9}
.generatedArea .quickRead{margin:0;padding:0 0 34px;border-bottom:1px solid var(--line)}
.generatedArea .quickRead>h2{max-width:760px;margin:6px 0 20px;font-size:clamp(25px,3.3vw,34px);line-height:1.42}
.generatedArea .quickReadGrid{gap:24px}
.generatedArea .quickReadItem{padding:17px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}
.generatedArea .quickReadItem b{font-size:24px}
.generatedArea .quickReadItem p{margin-top:7px}
.generatedArea .numberGuide{margin:36px 0;padding:0 0 34px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.generatedArea .numberGuide h2{margin:6px 0 10px}
.generatedArea .compareEditorial{margin-top:40px}
.generatedArea .compareEditorial h2{max-width:760px}
.generatedArea .checkList{max-width:760px}
.generatedArea .generatedAreaNotice{margin-top:34px;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;padding:18px 0 0}
.generatedArea .generatedAreaNotice strong{color:#3b5752}
.generatedArea .generatedAreaNotice p{max-width:760px}
@media(max-width:600px){
  .stationJump{display:grid;grid-template-columns:1fr}
  .stationJump a{justify-content:space-between;min-height:46px;border-radius:12px}
  .stationVerdict{margin:28px 0 31px;padding-bottom:26px}
  .stationVerdict h2{font-size:28px}
  .stationVerdict p:last-child{font-size:16px}
  .generatedArea .quickReadGrid{gap:0}
  .generatedArea .quickReadItem{padding:15px 0}
}


/* 2026-09-24 dynamic station page: quiet surface, meaningful imagery only. */
.generatedArea main{
  padding:18px 0 34px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.generatedArea .breadcrumb{margin-bottom:26px}
.generatedArea .articleHero{padding-top:8px}
.generatedArea .articleHero:has(.generatedAreaVisual[hidden]){
  grid-template-columns:minmax(0,820px);
}
.generatedArea .generatedAreaVisual[hidden]{display:none!important}
.generatedArea .articleBottomGrid{margin-top:34px}
@media(max-width:600px){
  .generatedArea main{padding:4px 0 24px}
  .generatedArea .breadcrumb{margin-bottom:18px}
  .generatedArea .articleHero{padding-top:4px}
}

/* 2026-09-24 system consistency pass: typography, controls, focus, spacing. */
:root{
  --focus-ring:rgba(45,139,126,.28);
  --control-radius:12px;
}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
:is(a,button,input,select,summary,[tabindex]):focus-visible{
  outline:3px solid var(--focus-ring);
  outline-offset:3px;
}
button,input,select{font:inherit}
.cta a,.stationJump a,.axisButtons button{min-height:44px}
.cta a{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--control-radius)}
.related a{text-underline-offset:3px}
@media(max-width:600px){
  .page{padding-left:12px;padding-right:12px}
  .navlinks a{min-height:42px;font-size:13px}
  .stationJump a,.axisButtons button,.cta a{min-height:46px}
  .meta,.scoreGuide,.factNote,.source p,.localSceneSource{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* 2026-09-24 station article microcopy readability pass. */
@media(max-width:600px){
  .score span,.score small,.fact span,
  .metricGuideEyebrow,.questionEntryEyebrow,.lifeAnswersEyebrow,.localSceneEyebrow,
  .sceneLabel,.fitCheckLabel{font-size:12px!important;line-height:1.45}
}

/* 2026-09-24 station-to-municipality context bridge. */
.stationMunicipalityContext{
  margin:-20px 0 34px;
  padding:0 0 20px;
  border-bottom:1px solid var(--line);
}
.stationMunicipalityContext a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:#2d756c;
  font-size:14px;
  font-weight:850;
  text-decoration:none;
}
.stationMunicipalityContext a::before{
  content:"街全体を見る";
  margin-right:10px;
  color:#71817e;
  font-size:12px;
  font-weight:800;
}
.stationMunicipalityContext a::after{content:"→";margin-left:9px}
.stationMunicipalityContext a:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){
  .stationMunicipalityContext{margin:-16px 0 28px;padding-bottom:16px}
  .stationMunicipalityContext a{width:100%;justify-content:space-between;gap:8px;font-size:14px}
  .stationMunicipalityContext a::before{font-size:12px}
}



/* 2026-09-24 shared money context on station pages. */
.generatedArea .stationMoney{scroll-margin-top:18px}
.stationMoneyGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}
.stationMoneyCard{min-width:0;padding:16px;border:1px solid #e0e8e5;border-radius:14px;background:#fbfdfc}
.stationMoneyCard small{display:block;color:#6a7a77;font-size:12px;font-weight:850}
.stationMoneyCard strong{display:block;margin-top:5px;color:#2d6860;font-size:22px;line-height:1.25;font-variant-numeric:tabular-nums}
.stationMoneyCard span{display:block;margin-top:5px;color:#6e7e7b;font-size:11px;font-weight:800}
@media(max-width:720px){
  .stationMoneyGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stationMoneyCard span{font-size:12px}
}
@media(max-width:380px){.stationMoneyGrid{grid-template-columns:1fr}}


/* 2026-09-24 one-second station read: enrich the existing three metrics instead of adding another chart. */
.stationMetricGuide{max-width:720px;margin:-10px 0 17px!important;color:#71807d!important;font-size:12px!important;line-height:1.6!important}
.generatedArea .quickReadItem>b.stationMetricValue{display:block;font-size:inherit}
.stationMetricLine{display:flex;align-items:center;gap:7px;color:#49635e;font-size:12px;font-weight:850}
.stationMetricLine .stationMetricIcon{width:18px;height:18px;flex:0 0 auto}
.stationMetricLine em{margin-left:auto;padding:3px 7px;border-radius:999px;background:#eef3f2;color:#60736f;font-size:10px;font-style:normal;font-weight:850}
.stationMetricValue.is-high .stationMetricLine em{background:#e7f4f0;color:#277166}
.stationMetricValue.is-low .stationMetricLine em{background:#fff2df;color:#8b6332}
.stationMetricNumber{display:block;margin-top:5px;color:#173f38;font-size:30px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.035em}
.stationMetricBar{position:relative;display:block;height:7px;margin-top:10px;border-radius:999px;background:#e6ecea;overflow:hidden}
.stationMetricBar i{display:block;height:100%;border-radius:999px;background:#5b9f94}
.stationMetricValue.is-low .stationMetricBar i{background:#bd986a}
.stationMetricValue.is-missing .stationMetricBar i{display:none}
.stationMetricBar>span{position:absolute;top:-2px;bottom:-2px;left:50%;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(58,83,78,.18)}
@media(max-width:600px){
  .stationMetricGuide{font-size:12px!important;margin-top:-7px!important}
  .stationMetricNumber{font-size:28px}
}


/* 2026-09-24 municipality context for nationwide dynamic station pages. */
.generatedArea .stationMunicipalityData{scroll-margin-top:18px}
.stationMunicipalityGrid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:18px;
}
.stationMunicipalityItem{
  min-width:0;
  padding:14px 0 2px;
  border-top:2px solid #d4e4df;
}
.stationMunicipalityItem small{
  display:block;
  color:#697a77;
  font-size:12px;
  font-weight:850;
}
.stationMunicipalityItem strong{
  display:block;
  margin-top:5px;
  color:#244f48;
  font-size:24px;
  line-height:1.2;
  font-variant-numeric:tabular-nums;
}
.stationMunicipalityItem span{
  display:block;
  margin-top:6px;
  color:#72807e;
  font-size:11px;
  font-weight:750;
  line-height:1.5;
}
@media(max-width:720px){
  .stationMunicipalityGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
  .stationMunicipalityItem strong{font-size:22px}
  .stationMunicipalityItem span{font-size:12px}
}
@media(max-width:380px){
  .stationMunicipalityGrid{grid-template-columns:1fr}
}


/* 2026-09-24 station fact strip: expose high-value public facts before prose. */
.stationFactStrip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:18px 0 12px;
}
.stationFactItem{
  min-width:0;
  padding:14px 13px;
  border:1px solid #dce7e4;
  border-radius:12px;
  background:#f8fbfa;
}
.stationFactItem small{
  display:block;
  margin-bottom:5px;
  color:#71817e;
  font-size:11px;
  font-weight:800;
  line-height:1.35;
}
.stationFactItem strong{
  display:block;
  color:#294a45;
  font-size:17px;
  font-weight:900;
  line-height:1.25;
  letter-spacing:-.02em;
}
.stationFactItem span{
  display:block;
  margin-top:6px;
  color:#71817e;
  font-size:11px;
  font-weight:700;
  line-height:1.5;
}
@media(max-width:700px){
  .stationFactStrip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .stationFactItem{padding:12px 10px}
  .stationFactItem strong{font-size:16px}
}


/* 2026-09-24 station final rhythm: faster scan on desktop and mobile. */
body.ldk-area.generatedArea .stationHero{
  max-width:940px;
  padding-top:24px;
  padding-bottom:26px;
}
body.ldk-area.generatedArea .stationHero h1{
  max-width:900px;
  text-wrap:balance;
}
body.ldk-area.generatedArea .stationHero .lead{
  max-width:700px;
  margin-bottom:0;
}
.generatedArea .stationJump{
  max-width:760px;
  margin-top:17px;
}
.generatedArea .stationVerdict{
  max-width:880px;
  margin-top:26px;
  margin-bottom:30px;
  padding-bottom:26px;
}
.generatedArea .stationVerdict h2,
.generatedArea .quickRead>h2,
.generatedArea .numberGuide h2,
.generatedArea .compareEditorial h2{
  text-wrap:balance;
}
.generatedArea .quickRead{
  max-width:980px;
  padding-bottom:30px;
}
.generatedArea .quickReadGrid{
  align-items:start;
  gap:28px;
}
.generatedArea .quickReadItem{
  padding-top:15px;
}
.generatedArea .quickReadItem p{
  max-width:31em;
  color:#53666b;
  font-size:14px;
  line-height:1.75;
}
.generatedArea .stationMetricNumber{
  font-size:34px;
}
.generatedArea .numberGuide{
  max-width:920px;
  margin-top:32px;
  margin-bottom:32px;
  padding-bottom:30px;
}
.generatedArea .numberGuide>p:not(.ldkSectionLabel):not(.numberGuideSub){
  max-width:760px;
}
.generatedArea .stationMunicipalityGrid,
.generatedArea .stationMoneyGrid{
  margin-top:20px;
}
.generatedArea .stationFactStrip{
  gap:12px;
  margin-top:20px;
}
.generatedArea .compareEditorial{
  max-width:920px;
  margin-top:34px;
  padding-top:34px;
}
.generatedArea .articleBottomGrid{
  max-width:920px;
  gap:34px;
}
@media(max-width:600px){
  body.ldk-area.generatedArea .stationHero{
    padding-top:14px;
    padding-bottom:22px;
  }
  body.ldk-area.generatedArea .stationHero h1{
    font-size:34px;
    line-height:1.2;
  }
  body.ldk-area.generatedArea .stationHero .lead{
    font-size:15px;
    line-height:1.75;
  }
  .generatedArea .stationJump{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-top:16px;
  }
  .generatedArea .stationJump a{
    min-height:44px;
    padding:8px 10px;
    font-size:12px;
  }
  .generatedArea .stationVerdict{
    margin:22px 0 25px;
    padding-bottom:22px;
  }
  .generatedArea .stationVerdict h2{
    font-size:26px;
    line-height:1.35;
  }
  .generatedArea .stationVerdict p:last-child{
    font-size:15px;
    line-height:1.8;
  }
  .generatedArea .quickRead{
    padding-bottom:25px;
  }
  .generatedArea .quickRead>h2{
    margin-bottom:15px;
    font-size:24px;
  }
  .generatedArea .quickReadItem{
    padding:14px 0 16px;
  }
  .generatedArea .quickReadItem p{
    font-size:14px;
    line-height:1.7;
  }
  .generatedArea .stationMetricNumber{
    font-size:30px;
  }
  .generatedArea .numberGuide{
    margin:28px 0;
    padding-bottom:25px;
  }
  .generatedArea .numberGuide h2{
    font-size:23px;
    line-height:1.42;
  }
  .generatedArea .stationFactStrip{
    gap:8px;
    margin-top:16px;
  }
  .generatedArea .stationFactItem{
    padding:11px 10px;
  }
  .generatedArea .stationFactItem span{
    font-size:11px;
    line-height:1.45;
  }
  .generatedArea .compareEditorial{
    margin-top:28px;
    padding-top:28px;
  }
  .generatedArea .articleBottomGrid{
    gap:20px;
  }
}

/* Shared station metric visualization. One component for generated and editorial station pages. */
.stationMetricViz{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:16px 0 18px;
}
.stationMetricVizItem{
  min-width:0;
  padding:12px 13px;
  border:1px solid #dce7e4;
  border-radius:13px;
  background:#f8fbfa;
}
.stationMetricVizTop{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
}
.stationMetricVizTop span{
  color:#60736f;
  font-size:12px;
  font-weight:850;
}
.stationMetricVizTop strong{
  color:#285e56;
  font-size:20px;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.stationMetricVizBar{
  position:relative;
  display:block;
  width:100%;
  height:7px;
  margin-top:9px;
  overflow:hidden;
  border-radius:999px;
  background:#e4ece9;
}
.stationMetricVizBar i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#2d8b7e;
}
.stationMetricVizBar>span{
  position:absolute;
  top:-2px;
  bottom:-2px;
  width:2px;
  background:#fff;
  box-shadow:0 0 0 1px rgba(58,83,78,.18);
  transform:translateX(-1px);
}
@media(max-width:600px){
  .stationMetricViz{grid-template-columns:1fr;gap:8px;margin:14px 0 16px}
  .stationMetricVizItem{padding:10px 11px}
}


/* 2026-09-26 dynamic station mobile first-fold compression.
   Keep desktop editorial depth, but let mobile users see station name,
   verdict and the three core scores without wading through navigation chrome. */
@media(max-width:600px){
  body.ldk-area.generatedArea .breadcrumb{
    margin-bottom:10px;
    font-size:11px;
    line-height:1.45;
  }
  body.ldk-area.generatedArea .stationHero{
    padding-top:4px;
    padding-bottom:12px;
  }
  body.ldk-area.generatedArea .stationHero .ldkKicker{
    margin-bottom:5px;
    font-size:11px;
  }
  body.ldk-area.generatedArea .stationHero h1{
    margin-bottom:7px;
    font-size:30px;
    line-height:1.16;
  }
  body.ldk-area.generatedArea .stationHero .lead{
    max-width:34em;
    font-size:14px;
    line-height:1.65;
  }
  body.ldk-area.generatedArea .stationJump{
    display:flex;
    grid-template-columns:none;
    flex-wrap:nowrap;
    gap:6px;
    margin:12px -2px 0;
    padding:2px 2px 4px;
    overflow-x:auto;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  body.ldk-area.generatedArea .stationJump::-webkit-scrollbar{display:none}
  body.ldk-area.generatedArea .stationJump a{
    flex:0 0 auto;
    min-height:36px;
    padding:6px 10px;
    border-radius:999px;
    font-size:11px;
    white-space:nowrap;
  }
  body.ldk-area.generatedArea .stationJump a:after{margin-left:5px}
  body.ldk-area.generatedArea .stationHero .generatedAreaVisual{
    margin-top:12px;
    max-height:none;
    overflow:visible;
    border-radius:12px;
  }
  body.ldk-area.generatedArea .stationHero .generatedAreaVisual img{
    width:100%;
    height:150px;
    object-fit:cover;
    border-radius:12px;
  }
  body.ldk-area.generatedArea .stationVerdict{
    margin:14px 0 18px;
    padding-bottom:17px;
  }
  body.ldk-area.generatedArea .stationVerdict .ldkSectionLabel{
    margin-bottom:4px;
    font-size:10px;
  }
  body.ldk-area.generatedArea .stationVerdict h2{
    margin:3px 0 7px;
    font-size:22px;
    line-height:1.3;
  }
  body.ldk-area.generatedArea .stationVerdict p:last-child{
    font-size:13px;
    line-height:1.65;
  }
  body.ldk-area.generatedArea .quickRead{
    padding-bottom:18px;
  }
  body.ldk-area.generatedArea .quickRead>h2{
    margin:3px 0 7px;
    font-size:20px;
    line-height:1.35;
  }
  body.ldk-area.generatedArea .stationMetricGuide{
    margin:0 0 9px!important;
    font-size:11px!important;
  }
  body.ldk-area.generatedArea .quickReadGrid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
  }
  body.ldk-area.generatedArea .quickReadItem{
    min-width:0;
    padding:10px 8px 9px;
    border:1px solid #dce7e4;
    border-radius:11px;
    background:#f8fbfa;
  }
  body.ldk-area.generatedArea .quickReadItem p{
    display:none;
  }
  body.ldk-area.generatedArea .stationMetricLine{
    display:block;
    font-size:10px;
    line-height:1.3;
  }
  body.ldk-area.generatedArea .stationMetricLine .stationMetricIcon{
    display:none;
  }
  body.ldk-area.generatedArea .stationMetricLine em{
    display:block;
    width:max-content;
    max-width:100%;
    margin:4px 0 0;
    padding:2px 5px;
    font-size:9px;
  }
  body.ldk-area.generatedArea .stationMetricNumber{
    margin-top:7px;
    font-size:25px;
  }
  body.ldk-area.generatedArea .stationMetricBar{
    height:5px;
    margin-top:8px;
  }
}


/* 2026-09-26 local station rank within municipality. */
.stationLocalRankGrid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.stationLocalRankItem{
  padding:15px 14px;
  border:1px solid #dce7e4;
  border-radius:13px;
  background:#f8fbfa;
}
.stationLocalRankItem small{
  display:block;
  color:#6f7f7c;
  font-size:12px;
  font-weight:850;
}
.stationLocalRankItem strong{
  display:block;
  margin-top:5px;
  color:#244f48;
  font-size:27px;
  line-height:1.05;
  font-variant-numeric:tabular-nums;
}
.stationLocalRankItem strong span{
  margin-left:4px;
  color:#61736f;
  font-size:12px;
  font-weight:800;
}
.stationLocalRankItem em{
  display:block;
  margin-top:7px;
  color:#39766d;
  font-size:11px;
  font-style:normal;
  font-weight:850;
}
.stationLocalCompareAction{margin-top:16px}
.stationLocalCompareAction a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  color:#2d756c;
  font-size:13px;
  font-weight:850;
  text-decoration:none;
}
.stationLocalCompareAction a:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){
  .stationLocalRankGrid{gap:7px;margin-top:14px}
  .stationLocalRankItem{padding:11px 9px}
  .stationLocalRankItem small{font-size:10px}
  .stationLocalRankItem strong{font-size:22px}
  .stationLocalRankItem strong span{display:block;margin:4px 0 0;font-size:10px}
  .stationLocalRankItem em{font-size:9px;line-height:1.35}
}


/* 2026-09-26 detail first-look summary: show meaning before the score grid. */
.generatedArea .detailFirstLook{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.generatedArea .firstLookItem{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:7px 11px;
  border:1px solid #dce7e4;
  border-radius:999px;
  background:#fff;
}
.generatedArea .firstLookItem small{
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
}
.generatedArea .firstLookItem strong{font-size:13px;line-height:1.2}
.generatedArea .firstLookItem.is-strong{border-color:#bfded7;background:#f0f8f6;color:#286f66}
.generatedArea .firstLookItem.is-careful{border-color:#e7d9c5;background:#fbf6ee;color:#795f3c}
@media(max-width:600px){
  .generatedArea .detailFirstLook{gap:6px;margin-top:9px}
  .generatedArea .firstLookItem{min-height:31px;padding:5px 8px}
  .generatedArea .firstLookItem small{font-size:9px}
  .generatedArea .firstLookItem strong{font-size:11px}
  .generatedArea .stationHero .lead{margin-bottom:0}
}
