/* Layout: a storm-slate header band over almanac reference tables and county sheets. Line-blue is the only mark color. */
@font-face{font-family:"Barlow Condensed";font-weight:500;font-display:swap;src:url(fonts/barlow-condensed-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-weight:600;font-display:swap;src:url(fonts/barlow-condensed-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-weight:400;font-display:swap;src:url(fonts/public-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-weight:500;font-display:swap;src:url(fonts/public-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-weight:600;font-display:swap;src:url(fonts/public-sans-latin-600-normal.woff2) format("woff2")}
:root{
  --bg:#EEF2F5;--surface:#FFFFFF;--ink:#14222C;--ink2:#47596A;--ink3:#5A6C7C;--rule:#D5DEE5;--mark:#0B76A6;--mark-soft:#C9DCE7;--focus:#0B76A6;
  --band:#14222C;--band-ink:#F1F5F8;--band-ink2:#B7C5D0;--band-rule:#2F4150;--band-mark:#6FC3E3;
  --display:"Barlow Condensed","Arial Narrow",Arial,sans-serif;--body:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0F171D;--surface:#172027;--ink:#E9EFF3;--ink2:#AEBCC7;--ink3:#8D9DAA;--rule:#2B3944;--mark:#2F96BD;--mark-soft:#2C4655;--focus:#6FC3E3;--band:#0A1116;--band-ink:#F1F5F8;--band-ink2:#AEBCC7;--band-rule:#26343E;--band-mark:#6FC3E3;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#0F171D;--surface:#172027;--ink:#E9EFF3;--ink2:#AEBCC7;--ink3:#8D9DAA;--rule:#2B3944;--mark:#2F96BD;--mark-soft:#2C4655;--focus:#6FC3E3;--band:#0A1116;--band-ink:#F1F5F8;--band-ink2:#AEBCC7;--band-rule:#26343E;--band-mark:#6FC3E3;color-scheme:dark}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.55 var(--body)}
.wrap{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.in{max-width:860px;margin:0 auto;min-width:0}
h1,h2,h3{font-family:var(--display);font-weight:600;letter-spacing:.005em;line-height:1.05;margin:0;text-wrap:balance}
h1{font-size:clamp(2.5rem,7.5vw,4rem)}
h2{font-size:1.7rem}
h3{font-size:1.3rem}
p{margin:0}
a{color:inherit;text-underline-offset:2px}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.band{background:var(--band);color:var(--band-ink);--focus:var(--band-mark)}
.bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 24px;padding-block:14px;border-bottom:1px solid var(--band-rule)}
.brand{display:inline-flex;align-items:center;gap:9px;font:600 1.3rem/1 var(--display);letter-spacing:.05em;text-transform:uppercase;text-decoration:none}
.brand svg{width:26px;height:20px;fill:var(--band-mark)}
.bar nav{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:.92rem;color:var(--band-ink2)}
.bar nav a{text-decoration:none}
.bar nav a:hover{color:var(--band-ink);text-decoration:underline}
.hero{display:grid;gap:12px;padding-block:clamp(28px,6vw,52px) clamp(28px,5vw,44px)}
.hero p{color:var(--band-ink2);max-width:60ch}
.crumbs{font-size:.86rem;color:var(--band-ink2);display:flex;flex-wrap:wrap;gap:4px 8px}
.crumbs span[aria-hidden]{opacity:.6}
.picks{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;max-width:640px;align-items:end;margin-top:8px}
.pick{display:grid;gap:5px;min-width:0}
.pick label,.lab{font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.band .pick label{color:var(--band-ink2)}
.lab,.sheet .pick label{color:var(--ink3)}
select,input[type=email]{font:500 1.02rem var(--body);color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:6px;padding:10px 12px;width:100%;min-width:0}
button.go{font:600 1rem var(--body);color:var(--band);background:var(--band-mark);border:0;border-radius:6px;padding:11px 18px;cursor:pointer;white-space:nowrap}
button.go:disabled{opacity:.55;cursor:not-allowed}
.sheet button.go{background:var(--mark);color:var(--surface)}
.page{padding-block:24px 40px}
.page>.in{display:grid;gap:18px}
.sheet{background:var(--surface);border:1px solid var(--rule);border-radius:8px;padding:clamp(18px,4vw,28px);display:grid;gap:16px;min-width:0}
.prose{display:grid;gap:12px;max-width:66ch}
.prose ul{margin:0;padding-left:1.15em;display:grid;gap:6px}
.lede{color:var(--ink2);max-width:64ch}
.sub{color:var(--ink2);font-size:.92rem}
h2+.sub{margin-top:6px}
.note{font-size:.84rem;color:var(--ink3)}
.tier{justify-self:start;display:inline-flex;gap:9px;align-items:center;font-size:.82rem;font-weight:600;border:1px solid var(--rule);border-radius:999px;padding:4px 12px}
.q{display:inline-flex;gap:2px;align-items:flex-end}
.q i{width:6px;height:13px;background:var(--mark-soft);border-radius:1px}
.q i.on{background:var(--mark)}
.read{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;border-block:1px solid var(--rule);padding-block:16px}
.read div{min-width:0}
.read b{display:block;font:600 2.1rem/1.1 var(--display)}
.read span{display:block;font-size:.84rem;color:var(--ink2);line-height:1.3}
.strip{display:grid;gap:6px}
.ticks{display:flex;align-items:flex-end;gap:1px;height:30px}
.ticks i{flex:1 1 0;min-width:0;height:12px;background:var(--mark-soft);border-radius:1px}
.ticks i.on{height:30px;background:var(--mark)}
.ends{display:flex;justify-content:space-between;font-size:.8rem;color:var(--ink3);gap:12px}
.chart{display:grid;gap:8px;position:relative;min-width:0}
.plot{position:relative;height:190px;margin-left:44px;margin-top:18px}
.grid{position:absolute;left:0;right:0;border-top:1px solid var(--rule)}
.grid span{position:absolute;right:calc(100% + 8px);top:-.65em;font-size:.76rem;color:var(--ink3);white-space:nowrap;font-variant-numeric:tabular-nums}
.bars{position:absolute;inset:0;display:flex;align-items:flex-end}
.col{flex:1 1 0;min-width:0;height:100%;display:flex;align-items:flex-end;justify-content:center;position:relative;border:0;background:none;padding:0;color:inherit;font:inherit;cursor:default}
.col i{display:block;width:min(70%,24px);background:var(--mark);border-radius:4px 4px 0 0;min-height:1px}
.col em{position:absolute;left:50%;transform:translateX(-50%);font-style:normal;font-size:.8rem;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.xs{display:flex;margin-left:44px;font-size:.76rem;color:var(--ink3)}
.xs span{flex:1 1 0;min-width:0;text-align:center}
.xs b{font-weight:400}.xs .short{display:none}
.tip{position:absolute;z-index:3;pointer-events:none;background:var(--ink);color:var(--surface);font-size:.82rem;line-height:1.35;border-radius:6px;padding:6px 9px;max-width:220px;transform:translate(-50%,-100%)}
details summary{cursor:pointer;color:var(--ink2);font-size:.88rem}
.scroll{overflow-x:auto;min-width:0}
table{border-collapse:collapse;width:100%;font-size:.92rem;font-variant-numeric:tabular-nums}
th{font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink3);text-align:left;font-weight:600;vertical-align:bottom}
th,td{padding:8px 14px 8px 0;border-bottom:1px solid var(--rule);white-space:nowrap}
td:last-child,th:last-child{padding-right:0}
td.n,th.n{text-align:right}
.almanac{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(25,auto);grid-auto-flow:column;gap:0 36px}
.row{display:grid;grid-template-columns:1.6em minmax(0,7.5em) minmax(0,1fr) 3.1em;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--rule);font-size:.93rem;text-decoration:none;font-variant-numeric:tabular-nums}
a.row:hover .nm{text-decoration:underline}
.row .rk{color:var(--ink3);font-size:.8rem;text-align:right}
.row .nm{overflow-wrap:anywhere;line-height:1.2}
.row .tr{height:10px}
.row .tr i{display:block;height:100%;background:var(--mark);border-radius:0 4px 4px 0;min-width:1px}
.row .val{text-align:right;font-weight:600;font-size:.86rem}
.loads{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}
.loads label{font-size:.95rem;line-height:1.3;display:flex;gap:9px;align-items:flex-start}
.loads input{margin-top:3px;accent-color:var(--mark)}
.hrs{display:grid;gap:6px}
input[type=range]{width:100%;accent-color:var(--mark)}
.need{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;border-top:1px solid var(--rule);padding-top:14px}
.need b{font:600 2.3rem/1 var(--display);font-variant-numeric:tabular-nums}
.signup{background:var(--band);color:var(--band-ink);border-radius:8px;padding:clamp(18px,4vw,28px);display:grid;gap:12px;--focus:var(--band-mark)}
.signup p{color:var(--band-ink2);max-width:58ch}
.signup form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;max-width:480px}
.signup .fine{font-size:.82rem}
.signup .fine a{color:var(--band-ink)}
.links{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px 18px;margin:0;padding:0;list-style:none}
.check{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.check li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px}
.check li::before{content:"";width:15px;height:15px;border:1.5px solid var(--ink3);border-radius:3px;margin-top:4px}
.notice{border:1px solid var(--rule);border-radius:8px;padding:12px 14px;font-size:.92rem;color:var(--ink2);background:var(--surface)}
.foot{padding-block:0 36px;color:var(--ink3);font-size:.84rem}
.foot .in{display:grid;gap:10px;border-top:1px solid var(--rule);padding-top:18px}
.foot ul{display:flex;flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;list-style:none}
@media (max-width:720px){.almanac{grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-auto-flow:row}}
@media (max-width:620px){.xs .long{display:none}.xs .short{display:inline}.read{grid-template-columns:repeat(2,minmax(0,1fr))}.loads{grid-template-columns:1fr}.plot,.xs{margin-left:38px}.picks{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.picks .go{grid-column:1/-1}}
@media (max-width:420px){.picks{grid-template-columns:minmax(0,1fr)}.signup form{grid-template-columns:minmax(0,1fr)}}
@media print{.band nav,.picks,.signup,.foot{display:none}.band{background:none;color:#000}.hero p{color:#000}.sheet{border:0;padding:0}}
