/* My Sponsor, Ebby · styles only its pages use, loaded after /shared/deep-dive.css */

/* map (5 · The merry-go-round): the Northeast drawn from real coordinates, with numbered pins that match
   the list beside it. The layout, pins and list are the shared diagram block (.hideout, .house, .hs-pin,
   .hides); the land, water and lines take their colors from the page, so the map follows dark mode. */
.mp-land{fill:var(--card)}
.mp-water{fill:var(--ph)}
.mp-river{fill:none;stroke:var(--ph);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.mp-coast{fill:none;stroke:var(--line-2);stroke-width:1.5}
.mp-border{fill:none;stroke:var(--line-2);stroke-width:1.5;stroke-dasharray:6 5}
.mp-state{font:600 15px var(--sans);letter-spacing:.14em;fill:var(--ink-2);opacity:.8}
.mp-wlab{font:italic 400 18px var(--serif);fill:var(--ink-2)}
.mp-route{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-dasharray:2 7;stroke-linecap:round}
.mp-exit{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-dasharray:9 6}
.mp-exithead{fill:var(--accent)}
.mp-exitlab{font:600 17px var(--sans);fill:var(--accent)}
.mp-dot{fill:var(--ink)}
.mp-lead{stroke:var(--ink-2);stroke-width:1.5}
.mp-map .hs-pin text{font-size:20px}
.hides .when{display:block;margin-top:2px;font:700 12px/1.4 var(--mono);letter-spacing:.06em;color:var(--accent)}

/* sobriety line (7 · Peaceable Street): one line from August 1934 to March 1966. Solid bands are the
   sober stretches that can be dated; hatched bands are the years that were on and off. Each band's place is
   --a to --b, and each mark's is --p, as shares of the span. Phones: a vertical line with labels to the right.
   From 900px: horizontal, marks above the line, year ticks and band labels below.
   Colors checked with the dataviz palette validator (all six checks pass): light #A8431F / #3F6FA8 on the
   band surface #EADDC1; dark #D27B40 / #6E8BD2 on #1E1710. The hatching is a second cue besides color. */
:root{--sb-on:#A8431F;--sb-off:#3F6FA8}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--sb-on:#D27B40;--sb-off:#6E8BD2}}
:root[data-theme="dark"]{--sb-on:#D27B40;--sb-off:#6E8BD2}
.sober{display:grid;gap:24px;margin-top:28px}
@media (min-width:900px){.sober{margin-top:40px;gap:32px}}
.sb-line{position:relative;height:760px;margin-left:64px}
.sb-line::before{content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:var(--line-2)}
.sb-band{position:absolute;left:0;width:18px;top:calc(var(--a) + 1px);height:calc(var(--b) - var(--a) - 2px);border-radius:4px;background:var(--sb-on)}
.sb-band.off{background:repeating-linear-gradient(135deg,var(--sb-off) 0 5px,transparent 5px 8px);box-shadow:inset 0 0 0 1.5px var(--sb-off)}
.sb-tick{position:absolute;right:calc(100% + 10px);top:var(--p);transform:translateY(-50%);font:700 13px/1 var(--mono);color:var(--ink-2)}
.sb-tick::after{content:"";position:absolute;left:calc(100% + 4px);top:50%;width:6px;height:1px;background:var(--line-2)}
.sb-lab,.sb-mark{position:absolute;left:34px;top:var(--q,var(--p));transform:translateY(-50%);white-space:nowrap;font:400 14px/1.3 var(--sans);color:var(--ink)}
.sb-lab b{font-weight:700}
.sb-lab.on b{color:var(--sb-on)}
.sb-lab.off{color:var(--ink-2)}
.sb-mark{color:var(--ink-2);font-style:italic}
.sb-mark .y{font:700 13px/1 var(--mono);font-style:normal;color:var(--ink);margin-right:6px}
.sb-mark::before{content:"";position:absolute;left:-30px;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:1px;transform:rotate(45deg);background:var(--ink-2)}
@media (min-width:900px){
  .sb-line{height:170px;margin-left:0}
  .sb-line::before{left:0;right:0;top:88px;bottom:auto;width:auto;height:2px}
  .sb-band{top:79px;left:calc(var(--a) + 1px);width:calc(var(--b) - var(--a) - 2px);height:20px}
  .sb-tick{right:auto;left:var(--p);top:112px;transform:translateX(-50%)}
  .sb-tick::after{left:50%;top:-8px;width:1px;height:6px}
  .sb-tick.l{transform:none}.sb-tick.l::after{left:0}
  .sb-tick.r{transform:translateX(-100%)}.sb-tick.r::after{left:auto;right:0}
  .sb-lab{top:136px;left:var(--p);transform:translateX(-50%);font-size:13px}
  .sb-lab.l{transform:none}
  .sb-lab.r{transform:translateX(-100%)}
  .sb-lab.hide-wide{display:none}
  .sb-mark{left:var(--p);top:var(--row,44px);transform:none;font-size:13px}
  .sb-mark.r{transform:translateX(-100%)}
  .sb-mark::before{left:-5px;top:18px;bottom:auto;margin:0;width:1px;height:calc(79px - var(--row,44px) - 20px);border-radius:0;transform:none;background:var(--line-2)}
  .sb-mark.r::before{left:auto;right:-5px}
}
.sb-key{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-2);display:grid;grid-template-columns:minmax(0,1fr)}
.sb-key li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;align-items:start;padding:11px 0;border-bottom:1px solid var(--line-2)}
.sb-key .t{font-size:18px;line-height:1.35}
.sb-key .d2{margin-top:2px;font:400 14px/1.5 var(--sans);color:var(--ink-2)}
.sb-sw{display:block;width:24px;height:14px;margin-top:6px;border-radius:3px;background:var(--sb-on)}
.sb-sw.off{background:repeating-linear-gradient(135deg,var(--sb-off) 0 4px,transparent 4px 7px);box-shadow:inset 0 0 0 1.5px var(--sb-off)}
.sb-sw.none{height:0;margin-top:13px;border-radius:0;background:none;border-top:2px solid var(--line-2)}
@media (min-width:900px){.sb-key{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}}
