/* Harbor Watch: restrained shipboard lookout; information first, never a checkout control. */
.wu-pool-grid:has(> :only-child){grid-template-columns:unset;justify-content:stretch}
.wu-pool-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.h2a-pool-card{position:relative;min-width:0;overflow:hidden}
.h2a-pool-card .h2a-pool-card-number{font-variant-numeric:tabular-nums}
.h2a-harbor-watch{display:grid;grid-template-columns:76px minmax(0,1fr);
  align-items:center;gap:13px;margin:16px 0;padding:10px 12px;border-radius:12px;
  background:linear-gradient(130deg,rgba(19,57,72,.07),rgba(202,172,113,.11));
  border:1px solid rgba(61,93,100,.26);color:#2e444c}
.h2a-harbor-watch.is-review{background:linear-gradient(135deg,#f8eee0,#f3e2d1);
  border-color:#bd9a65}
.h2a-harbor-watch.is-recovery{background:#edf4f1;border-color:#6c9888}
.h2a-watchstander-scene{position:relative;height:87px;min-width:68px;
  transform:translateZ(0)}
.h2a-watchstander-scene span{display:block;position:absolute}
.h2a-watchstander-roof{left:4px;right:3px;top:10px;height:10px;
  clip-path:polygon(0% 100%,20% 0%,80% 0%,100% 100%);background:#344e5c}
.h2a-watchstander-post{left:13px;right:11px;top:20px;height:52px;
  border-left:3px solid #607f89;border-right:3px solid #607f89;
  background:linear-gradient(110deg,#e7e9e1,#d6dcd6)}
.h2a-watchstander-head{left:28px;top:29px;width:19px;height:18px;
  background:#b38f72;border-radius:45% 45% 46% 46%}
.h2a-watchstander-cap{left:24px;top:26px;width:29px;height:6px;
  background:#2b4353;border-radius:8px 8px 2px 2px;transform:rotate(-5deg)}
.h2a-watchstander-scope{left:23px;top:42px;width:33px;height:8px;
  background:linear-gradient(90deg,#233e50 0 42%,#b79c65 42% 51%,#233e50 51%);
  border-radius:4px;transform:rotate(-12deg)}
.h2a-watchstander-deck{left:4px;right:2px;top:68px;height:7px;
  background:#ad9467;border-radius:2px}
.h2a-watchstander-water{left:0;right:0;bottom:1px;height:9px;
  border-bottom:3px solid #7696a0;border-radius:45%;opacity:.8}
.h2a-watchstander-copy{min-width:0;line-height:1.35}
.h2a-watchstander-eyebrow{display:block;font-size:.65rem;font-weight:800;
  letter-spacing:.08em;opacity:.8;margin-bottom:3px}
.h2a-watchstander-copy>strong{display:block;font-size:.77rem;
  letter-spacing:.025em;overflow-wrap:anywhere}
.h2a-watchstander-details{margin-top:5px;font-size:.74rem}
.h2a-watchstander-details summary{cursor:pointer;text-decoration:underline;
  text-underline-offset:2px;font-weight:600}
.h2a-watchstander-details summary:focus-visible{outline:3px solid #af915e;outline-offset:3px}
.h2a-watchstander-details p{margin:7px 0 0;line-height:1.55}
.h2a-shark-watch-sign{display:grid;gap:5px;margin:2px 0 14px;padding:13px 16px;
  border:2px solid #ae8755;border-radius:10px;background:rgba(248,233,211,.95);
  box-shadow:0 4px 14px rgba(35,54,58,.07);color:#3a332b}
.h2a-shark-watch-sign>span{font-size:.7rem;letter-spacing:.17em;font-weight:800}
.h2a-shark-watch-sign strong{line-height:1.35;font-size:.98rem}
.h2a-shark-watch-sign small{font-size:.78rem;line-height:1.5}
.h2a-deadline-live{font-weight:750;font-variant-numeric:tabular-nums}
@media(max-width:1080px){.wu-pool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.wu-pool-grid{grid-template-columns:minmax(0,1fr)}
 .h2a-harbor-watch{grid-template-columns:70px minmax(0,1fr)}
 .h2a-watchstander-scene{height:82px}}
@media(prefers-reduced-motion:no-preference){
 .h2a-harbor-watch.is-open .h2a-watchstander-scope{animation:h2a-watch-scan 8s ease-in-out infinite}
 @keyframes h2a-watch-scan{0%,100%{transform:rotate(-12deg)}50%{transform:rotate(-3deg)}}
}


/* Sounding line — realistically shaded three-strand hemp/manila cable.
   SVG paths form small overhand knots rather than square/diamond tokens.
   Decorative only; no transitions or distracting movement. */
.h2a-rope-meter{--rope-brass:#a88449;position:relative;margin:15px 0 22px;
  padding:0 0 2px;min-width:0;color:#4a5a5e}
.h2a-rope-strand{display:block;width:100%;min-width:0;overflow:visible}
.h2a-rope-svg{display:block;width:100%;height:auto;overflow:visible}
.h2a-rope-svg path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.h2a-rope-cable-outline{stroke:#594b39;stroke-width:15}
.h2a-rope-cable-core{stroke-width:11.5}
.h2a-rope-cable-weave{stroke-width:7;opacity:.72}
.h2a-rope-knot{opacity:.31;filter:grayscale(.8)}
.h2a-rope-knot.is-tied{opacity:1;filter:none}
.h2a-rope-knot .h2a-knot-outline{stroke:#615039;stroke-width:13}
.h2a-rope-knot .h2a-knot-body{stroke-width:10.7}
.h2a-rope-knot .h2a-knot-weave{stroke-width:6.5;opacity:.7}
.h2a-rope-knot .h2a-knot-cross-outline{stroke:#4f3e2d;stroke-width:14}
.h2a-rope-knot .h2a-knot-cross{stroke-width:11.5}
.h2a-rope-knot .h2a-knot-cross-weave{stroke-width:6.2;opacity:.67}
.h2a-rope-brass-pin{fill:#b6a079;stroke:#766441;stroke-width:1.2}
.h2a-rope-knot.is-mark.is-tied .h2a-rope-brass-pin{fill:#ba904e;stroke:#785b32;stroke-width:1.5}
.h2a-rope-milestones{position:relative;height:39px;margin-top:-9px;color:#536167}
.h2a-rope-milestone{position:absolute;
  left:calc((var(--knot) - .5) / 13 * 100%);transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;white-space:nowrap;gap:2px;
  line-height:1.08}
.h2a-rope-milestone::before{content:"";height:7px;width:1px;background:#9b9a8b}
.h2a-rope-milestone b{font-size:.66rem;font-variant-numeric:tabular-nums;
  letter-spacing:.1em;color:#81724f}
.h2a-rope-milestone em{font-style:normal;font-size:clamp(.57rem,.72vw,.67rem);
  font-weight:650;letter-spacing:.006em}
.h2a-rope-milestone.is-achieved b,.h2a-rope-milestone.is-achieved em{color:#285566}
.h2a-rope-meter.is-detailed{max-width:770px;margin:17px 0 23px}
.h2a-rope-meter.is-detailed .h2a-rope-milestone em{font-size:.77rem}
.h2a-rope-meter.is-detailed .h2a-rope-milestones{margin-top:-13px}
@media(max-width:700px){
  .h2a-rope-meter{margin:12px 0 19px}
  .h2a-rope-milestones{margin-top:-5px}
  .h2a-rope-milestone em{font-size:.59rem}
  .h2a-rope-meter.is-detailed .h2a-rope-milestone em{font-size:.68rem}
}
@media(max-width:360px){
  .h2a-rope-milestone em{font-size:.54rem}
  .h2a-rope-milestone b{font-size:.6rem}
  .h2a-rope-milestones{height:38px}
}
