/* Seawater Collection: translucent geo-temporal mesh, kept quiet on paper. */
.room-view[data-room="seawater"] .seawater-space-time {
  width:min(94vw,1260px);
  margin-top:clamp(50px,9vh,116px);
  margin-bottom:clamp(140px,21vh,260px);
}
.room-view[data-room="seawater"] .seawater-space-time-head {
  margin-bottom:10px;border-top-color:rgba(21,23,20,.11);
}
.seawater-space-time-stage {overflow:hidden;}
.seawater-space-time-svg {
  width:100%;height:auto;display:block;overflow:visible;shape-rendering:geometricPrecision;
}
/* The grid is a single rounded interior, not overlapping front/back panels. */
.seawater-map-guide,
.seawater-slice,
.seawater-wall-rail,
.seawater-floor-rail {
  fill:none;
  vector-effect:non-scaling-stroke;
  stroke-linecap:round;
  stroke-linejoin:round;
  pointer-events:none;
}
.seawater-map-guide {stroke:rgba(22,24,23,.23);stroke-width:.67px;}
.seawater-slice {stroke:rgba(22,24,23,.82);stroke-width:.95px;}
.seawater-wall-rail {stroke:rgba(22,24,23,.63);stroke-width:.83px;}
.seawater-floor-rail {stroke:rgba(22,24,23,.58);stroke-width:.73px;}
.seawater-water-block {outline:none;cursor:crosshair;}
.seawater-water-face,
.seawater-water-side,
.seawater-water-top,
.seawater-water-body,
.seawater-water-outline {
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
/* Softer sea-glass: a restrained blue-green tint, a present centre,
   and a visible but gently thinning perimeter (no disappearing edges). */
.seawater-water-volume {
  opacity:.97;
  transition:opacity .2s ease;
}
.seawater-water-body {fill:rgba(75,151,150,.22);stroke:none;}
.seawater-water-core {fill:url(#seawater-water-core-gradient);stroke:none;}
.seawater-water-side {fill:rgba(65,143,147,.28);stroke:none;}
.seawater-water-face {fill:rgba(85,166,166,.32);stroke:none;}
.seawater-water-top {fill:rgba(135,194,185,.31);stroke:none;}
.seawater-water-outline {fill:none;stroke:rgba(80,139,136,.21);stroke-width:.46px;}
.seawater-water-hit {fill:transparent;stroke:none;pointer-events:fill;}
.seawater-water-block:hover .seawater-water-volume,
.seawater-water-block:focus-visible .seawater-water-volume,
.seawater-water-block.is-linked .seawater-water-volume {opacity:1;}
.seawater-water-block:hover .seawater-water-face,
.seawater-water-block:focus-visible .seawater-water-face,
.seawater-water-block.is-linked .seawater-water-face {fill:rgba(68,164,161,.44);}
.seawater-water-block:hover .seawater-water-outline,
.seawater-water-block:focus-visible .seawater-water-outline,
.seawater-water-block.is-linked .seawater-water-outline {
  stroke:rgba(58,129,130,.49);
  stroke-width:.65px;
}
.seawater-water-label {
  fill:rgba(19,37,34,.87);font-family:var(--serif);
  font-size:11px;letter-spacing:.045em;opacity:0;pointer-events:none;
  paint-order:stroke;stroke:rgba(244,243,238,.85);stroke-width:3px;
}
.seawater-water-block:hover .seawater-water-label,
.seawater-water-block:focus-visible .seawater-water-label,
.seawater-water-block.is-linked .seawater-water-label {opacity:1;}
.seawater-coord-key text {
  font:10px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.04em;fill:rgba(23,24,19,.34);
}
.seawater-time-control {max-width:700px;margin:-1px 0 0;color:rgba(23,24,19,.53);}
.seawater-time-control-labels {
  display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  font:9px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.10em;
}
.seawater-time-readout {font-variant-numeric:tabular-nums;color:rgba(23,24,19,.62);}
.seawater-time-slider {
  display:block;width:100%;margin:7px 0 1px;padding:0;height:26px;border:0;border-radius:0;
  appearance:none;-webkit-appearance:none;background:transparent;cursor:ew-resize;touch-action:pan-y;
}
.seawater-time-slider::-webkit-slider-runnable-track {
  height:1px;background:rgba(21,23,20,.48);border:0;
}
.seawater-time-slider::-moz-range-track {
  height:1px;background:rgba(21,23,20,.48);border:0;
}
.seawater-time-slider::-webkit-slider-thumb {
  -webkit-appearance:none;appearance:none;width:14px;height:14px;
  border:1px solid rgba(69,102,100,.29);border-radius:4px;
  background:rgba(126,158,153,.74);margin-top:-7px;
}
.seawater-time-slider::-moz-range-thumb {
  width:14px;height:14px;border:1px solid rgba(15,100,99,.26);
  border-radius:4px;background:rgba(126,158,153,.74);
}
.seawater-time-slider:focus-visible {outline:1px solid rgba(15,126,124,.65);outline-offset:4px;}
.seawater-time-control-endpoints {
  display:flex;justify-content:space-between;color:rgba(23,24,19,.30);
  font:8px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.06em;
}
.seawater-space-time-note {
  margin-top:24px;font-size:9px;max-width:760px;color:rgba(23,24,19,.47);line-height:1.8;
}
.seawater-space-time-essay {margin-top:26px;max-width:780px;}
.seawater-chart-prototype {
  margin:15px 0 0;font:8px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  color:rgba(23,24,19,.29);letter-spacing:.03em;
}
@media (max-width:760px) {
  .room-view[data-room="seawater"] .seawater-space-time {
    margin-top:45px;margin-bottom:125px;padding:0 10px;
  }
  .seawater-space-time-stage {
    overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;
  }
  .seawater-space-time-svg {width:920px;max-width:none;}
  .seawater-time-control {max-width:100%;padding:0 4px;}
  .seawater-space-time-essay {font-size:11px;padding-right:9px;}
  .seawater-coord-key text {font-size:12px;}
}

/* Small-label legibility pass — do not change the spatial diagram itself. */
.seawater-water-label {font-size:13px;}
.seawater-coord-key text {font-size:12px;}
.seawater-time-control-labels {
  font-size:11px;
  font-family:var(--serif);
  letter-spacing:.065em;
}
.seawater-time-control-endpoints {
  font-size:10px;
  font-family:var(--serif);
}
.seawater-space-time-note {font-size:12px;line-height:1.75;}
.seawater-chart-prototype {
  font-size:10px;
  font-family:var(--serif);
}
@media (max-width:760px) {
  .seawater-time-control-labels {font-size:11px;}
  .seawater-time-control-endpoints {font-size:10px;}
  .seawater-space-time-note {font-size:11px;}
  .seawater-chart-prototype {font-size:10px;}
}


/* Transcribed sampling ledger, linked by original record index to SVG cubes.
   Two flowing columns, not cards; on mobile the chronology stays vertical. */
.room-view[data-room="seawater"] .seawater-locations {
  box-sizing:border-box;
  width:100%;
  max-width:1110px;
  margin:clamp(61px,8vw,118px) 0 0;
  padding:clamp(19px,2.3vw,32px) 0 0;
  border-top:1px solid rgba(36,43,40,.18);
}
.seawater-locations-header {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:18px;
  margin:0 0 clamp(24px,3vw,44px);
}
.seawater-locations-header h3 {
  margin:0;
  color:rgba(31,38,36,.85);
  font:400 clamp(17px,1.4vw,21px)/1.5 var(--serif),serif;
  letter-spacing:.025em;
}
.seawater-locations-header > span {
  flex:none;
  color:rgba(35,43,40,.43);
  font:400 clamp(11px,.95vw,13px)/1.5 var(--serif),serif;
  letter-spacing:.02em;
}
.seawater-locations-list {
  display:block;
  columns:2;
  column-gap:clamp(25px,5vw,76px);
  margin:0;
  padding:0;
  list-style:none;
}
.seawater-location-item {
  display:grid;
  grid-template-columns:24px minmax(0,1fr) auto;
  align-items:baseline;
  gap:clamp(9px,1.4vw,19px);
  min-width:0;
  margin:0;
  padding:clamp(12px,1.45vw,18px) 0;
  border-bottom:1px solid rgba(30,40,37,.11);
  outline:0;
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  transition:border-color .16s ease,color .16s ease;
}
.seawater-location-item:hover,
.seawater-location-item:focus-visible,
.seawater-location-item.is-linked {
  border-bottom-color:rgba(73,95,91,.42);
}
.seawater-location-item:focus-visible {
  outline:1px solid rgba(80,105,100,.35);
  outline-offset:4px;
}
.seawater-location-number {
  font:400 clamp(10px,.93vw,12px)/1.65 var(--serif),serif;
  font-variant-numeric:tabular-nums;
  color:rgba(40,53,49,.37);
}
.seawater-location-place {
  display:flex;
  flex-direction:column;
  min-width:0;
  gap:3px;
}
.seawater-location-name {
  color:rgba(36,46,42,.83);
  font:400 clamp(13px,1.13vw,16px)/1.6 var(--serif),serif;
  letter-spacing:.01em;
}
.seawater-location-coordinates {
  color:rgba(50,67,62,.50);
  font:400 clamp(9px,.84vw,11px)/1.8 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.005em;
  white-space:normal;
  overflow-wrap:anywhere;
  font-variant-numeric:tabular-nums;
}
.seawater-location-date {
  color:rgba(44,54,50,.56);
  font:400 clamp(10px,.9vw,12px)/1.7 var(--serif),serif;
  font-variant-numeric:tabular-nums;
  letter-spacing:.015em;
  white-space:nowrap;
}
.seawater-location-item.is-linked .seawater-location-name,
.seawater-location-item:focus-visible .seawater-location-name {
  color:rgba(26,68,65,.93);
}
@media (max-width:760px) {
  .room-view[data-room="seawater"] .seawater-locations {
    margin-top:66px;
    padding-top:23px;
  }
  .seawater-locations-list {columns:1;}
  .seawater-locations-header {margin-bottom:16px;}
  .seawater-locations-header h3 {font-size:18px;}
  .seawater-location-item {grid-template-columns:23px minmax(0,1fr) auto;gap:9px;padding:14px 0;}
  .seawater-location-name {font-size:14px;}
  .seawater-location-coordinates {font-size:10px;}
  .seawater-location-date {font-size:11px;}
}
@media (prefers-reduced-motion:reduce) {
  .seawater-water-volume,
  .seawater-location-item {transition:none;}
}
