/* The shipping card (partials/shipping-card.njk), on the harbour conditions
   page and each race's page, which name this file in their front matter's
   `stylesheets` so site.css stays inside its weight budget: one row a ship,
   its time in a fixed column so the times line up, and the ships that cross
   the whole course marked by a red rule as well as their words. */
.ship-card { background: var(--card); border: 1px solid var(--canvas-2); border-top: 3px solid var(--emblem); padding: .8rem 1rem .6rem; margin: 1.25rem 0; max-width: 46rem; }
.ship-card[hidden] { display: none; }
.ship-card h2 { margin: 0 0 .3rem; font-size: 1.25rem; }
.ship-card p { margin: .3rem 0 0; }
.ship-for, .ship-window, .ship-read, .ship-source { font-size: .9rem; color: var(--slate); }
.ship-status { font-size: .95rem; }
.ship-status[hidden], .ship-list[hidden], .ship-for[hidden], .ship-window[hidden], .ship-read[hidden] { display: none; }
.ship-list { list-style: none; margin: .6rem 0 0; padding: 0; border-top: 1px solid var(--canvas-2); }
.ship-row { display: flex; gap: .75rem; padding: .55rem 0 .55rem .6rem; border-bottom: 1px solid var(--canvas-2); border-left: 4px solid transparent; }
.ship-row.is-whole-course { border-left-color: var(--emblem); }
.ship-time { flex: none; width: 3.1rem; font-weight: 700; font-size: 1.05rem; color: var(--navy); font-family: var(--sans); font-variant-numeric: tabular-nums; }
.ship-body { min-width: 0; flex: 1; }
.ship-card .ship-body p { margin: 0; }
.ship-name { font-size: 1rem; overflow-wrap: anywhere; }
.ship-detail { font-size: .9rem; color: var(--slate); font-variant-numeric: tabular-nums; }
.ship-card .ship-route { margin-top: .15rem; font-size: .9rem; font-weight: 600; color: var(--navy-2); }
.ship-row.is-whole-course .ship-route { color: var(--emblem-ink); }
.ship-rules { margin: .7rem 0 0; padding-left: 1.2rem; font-size: .95rem; }
.ship-vts { font-variant-numeric: tabular-nums; }
/* The harbour movements page: a list a day under the day's name. */
.ship-day { margin: 1rem 0 0; font-family: var(--sans); font-size: 1rem; font-weight: 700; color: var(--navy); }
.ship-day + .ship-list { margin-top: .35rem; }
.ship-rules li + li { margin-top: .25rem; }
