*,*::before,*::after{box-sizing:border-box}
:root{
  --page:#F2F2F7; --card:#FFF; --panel:#E3E7EA;
  --label:#000; --label-2:rgba(60,60,67,.6); --label-3:rgba(60,60,67,.5);
  --placeholder:rgba(60,60,67,.35);
  --hairline:rgba(60,60,67,.18); --hairline-row:rgba(60,60,67,.12);
  --accent:#007AFF; --chart:#0A5A9C; --chart-fill:rgba(10,90,156,.13);
  --fresh:#34C759; --alert:#FF453A;
  --shadow:0 1px 2px rgba(0,0,0,.05);
  --sev-1:#34C759; --sev-2:#8FD14F; --sev-3:#FFD60A; --sev-4:#FF9F0A; --sev-5:#FF453A;
  --sev-rest:rgba(60,60,67,.18);
}
@media (prefers-color-scheme:dark){
:root{
  --page:#000; --card:#1C1C1E; --panel:#2C2C2E;
  --label:#FFF; --label-2:rgba(235,235,245,.6); --label-3:rgba(235,235,245,.5);
  --placeholder:rgba(235,235,245,.35);
  --hairline:rgba(84,84,88,.65); --hairline-row:rgba(84,84,88,.4);
  --accent:#0A84FF; --chart:#5AA9E6; --chart-fill:rgba(90,169,230,.2);
  --fresh:#30D158;
  --shadow:none;
  --sev-1:#30D158; --sev-2:#9BDD5A;
  --sev-rest:rgba(235,235,245,.22);
}
}
body{
  margin:0;padding:16px 16px 0;
  font:15px/1.4 -apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",sans-serif;
  color:var(--label);background:var(--page);
  -webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;
}
main{max-width:390px;margin:0 auto}
.crumbs{max-width:390px;margin:0 auto 10px;padding:0 2px;font-size:13px;color:var(--label-2)}
.crumbs a{color:var(--label-2);text-decoration:none}
.crumbs span + span::before{content:"\203A";margin:0 6px;color:var(--label-3)}
.card{background:var(--card);border-radius:14px;padding:14px 16px 12px;box-shadow:var(--shadow);margin:0 0 12px}
.panel{background:var(--card);border-radius:14px;padding:0;overflow:hidden;box-shadow:var(--shadow);margin:0 0 12px}
.lbl{margin:0;font-size:15px;font-weight:600;color:var(--label)}
.rule{height:1px;background:var(--hairline);margin:10px -16px 12px}
.panel .rule{margin:10px 0 0}
.head{margin:0 0 14px;padding:0 2px}
h1{margin:0;font-size:24px;line-height:1.15;font-weight:700;letter-spacing:-.5px}
.head-sub{margin:2px 0 0;font-size:15px;color:var(--label-2)}
.head-rule{height:1px;background:var(--hairline);margin:10px 0}
.head-status{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--label-2)}
.dot{width:7px;height:7px;border-radius:50%;background:var(--fresh);flex:none}
.dot-alert{background:var(--alert)}
.sev{display:flex;gap:4px;margin:0 0 12px}
.sev i{flex:1;height:8px;border-radius:4px;background:var(--sev-rest)}
.sev i.on-1{background:var(--sev-1)}.sev i.on-2{background:var(--sev-2)}
.sev i.on-3{background:var(--sev-3)}.sev i.on-4{background:var(--sev-4)}
.sev i.on-5{background:var(--sev-5)}
.sev-none i{background:var(--sev-rest)}
.verdict-text{margin:0;font-size:22px;line-height:1.2;font-weight:600;letter-spacing:-.3px}
.verdict-window{margin:1px 0 0;font-size:15px;color:var(--label-2)}
.verdict-basis{margin:8px 0 0;font-size:13px;line-height:1.4;color:var(--label-3)}
.verdict-summary{margin:10px 0 0;font-size:15px;line-height:1.47;text-wrap:pretty}
.hook{margin:0;font-size:13px;line-height:1.45;color:var(--label-2)}
.hook-link{display:inline-block;margin-top:4px;font-size:15px;font-weight:600;color:var(--accent);text-decoration:none}
.alert{border-left:4px solid var(--alert)}
.alert-event{display:flex;align-items:center;gap:6px;margin:0;font-size:17px;font-weight:700;color:var(--alert)}
.alert-headline{margin:6px 0 0;font-size:15px;font-weight:600}
.alert-body{margin:6px 0 0;font-size:15px;line-height:1.45;color:var(--label-2);white-space:pre-line}
.alert-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px 16px;margin:12px 0 0}
.alert-sub{background:rgba(255,69,58,.05);margin:12px -16px -12px;padding:12px 16px}
.stat-label{margin:0;font-size:11px;color:var(--label-2)}
.stat-value{margin:1px 0 0;font-size:15px;font-weight:600}
.inst{display:flex;gap:14px;align-items:flex-start}
.inst-slot{width:108px;height:108px;flex:none}
.inst-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px;flex:1;min-width:0}
.hero-stat{margin:1px 0 0;font-size:28px;line-height:1.05;font-weight:600;letter-spacing:-.6px;font-variant-numeric:tabular-nums}
.hero-stat .u{font-size:17px;font-weight:400;color:var(--label-2);margin-left:2px}
.hero{margin:2px 0 0;font-size:40px;line-height:1.05;font-weight:600;letter-spacing:-1.2px;font-variant-numeric:tabular-nums}
.hero .u{font-size:20px;font-weight:400;color:var(--label-2);margin-left:3px}
.trace-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px 16px;margin:12px 0 0}
.trace-stats>div{min-width:0}
.tide{display:block;width:100%;height:76px;margin:10px 0 0;color:var(--chart)}
.tide-time{margin:1px 0 0;font-size:24px;line-height:1.1;font-weight:700;letter-spacing:-.5px;font-variant-numeric:tabular-nums}
.trace{display:block;width:100%;height:56px;margin:12px 0 0;color:var(--chart);
  background:repeating-linear-gradient(to right,var(--hairline-row) 0 2px,transparent 2px 6px) 0 50%/100% 1px no-repeat}
