:root{
  --sea-900:#071824;
  --sea-800:#0B2233;
  --sea-700:#12324A;
  --sea-600:#1C4763;
  --sea-line:rgba(224,163,46,.14);
  --parch:#F2E6C9;
  --parch-2:#E8D7AE;
  --parch-edge:#BFA36A;
  --ink:#2B1F12;
  --ink-soft:#5A4630;
  --amber:#E0A32E;
  --amber-ink:#8A5A08;
  --coral:#E5624B;
  --coral-ink:#A3321F;
  --mist:#C9D8E2;
  --ok:#2F7A5C;
  --r:4px;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SFMono-Regular","SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.65 var(--sans);color:var(--mist);background-color:var(--sea-800);
  background-image:linear-gradient(var(--sea-line) 1px,transparent 1px),linear-gradient(90deg,var(--sea-line) 1px,transparent 1px);
  background-size:64px 64px;background-attachment:fixed;overflow-x:hidden}
a{color:var(--amber)}
a:hover{color:#F4C25E}
img,svg{max-width:100%}
.cm-num{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.cm-skip{position:absolute;left:-999px;top:0;background:var(--amber);color:var(--sea-900);padding:8px 12px;z-index:9}
.cm-skip:focus{left:8px}
.cm-wrap{width:100%;max-width:1080px;margin:0 auto;padding:0 18px}
.cm-stack>*+*{margin-top:28px}

/* banner */
.cm-banner{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center;padding:7px 14px;background:var(--sea-900);border-bottom:1px solid var(--amber);color:var(--parch);font-size:14px;text-align:center}
.cm-banner strong{color:var(--amber)}
.cm-banner__flag{width:10px;height:10px;border:2px solid var(--coral);transform:rotate(45deg);display:inline-block;margin-right:4px}
.cm-banner b{color:var(--amber)}

/* header */
.cm-header{border-bottom:1px solid var(--sea-600);background:rgba(7,24,36,.85)}
.cm-header__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;padding-top:10px;padding-bottom:10px}
.cm-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--parch);min-height:44px}
.cm-brand__name{font-family:var(--serif);font-size:22px;font-weight:700;letter-spacing:.02em}
.cm-brand__name span{color:var(--amber)}
.cm-nav{display:flex;flex-wrap:wrap;gap:2px}
.cm-nav a{display:flex;flex-direction:column;justify-content:center;min-height:44px;padding:4px 12px;color:var(--mist);text-decoration:none;font-size:15px;border:1px solid transparent;border-radius:var(--r);line-height:1.2}
.cm-nav a small{font-size:11px;color:#8FA6B6;letter-spacing:.04em;text-transform:uppercase}
.cm-nav a:hover{border-color:var(--sea-600);color:var(--parch)}
.cm-nav a[aria-current=page]{border-color:var(--amber);color:var(--amber)}

/* hero */
.cm-hero{padding:30px 0 26px;border-bottom:1px dashed var(--sea-600)}
.cm-kicker{margin:0 0 6px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}
.cm-hero h1{margin:0;font-family:var(--serif);font-weight:700;color:var(--parch);font-size:clamp(30px,5.6vw,50px);line-height:1.08}
.cm-answer{margin:12px 0 0;font-size:19px;color:var(--parch);max-width:44em}
.cm-answer strong{color:var(--amber);font-family:var(--mono);font-weight:700}
.cm-hero__grid{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;align-items:end}
.cm-tally{display:grid;grid-template-columns:1fr 1fr;margin:0;border:1px solid var(--amber);border-radius:var(--r)}
.cm-tally div{padding:10px 14px;border-right:1px solid var(--sea-600);border-bottom:1px solid var(--sea-600)}
.cm-tally div:nth-child(2n){border-right:0}
.cm-tally div:nth-child(n+3){border-bottom:0}
.cm-tally dt{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8FA6B6}
.cm-tally dd{margin:0;font-size:34px;color:var(--amber);line-height:1.1}

/* cards */
.cm-card{background:var(--parch);color:var(--ink);border:1px solid var(--parch-edge);border-radius:var(--r);padding:18px;min-width:0}
.cm-card h2,.cm-card h3{font-family:var(--serif);color:var(--ink);margin:0 0 8px}
.cm-card a{color:var(--amber-ink)}
.cm-card__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;margin-bottom:8px}
.cm-card__head h2{font-size:24px;margin:0}
.cm-hint{font-size:13px;color:var(--ink-soft);margin:0}
.cm-fine{font-size:14px;color:var(--ink-soft);margin:10px 0 0}
.cm-pill{display:inline-block;padding:0 8px;border:1px solid var(--amber-ink);border-radius:var(--r);font-size:15px;color:var(--amber-ink)}

