@font-face {
  font-family: "WDelta Display JP";
  src: url("../../../font/IBMPlexSansJP-Light.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 300;
}

.responsive-thumbnail {
  display: contents;
}

.responsive-thumbnail > source {
  display: none;
}

@font-face {
  font-family: "WDelta UI";
  src: url("../../../font/LINESeedJP_OTF_Rg.woff2") format("woff2");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: "WDelta UI";
  src: url("../../../font/LINESeedJP_OTF_Bd.woff2") format("woff2");
  font-display: swap;
  font-style: normal;
  font-weight: 700;
}

:root {
  color-scheme: dark;
  --ink: #eee9df;
  --soft-ink: #c5c4bd;
  --muted: #8b9cac;
  --dim: #667785;
  --navy: #010a12;
  --navy-2: #03121c;
  --panel: rgba(3, 18, 28, .9);
  --line: rgba(160, 184, 194, .17);
  --line-strong: rgba(160, 184, 194, .28);
  --cyan: #45d1cb;
  --gold: #d8a855;
  --life: #7cc557;
  --science: #6da8e6;
  --internet: #9880e4;
  --humans: #dfa54e;
  --odd: #ad83df;
  --earth: #45bab6;
  --display-font: "WDelta Display JP", "WDelta UI", sans-serif;
  --body-font: "WDelta UI", sans-serif;
  font-family: var(--body-font);
}

* { box-sizing: border-box; }
html { background: var(--navy); scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  min-height: 100vh;
  overflow-x: hidden;
  color: var(--ink);
  background:
    radial-gradient(circle at 66% 12%, rgba(24, 62, 78, .2), transparent 40rem),
    linear-gradient(145deg, #010810, #05151f 68%, #010a12);
}
body::before {
  content: "";
  position: fixed;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: .16;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.1'/%3E%3C/svg%3E");
}
a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
:focus-visible { outline: 2px solid var(--cyan); outline-offset: 4px; }
.skip-link {
  position: fixed;
  z-index: 100;
  top: .5rem;
  left: .5rem;
  padding: .75rem 1rem;
  background: var(--ink);
  color: var(--navy);
  transform: translateY(-160%);
}
.skip-link:focus { transform: none; }

.site-header {
  position: sticky;
  z-index: 30;
  top: 0;
  height: 5.4rem;
  display: grid;
  grid-template-columns: 14rem minmax(0, 1fr);
  align-items: center;
  border-bottom: 1px solid var(--line);
  background: rgba(1, 10, 18, .92);
  backdrop-filter: blur(18px);
}
.brand-slot {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: .1rem;
  padding: .15rem 1.9rem 0;
  border-right: 1px solid var(--line);
}
.wordmark {
  white-space: nowrap;
  font: 300 2rem/1 var(--display-font);
  letter-spacing: .105em;
  text-decoration: none;
}
.wordmark span { color: var(--gold); }
.site-switch {
  display: inline-flex;
  align-items: center;
  gap: .2rem;
  min-height: 3rem;
  color: #788a99;
  font: 700 .88rem/1 var(--body-font);
  letter-spacing: .1em;
}
.site-switch a {
  min-width: 3rem;
  min-height: 3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 2rem;
  text-decoration: none;
}
.site-switch a:hover { color: var(--ink); background: rgba(69,209,203,.07); }
.site-switch a.is-active { color: var(--gold); }
.site-switch > span { color: #485966; }
.header-tools {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2rem;
  min-width: 0;
  padding: 0 2rem;
  color: var(--muted);
}
.utc-display { display: grid; gap: .15rem; text-align: right; }
.utc-display span { color: #8ea0b1; font: 700 .7rem/1 var(--body-font); letter-spacing: .16em; }
.utc-display time { color: #c5d0da; font: 400 .9rem/1.1 var(--body-font); letter-spacing: .08em; }
.language { display: flex; align-items: center; gap: .4rem; color: #8494a2; font-size: .875rem; }
.language button {
  min-width: 2.75rem;
  min-height: 2.75rem;
  border: 0;
  padding: .5rem;
  background: none;
  color: var(--dim);
  cursor: pointer;
  letter-spacing: .12em;
}
.language button[aria-pressed="true"] { color: var(--ink); }

.mobile-menu-button,
.mobile-menu,
.mobile-menu-backdrop { display: none; }
.mobile-menu[hidden],
.mobile-menu-backdrop[hidden] { display: none !important; }

.shell { display: grid; grid-template-columns: 14rem minmax(0, 1fr); min-height: calc(100vh - 5.4rem); }
.primary-nav {
  position: sticky;
  top: 5.4rem;
  align-self: start;
  height: calc(100vh - 5.4rem);
  padding: 1.8rem 1.35rem;
  border-right: 1px solid var(--line);
  background: linear-gradient(180deg, rgba(2, 14, 23, .86), rgba(1, 10, 18, .58));
}
.primary-nav a {
  position: relative;
  display: flex;
  align-items: center;
  gap: .95rem;
  min-height: 3.85rem;
  margin: 0 -1.35rem;
  padding: 0 1.65rem;
  color: #89939c;
  text-decoration: none;
  transition: color .18s, background-color .18s;
}
.primary-nav a::before {
  content: "";
  position: absolute;
  left: 0;
  width: 2px;
  height: 0;
  background: var(--gold);
  transition: height .18s;
}
.primary-nav a svg,
.primary-nav a > img {
  width: 1.25rem;
  height: 1.25rem;
  flex: 0 0 auto;
}
.primary-nav a svg {
  color: #7c8994;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.primary-nav a > img {
  object-fit: contain;
  opacity: .74;
  filter: saturate(.82) brightness(.9);
}
.primary-nav a b { font: 400 1.04rem/1.45 var(--body-font); letter-spacing: .025em; }
.primary-nav a:hover,
.primary-nav a[aria-current="page"] { color: var(--gold); background: linear-gradient(90deg, rgba(216,168,85,.08), transparent); }
.primary-nav a:hover::before,
.primary-nav a[aria-current="page"]::before { height: 100%; }
.primary-nav a[aria-current="page"] svg { color: var(--gold); }
.primary-nav a:hover > img,
.primary-nav a[aria-current="page"] > img { opacity: 1; filter: saturate(.92) brightness(1.06); }
.nav-note {
  max-width: 10.4rem;
  margin: 2.2rem .45rem 0;
  padding-top: 1.6rem;
  border-top: 1px solid var(--line);
  color: #a9b4bd;
  font: 400 .875rem/1.75 var(--body-font);
}

main { min-width: 0; }
.status { padding: 2rem; color: var(--muted); }
.status:empty { display: none; }
.noscript { padding: 2rem; }

.today-hero {
  position: relative;
  height: clamp(31rem, 56vh, 39rem);
  min-height: 31rem;
  overflow: hidden;
  border-bottom: 1px solid var(--line);
  background: #010810;
}
.hero-earth-frame { position: absolute; inset: 0; overflow: hidden; background: #010810; }
.hero-earth-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 54%;
  filter: saturate(.9) contrast(1.04) brightness(.78);
}
.hero-earth-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(1,8,14,.96) 0, rgba(1,8,14,.72) 30%, rgba(1,8,14,.14) 63%, rgba(1,8,14,.25) 100%),
    linear-gradient(0deg, rgba(1,8,14,.86), transparent 34%, rgba(1,8,14,.12));
}
.pulse-section {
  padding: 1.15rem clamp(1.25rem, 3vw, 3.2rem) 1.35rem;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(180deg, rgba(5,22,33,.97), rgba(1,10,18,.96));
}
.pulse-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  max-width: 94rem;
  margin: 0 auto .75rem;
  color: #93b8ce;
}
.pulse-heading h2 {
  display: flex;
  align-items: center;
  gap: .55rem;
  margin: 0;
  color: #bdeaff;
  font: 400 1.02rem/1.25 var(--body-font);
  letter-spacing: .12em;
}
.pulse-heading img,
.hero-map-link img { width: 1.65rem; height: 1.65rem; object-fit: contain; }
.pulse-heading span { color: #7e93a2; font: 700 .74rem/1.4 var(--body-font); letter-spacing: .12em; }
.pulse-layout {
  width: 100%;
  max-width: 94rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(19rem, 24rem);
  gap: .85rem;
  align-items: stretch;
}
.map-stage {
  position: relative;
  min-width: 0;
  height: clamp(28rem, 42vw, 34rem);
  overflow: hidden;
  border: 1px solid rgba(89,166,206,.34);
  border-radius: .3rem;
  background: #010810;
}
.world-map-viewport {
  position: absolute;
  inset: 0;
  overflow: hidden;
  outline: none;
  cursor: grab;
  touch-action: pan-y;
  overscroll-behavior-x: contain;
  user-select: none;
}
.world-map-viewport.is-dragging { cursor: grabbing; }
.world-map-viewport:focus-visible { box-shadow: inset 0 0 0 2px var(--cyan); }
.world-map-scene {
  position: absolute;
  inset: 0;
  overflow: hidden;
  contain: paint;
  transform-origin: center;
  transition: transform .16s ease;
  will-change: transform;
}
.world-map-viewport.is-dragging .world-map-scene { transition: none; }
.world-map-texture,
.world-map-grid,
.world-map-svg-layer {
  position: absolute;
  inset: 0;
  background-position: 0 50%;
  background-repeat: repeat-x;
  background-size: 100% 100%;
  pointer-events: none;
}
.world-map-texture { z-index: 1; }
.world-map-grid {
  z-index: 2;
  opacity: .08;
  background-image:
    linear-gradient(rgba(105,180,199,.16) 1px, transparent 1px),
    linear-gradient(90deg, rgba(105,180,199,.16) 1px, transparent 1px);
  background-size: 100% 25%, 12.5% 100%;
}
.world-map-svg-layer { z-index: 3; opacity: .09; mix-blend-mode: screen; }
.marker-layer { position: absolute; z-index: 4; inset: 0; }
.map-marker {
  --marker-accent: var(--cyan);
  position: absolute;
  width: .9rem;
  height: .9rem;
  margin: -.45rem 0 0 -.45rem;
  border: 2px solid color-mix(in srgb, var(--marker-accent) 58%, white);
  border-radius: 50%;
  background: var(--marker-accent);
  box-shadow:
    0 0 0 .4rem color-mix(in srgb, var(--marker-accent) 18%, transparent),
    0 0 1.25rem .32rem color-mix(in srgb, var(--marker-accent) 68%, transparent);
  cursor: pointer;
  transition: transform .18s, box-shadow .18s, filter .18s;
}
.map-marker[data-category="INTERNET"] { --marker-accent: var(--internet); }
.map-marker[data-category="SCIENCE"] { --marker-accent: var(--science); }
.map-marker[data-category="HUMANS"] { --marker-accent: var(--humans); }
.map-marker[data-category="LIFE"] { --marker-accent: var(--life); }
.map-marker[data-category="EARTH"] { --marker-accent: var(--earth); }
.map-marker[data-category="ODD"] { --marker-accent: var(--odd); }
.map-marker:hover,
.map-marker:focus-visible,
.map-marker.is-active {
  z-index: 5;
  transform: scale(1.42);
  filter: brightness(1.2);
  box-shadow:
    0 0 0 .55rem color-mix(in srgb, var(--marker-accent) 22%, transparent),
    0 0 1.35rem .4rem color-mix(in srgb, var(--marker-accent) 76%, transparent);
}
.map-tooltip {
  position: absolute;
  z-index: 8;
  display: grid;
  gap: .18rem;
  width: max-content;
  max-width: min(18rem, calc(100% - 1.5rem));
  padding: .72rem .82rem;
  border: 1px solid rgba(69,209,203,.42);
  background: rgba(3,19,30,.96);
  color: var(--ink);
  text-align: left;
  box-shadow: 0 .7rem 1.8rem rgba(0,0,0,.35);
  pointer-events: none;
}
.map-tooltip[hidden] { display: none; }
.map-tooltip::after {
  content: "";
  position: absolute;
  left: var(--tooltip-anchor-x, 50%);
  width: .55rem;
  height: .55rem;
  border-right: 1px solid rgba(69,209,203,.42);
  border-bottom: 1px solid rgba(69,209,203,.42);
  background: #03131e;
  transform: translateX(-50%) rotate(45deg);
}
.map-tooltip[data-placement="top"]::after { bottom: -.34rem; }
.map-tooltip[data-placement="bottom"]::after { top: -.34rem; transform: translateX(-50%) rotate(225deg); }
.map-tooltip b { font: 400 .95rem/1.45 var(--body-font); }
.map-tooltip span { color: #b7c8d0; font: 400 .84rem/1.4 var(--body-font); }
.map-tooltip em { color: var(--cyan); font: 700 .76rem/1.35 var(--body-font); letter-spacing: .04em; }
.hero-heading {
  position: absolute;
  z-index: 5;
  top: clamp(2.5rem, 6vh, 4.5rem);
  left: clamp(1.5rem, 3.3vw, 3.7rem);
  width: min(50vw, 40rem);
  text-shadow: 0 2px 24px #010810;
}
.hero-heading::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -2rem -3rem -3rem -3rem;
  background: radial-gradient(ellipse at 35% 38%, rgba(1,9,16,.72), rgba(1,9,16,.25) 55%, transparent 76%);
}
.eyebrow {
  margin: 0 0 1rem;
  color: #86a6c8;
  font: 700 .84rem/1.45 var(--body-font);
  letter-spacing: .3em;
  text-transform: uppercase;
}
.hero-heading h1 {
  margin: 0;
  font: 300 clamp(3.2rem, 5vw, 5.25rem)/1.04 var(--display-font);
  letter-spacing: -.035em;
}
.hero-heading h1 span { display: block; white-space: nowrap; }
.hero-heading h1 em { color: var(--gold); font-style: normal; }
.hero-map-link {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  min-height: 2.9rem;
  margin-top: 1.45rem;
  padding: .55rem .95rem;
  border: 1px solid rgba(86,184,233,.48);
  border-radius: .18rem;
  background: rgba(2,18,29,.46);
  color: #bdeaff;
  font: 700 .84rem/1.3 var(--body-font);
  letter-spacing: .06em;
  text-decoration: none;
  text-shadow: none;
  backdrop-filter: blur(8px);
}
.hero-map-link:hover { border-color: #7ccfff; background: rgba(10,56,82,.5); }

.hero-rail {
  position: relative;
  z-index: 6;
  width: 100%;
  display: grid;
  align-content: start;
  gap: .85rem;
}
.connection-panel {
  position: relative;
  width: 100%;
  padding: 1.45rem 1.55rem 1.3rem;
  border: 1px solid rgba(216,168,85,.38);
  border-radius: .15rem;
  background: linear-gradient(145deg, rgba(3,22,32,.94), rgba(2,14,23,.88));
  box-shadow: 0 1.2rem 3rem rgba(0,0,0,.2), inset 0 0 0 1px rgba(69,209,203,.035);
  backdrop-filter: blur(14px);
}
.connection-panel::before,
.connection-panel::after {
  content: "";
  position: absolute;
  width: .7rem;
  height: .7rem;
  border-color: rgba(216,168,85,.65);
}
.connection-panel::before { top: -.1rem; left: -.1rem; border-top: 1px solid; border-left: 1px solid; }
.connection-panel::after { right: -.1rem; bottom: -.1rem; border-right: 1px solid; border-bottom: 1px solid; }
.connection-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.connection-panel .label { display: flex; align-items: center; gap: .55rem; color: var(--cyan); font: 700 .72rem/1 var(--body-font); letter-spacing: .13em; }
.connection-panel .label i { position: relative; display: inline-block; width: 1.25rem; height: .72rem; }
.connection-panel .label i::before,
.connection-panel .label i::after { content: ""; position: absolute; top: 0; width: .62rem; height: .62rem; border: 1px solid var(--cyan); border-radius: 50%; }
.connection-panel .label i::before { left: 0; }
.connection-panel .label i::after { right: 0; }
.connection-panel h2 { max-width: 19rem; margin: 1rem 0 .8rem; font: 300 1.65rem/1.35 var(--display-font); }
.connection-panel p { margin: 0; color: #d0d8dd; font: 400 1.08rem/1.8 var(--body-font); white-space: pre-line; }
.connection-panel a { position: relative; z-index: 1; display: inline-flex; align-items: center; min-height: 2.75rem; margin-top: .85rem; padding: .55rem .8rem; border: 1px solid rgba(69,209,203,.38); color: #8ce8e3; font-size: .875rem; text-decoration: none; }
.connection-thumbs { display: flex; padding-left: .45rem; }
.connection-thumbs img { width: 2.65rem; height: 2.65rem; margin-left: -.45rem; border: 1px solid rgba(69,209,203,.52); border-radius: 50%; object-fit: cover; background: #06131d; }

.global-summary {
  position: relative;
  z-index: 7;
  width: 100%;
  margin: 0;
  border: 1px solid rgba(69,209,203,.26);
  background: rgba(2, 16, 25, .88);
  backdrop-filter: blur(12px);
}
.global-toggle {
  width: 100%;
  border: 0;
  background: transparent;
  min-height: 2.9rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .65rem .85rem;
  color: #a9c8cd;
  cursor: pointer;
  list-style: none;
  font-size: .98rem;
}
.global-toggle:hover { background: rgba(69,209,203,.06); }
.global-toggle:focus-visible { outline: 2px solid var(--cyan); outline-offset: -2px; }
.global-symbol { color: var(--cyan); font: 1rem/1 var(--body-font); }
.global-toggle > span:not(.global-symbol) { margin-right: auto; text-align: left; }
.global-toggle strong { color: var(--cyan); font: 700 .8rem/1 var(--body-font); white-space: nowrap; }
.global-list {
  position: absolute;
  z-index: 2;
  top: 100%;
  right: -1px;
  left: -1px;
  display: grid;
  max-height: min(17rem, 42vh);
  overflow-y: auto;
  border: 1px solid rgba(69,209,203,.26);
  background: rgba(2,16,25,.98);
  box-shadow: 0 1rem 2rem rgba(0,0,0,.28);
  overscroll-behavior: contain;
}
.global-list[hidden] { display: none; }
.global-marker {
  display: grid;
  grid-template-columns: minmax(6.2rem, .42fr) minmax(0, 1fr);
  gap: .65rem;
  align-items: start;
  width: 100%;
  min-height: 3rem;
  border-bottom: 1px solid var(--line);
  padding: .62rem .85rem;
  background: transparent;
  color: var(--soft-ink);
  text-align: left;
}
.global-marker:last-child { border-bottom: 0; }
.global-marker:hover,
.global-marker.is-active { background: rgba(69,209,203,.08); }
.global-marker p,
.global-marker a { display: grid; gap: .2rem; margin: 0; }
.global-marker a { color: var(--soft-ink); text-decoration: none; }
.global-marker a:focus-visible { outline: 2px solid var(--cyan); outline-offset: 2px; }
.global-marker span { color: var(--cyan); font: 700 .78rem/1.45 var(--body-font); letter-spacing: .06em; }
.global-category-label { display: inline-flex; align-items: center; gap: .45rem; }
.global-category-label > i {
  flex: 0 0 auto;
  width: .55rem;
  height: .55rem;
  border: 1px solid color-mix(in srgb, var(--cyan) 58%, white);
  border-radius: 50%;
  background: var(--cyan);
  box-shadow: 0 0 .95rem var(--cyan);
}
.global-marker small { color: #aebfc8; font: 400 .75rem/1.45 var(--body-font); }
.global-marker b { font: 400 .94rem/1.5 var(--body-font); }
.global-marker em { color: var(--cyan); font: 700 .75rem/1.4 var(--body-font); }

.content-section {
  position: relative;
  padding: 2.9rem clamp(1.25rem, 3vw, 3.2rem) 5rem;
  background:
    linear-gradient(180deg, rgba(8,27,39,.3), transparent 10rem),
    radial-gradient(circle at 45% 0, rgba(20,58,73,.13), transparent 32rem);
}
.content-section::before { content: ""; position: absolute; top: 0; right: 3%; left: 3%; height: 1px; background: linear-gradient(90deg, transparent, rgba(69,209,203,.2), transparent); }
.section-heading { max-width: 94rem; display: flex; align-items: end; justify-content: space-between; gap: 1.5rem; margin: 0 auto 1.7rem; }
.section-heading h2 { margin: 0; font: 300 clamp(2rem, 3vw, 2.8rem)/1.15 var(--display-font); }
.record-summary { display: grid; gap: .28rem; text-align: right; }
.record-summary strong { color: #d8dfe2; font: 700 .88rem/1.35 var(--body-font); letter-spacing: .04em; }
.record-summary span { color: #aab8c2; font-size: .8rem; }

.card-grid { width: 100%; max-width: 94rem; margin: 0 auto; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.35rem; }
.change-card {
  --accent: var(--cyan);
  position: relative;
  min-width: 0;
  min-height: 39rem;
  display: flex;
  flex-direction: column;
  padding: .9rem;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: .2rem;
  background: linear-gradient(155deg, rgba(8,27,39,.96), rgba(2,15,24,.97));
  box-shadow: 0 .8rem 2.5rem rgba(0,0,0,.1);
  transition: border-color .2s, transform .2s, box-shadow .2s;
}
.change-card:hover,
.change-card:focus-within,
.change-card.is-active { transform: translateY(-4px); border-color: var(--accent); box-shadow: 0 1.2rem 2.8rem rgba(0,0,0,.23); }
.change-card:focus-within { outline: 2px solid var(--cyan); outline-offset: 3px; }
.card-labels { display: flex; align-items: center; justify-content: space-between; gap: .65rem; min-height: 2rem; }
.category { display: flex; align-items: center; gap: .35rem; margin: 0; color: var(--accent); font: 700 .92rem/1 var(--body-font); letter-spacing: .08em; }
.category img { width: 1.35rem; height: 1.35rem; object-fit: contain; }
.verification-badge {
  display: inline-flex;
  align-items: center;
  min-height: 1.35rem;
  padding: .2rem .48rem;
  border: 1px solid rgba(145,160,175,.36);
  border-radius: 2rem;
  color: #b8c3ca;
  font: 700 .92rem/1.1 var(--body-font);
  letter-spacing: .07em;
  white-space: nowrap;
}
.verification-badge[data-status="REPORTED"] { border-color: rgba(216,168,85,.52); color: var(--gold); }
.verification-badge[data-status="UNVERIFIED"] { border-color: rgba(219,113,105,.62); color: #efaaa3; background: rgba(92,28,25,.24); }
.card-image { position: relative; aspect-ratio: 16 / 9; margin: .45rem 0 0; overflow: hidden; background: #07121b; }
.card-image::after { content: ""; position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 0 2.5rem rgba(1,8,14,.18); }
.card-image img { width: 100%; height: 100%; object-fit: cover; filter: brightness(1.04) saturate(1.04); transition: transform .45s, filter .45s; }
.change-card:hover .card-image img { transform: scale(1.035); filter: brightness(1.1) saturate(1.08); }
.change-card h3 { margin: 1rem 0 .65rem; font: 300 1.34rem/1.5 var(--display-font); }
.change-card h3 a { text-decoration: none; }
.change-card h3 a::after { content: ""; position: absolute; z-index: 3; inset: 0; }
.change-card h3,
.short,
.delta-note { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; }
.change-card h3 { -webkit-line-clamp: 3; }
.short { margin: 0; color: #d0d7dc; font-size: 1.08rem; line-height: 1.76; -webkit-line-clamp: 3; }
.delta-note { margin: auto 0 0; padding-top: 1rem; border-top: 1px solid var(--line); color: #c5ced3; font-size: 1.02rem; line-height: 1.76; -webkit-line-clamp: 3; }
.delta-note b { display: block; margin-bottom: .5rem; color: var(--accent); font: 700 .92rem/1.2 var(--body-font); letter-spacing: .07em; }
.change-card[data-category="EARTH"] { --accent: var(--earth); }
.change-card[data-category="LIFE"] { --accent: var(--life); }
.change-card[data-category="SCIENCE"] { --accent: var(--science); }
.change-card[data-category="INTERNET"] { --accent: var(--internet); }
.change-card[data-category="HUMANS"] { --accent: var(--humans); }
.change-card[data-category="ODD"] { --accent: var(--odd); }

.page { max-width: 76rem; margin: 0 auto; padding: clamp(2.5rem, 6vw, 6rem) clamp(1.25rem, 5vw, 5rem); }
.detail { max-width: 64rem; margin: 0 auto; padding: clamp(2.5rem, 6vw, 6rem) clamp(1.25rem, 5vw, 4rem); }
.page h1 { margin: 0 0 1rem; font: 300 clamp(2.5rem, 6vw, 5rem)/1.18 var(--display-font); }
.page-lead { max-width: 48rem; color: #d0d7dc; font-size: 1rem; line-height: 1.85; }
.delta-about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:2rem 0}
.delta-about-grid section{padding:1.35rem;border:1px solid var(--line);background:rgba(3,16,26,.72)}
.delta-about-grid h2{margin:0 0 .7rem;color:#dff6ff;font-size:1rem;letter-spacing:.05em}
.delta-about-grid p{margin:0;color:#aebfc8;font-size:.88rem;line-height:1.8}
.site-trust-footer{width:min(100% - 3rem,92rem);display:flex;justify-content:space-between;gap:1.5rem;margin:2rem auto 0;padding:1.25rem 0 1.8rem;border-top:1px solid rgba(96,188,228,.2);color:#78909b;font-size:.68rem;letter-spacing:.08em}
.site-trust-footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem 1.2rem}
.site-trust-footer a{color:#96abb5;text-decoration:none}
.site-trust-footer a:hover,.site-trust-footer a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:.25rem}
@media(max-width:720px){.delta-about-grid{grid-template-columns:1fr}.site-trust-footer{width:calc(100% - 2rem);align-items:flex-start;flex-direction:column}.site-trust-footer nav{justify-content:flex-start}}
.archive-list { display: grid; gap: .8rem; margin-top: 2.5rem; }
.archive-day { display: grid; grid-template-columns: 11rem 1fr auto; gap: 1rem; align-items: center; min-height: 4.5rem; padding: 1.2rem; border: 1px solid var(--line); text-decoration: none; }
.archive-day:hover,
.archive-day:focus-visible { border-color: var(--gold); }
.archive-day time { color: var(--gold); font-family: monospace; letter-spacing: .1em; }
.archive-day span { color: var(--muted); }
.detail-back { display: inline-flex; align-items: center; min-height: 2.75rem; margin-bottom: 2.5rem; color: var(--cyan); font-size: .94rem; }
.detail-header,
.detail-section,
.detail-compare,
.detail-actions { width: min(100%, 51rem); margin-right: auto; margin-left: auto; }
.detail-meta { display: flex; align-items: center; gap: .4rem; margin: 0 0 1rem; color: var(--gold); font: 700 .86rem/1.5 var(--body-font); letter-spacing: .1em; }
.detail-meta img { width: 1.55rem; height: 1.55rem; object-fit: contain; }
.detail h1 { margin: 0; font: 300 clamp(2.875rem, 4.1vw, 3.625rem)/1.18 var(--display-font); letter-spacing: -.025em; }
.detail-lead { margin: 1.25rem 0 0; color: #d8dedf; font-size: 1.2rem; line-height: 1.8; }
.verification-panel { display: flex; align-items: flex-start; gap: .9rem; margin: 0 0 1.5rem; padding: .9rem 1.05rem; border: 1px solid var(--line); color: #cbd5d9; font-size: .875rem; line-height: 1.65; }
.verification-panel strong { flex: 0 0 auto; color: var(--cyan); font-family: var(--body-font); letter-spacing: .06em; }
.verification-panel[data-status="REPORTED"] { border-color: rgba(216,168,85,.4); }
.verification-panel[data-status="REPORTED"] strong { color: var(--gold); }
.verification-panel[data-status="UNVERIFIED"] { border-color: rgba(219,113,105,.55); background: rgba(92,28,25,.2); }
.verification-panel[data-status="UNVERIFIED"] strong { color: #efaaa3; }
.detail-figure { margin: 3rem 0 3.75rem; }
.detail-image { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border: 1px solid var(--line); }
.detail-figure figcaption { margin-top: .7rem; color: #93a3ad; font-size: .86rem; line-height: 1.6; text-align: right; }
.detail-section { margin-top: 3.5rem; }
.detail-section h2,
.detail-compare h2 { margin: 0 0 1rem; color: var(--cyan); font: 700 1.35rem/1.4 var(--body-font); letter-spacing: .04em; }
.detail-section p,
.detail-compare p { margin: 0; color: #d2d9dd; font-size: 1.1rem; line-height: 1.82; }
html[lang="en"] .detail-lead,
html[lang="en"] .detail-section p,
html[lang="en"] .detail-compare p { line-height: 1.7; }
.detail-compare { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-top: 3.5rem; border: 1px solid var(--line); background: var(--line); }
.detail-compare > div { min-width: 0; padding: 1.65rem 1.75rem 1.75rem; background: rgba(6,20,30,.97); }
.detail-compare h2 { font-size: 1.08rem; }
.detail-compare > div:first-child h2 { color: #9eabb3; }
.detail-compare > div:last-child h2 { color: var(--cyan); }
.detail-compare p { font-size: 1.04rem; line-height: 1.78; }
.detail-delta { padding: 1.65rem 1.75rem 1.75rem; border-left: 3px solid var(--gold); background: linear-gradient(90deg, rgba(216,168,85,.09), rgba(6,20,30,.38)); }
.detail-delta h2 { color: var(--gold); }
.source-list { display: grid; gap: .5rem; padding: 0; list-style: none; }
.source-list li { display: grid; gap: .45rem; padding: 1.1rem 1.2rem; border: 1px solid var(--line); }
.source-list strong { font-size: 1.02rem; }
.source-list cite { color: #b8c4ca; font-size: .96rem; line-height: 1.65; font-style: normal; }
.source-list a { width: max-content; max-width: 100%; min-height: 2.75rem; display: inline-flex; align-items: center; color: var(--cyan); font-size: .96rem; text-decoration: none; }
.detail-actions { display: flex; gap: .75rem; flex-wrap: wrap; margin-top: 3.5rem; }
.detail-actions button { min-height: 2.75rem; border: 1px solid var(--line); padding: .65rem 1rem; background: transparent; color: var(--ink); cursor: pointer; }
.error-panel { margin: 3rem; padding: 1.5rem; border: 1px solid #bd6b62; color: #edb7af; background: rgba(70,18,18,.35); }

@media (max-width: 1180px) {
  .hero-heading { width: 54vw; }
  .hero-heading h1 { font-size: clamp(2.9rem, 5.2vw, 4.3rem); }
  .pulse-layout { grid-template-columns: minmax(0, 1fr) minmax(18rem, 21rem); }
  .connection-panel { padding: 1.2rem; }
  .connection-panel h2 { font-size: 1.5rem; }
  .connection-panel p { font-size: 1.06rem; }
}

@media (max-width: 900px) {
  .site-header { height: 5.4rem; grid-template-columns: auto 1fr; }
  .brand-slot { padding: 0 1rem; border-right: 0; }
  .wordmark { font-size: 1.55rem; }
  .header-tools { gap: .65rem; padding: 0 .65rem; }
  .shell { display: block; }
  .primary-nav {
    position: sticky;
    z-index: 20;
    top: 5.4rem;
    height: auto;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    overflow: hidden;
    padding: 0;
    border-right: 0;
    border-bottom: 1px solid var(--line);
    background: rgba(2,11,19,.95);
    backdrop-filter: blur(14px);
  }
  .primary-nav a { min-width: 0; min-height: 3.7rem; margin: 0; padding: .35rem .25rem; flex-direction: column; justify-content: center; gap: .22rem; text-align: center; }
  .primary-nav a::before { top: auto; bottom: 0; width: 0; height: 2px; }
  .primary-nav a:hover::before,
  .primary-nav a[aria-current="page"]::before { width: 100%; height: 2px; }
  .primary-nav a svg,
  .primary-nav a > img { width: 1rem; height: 1rem; }
  .primary-nav a b { max-width: 100%; font-size: 1rem; line-height: 1.25; }
  .nav-note { display: none; }
  .today-hero { height: 32rem; }
  .hero-heading { top: 2.35rem; left: 1.5rem; width: min(58vw, 34rem); }
  .hero-heading h1 { font-size: clamp(2.65rem, 7vw, 4rem); }
  .pulse-layout { grid-template-columns: minmax(0, 1fr) 19rem; }
  .card-grid,
  .card-grid[data-count="3"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .card-grid > .change-card,
  .card-grid[data-count] > .change-card:nth-child(n) { grid-column: auto; }
}

@media (max-width: 680px) {
  body.mobile-menu-open { overflow: hidden; }
  .site-header {
    height: 4.5rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding-right: .7rem;
  }
  .brand-slot {
    flex-direction: row;
    align-items: center;
    padding: 0 1rem;
    border-right: 0;
  }
  .brand-slot .site-switch,
  .header-tools { display: none; }
  .mobile-menu-button {
    --amber: #f4b52b;
    position: relative;
    z-index: 101;
    width: 2.7rem;
    height: 2.7rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    padding: 0;
    background: transparent;
    cursor: pointer;
  }
  .mobile-menu-button::before,
  .mobile-menu-button::after { content: none; }
  .delta-menu-icon {
    width: 2.18rem;
    height: 2.18rem;
    display: block;
    object-fit: contain;
    filter: saturate(.86) brightness(.94);
    transition: transform .2s ease, filter .2s ease;
  }
  .mobile-menu-button:is(:hover, :focus-visible) .delta-menu-icon {
    transform: translateY(-1px) scale(1.06);
    filter: saturate(.95) brightness(1.08);
  }
  body.wdelta-burger-open .delta-menu-icon {
    animation: wdelta-burger-hop .38s cubic-bezier(.2, 1.4, .3, 1) both !important;
  }
  @keyframes wdelta-burger-hop {
    0% { transform: translateY(0) rotate(0) scale(1); }
    40% { transform: translateY(-5px) rotate(-8deg) scale(1.1); }
    100% { transform: translateY(0) rotate(0) scale(1); }
  }
  .mobile-menu-backdrop {
    position: fixed;
    z-index: 80;
    top: 4.5rem;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background: rgba(0,7,13,.72);
    backdrop-filter: blur(3px);
  }
  .mobile-menu {
    position: fixed;
    z-index: 90;
    top: 4.5rem;
    right: 0;
    width: min(21.5rem, calc(100% - 1.5rem));
    height: calc(100dvh - 4.5rem);
    display: grid;
    align-content: start;
    gap: 1.15rem;
    overflow-y: auto;
    padding: 1rem 1.2rem 1.5rem;
    border-left: 1px solid rgba(69,209,203,.25);
    background: linear-gradient(160deg, rgba(4,25,37,.99), rgba(1,10,18,.99));
    box-shadow: -1.4rem 0 3rem rgba(0,0,0,.38);
  }
  .mobile-menu-primary,
  .mobile-menu-language,
  .mobile-menu-sites { display: grid; gap: .25rem; }
  .mobile-menu-language,
  .mobile-menu-sites { padding-top: 1rem; border-top: 1px solid var(--line); }
  .mobile-menu a,
  .mobile-menu button {
    min-height: 2.75rem;
    display: flex;
    align-items: center;
    border: 0;
    padding: .55rem .7rem;
    background: transparent;
    color: #c8d1d5;
    font-size: 1rem;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
  }
  .mobile-menu-primary a { gap: .6rem; }
  .mobile-menu-primary img { width: 1.65rem; height: 1.65rem; flex: 0 0 auto; object-fit: contain; }
  .mobile-menu a:hover,
  .mobile-menu a[aria-current="page"],
  .mobile-menu button[aria-pressed="true"] { color: var(--gold); background: rgba(216,168,85,.07); }
  .mobile-menu-language { grid-template-columns: 1fr 1fr; }
  .mobile-menu-sites a { display: grid; grid-template-columns: 3.2rem 1fr; gap: .6rem; }
  .mobile-menu-sites b { color: var(--cyan); letter-spacing: .08em; }
  .mobile-menu-sites .is-active b { color: var(--gold); }
  .utc-display span { display: none; }
  .utc-display time { font-size: .8rem; }
  .language button { min-width: 2.4rem; min-height: 2.75rem; padding: .35rem; }
  .shell { min-height: calc(100vh - 4.5rem); }
  .primary-nav { display: none; }
  .today-hero { height: 31rem; min-height: 31rem; }
  .hero-earth-image { object-position: 53% 55%; }
  .pulse-section { padding: 1rem; }
  .pulse-heading { margin-bottom: .65rem; }
  .pulse-layout { grid-template-columns: 1fr; }
  .map-stage { height: 21rem; }
  .hero-heading { top: 1.65rem; left: 1rem; width: calc(100% - 2rem); }
  .hero-heading::before { inset: -1rem; }
  .eyebrow { margin-bottom: .65rem; font-size: .75rem; }
  .hero-heading h1 { font-size: clamp(2.45rem, 11.5vw, 3.25rem); line-height: 1.02; }
  .hero-heading h1 span { white-space: nowrap; }
  .hero-map-link { margin-top: 1rem; }
  .hero-rail { position: relative; width: auto; }
  .global-summary { width: 100%; margin: 0; }
  .global-list { position: absolute; border-right: 0; border-bottom: 0; border-left: 0; box-shadow: none; }
  .connection-panel { width: 100%; min-height: 0; padding: 1rem 1.1rem; }
  .connection-panel h2 { margin: .7rem 0 .55rem; font-size: 1.4rem; }
  .connection-panel p { display: block; overflow: visible; font-size: 1.08rem; line-height: 1.75; }
  .connection-panel a { margin-top: .75rem; }
  .connection-thumbs img { width: 2.35rem; height: 2.35rem; }
  .content-section { padding: 2.4rem 1rem 4rem; }
  .section-heading { align-items: flex-start; }
  .section-heading h2 { font-size: 2rem; }
  .record-summary { max-width: 10rem; }
  .card-grid,
  .card-grid[data-count="3"] { grid-template-columns: 1fr; gap: 1rem; }
  .change-card { min-height: 38rem; padding: 1rem; }
  .change-card h3 { font-size: 1.32rem; }
  .short { font-size: 1.06rem; }
  .delta-note { font-size: 1.02rem; }
  .record-summary span,
  .detail-meta { font-size: .75rem; }
  .category,
  .verification-badge { font-size: .92rem; }
  .detail { padding: 2.25rem 1rem 4rem; }
  .detail-back { margin-bottom: 2rem; }
  .detail h1 { font-size: clamp(2rem, 9.5vw, 2.375rem); line-height: 1.22; }
  .detail-lead { font-size: 1.08rem; line-height: 1.82; }
  .detail-figure { margin: 2.25rem 0 3rem; }
  .detail-section { margin-top: 3rem; }
  .detail-section h2 { font-size: 1.25rem; }
  .detail-section p,
  .detail-compare p { font-size: 1rem; line-height: 1.82; }
  .detail-compare { grid-template-columns: 1fr; margin-top: 3rem; }
  .detail-compare > div { padding: 1.35rem 1.25rem 1.45rem; }
  .detail-compare h2 { font-size: 1.05rem; }
  .detail-delta { padding: 1.4rem 1.25rem 1.5rem; }
  .verification-panel { flex-direction: column; }
  .archive-day { grid-template-columns: 1fr auto; }
  .archive-day span { grid-column: 1 / -1; }
}

@media (max-width: 400px) {
  .brand-slot { padding: 0 .75rem; }
  .wordmark { font-size: 1.35rem; letter-spacing: .08em; }
  .header-tools { padding-right: .35rem; }
  .language { gap: .1rem; }
  .language button { min-width: 2.15rem; }
  .primary-nav a b { font-size: 1rem; }
  .hero-heading h1 { font-size: 2.65rem; }
  .section-heading { display: grid; }
  .record-summary { max-width: none; text-align: left; }
}

@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; }
  .delta-menu-icon,
  .mobile-menu-button { animation: none; transition: none; }
}

/* No.171 — completion-image dashboard reconstruction */
.site-header {
  height: 4.6rem;
  display: block;
  background: rgba(1, 8, 15, .94);
  box-shadow: 0 .6rem 2rem rgba(0, 0, 0, .18);
}
.header-inner {
  width: min(100%, 96rem);
  height: 100%;
  margin: 0 auto;
  padding: 0 1.5rem;
  display: grid;
  grid-template-columns: auto minmax(30rem, 1fr) auto;
  align-items: center;
  gap: clamp(1.2rem, 3vw, 3rem);
}
.brand-slot {
  height: auto;
  padding: 0;
  border: 0;
  display: block;
}
.wordmark { font-size: 1.55rem; letter-spacing: .13em; }
.desktop-nav {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  align-items: stretch;
  justify-content: center;
  height: 100%;
}
.desktop-nav a {
  position: relative;
  flex: 0 0 auto;
  min-width: 0;
  display: inline-flex;
  align-items: center;
  padding: 0 clamp(.55rem, 1vw, 1rem);
  color: #b9c2c9;
  font: 400 .78rem/1 var(--body-font);
  letter-spacing: .04em;
  text-decoration: none;
  white-space: nowrap;
}
.desktop-nav a::after {
  content: "";
  position: absolute;
  right: .65rem;
  bottom: 0;
  left: .65rem;
  height: 1px;
  background: transparent;
}
.desktop-nav a:hover,
.desktop-nav a[aria-current="page"] { color: var(--ink); }
.desktop-nav a:hover::after,
.desktop-nav a[aria-current="page"]::after { background: var(--gold); box-shadow: 0 0 .7rem rgba(216, 168, 85, .5); }
.header-tools { gap: .7rem; padding: 0; }
.site-switch { gap: .08rem; min-height: 2.6rem; font-size: .72rem; }
.site-switch a { min-width: 2.25rem; min-height: 2.25rem; }
.utc-display { padding-left: .75rem; border-left: 1px solid var(--line); }
.language { gap: .12rem; }
.language button { min-width: 2.25rem; min-height: 2.25rem; padding: .3rem; font-size: .75rem; }
.shell { display: block; min-height: 0; }
.primary-nav { display: none; }
main { width: 100%; }

.today-hero {
  height: clamp(25rem, 42vw, 34rem);
  min-height: 25rem;
  border-bottom-color: rgba(91, 170, 212, .28);
}
.hero-earth-image { object-position: center 54%; filter: none; }
.hero-earth-frame::after {
  content: none;
}
.hero-content {
  position: relative;
  z-index: 5;
  width: min(100%, 96rem);
  height: 100%;
  margin: 0 auto;
  padding: clamp(2.2rem, 5vw, 4rem) clamp(1.5rem, 3.5vw, 3.5rem);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2rem;
}
.hero-heading {
  position: relative;
  top: auto;
  left: auto;
  width: min(36rem, 55%);
  text-shadow: 0 2px 24px #010810;
}
.hero-heading::before { content: none; }
.hero-heading h1 { font-size: clamp(2.75rem, 4.25vw, 4.35rem); line-height: 1.08; letter-spacing: -.025em; }
.hero-heading h1 span { white-space: normal; }
.hero-lead { max-width: 32rem; margin: 1rem 0 0; color: #c3d0d8; font-size: .88rem; line-height: 1.75; }
.hero-map-link { margin-top: 1rem; padding: .55rem 1rem; }
.visit-panel {
  width: 14.5rem;
  min-height: 13rem;
  margin-top: .5rem;
  padding: 1.15rem;
  display: grid;
  place-items: center;
  align-content: center;
  gap: .45rem;
  border: 1px solid rgba(112, 179, 215, .4);
  border-radius: .45rem;
  background: linear-gradient(145deg, rgba(5, 22, 34, .9), rgba(1, 10, 18, .88));
  box-shadow: inset 0 0 2rem rgba(39, 131, 184, .08), 0 1rem 2rem rgba(0, 0, 0, .25);
  text-align: center;
}
.visit-panel > span { color: #b6c5cf; font-size: .68rem; letter-spacing: .08em; }
.visit-panel > strong { color: #87d8ff; font: 300 3.8rem/1 var(--display-font); text-shadow: 0 0 1.2rem rgba(72, 177, 238, .65); }
.visit-panel > b { color: #8fd8ff; font-size: .86rem; letter-spacing: .09em; }
.visit-panel > a { width: 100%; margin-top: .5rem; padding: .65rem; border: 1px solid rgba(112, 179, 215, .3); color: #bed9e8; font-size: .75rem; text-decoration: none; }

.dashboard-shell {
  width: min(100%, 96rem);
  margin: 0 auto;
  padding: 1.35rem 1.5rem 3.5rem;
  display: grid;
  gap: 1rem;
}
.dashboard-panel {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(99, 174, 213, .3);
  border-radius: .35rem;
  background: linear-gradient(155deg, rgba(4, 20, 31, .97), rgba(1, 11, 18, .96));
  box-shadow: inset 0 0 2.5rem rgba(32, 111, 156, .035), 0 .8rem 2rem rgba(0, 0, 0, .12);
}
.dashboard-primary {
  display: grid;
  grid-template-columns: minmax(0, 2.65fr) minmax(18rem, 1fr);
  gap: 1rem;
  align-items: stretch;
}
.panel-heading {
  min-height: 3rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .75rem 1rem;
  border-bottom: 1px solid var(--line);
}
.panel-heading h2 { margin: 0; color: #a9ddf8; font: 400 .92rem/1.2 var(--body-font); letter-spacing: .1em; }
.panel-heading h2 img { width: 1.35rem; height: 1.35rem; margin-right: .45rem; vertical-align: middle; object-fit: contain; }
.panel-heading > span { color: #7893a5; font-size: .7rem; letter-spacing: .08em; }
.pulse-layout {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, 2.9fr) minmax(14rem, 1fr);
  gap: 0;
}
.map-stage {
  height: 24rem;
  border: 0;
  border-right: 1px solid var(--line);
  border-radius: 0;
  box-shadow: none;
}
.hotspot-rail {
  min-width: 0;
  height: 24rem;
  display: flex;
  flex-direction: column;
  gap: 0;
  background: rgba(2, 14, 23, .92);
}
.hotspot-rail > h3 { margin: 0; padding: .85rem .9rem; border-bottom: 1px solid var(--line); color: #c5d2d9; font-size: .78rem; font-weight: 400; }
.hotspot-list { flex: 1 1 auto; min-height: 0; overflow-y: auto; }
.hotspot-item {
  min-height: 4.25rem;
  display: grid;
  grid-template-columns: .55rem minmax(0, 1fr) auto;
  align-items: center;
  gap: .65rem;
  padding: .7rem .8rem;
  border-bottom: 1px solid var(--line);
  text-decoration: none;
}
.hotspot-item:hover,
.hotspot-item.is-active { background: rgba(69, 209, 203, .07); }
.hotspot-item { --hotspot-accent: var(--cyan); }
.hotspot-item[data-category="INTERNET"] { --hotspot-accent: var(--internet); }
.hotspot-item[data-category="SCIENCE"] { --hotspot-accent: var(--science); }
.hotspot-item[data-category="HUMANS"] { --hotspot-accent: var(--humans); }
.hotspot-item[data-category="LIFE"] { --hotspot-accent: var(--life); }
.hotspot-item[data-category="EARTH"] { --hotspot-accent: var(--earth); }
.hotspot-item[data-category="ODD"] { --hotspot-accent: var(--odd); }
.hotspot-item > i { width: .45rem; height: .45rem; border-radius: 50%; background: var(--hotspot-accent); box-shadow: 0 0 .7rem var(--hotspot-accent); }
.hotspot-item > span { min-width: 0; display: grid; gap: .2rem; }
.hotspot-item b { color: #d8e0e4; font-size: .74rem; letter-spacing: .04em; }
.hotspot-item small { overflow: hidden; color: #8fa4b1; font-size: .67rem; line-height: 1.35; text-overflow: ellipsis; }
.hotspot-item em { color: #b8dced; font-size: 1.2rem; font-style: normal; }
.panel-empty { margin: 0; padding: 1rem; color: #91a3ad; font-size: .8rem; line-height: 1.65; }
.hotspot-rail .global-summary { flex: 0 0 auto; border-right: 0; border-bottom: 0; border-left: 0; }
.hotspot-rail .global-toggle { min-height: 3.25rem; padding: .6rem .8rem; font-size: .75rem; }
.hotspot-rail .global-list { max-height: 17rem; }

.convergence-panel {
  min-height: 27.05rem;
  border-color: rgba(220, 70, 73, .68);
  background:
    radial-gradient(circle at 70% 33%, rgba(191, 38, 46, .18), transparent 40%),
    linear-gradient(155deg, rgba(37, 9, 17, .94), rgba(3, 12, 19, .98));
  box-shadow: inset 0 0 3rem rgba(181, 34, 44, .08), 0 .8rem 2rem rgba(0, 0, 0, .16);
}
.convergence-panel .alert-heading { border-bottom-color: rgba(220, 70, 73, .26); }
.convergence-panel h2 { color: #ff8589; }
.convergence-panel h3 { margin: 1.3rem 1.15rem .8rem; color: #f1e7e6; font: 300 1.55rem/1.4 var(--display-font); }
.convergence-panel ul { margin: 0; padding: .4rem 1.15rem 1.2rem; list-style: none; }
.convergence-panel li { display: flex; justify-content: space-between; gap: 1rem; padding: .85rem 0; border-top: 1px solid rgba(220, 70, 73, .2); color: #cbbfc1; font-size: .8rem; }
.convergence-panel li strong { color: #ff8d91; }

.dashboard-secondary {
  display: grid;
  grid-template-columns: minmax(0, 2.65fr) minmax(18rem, 1fr);
  grid-template-areas: "connection stats" "timeline stats";
  gap: 1rem;
  align-items: stretch;
}
.connection-dashboard { grid-area: connection; }
.time-machine-panel { grid-area: timeline; }
.last-seven-panel { grid-area: stats; }
.connection-track {
  min-height: 13.2rem;
  display: flex;
  align-items: stretch;
  gap: .55rem;
  padding: .8rem;
}
.connection-card {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  display: grid;
  grid-template-rows: auto 5.6rem 1fr;
  gap: .4rem;
  padding: .55rem;
  border: 1px solid var(--line);
  background: rgba(5, 21, 32, .86);
}
.connection-card time { color: #8fa5b2; font-size: .62rem; text-transform: uppercase; }
.connection-card img { width: 100%; height: 100%; object-fit: cover; }
.connection-card b { color: #d7dfe2; font: 400 .77rem/1.45 var(--body-font); }
.connection-card a { position: absolute; inset: 0; }
.connection-arrow { align-self: center; color: #74cfff; text-shadow: 0 0 .75rem rgba(72, 171, 239, .8); }
.connection-summary {
  flex: 0 0 11.5rem;
  padding: .85rem;
  display: grid;
  align-content: center;
  border: 1px solid rgba(99, 174, 213, .25);
  background: rgba(4, 20, 31, .86);
}
.connection-summary span { color: var(--gold); font-size: .65rem; letter-spacing: .08em; }
.connection-summary p { display: -webkit-box; overflow: hidden; margin: .55rem 0 0; color: #aebdc5; font-size: .7rem; line-height: 1.55; white-space: pre-line; -webkit-line-clamp: 6; -webkit-box-orient: vertical; }

.last-seven-panel { display: flex; flex-direction: column; }
.last-seven-panel > p { margin: .85rem 1rem .35rem; color: #8fa4b1; font-size: .72rem; }
.category-stats { display: grid; gap: .8rem; padding: .85rem 1rem; }
.category-stat { --stat: var(--cyan); display: grid; grid-template-columns: 6rem minmax(4rem, 1fr) 1.5rem; align-items: center; gap: .6rem; }
.category-stat[data-category="EARTH"] { --stat: var(--earth); }
.category-stat[data-category="LIFE"] { --stat: var(--life); }
.category-stat[data-category="SCIENCE"] { --stat: var(--science); }
.category-stat[data-category="INTERNET"] { --stat: var(--internet); }
.category-stat[data-category="HUMANS"] { --stat: var(--humans); }
.category-stat[data-category="ODD"] { --stat: var(--odd); }
.category-stat > span { color: #c1ccd2; font-size: .68rem; }
.category-stat > i { height: .45rem; overflow: hidden; border-radius: 1rem; background: rgba(101, 132, 151, .18); }
.category-stat > i > b { display: block; height: 100%; border-radius: inherit; background: var(--stat); box-shadow: 0 0 .8rem var(--stat); }
.category-stat > strong { color: #aebdc5; font-size: .72rem; text-align: right; }
.panel-link { margin: auto .8rem .8rem; padding: .65rem .75rem; border: 1px solid var(--line); color: #a8d8ef; font-size: .7rem; text-decoration: none; }

.time-machine-panel { min-height: 9.3rem; }
.timeline-track { position: relative; min-height: 6rem; display: flex; align-items: flex-start; justify-content: space-around; gap: .3rem; padding: .85rem 1rem 1rem; }
.timeline-track::before { content: ""; position: absolute; top: 2.65rem; right: 2.5rem; left: 2.5rem; height: 1px; background: linear-gradient(90deg, transparent, #35799e, transparent); }
.timeline-day { position: relative; z-index: 1; flex: 1 1 0; display: grid; place-items: center; gap: .35rem; color: #8198a6; text-decoration: none; }
.timeline-day time { font-size: .67rem; letter-spacing: .06em; text-transform: uppercase; }
.timeline-day i { width: .55rem; height: .55rem; border: 1px solid #4c8caf; border-radius: 50%; background: #092033; }
.timeline-day span { font-size: .62rem; }
.timeline-day:hover,
.timeline-day.is-current { color: #bdeaff; }
.timeline-day.is-current i { width: 1rem; height: 1rem; border: 2px solid #9ee5ff; background: #3389bd; box-shadow: 0 0 .8rem rgba(83, 190, 248, .65); }

.stories-section { margin-top: .2rem; padding-top: 1.15rem; border-top: 1px solid var(--line); }
.stories-section .section-heading { max-width: none; margin-bottom: 1rem; align-items: center; }
.stories-section .section-heading h2 { font-size: 1.35rem; }
.stories-section .section-heading > a { color: #8bccec; font-size: .72rem; text-decoration: none; }
.card-grid { max-width: none; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.change-card {
  min-height: 24rem;
  padding: 0;
  border-radius: .35rem;
  background: linear-gradient(155deg, rgba(5, 21, 32, .97), rgba(1, 11, 18, .98));
}
.change-card .card-image { margin: 0; }
.change-card .card-labels { min-height: 2.4rem; padding: .55rem .8rem 0; }
.change-card .category { font-size: .7rem; }
.change-card .verification-badge { min-height: 1.15rem; padding: .15rem .38rem; font-size: .62rem; }
.change-card h3 { margin: .55rem .8rem .35rem; font: 300 1rem/1.45 var(--display-font); -webkit-line-clamp: 2; }
.change-card .short { margin: 0 .8rem; color: #aebbc2; font-size: .76rem; line-height: 1.55; -webkit-line-clamp: 3; }
.card-date { margin: auto .8rem .75rem; color: #7f919d; font-size: .65rem; }

@media (max-width: 1120px) {
  .header-inner { grid-template-columns: auto minmax(25rem, 1fr) auto; gap: 1rem; }
  .desktop-nav a { padding-right: .55rem; padding-left: .55rem; font-size: .7rem; }
  .utc-display { display: none; }
  .dashboard-primary,
  .dashboard-secondary { grid-template-columns: minmax(0, 2.2fr) minmax(16rem, 1fr); }
  .pulse-layout { grid-template-columns: minmax(0, 2.35fr) minmax(13rem, 1fr); }
  .connection-summary { flex-basis: 9rem; }
}

@media (max-width: 820px) {
  .desktop-nav { display: none; }
  .header-inner { grid-template-columns: auto 1fr auto; }
  .header-tools { justify-self: end; }
  .dashboard-primary,
  .dashboard-secondary { grid-template-columns: 1fr; grid-template-areas: none; }
  .connection-dashboard,
  .last-seven-panel,
  .time-machine-panel { grid-area: auto; }
  .convergence-panel { min-height: 0; }
  .card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .site-header { height: 4.5rem; }
  .header-inner { grid-template-columns: minmax(0, 1fr) auto; padding: 0 .75rem 0 1rem; }
  .header-tools,
  .desktop-nav { display: none; }
  .brand-slot { padding: 0; }
  .wordmark { font-size: 1.45rem; }
  .today-hero { height: 31rem; min-height: 31rem; }
  .hero-earth-image { object-position: 61% 52%; }
  .hero-content { padding: 2rem 1rem 1rem; display: block; }
  .hero-heading { width: 100%; }
  .hero-heading h1 { max-width: 22rem; font-size: clamp(2.35rem, 11vw, 3.1rem); }
  .hero-lead { max-width: 19rem; font-size: .78rem; line-height: 1.65; }
  .visit-panel {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    width: 9.5rem;
    min-height: 7.8rem;
    padding: .7rem;
    gap: .2rem;
  }
  .visit-panel > span { font-size: .55rem; }
  .visit-panel > strong { font-size: 2.3rem; }
  .visit-panel > b { font-size: .65rem; }
  .visit-panel > a { margin-top: .2rem; padding: .4rem; font-size: .58rem; }
  .dashboard-shell { padding: .8rem .75rem 2.5rem; gap: .8rem; }
  .dashboard-primary,
  .dashboard-secondary { display: grid; grid-template-columns: 1fr; gap: .8rem; }
  .pulse-layout { grid-template-columns: 1fr; }
  .map-stage { height: 18.5rem; border-right: 0; border-bottom: 1px solid var(--line); }
  .hotspot-rail { height: 14rem; }
  .panel-heading { min-height: 2.75rem; padding: .65rem .75rem; }
  .panel-heading h2 { font-size: .78rem; }
  .panel-heading > span { font-size: .6rem; }
  .convergence-panel h3 { font-size: 1.25rem; }
  .connection-track { min-height: 0; overflow-x: auto; align-items: stretch; }
  .connection-card { flex: 0 0 9rem; }
  .connection-arrow { flex: 0 0 auto; }
  .connection-summary { flex: 0 0 11rem; }
  .timeline-track { overflow-x: auto; justify-content: flex-start; }
  .timeline-day { flex: 0 0 5.5rem; }
  .timeline-track::before { right: 1.5rem; left: 1.5rem; }
  .stories-section { padding-top: 1rem; }
  .card-grid { grid-template-columns: 1fr; gap: .8rem; }
  .change-card { min-height: 23rem; }
  .change-card h3 { font-size: 1.12rem; }
  .change-card .short { font-size: .82rem; }
  .section-heading { display: flex; }
  .mobile-menu { top: 4.5rem; }
}

/* No.172 — final desktop scale and visual refinement */
.site-header { height: 5rem; border-bottom-color: rgba(105, 176, 214, .22); }
.header-inner,
.hero-content,
.dashboard-shell {
  width: min(calc(100% - 3rem), 140rem);
}
.header-inner {
  padding: 0;
  grid-template-columns: auto minmax(36rem, 1fr) auto;
  gap: clamp(1.5rem, 2.7vw, 3.75rem);
}
.wordmark { font-size: 1.8rem; letter-spacing: .145em; }
.desktop-nav { gap: clamp(.15rem, .55vw, .7rem); }
.desktop-nav a {
  gap: .38rem;
  padding: 0 clamp(.62rem, .85vw, 1.15rem);
  font-size: .86rem;
  letter-spacing: .045em;
}
.desktop-nav a img {
  width: 1.125rem;
  height: 1.125rem;
  flex: 0 0 auto;
  object-fit: contain;
  opacity: .76;
  filter: saturate(.72) brightness(.94);
}
.desktop-nav a:hover img,
.desktop-nav a[aria-current="page"] img { opacity: 1; filter: none; }
.desktop-nav a::after { right: .6rem; bottom: .42rem; left: .6rem; height: 2px; }
.header-tools { gap: .9rem; }
.site-switch { font-size: .79rem; letter-spacing: .12em; }
.site-switch a { min-width: 2.45rem; min-height: 2.45rem; }
.utc-display { min-width: 5.6rem; padding-left: .95rem; }
.utc-display span { font-size: .64rem; }
.utc-display time { font-size: .86rem; }
.language button { min-width: 2.35rem; min-height: 2.35rem; font-size: .82rem; }

.today-hero { height: clamp(31rem, 42vw, 38rem); min-height: 31rem; }
.hero-earth-image { object-position: center 54%; filter: none; }
.hero-earth-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(0, 7, 13, .91) 0%, rgba(0, 9, 17, .78) 22%, rgba(0, 9, 17, .34) 43%, rgba(0, 9, 17, .08) 55%, transparent 66%);
}
.hero-content {
  padding: clamp(2.6rem, 4.2vw, 4.5rem) clamp(.5rem, 2vw, 2.6rem);
  align-items: flex-start;
  gap: 3rem;
}
.hero-heading { width: min(42rem, 58%); text-shadow: 0 2px 1.75rem rgba(0, 0, 0, .82); }
.hero-heading h1 { font-size: clamp(3.4rem, 4.65vw, 5.2rem); line-height: 1.06; }
.hero-lead { max-width: 37rem; margin-top: 1.25rem; color: #d0dae0; font-size: 1rem; line-height: 1.78; }
.hero-map-link { min-height: 3.1rem; margin-top: 1.25rem; padding: .78rem 1.25rem; font-size: .88rem; }
.visit-panel {
  width: clamp(17rem, 19vw, 20rem);
  min-height: 16.2rem;
  margin-top: .6rem;
  padding: 1.45rem;
  gap: .58rem;
  border-color: rgba(121, 194, 232, .48);
  box-shadow: inset 0 0 2.6rem rgba(39, 131, 184, .1), 0 1.25rem 2.8rem rgba(0, 0, 0, .28);
}
.visit-panel > span { font-size: .78rem; }
.visit-panel > strong { font-size: 5rem; }
.visit-panel > b { font-size: 1rem; }
.visit-panel > a { margin-top: .7rem; padding: .8rem; font-size: .84rem; }

.dashboard-shell { padding: 1.55rem 0 4.25rem; gap: 1.25rem; }
.dashboard-panel {
  border-color: rgba(103, 184, 226, .38);
  background: linear-gradient(150deg, rgba(5, 24, 37, .98), rgba(1, 11, 19, .985));
  box-shadow: inset 0 1px rgba(176, 226, 250, .035), inset 0 0 3rem rgba(36, 124, 172, .045), 0 1rem 2.4rem rgba(0, 0, 0, .16);
}
.dashboard-primary,
.dashboard-secondary { grid-template-columns: minmax(0, 3fr) minmax(20rem, 1fr); gap: 1.25rem; }
.panel-heading { min-height: 3.65rem; padding: .92rem 1.2rem; }
.panel-heading h2 { font-size: 1.06rem; letter-spacing: .105em; }
.panel-heading h2 img,
.stories-section .section-heading h2 img {
  width: 1.35rem;
  height: 1.35rem;
  margin-right: .55rem;
  object-fit: contain;
  vertical-align: -.3rem;
  opacity: .9;
}
.panel-heading > span { font-size: .78rem; }
.pulse-layout { grid-template-columns: minmax(0, 3fr) minmax(16rem, 1fr); }
.map-stage,
.hotspot-rail { height: 30rem; }
.map-stage { border-right-color: rgba(103, 184, 226, .34); }
.hotspot-rail > h3 { padding: 1.05rem 1.1rem; font-size: .9rem; }
.hotspot-item {
  min-height: 6.25rem;
  grid-template-columns: .65rem minmax(0, 1fr) auto;
  gap: .8rem;
  padding: .9rem 1rem;
}
.hotspot-item b { font-size: .84rem; }
.hotspot-item small { display: grid; gap: .2rem; font-size: .73rem; line-height: 1.45; text-overflow: clip; }
.hotspot-item small > span { color: #78bbd8; font-size: .65rem; letter-spacing: .04em; }
.hotspot-item em { font-size: 1.55rem; }
.hotspot-rail .global-toggle { min-height: 4rem; padding: .8rem 1rem; font-size: .82rem; }

.convergence-panel {
  min-height: 33.7rem;
  border-color: rgba(236, 71, 77, .72);
  background: radial-gradient(circle at 54% 40%, rgba(209, 41, 51, .2), transparent 31%), linear-gradient(155deg, rgba(43, 8, 18, .96), rgba(4, 11, 18, .99));
  box-shadow: inset 0 1px rgba(255, 184, 187, .05), inset 0 0 4rem rgba(192, 34, 44, .1), 0 1rem 2.5rem rgba(0, 0, 0, .2);
}
.convergence-radar { position: relative; width: 10rem; height: 8rem; margin: 1.25rem auto .25rem; }
.convergence-radar::before,
.convergence-radar::after,
.convergence-radar > i {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  border: 1px solid rgba(255, 91, 97, .34);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.convergence-radar::before { width: 8rem; height: 8rem; box-shadow: 0 0 2rem rgba(237, 48, 56, .14); }
.convergence-radar::after { width: 5.4rem; height: 5.4rem; }
.convergence-radar > i:nth-child(1) { width: 3rem; height: 3rem; }
.convergence-radar > i:nth-child(2) { width: .7rem; height: .7rem; border: 0; background: #ff6a70; box-shadow: 0 0 1.25rem #ff555d; }
.convergence-radar > i:nth-child(3) { width: 1px; height: 8rem; border: 0; border-radius: 0; background: linear-gradient(transparent, rgba(255, 94, 100, .5), transparent); }
.convergence-radar > b { position: absolute; top: 50%; left: 50%; width: 8rem; height: 1px; background: linear-gradient(90deg, transparent, rgba(255, 94, 100, .42), transparent); transform: translate(-50%, -50%); }
.convergence-panel h3 { margin: .55rem 1.35rem 1rem; font-size: 1.75rem; line-height: 1.38; }
.convergence-panel ul { padding: .25rem 1.35rem 1.4rem; }
.convergence-panel li { align-items: center; padding: 1rem 0; font-size: .9rem; }
.convergence-panel li > span { display: flex; align-items: center; gap: .65rem; }
.convergence-panel li > span > i { width: 1.45rem; height: 1.45rem; border: 1px solid rgba(255, 105, 111, .48); border-radius: 50%; background: radial-gradient(circle, rgba(255, 91, 97, .34) 0 20%, transparent 23%), linear-gradient(45deg, transparent 47%, rgba(255, 116, 121, .5) 48% 52%, transparent 53%); box-shadow: 0 0 .8rem rgba(226, 48, 56, .12); }
.convergence-panel li > span > b { font-weight: 400; }

.connection-track { min-height: 17.5rem; gap: .8rem; padding: 1rem; }
.connection-card { grid-template-rows: auto 8.25rem 1fr; gap: .55rem; padding: .7rem; }
.connection-card time { font-size: .7rem; }
.connection-card b { font-size: .9rem; line-height: 1.48; }
.connection-arrow { font-size: 1.35rem; }
.connection-summary { flex-basis: 14rem; padding: 1.05rem; }
.connection-summary span { font-size: .72rem; }
.connection-summary p { font-size: .8rem; line-height: 1.6; }
.last-seven-panel > p { margin: 1.1rem 1.2rem .5rem; font-size: .82rem; }
.category-stats { gap: 1.05rem; padding: 1.1rem 1.2rem; }
.category-stat { grid-template-columns: 7rem minmax(4rem, 1fr) 2rem; gap: .8rem; min-height: 2rem; }
.category-stat > span { font-size: .78rem; }
.category-stat > i { height: .65rem; }
.category-stat > strong { font-size: .82rem; }
.panel-link { margin: auto 1rem 1rem; padding: .8rem .9rem; font-size: .78rem; }

.time-machine-panel { min-height: 15.5rem; }
.time-machine-body {
  min-height: 11.8rem;
  display: grid;
  grid-template-columns: 7.5rem minmax(0, 1fr) 14rem;
  align-items: stretch;
  gap: 1rem;
  padding: 1rem 1.2rem 1.15rem;
}
.time-play {
  align-self: center;
  justify-self: center;
  width: 5.75rem;
  height: 5.75rem;
  display: grid;
  place-items: center;
  align-content: center;
  gap: .28rem;
  border: 1px solid rgba(105, 201, 248, .65);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(45, 139, 192, .2), rgba(2, 13, 21, .92) 70%);
  color: #9edfff;
  box-shadow: inset 0 0 1.4rem rgba(64, 176, 235, .09), 0 0 1.5rem rgba(57, 156, 211, .09);
  opacity: .82;
}
.time-play span { margin-left: .2rem; font-size: 1.55rem; }
.time-play small { font-size: .62rem; letter-spacing: .09em; }
.time-machine-main { min-width: 0; display: grid; grid-template-rows: auto minmax(4rem, 1fr); }
.time-machine-main .timeline-track { min-height: 5rem; padding: .35rem .5rem .55rem; }
.time-machine-main .timeline-track::before { top: 2.15rem; right: 2rem; left: 2rem; }
.time-map-visual { min-height: 5rem; border: 1px solid rgba(94, 164, 201, .25); border-radius: .25rem; background-position: center 44%; background-size: cover; }
.time-selected { padding: .75rem 0 .75rem 1rem; display: grid; align-content: center; gap: .45rem; border-left: 1px solid var(--line); }
.time-selected time { color: #a7dfff; font-size: .9rem; }
.time-selected > span { color: #829aa8; font-size: .7rem; }
.time-selected strong { color: #d5f2ff; font-size: 1.05rem; }
.time-selected small { color: #607784; font-size: .64rem; line-height: 1.4; }

.stories-section { margin-top: .35rem; padding-top: 1.5rem; }
.stories-section .section-heading { margin-bottom: 1.25rem; }
.stories-section .section-heading h2 { font-size: 1.65rem; }
.stories-section .section-heading > a { font-size: .82rem; }
.card-grid { gap: 1.25rem; }
.change-card { min-height: 28rem; }
.change-card .card-image { aspect-ratio: 16 / 10; }
.change-card .card-labels { min-height: 2.8rem; padding: .75rem 1rem 0; }
.change-card .category { font-size: .78rem; }
.change-card h3 { margin: .7rem 1rem .45rem; font-size: 1.18rem; line-height: 1.42; }
.change-card .short { margin: 0 1rem; font-size: .86rem; line-height: 1.62; -webkit-line-clamp: 4; }
.card-date { margin: auto 1rem .9rem; font-size: .74rem; }

@media (max-width: 1120px) {
  .header-inner { grid-template-columns: auto minmax(25rem, 1fr) auto; gap: .8rem; }
  .desktop-nav { gap: 0; }
  .desktop-nav a { gap: .22rem; padding-right: .38rem; padding-left: .38rem; font-size: .73rem; }
  .desktop-nav a img { width: 1rem; height: 1rem; }
  .dashboard-primary,
  .dashboard-secondary { grid-template-columns: minmax(0, 2.25fr) minmax(17rem, 1fr); }
  .pulse-layout { grid-template-columns: minmax(0, 2.4fr) minmax(14rem, 1fr); }
  .time-machine-body { grid-template-columns: 6.5rem minmax(0, 1fr) 11rem; }
}

@media (max-width: 820px) {
  .header-inner,
  .hero-content,
  .dashboard-shell { width: min(calc(100% - 2rem), 140rem); }
  .dashboard-primary,
  .dashboard-secondary { grid-template-columns: 1fr; grid-template-areas: none; }
  .convergence-panel { min-height: 0; }
  .time-machine-body { grid-template-columns: 6.5rem minmax(0, 1fr) 11rem; }
}

@media (max-width: 680px) {
  .site-header { height: 4.5rem; }
  .header-inner,
  .hero-content,
  .dashboard-shell { width: 100%; }
  .hero-earth-frame::after { background: linear-gradient(90deg, rgba(0, 7, 13, .9), rgba(0, 8, 15, .65) 55%, rgba(0, 8, 15, .14) 80%, transparent); }
  .today-hero { height: 31rem; min-height: 31rem; }
  .hero-content { padding: 2rem 1rem 1rem; }
  .hero-heading { width: 100%; }
  .hero-heading h1 { font-size: clamp(2.35rem, 11vw, 3.1rem); }
  .hero-lead { max-width: 19rem; font-size: .78rem; line-height: 1.65; }
  .hero-map-link { min-height: 0; padding: .55rem 1rem; font-size: .72rem; }
  .visit-panel { width: 9.5rem; min-height: 7.8rem; padding: .7rem; gap: .2rem; }
  .visit-panel > span { font-size: .55rem; }
  .visit-panel > strong { font-size: 2.3rem; }
  .visit-panel > b { font-size: .65rem; }
  .visit-panel > a { margin-top: .2rem; padding: .4rem; font-size: .58rem; }
  .dashboard-shell { padding: .8rem .75rem 2.5rem; gap: .8rem; }
  .pulse-layout { grid-template-columns: 1fr; }
  .panel-heading { min-height: 2.9rem; padding: .68rem .78rem; }
  .panel-heading h2 { font-size: .82rem; }
  .panel-heading h2 img,
  .stories-section .section-heading h2 img { width: 1.15rem; height: 1.15rem; margin-right: .4rem; }
  .map-stage { height: 19rem; }
  .hotspot-rail { height: 15rem; }
  .hotspot-item { min-height: 5.2rem; }
  .convergence-radar { width: 8rem; height: 6rem; margin-top: .8rem; }
  .convergence-radar::before { width: 6rem; height: 6rem; }
  .convergence-radar::after { width: 4rem; height: 4rem; }
  .convergence-radar > i:nth-child(3) { height: 6rem; }
  .connection-track { min-height: 16rem; }
  .connection-card { flex-basis: 12rem; grid-template-rows: auto 7rem 1fr; }
  .time-machine-panel { min-height: 0; }
  .time-machine-body { grid-template-columns: 5rem minmax(15rem, 1fr); gap: .65rem; padding: .8rem; overflow-x: auto; }
  .time-play { width: 4.4rem; height: 4.4rem; }
  .time-machine-main { min-width: 15rem; }
  .time-selected { grid-column: 1 / -1; padding: .7rem 0 0; border-top: 1px solid var(--line); border-left: 0; }
  .timeline-day { flex-basis: 5.5rem; }
  .stories-section .section-heading h2 { font-size: 1.4rem; }
  .change-card { min-height: 25rem; }
  .change-card h3 { font-size: 1.12rem; }
  .change-card .short { font-size: .82rem; }
}

/* No.173 — icon legibility and final 100% zoom typography */
.site-header { height: 5.25rem; }
.wordmark { font-size: 1.9rem; }
.desktop-nav { gap: 0 clamp(.25rem, .7vw, .9rem); }
.desktop-nav a {
  gap: .5rem;
  padding-right: clamp(.6rem, .8vw, 1rem);
  padding-left: clamp(.6rem, .8vw, 1rem);
  font-size: 1rem;
}
.desktop-nav a img {
  width: 1.5rem;
  height: 1.5rem;
  opacity: .9;
  filter: saturate(.76) brightness(.98);
}
.desktop-nav a::after { bottom: 0; height: 2px; box-shadow: 0 0 .55rem rgba(216, 168, 85, .28); }
.site-switch { font-size: .875rem; }
.utc-display span { font-size: .8125rem; }
.utc-display time { font-size: .9rem; }
.language button { font-size: .875rem; }

html[lang="ja"] .hero-heading h1,
html[lang="ja"] .stories-section .section-heading h2 {
  font-family: "Yu Mincho", "Hiragino Mincho ProN", "HGS明朝E", "Noto Serif JP", serif;
  font-weight: 500;
  letter-spacing: .01em;
}
.hero-heading h1 { font-size: clamp(3.5rem, 4.5vw, 4.8rem); line-height: 1.08; }
.hero-lead { font-size: 1.02rem; line-height: 1.68; }
.hero-map-link { font-size: .95rem; }
.visit-panel { width: clamp(18rem, 20vw, 21rem); min-height: 17.4rem; padding: 1.6rem; }
.visit-panel > span { font-size: .875rem; }
.visit-panel > strong { font-size: 5.4rem; }
.visit-panel > b { font-size: 1.05rem; }
.visit-panel > a { padding: .88rem; font-size: .9rem; }

.dashboard-panel {
  border-color: rgba(111, 194, 235, .44);
  box-shadow: inset 0 1px rgba(188, 232, 252, .05), inset 0 0 3.2rem rgba(36, 124, 172, .055), 0 1rem 2.4rem rgba(0, 0, 0, .17);
}
.panel-heading { min-height: 4rem; padding: 1rem 1.25rem; }
.panel-heading h2 { font-size: 1.35rem; letter-spacing: .09em; }
.panel-heading h2 img,
.stories-section .section-heading h2 img {
  width: 1.75rem;
  height: 1.75rem;
  margin-right: .65rem;
  vertical-align: -.42rem;
  opacity: 1;
}
.panel-heading > span { font-size: .875rem; }

.hotspot-rail > h3 { padding: 1.1rem 1.15rem; font-size: 1rem; }
.hotspot-item { min-height: 7.25rem; padding: 1rem 1.1rem; }
.hotspot-item b { font-size: 1rem; }
.hotspot-item small { overflow: visible; gap: .28rem; font-size: .875rem; line-height: 1.52; }
.hotspot-item small > span { font-size: .8125rem; }
.hotspot-item em { font-size: 1.75rem; }
.hotspot-rail .global-toggle { min-height: 4.3rem; font-size: .9rem; }

.convergence-panel {
  border-color: rgba(239, 76, 82, .8);
  box-shadow: inset 0 1px rgba(255, 192, 194, .065), inset 0 0 4.5rem rgba(199, 39, 48, .13), 0 1rem 2.6rem rgba(0, 0, 0, .21);
}
.convergence-radar { width: 11rem; height: 9rem; margin-top: 1.4rem; }
.convergence-radar::before { width: 9rem; height: 9rem; }
.convergence-radar::after { width: 6.1rem; height: 6.1rem; }
.convergence-radar > i:nth-child(1) { width: 3.4rem; height: 3.4rem; }
.convergence-radar > i:nth-child(3) { height: 9rem; }
.convergence-radar > b { width: 9rem; }
.convergence-panel h3 { margin: .65rem 1.45rem 1.1rem; font-size: 1.85rem; }
.convergence-panel ul { padding-right: 1.45rem; padding-left: 1.45rem; }
.convergence-panel li { padding: 1.08rem 0; font-size: .95rem; }
.convergence-panel li > span { gap: .75rem; }
.convergence-panel li > span > i { width: 1.6rem; height: 1.6rem; }

.connection-track { min-height: 19.5rem; gap: .95rem; padding: 1.1rem; }
.connection-card { grid-template-rows: auto 9rem 1fr; gap: .65rem; padding: .8rem; }
.connection-card time { font-size: .8125rem; }
.connection-card b { font-size: 1rem; line-height: 1.52; }
.connection-arrow { font-size: 1.6rem; }
.connection-summary { flex-basis: 15rem; padding: 1.15rem; }
.connection-summary span { font-size: .8125rem; }
.connection-summary p { display: block; overflow: visible; margin-top: .7rem; font-size: .9rem; line-height: 1.62; -webkit-line-clamp: unset; }

.last-seven-panel > p { margin: 1.2rem 1.3rem .6rem; font-size: .9rem; }
.category-stats { gap: 1.2rem; padding: 1.2rem 1.3rem; }
.category-stat { grid-template-columns: 7.5rem minmax(4rem, 1fr) 2.2rem; min-height: 2.7rem; gap: .9rem; }
.category-stat > span,
.category-stat > strong { font-size: .9375rem; }
.category-stat > i { height: .75rem; }
.panel-link { margin: auto 1.1rem 1.1rem; padding: .88rem 1rem; font-size: .875rem; }

.time-machine-panel { min-height: 17rem; }
.time-machine-body { min-height: 13.2rem; grid-template-columns: 8rem minmax(0, 1fr) 15rem; padding: 1.1rem 1.3rem 1.3rem; }
.time-play { width: 6.1rem; height: 6.1rem; }
.time-play span { font-size: 1.7rem; }
.time-play small { font-size: .75rem; }
.time-machine-main { grid-template-rows: auto minmax(6.25rem, 1fr); }
.time-machine-main .timeline-track { min-height: 5.7rem; }
.timeline-day time { font-size: .875rem; }
.timeline-day span { font-size: .8125rem; }
.time-map-visual { min-height: 6.25rem; }
.time-selected { padding-left: 1.15rem; gap: .55rem; }
.time-selected time { font-size: 1.0625rem; }
.time-selected > span { font-size: .875rem; }
.time-selected strong { font-size: 1.15rem; }
.time-selected small { font-size: .8125rem; }

.stories-section .section-heading h2 { font-size: 1.7rem; }
.stories-section .section-heading > a { font-size: .875rem; }
.card-grid { gap: 1.35rem; }
.change-card { min-height: 30.5rem; }
.change-card .card-labels { min-height: 3rem; padding: .82rem 1.05rem 0; }
.change-card .category { font-size: .8125rem; }
.change-card .verification-badge { font-size: .72rem; }
.change-card h3 { display: block; overflow: visible; margin: .78rem 1.05rem .5rem; font-size: 1.22rem; line-height: 1.48; -webkit-line-clamp: unset; }
.change-card .short { display: block; overflow: visible; margin: 0 1.05rem; font-size: .95rem; line-height: 1.64; -webkit-line-clamp: unset; }
.card-date { margin: auto 1.05rem 1rem; font-size: .8125rem; }

@media (max-width: 1120px) {
  .wordmark { font-size: 1.65rem; }
  .desktop-nav a { gap: .25rem; padding-right: .3rem; padding-left: .3rem; font-size: .82rem; }
  .desktop-nav a img { width: 1.15rem; height: 1.15rem; }
  .site-switch,
  .language button { font-size: .78rem; }
  .connection-summary { flex-basis: 12rem; }
  .time-machine-body { grid-template-columns: 6.8rem minmax(0, 1fr) 12rem; }
}

@media (max-width: 680px) {
  .site-header { height: 4.5rem; }
  .wordmark { font-size: 1.45rem; }
  html[lang="ja"] .hero-heading h1 { font-family: "Yu Mincho", "Hiragino Mincho ProN", "HGS明朝E", "Noto Serif JP", serif; font-size: clamp(2.35rem, 11vw, 3.1rem); }
  .hero-lead { font-size: .84rem; line-height: 1.65; }
  .hero-map-link { font-size: .78rem; }
  .visit-panel { width: 9.8rem; min-height: 8.2rem; padding: .75rem; }
  .visit-panel > span { font-size: .59rem; }
  .visit-panel > strong { font-size: 2.5rem; }
  .visit-panel > b { font-size: .7rem; }
  .visit-panel > a { font-size: .62rem; }
  .panel-heading { min-height: 3.1rem; padding: .72rem .8rem; }
  .panel-heading h2 { font-size: .9rem; }
  .panel-heading h2 img,
  .stories-section .section-heading h2 img { width: 1.5rem; height: 1.5rem; margin-right: .45rem; vertical-align: -.35rem; }
  .panel-heading > span { font-size: .68rem; }
  .hotspot-item { min-height: 5.6rem; }
  .hotspot-item b { font-size: .9rem; }
  .hotspot-item small { font-size: .78rem; }
  .hotspot-item small > span { font-size: .72rem; }
  .hotspot-rail .global-toggle { font-size: .78rem; }
  .convergence-radar { width: 8.4rem; height: 6.4rem; }
  .convergence-radar::before { width: 6.4rem; height: 6.4rem; }
  .convergence-radar::after { width: 4.3rem; height: 4.3rem; }
  .convergence-radar > i:nth-child(3) { height: 6.4rem; }
  .convergence-panel h3 { font-size: 1.35rem; }
  .convergence-panel li { font-size: .85rem; }
  .connection-track { min-height: 17rem; }
  .connection-card { grid-template-rows: auto 7.5rem 1fr; }
  .connection-card time { font-size: .72rem; }
  .connection-card b { font-size: .9rem; }
  .connection-summary { flex-basis: 12rem; }
  .connection-summary span { font-size: .7rem; }
  .connection-summary p { font-size: .78rem; }
  .last-seven-panel > p { font-size: .8rem; }
  .category-stat > span,
  .category-stat > strong { font-size: .82rem; }
  .timeline-day time { font-size: .74rem; }
  .timeline-day span { font-size: .7rem; }
  .time-selected time { font-size: .92rem; }
  .time-selected > span,
  .time-selected small { font-size: .72rem; }
  .time-selected strong { font-size: 1rem; }
  .stories-section .section-heading h2 { font-size: 1.45rem; }
  .stories-section .section-heading > a { font-size: .76rem; }
  .change-card { min-height: 26.5rem; }
  .change-card .category { font-size: .75rem; }
  .change-card h3 { font-size: 1.12rem; }
  .change-card .short { font-size: .84rem; }
  .card-date { font-size: .72rem; }
}

/* No.174: supplied LAST 7 DAYS icons and final information-density pass. */
.hero-lead { font-size: 1.08rem; line-height: 1.72; }
.hero-map-link { padding: .72rem 1.15rem; font-size: .98rem; }
.visit-panel > span { font-size: .9rem; }
.visit-panel > b { font-size: 1.08rem; }
.visit-panel > a { font-size: .96rem; }

.hotspot-list { display: flex; flex-direction: column; align-items: stretch; }
.hotspot-item { min-height: 8.25rem; padding: 1.1rem 1.2rem; }
.hotspot-item b { font-size: 1.05rem; line-height: 1.45; }
.hotspot-item small { gap: .32rem; font-size: .92rem; line-height: 1.58; }
.hotspot-item small > span { font-size: .84rem; }
.hotspot-rail .global-toggle { min-height: 4.6rem; padding: .9rem 1.1rem; font-size: .95rem; }

.convergence-panel { display: flex; flex-direction: column; }
.convergence-panel .alert-heading { flex: 0 0 auto; }
.convergence-radar { flex: 0 0 auto; margin-bottom: .45rem; }
.convergence-panel h3 { margin-top: .45rem; }
.convergence-panel ul { width: calc(100% - 2.9rem); margin: 0 1.45rem; padding-right: 0; padding-left: 0; }

.connection-card-meta { display: flex; align-items: center; justify-content: space-between; gap: .45rem; min-width: 0; }
.connection-card-meta time { flex: 0 1 auto; }
.connection-category {
  --connection-accent: var(--cyan);
  flex: 0 0 auto;
  padding: .22rem .42rem;
  border: 1px solid color-mix(in srgb, var(--connection-accent) 42%, transparent);
  border-radius: 2rem;
  background: color-mix(in srgb, var(--connection-accent) 10%, transparent);
  color: var(--connection-accent);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .06em;
}
.connection-category[data-category="EARTH"] { --connection-accent: var(--earth); }
.connection-category[data-category="LIFE"] { --connection-accent: var(--life); }
.connection-category[data-category="SCIENCE"] { --connection-accent: var(--science); }
.connection-category[data-category="INTERNET"] { --connection-accent: var(--internet); }
.connection-category[data-category="HUMANS"] { --connection-accent: var(--humans); }
.connection-category[data-category="ODD"] { --connection-accent: var(--odd); }
.connection-arrow {
  position: relative;
  z-index: 0;
  flex: 0 0 1.8rem;
  width: 1.8rem;
  display: grid;
  place-items: center;
  font-size: 1.75rem;
}
.connection-arrow::before {
  content: "";
  position: absolute;
  z-index: -1;
  right: -.35rem;
  left: -.35rem;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(83, 184, 238, .7), transparent);
  box-shadow: 0 0 .6rem rgba(72, 171, 239, .35);
}

.category-stats { flex: 1 1 auto; align-content: space-evenly; gap: 1.35rem; }
.category-stat { grid-template-columns: 1.8rem minmax(5.4rem, 6.8rem) minmax(4rem, 1fr) 2.2rem; gap: .72rem; min-height: 3rem; }
.category-stat-icon,
.category-stat-icon-placeholder { width: 1.75rem; height: 1.75rem; display: block; }
.category-stat-icon { object-fit: contain; filter: drop-shadow(0 0 .45rem color-mix(in srgb, var(--stat) 48%, transparent)); }
.category-stat-icon-placeholder {
  border: 1px solid color-mix(in srgb, var(--stat) 58%, white);
  border-radius: 50%;
  background: var(--stat);
  box-shadow: 0 0 .7rem color-mix(in srgb, var(--stat) 48%, transparent);
}
.category-stat > span { font-weight: 700; letter-spacing: .03em; }
.last-seven-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .7rem;
  margin: .5rem 1.3rem 1.25rem;
}
.last-seven-summary > div {
  min-height: 5.5rem;
  display: grid;
  align-content: center;
  gap: .35rem;
  padding: .8rem;
  border: 1px solid rgba(91, 170, 212, .22);
  background: linear-gradient(145deg, rgba(14, 48, 66, .3), rgba(3, 18, 28, .55));
}
.last-seven-summary span { color: #819aa8; font-size: .76rem; line-height: 1.4; }
.last-seven-summary strong { color: #bfeaff; font: 300 1.65rem/1 var(--display-font); }

.time-machine-panel { min-height: 18.5rem; }
.time-machine-body { min-height: 14.6rem; }
.time-play { width: 6.35rem; height: 6.35rem; }
.time-machine-main { grid-template-rows: auto minmax(7.5rem, 1fr); }
.time-machine-main .timeline-track { min-height: 6rem; }
.time-map-visual { min-height: 7.5rem; background-position: center 46%; }
.time-selected { gap: .65rem; }

.change-card .category {
  min-height: 1.65rem;
  padding: .3rem .55rem;
  border: 1px solid rgba(116, 190, 219, .3);
  border-radius: 2rem;
  background: rgba(22, 69, 89, .24);
}

@media (max-width: 1120px) {
  .category-stat { grid-template-columns: 1.7rem minmax(5rem, 6rem) minmax(3.5rem, 1fr) 1.8rem; gap: .6rem; }
  .category-stat-icon,
  .category-stat-icon-placeholder { width: 1.65rem; height: 1.65rem; }
}

@media (max-width: 680px) {
  .hero-lead { font-size: .88rem; line-height: 1.68; }
  .hero-map-link { padding: .52rem .72rem; font-size: .76rem; }
  .visit-panel { width: 9rem; min-height: 8rem; padding: .65rem; }
  .visit-panel > span { font-size: .62rem; }
  .visit-panel > b { font-size: .73rem; }
  .visit-panel > a { font-size: .66rem; }
  .hotspot-item { min-height: 5.9rem; padding: .85rem .9rem; }
  .hotspot-item b { font-size: .92rem; }
  .hotspot-item small { font-size: .8rem; line-height: 1.5; }
  .hotspot-item small > span { font-size: .74rem; }
  .hotspot-rail .global-toggle { min-height: 3.9rem; padding: .7rem .8rem; font-size: .8rem; }
  .convergence-panel ul { width: calc(100% - 1.8rem); margin-right: .9rem; margin-left: .9rem; }
  .connection-card-meta { align-items: flex-start; flex-direction: column; gap: .3rem; }
  .connection-category { font-size: .61rem; }
  .connection-arrow { flex-basis: 1.45rem; width: 1.45rem; font-size: 1.35rem; }
  .category-stats { gap: 1rem; padding: 1rem; }
  .category-stat { grid-template-columns: 1.55rem minmax(4.7rem, 5.4rem) minmax(3rem, 1fr) 1.5rem; gap: .5rem; min-height: 2.6rem; }
  .category-stat-icon,
  .category-stat-icon-placeholder { width: 1.5rem; height: 1.5rem; }
  .last-seven-summary { gap: .55rem; margin: .3rem 1rem 1rem; }
  .last-seven-summary > div { min-height: 4.7rem; padding: .65rem; }
  .last-seven-summary span { font-size: .68rem; }
  .last-seven-summary strong { font-size: 1.35rem; }
  .time-machine-panel { min-height: 0; }
  .time-machine-body {
    min-height: 0;
    grid-template-columns: 4.6rem minmax(0, 1fr);
    grid-template-areas: "play main" "selected selected";
    align-items: center;
    overflow: visible;
  }
  .time-play { width: 4.6rem; height: 4.6rem; }
  .time-play { grid-area: play; }
  .time-machine-main { grid-area: main; grid-template-rows: auto minmax(6.4rem, 1fr); }
  .time-machine-main .timeline-track { overflow-x: hidden; justify-content: space-around; padding-right: .25rem; padding-left: .25rem; }
  .time-machine-main .timeline-day { flex: 1 1 0; min-width: 0; }
  .time-selected { grid-area: selected; padding: .85rem 0 0; border-top: 1px solid var(--line); border-left: 0; }
  .time-map-visual { min-height: 6.4rem; }
  .change-card .category { min-height: 1.5rem; padding: .25rem .45rem; }
}

/* No.175 — top residual polish and observational article detail. */
.dashboard-secondary {
  grid-template-areas: "connection stats" "timeline .";
  align-items: start;
}
.last-seven-panel { min-height: 0; align-self: start; }
.last-seven-panel .category-stats { flex: 0 0 auto; gap: .9rem; padding-top: .9rem; padding-bottom: .9rem; }
.last-seven-panel .category-stat { min-height: 2.65rem; }
.last-seven-summary { margin-top: .25rem; }
.last-seven-summary > div { min-height: 4.75rem; }

.hotspot-item {
  background: linear-gradient(90deg, rgba(37, 123, 159, .045), transparent 76%);
}
.hotspot-item > i { width: .55rem; height: .55rem; box-shadow: 0 0 .95rem var(--hotspot-accent); }
.hotspot-item b { color: #e1edf1; }
.hotspot-item small > span { color: #63d5e9; font-weight: 700; letter-spacing: .045em; }
.hotspot-item em { color: #8fe2ff; text-shadow: 0 0 .65rem rgba(68, 181, 242, .45); }

.convergence-radar { width: 12.5rem; height: 10.4rem; margin-top: 1.15rem; margin-bottom: .1rem; }
.convergence-radar::before { width: 10.3rem; height: 10.3rem; }
.convergence-radar::after { width: 7rem; height: 7rem; }
.convergence-radar > i:nth-child(1) { width: 3.9rem; height: 3.9rem; }
.convergence-radar > i:nth-child(3) { height: 10.3rem; }
.convergence-radar > b { width: 10.3rem; }
.convergence-summary {
  display: flex;
  justify-content: center;
  gap: .55rem;
  margin: .05rem 1.45rem .35rem;
  color: #ff9da0;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .06em;
}
.convergence-summary span { padding: .3rem .55rem; border: 1px solid rgba(239, 76, 82, .28); background: rgba(239, 76, 82, .055); }
.convergence-panel h3 { margin-top: .35rem; }
.convergence-panel li > span > i { border: 1px solid rgba(255, 125, 131, .55); background: radial-gradient(circle, rgba(255, 102, 109, .32), transparent 58%); }

.connection-card { border-color: rgba(91, 176, 220, .32); background: linear-gradient(150deg, rgba(6, 27, 41, .94), rgba(2, 15, 24, .98)); }
.connection-card img { filter: saturate(1.05) brightness(1.05); }
.connection-arrow { color: #91ddff; text-shadow: 0 0 1rem rgba(72, 171, 239, .95); }
.connection-arrow::before { height: 2px; box-shadow: 0 0 .8rem rgba(72, 171, 239, .55); }
.connection-summary { border-color: rgba(99, 190, 235, .36); box-shadow: inset 0 0 2rem rgba(37, 127, 177, .07); }

.time-machine-panel { min-height: 19.5rem; }
.time-machine-body { min-height: 15.5rem; }
.time-machine-main { grid-template-rows: auto minmax(8.35rem, 1fr); }
.time-map-visual { min-height: 8.35rem; border-color: rgba(79, 167, 213, .34); box-shadow: inset 0 0 1.6rem rgba(0, 0, 0, .18); }
.time-play { border-color: rgba(89, 190, 239, .72); box-shadow: inset 0 0 2rem rgba(42, 151, 207, .08), 0 0 1.5rem rgba(44, 149, 204, .08); }
.timeline-day.is-current i { box-shadow: 0 0 1.1rem rgba(83, 190, 248, .8); }
.time-selected strong { color: #d5f3ff; }

.dashboard-panel,
.change-card { border-image: linear-gradient(145deg, rgba(132, 215, 250, .46), rgba(45, 115, 151, .18)) 1; }
.convergence-panel { border-image: none; }
.stories-section .section-heading h2 { color: #f0ede5; }

#app:has(.detail) {
  background:
    radial-gradient(circle at 77% 9%, rgba(18, 82, 116, .12), transparent 27rem),
    linear-gradient(180deg, rgba(2, 13, 21, .3), transparent 28rem);
}
.detail {
  width: min(calc(100% - 3rem), 65.625rem);
  max-width: none;
  margin: 0 auto;
  padding: clamp(3rem, 5vw, 5.25rem) 0 clamp(4rem, 7vw, 7rem);
}
.detail-back {
  min-height: 2.5rem;
  margin: 0 0 2.2rem;
  font-size: .86rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-decoration: none;
}
.detail-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(18rem, .9fr);
  gap: clamp(1.5rem, 3vw, 2.6rem);
  align-items: start;
}
.detail-header,
.detail-section,
.detail-compare,
.detail-actions { width: auto; margin-right: 0; margin-left: 0; }
.detail-header { padding-top: .25rem; }
.detail-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem .65rem;
  align-items: center;
  margin: 0 0 1.1rem;
  color: var(--gold);
  font-size: .8rem;
  letter-spacing: .06em;
}
.detail-meta img { width: 1.5rem; height: 1.5rem; }
.detail-meta > span + span { padding-left: .65rem; border-left: 1px solid rgba(126, 172, 196, .25); }
.detail-meta b {
  margin-left: auto;
  padding: .25rem .5rem;
  border: 1px solid rgba(68, 213, 205, .42);
  border-radius: 2rem;
  color: var(--cyan);
  background: rgba(42, 151, 147, .08);
  font-size: .7rem;
  letter-spacing: .06em;
}
.detail-meta b[data-status="REPORTED"] { border-color: rgba(216,168,85,.42); color: var(--gold); }
.detail-meta b[data-status="UNVERIFIED"] { border-color: rgba(219,113,105,.55); color: #efaaa3; }
.detail h1 {
  margin: 0;
  font: 400 clamp(2.5rem, 4.2vw, 3rem)/1.24 var(--display-font);
  letter-spacing: -.025em;
  text-wrap: balance;
}
html[lang="ja"] .detail h1 { font-family: "Yu Mincho", "Hiragino Mincho ProN", "HGS明朝E", "Noto Serif JP", serif; font-weight: 500; }
.detail-lead { margin: 1.25rem 0 0; color: #dbe5e9; font-size: 1.06rem; line-height: 1.82; }

.detail-snapshot {
  overflow: hidden;
  border: 1px solid rgba(91, 177, 219, .42);
  border-radius: .35rem;
  background: linear-gradient(155deg, rgba(6, 29, 44, .93), rgba(2, 15, 24, .97));
  box-shadow: inset 0 0 2.8rem rgba(38, 125, 170, .07), 0 1rem 2rem rgba(0, 0, 0, .16);
}
.detail-snapshot h2 {
  display: flex;
  align-items: center;
  gap: .55rem;
  min-height: 3.5rem;
  margin: 0;
  padding: .8rem 1rem;
  border-bottom: 1px solid rgba(91, 177, 219, .24);
  color: #c6eaff;
  font: 500 .92rem/1.4 var(--body-font);
  letter-spacing: .07em;
}
.detail-snapshot h2 span { color: #6ad4ff; font-size: 1.1rem; }
.detail-snapshot dl { margin: 0; }
.detail-snapshot dl > div { display: grid; grid-template-columns: 6.4rem minmax(0, 1fr); gap: .7rem; padding: .8rem 1rem; border-top: 1px solid rgba(91, 177, 219, .15); }
.detail-snapshot dl > div:first-child { border-top: 0; }
.detail-snapshot dt { color: #7fa6ba; font-size: .72rem; line-height: 1.55; }
.detail-snapshot dd { margin: 0; color: #d7e5eb; font-size: .78rem; line-height: 1.58; }
.detail-snapshot dd small { display: block; margin-top: .25rem; color: #59d8d2; font-size: .68rem; font-weight: 700; }

.detail-figure { margin: 3.2rem 0 3.4rem; border: 1px solid rgba(88, 174, 218, .35); background: #020b12; box-shadow: 0 1.6rem 3.2rem rgba(0, 0, 0, .2); }
.detail-image { width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; border: 0; }
.detail-section { margin-top: 3.2rem; }
.detail-section h2,
.detail-compare h2,
.detail-related h2 { display: flex; align-items: center; gap: .55rem; margin: 0 0 1rem; color: var(--cyan); font: 700 1.25rem/1.4 var(--body-font); letter-spacing: .04em; }
.detail-section h2 > span { color: #51bfff; text-shadow: 0 0 .7rem rgba(50, 171, 235, .35); }
.detail-section p,
.detail-compare p { color: #d4dfe4; font-size: 1.02rem; line-height: 1.86; }
.detail-happened { width: min(100%, 48rem); margin-right: auto; margin-left: auto; }

.detail-compare {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin-top: 3.4rem;
  border: 1px solid rgba(87, 173, 217, .35);
  background: rgba(87, 173, 217, .3);
  box-shadow: inset 0 0 2.4rem rgba(34, 112, 153, .045);
}
.detail-compare > div { min-width: 0; min-height: 13rem; padding: 1.55rem 1.7rem; background: linear-gradient(145deg, rgba(7, 26, 38, .98), rgba(2, 16, 25, .98)); }
.detail-compare > div:last-child { background: linear-gradient(145deg, rgba(6, 35, 46, .98), rgba(2, 19, 28, .98)); }
.detail-compare h2 { color: #9aaeb8; font-size: 1rem; }
.detail-compare > div:last-child h2 { color: #63ddd8; }
.detail-compare p { font-size: .96rem; line-height: 1.78; }
.detail-compare-arrow {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  width: 2.5rem;
  height: 2.5rem;
  display: grid;
  place-items: center;
  transform: translate(-50%, -50%) rotate(90deg);
  border: 1px solid rgba(82, 201, 242, .65);
  border-radius: 50%;
  color: #79dcff;
  background: #061a27;
  box-shadow: 0 0 1.4rem rgba(54, 178, 230, .35);
}
.detail-delta {
  width: 100%;
  margin-top: 1.2rem;
  padding: 1.7rem 2rem 1.9rem;
  border: 1px solid rgba(56, 193, 244, .7);
  border-left: 1px solid rgba(56, 193, 244, .7);
  border-radius: .4rem;
  background:
    radial-gradient(circle at 89% 50%, rgba(36, 160, 220, .18), transparent 12rem),
    linear-gradient(100deg, rgba(4, 30, 46, .98), rgba(4, 22, 35, .96));
  box-shadow: inset 0 0 3.5rem rgba(23, 131, 187, .12), 0 0 1.3rem rgba(39, 164, 222, .14);
}
.detail-delta h2 { color: #76ddff; }
.detail-delta p { font-size: 1.05rem; }

.detail-support { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 1rem; margin-top: 1.2rem; }
.detail-support .detail-section { margin: 0; padding: 1.4rem 1.5rem 1.55rem; border: 1px solid rgba(91, 168, 207, .3); background: rgba(5, 22, 33, .72); }
.detail-support .detail-section p { font-size: .94rem; line-height: 1.8; }
.source-record-label { margin: 0 0 .6rem !important; color: #8fa7b4 !important; font-size: .68rem !important; font-weight: 700; letter-spacing: .12em; }
.source-list { margin: 0; }
.source-list li { border-color: rgba(92, 176, 216, .34); background: linear-gradient(145deg, rgba(7, 30, 43, .75), rgba(2, 16, 24, .8)); }
.source-list strong { color: #e5edf0; }
.source-list a { min-height: 2.35rem; }

.detail-related { margin-top: 2rem; padding: 1.35rem; border: 1px solid rgba(91, 168, 207, .3); }
.detail-related > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; }
.detail-related a { min-width: 0; display: grid; grid-template-columns: 5.5rem minmax(0, 1fr) auto; gap: .7rem; align-items: center; padding: .65rem; border: 1px solid rgba(91, 168, 207, .26); text-decoration: none; }
.detail-related img { width: 5.5rem; aspect-ratio: 16 / 9; object-fit: cover; }
.detail-related span { min-width: 0; display: grid; gap: .3rem; }
.detail-related small { color: #6ec8e9; font-size: .68rem; }
.detail-related b { font-size: .8rem; line-height: 1.45; }
.detail-related em { color: #77d9ff; font-style: normal; }

.detail-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
  margin-top: 2rem;
  padding-top: 1.2rem;
  border-top: 1px solid rgba(91, 168, 207, .24);
}
.detail-actions a,
.detail-actions button { min-height: 3.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .75rem 1rem; border: 1px solid rgba(91, 168, 207, .32); background: rgba(3, 17, 26, .7); color: #bfe8fa; font: 600 .82rem/1.4 var(--body-font); text-decoration: none; cursor: pointer; }
.detail-actions b { color: #66cff7; font-size: 1.05rem; }

@media (max-width: 820px) {
  .dashboard-secondary { grid-template-columns: 1fr; grid-template-areas: none; align-items: stretch; }
  .last-seven-panel { align-self: stretch; }
  .detail { width: min(calc(100% - 2rem), 46rem); }
  .detail-intro { grid-template-columns: 1fr; }
  .detail-snapshot { width: 100%; }
  .detail-support { grid-template-columns: 1fr; }
  .detail-related > div { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  .convergence-radar { width: 9.2rem; height: 7.3rem; }
  .convergence-radar::before { width: 7.3rem; height: 7.3rem; }
  .convergence-radar::after { width: 4.9rem; height: 4.9rem; }
  .convergence-radar > i:nth-child(3) { height: 7.3rem; }
  .convergence-radar > b { width: 7.3rem; }
  .convergence-summary { margin-right: .9rem; margin-left: .9rem; font-size: .68rem; }
  .time-machine-panel,
  .time-machine-body { min-height: 0; }
  .time-machine-main { grid-template-rows: auto minmax(6.8rem, 1fr); }
  .time-map-visual { min-height: 6.8rem; }

  .detail { width: calc(100% - 1.5rem); padding: 2rem 0 4rem; }
  .detail-back { margin-bottom: 1.3rem; font-size: .78rem; }
  .detail-intro { gap: 1.35rem; }
  .detail-meta { font-size: .7rem; }
  .detail-meta b { margin-left: 0; }
  .detail h1 { font-size: clamp(2.1rem, 10.2vw, 2.65rem); line-height: 1.28; }
  .detail-lead { font-size: .95rem; line-height: 1.78; }
  .detail-snapshot dl > div { grid-template-columns: 5.35rem minmax(0, 1fr); padding: .72rem .8rem; }
  .detail-snapshot h2 { min-height: 3.1rem; padding: .7rem .8rem; font-size: .82rem; }
  .detail-snapshot dt { font-size: .66rem; }
  .detail-snapshot dd { font-size: .73rem; }
  .detail-figure { margin: 2rem 0 2.5rem; }
  .detail-section { margin-top: 2.5rem; }
  .detail-section h2,
  .detail-related h2 { font-size: 1.12rem; }
  .detail-section p,
  .detail-compare p { font-size: .94rem; line-height: 1.82; }
  .detail-compare { grid-template-columns: 1fr; margin-top: 2.5rem; }
  .detail-compare > div { min-height: 0; padding: 1.25rem 1.1rem 1.35rem; }
  .detail-compare-arrow { top: 50%; transform: translate(-50%, -50%) rotate(180deg); }
  .detail-delta { margin-top: 1rem; padding: 1.35rem 1.15rem 1.45rem; }
  .detail-support { margin-top: 1rem; }
  .detail-support .detail-section { padding: 1.2rem 1.1rem 1.3rem; }
  .detail-actions { grid-template-columns: 1fr; }
  .detail-actions a,
  .detail-actions button { min-height: 3.25rem; }
}

/* No.176 — integrated observation detail; top-page selectors intentionally unchanged. */
#app:has(.detail) { background: #03121b; }
.detail {
  width: min(calc(100% - 2.5rem), 80rem);
  margin: 0 auto;
  padding: 1.5rem 0 4.5rem;
}
.detail-hero {
  position: relative;
  min-height: clamp(31rem, 43vw, 37rem);
  overflow: hidden;
  border: 1px solid rgba(91, 177, 219, .36);
  background: #020b12;
  isolation: isolate;
}
.detail-hero::before,
.detail-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
}
.detail-hero::before {
  background:
    linear-gradient(90deg, rgba(1, 10, 17, .93) 0%, rgba(1, 10, 17, .7) 36%, rgba(1, 10, 17, .12) 67%, rgba(1, 10, 17, .45) 100%),
    linear-gradient(180deg, rgba(1, 10, 17, .14) 25%, rgba(1, 10, 17, .88) 100%);
}
.detail-hero::after {
  background: radial-gradient(circle at 58% 52%, transparent 0 18rem, rgba(2, 14, 23, .18) 35rem, rgba(2, 14, 23, .58) 100%);
}
.detail-hero-image {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 53% center;
}
.detail-hero .detail-back {
  position: absolute;
  z-index: 2;
  top: 1.25rem;
  left: 1.75rem;
  min-height: auto;
  margin: 0;
  color: #67e0dd;
  font-size: .78rem;
  text-shadow: 0 .1rem .7rem #001018;
}
.detail-hero-grid {
  min-height: inherit;
  display: grid;
  grid-template-columns: minmax(0, 1.75fr) minmax(17.5rem, .82fr);
  gap: clamp(1.4rem, 3vw, 2.6rem);
  align-items: end;
  padding: 4.8rem 1.75rem 1.75rem;
}
.detail .detail-header { align-self: end; padding: 0; }
.detail .detail-meta { max-width: 43rem; margin-bottom: 1rem; }
.detail .detail-meta b { margin-left: 0; }
.detail .detail-meta img { filter: drop-shadow(0 0 .45rem rgba(50, 170, 239, .55)); }
.detail h1 {
  max-width: 42rem;
  font-size: clamp(2.75rem, 4.05vw, 3.35rem);
  line-height: 1.24;
  color: #f0eee7;
  text-shadow: 0 .16rem 1.1rem rgba(0, 0, 0, .92);
}
.detail .detail-lead {
  max-width: 41rem;
  margin-top: 1.15rem;
  color: #e0eaee;
  font-size: 1.0625rem;
  line-height: 1.78;
  text-shadow: 0 .12rem .8rem rgba(0, 0, 0, .95);
}
.detail-tags { display: flex; gap: .45rem; margin: 1rem 0 0; }
.detail-tags :is(span, a) {
  padding: .27rem .55rem;
  border: 1px solid rgba(106, 202, 237, .36);
  border-radius: .25rem;
  background: rgba(3, 21, 31, .72);
  color: #8edcff;
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-decoration: none;
}
.detail-tags a:is(:hover, :focus-visible) { background: rgba(10, 55, 76, .9); outline: 1px solid currentColor; outline-offset: 2px; }
.detail-tags :is(span, a)[data-category="LIFE"] { color: var(--life); border-color: color-mix(in srgb, var(--life) 42%, transparent); }
.detail-tags :is(span, a)[data-category="EARTH"] { color: var(--earth); border-color: color-mix(in srgb, var(--earth) 42%, transparent); }
.detail-tags :is(span, a)[data-category="SCIENCE"] { color: var(--science); border-color: color-mix(in srgb, var(--science) 42%, transparent); }

.detail-explore { margin: 1rem 1.1rem 0; padding: 1.35rem; border: 1px solid rgba(91, 168, 207, .3); }
.detail-explore h2 { margin: 0 0 1rem; color: var(--cyan); font: 700 1.25rem/1.4 var(--body-font); letter-spacing: .04em; }
.detail-explore-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; }
.detail-explore-grid > a { min-width: 0; display: grid; grid-template-columns: 5.5rem minmax(0, 1fr) auto; gap: .7rem; align-items: center; padding: .65rem; border: 1px solid rgba(91, 168, 207, .26); color: inherit; text-decoration: none; }
.detail-explore-grid > a:is(:hover, :focus-visible) { border-color: rgba(108, 211, 255, .7); background: rgba(6, 35, 50, .65); }
.detail-explore-grid picture, .detail-explore-grid img { width: 5.5rem; aspect-ratio: 16 / 9; object-fit: cover; }
.detail-explore-grid span { min-width: 0; display: grid; gap: .3rem; }
.detail-explore-grid small { color: #83cde9; font-size: .68rem; }
.detail-explore-grid small b { margin-right: .5rem; color: #e5b64c; letter-spacing: .06em; }
.detail-explore-grid strong { font-size: .8rem; line-height: 1.45; }
.detail-explore-grid em { color: #77d9ff; font-style: normal; }
.detail-sequence { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; margin: .8rem 1.1rem 0; }
.detail-sequence a { min-width: 0; display: grid; gap: .35rem; padding: 1rem; border: 1px solid rgba(91, 168, 207, .3); color: inherit; text-decoration: none; }
.detail-sequence a:last-child { text-align: right; }
.detail-sequence a:is(:hover, :focus-visible) { border-color: rgba(108, 211, 255, .7); background: rgba(6, 35, 50, .65); }
.detail-sequence small { color: #72caed; font-size: .7rem; }
.detail-sequence b { font-size: .82rem; line-height: 1.5; }

.detail-hero .detail-snapshot {
  align-self: end;
  border-color: rgba(94, 190, 234, .48);
  background: linear-gradient(155deg, rgba(4, 31, 47, .9), rgba(2, 16, 25, .94));
  backdrop-filter: blur(.35rem);
}
.detail-snapshot h2 { color: #d6f2ff; }
.detail-snapshot dl > div { grid-template-columns: 6.15rem minmax(0, 1fr); gap: .85rem; }
.detail-snapshot dt { display: flex; align-items: flex-start; gap: .45rem; }
.detail-snapshot dt > span { flex: 0 0 1rem; color: #61caff; font-size: .9rem; text-align: center; }
.detail-snapshot dd { font-size: .76rem; }

.detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 2.8fr) minmax(16.5rem, 1fr);
  grid-template-areas: "main rail" "related nav";
  gap: 1rem;
  align-items: start;
  margin-top: 1rem;
}
.detail-main { grid-area: main; min-width: 0; }
.detail-rail { grid-area: rail; min-width: 0; }
.detail-related { grid-area: related; }
.detail-actions { grid-area: nav; }
.detail-observation-panel {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.3fr);
  border: 1px solid rgba(91, 168, 207, .34);
  background: linear-gradient(145deg, rgba(5, 24, 36, .92), rgba(2, 16, 25, .96));
}
.detail-observation-panel .detail-happened {
  width: auto;
  margin: 0;
  padding: 1.35rem 1.45rem 1.5rem;
}
.detail .detail-section { margin-top: 0; }
.detail-observation-panel .detail-happened p { margin-bottom: 0; font-size: .91rem; line-height: 1.78; }
.detail-observation-panel .detail-compare {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: .75rem .75rem .75rem 0;
  border-color: rgba(82, 170, 214, .32);
}
.detail-observation-panel .detail-compare > div { min-height: 0; padding: 1.1rem 1.15rem; }
.detail-observation-panel .detail-compare h2 { margin-bottom: .7rem; font-size: .82rem; }
.detail-observation-panel .detail-compare p { margin: 0; font-size: .8rem; line-height: 1.68; }
.detail-observation-panel .detail-compare-arrow { width: 2rem; height: 2rem; font-size: .75rem; }

.detail .detail-delta {
  position: relative;
  min-height: 9.75rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 13rem;
  align-items: center;
  overflow: hidden;
  margin-top: 1rem;
  padding: 1.45rem 1.65rem;
  background: linear-gradient(105deg, rgba(4, 38, 57, .98), rgba(4, 21, 34, .96));
}
.detail-delta-copy { position: relative; z-index: 2; }
.detail-delta-copy p { margin-bottom: 0; font-size: .98rem; line-height: 1.82; }
.detail-delta-visual { position: relative; width: 12rem; height: 8rem; justify-self: end; opacity: .88; }
.detail-delta-visual::before,
.detail-delta-visual::after,
.detail-delta-visual i {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  border: 1px solid rgba(55, 164, 230, .31);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.detail-delta-visual::before { width: 11rem; height: 11rem; }
.detail-delta-visual::after { width: 8.25rem; height: 8.25rem; }
.detail-delta-visual i:nth-child(1) { width: 5.6rem; height: 5.6rem; }
.detail-delta-visual i:nth-child(2) { width: 3.45rem; height: 3.45rem; border-color: rgba(74, 217, 194, .42); }
.detail-delta-visual i:nth-child(3) { width: 1.4rem; height: 1.4rem; background: rgba(57, 221, 180, .18); box-shadow: 0 0 1.5rem rgba(55, 224, 183, .45); }
.detail-delta-visual b { position: absolute; z-index: 2; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #63e5c6; font-size: 1.8rem; text-shadow: 0 0 1rem #36cfae; }

.detail .detail-support { gap: 1rem; margin-top: 1rem; }
.detail-support .detail-section { min-height: 12.5rem; }
.detail-support .detail-section h2 { font-size: 1rem; }
.detail-support .detail-section p { margin-bottom: 0; font-size: .84rem; line-height: 1.78; }
.detail-support .source-list li { min-height: 8rem; }
.detail-support .source-list cite { font-size: .75rem; }

.detail-impact,
.detail-metric {
  overflow: hidden;
  border: 1px solid rgba(91, 168, 207, .36);
  background: linear-gradient(155deg, rgba(6, 31, 45, .94), rgba(2, 16, 25, .98));
}
.detail-impact h2,
.detail-metric h2 {
  margin: 0;
  padding: 1rem 1.1rem;
  border-bottom: 1px solid rgba(91, 168, 207, .25);
  color: #81d8ff;
  font: 500 1rem/1.4 var(--body-font);
  letter-spacing: .06em;
}
.detail-impact ul { margin: 0; padding: .35rem 1rem; list-style: none; }
.detail-impact li { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: .65rem; padding: 1rem 0; border-top: 1px solid rgba(91, 168, 207, .18); }
.detail-impact li:first-child { border-top: 0; }
.detail-impact li > span { width: 2rem; height: 2rem; display: grid; place-items: center; border: 1px solid rgba(87, 191, 236, .4); border-radius: 50%; color: #6ed8ff; background: rgba(27, 106, 145, .12); }
.detail-impact p { margin: 0; color: #cbdde5; font-size: .8rem; line-height: 1.65; }

.detail .detail-related { margin-top: 0; }
.detail .detail-actions {
  grid-template-columns: 1fr;
  gap: .55rem;
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}
.detail .detail-actions a,
.detail .detail-actions button { min-height: 3.6rem; background: linear-gradient(135deg, rgba(5, 27, 40, .88), rgba(2, 16, 24, .94)); }

@media (max-width: 980px) {
  .detail-hero-grid { grid-template-columns: minmax(0, 1.35fr) minmax(16rem, .9fr); }
  .detail-layout { grid-template-columns: minmax(0, 2.15fr) minmax(15rem, 1fr); }
  .detail-observation-panel { grid-template-columns: 1fr; }
  .detail-observation-panel .detail-compare { margin: 0 .75rem .75rem; }
}

@media (max-width: 820px) {
  .detail { width: min(calc(100% - 2rem), 46rem); padding-top: 1rem; }
  .detail-hero { min-height: 0; }
  .detail-hero::before {
    background:
      linear-gradient(180deg, rgba(1, 10, 17, .18) 0%, rgba(1, 10, 17, .88) 31%, rgba(1, 10, 17, .95) 100%),
      linear-gradient(90deg, rgba(1, 10, 17, .74), rgba(1, 10, 17, .28));
  }
  .detail-hero-image { object-position: 54% top; }
  .detail-hero .detail-back { top: 1rem; left: 1rem; }
  .detail-hero-grid { min-height: 0; grid-template-columns: 1fr; gap: 1rem; padding: 13rem 1rem 1rem; }
  .detail .detail-header { order: 1; }
  .detail-hero .detail-snapshot { order: 2; }
  .detail-layout {
    grid-template-columns: 1fr;
    grid-template-areas: "main" "rail" "related" "nav";
  }
  .detail-observation-panel { grid-template-columns: 1fr; }
  .detail-observation-panel .detail-compare { margin: 0 .75rem .75rem; }
  .detail .detail-support { grid-template-columns: 1fr; }
  .detail-support .detail-section { min-height: 0; }
}

@media (max-width: 680px) {
  .detail { width: calc(100% - 1rem); padding: .5rem 0 3rem; }
  .detail-hero-grid { padding: 10.5rem .75rem .75rem; }
  .detail h1 { font-size: clamp(2.05rem, 10.5vw, 2.55rem); line-height: 1.24; }
  .detail .detail-lead { font-size: .94rem; line-height: 1.72; }
  .detail .detail-meta { gap: .4rem .5rem; }
  .detail-snapshot dl > div { grid-template-columns: 5.25rem minmax(0, 1fr); gap: .6rem; }
  .detail-snapshot dt { font-size: .63rem; }
  .detail-snapshot dt > span { display: none; }
  .detail-snapshot dd { font-size: .7rem; }
  .detail-observation-panel .detail-happened { padding: 1.15rem 1rem 1.25rem; }
  .detail-observation-panel .detail-compare { grid-template-columns: 1fr; margin: 0 .55rem .55rem; }
  .detail-observation-panel .detail-compare-arrow { transform: translate(-50%, -50%) rotate(180deg); }
  .detail .detail-delta { grid-template-columns: 1fr; min-height: 0; padding: 1.25rem 1rem; }
  .detail-delta-visual { position: absolute; right: -2rem; bottom: -2rem; opacity: .34; }
  .detail-support .detail-section { padding: 1.1rem 1rem 1.2rem; }
  .detail-impact p { font-size: .76rem; }
  .detail-explore { margin: .75rem .75rem 0; padding: 1rem; }
  .detail-explore-grid { grid-template-columns: 1fr; }
  .detail-sequence { grid-template-columns: 1fr; margin: .75rem .75rem 0; }
  .detail-sequence a:last-child { text-align: left; }
}

/* No.177 — desktop detail density and rail completion; top-page selectors intentionally unchanged. */
.detail-layout {
  grid-template-areas: "main rail" "related rail";
  align-items: start;
}
.detail-rail {
  display: grid;
  gap: .8rem;
  align-content: start;
}
.detail-rail .detail-actions { grid-area: auto; }

@media (min-width: 981px) {
  .detail {
    width: calc(100% - 3.5rem);
    max-width: none;
    padding: 1.25rem 0 3.25rem;
  }
  .detail-hero { min-height: clamp(38rem, 49vw, 44rem); }
  .detail-hero::before {
    background:
      linear-gradient(90deg, rgba(1, 10, 17, .91) 0%, rgba(1, 10, 17, .62) 34%, rgba(1, 10, 17, .08) 68%, rgba(1, 10, 17, .4) 100%),
      linear-gradient(180deg, rgba(1, 10, 17, .08) 20%, rgba(1, 10, 17, .82) 100%);
  }
  .detail-hero-grid {
    grid-template-columns: minmax(0, 2.5fr) minmax(22rem, 1fr);
    gap: clamp(2rem, 3vw, 3rem);
    padding: 5.4rem 2.1rem 2.1rem;
  }
  .detail-hero .detail-back { top: 1.4rem; left: 2.1rem; font-size: .86rem; }
  .detail .detail-meta { gap: .55rem .7rem; margin-bottom: 1.2rem; font-size: .9rem; }
  .detail .detail-meta img { width: 1.72rem; height: 1.72rem; }
  .detail .detail-meta b { padding: .32rem .58rem; font-size: .8rem; }
  .detail h1 {
    max-width: 48rem;
    font-size: clamp(3.125rem, 4.2vw, 3.625rem);
    line-height: 1.2;
  }
  .detail .detail-lead { max-width: 47rem; margin-top: 1.35rem; font-size: 1.1rem; line-height: 1.72; }
  .detail-tags span { padding: .34rem .65rem; font-size: .75rem; }

  .detail-hero .detail-snapshot { box-shadow: 0 0 2.5rem rgba(29, 133, 187, .12); }
  .detail-snapshot h2 {
    min-height: 4rem;
    display: flex;
    align-items: center;
    margin: 0;
    padding: 1rem 1.25rem;
    font-size: 1.18rem;
    letter-spacing: .055em;
  }
  .detail-snapshot dl > div {
    grid-template-columns: 7.35rem minmax(0, 1fr);
    gap: 1rem;
    min-height: 4.65rem;
    padding: 1rem 1.25rem;
  }
  .detail-snapshot dt { gap: .55rem; font-size: .82rem; line-height: 1.55; }
  .detail-snapshot dt > span { flex-basis: 1.1rem; font-size: 1rem; }
  .detail-snapshot dd { font-size: .92rem; line-height: 1.58; }
  .detail-snapshot dd small { margin-top: .25rem; font-size: .78rem; line-height: 1.5; }

  .detail-layout {
    grid-template-columns: minmax(0, 2.75fr) minmax(19rem, 1fr);
    gap: 1.25rem;
    margin-top: 1.25rem;
  }
  .detail-observation-panel { grid-template-columns: minmax(0, .98fr) minmax(0, 1.3fr); }
  .detail-observation-panel .detail-happened { padding: 1.65rem 1.7rem 1.8rem; }
  .detail-observation-panel .detail-happened h2 { font-size: 1.35rem; }
  .detail-observation-panel .detail-happened p { max-width: 42rem; font-size: 1rem; line-height: 1.78; }
  .detail-observation-panel .detail-compare { margin: .9rem .9rem .9rem 0; }
  .detail-observation-panel .detail-compare > div { min-height: 12.8rem; padding: 1.35rem 1.4rem; }
  .detail-observation-panel .detail-compare > div:first-child { background: rgba(5, 23, 35, .98); }
  .detail-observation-panel .detail-compare > div:last-child { background: linear-gradient(145deg, rgba(6, 35, 46, .98), rgba(5, 27, 38, .98)); }
  .detail-observation-panel .detail-compare h2 { margin-bottom: .9rem; font-size: 1rem; }
  .detail-observation-panel .detail-compare p { font-size: .93rem; line-height: 1.72; }
  .detail-observation-panel .detail-compare-arrow {
    width: 2.7rem;
    height: 2.7rem;
    font-size: 1rem;
    box-shadow: 0 0 1.8rem rgba(54, 178, 230, .48);
  }

  .detail .detail-delta {
    min-height: 12.25rem;
    grid-template-columns: minmax(0, 1fr) 17rem;
    padding: 1.8rem 2rem;
    border-color: rgba(66, 202, 250, .8);
    box-shadow: inset 0 0 4.5rem rgba(23, 131, 187, .14), 0 0 1.9rem rgba(39, 164, 222, .19);
  }
  .detail-delta-copy h2 { font-size: 1.48rem; }
  .detail-delta-copy p { max-width: 52rem; font-size: 1.07rem; line-height: 1.82; }
  .detail-delta-visual { width: 15rem; height: 10rem; opacity: .94; }
  .detail-delta-visual::before { width: 14rem; height: 14rem; }
  .detail-delta-visual::after { width: 10.5rem; height: 10.5rem; }
  .detail-delta-visual i:nth-child(1) { width: 7.1rem; height: 7.1rem; }
  .detail-delta-visual i:nth-child(2) { width: 4.4rem; height: 4.4rem; }
  .detail-delta-visual i:nth-child(3) { width: 1.8rem; height: 1.8rem; }
  .detail-delta-visual b { font-size: 2.2rem; }

  .detail .detail-support { gap: 1.25rem; margin-top: 1.25rem; }
  .detail-support .detail-section { min-height: 14.5rem; padding: 1.65rem 1.75rem 1.8rem; }
  .detail-support .detail-section h2 { font-size: 1.16rem; }
  .detail-support .detail-section p { max-width: 42rem; font-size: .98rem; line-height: 1.8; }
  .detail-support .source-record-label { font-size: .76rem !important; }
  .detail-support .source-list li { min-height: 9.5rem; padding: 1.35rem 1.45rem; }
  .detail-support .source-list strong { font-size: 1.08rem; }
  .detail-support .source-list cite { font-size: .9rem; }
  .detail-support .source-list a { font-size: .9rem; }

  .detail-impact h2 { padding: 1.2rem 1.3rem; font-size: 1.18rem; }
  .detail-impact ul { padding: .45rem 1.25rem; }
  .detail-impact li { grid-template-columns: 2.5rem minmax(0, 1fr); gap: .85rem; padding: 1.35rem 0; }
  .detail-impact li > span { width: 2.5rem; height: 2.5rem; font-size: 1rem; }
  .detail-impact p { font-size: .94rem; line-height: 1.7; }
  .detail .detail-actions { gap: .7rem; }
  .detail .detail-actions a,
  .detail .detail-actions button { min-height: 4.25rem; padding: .9rem 1.15rem; font-size: .9rem; }
}

@media (max-width: 820px) {
  .detail-layout { grid-template-areas: "main" "impact" "related" "nav"; }
  .detail-rail { display: contents; }
  .detail-impact { grid-area: impact; }
  .detail-rail .detail-actions { grid-area: nav; }
}

@media (min-width: 981px) {
  .detail-hero-grid {
    align-items: start;
    padding-top: 3.75rem;
  }
  .detail .detail-header {
    align-self: start;
    margin-top: 1.6rem;
  }
  .detail .detail-meta { margin-bottom: 1.05rem; font-size: .92rem; }
  .detail .detail-meta b { font-size: .82rem; line-height: 1.35; }
  .detail h1 { line-height: 1.17; }
  .detail .detail-lead { margin-top: 1.15rem; font-weight: 500; line-height: 1.66; }
  .detail-tags { margin-top: .9rem; }

  .detail-hero .detail-snapshot {
    align-self: start;
    margin-right: .15rem;
    border-color: rgba(103, 202, 241, .58);
    background: linear-gradient(155deg, rgba(4, 35, 52, .93), rgba(2, 18, 28, .96));
    box-shadow: inset 0 1px rgba(154, 226, 251, .06), 0 0 2.8rem rgba(24, 124, 177, .14);
  }
  .detail-snapshot h2 { min-height: 4.2rem; padding: 1.05rem 1.35rem; font-size: 1.25rem; }
  .detail-snapshot dl > div {
    min-height: 4.85rem;
    padding: 1.08rem 1.35rem;
    border-top-color: rgba(103, 190, 229, .26);
  }
  .detail-snapshot dt { font-size: .85rem; }
  .detail-snapshot dt > span { font-size: 1.05rem; }
  .detail-snapshot dd { font-size: .95rem; }

  .detail-observation-panel .detail-happened { padding: 1.75rem 1.8rem 1.9rem; }
  .detail-observation-panel .detail-happened h2 { font-size: 1.4rem; }
  .detail-observation-panel .detail-happened p { font-size: 1.025rem; line-height: 1.76; }
  .detail-observation-panel .detail-compare > div { min-height: 13.4rem; padding: 1.5rem; }
  .detail-observation-panel .detail-compare h2 { font-size: 1.06rem; }
  .detail-observation-panel .detail-compare p { font-size: .96rem; line-height: 1.74; }
  .detail-observation-panel .detail-compare-arrow {
    width: 2.9rem;
    height: 2.9rem;
    font-size: 1.08rem;
    border-color: rgba(91, 204, 247, .75);
  }

  .detail .detail-delta { min-height: 13rem; grid-template-columns: minmax(0, 1fr) 18rem; padding: 1.95rem 2.1rem; }
  .detail-delta-copy h2 { font-size: 1.55rem; }
  .detail-delta-copy p { font-size: 1.1rem; line-height: 1.8; }
  .detail-delta-visual { width: 16.25rem; height: 10.8rem; }
  .detail-delta-visual::before { width: 15.2rem; height: 15.2rem; }
  .detail-delta-visual::after { width: 11.4rem; height: 11.4rem; }
  .detail-delta-visual i:nth-child(1) { width: 7.7rem; height: 7.7rem; }
  .detail-delta-visual i:nth-child(2) { width: 4.8rem; height: 4.8rem; }

  .detail-support .detail-section { min-height: 15rem; padding: 1.8rem 1.9rem 1.95rem; }
  .detail-support .detail-section h2 { font-size: 1.22rem; }
  .detail-support .detail-section p { font-size: 1rem; line-height: 1.78; }
  .detail-support .source-record-label { font-size: .8rem !important; }
  .detail-support .source-list li { min-height: 9.8rem; padding: 1.45rem 1.55rem; }
  .detail-support .source-list strong { font-size: 1.1rem; }
  .detail-support .source-list cite,
  .detail-support .source-list a { font-size: .92rem; }

  .detail-impact h2 { padding: 1.3rem 1.4rem; font-size: 1.25rem; }
  .detail-impact ul { padding: .5rem 1.35rem; }
  .detail-impact li { grid-template-columns: 2.65rem minmax(0, 1fr); gap: .95rem; padding: 1.5rem 0; }
  .detail-impact li > span { width: 2.65rem; height: 2.65rem; font-size: 1.15rem; }
  .detail-impact p { font-size: .97rem; line-height: 1.72; }
  .detail-rail { gap: .85rem; }
  .detail .detail-actions { gap: .75rem; }
  .detail .detail-actions a,
  .detail .detail-actions button { min-height: 4.4rem; padding: .95rem 1.2rem; font-size: .92rem; }
}

/* No.178 — mobile top-page order, density and touch-target finish. */
@media (max-width: 680px) {
  .site-header { height: 3.5rem; }
  .header-inner {
    width: 100%;
    height: 100%;
    grid-template-columns: minmax(0, 1fr) 3rem;
    padding: 0 .45rem 0 .75rem;
  }
  .wordmark { font-size: 1.3rem; }
  .mobile-menu-button {
    width: 3rem;
    height: 3rem;
    min-width: 3rem;
    min-height: 3rem;
    justify-self: end;
    margin-left: auto;
  }
  .delta-menu-icon { width: 2rem; height: 2rem; }
  .mobile-menu,
  .mobile-menu-backdrop { top: 3.5rem; }
  .mobile-menu a,
  .mobile-menu button { min-height: 2.75rem; }

  #app:has(.today-hero) .today-hero {
    height: auto;
    min-height: 34rem;
  }
  #app:has(.today-hero) .hero-earth-image { object-position: 60% 52%; }
  #app:has(.today-hero) .hero-content {
    min-height: 34rem;
    height: auto;
    padding: 1.45rem .95rem .95rem;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: .9rem;
  }
  #app:has(.today-hero) .hero-heading { width: 100%; }
  #app:has(.today-hero) .hero-heading h1,
  html[lang="ja"] #app:has(.today-hero) .hero-heading h1 {
    max-width: 22rem;
    font-size: clamp(2.35rem, 10.8vw, 2.75rem);
    line-height: 1.08;
  }
  #app:has(.today-hero) .hero-lead {
    max-width: 21rem;
    margin-top: .8rem;
    font-size: .88rem;
    line-height: 1.68;
  }
  #app:has(.today-hero) .hero-map-link {
    min-height: 2.75rem;
    margin-top: .85rem;
    padding: .68rem .85rem;
    font-size: .78rem;
  }
  #app:has(.today-hero) .visit-panel {
    position: static;
    width: 100%;
    min-height: 4.75rem;
    margin: auto 0 0;
    padding: .65rem .75rem;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "visit-label visit-value" "visit-status visit-action";
    place-items: center stretch;
    gap: .25rem .75rem;
    text-align: left;
  }
  #app:has(.today-hero) .visit-panel > span {
    grid-area: visit-label;
    font-size: .62rem;
  }
  #app:has(.today-hero) .visit-panel > strong {
    grid-area: visit-value;
    font-size: 2rem;
    text-align: right;
  }
  #app:has(.today-hero) .visit-panel > b {
    grid-area: visit-status;
    font-size: .73rem;
  }
  #app:has(.today-hero) .visit-panel > a {
    grid-area: visit-action;
    width: auto;
    min-height: 2.75rem;
    margin: 0;
    padding: .65rem .75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .68rem;
    text-align: center;
  }

  #app:has(.today-hero) .dashboard-shell {
    padding: .8rem .75rem 2.5rem;
    gap: .9rem;
  }
  #app:has(.today-hero) .dashboard-primary { order: 1; gap: .9rem; }
  #app:has(.today-hero) .stories-section { order: 2; }
  #app:has(.today-hero) .dashboard-secondary { order: 3; gap: .9rem; }
  #app:has(.today-hero) .panel-heading {
    min-height: 3.25rem;
    padding: .72rem .8rem;
  }
  #app:has(.today-hero) .panel-heading h2 { font-size: 1.125rem; }
  #app:has(.today-hero) .panel-heading > span { font-size: .72rem; }

  #app:has(.today-hero) .map-stage {
    height: 18rem;
    min-height: 18rem;
  }
  #app:has(.today-hero) .hotspot-rail {
    height: auto;
    min-height: 0;
  }
  #app:has(.today-hero) .hotspot-rail > h3 {
    min-height: 3.25rem;
    display: flex;
    align-items: center;
    padding: .8rem 1rem;
    font-size: .9rem;
  }
  #app:has(.today-hero) .hotspot-list { overflow: visible; }
  #app:has(.today-hero) .hotspot-item {
    min-height: 5.25rem;
    padding: .8rem .9rem;
  }
  #app:has(.today-hero) .hotspot-item small { font-size: .875rem; }
  #app:has(.today-hero) .hotspot-item small > span { font-size: .75rem; }
  #app:has(.today-hero) .hotspot-rail .global-toggle { min-height: 3.5rem; }

  #app:has(.today-hero) .convergence-panel { min-height: 0; }
  #app:has(.today-hero) .convergence-radar {
    width: 7.25rem;
    height: 6.3rem;
    margin: .85rem auto .15rem;
  }
  #app:has(.today-hero) .convergence-radar::before { width: 6.25rem; height: 6.25rem; }
  #app:has(.today-hero) .convergence-radar::after { width: 4.2rem; height: 4.2rem; }
  #app:has(.today-hero) .convergence-radar > i:nth-child(3) { height: 6.25rem; }
  #app:has(.today-hero) .convergence-radar > b { width: 6.25rem; }
  #app:has(.today-hero) .convergence-summary { margin: .1rem .8rem .25rem; }
  #app:has(.today-hero) .convergence-panel h3 {
    margin: .5rem 1rem .75rem;
    font-size: 1.25rem;
    line-height: 1.42;
  }
  #app:has(.today-hero) .convergence-panel ul {
    width: auto;
    margin: 0;
    padding: .15rem 1rem .75rem;
  }
  #app:has(.today-hero) .convergence-panel li {
    min-height: 3.25rem;
    padding: .72rem 0;
    font-size: .875rem;
  }

  #app:has(.today-hero) .stories-section {
    margin: .1rem 0 0;
    padding-top: .9rem;
  }
  #app:has(.today-hero) .stories-section .section-heading {
    min-height: 2.75rem;
    margin-bottom: .75rem;
  }
  #app:has(.today-hero) .stories-section .section-heading h2 { font-size: 1.3rem; }
  #app:has(.today-hero) .stories-section .section-heading > a {
    min-height: 2.75rem;
    display: inline-flex;
    align-items: center;
    font-size: .72rem;
  }
  #app:has(.today-hero) .card-grid { gap: .9rem; }
  #app:has(.today-hero) .change-card { min-height: 0; }
  #app:has(.today-hero) .change-card .card-image { aspect-ratio: 16 / 10; }
  #app:has(.today-hero) .change-card .short { padding-bottom: .5rem; font-size: .875rem; }
  #app:has(.today-hero) .card-date { margin-top: .35rem; font-size: .75rem; }

  #app:has(.today-hero) .connection-track {
    min-height: 0;
    gap: .875rem;
    padding: .875rem;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: .875rem;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
  }
  #app:has(.today-hero) .connection-card,
  #app:has(.today-hero) .connection-summary {
    flex: 0 0 min(84vw, 20rem);
    scroll-snap-align: start;
  }
  #app:has(.today-hero) .connection-card {
    min-height: 19rem;
    grid-template-rows: auto 10.5rem 1fr;
    padding: .75rem;
  }
  #app:has(.today-hero) .connection-card-meta {
    min-height: 2.75rem;
    align-items: center;
    flex-direction: row;
  }
  #app:has(.today-hero) .connection-card b { font-size: .95rem; }
  #app:has(.today-hero) .connection-card time { font-size: .75rem; }
  #app:has(.today-hero) .connection-arrow {
    flex: 0 0 2rem;
    width: 2rem;
    font-size: 1.5rem;
  }
  #app:has(.today-hero) .connection-summary {
    min-height: 19rem;
    padding: 1.1rem;
  }
  #app:has(.today-hero) .connection-summary span { font-size: .76rem; }
  #app:has(.today-hero) .connection-summary p {
    font-size: .9rem;
    line-height: 1.65;
  }

  #app:has(.today-hero) .last-seven-panel { min-height: 0; }
  #app:has(.today-hero) .last-seven-panel > p { font-size: .82rem; }
  #app:has(.today-hero) .category-stat > span,
  #app:has(.today-hero) .category-stat > strong { font-size: .875rem; }
  #app:has(.today-hero) .panel-link {
    min-height: 2.75rem;
    display: flex;
    align-items: center;
  }

  #app:has(.today-hero) .time-machine-body {
    grid-template-columns: 4.75rem minmax(0, 1fr);
    grid-template-areas: "play main" "selected selected";
    gap: .75rem;
    padding: .85rem;
  }
  #app:has(.today-hero) .time-play {
    width: 4.75rem;
    height: 4.75rem;
  }
  #app:has(.today-hero) .time-play:disabled {
    border-color: rgba(100, 145, 168, .38);
    background: rgba(4, 20, 31, .72);
    box-shadow: none;
    color: #7795a4;
    opacity: .68;
    cursor: not-allowed;
  }
  #app:has(.today-hero) .time-machine-main {
    grid-template-rows: auto minmax(7.5rem, 1fr);
  }
  #app:has(.today-hero) .time-map-visual { min-height: 7.5rem; }
  #app:has(.today-hero) .time-selected {
    min-height: 7.5rem;
    padding: .9rem 0 0;
    gap: .45rem;
  }
  #app:has(.today-hero) .time-selected time { font-size: 1rem; }
  #app:has(.today-hero) .time-selected > span,
  #app:has(.today-hero) .time-selected small { font-size: .78rem; }
  #app:has(.today-hero) .time-selected strong { font-size: 1.08rem; }
}


/* No.270 — WEB-only navigation/list/archive/ranking usability pass. */
.convergence-summary { display: flex; justify-content: center; gap: .45rem; }
.convergence-summary a { color: inherit; text-decoration: none; }
.convergence-summary a:hover span,
.convergence-summary a:focus-visible span { border-color: rgba(255, 120, 125, .7); color: #ffd6d8; }
.convergence-row { width: 100%; min-height: 3rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; color: inherit; text-decoration: none; }
.convergence-row:hover,
.convergence-row:focus-visible { color: #fff; outline: 0; }
.convergence-row > span { display: flex; align-items: center; gap: .75rem; }
.convergence-row > span > i { width: 1.6rem; height: 1.6rem; border: 1px solid rgba(255, 105, 111, .48); border-radius: 50%; background: radial-gradient(circle, rgba(255, 91, 97, .34) 0 20%, transparent 23%), linear-gradient(45deg, transparent 47%, rgba(255, 116, 121, .5) 48% 52%, transparent 53%); box-shadow: 0 0 .8rem rgba(226, 48, 56, .12); }

.category-stat { text-decoration: none; border-radius: .3rem; transition: background .15s ease, box-shadow .15s ease; }
.category-stat:hover,
.category-stat:focus-visible { outline: 0; background: color-mix(in srgb, var(--stat) 8%, transparent); box-shadow: 0 0 0 1px color-mix(in srgb, var(--stat) 30%, transparent); }
.last-seven-summary > a { min-height: 5.5rem; display: grid; align-content: center; gap: .35rem; padding: .8rem; border: 1px solid rgba(91, 170, 212, .22); background: linear-gradient(145deg, rgba(14, 48, 66, .3), rgba(3, 18, 28, .55)); color: inherit; text-decoration: none; }
.last-seven-summary > a:hover,
.last-seven-summary > a:focus-visible { outline: 0; border-color: rgba(105, 203, 246, .58); background: linear-gradient(145deg, rgba(17, 67, 91, .42), rgba(3, 22, 34, .68)); }

.dashboard-secondary { grid-template-areas: "connection stats" "today stats" "timeline ."; }
.today-dashboard { grid-area: today; min-width: 0; }
.today-dashboard-lead { margin: .8rem 1rem .15rem; color: #8fa4b1; font-size: .78rem; }
.today-track { display: flex; gap: .9rem; overflow-x: auto; overflow-y: hidden; padding: .8rem 1rem 1rem; scroll-snap-type: x proximity; scroll-padding-inline: 1rem; overscroll-behavior-inline: contain; scrollbar-width: thin; scrollbar-color: rgba(91, 188, 232, .55) rgba(5, 22, 34, .7); -webkit-overflow-scrolling: touch; }
.today-track .change-card { flex: 0 0 clamp(17rem, 28vw, 23rem); min-height: 23rem; scroll-snap-align: start; }
.today-track .change-card .card-image { aspect-ratio: 16 / 9; }

.time-machine-body { grid-template-columns: minmax(0, 1fr) 15rem; }
.time-selected { color: inherit; text-decoration: none; transition: background .15s ease, border-color .15s ease; }
.time-selected:hover,
.time-selected:focus-visible { outline: 0; border-color: rgba(100, 196, 239, .52); background: rgba(18, 58, 78, .16); }

.delta-aux-page { width: min(calc(100% - 3rem), 94rem); margin: 0 auto; padding: clamp(2rem, 4vw, 4rem) 0 5rem; }
.delta-aux-hero { position: relative; min-height: 17rem; display: grid; align-content: center; gap: .7rem; padding: clamp(1.5rem, 3vw, 2.4rem); overflow: hidden; border: 1px solid rgba(102, 187, 230, .4); background: radial-gradient(circle at 85% 20%, rgba(45, 154, 207, .16), transparent 25rem), linear-gradient(145deg, rgba(5, 25, 39, .98), rgba(2, 12, 20, .99)); box-shadow: inset 0 1px rgba(177, 226, 249, .04), 0 1rem 2.4rem rgba(0, 0, 0, .18); }
.delta-aux-hero > span { color: #78d5f4; font-size: .75rem; font-weight: 800; letter-spacing: .16em; }
.delta-aux-hero h1 { max-width: 58rem; margin: 0; color: #f1eee6; font: 300 clamp(2.45rem, 5vw, 4.8rem)/1.1 var(--display-font); }
.delta-aux-hero p { max-width: 50rem; margin: 0; color: #b8c8d0; font-size: .95rem; line-height: 1.75; }
.delta-aux-hero > b { position: absolute; right: 2rem; bottom: 1.6rem; color: #bfeeff; font: 300 clamp(2rem, 4vw, 4rem)/1 var(--display-font); }
.delta-aux-links { display: flex; gap: .65rem; margin-top: .4rem; }
.delta-aux-links :is(a, button) { min-height: 2.7rem; display: inline-flex; align-items: center; padding: .6rem .85rem; border: 1px solid rgba(95, 181, 224, .35); background: transparent; color: #aee6ff; font: inherit; font-size: .78rem; text-decoration: none; cursor: pointer; }
.delta-aux-links :is(a, button):hover,
.delta-aux-links :is(a, button):focus-visible { outline: 0; border-color: #78d5f4; }

.delta-calendar-panel { margin-top: 1rem; padding: 1.1rem; border: 1px solid rgba(103, 184, 226, .38); background: linear-gradient(150deg, rgba(5, 24, 37, .98), rgba(1, 11, 19, .985)); }
.delta-calendar-panel > header { min-height: 3.5rem; display: grid; grid-template-columns: 3rem 1fr 3rem; align-items: center; gap: .8rem; }
.delta-calendar-panel > header h2 { margin: 0; color: #e9edf0; font: 300 1.4rem/1.2 var(--display-font); text-align: center; }
.delta-calendar-panel > header a { width: 3rem; height: 3rem; display: grid; place-items: center; border: 1px solid rgba(96, 178, 219, .35); color: #a9dff9; text-decoration: none; }
.delta-calendar-panel > header a:hover,
.delta-calendar-panel > header a:focus-visible { outline: 0; border-color: #78d5f4; color: #fff; }
.delta-calendar-weekdays,
.delta-calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: .45rem; }
.delta-calendar-weekdays { padding: .75rem 0 .45rem; }
.delta-calendar-weekdays span { color: #7894a3; font-size: .66rem; font-weight: 800; text-align: center; }
.delta-calendar-blank { min-height: 5.7rem; }
.delta-calendar-day { min-height: 5.7rem; display: grid; align-content: space-between; gap: .25rem; padding: .65rem; border: 1px solid rgba(77, 132, 159, .25); background: rgba(3, 15, 24, .75); color: #778c98; text-decoration: none; }
.delta-calendar-day > span { font: 300 1.05rem/1 var(--display-font); }
.delta-calendar-day b { justify-self: end; color: #83dfff; font-size: .75rem; }
.delta-calendar-day small { color: #7ea7b8; font-size: .57rem; line-height: 1.35; }
.delta-calendar-day.has-articles { border-color: rgba(69, 169, 215, .45); background: radial-gradient(circle at 82% 18%, rgba(67, 186, 234, .12), transparent 3rem), rgba(4, 22, 34, .9); color: #d5e9f1; }
.delta-calendar-day.has-articles:hover,
.delta-calendar-day.has-articles:focus-visible { outline: 0; border-color: #74d9ff; background: rgba(8, 41, 59, .92); }
.delta-calendar-day.is-selected { border-color: #d6aa5d; box-shadow: inset 0 0 0 1px rgba(214, 170, 93, .2), 0 0 1.4rem rgba(214, 170, 93, .08); }

.delta-archive-results { margin-top: 1rem; border: 1px solid rgba(103, 184, 226, .35); background: rgba(3, 16, 25, .92); }
.delta-archive-results > header { min-height: 5rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem 1.25rem; border-bottom: 1px solid rgba(97, 171, 208, .25); }
.delta-archive-results > header small { color: #6fc9ee; font-size: .65rem; font-weight: 800; letter-spacing: .12em; }
.delta-archive-results > header h2 { margin: .25rem 0 0; color: #e9edf0; font: 300 1.35rem/1.35 var(--display-font); }
.delta-archive-results > header > strong { color: #bfeaff; font: 300 2rem/1 var(--display-font); }
.delta-list { display: grid; }
.delta-list-row { position: relative; min-height: 10.5rem; display: grid; grid-template-columns: 10rem minmax(0, 1fr); gap: 1.25rem; align-items: stretch; padding: 1.05rem 1.2rem; border-bottom: 1px solid rgba(86, 133, 157, .22); color: inherit; text-decoration: none; transition: background .15s ease, box-shadow .15s ease; }
.delta-list-row:last-child { border-bottom: 0; }
.delta-list-row:hover,
.delta-list-row:focus-visible { outline: 0; background: rgba(74, 181, 226, .045); box-shadow: inset 3px 0 #66cfee; }
.delta-list-row.is-top-three { background: linear-gradient(90deg, rgba(63, 169, 211, .08), transparent 42%); }
.delta-list-thumb { min-height: 8.2rem; overflow: hidden; border: 1px solid rgba(90, 157, 188, .3); background: #071621; }
.delta-list-thumb img { width: 100%; height: 100%; display: block; object-fit: cover; }
.delta-list-copy { min-width: 0; align-self: center; }
.delta-list-copy > small { color: #7e9aa8; font-size: .68rem; letter-spacing: .06em; }
.delta-list-copy h2 { margin: .4rem 0 .45rem; color: #edf1f2; font: 300 clamp(1.1rem, 2vw, 1.45rem)/1.42 var(--display-font); }
.delta-list-copy > p { display: -webkit-box; overflow: hidden; margin: 0; color: #aebdc5; font-size: .82rem; line-height: 1.65; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.delta-list-chips { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .7rem; }
.delta-list-chips span,
.delta-list-chips b { padding: .25rem .48rem; border: 1px solid rgba(85, 158, 194, .3); border-radius: 2rem; color: #9bcfe5; font-size: .62rem; font-weight: 700; }
.delta-empty { min-height: 14rem; display: grid; place-items: center; align-content: center; gap: .7rem; padding: 2rem; border: 1px solid rgba(103, 184, 226, .32); background: rgba(3, 16, 25, .9); text-align: center; }
.delta-empty strong { color: #7ed8f5; font: 300 3.5rem/1 var(--display-font); }
.delta-empty p { margin: 0; color: #9fb2bc; }
.delta-empty.is-error { border-color: rgba(231, 81, 88, .45); }
.delta-empty.is-error strong { color: #ff8589; }

.delta-ranking-controls { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-top: 1rem; padding: 1rem 1.1rem; border: 1px solid rgba(103, 184, 226, .35); background: rgba(3, 16, 25, .92); }
.delta-ranking-controls p { max-width: 48rem; margin: 0; color: #8fa4b1; font-size: .75rem; line-height: 1.65; }
.delta-ranking-tabs { display: inline-flex; gap: .5rem; }
.delta-ranking-tab { min-height: 2.7rem; padding: 0 .85rem; border: 1px solid rgba(98, 159, 188, .38); background: #06131d; color: #aabac2; font: 700 .7rem/1 var(--body-font); letter-spacing: .05em; cursor: pointer; }
.delta-ranking-tab:hover,
.delta-ranking-tab:focus-visible,
.delta-ranking-tab.is-active { outline: 0; border-color: #78d5f4; color: #bfeeff; background: rgba(30, 102, 134, .18); }
.delta-ranking-results { min-height: 14rem; margin-top: 1rem; }
.delta-ranking-state { min-height: 14rem; display: grid; place-items: center; align-content: center; gap: .75rem; border: 1px solid rgba(103, 184, 226, .32); background: rgba(3, 16, 25, .9); }
.delta-ranking-state > span { width: .75rem; height: .75rem; border-radius: 50%; background: #6bd5f8; box-shadow: 0 0 0 0 rgba(107, 213, 248, .4); animation: delta-ranking-pulse 1.2s ease-out infinite; }
.delta-ranking-state p { margin: 0; color: #9fb2bc; }
@keyframes delta-ranking-pulse { 70% { box-shadow: 0 0 0 1rem transparent; } 100% { box-shadow: 0 0 0 0 transparent; } }
.delta-ranking-list .delta-list-row { grid-template-columns: 5rem 10rem minmax(0, 1fr) 7rem; min-height: 11rem; }
.delta-list-rank { display: grid; align-content: center; justify-items: center; border-right: 1px solid rgba(87, 136, 160, .25); color: #708b99; }
.delta-list-rank span { font-size: .65rem; font-weight: 800; }
.delta-list-rank strong { color: #72d8f8; font: 300 2.35rem/.9 var(--display-font); }
.delta-list-views { align-self: center; display: grid; justify-items: end; gap: .2rem; }
.delta-list-views strong { color: #edf3f5; font: 300 2.7rem/.9 var(--display-font); }
.delta-list-views span { color: #78929f; font-size: .62rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.delta-list-views em { margin-top: .6rem; color: #79d7f7; font-style: normal; font-size: 1.2rem; }

@media (max-width: 820px) {
  .dashboard-secondary { grid-template-areas: none; }
  .today-dashboard { grid-area: auto; }
  .today-track .change-card { flex-basis: min(78vw, 20rem); }
  .time-machine-body { grid-template-columns: 1fr; }
  .time-selected { border-top: 1px solid var(--line); border-left: 0; padding: .8rem 0 0; }
  .delta-ranking-controls { align-items: stretch; flex-direction: column; }
  .delta-ranking-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .delta-ranking-tab { padding-inline: .4rem; }
  .delta-ranking-list .delta-list-row { grid-template-columns: 3.5rem 7rem minmax(0, 1fr); }
  .delta-ranking-list .delta-list-views { grid-column: 2 / -1; display: flex; justify-content: flex-end; align-items: baseline; gap: .45rem; padding-top: .65rem; border-top: 1px solid rgba(86, 133, 157, .22); }
}

@media (max-width: 680px) {
  #app:has(.today-hero) .time-machine-body { grid-template-columns: 1fr; grid-template-areas: none; gap: .7rem; padding: .85rem; }
  #app:has(.today-hero) .time-machine-main { grid-area: auto; }
  #app:has(.today-hero) .time-selected { grid-area: auto; min-height: 5.6rem; padding: .75rem 0 0; }
  .today-dashboard-lead { font-size: .76rem; }
  .today-track { padding: .75rem; scroll-padding-inline: .75rem; }
  .today-track .change-card { flex-basis: min(84vw, 19rem); }
  .delta-aux-page { width: calc(100% - 1.5rem); padding-top: 1rem; }
  .delta-aux-hero { min-height: 15rem; padding: 1.15rem; }
  .delta-aux-hero h1 { padding-right: 0; font-size: clamp(2rem, 10vw, 2.85rem); }
  .delta-aux-hero p { padding-right: 0; font-size: .84rem; }
  .delta-aux-hero > b { position: static; margin-top: .4rem; font-size: 2rem; }
  .delta-calendar-panel { padding: .7rem; }
  .delta-calendar-panel > header { grid-template-columns: 2.75rem 1fr 2.75rem; }
  .delta-calendar-panel > header a { width: 2.75rem; height: 2.75rem; }
  .delta-calendar-panel > header h2 { font-size: 1.1rem; }
  .delta-calendar-weekdays,
  .delta-calendar-grid { gap: .25rem; }
  .delta-calendar-day,
  .delta-calendar-blank { min-height: 4.4rem; }
  .delta-calendar-day { padding: .45rem; }
  .delta-calendar-day small { display: none; }
  .delta-archive-results > header { min-height: 4.5rem; padding: .85rem; }
  .delta-archive-results > header h2 { font-size: 1.1rem; }
  .delta-list-row { grid-template-columns: 6.5rem minmax(0, 1fr); gap: .75rem; min-height: 8rem; padding: .8rem; }
  .delta-list-thumb { min-height: 6.2rem; }
  .delta-list-copy > small { font-size: .59rem; }
  .delta-list-copy h2 { margin-top: .3rem; font-size: 1rem; }
  .delta-list-copy > p { font-size: .74rem; -webkit-line-clamp: 2; }
  .delta-list-chips { display: none; }
  .delta-ranking-controls { padding: .8rem; }
  .delta-ranking-controls p { font-size: .7rem; }
  .delta-ranking-tab { min-height: 2.6rem; font-size: .62rem; }
  .delta-ranking-list .delta-list-row { grid-template-columns: 2.8rem 5.5rem minmax(0, 1fr); gap: .55rem; }
  .delta-list-rank strong { font-size: 1.6rem; }
  .delta-ranking-list .delta-list-thumb { min-height: 5.5rem; }
  .delta-list-views strong { font-size: 1.7rem; }
}

/* No.271: Delta category index and category browsing */
.delta-category-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; }
.delta-category-card { min-height: 15rem; display: grid; grid-template-columns: 4.6rem minmax(0, 1fr) auto; grid-template-rows: 1fr auto; gap: 1rem; align-items: start; padding: 1.35rem; border: 1px solid rgba(93, 175, 216, .34); background: radial-gradient(circle at 12% 12%, rgba(51, 156, 207, .12), transparent 50%), linear-gradient(145deg, rgba(5, 25, 39, .98), rgba(2, 12, 20, .99)); color: inherit; text-decoration: none; transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.delta-category-card:hover, .delta-category-card:focus-visible { outline: 0; transform: translateY(-2px); border-color: #78d5f4; box-shadow: 0 1rem 2.4rem rgba(0,0,0,.22), inset 0 0 0 1px rgba(120,213,244,.08); }
.delta-category-card > img { width: 4.2rem; height: 4.2rem; object-fit: contain; filter: drop-shadow(0 .6rem 1rem rgba(0,0,0,.45)); }
.delta-category-card > div { min-width: 0; }
.delta-category-card small { color: #65c8ef; font: 800 .65rem/1 var(--body-font); letter-spacing: .12em; }
.delta-category-card h2 { margin: .35rem 0 .65rem; color: #f1eee6; font: 500 clamp(1.35rem, 2.2vw, 2rem)/1.15 var(--display-font); }
.delta-category-card p { margin: 0; color: #9eb1bb; font-size: .78rem; line-height: 1.7; }
.delta-category-card > strong { color: #bfeeff; font: 300 2.8rem/1 var(--display-font); }
.delta-category-card > span { grid-column: 2 / -1; justify-self: end; align-self: end; color: #78d5f4; font-size: 1.3rem; }
@media (max-width: 900px) { .delta-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .delta-category-grid { grid-template-columns: 1fr; gap: .75rem; } .delta-category-card { min-height: 0; grid-template-columns: 3.5rem minmax(0, 1fr) auto; padding: 1rem; } .delta-category-card > img { width: 3.2rem; height: 3.2rem; } .delta-category-card > strong { font-size: 2.2rem; } }


/* No.275: convergence visual + category icon polish. */
.convergence-visual {
  position: relative;
  overflow: hidden;
  width: calc(100% - 2.4rem);
  height: 10.6rem;
  margin: 1rem 1.2rem .45rem;
  border: 1px solid rgba(255, 93, 99, .34);
  border-radius: .35rem;
  background: #12070a;
  box-shadow: inset 0 0 2rem rgba(255, 43, 52, .16), 0 0 1.4rem rgba(215, 36, 45, .1);
}
.convergence-visual img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  filter: saturate(.9) contrast(1.08) brightness(.78);
}
.convergence-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(20, 2, 8, .06), rgba(24, 3, 8, .28)), radial-gradient(circle at 50% 54%, transparent 0 30%, rgba(19, 2, 8, .25) 76%, rgba(13, 2, 7, .5) 100%);
}
.convergence-visual-glow {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: rgba(255, 107, 91, .8);
  box-shadow: 0 0 1.1rem .35rem rgba(255, 75, 67, .48);
  transform: translate(-50%, -50%);
  pointer-events: none;
}
.convergence-panel .convergence-radar { display: none; }
.convergence-category-icon {
  flex: 0 0 auto;
  width: 1.8rem;
  height: 1.8rem;
  object-fit: contain;
  border-radius: 50%;
  filter: saturate(.95) brightness(.96);
  box-shadow: 0 0 .7rem rgba(255, 78, 83, .15);
}
.convergence-category-icon-fallback {
  flex: 0 0 auto;
  width: 1.55rem;
  height: 1.55rem;
  border: 1px solid rgba(255, 105, 111, .48);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 91, 97, .34) 0 20%, transparent 23%), linear-gradient(45deg, transparent 47%, rgba(255, 116, 121, .5) 48% 52%, transparent 53%);
}
.convergence-panel li > span > i { width: auto; height: auto; border: 0; background: none; box-shadow: none; }
@media (max-width: 760px) {
  .convergence-visual { height: 8.2rem; margin: .8rem 1rem .35rem; width: calc(100% - 2rem); }
  .convergence-category-icon { width: 1.55rem; height: 1.55rem; }
}


/* No.276 — time machine horizontal timeline and image-free summary */
.time-machine-body { grid-template-columns: minmax(0, 1fr) 15rem; align-items: stretch; }
.time-machine-main { min-width: 0; display: grid; grid-template-rows: auto auto; gap: .8rem; }
.timeline-scroll { overflow-x: auto; overflow-y: hidden; overscroll-behavior-inline: contain; scrollbar-width: thin; scrollbar-color: rgba(91, 188, 232, .55) rgba(5, 22, 34, .7); -webkit-overflow-scrolling: touch; }
.timeline-scroll .timeline-track { width: max-content; min-width: 100%; justify-content: flex-start; gap: .45rem; padding-inline: .75rem; scroll-snap-type: x proximity; scroll-padding-inline: .75rem; }
.time-machine-main .timeline-track::before { left: .95rem; right: .95rem; }
.timeline-scroll .timeline-day { flex: 0 0 6rem; min-width: 6rem; scroll-snap-align: start; }
.time-machine-glance { min-height: 7.4rem; display: grid; align-content: start; gap: .7rem; padding: .9rem 1rem; border: 1px solid rgba(96, 178, 219, .24); border-radius: .35rem; background: linear-gradient(155deg, rgba(5, 20, 31, .96), rgba(3, 13, 22, .92)); }
.time-machine-glance > header { display: flex; justify-content: space-between; align-items: baseline; gap: .7rem; }
.time-machine-glance > header strong { color: #def4ff; font-size: .94rem; font-weight: 500; }
.time-machine-glance > header span { color: #7fcff0; font-size: .72rem; font-weight: 700; letter-spacing: .04em; }
.time-machine-chip-row { display: flex; flex-wrap: wrap; gap: .45rem; }
.time-machine-chip { display: inline-flex; align-items: center; gap: .4rem; padding: .28rem .55rem; border: 1px solid rgba(82, 156, 192, .28); border-radius: 999px; color: #9fcfe2; font-size: .64rem; font-weight: 700; }
.time-machine-chip b { color: #eaf7ff; font-size: .7rem; }
.time-machine-story-list { display: grid; gap: .45rem; }
.time-machine-story { min-height: 2.8rem; display: grid; align-content: center; gap: .16rem; padding: .52rem .65rem; border: 1px solid rgba(74, 126, 151, .22); background: rgba(7, 24, 34, .64); color: inherit; text-decoration: none; transition: border-color .15s ease, background .15s ease, transform .15s ease; }
.time-machine-story:hover,
.time-machine-story:focus-visible { outline: 0; border-color: rgba(111, 210, 248, .44); background: rgba(13, 41, 58, .75); transform: translateY(-1px); }
.time-machine-story > span { color: #7ad1ef; font-size: .62rem; font-weight: 800; letter-spacing: .06em; }
.time-machine-story > b { color: #dce7ed; font-size: 1rem; font-weight: 500; line-height: 1.55; }
@media (max-width: 820px) {
  .time-machine-body { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  .timeline-scroll .timeline-day { flex-basis: 5.6rem; min-width: 5.6rem; }
  .time-machine-main { gap: .65rem; }
  .time-machine-glance { padding: .8rem .85rem; }
}


/* No.277 — mobile dashboard reading order */
@media (max-width: 820px) {
  #app:has(.today-hero) .dashboard-shell {
    display: flex;
    flex-direction: column;
  }
  #app:has(.today-hero) .dashboard-primary,
  #app:has(.today-hero) .dashboard-secondary {
    display: contents;
  }
  #app:has(.today-hero) .pulse-dashboard { order: 1; }
  #app:has(.today-hero) .connection-dashboard { order: 2; }
  #app:has(.today-hero) .today-dashboard { order: 3; }
  #app:has(.today-hero) .stories-section { order: 4; margin-top: 0; }
  #app:has(.today-hero) .time-machine-panel { order: 5; }
  #app:has(.today-hero) .convergence-panel { order: 6; }
  #app:has(.today-hero) .last-seven-panel { order: 7; }
}


/* No.278 — time machine hover/focus preview */
.timeline-day.is-preview { color: #e7f8ff; }
.timeline-day.is-preview i { width: .9rem; height: .9rem; border: 2px solid #b4ecff; background: #246f9b; box-shadow: 0 0 1rem rgba(92, 202, 255, .72); }
.time-machine-glance { transition: border-color .12s ease, background .12s ease; }
.timeline-scroll:has(.timeline-day.is-preview) + .time-machine-glance { border-color: rgba(106, 208, 248, .42); background: linear-gradient(155deg, rgba(7, 28, 42, .98), rgba(3, 15, 25, .94)); }


/* No.279 — locked time-machine day selection and scrollable day article list */
.time-machine-story-list {
  max-height: 10.6rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: .3rem;
  scrollbar-width: thin;
  scrollbar-color: rgba(91, 188, 232, .55) rgba(5, 22, 34, .7);
}
.timeline-day { cursor: pointer; }
.timeline-day.is-current { color: #dff6ff; }
.timeline-day.is-current i { box-shadow: 0 0 1.15rem rgba(83, 190, 248, .85); }
@media (max-width: 680px) {
  .time-machine-story-list { max-height: 12rem; }
}


/* No.286 / No.412 — preserve the upper pair; let lower desktop panels span the shell. */
@media (min-width: 821px) {
  .dashboard-shell {
    grid-template-columns: minmax(0, 3fr) minmax(20rem, 1fr);
    align-items: start;
  }
  .dashboard-primary,
  .dashboard-secondary {
    display: contents;
  }
  .dashboard-primary > *,
  .dashboard-secondary > * { grid-area: auto; }
  .pulse-dashboard { grid-column: 1; grid-row: 1; }
  .last-seven-panel { grid-column: 2; grid-row: 1; }
  .connection-dashboard,
  .today-dashboard,
  .time-machine-panel,
  .stories-section { grid-column: 1 / -1; }
}

:root {
  --muted: #a9bac5;
  --dim: #91a6b3;
}

.panel-heading > span,
.hotspot-item small,
.last-seven-panel > p,
.today-dashboard-lead,
.connection-card time,
.timeline-day,
.time-selected > span,
.time-selected small,
.card-date {
  color: #a9bbc6;
}

.connection-summary p,
.change-card .short,
.panel-empty,
.category-stat > strong,
.last-seven-summary span,
.last-seven-summary small {
  color: #c2cdd2;
}

.hotspot-item small > span,
.time-machine-chip,
.time-machine-story > span {
  color: #a7d9ea;
}

.category-stat > span {
  color: #d1dade;
}


/* No.287 — keep mobile connection media and time-machine stories in normal flow. */
@media (max-width: 680px) {
  #app:has(.today-hero) .connection-track {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    overflow: visible;
    scroll-snap-type: none;
  }

  #app:has(.today-hero) .connection-card,
  #app:has(.today-hero) .connection-summary {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 0;
    scroll-snap-align: none;
  }

  #app:has(.today-hero) .connection-card {
    grid-template-rows: auto auto auto;
  }

  #app:has(.today-hero) .connection-card .responsive-thumbnail {
    display: block;
    width: 100%;
    max-width: 100%;
  }

  #app:has(.today-hero) .connection-card img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
  }

  #app:has(.today-hero) .connection-card b {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  #app:has(.today-hero) .connection-arrow {
    width: auto;
    justify-self: center;
  }

  #app:has(.today-hero) .time-machine-glance {
    min-height: 0;
  }

  #app:has(.today-hero) .time-machine-story-list {
    max-height: none;
    overflow: visible;
    padding-right: 0;
  }

  #app:has(.today-hero) .time-machine-story {
    min-width: 0;
    min-height: 0;
    height: auto;
    align-content: start;
    overflow: visible;
  }

  #app:has(.today-hero) .time-machine-story > span,
  #app:has(.today-hero) .time-machine-story > b {
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
  }
}


/* No.288 — mobile connection carousel and full-width desktop detail copy. */
@media (max-width: 680px) {
  #app:has(.today-hero) .connection-track {
    display: flex;
    align-items: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: .875rem;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
  }

  #app:has(.today-hero) .connection-card,
  #app:has(.today-hero) .connection-summary {
    width: auto;
    flex: 0 0 min(84vw, 20rem);
    scroll-snap-align: start;
  }

  #app:has(.today-hero) .connection-arrow {
    flex: 0 0 2rem;
  }
}

@media (min-width: 981px) {
  .detail h1,
  .detail .detail-lead {
    width: 100%;
    max-width: none;
  }
}


/* No.290 — detail X share action and mobile hero flow. */
.detail-hero-tools {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .75rem;
  margin-bottom: 1rem;
}

.detail .detail-hero-tools .detail-meta {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
}

.detail-x-share {
  flex: 0 0 auto;
  min-height: 2.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  padding: .45rem .72rem;
  border: 1px solid rgba(103, 202, 241, .48);
  border-radius: .3rem;
  background: rgba(3, 22, 33, .84);
  color: #d9f3ff;
  font: 700 .72rem/1.2 var(--body-font);
  letter-spacing: .035em;
  text-decoration: none;
  box-shadow: inset 0 1px rgba(164, 228, 251, .06), 0 .35rem 1rem rgba(0, 0, 0, .2);
  transition: border-color .16s ease, background .16s ease, color .16s ease, box-shadow .16s ease;
}

.detail-x-share > b {
  color: #7bdcff;
  font-size: .82rem;
}

.detail-x-share:hover,
.detail-x-share:focus-visible {
  outline: 0;
  border-color: #75ddff;
  background: rgba(8, 43, 61, .94);
  color: #fff;
  box-shadow: 0 0 0 2px rgba(74, 190, 235, .18), 0 .45rem 1.2rem rgba(0, 0, 0, .28);
}

@media (max-width: 820px) {
  .detail-hero .detail-back {
    position: relative;
    top: auto;
    left: auto;
    display: inline-flex;
    margin: 1rem 1rem 0;
  }

  .detail-hero-grid {
    padding: .85rem 1rem 1rem;
  }

  .detail-hero-tools {
    flex-wrap: wrap;
    gap: .55rem;
  }

  .detail .detail-hero-tools .detail-meta {
    flex-basis: 13rem;
  }
}

@media (max-width: 680px) {
  .detail-hero .detail-back {
    margin: .75rem .75rem 0;
  }

  .detail-hero-grid {
    padding: .7rem .75rem .75rem;
  }

  .detail-x-share {
    min-height: 2.1rem;
    padding: .42rem .65rem;
    font-size: .68rem;
  }
}


/* 2026-08-30: single-column Time Machine after removing redundant selected-day side panel. */
.time-machine-body,
#app:has(.today-hero) .time-machine-body {
  grid-template-columns: minmax(0, 1fr) !important;
}


/* 2026-08-30: on mobile, Featured stories uses the same horizontal
   swipe pattern as TODAY instead of a single-column vertical stack. */
@media (max-width: 820px) {
  #app:has(.today-hero) .stories-section .card-grid {
    display: flex;
    grid-template-columns: none;
    gap: .9rem;
    width: 100%;
    max-width: none;
    overflow-x: auto;
    overflow-y: hidden;
    padding: .75rem;
    scroll-snap-type: x proximity;
    scroll-padding-inline: .75rem;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(91, 188, 232, .55) rgba(5, 22, 34, .7);
    -webkit-overflow-scrolling: touch;
  }

  #app:has(.today-hero) .stories-section .card-grid > .change-card,
  #app:has(.today-hero) .stories-section .card-grid[data-count] > .change-card:nth-child(n) {
    flex: 0 0 min(78vw, 20rem);
    width: auto;
    min-width: 0;
    grid-column: auto;
    scroll-snap-align: start;
  }
}

@media (max-width: 680px) {
  #app:has(.today-hero) .stories-section .card-grid {
    padding: .75rem;
    scroll-padding-inline: .75rem;
  }

  #app:has(.today-hero) .stories-section .card-grid > .change-card,
  #app:has(.today-hero) .stories-section .card-grid[data-count] > .change-card:nth-child(n) {
    flex-basis: min(84vw, 19rem);
  }
}

/* No.406 — public search/all-changes UI and final mobile single-column reading flow. */
.desktop-nav button {
  position: relative;
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: 0 clamp(.45rem, .7vw, .8rem);
  border: 0;
  background: transparent;
  color: #b9c2c9;
  font: 400 .9rem/1 var(--body-font);
  letter-spacing: .04em;
  white-space: nowrap;
  cursor: pointer;
}
.desktop-nav button > span:first-child { color: #68cdf4; font-size: 1.35rem; line-height: 1; }
.desktop-nav button::after { content: ""; position: absolute; right: .6rem; bottom: .48rem; left: .6rem; height: 2px; background: transparent; }
.desktop-nav button:hover,
.desktop-nav button:focus-visible { outline: 0; color: var(--ink); }
.desktop-nav button:hover::after,
.desktop-nav button:focus-visible::after { background: var(--gold); box-shadow: 0 0 .55rem rgba(216, 168, 85, .4); }

body.delta-search-open { overflow: hidden; }
.delta-search-overlay {
  position: fixed;
  z-index: 200;
  inset: 0;
  display: grid;
  place-items: start center;
  overflow-y: auto;
  padding: clamp(1rem, 6vh, 4rem) 1rem;
  background: rgba(0, 8, 14, .82);
  backdrop-filter: blur(10px);
}
.delta-search-overlay[hidden] { display: none; }
.delta-search-dialog {
  width: min(100%, 64rem);
  max-height: calc(100vh - 2rem);
  display: grid;
  grid-template-rows: auto auto auto auto minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid rgba(100, 201, 241, .55);
  background: linear-gradient(150deg, rgba(5, 26, 40, .995), rgba(1, 11, 19, .995));
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, .58), inset 0 1px rgba(170, 229, 252, .06);
}
.delta-search-dialog > header { min-height: 5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.2rem; border-bottom: 1px solid rgba(91, 166, 202, .28); }
.delta-search-dialog > header small { color: #70d0f2; font-size: .65rem; font-weight: 800; letter-spacing: .14em; }
.delta-search-dialog h2 { margin: .25rem 0 0; color: #f0eee7; font: 400 1.45rem/1.2 var(--display-font); }
.delta-search-close { width: 2.75rem; height: 2.75rem; border: 1px solid rgba(92, 177, 218, .4); background: rgba(4, 20, 31, .8); color: #bfeeff; font-size: 1.5rem; cursor: pointer; }
.delta-search-close:hover,
.delta-search-close:focus-visible { outline: 0; border-color: #7edcf8; color: #fff; }
.delta-search-dialog > label { padding: 1rem 1.2rem .45rem; color: #a8c3d0; font-size: .72rem; font-weight: 700; }
.delta-search-dialog > input { min-height: 3.25rem; margin: 0 1.2rem; padding: .75rem .9rem; border: 1px solid rgba(91, 174, 216, .42); background: #03131f; color: #eff8fb; font: 400 1rem/1.3 var(--body-font); }
.delta-search-dialog > input:focus { outline: 2px solid rgba(102, 205, 244, .42); outline-offset: 2px; border-color: #7edcf8; }
.delta-search-caption { margin: 0; padding: .85rem 1.2rem .55rem; color: #75cceb; font-size: .68rem; font-weight: 800; letter-spacing: .1em; }
.delta-search-results { min-height: 12rem; overflow-y: auto; border-top: 1px solid rgba(86, 147, 178, .22); }
.delta-search-results-list .delta-list-row { grid-template-columns: 7rem minmax(0, 1fr); min-height: 7.5rem; padding: .75rem 1rem; }
.delta-search-results-list .delta-list-thumb { min-height: 5.8rem; }
.delta-search-results-list .delta-list-copy h2 { font-size: 1rem; }
.delta-search-empty { min-height: 12rem; display: grid; place-items: center; padding: 2rem; color: #b9c8cf; text-align: center; }
.delta-search-empty p { margin: 0; }

.delta-pagination { display: grid; grid-template-columns: minmax(6rem, auto) minmax(0, 1fr) minmax(6rem, auto); align-items: center; gap: .8rem; margin-top: 1rem; }
.delta-pagination > div { display: flex; flex-wrap: wrap; justify-content: center; gap: .45rem; }
.delta-pagination a,
.delta-pagination span { min-height: 2.75rem; display: inline-flex; align-items: center; justify-content: center; padding: .55rem .8rem; border: 1px solid rgba(93, 174, 215, .35); background: rgba(4, 20, 31, .84); color: #a9def6; text-decoration: none; }
.delta-pagination a:hover,
.delta-pagination a:focus-visible,
.delta-pagination a[aria-current="page"] { outline: 0; border-color: #7edcf8; color: #fff; background: rgba(22, 78, 105, .38); }
.delta-pagination .is-disabled { color: #607783; border-color: rgba(77, 117, 136, .2); }

@media (max-width: 1120px) {
  .desktop-nav button { gap: .2rem; padding-right: .3rem; padding-left: .3rem; font-size: .72rem; }
  .desktop-nav button > span:first-child { font-size: 1.05rem; }
}

@media (max-width: 680px) {
  #app:has(.today-hero) .connection-track,
  .today-track,
  #app:has(.today-hero) .stories-section .card-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    max-width: 100%;
    gap: .85rem;
    overflow: visible;
    padding: .75rem;
    scroll-snap-type: none;
    scroll-padding-inline: 0;
    overscroll-behavior-inline: auto;
  }
  #app:has(.today-hero) .connection-card,
  #app:has(.today-hero) .connection-summary,
  .today-track .change-card,
  #app:has(.today-hero) .stories-section .card-grid > .change-card,
  #app:has(.today-hero) .stories-section .card-grid[data-count] > .change-card:nth-child(n) {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 0;
    flex: none;
    scroll-snap-align: none;
  }
  #app:has(.today-hero) .connection-card { grid-template-rows: auto auto auto; }
  #app:has(.today-hero) .connection-card .responsive-thumbnail { display: block; width: 100%; max-width: 100%; }
  #app:has(.today-hero) .connection-card img { width: 100%; max-width: 100%; height: auto; }
  #app:has(.today-hero) .connection-arrow { width: 100%; height: 1.6rem; flex: none; font-size: 0; }
  #app:has(.today-hero) .connection-arrow::before { top: -.2rem; right: 50%; bottom: -.2rem; left: auto; width: 1px; height: auto; background: linear-gradient(180deg, transparent, rgba(83, 184, 238, .7), transparent); }
  #app:has(.today-hero) .connection-arrow::after { content: "↓"; color: #91ddff; font-size: 1.25rem; text-shadow: 0 0 .8rem rgba(72, 171, 239, .8); }
  .today-track .change-card,
  #app:has(.today-hero) .stories-section .change-card { min-height: 0; }
  .delta-search-overlay { padding: .5rem; }
  .delta-search-dialog { max-height: calc(100vh - 1rem); }
  .delta-search-dialog > header { min-height: 4.25rem; padding: .8rem; }
  .delta-search-dialog > label { padding: .8rem .8rem .4rem; }
  .delta-search-dialog > input { margin: 0 .8rem; }
  .delta-search-caption { padding: .75rem .8rem .5rem; }
  .delta-search-results-list .delta-list-row { grid-template-columns: 5.5rem minmax(0, 1fr); gap: .65rem; min-height: 6.5rem; padding: .65rem; }
  .delta-search-results-list .delta-list-thumb { min-height: 5rem; }
  .delta-search-results-list .delta-list-copy h2 { font-size: .9rem; }
  .delta-pagination { grid-template-columns: 1fr 1fr; }
  .delta-pagination > div { grid-column: 1 / -1; grid-row: 1; }
}

/* No.407 — header search control. */
.header-inner { grid-template-columns: auto minmax(36rem, 1fr) auto 2.75rem; }
.delta-header-search {
  position: relative;
  width: 2.75rem;
  height: 2.75rem;
  display: inline-grid;
  place-items: center;
  justify-self: end;
  border: 1px solid rgba(93, 188, 230, .34);
  border-radius: 50%;
  padding: 0;
  background: rgba(4, 24, 36, .62);
  color: #8bdef8;
  cursor: pointer;
  transition: border-color .18s ease, background-color .18s ease, color .18s ease;
}
.delta-header-search span {
  position: relative;
  width: 1rem;
  height: 1rem;
  display: block;
  border: 2px solid currentColor;
  border-radius: 50%;
}
.delta-header-search span::after {
  content: "";
  position: absolute;
  right: -.42rem;
  bottom: -.27rem;
  width: .52rem;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
  transform: rotate(45deg);
  transform-origin: left center;
}
.delta-header-search:is(:hover, :focus-visible) {
  outline: 0;
  border-color: #84dcf8;
  background: rgba(16, 62, 82, .62);
  color: #fff;
}

/* No.409 — mobile dashboard articles reuse the canonical article-list row. */
.connection-track > .delta-list-row,
.today-track > .delta-list-row { display: none; }

@media (max-width: 1120px) {
  .header-inner { grid-template-columns: auto minmax(25rem, 1fr) auto 2.6rem; }
  .delta-header-search { width: 2.6rem; height: 2.6rem; }
}

@media (max-width: 820px) {
  .header-inner { grid-template-columns: auto minmax(0, 1fr) 2.75rem 3rem; gap: .35rem; }
  .header-tools { display: none; }
  .delta-header-search { grid-column: 3; }
  .mobile-menu-button { grid-column: 4; }
}

@media (max-width: 680px) {
  .header-inner {
    grid-template-columns: minmax(0, 1fr) 2.75rem 3rem;
    gap: .2rem;
  }
  .delta-header-search {
    grid-column: 2;
    width: 2.65rem;
    height: 2.65rem;
  }
  .mobile-menu-button { grid-column: 3; }

  .connection-track > .connection-card,
  .today-track > .change-card { display: none; }
  .connection-track > .delta-list-row,
  .today-track > .delta-list-row { display: grid; }
}

/* No.487 — scoped fluorescent selection and minimum readable metadata sizing. */
::selection { background: #B7FF00; color: #0A0A0A; }
::-moz-selection { background: #B7FF00; color: #0A0A0A; }

.connection-card time,
.connection-summary span,
.timeline-day span,
.change-card .verification-badge,
.card-date { font-size: max(.7rem, 11px); }
.hotspot-item small,
.category-stat > span,
.panel-link,
.stories-section .section-heading > a { font-size: max(.75rem, 12px); }

@media (min-width: 1181px) {
  .header-inner,
  .today-hero,
  .dashboard-grid,
  .time-machine-section,
  .stories-section,
  .delta-aux-page { width: min(100% - clamp(2rem, 4vw, 6rem), 110rem); margin-inline: auto; }
  .header-inner { grid-template-columns: auto minmax(0, 1fr) auto 2.75rem; }
  .desktop-nav { flex-wrap: nowrap; gap: clamp(.1rem, .35vw, .45rem); white-space: nowrap; }
  .desktop-nav a { gap: .2rem; padding-inline: clamp(.18rem, .35vw, .4rem); font-size: clamp(.7rem, .76vw, .8rem); }
}

@media (max-width: 680px) {
  .visit-panel > span,
  .visit-panel > b,
  .visit-panel > a,
  .panel-heading > span { font-size: max(.68rem, 11px); }
  .hero-lead { font-size: max(.86rem, 14px); }
}

/* No.489 — one fluid desktop scale keeps the Full HD composition at QHD/UHD. */
@media (min-width: 1921px) {
  html { font-size: clamp(16px, .833333vw, 32px); }
}

/* No.537: retain the shared sticky header on every Delta route, in normal flow. */
@media (max-width: 820px) {
  body > .site-header { z-index: 100; }
}
/* Keep native anchor targets below the existing responsive header height. */
#main, #time-machine { scroll-margin-top: 5.25rem; }
@media (max-width: 680px) {
  #main, #time-machine { scroll-margin-top: 3.5rem; }
}

/* No.504 — home-only composition; existing route/card/resolver contracts remain shared. */
#app .home-improved { height: auto; min-height: 0; }
#app .home-improved .hero-content { position: relative; min-height: 0; padding: 3rem 2rem; display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(20rem, 1fr); gap: 3rem; align-items: center; }
#app .home-improved .hero-heading { width: 100%; min-width: 0; max-width: none; }
#app .home-improved h1 { max-width: none; font-size: 3.5rem; line-height: 1.3; }
#app .home-improved .hero-lead { max-width: 37rem; color: #d5e7f2; font-size: 1rem; line-height: 1.7; }
#app .home-improved .hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; align-items: center; }
#app .home-improved .hero-actions a { margin: 0; padding: .85rem 1rem; font-size: 1rem; color: #d5efff; text-decoration: none; }
#app .home-improved .hero-latest-link { background: #0a3951; border: 1px solid #79cff6; }
#app .home-improved .latest-change { min-width: 0; padding: 1rem; background: #041725; border: 1px solid #487c98; }
#app .home-improved .latest-label { margin: 0 0 .7rem; color: #a9ddf8; font-size: 1rem; }
#app .home-improved .change-card { min-height: 0; border: 0; background: transparent; }
#app .home-improved .card-image { aspect-ratio: 16 / 7; }
#app .home-improved .visit-note { font-size: .85rem; color: #c2d9e7; margin: .8rem 0 0; }
#app .home-dashboard { display: grid; grid-template-columns: minmax(0, 3fr) minmax(20rem, 1fr); align-items: start; }
#app .home-dashboard > * { order: initial; grid-area: auto; width: 100%; margin-inline: 0; }
#app .home-dashboard > .dashboard-panel,
#app .home-dashboard > .stories-section { order: initial; }
#app .home-dashboard .pulse-dashboard { grid-column: 1; }
#app .home-dashboard .last-seven-panel { grid-column: 2; }
#app .home-dashboard .today-dashboard,
#app .home-dashboard .connection-dashboard,
#app .home-dashboard .stories-section,
#app .home-dashboard .time-machine-panel { grid-column: 1 / -1; }
#app .home-dashboard .pulse-layout { grid-template-columns: minmax(0, 2fr) minmax(17rem, 1fr); align-items: start; }
#app .home-dashboard .map-stage { height: auto; min-height: 0; aspect-ratio: 2 / 1; }
#app .home-dashboard .hotspot-rail { height: auto; min-height: 0; }
#app .home-dashboard .global-summary { position: static; width: auto; }
#app .home-dashboard .global-list { position: static; max-height: 25rem; overflow-y: auto; overscroll-behavior-y: auto; padding: 0 .8rem; scrollbar-width: auto; }
#app .home-dashboard .global-list[hidden] { display: none; }
#app .home-dashboard .global-marker { display: block; min-height: 0; padding: .75rem 0; }
#app .home-dashboard .global-marker a b { font-size: 1rem; line-height: 1.45; }
#app .home-dashboard .global-marker p { display: flex; flex-wrap: wrap; gap: .35rem; margin: .4rem 0 0; }
#app .home-dashboard .global-marker small { color: #c2cdd2; }
#app .home-dashboard .category-stats { max-height: 16.8rem; overflow-y: auto; scrollbar-width: auto; gap: .5rem; padding: .7rem 1rem; }
#app .home-dashboard .category-stat { min-height: 2.5rem; }
#app .home-dashboard .scroll-hint { display: block; color: #c2cdd2; padding: .4rem 1rem; font-size: .8rem; }
#app .home-dashboard .last-seven-panel > p { margin: .75rem 1rem .25rem; }
#app .home-dashboard .last-seven-summary { margin: .6rem 1rem; }
#app .home-dashboard .last-seven-summary > a,
#app .home-dashboard .last-seven-summary > div { min-height: 0; padding: .7rem; }
#app .home-dashboard .panel-heading { flex-wrap: wrap; }
#app .home-dashboard .panel-heading > a { color: #bbe7ff; font-size: .9rem; }
#app .home-dashboard .today-dashboard > .panel-heading { justify-content: flex-start; gap: .6rem 1rem; }
#app .home-dashboard .today-dashboard .today-count { color: #c2d9e7; font-size: .9rem; white-space: nowrap; }
#app .home-dashboard .today-heading-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .7rem 1rem; min-width: 0; margin-inline-start: auto; }
#app .home-dashboard .today-heading-actions > a { color: #bbe7ff; font-size: .95rem; line-height: 1.5; padding-block: .45rem; }
#app .home-dashboard .today-dashboard-meta { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem 1rem; padding: .6rem 1rem 0; }
#app .home-dashboard .today-dashboard-meta .today-dashboard-lead { margin: 0; }
#app .home-dashboard .today-wheel-hint { margin-inline-start: auto; color: #c2d9e7; font-size: .875rem; }
#app .home-dashboard .today-wheel-hint[hidden] { display: none; }
#app .home-dashboard .today-controls { display: flex; gap: .5rem; }
#app .home-dashboard .today-controls[hidden] { display: none; }
#app .home-dashboard .today-controls button { border: 1px solid #6cabc9; background: #092535; color: #d7efff; min-height: 2.75rem; min-width: 3.5rem; padding: .55rem .9rem; cursor: pointer; font: inherit; font-size: .95rem; line-height: 1.25; }
#app .home-dashboard .today-controls button:disabled { opacity: .45; cursor: default; }
#app .home-dashboard :is(a,button,[tabindex]):focus-visible,
#app .home-improved a:focus-visible { outline: 2px solid #9ee5ff; outline-offset: 3px; }
#app .home-dashboard .today-track { display: flex; overflow-x: auto; overflow-y: hidden; }
#app .home-dashboard .today-track .change-card { min-height: 0; flex: 0 0 23rem; }
#app .home-dashboard .today-track[data-count="1"] .change-card { flex-basis: 100%; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); grid-template-rows: auto auto 1fr auto; column-gap: 1rem; }
#app .home-dashboard .today-track[data-count="1"] .card-image { grid-column: 1; grid-row: 1 / -1; align-self: start; }
#app .home-dashboard .today-track[data-count="1"] :is(.card-labels,h3,.short,.card-date) { grid-column: 2; }
#app .home-dashboard .today-track[data-count="2"] .change-card { flex-basis: calc((100% - .9rem) / 2); }
#app .home-dashboard .connection-track { display: flex; min-height: 0; align-items: stretch; gap: 1rem; padding: 1rem; }
#app .home-dashboard .connection-card { flex: 1 1 0; min-width: 0; max-width: none; }
#app .home-dashboard .connection-summary { min-height: 0; padding: 1rem; margin: 1rem 1rem 0; width: auto; border-color: #35596e; }
#app .home-dashboard .connection-summary p { display: block; overflow: visible; font-size: 1rem; line-height: 1.7; -webkit-line-clamp: unset; }
#app .home-dashboard .connection-card b { font-size: 1.125rem; line-height: 1.45; }
#app .home-dashboard .card-grid { margin: 0; width: 100%; }
#app :is(.home-dashboard,.home-improved) .change-card h3 { display: block; overflow: visible; font-size: 1.22rem; line-height: 1.45; -webkit-line-clamp: unset; }
#app :is(.home-dashboard,.home-improved) .change-card .short { display: block; overflow: visible; font-size: 1rem; line-height: 1.7; -webkit-line-clamp: unset; color: #cbdce6; }
#app :is(.home-dashboard,.home-improved) .card-image img { filter: none; opacity: 1; }
#app .home-empty { margin: 1.5rem auto; padding: 1.5rem; max-width: 90rem; }
/* Desktop wheel increments must not snap back to the preceding card. */
@media (min-width: 821px) {
  #app .home-dashboard .today-track { scroll-snap-type: none; }
}
@media (max-width: 1180px) {
  #app .home-dashboard { grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr); }
  #app .home-dashboard .pulse-layout { grid-template-columns: 1fr; }
  #app .home-improved .hero-content { gap: 1.5rem; padding: 2rem 1rem; }
}
@media (max-width: 820px) {
  #app .home-improved .hero-content { display: grid; grid-template-columns: minmax(0, 1fr); padding: 2rem 1rem; gap: 1.5rem; }
  #app .home-improved .hero-heading { padding: 0; }
  #app .home-improved h1 { font-size: clamp(1.7rem, 6.5vw, 2.8rem); line-height: 1.3; }
  #app .home-dashboard { grid-template-columns: minmax(0, 1fr); }
  #app .home-dashboard > * { grid-column: 1; }
  #app .home-dashboard .category-stats,
  #app .home-dashboard .global-list { max-height: none; overflow: visible; }
  #app .home-dashboard .scroll-hint { display: none; }
  #app .home-dashboard .today-wheel-hint { display: none; }
  #app .home-dashboard .today-heading-actions { margin-inline-start: 0; }
  #app .home-dashboard .today-track,
  #app .home-dashboard .connection-track { display: grid; grid-template-columns: minmax(0, 1fr); overflow: visible; padding: .75rem; }
  #app .home-dashboard .today-track .change-card,
  #app .home-dashboard .today-track[data-count="1"] .change-card,
  #app .home-dashboard .connection-card { display: none; }
  #app .home-dashboard .today-track > .delta-list-row,
  #app .home-dashboard .connection-track > .delta-list-row { display: grid; min-width: 0; }
  #app .home-dashboard .delta-list-row { grid-template-columns: minmax(5rem, .45fr) minmax(0, 1fr); gap: .7rem; align-items: start; }
  #app .home-dashboard .delta-list-thumb { max-width: 100%; height: auto; aspect-ratio: 4 / 3; }
  #app .home-dashboard .delta-list-copy > h2 { display: block; overflow: visible; font-size: 1.1rem; line-height: 1.45; -webkit-line-clamp: unset; }
  #app .home-dashboard .delta-list-copy > p { display: block; overflow: visible; font-size: .95rem; line-height: 1.7; -webkit-line-clamp: unset; color: #cbdce6; }
  #app .home-dashboard .card-grid { grid-template-columns: minmax(0, 1fr); }
  #app :is(.home-dashboard,.home-improved) .change-card h3 { font-size: 1.1rem; }
  #app :is(.home-dashboard,.home-improved) .change-card .short { font-size: .95rem; }
}
/* No.509: only WORLD PULSE. Existing map projection/background and rem scale retained. */
#world-pulse .panel-heading { align-items: center; }
#world-pulse .panel-heading p { margin: 0; font-size: .9rem; }
#world-pulse .pulse-period-controls { display: flex; flex-wrap: wrap; gap: .5rem; margin-inline-start: auto; }
#world-pulse .pulse-period-controls button { min-height: 2.75rem; padding: .5rem .8rem; font: inherit; color: #cbe9fb; background: #092535; border: 1px solid #537f97; cursor: pointer; }
#world-pulse .pulse-period-controls button[aria-pressed="true"] { background: #174760; border-color: #91deff; }
#world-pulse .pulse-layout { max-width: none; }
#world-pulse .pulse-pickup-rail { min-width: 0; padding: .8rem; }
#world-pulse .pulse-pickup-rail h3 { font: inherit; margin: 0 0 .7rem; }
#world-pulse .pulse-pickups { display: grid; gap: .7rem; }
#world-pulse .pulse-card { min-width: 0; }
#world-pulse .pulse-card > a { display: grid; grid-template-columns: minmax(4rem, 26%) minmax(0, 1fr); gap: .65rem; padding: .65rem; border: 1px solid #35596e; color: #d1e8f5; text-decoration: none; }
#world-pulse .pulse-card picture, #world-pulse .pulse-card picture img { display: block; width: 100%; height: auto; object-fit: contain; }
#world-pulse .pulse-card > a > img { display: block; width: 100%; height: auto; object-fit: contain; }
#world-pulse .pulse-card strong { display: block; overflow-wrap: anywhere; line-height: 1.5; }
#world-pulse .pulse-card strong { font-size: 1rem; }
#world-pulse .pulse-category { display: flex; align-items: center; gap: .3rem; font-size: .8rem; margin-top: .35rem; }
#world-pulse .pulse-category img { width: 1.1rem; height: 1.1rem; object-fit: contain; }
#world-pulse .pulse-empty { position: absolute; z-index: 5; left: 1rem; right: 1rem; top: 1rem; margin: 0; background: #031521dd; font-size: .95rem; }
#world-pulse .pulse-empty:empty { display: none; }
#world-pulse .map-marker { width: 44px; height: 44px; margin: -22px 0 0 -22px; color: #fff; font: 700 .85rem/1 sans-serif; border-width: 2px; background: color-mix(in srgb, var(--marker-accent) 45%, #02111ee6); }
#world-pulse .map-marker[data-location-kind="APPROXIMATE_REGION"] { border-style: double; border-width: 5px; }
#world-pulse .map-marker:hover, #world-pulse .map-marker:focus-visible { transform: none; outline: 2px solid #fff; outline-offset: 2px; }
#world-pulse :is(a,button):focus-visible { outline: 2px solid #a8e8ff; outline-offset: 3px; }
@media (max-width: 820px) {
  #app .home-dashboard #world-pulse .pulse-layout { grid-template-columns: minmax(0, 1fr); }
  #world-pulse .pulse-period-controls { margin-inline-start: 0; }
  #world-pulse .pulse-card > a { grid-template-columns: minmax(4rem, 25%) minmax(0,1fr); }
}
@media (prefers-reduced-motion: reduce) { #world-pulse *, #world-pulse *::before, #world-pulse *::after { animation: none !important; transition: none !important; } }

/* No.511: compact PULSE only; no inherited row-height gap after metadata removal. */
#app .home-dashboard #world-pulse { align-self: start; }

/* No.516: upper hero only; existing article cards and dashboard remain unchanged. */
#app .home-improved .hero-content { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: clamp(1.5rem, 3vw, 4rem); padding: clamp(1.5rem, 2.4vw, 3.5rem) clamp(1rem, 2.2vw, 3rem); }
#app .home-improved .hero-heading h1 { margin: 0 0 1rem; font-size: clamp(2rem, 3.1vw, 4.3rem); line-height: 1.3; letter-spacing: .015em; }
#app .home-improved .hero-heading h1 span { white-space: normal; }
#app .home-improved .hero-heading h1 em { color: var(--gold); font-style: normal; }
#app .home-improved .hero-lead { max-width: 37rem; margin: 0 0 1.15rem; line-height: 1.7; }
#app .home-improved .hero-latest-link { background: linear-gradient(135deg, #0781ce, #0051a6); border-color: #50b7f3; border-radius: .25rem; box-shadow: 0 0 1.2rem #027ec633; font-weight: 700; }
#app .home-improved .latest-change { padding: 1rem; border-radius: .25rem; background: #031725ed; box-shadow: inset 0 0 1.5rem #0a496522; }
#app .home-improved .latest-heading { display: flex; justify-content: space-between; gap: .75rem; align-items: baseline; margin-bottom: .75rem; }
#app .home-improved .latest-label { display: flex; align-items: center; gap: .5rem; margin: 0; font-weight: 700; }
#app .home-improved .latest-heading time { color: #adc7d6; font-size: .72rem; white-space: nowrap; }
#app .home-improved .latest-new { padding: .18rem .3rem; border-radius: .2rem; color: white; background: #bb4935; font-size: .68rem; }
#app .home-improved .latest-body { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 1rem; align-items: start; }
#app .home-improved .latest-copy { min-width: 0; }
#app .home-improved .latest-copy h2 { margin: 0 0 .45rem; font: 700 1.05rem/1.5 "WDelta UI", sans-serif; overflow-wrap: anywhere; }
#app .home-improved .latest-copy h2 a { color: #eef8ff; text-decoration: none; }
#app .home-improved .latest-copy .category { display: inline-block; margin: 0 0 .4rem; padding: .12rem .45rem; border: 1px solid rgba(116, 190, 219, .3); border-radius: 2rem; background: rgba(22, 69, 89, .24); color: var(--cyan); font-size: .72rem; line-height: 1.5; }
#app .home-improved .latest-summary { margin: 0 0 .65rem; color: #cbdce6; font-size: .82rem; line-height: 1.65; overflow-wrap: anywhere; }
#app .home-improved .latest-read { display: inline-flex; min-height: 2.5rem; align-items: center; padding: .35rem .7rem; border: 1px solid #4ca3cf; border-radius: .2rem; color: #c9edff; text-decoration: none; font-size: .82rem; }
#app .home-improved .latest-thumbnail { display: block; aspect-ratio: 1 / 1; border: 1px solid #326681; border-radius: .2rem; overflow: hidden; }
#app .home-improved .latest-thumbnail img { display: block; width: 100%; height: 100%; object-fit: cover; }
#app .home-improved .visit-note { margin: .75rem 0 0; text-align: right; font-size: .72rem; }
@media (min-width: 2400px) { #app .home-improved .hero-content { max-width: 150rem; margin-inline: auto; } }
@media (max-width: 820px) {
  #app .home-improved .hero-content { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; padding: 1.5rem 1rem; }
  #app .home-improved .hero-heading h1 { font-size: clamp(1.9rem, 6.8vw, 3.4rem); line-height: 1.35; }
  #app .home-improved .hero-lead { font-size: .9rem; margin-bottom: 1rem; }
  #app .home-improved .latest-change { padding: .85rem; }
  #app .home-improved .latest-body { gap: .7rem; }
  #app .home-improved .latest-copy h2 { font-size: .95rem; }
  #app .home-improved .latest-summary { font-size: .78rem; }
  #app .home-improved .latest-heading { gap: .4rem; }
  #app .home-improved .latest-label { font-size: .85rem; }
  #app .home-improved .latest-heading time { font-size: .62rem; }
}

/* No.521 — article detail only. Ads, header, home/PULSE and shared cards keep their contracts. */
/* No.523: FHD detail dimensions follow the existing No.489 root scale once. */
.detail.detail-reader { width: calc(100% - 3rem); max-width: 90rem; margin-inline: auto; padding: 1rem 0 3rem; }
.detail-reader .detail-hero { min-height: 32rem; overflow: hidden; }
.detail-reader .detail-hero::before { background: linear-gradient(90deg, rgba(1,10,17,.93), rgba(1,10,17,.61) 48%, rgba(1,10,17,.25) 72%, rgba(1,10,17,.7)), linear-gradient(0deg, rgba(1,10,17,.88), transparent 75%); }
.detail-reader .detail-hero-grid { min-height: 32rem; grid-template-columns: minmax(0, 1fr) minmax(17.5rem, 21.25rem); gap: 2rem; align-items: center; padding: 4rem 1.75rem 1.75rem; }
.detail-reader .detail-back { left: 1.75rem; top: 1.25rem; }
.detail-reader .detail-header { min-width: 0; }
.detail-reader .detail-meta { display: flex; flex-wrap: wrap; gap: .65rem 1rem; margin: 0 0 1.1rem; font-size: .85rem; }
.detail-reader .detail-meta a { color: #e6be63; text-decoration: none; }
.detail-reader h1 { width: auto; max-width: 22em; margin: 0; font-size: clamp(2rem, 3.05vw, 3rem); line-height: 1.3; overflow-wrap: anywhere; }
.detail-reader .detail-lead { max-width: 44em; margin: 1.25rem 0 0; font-size: 1.0625rem; line-height: 1.8; }
.detail-reader .detail-snapshot { width: auto; min-width: 0; align-self: center; background: rgba(2,23,35,.95); border-radius: 5px; }
.detail-reader .detail-snapshot h2 { min-height: 0; padding: 1rem 1.15rem; font-size: 1.05rem; }
.detail-reader .detail-snapshot dl > div { grid-template-columns: 6rem minmax(0,1fr); padding: .85rem 1.1rem; gap: .75rem; }
.detail-reader .detail-snapshot dt { font-size: .75rem; }
.detail-reader .detail-snapshot dd { font-size: .85rem; line-height: 1.65; }
.detail-reader .detail-snapshot dd small { font-size: .8rem; line-height: 1.7; }
.detail-reader .detail-verification-basis { margin: 0; padding: .25rem 1.1rem 1rem; color: #bacfd9; font-size: .8rem; line-height: 1.7; }
.detail-reader .detail-source-jump { display: block; padding: 1rem 1.1rem; border-top: 1px solid #234452; color: #71dfe6; font-size: .85rem; line-height: 1.6; }
.detail-reader .detail-share { display: flex; flex-wrap: wrap; gap: .6rem; padding: .9rem 1.1rem 1.1rem; border-top: 1px solid #234452; }
.detail-reader .detail-share > a, .detail-reader .detail-share > button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 2.75rem; padding: .6rem .8rem; border: 1px solid #347084; border-radius: 4px; color: #d2f6ff; background: #061a26; font: inherit; font-size: .8rem; cursor: pointer; }
.detail-reader #detail-copy-status { flex-basis: 100%; font-size: .8rem; color: #a1e6eb; }
.detail-reader #detail-copy-status:empty { display: none; }
.detail-reader :is(a,button):focus-visible { outline: 2px solid #81edfa; outline-offset: 4px; }
.detail-reader :is(p,cite,dd,a) { overflow-wrap: anywhere; }
.detail-reader .detail-change { margin-top: 1.25rem; padding: 1.65rem; border: 1px solid #327c96; border-radius: 5px; background: linear-gradient(125deg,#072534,#031520); box-shadow: inset 0 0 32px #0b415522; }
.detail-reader :is(.detail-change,.detail-narrative,.detail-sources,.detail-explore) h2 { margin: 0 0 1.25rem; color: #92e5ee; font-size: clamp(1.25rem,1.7vw,1.55rem); line-height: 1.5; font-weight: 600; letter-spacing: .02em; }
.detail-reader h2 > span { margin-right: .65rem; color: #60c8ef; }
.detail-reader .detail-comparison { display: grid; grid-template-columns: minmax(0,1fr) 2.5rem minmax(0,1fr); align-items: stretch; gap: .65rem; }
.detail-reader .detail-comparison-single { grid-template-columns: minmax(0,1fr); }
.detail-reader .detail-comparison section { min-width: 0; padding: 1.35rem 1.5rem; border: 1px solid #315362; border-radius: 4px; background: #0a1e2b; }
.detail-reader .detail-comparison .detail-after { border-color: #48cad9; background: linear-gradient(120deg,#07313d,#06202d); }
.detail-reader .detail-comparison h3 { margin: 0 0 1rem; font-size: 1.2rem; font-weight: 600; color: #cfdae2; }
.detail-reader .detail-comparison .detail-after h3 { color: #64e8ed; }
.detail-reader .detail-comparison-arrow { align-self: center; text-align: center; font-size: 1.7rem; color: #9bdae3; }
.detail-reader :is(.detail-comparison,.detail-narrative) p { margin: 0; font-size: 1.0625rem; line-height: 1.85; color: #d0dce4; white-space: pre-line; }
.detail-reader .detail-narrative { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.25rem; margin-top: 1.25rem; }
.detail-reader .detail-section { min-height: 0; padding: 1.65rem; background: #041722; border: 1px solid #244b5b; border-radius: 4px; }
.detail-reader .detail-sources { margin-top: 1.25rem; scroll-margin-top: 6rem; }
.detail-reader .source-list { margin: 0; padding: 0; }
.detail-reader .source-list li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem 2rem; min-height: 0; padding: 1.25rem; }
.detail-reader .source-list li > div { flex: 1 1 22rem; min-width: 0; }
.detail-reader .source-list strong { display: block; font-size: 1.1rem; }
.detail-reader .source-list cite { display: block; margin-top: .6rem; font-size: 1rem; line-height: 1.7; }
.detail-reader .source-list a { display: inline-block; padding: .8rem 1.15rem; border: 1px solid #4195a7; border-radius: 4px; font-size: .95rem; }
.detail-reader .detail-explore { margin: 1.25rem 0 0; padding: 1.65rem; border-radius: 4px; }
.detail-reader .detail-explore-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.1rem; }
.detail-reader .detail-explore-grid > a { display: flex; flex-direction: column; align-items: stretch; gap: 0; min-width: 0; padding: 0; overflow: hidden; border-radius: 4px; }
.detail-reader .detail-explore-grid :is(img,picture) { display: block; width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; }
.detail-reader .detail-explore-grid > a > span { display: block; padding: 1rem 1.1rem .5rem; }
.detail-reader .detail-explore-grid small { display: block; font-size: .78rem; line-height: 1.6; }
.detail-reader .detail-explore-grid small b { display: block; margin: 0 0 .4rem; color: #71d7e7; }
.detail-reader .detail-explore-grid strong { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin-top: .65rem; font-size: 1.0625rem; line-height: 1.6; }
.detail-reader .detail-explore-grid em { align-self: flex-end; margin: auto 1.1rem 1rem; font-size: 1.4rem; }
.detail-reader .detail-sequence { margin: 1rem 0 0; }
@media (max-width: 1050px) {
  .detail-reader .detail-narrative { grid-template-columns: 1fr; }
  .detail-reader .detail-hero-grid { gap: 1.25rem; padding-inline: 1.25rem; grid-template-columns: minmax(0,1fr) minmax(15.625rem,18.75rem); }
}
@media (max-width: 820px) {
  .detail.detail-reader { width: calc(100% - 1.5rem); padding-top: .75rem; }
  .detail-reader .detail-hero { min-height: 0; }
  .detail-reader .detail-hero-grid { grid-template-columns: 1fr; min-height: 0; padding: 10rem 1rem 1rem; gap: 1.5rem; }
  .detail-reader .detail-hero-image { max-height: 27rem; object-position: center top; }
  .detail-reader .detail-hero::before { background: linear-gradient(180deg,rgba(1,10,17,.25),rgba(1,10,17,.88) 18rem,#020e17 30rem); }
  .detail-reader .detail-back { left: 1rem; top: 1rem; }
  .detail-reader h1 { font-size: clamp(1.8rem,6.4vw,2.4rem); line-height: 1.4; }
  .detail-reader .detail-meta { gap: .6rem; font-size: .8rem; }
  .detail-reader .detail-lead { font-size: 1rem; }
  .detail-reader .detail-snapshot { width: 100%; }
  .detail-reader .detail-snapshot dl > div { grid-template-columns: 5.25rem minmax(0,1fr); }
  .detail-reader .detail-comparison { grid-template-columns: 1fr; gap: .8rem; }
  .detail-reader .detail-comparison-arrow { font-size: 1.3rem; }
  .detail-reader :is(.detail-change,.detail-section,.detail-explore) { padding: 1.15rem; }
  .detail-reader .detail-comparison section { padding: 1.1rem; }
  .detail-reader .detail-explore-grid { grid-template-columns: 1fr; }
  .detail-reader .source-list li { padding: 1rem; }
}

/* No.525: mobile home and reader only; existing 820px boundary and root retained. */
@media (max-width: 820px) {
  #app .home-improved .hero-content { padding: 1.25rem .9375rem; gap: 1.25rem; }
  #app .home-improved .hero-heading h1,
  html[lang="ja"] #app .home-improved .hero-heading h1 { font-size: 1.5rem; line-height: 1.4; }
  #app .home-improved .hero-lead { font-size: 1rem; line-height: 1.8; margin-block: .75rem; }
  #app .home-improved .hero-latest-link { display: inline-flex; align-items: center; min-height: 2.75rem; }
  #app .home-improved .latest-change { padding: .9375rem; background: #031520; }
  #app .home-improved .latest-heading { flex-wrap: wrap; gap: .5rem; margin-bottom: .9375rem; }
  #app .home-improved .latest-heading time { font-size: .8125rem; }
  #app .home-improved .latest-body { display: flex; flex-direction: column; gap: 1rem; }
  #app .home-improved .latest-thumbnail { order: -1; width: 100%; height: 10rem; aspect-ratio: auto; }
  #app .home-improved .latest-thumbnail img { object-fit: cover; object-position: center; }
  #app .home-improved .latest-copy h2 { font-size: 1.625rem; line-height: 1.45; }
  #app .home-improved .latest-copy .category { font-size: .8125rem; padding: .35rem .65rem; margin-block: .75rem; }
  #app .home-improved .latest-summary { font-size: 1rem; line-height: 1.8; }
  #app .home-improved .latest-read { min-height: 2.75rem; font-size: .9375rem; }
  #app .dashboard-shell.home-dashboard { padding-inline: 0; width: calc(100% - 1.875rem); gap: 1.375rem; }
  #app .home-dashboard .panel-heading { gap: .75rem; padding: .9375rem; }
  #app .home-dashboard .panel-heading h2 { font-size: 1.125rem; line-height: 1.5; }
  #app .home-dashboard .panel-heading p { font-size: 1rem; line-height: 1.75; }
  #app .home-dashboard .today-dashboard-meta { padding-inline: .9375rem; font-size: .8125rem; }
  #app .home-dashboard .today-track { padding: 0 .9375rem .9375rem; gap: 0; }
  /* The original PC card is the one article DOM at every width. */
  #app .home-dashboard .today-track > .change-card,
  #app .home-dashboard .today-track[data-count="1"] > .change-card { display: grid; grid-template-columns: 4.5rem minmax(0,1fr); grid-template-rows: auto auto auto auto; min-width: 0; padding: .9375rem 0; gap: .25rem .75rem; border: 0; border-top: 1px solid #244b5b; border-radius: 0; background: transparent; }
  #app .home-dashboard .today-track .change-card > .card-image { grid-column: 1; grid-row: 1 / -1; align-self: start; width: 4.5rem; height: 4.5rem; aspect-ratio: 1; margin: 0; }
  #app .home-dashboard .today-track .card-image img { width: 100%; height: 100%; object-fit: cover; }
  #app .home-dashboard .today-track .change-card > .card-date { grid-column: 2; grid-row: 1; margin: 0; padding: 0; border: 0; font-size: .8125rem; line-height: 1.6; color: #b8d0dc; }
  #app .home-dashboard .today-track .change-card > .card-labels { grid-column: 2; grid-row: 2; min-height: 0; margin: 0; padding: 0; }
  #app .home-dashboard .today-track .card-labels .category { min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: #b8d0dc; font-size: .8125rem; line-height: 1.6; }
  #app .home-dashboard .today-track .change-card > h3 { grid-column: 2; grid-row: 3; margin: .15rem 0; font-size: 1.0625rem; line-height: 1.6; overflow-wrap: anywhere; }
  #app .home-dashboard .today-track .change-card > .short { grid-column: 2; grid-row: 4; margin: 0; padding: 0; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-size: 1rem; line-height: 1.75; }
  #app .home-dashboard .today-track.is-mobile-collapsed > .change-card:nth-of-type(n+6) { display: none; }
  #app .home-dashboard .today-mobile-expand { display: block; min-height: 2.75rem; width: calc(100% - 1.875rem); margin: 0 .9375rem .9375rem; padding: .75rem; border: 1px solid #438594; border-radius: .3rem; color: #d2f6ff; background: #092535; font: inherit; font-size: 1rem; cursor: pointer; }
  #app .home-dashboard .today-mobile-expand[hidden] { display: none; }
  #app .home-dashboard :is(a,button):focus-visible { outline: 2px solid #81edfa; outline-offset: 3px; }
  #app .home-dashboard #world-pulse .pulse-period-controls { width: 100%; gap: .5rem; }
  #app .home-dashboard #world-pulse .pulse-period-controls button { min-width: 2.75rem; min-height: 2.75rem; font-size: .875rem; }
  #app .home-dashboard #world-pulse .pulse-pickup-rail { padding: .9375rem; }
  #app .home-dashboard #world-pulse .pulse-card > a { padding: .875rem; gap: .75rem; }
  #app .home-dashboard #world-pulse .pulse-card strong { font-size: 1rem; line-height: 1.65; }
  #app .home-dashboard .category-stat { min-height: 2.75rem; font-size: .9375rem; }
  #app .home-dashboard .connection-track .delta-list-row { grid-template-columns: 4.5rem minmax(0,1fr); gap: .75rem; }
  #app .home-dashboard .connection-track .delta-list-copy > p { font-size: 1rem; line-height: 1.8; }
  #app .home-dashboard .connection-track .delta-list-copy > small { font-size: .8125rem; line-height: 1.6; }
  #app .home-dashboard .change-card h3 { display: block; -webkit-line-clamp: unset; overflow: visible; font-size: 1.0625rem; line-height: 1.6; }

  .detail.detail-reader { width: calc(100% - 1.875rem); padding-top: .9375rem; }
  .detail-reader .detail-hero { background: #031520; }
  .detail-reader .detail-hero-image { height: 10rem; max-height: 10rem; object-fit: cover; object-position: center; }
  .detail-reader .detail-hero::before { background: linear-gradient(180deg,rgba(1,10,17,.15),rgba(1,10,17,.15) 7rem,#031520 10rem); }
  .detail-reader .detail-hero-grid { padding: 11rem .9375rem .9375rem; gap: 1.375rem; }
  .detail-reader .detail-back { position: absolute; margin: 0; left: .9375rem; top: .5rem; min-height: 2.75rem; display: inline-flex; align-items: center; padding-inline: .5rem; background: #031520cc; font-size: .8125rem; }
  .detail-reader h1 { font-size: 1.625rem; line-height: 1.45; }
  .detail-reader .detail-meta { font-size: .8125rem; line-height: 1.7; margin-bottom: .75rem; }
  .detail.detail-reader .detail-lead { margin-top: 1rem; font-size: 1rem; line-height: 1.85; }
  .detail-reader .detail-snapshot h2 { padding: .9375rem; font-size: 1.125rem; }
  .detail-reader .detail-snapshot dl > div { grid-template-columns: minmax(0,1fr); gap: .375rem; padding: .9375rem; }
  .detail-reader .detail-snapshot dt { font-size: .8125rem; color: #b8d0dc; }
  .detail-reader .detail-snapshot dd, .detail-reader .detail-snapshot dd small { font-size: 1rem; line-height: 1.75; }
  .detail-reader .detail-verification-basis { padding: 0 .9375rem .9375rem; font-size: 1rem; line-height: 1.75; color: #cfdee6; }
  .detail-reader .detail-source-jump { padding: .75rem .9375rem; min-height: 2.75rem; font-size: .875rem; }
  .detail-reader .detail-share { padding: .9375rem; gap: .5rem; }
  .detail-reader .detail-share > :is(a,button) { flex: 1 1 6rem; min-width: 2.75rem; min-height: 2.75rem; padding: .625rem .375rem; font-size: .875rem; }
  .detail-reader :is(.detail-change,.detail-section,.detail-explore) { padding: .9375rem; margin-top: 1.375rem; }
  .detail-reader :is(.detail-change,.detail-narrative,.detail-sources,.detail-explore) h2 { font-size: 1.1875rem; margin-bottom: .875rem; }
  .detail-reader .detail-change { box-shadow: none; background: #041722; }
  .detail-reader .detail-comparison { gap: 1rem; }
  .detail-reader .detail-comparison section { padding: 0; border: 0; border-radius: 0; background: transparent; }
  .detail-reader .detail-comparison .detail-after { padding-top: 1rem; border-top: 1px solid #327c96; background: transparent; }
  .detail-reader .detail-comparison h3 { font-size: 1rem; line-height: 1.65; margin-bottom: .5rem; }
  .detail-reader .detail-comparison-arrow { display: none; }
  .detail.detail-reader :is(.detail-comparison,.detail-narrative) p { font-size: 1rem; line-height: 1.85; }
  .detail-reader .detail-narrative { margin-top: 0; gap: 0; }
  .detail-reader .source-list li { padding: 0; gap: .875rem; border: 0; background: transparent; }
  .detail-reader .source-list li + li { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid #244b5b; }
  .detail-reader .source-list li > div { flex-basis: 100%; }
  .detail-reader .source-list cite { margin-top: .5rem; font-size: 1rem; line-height: 1.75; }
  .detail-reader .source-list a { min-height: 2.75rem; padding: .75rem 1rem; }
  .detail-reader .detail-explore-grid { gap: 0; }
  .detail-reader .detail-explore-grid > a { display: grid; grid-template-columns: 4.5rem minmax(0,1fr); align-items: start; padding: .9375rem 0; gap: .75rem; border: 0; border-top: 1px solid #244b5b; border-radius: 0; background: transparent; overflow: visible; }
  .detail-reader .detail-explore-grid > a > :is(img,picture) { width: 4.5rem; height: 4.5rem; aspect-ratio: 1; object-fit: cover; }
  .detail-reader .detail-explore-grid picture img { width: 100%; height: 100%; aspect-ratio: 1; object-fit: cover; }
  .detail-reader .detail-explore-grid > a > span { padding: 0; min-width: 0; }
  .detail-reader .detail-explore-grid small { font-size: .8125rem; line-height: 1.6; }
  .detail-reader .detail-explore-grid small b { margin-bottom: .25rem; }
  .detail-reader .detail-explore-grid strong { display: block; -webkit-line-clamp: unset; overflow: visible; font-size: 1rem; line-height: 1.65; margin-top: .375rem; overflow-wrap: anywhere; }
  .detail-reader .detail-explore-grid em { display: none; }

  /* No.529: compact existing featured rows and independent auxiliary lists. */
  #app .home-dashboard #featured-stories-grid { padding: 0 .9375rem .9375rem; gap: 0; }
  #app .home-dashboard #featured-stories-grid > .change-card { display: grid; grid-template-columns: 4.5rem minmax(0,1fr); grid-template-rows: auto auto auto auto; min-width: 0; padding: .9375rem 0; gap: .25rem .75rem; border: 0; border-top: 1px solid #244b5b; border-radius: 0; background: transparent; }
  #app .home-dashboard #featured-stories-grid .change-card > .card-image { grid-column: 1; grid-row: 1 / -1; align-self: start; width: 4.5rem; height: 4.5rem; aspect-ratio: 1; margin: 0; }
  #app .home-dashboard #featured-stories-grid .card-image img { width: 100%; height: 100%; object-fit: cover; }
  #app .home-dashboard #featured-stories-grid .change-card > .card-date { grid-column: 2; grid-row: 1; margin: 0; padding: 0; border: 0; font-size: .8125rem; line-height: 1.6; color: #b8d0dc; }
  #app .home-dashboard #featured-stories-grid .change-card > .card-labels { grid-column: 2; grid-row: 2; min-height: 0; margin: 0; padding: 0; }
  #app .home-dashboard #featured-stories-grid .card-labels .category { min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: #b8d0dc; font-size: .8125rem; line-height: 1.6; }
  #app .home-dashboard #featured-stories-grid .change-card > h3 { grid-column: 2; grid-row: 3; margin: .15rem 0; font-size: 1.0625rem; line-height: 1.6; overflow-wrap: anywhere; }
  #app .home-dashboard #featured-stories-grid .change-card > .short { grid-column: 2; grid-row: 4; margin: 0; padding: 0; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-size: 1rem; line-height: 1.75; }
  #app .home-dashboard .connection-track > .delta-list-row .delta-list-copy > p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
  #app .home-dashboard .category-stats.is-mobile-collapsed > .category-stat:nth-child(n+6),
  #app .home-dashboard .time-machine-story-list.is-mobile-collapsed > .time-machine-story:nth-child(n+6) { display: none; }
  #app .home-dashboard .time-machine-story-list { max-height: none; overflow: visible; }
}

/* No.531: mobile home composition only; restore the original DOM above 820px. */
@media (max-width: 820px) {
  #app .mobile-home-primary { display: grid; gap: 1rem; width: calc(100% - 1.875rem); margin: 1rem auto 0; font-size: 1rem; }
  #app .mobile-home-primary a { text-decoration: none; }
  #app .mobile-news .delta-list-thumb picture, #app .mobile-topic picture { display: contents; }
  #app .mobile-hero { position: relative; overflow: hidden; border: 1px solid #1a566a; border-radius: .625rem; background: #03141d; }
  #app .mobile-hero-image { position: absolute; inset: 0 0 auto; height: 16rem; pointer-events: none; }
  #app .mobile-hero-image img { width: 100%; height: 100%; object-fit: cover; opacity: .78; }
  #app .mobile-hero-image picture { display: contents; }
  #app .mobile-hero-image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, #03141d 0%, rgba(3,20,29,.4) 50%, rgba(3,20,29,.06) 100%); }
  #app .mobile-hero-label { position: absolute; top: .875rem; left: .875rem; margin: 0; padding: .4rem .7rem; border: 1px solid #398197; border-radius: .35rem; color: #e1faff; background: #07384de8; font-size: .8125rem; font-weight: 700; }
  #app .mobile-hero-copy { position: relative; padding: 10.25rem 1rem 0; }
  #app .mobile-hero-meta { display: flex; flex-wrap: wrap; gap: .375rem .7rem; margin: 0 0 .5rem; font-size: .8125rem; line-height: 1.6; color: #c0e4ed; }
  #app .mobile-hero h1 { margin: 0 0 .75rem; font-size: 1.625rem; line-height: 1.45; font-weight: 700; overflow-wrap: anywhere; }
  #app .mobile-hero h1 a { color: #f5fbff; text-decoration: none; }
  #app .mobile-hero-lead { margin: 0 0 1rem; font-size: 1rem; line-height: 1.75; color: #d4e6ef; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  #app .mobile-hero-read { display: inline-flex; align-items: center; min-height: 2.75rem; padding: .6rem .9rem; border: 1px solid #4bcee6; border-radius: .35rem; color: #dcfaff; font-size: .9375rem; }
  #app .mobile-hero-pagination { position: relative; display: flex; justify-content: flex-end; align-items: center; gap: .5rem; padding: .75rem 1rem; font-size: .875rem; }
  #app .mobile-hero-pagination[hidden] { display: none; }
  #app .mobile-hero-pagination button { width: 2.75rem; min-height: 2.75rem; padding: .25rem; border: 1px solid #24586a; border-radius: 50%; color: #c4f5ff; background: #06202c; font-size: 1.25rem; }
  #app .mobile-category-nav { display: flex; gap: .5rem; overflow-x: auto; padding: .25rem 0 .5rem; scrollbar-width: thin; }
  #app .mobile-category-nav a { display: inline-flex; flex: 0 0 auto; align-items: center; gap: .35rem; min-height: 2.75rem; padding: .5rem .875rem; border: 1px solid #205167; border-radius: 2rem; font-size: .875rem; color: #d9eff7; background: #031a26; white-space: nowrap; }
  #app .mobile-category-nav a.is-current { border-color: #33c8ef; background: #075071; }
  #app .mobile-category-nav img { width: 1.125rem; height: 1.125rem; object-fit: contain; }
  #app .mobile-pulse-summary, #app .mobile-news, #app .mobile-topics, #app .mobile-return-card { border: 1px solid #1a4b60; border-radius: .5rem; background: #041a26; }
  #app .mobile-pulse-summary > summary { display: grid; gap: .65rem; padding: 1rem; cursor: pointer; }
  #app .mobile-pulse-summary > summary > span:nth-child(2) { font-size: 1rem; line-height: 1.6; color: #c2dce8; }
  #app .mobile-pulse-summary > summary > b { font-size: .875rem; color: #75def4; line-height: 1.6; }
  #app .mobile-pulse-summary #world-pulse { width: 100%; margin: 0; border: 0; border-top: 1px solid #1a4b60; padding: 1rem; }
  #app .mobile-pulse-summary .mobile-pulse-body { display: block; width: 100%; margin: 0; padding: 0; }
  #app .mobile-news, #app .mobile-topics { padding: .875rem; }
  #app .mobile-section-heading { display: flex; align-items: center; justify-content: space-between; gap: .5rem; color: #75def4; font-size: 1rem; font-weight: 700; }
  #app .mobile-section-heading h2 { margin: 0; font-size: 1.0625rem; line-height: 1.5; }
  #app .mobile-section-heading > a { flex-shrink: 0; font-size: .75rem; line-height: 1.6; }
  #app .mobile-news .delta-list-row { display: grid; grid-template-columns: 4.5rem minmax(0, 1fr); gap: .75rem; align-items: start; margin: 0; padding: .875rem 0; border: 0; border-top: 1px solid #183d50; border-radius: 0; background: transparent; }
  #app .mobile-news-list { margin-top: .75rem; }
  #app .mobile-news .delta-list-thumb { width: 4.5rem; height: 4.5rem; margin: 0; }
  #app .mobile-news .delta-list-thumb img { width: 100%; height: 100%; object-fit: cover; }
  #app .mobile-news .delta-list-copy { min-width: 0; }
  #app .mobile-news .delta-list-copy > small { font-size: .75rem; line-height: 1.5; }
  #app .mobile-news .delta-list-copy h2 { margin: .3rem 0; font-size: 1rem; line-height: 1.55; overflow-wrap: anywhere; }
  #app .mobile-news .delta-list-copy > p { margin: .3rem 0 0; font-size: 1rem; line-height: 1.65; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
  #app .mobile-news .delta-list-chips { display: none; }
  #app .mobile-topics-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin-top: .875rem; }
  #app .mobile-topic { min-width: 0; overflow: hidden; border: 1px solid #275266; border-radius: .4rem; background: #03131e; padding-bottom: .65rem; }
  #app .mobile-topic > div { height: 7rem; }
  #app .mobile-topic img { width: 100%; height: 100%; object-fit: cover; }
  #app .mobile-topic > span { display: block; margin: .65rem .625rem .35rem; color: #80dcf2; font-size: .75rem; }
  #app .mobile-topic h3 { margin: 0 .625rem; font-size: 1rem; line-height: 1.55; color: #eaf7ff; overflow-wrap: anywhere; }
  #app .mobile-topic p { margin: .5rem .625rem 0; font-size: 1rem; line-height: 1.6; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; color: #c0d9e6; }
  #app .mobile-return-card { padding: 1rem; background: linear-gradient(120deg, #063442, #061923); }
  #app .mobile-return-card > p { margin: 0 0 .65rem; font-size: 1rem; line-height: 1.7; }
  #app .mobile-return-card > p:first-child { font-size: .75rem; color: #75d8eb; letter-spacing: .12em; }
  #app .mobile-return-card h2 { margin: 0 0 .65rem; font-size: 1.125rem; line-height: 1.5; }
  #app .mobile-return-card a { display: inline-flex; align-items: center; min-height: 2.75rem; margin-top: .35rem; padding: .5rem .875rem; border: 1px solid #55cadd; border-radius: .35rem; }
  #app .mobile-home-history { width: calc(100% - 1.875rem); margin: 1rem auto 2rem; border: 1px solid #1a4b60; border-radius: .5rem; background: #041823; }
  #app .mobile-home-history > summary { padding: 1rem; color: #a6eafa; font-size: 1rem; line-height: 1.6; cursor: pointer; }
  #app .mobile-home-history .home-dashboard { display: flex; flex-direction: column; width: 100%; margin: 0; padding: 0; }
}

/* No.532: four visual corrections, mobile home only. */
@media (max-width: 820px) {
  #app .mobile-hero-footer { display: flex; align-items: center; justify-content: space-between; gap: .375rem; padding: 0 1rem 1rem; }
  #app .mobile-hero-footer .mobile-hero-read { flex: 0 0 auto; padding: .5rem .625rem; font-size: .875rem; white-space: nowrap; }
  #app .mobile-hero-footer .mobile-hero-pagination { flex: 0 0 auto; gap: .25rem; padding: 0; white-space: nowrap; }
  #app .mobile-category-nav { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; overflow: visible; padding: 0; }
  #app .mobile-category-nav a { min-width: 0; justify-content: center; gap: .25rem; padding: .4rem .375rem; font-size: .75rem; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; }
  #app .mobile-category-nav img { flex: 0 0 .875rem; width: .875rem; height: .875rem; }
  #app .mobile-category-nav.is-category-collapsed > a:nth-child(n+7) { display: none; }
  #app .mobile-category-expand { display: block; min-height: 2.75rem; margin: .375rem 0 0 auto; padding: .35rem .75rem; border: 0; background: transparent; color: #83def1; font: inherit; font-size: .8125rem; cursor: pointer; }
  #app .mobile-category-expand[hidden] { display: none; }
  #app .mobile-pulse-card { overflow: hidden; border: 1px solid #1a4b60; border-radius: .5rem; background: #041a26; }
  #app .mobile-pulse-intro { padding: 1rem 1rem 0; }
  #app .mobile-pulse-intro h2 { margin: 0; line-height: 1.5; }
  #app .mobile-pulse-intro p { margin: .65rem 0 0; color: #c2dce8; font-size: .875rem; line-height: 1.6; }
  #app .mobile-pulse-quick { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .5rem; padding: 1rem .75rem .5rem; }
  #app .mobile-pulse-quick button { display: grid; justify-items: center; gap: .5rem; padding: 0; border: 0; background: transparent; color: #b9edf8; font: inherit; cursor: pointer; }
  #app .mobile-pulse-quick button > span { display: grid; place-items: center; width: 3.125rem; height: 3.125rem; border: 1px solid #52bad4; border-radius: 50%; background: radial-gradient(circle at 40% 30%,#164d69,#06202e); box-shadow: 0 0 .7rem #0b64834d; font-size: 1.25rem; }
  #app .mobile-pulse-quick button:nth-child(2) > span { border-color: #4dbba9; background: radial-gradient(circle at 40% 30%,#155348,#062c2d); }
  #app .mobile-pulse-quick button:nth-child(3) > span { border-color: #9080ce; background: radial-gradient(circle at 40% 30%,#39366b,#171f38); }
  #app .mobile-pulse-quick b { font-size: .75rem; line-height: 1.5; font-weight: 600; }
  #app .mobile-pulse-card .mobile-pulse-summary { border: 0; border-radius: 0; background: transparent; }
  #app .mobile-pulse-card .mobile-pulse-summary > summary { padding: .75rem 1rem; }
  #app .mobile-news .delta-list-copy > p, #app .mobile-topic p { display: none; }
  #app .mobile-home-primary :is(a,button):focus-visible { outline: 2px solid #81edfa; outline-offset: 3px; }
}

/* No.533: WORLD PULSE visual card only; existing actions and data unchanged. */
@media (max-width: 820px) {
  #app .mobile-pulse-card { border-color: #24637a; background: radial-gradient(ellipse at 20% 0%,#0b344448,transparent 65%),linear-gradient(145deg,#061e2b,#02131e); box-shadow: inset 0 1px 0 #69d3ee10; }
  #app .mobile-pulse-intro { padding: .875rem .875rem 0; }
  #app .mobile-pulse-heading { display: flex; justify-content: space-between; align-items: center; gap: .5rem; }
  #app .mobile-pulse-heading h2 { justify-content: flex-start; gap: .375rem; font-size: .9375rem; letter-spacing: .03em; }
  #app .mobile-pulse-heading h2 img { width: 1.25rem; height: 1.25rem; }
  #app .mobile-pulse-open { flex: 0 0 auto; min-height: 2.75rem; padding: .25rem 0 .25rem .25rem; border: 0; background: transparent; color: #82e5f3; font: inherit; font-size: .6875rem; white-space: nowrap; cursor: pointer; }
  #app .mobile-pulse-intro p { margin-top: .25rem; font-size: .8125rem; line-height: 1.6; }
  #app .mobile-pulse-card .mobile-pulse-quick { gap: .375rem; padding: 1.25rem .75rem 1.125rem; }
  #app .mobile-pulse-card .mobile-pulse-quick button { --orb:#a391ff; align-content: start; gap: .5rem; min-width: 0; color: #d8edf7; }
  #app .mobile-pulse-card .mobile-pulse-quick button:nth-child(2) { --orb:#54dec0; }
  #app .mobile-pulse-card .mobile-pulse-quick button:nth-child(3) { --orb:#67bfff; }
  #app .mobile-pulse-card .mobile-pulse-quick button:nth-child(4) { --orb:#49d8f2; }
  #app .mobile-pulse-card .mobile-pulse-quick button > .mobile-pulse-orb { width: 3.5rem; height: 3.5rem; border: 1px solid var(--orb); color: var(--orb); background: radial-gradient(circle at 40% 30%,#22415c,#061828 75%); box-shadow: 0 0 1rem color-mix(in srgb,var(--orb) 25%,transparent),inset 0 0 .75rem color-mix(in srgb,var(--orb) 12%,transparent); }
  #app .mobile-pulse-orb svg { display: block; width: 2rem; height: 2rem; filter: drop-shadow(0 0 .25rem currentColor); }
  #app .mobile-pulse-card .mobile-pulse-quick b { font-size: .8125rem; line-height: 1.5; color: #e0f5ff; }
  #app .mobile-pulse-quick small { display: block; font-size: .6875rem; line-height: 1.4; color: #91b4c5; }
  #app .mobile-pulse-card .mobile-pulse-summary > summary { display: flex; align-items: center; justify-content: space-between; gap: .5rem; min-height: 2.875rem; padding: .75rem .875rem; border-top: 1px solid #245467; background: #0a2c394d; }
  #app .mobile-pulse-card .mobile-pulse-summary > summary > b { font-size: .8125rem; line-height: 1.6; }
  #app .mobile-pulse-card .mobile-pulse-summary > summary > span { flex: 0 0 auto; font-size: 1.125rem; color: #82e5f3; }
}

/* No.534: published-category growth and retained compact PULSE controls only. */
@media (max-width: 820px) {
  #app .mobile-pulse-growth { display: flex; justify-content: center; align-items: stretch; gap: .375rem; padding: 1rem .75rem .625rem; }
  #app .mobile-pulse-growth-unit { --orb: #a391ff; display: flex; flex: 0 1 calc((100% - 1.125rem) / 4); flex-direction: column; align-items: center; gap: .3125rem; min-width: 0; color: #d8edf7; text-align: center; text-decoration: none; overflow-wrap: anywhere; }
  #app .mobile-pulse-growth-unit:nth-child(2) { --orb: #54dec0; }
  #app .mobile-pulse-growth-unit:nth-child(3) { --orb: #67bfff; }
  #app .mobile-pulse-growth-unit:nth-child(4) { --orb: #49d8f2; }
  #app .mobile-pulse-growth-unit .mobile-pulse-orb { display: grid; place-items: center; width: 3.5rem; height: 3.5rem; border: 1px solid var(--orb); border-radius: 50%; background: radial-gradient(circle at 40% 30%,#22415c,#061828 75%); box-shadow: 0 0 1rem color-mix(in srgb,var(--orb) 25%,transparent); }
  #app .mobile-pulse-growth-unit .mobile-pulse-orb img { display: block; width: 2rem; height: 2rem; object-fit: contain; }
  #app .mobile-pulse-growth-unit b { font-size: .75rem; line-height: 1.4; color: #e0f5ff; }
  #app .mobile-pulse-growth-unit strong { margin-top: auto; font-size: 1rem; line-height: 1.4; color: var(--orb); }
  #app .mobile-pulse-growth-unit small, #app .mobile-pulse-counts { font-size: .6875rem; line-height: 1.4; color: #91b4c5; }
  #app .mobile-pulse-counts { white-space: nowrap; }
  #app .mobile-pulse-growth-empty { margin: 0; padding: 1rem .875rem; font-size: .8125rem; line-height: 1.6; }
  #app .mobile-pulse-card .mobile-pulse-quick { padding: .625rem .875rem .875rem; gap: .375rem; }
  #app .mobile-pulse-card .mobile-pulse-quick button { display: grid; place-items: center; min-height: 2.75rem; padding: .375rem .125rem; border: 1px solid #245467; border-radius: .375rem; background: #0a2c394d; }
  #app .mobile-pulse-card .mobile-pulse-quick b { font-size: .75rem; line-height: 1.4; }
}

/* No.535: remove the mobile record card while retaining its shared controls. */
@media (max-width: 820px) {
  .detail-reader .detail-meta > [data-status],
  .detail-reader .detail-snapshot > :not(.detail-share) { display: none; }
  .detail-reader .detail-snapshot { display: contents; }
  .detail-reader .detail-snapshot > .detail-share { order: 2; }
}

/* No.538: only the four existing mobile Home sections. */
@media (max-width: 820px) {
  #app.home-mobile-ready .mobile-pulse-growth-unit > small { display: none; }

  #app.home-mobile-ready .home-dashboard .connection-track > .delta-list-row {
    display: grid; grid-template-columns: 4.5rem minmax(0, 1fr);
    align-items: start; min-width: 0; min-height: 0; padding: .75rem 0; gap: .75rem;
  }
  #app.home-mobile-ready .home-dashboard .connection-track .delta-list-thumb {
    position: static; width: 4.5rem; min-width: 0; max-width: 100%;
    min-height: 0; height: auto; aspect-ratio: 4 / 3; margin: 0;
  }
  #app.home-mobile-ready .home-dashboard .connection-track .delta-list-thumb > picture {
    display: block; width: 100%; height: 100%;
  }
  #app.home-mobile-ready .home-dashboard .connection-track .delta-list-thumb img {
    display: block; position: static; width: 100%; height: 100%; object-fit: cover;
  }
  #app.home-mobile-ready .home-dashboard .connection-track .delta-list-copy {
    min-width: 0; align-self: start; overflow-wrap: anywhere;
  }

  #app.home-mobile-ready .home-dashboard #featured-stories-grid { grid-auto-rows: auto; align-items: start; }
  #app.home-mobile-ready .home-dashboard #featured-stories-grid > .change-card {
    min-height: 0; height: auto; max-height: none; align-content: start;
    grid-template-rows: auto auto auto; padding-block: .75rem;
  }
  #app.home-mobile-ready .home-dashboard #featured-stories-grid .card-image {
    position: static; grid-row: 1 / 4;
  }
  #app.home-mobile-ready .home-dashboard #featured-stories-grid .card-image > picture {
    display: block; width: 100%; height: 100%;
  }
  #app.home-mobile-ready .home-dashboard #featured-stories-grid :is(.card-date, .card-labels, h3) {
    min-width: 0; align-self: start;
  }
  #app.home-mobile-ready .home-dashboard #featured-stories-grid h3 {
    height: auto; max-height: none; white-space: normal; overflow: visible; -webkit-line-clamp: unset;
  }
  #app.home-mobile-ready .home-dashboard #featured-stories-grid .change-card > .short { display: none; }

  #app.home-mobile-ready .home-dashboard .time-machine-glance { padding-inline: .75rem; }
  #app.home-mobile-ready .home-dashboard .time-machine-story-list {
    min-width: 0; width: 100%; max-width: none; padding-inline: 0;
    grid-template-columns: minmax(0, 1fr);
  }
  #app.home-mobile-ready .home-dashboard .time-machine-story {
    min-width: 0; width: 100%; max-width: none; margin-inline: 0;
  }
  #app.home-mobile-ready .home-dashboard .time-machine-story > b {
    min-width: 0; white-space: normal; overflow-wrap: anywhere;
  }
}

/* No.615: article detail title only; existing local LINE Seed JP Bold. */
.detail-reader .detail-header > #detail-title {
  margin-block: 0;
  padding-block: 0;
  font-family: var(--body-font);
  font-weight: 700;
  width: 100%;
  max-width: none;
  text-wrap: wrap;
}