.trace-foot{display:flex;justify-content:space-between;gap:12px;margin:4px 0 0;font-size:13px;color:var(--label-2)}
.pair{display:flex;gap:12px;margin:0 0 12px}
.half{flex:0 0 calc((100% - 12px) / 2);background:var(--card);border-radius:14px;padding:13px 14px 11px;box-shadow:var(--shadow);min-width:0}
.half-label{margin:0;font-size:13px;font-weight:600;color:var(--label-2)}
.half-value{margin:2px 0 0;font-size:28px;line-height:1.05;font-weight:600;letter-spacing:-.6px;font-variant-numeric:tabular-nums}
.half-value .u{font-size:17px;font-weight:400;color:var(--label-2)}
.rail{display:block;width:100%;height:18px;margin:6px 0 0;color:var(--chart)}
.half-range{margin:4px 0 0;font-size:11px;color:var(--label-2)}
.prose-row{padding:14px 0}
.prose-row + .prose-row{border-top:1px solid var(--hairline-row)}
.prose-h{margin:0;font-size:15px;font-weight:600;line-height:1.35;text-wrap:pretty}
.prose-p{margin:6px 0 0;font-size:15px;line-height:1.5;color:var(--label-2);text-wrap:pretty}
.credit{margin:10px 0 0;font-size:11px;color:var(--label-3)}
.panel-head{padding:14px 16px 0}
.tbl-head,.tbl-row{display:grid;grid-template-columns:62px 1fr 1fr;gap:10px;padding:7px 16px;align-items:baseline}
.tbl-head{font-size:11px;color:var(--label-3)}
.tbl-row{font-size:15px}
.tbl-row + .tbl-row{border-top:1px solid var(--hairline-row)}
.tbl-time{color:var(--label-2)}
.tbl-v{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
.near-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  padding:11px 16px;text-decoration:none;color:inherit}
.near-row+.near-row{border-top:1px solid var(--hairline-row)}
.near-name{font-size:15px;color:var(--accent);min-width:0;overflow-wrap:anywhere}
.near-dist{font-size:13px;color:var(--label-2);white-space:nowrap;font-variant-numeric:tabular-nums}
.near-foot{padding:12px 16px 14px;border-top:1px solid var(--hairline)}
.tbl-foot{padding:10px 16px 14px;font-size:13px;line-height:1.4;color:var(--label-2)}
.closing{padding:4px 2px 0;font-size:13px;line-height:1.55;color:var(--label-2)}
.closing p{margin:0 0 10px}
.closing-id{font-weight:600;color:var(--label)}
.closing-links a{color:var(--accent);text-decoration:none;margin-right:14px}
.tail{height:64px}
footer{
  position:fixed;left:0;right:0;bottom:0;height:60px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:0 16px calc(env(safe-area-inset-bottom));
  background:var(--card);border-top:1px solid var(--hairline);
}
.foot-mark{margin:0;font-size:15px;font-weight:700;line-height:1.15}
.foot-tag{margin:0;font-size:11px;color:var(--label-2)}
.cta{
  display:inline-flex;align-items:center;justify-content:center;
  padding:9px 15px;border-radius:19px;background:var(--accent);color:#fff;
  text-decoration:none;font-size:15px;font-weight:600;white-space:nowrap;
}
.cta-block{display:flex;width:100%;padding:13px 16px;border-radius:11px;font-size:17px;margin:10px 0 0}