/* tables */
.cm-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.cm-table{width:100%;border-collapse:collapse;font-size:16px;min-width:520px}
.cm-table--mini{min-width:0}
.cm-table th,.cm-table td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--parch-2);vertical-align:middle}
.cm-table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);border-bottom:1px solid var(--parch-edge);white-space:nowrap}
.cm-table tbody th{font-weight:600}
.cm-table tfoot th,.cm-table tfoot td{border-top:1px solid var(--parch-edge);border-bottom:0;font-weight:700}
.cm-table .cm-num{text-align:right}
.cm-strong{font-weight:700;color:var(--ink)}
.cm-table thead button{all:unset;cursor:pointer;min-height:44px;display:inline-flex;align-items:center;gap:4px}
.cm-table thead button:focus-visible{outline:2px solid var(--amber-ink)}
.cm-table th[aria-sort=descending] button::after{content:"\25BE"}
.cm-table th[aria-sort=ascending] button::after{content:"\25B4"}
.cm-table--sort tbody tr{cursor:pointer}
.cm-table--sort tbody tr:hover{background:var(--parch-2)}
.cm-table--sort tbody tr.is-hi{background:#F6D38A;outline:1px solid var(--amber-ink)}
.cm-table tr:focus-visible{outline:2px solid var(--amber-ink)}
.cm-col-bar{min-width:150px}
.cm-bar{display:inline-block;width:90px;height:8px;border:1px solid var(--parch-edge);border-radius:2px;vertical-align:middle;margin-right:8px;background:var(--parch-2)}
.cm-bar i{display:block;height:100%;background:var(--amber-ink)}
.cm-bar__pct{font-size:14px}

/* sections & prose */
.cm-section h2,.cm-prose h2{font-family:var(--serif);color:var(--parch);font-size:clamp(23px,3.4vw,30px);line-height:1.2;margin:0 0 10px;padding-top:6px;border-top:1px solid var(--sea-600)}
.cm-section>p,.cm-prose p,.cm-prose li{max-width:46em}
.cm-prose h3{font-family:var(--serif);color:var(--amber);font-size:20px;margin:22px 0 6px}
.cm-prose h2{margin-top:30px}
.cm-prose strong{color:var(--parch)}
.cm-prose ul,.cm-prose ol{padding-left:22px}
.cm-prose code{font-family:var(--mono)}
.cm-prose--paper{background:var(--parch);color:var(--ink);border:1px solid var(--parch-edge);border-radius:var(--r);padding:22px}
.cm-prose--paper h1{font-family:var(--serif);font-size:34px;margin:0 0 12px;color:var(--ink)}
.cm-prose--paper h2{color:var(--ink);border-top-color:var(--parch-edge)}
.cm-prose--paper strong{color:var(--ink)}
.cm-prose--paper a{color:var(--amber-ink)}

/* spots list */
.cm-spots{list-style:none;padding:0;margin:14px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.cm-spot{border:1px solid var(--sea-600);border-radius:var(--r);padding:10px 12px;background:rgba(7,24,36,.55);scroll-margin-top:16px}
.cm-spot__head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.cm-spot__name{font-family:var(--serif);font-weight:700;color:var(--parch);font-size:18px}
.cm-spot__count{font-size:26px;color:var(--amber)}
.cm-spot__meta{margin:2px 0 0;font-size:14px;color:#9FB4C3}
.cm-spot__note{margin:6px 0 0;font-size:14px;color:var(--mist)}
.cm-spot__note:empty{display:none}
.cm-spot.is-hi{border-color:var(--amber);background:rgba(224,163,46,.12)}
.cm-twin{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px}

/* faq */
.cm-faq__item{border:1px solid var(--sea-600);border-radius:var(--r);margin-top:8px;background:rgba(7,24,36,.5)}
.cm-faq__item summary{cursor:pointer;padding:12px 14px;min-height:44px;font-weight:600;color:var(--parch);list-style:none}
.cm-faq__item summary::-webkit-details-marker{display:none}
.cm-faq__item summary::before{content:"+";display:inline-block;width:18px;color:var(--amber);font-family:var(--mono)}
.cm-faq__item[open] summary::before{content:"\2212"}
.cm-faq__item p{margin:0;padding:0 14px 14px 32px}

/* buttons */
.cm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;min-width:44px;padding:8px 16px;border-radius:var(--r);border:1px solid var(--amber);font:600 15px/1.2 var(--sans);cursor:pointer;text-decoration:none}
.cm-btn--amber{background:var(--amber);color:var(--sea-900)}
.cm-btn--amber:hover{background:#F0B544}
.cm-btn--ghost{background:transparent;color:var(--amber)}
.cm-btn--ghost:hover{background:rgba(224,163,46,.12)}
.cm-btn--danger{background:transparent;color:var(--coral);border-color:var(--coral)}
.cm-btn--xl{min-height:52px;font-size:17px;padding:10px 18px}
.cm-btn:focus-visible,.cm-chip:focus-visible,.cm-input:focus-visible{outline:2px solid var(--parch);outline-offset:2px}
.cm-link{all:unset;cursor:pointer;color:var(--amber);text-decoration:underline;font-size:14px;min-height:44px;display:inline-flex;align-items:center}

/* engage */
.cm-engage{border:1px solid var(--sea-600);border-radius:var(--r);padding:18px;background:rgba(7,24,36,.6)}
.cm-engage__h{font-family:var(--serif);color:var(--parch);margin:0 0 10px;font-size:22px}
.cm-engage__bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cm-like[aria-pressed=true],.cm-like[data-gf-liked]{background:var(--coral);border-color:var(--coral);color:var(--sea-900)}
.cm-engage__msg{font-size:14px;color:var(--amber)}
.cm-engage__quote{margin:10px 0 0;font-size:14px;color:#9FB4C3;font-style:italic}
.cm-comments{margin-top:18px;border-top:1px dashed var(--sea-600);padding-top:14px}
.cm-comments__h{margin:0 0 10px;color:var(--parch);font-family:var(--serif)}
.cm-form{display:grid;gap:10px;max-width:640px}
.cm-form__label{display:grid;gap:4px;font-size:14px;color:#9FB4C3}
.cm-form input,.cm-form textarea{font:16px/1.4 var(--sans);padding:10px 12px;border:1px solid var(--sea-600);border-radius:var(--r);background:var(--sea-900);color:var(--parch);min-height:44px;width:100%}
.cm-form button[type=submit]{justify-self:start}
.cm-form__replying{display:none;margin:0;font-size:14px}
.cm-form[data-gf-replying] .cm-form__replying{display:block}
.cm-form__msg{margin:0;font-size:14px;color:var(--amber)}
.cm-comments__list{margin-top:14px;display:grid;gap:10px}
.cm-c{border-left:2px solid var(--sea-600);padding:4px 0 4px 12px}
.cm-c__head{font-size:14px;color:#9FB4C3;display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}
.cm-c__head b{color:var(--parch)}
.cm-c__owner{display:none;font-size:11px;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--amber);color:var(--amber);padding:0 5px;border-radius:2px}
.cm-c[data-gf-owner]{border-left-color:var(--amber)}
.cm-c[data-gf-owner] .cm-c__owner{display:inline-block}
.cm-c__text{margin:4px 0;white-space:pre-wrap;word-break:break-word}
.cm-c__replies{margin-left:10px;display:grid;gap:8px}
.cm-comments__empty,.cm-comments__off{display:none;font-size:15px;color:#9FB4C3;margin:10px 0 0}
.cm-comments__list[data-gf-empty]+.cm-comments__empty{display:block}
.cm-comments__list[data-gf-off]~.cm-comments__off{display:block}
.cm-comments__list[data-gf-off]+.cm-comments__empty{display:none}

/* power hour clock */
.cm-clockgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}
.cm-clock{background:var(--parch);color:var(--ink);border:1px solid var(--parch-edge);border-radius:var(--r);padding:18px;min-width:0}
.cm-clock__label{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--amber-ink);font-weight:700}
.cm-clock[data-state=expected] .cm-clock__label{color:var(--coral-ink)}
.cm-clock[data-state=live] .cm-clock__label{color:var(--ok)}
.cm-clock__when{margin:4px 0 10px;font-family:var(--serif);font-size:20px;font-weight:700}
.cm-clock__digits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.cm-clock__digits div{border:1px solid var(--parch-edge);border-radius:var(--r);text-align:center;padding:8px 2px;background:#FBF4E2;min-width:0}
.cm-clock__digits span{display:block;font-size:clamp(26px,7.5vw,44px);line-height:1.05;color:var(--sea-800);font-weight:700}
.cm-clock__digits small{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}
.cm-clock__status{margin:10px 0 0;font-size:14px;color:var(--ink-soft)}
.cm-clock__local{margin:4px 0 0;font-size:14px;color:var(--ink)}
.cm-clock__local:empty{display:none}
.cm-tz{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-soft)}
.cm-tz select{min-height:44px;padding:6px 10px;border:1px solid var(--parch-edge);border-radius:var(--r);background:#FBF4E2;color:var(--ink);font:15px var(--sans)}
.cm-today{margin:0 0 8px;font-weight:600}
.cm-table--sched tr.is-today{background:#F6D38A}
.cm-table--sched tr.is-past{color:#7A6A50}
.cm-table--sched tr.is-next{outline:1px solid var(--amber-ink)}
.cm-badge{display:inline-block;font-size:12px;padding:1px 7px;border-radius:2px;border:1px solid;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}
.cm-badge--ok{color:var(--ok)}
.cm-badge--expected{color:var(--coral-ink)}
.cm-badge--unknown{color:var(--ink-soft)}
.cm-badge--past{color:#7A6A50}
.cm-badge--live{color:#fff;background:var(--ok);border-color:var(--ok)}
.cm-section .cm-table{background:var(--parch);color:var(--ink);border:1px solid var(--parch-edge)}
.cm-table--tz tr.is-on{background:#F6D38A}

/* simulator */
.cm-sim__label{display:block;font-weight:700;margin-bottom:8px}
.cm-sim__inputrow{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.cm-input{font-size:28px;width:220px;max-width:100%;min-height:56px;padding:6px 12px;border:1px solid var(--parch-edge);border-radius:var(--r);background:#FBF4E2;color:var(--sea-800)}
.cm-chips{display:flex;flex-wrap:wrap;gap:6px}
.cm-chip{min-height:44px;padding:6px 12px;border:1px solid var(--parch-edge);border-radius:var(--r);background:transparent;color:var(--ink);font:14px var(--sans);cursor:pointer}
.cm-chip:hover{border-color:var(--amber-ink)}
.cm-sim__err{min-height:1.2em;margin:6px 0 0;color:var(--coral-ink);font-size:14px}
.cm-results{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}
.cm-result{border:1px solid var(--parch-edge);border-radius:var(--r);padding:14px;background:#FBF4E2;min-width:0}
.cm-result--main{border-color:var(--amber-ink)}
.cm-result--alt{border-style:dashed}
.cm-result--alt.is-off{opacity:.62}
.cm-result__tag{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);font-weight:700}
.cm-result__big{margin:4px 0;font-size:clamp(30px,6vw,44px);font-weight:700;color:var(--sea-800);word-break:break-all}
.cm-result--alt .cm-result__big{color:var(--ink-soft)}
.cm-result__sub{margin:0;font-size:14px}
.cm-result__warn{margin:8px 0 0;font-size:13px;color:var(--coral-ink)}
.cm-sim__base{margin:12px 0 0;font-size:15px}
.cm-bench{margin-top:16px;border-top:1px dashed var(--parch-edge);padding-top:12px}
.cm-bench__head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;font-weight:700;font-size:15px}
.cm-switch{display:inline-flex;align-items:center;gap:6px;font-weight:400;font-size:14px;min-height:44px;cursor:pointer}
.cm-switch input{width:20px;height:20px;accent-color:var(--amber-ink)}
.cm-bench__track{position:relative;height:22px;margin:24px 0 8px;border:1px solid var(--parch-edge);border-radius:var(--r);background:var(--parch-2)}
.cm-bench__fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--amber);border-radius:3px 0 0 3px;transition:width .25s}
.cm-bench__line{position:absolute;top:-8px;bottom:-8px;width:0;border-left:2px dashed var(--coral-ink)}
.cm-bench__line em{position:absolute;top:-20px;left:-30px;width:60px;text-align:center;font-style:normal;font-size:12px;color:var(--coral-ink)}
.cm-bench__text{margin:0;font-size:15px}
.cm-rules{margin:14px 0 0;padding:12px 14px 12px 32px;border:1px solid var(--coral);border-radius:var(--r);background:rgba(229,98,75,.08);max-width:46em}
.cm-rules li+li{margin-top:4px}

/* tracker */
.cm-loggrid{display:grid;grid-template-columns:1fr 1.1fr;gap:24px;align-items:center}
.cm-counter{background:var(--parch);color:var(--ink);border:1px solid var(--parch-edge);border-radius:var(--r);padding:18px;text-align:center;min-width:0}
.cm-counter__label{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--amber-ink);font-weight:700}
.cm-counter__num{display:block;font-size:clamp(56px,16vw,104px);line-height:1;font-weight:700;color:var(--sea-800);margin:6px 0 6px;word-break:break-all}
.cm-counter__today{margin:0 0 12px;font-size:14px;color:var(--ink-soft)}
.cm-counter__btns{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:8px}
.cm-counter__btns .cm-btn--ghost{color:var(--amber-ink);border-color:var(--amber-ink)}
.cm-counter__btns .cm-btn--danger{color:var(--coral-ink);border-color:var(--coral-ink)}
.cm-counter__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 0;text-align:left}
.cm-counter__stats div{border:1px solid var(--parch-edge);border-radius:var(--r);padding:8px;background:#FBF4E2;min-width:0}
.cm-counter__stats dt{font-size:12px;color:var(--ink-soft);line-height:1.3}
.cm-counter__stats dd{margin:4px 0 0;font-size:20px;font-weight:700;word-break:break-word}
.cm-counter__store{margin:10px 0 0;font-size:13px;color:var(--ink-soft);min-height:1em}
.cm-counter__store.is-warn{color:var(--coral-ink)}
.cm-counter.bump .cm-counter__num{color:var(--amber-ink)}

/* footer */
.cm-footer{margin-top:48px;border-top:1px solid var(--amber);background:var(--sea-900);padding:22px 0 30px;font-size:14px;color:#9FB4C3}
.cm-sources{margin:0 0 14px;padding-bottom:12px;border-bottom:1px dashed var(--sea-600)}
.cm-sources strong{color:var(--parch)}
.cm-footer__row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px}
.cm-footer__brand{margin:0;max-width:40em}
.cm-footer__brand strong{color:var(--amber);font-family:var(--serif)}
.cm-footer__nav{display:flex;flex-wrap:wrap;gap:4px}
.cm-footer__nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;color:var(--parch)}
.cm-footer__copy{margin:10px 0 0}

@media (max-width:820px){
  .cm-hero__grid,.cm-clockgrid,.cm-loggrid{grid-template-columns:1fr}
  .cm-twin,.cm-results{grid-template-columns:1fr}
}
@media (max-width:480px){
  body{font-size:16px}
  .cm-wrap{padding:0 14px}
  .cm-answer{font-size:17px}
  .cm-nav{width:100%}
  .cm-nav a{flex:1 1 45%;padding:4px 8px}
  .cm-counter__btns{grid-template-columns:1fr 1fr}
  .cm-counter__stats{grid-template-columns:1fr}
  .cm-tally dd{font-size:28px}
  .cm-card,.cm-clock,.cm-counter{padding:14px}
  .cm-clock__digits{gap:4px}
  .cm-input{width:100%}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
