/* VAA Consortium · "Wall planner" (owner chose direction A, 2026-10-14), redrawn to the approved "Fall picking 2027"
   mockups (2026-10-26). Forest green on planner paper, Archivo (condensed for dates, names and headings), marigold for
   your turn and summer. The year as week rows on a laptop and a month grid on a phone; one dark "on the clock" bar for
   the turn. Rule colours (fit / warn / no) are used only for rule results, always with a ✓ / ! / ✕ beside them.
   Light and dark. The same stylesheet serves consortium.valleyanesthesia.org (body.cx, with vaa.css) and the Schedule
   app's Picks tab (#cx-root.cx inside the shared shell, alone): every rule is scoped to .cx. */
@font-face {
  font-family: "Archivo";
  src: url("fonts/archivo-latin.woff2") format("woff2");
  font-weight: 100 900;
  font-stretch: 62% 125%;
  font-display: swap;
}
.cx {
  --cx-ink: #1c2b27;
  --cx-green: #174a43;
  --cx-green-dark: #0f332e;
  --cx-pri: #174a43;
  --cx-pri-fg: #ffffff;
  --cx-pri-hover: #0f332e;
  --cx-paper: #f7f9f4;
  --cx-card: #ffffff;
  --cx-grid: #dce5da;
  --cx-line: #dce5da;
  --cx-line-soft: #eef2ec;
  --cx-soft: #e3efe5;
  --cx-r1: #d4e9da; --cx-r1-fg: #174a43;
  --cx-r2: #bcd8c4; --cx-r2-fg: #174a43;
  --cx-r3: #3f7a64; --cx-r3-fg: #ffffff;
  --cx-r4: #174a43; --cx-r4-fg: #ffffff;
  --cx-full: #eceee9; --cx-full-fg: #626b65;
  --cx-blk-fg: #6f7872;
  --cx-hatch: #e3e6e1;
  --cx-muted: #56655e;
  --cx-mari: #e0a526;
  --cx-mari-fg: #2b1d00;
  --cx-mari-soft: #fbefd3;
  --cx-mari-line: #efd28e;
  --cx-mari-ink: #7a5408;
  --cx-warn-ink: #7a5408;
  --cx-fit: #2e6b3a;
  --cx-fit-soft: #e3efe5;
  --cx-danger: #9b3030;
  --cx-danger-soft: #f7e6e4;
  --cx-band: #0f332e;
  --cx-band-fg: #ffffff;
  --cx-band-sub: #cfe1da;
  --cx-band-kick: #a9cbbf;
  --cx-band-gold: #f3d48c;
  --cx-shadow: rgba(15, 51, 46, 0.14);
  --cx-display: "Archivo", "Arial Narrow", Arial, sans-serif;
  --cx-top-h: 64px;
  --cx-knob: #ffffff;
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .cx {
    --cx-ink: #e6eee9; --cx-green: #7cc4ae; --cx-green-dark: #0b221e;
    --cx-pri: #7cc4ae; --cx-pri-fg: #0b221e; --cx-pri-hover: #9bd5c2;
    --cx-paper: #0f1714; --cx-card: #17211d; --cx-grid: #2a3832; --cx-line: #2a3832; --cx-line-soft: #222e29; --cx-soft: #1d2e28;
    --cx-r1: #1b332c; --cx-r1-fg: #a6dcc8; --cx-r2: #24493d; --cx-r2-fg: #cdeee0; --cx-r3: #2f7560; --cx-r3-fg: #ffffff; --cx-r4: #8fd3bb; --cx-r4-fg: #062019;
    --cx-full: #1e2622; --cx-full-fg: #8f9b95; --cx-blk-fg: #8a968f; --cx-hatch: #26302b;
    --cx-muted: #a3b2aa; --cx-mari: #e0a526; --cx-mari-fg: #2b1d00; --cx-mari-soft: #3a2d12; --cx-mari-line: #6b5420; --cx-mari-ink: #f0c878; --cx-warn-ink: #f0c878;
    --cx-fit: #84d6a2; --cx-fit-soft: #183026; --cx-danger: #f39a90; --cx-danger-soft: #3d1d1a;
    --cx-band: #0b2622; --cx-band-sub: #b9d6cc; --cx-band-kick: #9cc4b6; --cx-shadow: rgba(0, 0, 0, 0.45); --cx-knob: #dfe7e2;
    color-scheme: dark;
  }
}
:root[data-theme="dark"] .cx {
  --cx-ink: #e6eee9; --cx-green: #7cc4ae; --cx-green-dark: #0b221e;
  --cx-pri: #7cc4ae; --cx-pri-fg: #0b221e; --cx-pri-hover: #9bd5c2;
  --cx-paper: #0f1714; --cx-card: #17211d; --cx-grid: #2a3832; --cx-line: #2a3832; --cx-line-soft: #222e29; --cx-soft: #1d2e28;
  --cx-r1: #1b332c; --cx-r1-fg: #a6dcc8; --cx-r2: #24493d; --cx-r2-fg: #cdeee0; --cx-r3: #2f7560; --cx-r3-fg: #ffffff; --cx-r4: #8fd3bb; --cx-r4-fg: #062019;
  --cx-full: #1e2622; --cx-full-fg: #8f9b95; --cx-blk-fg: #8a968f; --cx-hatch: #26302b;
  --cx-muted: #a3b2aa; --cx-mari-soft: #3a2d12; --cx-mari-line: #6b5420; --cx-mari-ink: #f0c878; --cx-warn-ink: #f0c878;
  --cx-fit: #84d6a2; --cx-fit-soft: #183026; --cx-danger: #f39a90; --cx-danger-soft: #3d1d1a;
  --cx-band: #0b2622; --cx-band-sub: #b9d6cc; --cx-band-kick: #9cc4b6; --cx-shadow: rgba(0, 0, 0, 0.45); --cx-knob: #dfe7e2;
  color-scheme: dark;
}
html:has(body.cx) { background: var(--cx-paper, #f7f9f4); }
@media (prefers-color-scheme: dark) { html:has(body.cx) { background: #0f1714; } }
body.cx { font-family: "Archivo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: var(--cx-paper); color: var(--cx-ink); }
.cx-embed { font-family: "Archivo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--cx-ink); font-size: 15px; line-height: 1.45; }
.cx h1, .cx h2, .cx h3 { font-family: var(--cx-display); font-stretch: 80%; letter-spacing: 0; color: var(--cx-ink); }
.cx a { color: var(--cx-green); }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.cx .grow { flex: 1; }

/* ---- Base controls (the Picks tab has no vaa.css; on the Consortium site these sit over it) ---- */
.cx button, .cx .button { font: inherit; display: inline-flex; align-items: center; justify-content: center; gap: 8px; cursor: pointer; border: 1px solid var(--cx-line); border-radius: 10px; background: var(--cx-card); color: var(--cx-ink); padding: 9px 14px; min-height: 44px; font-weight: 700; font-size: 14px; text-decoration: none; }
.cx button:hover:not(:disabled), .cx .button:hover { background: var(--cx-soft); border-color: var(--cx-line); }
.cx button:disabled { opacity: 1; background: var(--cx-full); border-color: var(--cx-line); color: var(--cx-full-fg); cursor: not-allowed; }
.cx button.primary, .cx .button.primary { background: var(--cx-pri); border-color: var(--cx-pri); color: var(--cx-pri-fg); }
.cx button.primary:hover:not(:disabled), .cx .button.primary:hover { background: var(--cx-pri-hover); border-color: var(--cx-pri-hover); }
.cx button.go { background: var(--cx-mari); border-color: var(--cx-mari); color: var(--cx-mari-fg); font-weight: 800; }
.cx button.go:hover:not(:disabled) { background: #cf951a; border-color: #cf951a; }
.cx button.primary:disabled, .cx .button.primary:disabled, .cx button.go:disabled { background: var(--cx-full); border-color: var(--cx-line); color: var(--cx-full-fg); }
.cx button.danger { color: var(--cx-danger); background: var(--cx-card); border-color: var(--cx-danger); }
.cx button.link { border: 0; background: none; color: var(--cx-green); padding: 4px 0; min-height: 44px; text-decoration: underline; font-weight: 600; }
.cx button.danger-link { border: 0; background: none; color: var(--cx-danger); padding: 4px 0; min-height: 44px; text-decoration: underline; font-weight: 600; }
.cx button.small { min-height: 40px; padding: 6px 12px; font-size: 13px; }
.cx input, .cx select, .cx textarea { font: inherit; background: var(--cx-card); color: var(--cx-ink); border: 1px solid var(--cx-muted); border-radius: 9px; padding: 10px; min-height: 44px; width: 100%; box-sizing: border-box; }
.cx input[type="checkbox"], .cx input[type="radio"] { width: 20px; height: 20px; min-height: 20px; padding: 0; accent-color: var(--cx-green); }
.cx :focus-visible { outline: 3px solid var(--cx-mari); outline-offset: 2px; }
.cx label.field { display: flex; flex-direction: column; gap: 6px; font-weight: 700; font-size: 14px; margin: 10px 0; }
.cx label.check { display: flex; gap: 8px; align-items: center; margin: 10px 0; }
.cx dialog { background: var(--cx-card); color: var(--cx-ink); border: 1px solid var(--cx-line); border-radius: 16px; width: min(520px, calc(100% - 32px)); padding: 24px; max-height: 90vh; overflow-y: auto; box-sizing: border-box; }
.cx dialog::backdrop { background: rgba(10, 25, 22, 0.5); }
.cx dialog h2 { font-size: 22px; font-weight: 800; margin: 0 0 10px; }
.cx dialog p { line-height: 1.45; }
.cx .form-actions { display: flex; gap: 8px; justify-content: flex-end; flex-wrap: wrap; margin-top: 16px; }

/* ---- Consortium site header (the Picks tab uses the shared shell's) ---- */
.cx-top { position: sticky; top: 0; z-index: 8; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px; padding: 10px 28px; background: var(--cx-card); border-bottom: 1px solid var(--cx-line); min-height: 64px; box-sizing: border-box; }
.cx-top .left { display: flex; align-items: center; gap: 12px; }
.cx-apps { width: 44px; height: 44px; border-radius: 12px; border: 1px solid var(--cx-line); display: inline-flex; align-items: center; justify-content: center; color: var(--cx-muted); background: var(--cx-card); }
.cx-name { display: flex; flex-direction: column; line-height: 1.05; text-decoration: none; color: var(--cx-ink); }
.cx-name small { font-size: 10px; letter-spacing: 0.14em; color: var(--cx-muted); font-weight: 600; }
.cx-name span { font-family: var(--cx-display); font-weight: 800; font-size: 21px; font-stretch: 78%; display: flex; align-items: center; gap: 6px; color: var(--cx-green); }
.cx-name span em { font-style: normal; font-weight: 600; color: var(--cx-muted); font-size: 15px; }
.cx-tabs { display: flex; gap: 4px; background: var(--cx-soft); border-radius: 14px; padding: 4px; }
.cx-tabs:empty { display: none; }
.cx .cx-tabs a { min-height: 40px; padding: 0 18px; border-radius: 10px; display: flex; align-items: center; gap: 6px; font-weight: 700; font-size: 14px; color: var(--cx-muted); text-decoration: none; white-space: nowrap; background: transparent; box-shadow: none; }
.cx .cx-tabs a:hover { color: var(--cx-ink); background: transparent; text-decoration: none; }
.cx .cx-tabs a.active, .cx .cx-tabs a.active:hover { background: var(--cx-card); color: var(--cx-ink); box-shadow: 0 1px 2px var(--cx-shadow); }
.cx-tabs .count { display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; background: var(--cx-mari); color: var(--cx-mari-fg); font-size: 12px; font-weight: 800; box-sizing: border-box; }
.cx-status { display: none; }
.cx-account { justify-self: end; }
.cx-account details { position: relative; }
.cx-account summary { list-style: none; width: 44px; height: 44px; border-radius: 50%; background: var(--cx-soft); color: var(--cx-green); font-weight: 800; font-size: 14px; display: flex; align-items: center; justify-content: center; cursor: pointer; }
.cx-account summary::-webkit-details-marker { display: none; }
.cx-account details > div { position: absolute; right: 0; top: 50px; background: var(--cx-card); border: 1px solid var(--cx-line); border-radius: 14px; padding: 14px; min-width: 250px; display: flex; flex-direction: column; gap: 8px; box-shadow: 0 10px 30px var(--cx-shadow); z-index: 30; }
.cx-account small { color: var(--cx-muted); }
.cx-account a { font-weight: 600; min-height: 32px; display: flex; align-items: center; }
.cx-account .sep { border-top: 1px solid var(--cx-line); padding-top: 8px; display: flex; flex-direction: column; gap: 2px; }

/* ---- Page ---- */
.cx-main { max-width: 1440px; margin: 0 auto; padding: 0 28px 64px; box-sizing: border-box; }
.cx-main:focus { outline: none; }
.dev-banner { font-size: 13px; color: var(--cx-warn-ink); background: var(--cx-mari-soft); border-radius: 10px; padding: 8px 12px; margin: 14px 0 0; }
.cx-page { padding-top: 18px; display: flex; flex-direction: column; gap: 14px; }
.cx-narrow { max-width: 640px; margin: 0 auto; }
.cx-h1 { font-size: 30px; font-weight: 800; margin: 0; line-height: 1.05; }
.cx-back { font-weight: 700; min-height: 44px; display: inline-flex; align-items: center; text-decoration: none; }
.cx-panel { background: var(--cx-card); border: 1px solid var(--cx-line); border-radius: 18px; padding: 16px; display: flex; flex-direction: column; gap: 10px; box-sizing: border-box; min-width: 0; }
.cx-panel h2 { font-size: 18px; font-weight: 800; margin: 0; line-height: 1.15; }
.cx-ph { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.cx-note { font-size: 13px; color: var(--cx-muted); line-height: 1.45; margin: 0; }
.cx-note.center { text-align: center; }
.cx-sub { font-size: 13px; font-weight: 800; color: var(--cx-ink); }
.cx-tag { display: inline-block; font-size: 11.5px; font-weight: 700; border-radius: 6px; padding: 1px 7px; background: var(--cx-soft); color: var(--cx-green); vertical-align: 1px; font-family: inherit; font-stretch: 100%; }
.cx-tag.sum { background: var(--cx-mari-soft); color: var(--cx-mari-ink); }
.cx-tag.req { background: #e8ecf5; color: #2b4a7a; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .cx-tag.req { background: #1f2a3d; color: #a9c2ec; } }
:root[data-theme="dark"] .cx-tag.req { background: #1f2a3d; color: #a9c2ec; }
.cx .cx-btn { min-height: 50px; border-radius: 14px; border: 1px solid var(--cx-line); background: var(--cx-card); color: var(--cx-ink); font-weight: 800; font-size: 15px; padding: 0 18px; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; box-sizing: border-box; width: 100%; }
.cx .cx-btn.pri { background: var(--cx-pri); border-color: var(--cx-pri); color: var(--cx-pri-fg); box-shadow: 0 8px 20px var(--cx-shadow); }
.cx .cx-btn.pri:hover:not(:disabled) { background: var(--cx-pri-hover); border-color: var(--cx-pri-hover); }
.cx .cx-btn.big { min-height: 54px; font-size: 16px; }
.cx .cx-btn:disabled { box-shadow: none; }
.cx a.cx-btn:hover { text-decoration: none; }
.cx .cx-lnk { background: none; border: 0; font: inherit; font-weight: 700; color: var(--cx-green); min-height: 44px; padding: 0 6px; font-size: 13.5px; text-decoration: underline; text-underline-offset: 3px; display: inline-flex; align-items: center; }
.cx .cx-lnk:hover:not(:disabled) { background: none; }
.cx .cx-lnk.quiet { color: var(--cx-muted); }
.cx .cx-mini { min-height: 44px; min-width: 56px; padding: 0 12px; border-radius: 10px; font-size: 13px; }

/* ---- Rule answers: always a mark and words, never colour alone ---- */
.cx-says { margin: 0; border-radius: 10px; padding: 8px 10px; font-size: 13.5px; font-weight: 700; background: var(--cx-soft); color: var(--cx-ink); line-height: 1.4; }
.cx-says p { margin: 0; }
.cx-says p + p { margin-top: 4px; }
.cx-says.ok { background: var(--cx-fit-soft); color: var(--cx-fit); }
.cx-says.no { background: var(--cx-danger-soft); color: var(--cx-danger); }
.cx-says.warn, .cx-says .warn { background: var(--cx-mari-soft); color: var(--cx-mari-ink); }
.cx-says .warn { margin-top: 6px; border-radius: 8px; padding: 6px 8px; }
.cx-yours { margin: 0; font-size: 13.5px; font-weight: 700; }

/* ---- The clock bar: your turn ---- */
.cx-ring .track { stroke: rgba(255, 255, 255, 0.2); }
.cx-ring .fill { stroke: var(--cx-mari); }
.cx-clock2 { position: sticky; top: var(--cx-top-h); z-index: 6; margin: 0 -28px; padding: 14px 28px; background: var(--cx-band); color: var(--cx-band-fg); display: flex; align-items: center; gap: 12px 18px; flex-wrap: wrap; }
.cx-clock2 .txt { flex: 1 1 260px; min-width: 0; }
.cx-clock2 .kick, .cx-wait .kick, .cx-hero .kick, .cx-dayp .kick, .cx-daypanel .kick, .cx-confirm-sheet .kick { font-size: 11px; letter-spacing: 0.14em; font-weight: 700; text-transform: uppercase; }
.cx-clock2 .kick { color: var(--cx-band-kick); }
.cx-clock2 .big { margin: 0; color: var(--cx-band-fg); font-size: 24px; font-weight: 800; font-stretch: 75%; line-height: 1.1; }
.cx-clock2 .sub { font-size: 13px; color: var(--cx-band-sub); }
.cx-clock2.late { background: #4a3a10; }
.cx-clock2 .inline { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.cx-clock2 .slots { display: flex; gap: 8px; flex-wrap: wrap; }
.cx-slot2 { position: relative; border-radius: 12px; padding: 6px 40px 6px 12px; min-width: 150px; box-sizing: border-box; min-height: 50px; display: flex; flex-direction: column; justify-content: center; }
.cx-slot2 span { display: block; font-size: 11px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }
.cx-slot2 b { font-size: 16px; font-stretch: 80%; font-family: var(--cx-display); }
.cx-clock2 .cx-slot2.full { background: rgba(224, 165, 38, 0.16); border: 1.5px solid var(--cx-mari); }
.cx-clock2 .cx-slot2.full span { color: var(--cx-band-gold); }
.cx-clock2 .cx-slot2.empty { border: 1.5px dashed rgba(255, 255, 255, 0.45); padding-right: 12px; }
.cx-clock2 .cx-slot2.empty span, .cx-clock2 .cx-slot2.empty b { color: var(--cx-band-sub); font-weight: 600; }
.cx .cx-slot2 .x { position: absolute; right: 2px; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; min-height: 44px; padding: 0; border: 0; background: transparent; color: inherit; font-size: 18px; border-radius: 10px; }
.cx-clock2 .cx-slot2 .x { color: var(--cx-band-sub); }
.cx .cx-go { min-height: 50px; border-radius: 14px; border: 0; background: var(--cx-mari); color: var(--cx-mari-fg); font-weight: 800; font-size: 16px; padding: 0 22px; box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25); }
.cx .cx-go:hover:not(:disabled) { background: #f0b53a; }
.cx .cx-go:disabled { background: rgba(255, 255, 255, 0.14); color: var(--cx-band-sub); box-shadow: none; }
.cx-clock2 .links { display: flex; flex-direction: column; align-items: flex-start; }
.cx-clock2 .cx-lnk, .cx-clock2 .cx-lnk.quiet { color: var(--cx-band-sub); min-height: 32px; }
.cx-verdict { flex-basis: 100%; display: flex; flex-wrap: wrap; gap: 6px; font-size: 13px; font-weight: 700; }
.cx-verdict span { background: var(--cx-card); border-radius: 8px; padding: 4px 8px; }
.cx-verdict.no span { color: var(--cx-danger); }
.cx-verdict.warn span { color: var(--cx-mari-ink); background: var(--cx-mari-soft); }

/* ---- Turn layout: the year and the side column ---- */
.cx-turnlay { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 22px; padding-top: 16px; align-items: start; }
.cx-yearsec { min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.cx-yhead { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
.cx-side { display: flex; flex-direction: column; gap: 14px; position: sticky; top: calc(var(--cx-top-h) + 110px); max-height: calc(100vh - var(--cx-top-h) - 126px); overflow-y: auto; }
.cx-types { display: flex; gap: 4px; flex-wrap: wrap; }
.cx .cx-types button { min-height: 40px; font-size: 13px; padding: 0 13px; border-radius: 999px; color: var(--cx-muted); }
.cx .cx-types button[aria-pressed="true"] { background: var(--cx-green); border-color: var(--cx-green); color: var(--cx-pri-fg); }
.cx .cx-types.small button { min-height: 44px; }
.cx-key { display: flex; gap: 6px 14px; flex-wrap: wrap; font-size: 12px; color: var(--cx-muted); align-items: center; }
.cx-key span, .cx-mkey span { display: inline-flex; align-items: center; gap: 5px; }
.cx i.k { display: inline-block; width: 16px; height: 12px; border-radius: 3px; flex: none; }
.k.r1 { background: var(--cx-r1); } .k.r2 { background: var(--cx-r2); } .k.r3 { background: var(--cx-r3); } .k.r4 { background: var(--cx-r4); }
.k.full { background: var(--cx-full); }
.k.mine { background: var(--cx-card); box-shadow: inset 0 0 0 2px var(--cx-ink); }
.k.tray { background: var(--cx-mari); }
.k.blk { background: var(--cx-card); box-shadow: inset 0 0 0 1px var(--cx-line); }
.k.sumk { background: var(--cx-mari-soft); box-shadow: inset 3px 0 var(--cx-mari); }
.k.hol { background: repeating-linear-gradient(135deg, var(--cx-hatch) 0 3px, var(--cx-card) 3px 6px); }
.k.justnow { background: var(--cx-card); box-shadow: inset 0 0 0 2px var(--cx-mari); }

/* The laptop's year: two halves of 26 week rows. */
.cx-yr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.cx-wr { display: grid; grid-template-columns: 34px 46px repeat(5, minmax(0, 1fr)) 32px; gap: 3px; align-items: center; min-height: 24px; margin-bottom: 3px; position: relative; }
.cx-wr.sum::before { content: ""; position: absolute; left: 80px; right: 34px; top: -2px; bottom: -2px; background: var(--cx-mari-soft); border-radius: 5px; box-shadow: inset 3px 0 var(--cx-mari); z-index: 0; }
.cx-wr > * { position: relative; z-index: 1; }
.cx-wr.m { margin-top: 6px; }
.cx-wr .mn { font-family: var(--cx-display); font-weight: 800; font-stretch: 75%; font-size: 13px; color: var(--cx-green); }
.cx-wr .dt { font-size: 11.5px; color: var(--cx-muted); font-stretch: 80%; white-space: nowrap; }
.cx-wr .you { font-size: 11px; font-weight: 800; color: var(--cx-muted); text-align: center; }
.cx-wr .you.max { color: var(--cx-danger); }
.cx-wh { min-height: 16px; margin-bottom: 4px; }
.cx-wh span { font-size: 11px; font-weight: 700; color: var(--cx-muted); text-align: center; }
.cx .cx-cl { height: 24px; min-height: 24px; padding: 0; border: 0; border-radius: 5px; font-size: 11px; font-weight: 800; font-stretch: 80%; display: grid; place-items: center; font-variant-numeric: tabular-nums; cursor: pointer; }
.cx .cx-cl.blank { background: transparent; cursor: default; }
/* Shades of open spots, then what's yours, this turn, the wishlist and the hints, in that order. */
.cx .r1 { background: var(--cx-r1); color: var(--cx-r1-fg); }
.cx .r2 { background: var(--cx-r2); color: var(--cx-r2-fg); }
.cx .r3 { background: var(--cx-r3); color: var(--cx-r3-fg); }
.cx .r4 { background: var(--cx-r4); color: var(--cx-r4-fg); }
.cx .full { background: var(--cx-full); color: var(--cx-full-fg); }
.cx .hol { background: repeating-linear-gradient(135deg, var(--cx-hatch) 0 4px, var(--cx-card) 4px 8px); color: var(--cx-full-fg); }
.cx .blk { background: var(--cx-card); color: var(--cx-blk-fg); box-shadow: inset 0 0 0 1px var(--cx-line); }
.cx .wish { box-shadow: inset 0 0 0 2px var(--cx-r3); }
.cx .justnow { box-shadow: inset 0 0 0 2px var(--cx-mari); }
.cx .mine { background: var(--cx-card); color: var(--cx-ink); box-shadow: inset 0 0 0 2px var(--cx-ink); }
.cx .tray { background: var(--cx-mari); color: var(--cx-mari-fg); box-shadow: 0 0 0 2px var(--cx-card), 0 0 0 4px var(--cx-mari); }
.cx .sel { outline: 3px solid var(--cx-ink); outline-offset: 1px; z-index: 2; }
.cx .cx-cl:hover:not(:disabled), .cx .cx-d:hover:not(:disabled) { filter: brightness(0.94); }

/* The phone's month grid. */
.cx-mo { display: flex; justify-content: space-between; align-items: center; margin: 4px 0 2px; }
.cx-mo h2 { font-size: 22px; font-weight: 800; margin: 0; }
.cx .cx-nav { width: 44px; height: 44px; min-height: 44px; padding: 0; border-radius: 12px; font-size: 20px; color: var(--cx-green); }
.cx-mgrid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 5px; }
.cx-mgrid.you { grid-template-columns: repeat(5, minmax(0, 1fr)) 38px; }
.cx-mgrid .dh { font-size: 11px; font-weight: 700; color: var(--cx-muted); text-align: center; letter-spacing: 0.06em; }
.cx .cx-d { height: 56px; min-height: 56px; border-radius: 11px; padding: 5px 7px; display: flex; flex-direction: column; justify-content: space-between; align-items: stretch; font-weight: 800; border: 0; text-align: left; box-sizing: border-box; }
.cx .cx-d .n { font-size: 15px; font-stretch: 80%; font-family: var(--cx-display); line-height: 1; }
.cx .cx-d .o { font-size: 11px; font-weight: 600; align-self: flex-end; line-height: 1; white-space: nowrap; }
.cx .cx-d.blank { background: transparent; color: var(--cx-blk-fg); }
.cx-wk-n { font-size: 12px; font-weight: 800; color: var(--cx-muted); text-align: center; align-self: center; }
.cx-wk-n.max { color: var(--cx-danger); }
.cx-mkey { display: flex; gap: 4px 12px; flex-wrap: wrap; font-size: 11.5px; color: var(--cx-muted); margin: 6px 0 0; }

/* ---- Limits, wishlist, the draft ---- */
.cx-tiles2 { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.cx-tiles2 .t { background: var(--cx-soft); border-radius: 12px; padding: 8px 10px; display: flex; flex-direction: column; }
.cx-tiles2 .t.sum { background: var(--cx-mari-soft); color: var(--cx-mari-ink); }
.cx-tiles2 b, .cx-lim3 b, .cx-meter b { font-family: var(--cx-display); font-size: 22px; font-stretch: 75%; font-weight: 800; line-height: 1.1; }
.cx-tiles2 b small, .cx-lim3 b small, .cx-meter b small { font-size: 13px; }
.cx-tiles2 span { font-size: 12.5px; color: var(--cx-muted); }
.cx-tiles2 .t.sum span { color: var(--cx-mari-ink); }
.cx-rq { width: 100%; border-collapse: collapse; font-size: 13px; }
.cx-rq th, .cx-rq td { padding: 6px 4px; border-top: 1px solid var(--cx-line-soft); text-align: center; font-weight: 700; }
.cx-rq th[scope="row"] { text-align: left; font-weight: 600; }
.cx-rq thead th { border-top: 0; color: var(--cx-muted); font-size: 11.5px; }
.cx-rq thead th:first-child { text-align: left; }
.cx-lim3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.cx-lim3 > div { background: var(--cx-card); border: 1px solid var(--cx-line); border-radius: 12px; padding: 7px 10px; display: flex; flex-direction: column; }
.cx-lim3 > div.sum { background: var(--cx-mari-soft); border-color: var(--cx-mari-line); color: var(--cx-mari-ink); }
.cx-lim3 span { font-size: 11.5px; color: var(--cx-muted); line-height: 1.25; }
.cx-lim3 > div.sum span { color: var(--cx-mari-ink); }
.cx-switchrow { display: flex; align-items: center; gap: 12px; cursor: pointer; }
.cx-switchrow > span { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.cx-switchrow b { font-family: var(--cx-display); font-stretch: 80%; font-size: 18px; font-weight: 800; line-height: 1.15; }
.cx .cx-switchrow input, .cx .cx-switch input { appearance: none; -webkit-appearance: none; width: 52px; height: 32px; min-height: 32px; border-radius: 16px; background: var(--cx-full); box-shadow: inset 0 0 0 1px var(--cx-muted); position: relative; flex: none; cursor: pointer; border: 0; padding: 0; margin: 0; transition: background 0.15s; }
.cx .cx-switchrow input::after, .cx .cx-switch input::after { content: ""; position: absolute; left: 4px; top: 4px; width: 24px; height: 24px; border-radius: 50%; background: var(--cx-knob); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); transition: left 0.15s; }
.cx .cx-switchrow input:checked, .cx .cx-switch input:checked { background: var(--cx-green); box-shadow: none; }
.cx .cx-switchrow input:checked::after, .cx .cx-switch input:checked::after { left: 24px; }
.cx-wl { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; font-size: 13.5px; }
.cx-wl li { display: flex; gap: 10px; align-items: center; min-height: 32px; }
.cx-wl li > b { width: 16px; color: var(--cx-green); }
.cx-wl .t { flex: 1; font-weight: 700; min-width: 0; }
.cx-wl .st { font-size: 12px; font-weight: 700; white-space: nowrap; }
.cx-wl .st.ok { color: var(--cx-fit); }
.cx-wl .st.no { color: var(--cx-mari-ink); white-space: normal; max-width: 45%; text-align: right; }
.cx-steps2 { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.cx-steps2 li { display: flex; gap: 10px; padding: 6px 0; position: relative; }
.cx-steps2 li i { width: 12px; height: 12px; border-radius: 50%; border: 2px solid var(--cx-line); background: var(--cx-card); flex: none; margin-top: 4px; box-sizing: border-box; }
.cx-steps2 li.done i { background: var(--cx-green); border-color: var(--cx-green); }
.cx-steps2 li.now i, .cx-steps2 li.next i { background: var(--cx-mari); border-color: var(--cx-mari); box-shadow: 0 0 0 3px var(--cx-mari-soft); }
.cx-steps2 li > div { display: flex; flex-direction: column; }
.cx-steps2 li.later b { color: var(--cx-muted); }
.cx-feed { list-style: none; margin: 0; padding: 0; }
.cx-feed li { display: flex; gap: 10px; padding: 8px 0; border-top: 1px solid var(--cx-line-soft); font-size: 13.5px; line-height: 1.35; }
.cx-feed li:first-child { border-top: 0; }
.cx-feed time { flex: none; width: 64px; font-size: 12px; color: var(--cx-muted); padding-top: 1px; }
.cx-bars { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 4px; height: 56px; align-items: end; margin-top: 6px; }
.cx-bars span { background: var(--cx-r3); border-radius: 4px 4px 0 0; }
.cx-bars span.sm { background: var(--cx-mari); }
.cx-bars .b1 { height: 10%; } .cx-bars .b2 { height: 20%; } .cx-bars .b3 { height: 30%; } .cx-bars .b4 { height: 40%; } .cx-bars .b5 { height: 50%; }
.cx-bars .b6 { height: 60%; } .cx-bars .b7 { height: 70%; } .cx-bars .b8 { height: 80%; } .cx-bars .b9 { height: 90%; } .cx-bars .b10 { height: 100%; }
.cx-bars-l { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 4px; font-size: 10px; color: var(--cx-muted); text-align: center; }
.cx-av { width: 40px; height: 40px; border-radius: 50%; background: var(--cx-soft); color: var(--cx-green); font-weight: 800; font-size: 14px; display: grid; place-items: center; flex: none; }
.cx-av.now { width: 50px; height: 50px; background: var(--cx-green-dark); color: #fff; box-shadow: 0 0 0 4px var(--cx-card), 0 0 0 7px var(--cx-mari); font-size: 16px; }
.cx-order2 { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.cx-order2 li { display: grid; grid-template-columns: 20px 30px minmax(0, 1fr); grid-template-areas: "n a nm" "n a st"; column-gap: 8px; align-items: center; padding: 6px; border-radius: 10px; font-size: 13.5px; }
.cx-order2 .n { grid-area: n; font-weight: 800; color: var(--cx-muted); font-size: 12px; }
.cx-order2 .a { grid-area: a; width: 30px; height: 30px; border-radius: 50%; background: var(--cx-soft); color: var(--cx-green); font-size: 11px; font-weight: 800; display: grid; place-items: center; }
.cx-order2 .nm { grid-area: nm; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cx-order2 .st { grid-area: st; font-size: 11.5px; font-weight: 700; color: var(--cx-muted); }
.cx-order2 .st.t-done { color: var(--cx-fit); }
.cx-order2 .st.t-now { color: var(--cx-mari-ink); }
.cx-order2 .st.t-late { color: var(--cx-mari-ink); }
.cx-order2 li.now { background: var(--cx-mari-soft); }
.cx-order2 li.me { box-shadow: inset 0 0 0 2px var(--cx-green); }
.cx-order2 li.now .a { background: var(--cx-mari); color: var(--cx-mari-fg); }
.cx-strip { list-style: none; margin: 12px 0 0; padding: 0; display: flex; gap: 6px; overflow: hidden; }
.cx-strip li { display: flex; flex-direction: column; align-items: center; gap: 3px; width: 46px; flex: none; }
.cx-strip .a { width: 38px; height: 38px; border-radius: 50%; background: var(--cx-soft); color: var(--cx-green); font-weight: 800; font-size: 12px; display: grid; place-items: center; }
.cx-strip li.t-done .a { background: var(--cx-green); color: var(--cx-pri-fg); }
.cx-strip li.t-now .a { background: var(--cx-mari); color: var(--cx-mari-fg); box-shadow: 0 0 0 3px var(--cx-card), 0 0 0 5px var(--cx-mari); }
.cx-strip li.me .a { box-shadow: inset 0 0 0 2px var(--cx-green); }
.cx-strip li.t-r3 .a, .cx-strip li.t-end .a { opacity: 0.6; }
.cx-strip .l { font-size: 10px; font-weight: 700; color: var(--cx-muted); text-align: center; line-height: 1.15; min-height: 23px; }
.cx-strip { display: none; }

/* ---- Waiting ---- */
.cx-wait { margin-top: 18px; display: flex; align-items: center; gap: 18px; background: var(--cx-card); border: 1px solid var(--cx-line); border-radius: 20px; padding: 14px 22px; }
.cx-wait .txt { flex: 1; min-width: 0; }
.cx-wait .kick { color: var(--cx-muted); }
.cx-wait h1 { margin: 2px 0 0; font-size: 28px; font-weight: 800; line-height: 1.05; }
.cx-wait .sub { font-size: 14px; color: var(--cx-muted); margin-top: 2px; }
.cx-yournote { margin: 10px 0 0; background: var(--cx-soft); color: var(--cx-green); border-radius: 12px; padding: 10px 12px; font-weight: 700; font-size: 13.5px; line-height: 1.4; }
.cx-wait .stat { text-align: right; flex: none; }
.cx-wait .stat b { display: block; font-family: var(--cx-display); font-weight: 800; font-stretch: 75%; font-size: 30px; color: var(--cx-green); line-height: 1; }
.cx-wait .stat.sum b { color: var(--cx-mari-ink); }
.cx-wait .stat span { font-size: 12.5px; color: var(--cx-muted); }
.cx-waitlay { display: grid; grid-template-columns: 260px minmax(0, 1fr) 330px; gap: 20px; padding-top: 16px; align-items: start; }
.cx-col-side, .cx-col-order { display: flex; flex-direction: column; gap: 14px; min-width: 0; }

/* ---- The rounds are done: one hero ---- */
.cx-hero { margin-top: 18px; border-radius: 24px; background: var(--cx-band); background-image: radial-gradient(circle at 100% 0%, #2f6a5c 0, rgba(47, 106, 92, 0) 60%); color: #fff; padding: 20px 22px; }
.cx-hero .kick { color: var(--cx-band-gold); }
.cx-hero h1 { color: #fff; font-size: 30px; font-weight: 800; line-height: 1.04; margin: 6px 0 0; }
.cx-hero p { color: var(--cx-band-sub); font-size: 14px; margin: 6px 0 0; }
.cx-stp { list-style: none; display: flex; gap: 4px; margin: 14px 0 0; padding: 0; max-width: 520px; }
.cx-stp li { flex: 1; height: 6px; border-radius: 9px; background: rgba(255, 255, 255, 0.2); }
.cx-stp li.done { background: var(--cx-mari); }
.cx-stp li.now { background: #fff; }
.cx-hstats { display: grid; grid-template-columns: repeat(3, minmax(0, 120px)); gap: 8px; margin-top: 16px; }
.cx-hstats b { display: block; font-family: var(--cx-display); font-size: 28px; font-weight: 800; font-stretch: 72%; line-height: 1; }
.cx-hstats .sum b { color: var(--cx-band-gold); }
.cx-hstats span { font-size: 11.5px; color: var(--cx-band-kick); }
.cx-hrows { margin-top: 12px; padding: 6px 16px; gap: 0; }
.cx-hrows .r { display: flex; gap: 10px; align-items: flex-start; padding: 9px 0; border-top: 1px solid var(--cx-line-soft); font-size: 13.5px; }
.cx-hrows .r:first-child { border-top: 0; }
.cx-hrows .r > div { display: flex; flex-direction: column; }
.cx-hrows i { width: 22px; height: 22px; border-radius: 50%; background: var(--cx-soft); color: var(--cx-green); display: grid; place-items: center; font-style: normal; font-size: 11px; font-weight: 800; flex: none; }
.cx-hrows i.sum { background: var(--cx-mari-soft); color: var(--cx-mari-ink); }
.cx-season { margin-top: 18px; background: var(--cx-mari-soft); border-color: var(--cx-mari-line); }
.cx-season .cx-btn { width: auto; align-self: flex-start; }

/* ---- The chosen day (laptop: the side column; phone: a bottom sheet) ---- */
.cx-daypanel h2, .cx-dayp h2 { font-size: 26px; font-weight: 800; line-height: 1.05; margin: 0; }
.cx-daypanel.hot { border-color: var(--cx-mari); box-shadow: 0 0 0 3px var(--cx-mari-soft); }
.cx-daypanel .kick, .cx-dayp .kick { color: var(--cx-mari-ink); }
.cx-dayp { display: flex; flex-direction: column; gap: 10px; }

/* ---- Sheets: bottom sheets on phones, centred above ---- */
.cx dialog.cx-sheet { width: 100%; max-width: 460px; margin: auto auto 0; border: 0; border-radius: 26px 26px 0 0; padding: 10px 18px calc(22px + env(safe-area-inset-bottom, 0px)); box-sizing: border-box; max-height: 92dvh; overflow-y: auto; box-shadow: 0 -12px 40px var(--cx-shadow); }
.cx dialog.cx-sheet[open] { display: flex; flex-direction: column; gap: 12px; }
.cx-sheet h2 { margin: 0; font-size: 22px; font-weight: 800; }
.cx-sheet .grab { width: 42px; height: 5px; border-radius: 9px; background: var(--cx-line); margin: 0 auto 4px; flex: none; }
.cx-confirm-sheet h2 { font-size: 26px; }
.cx-confirm-sheet .kick { color: var(--cx-muted); }
.cx-items { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.cx-item { display: flex; gap: 12px; align-items: center; border: 1.5px solid var(--cx-mari); background: var(--cx-mari-soft); border-radius: 14px; padding: 10px 12px; }
.cx-item .dn, .cx-pks .dn { width: 46px; text-align: center; line-height: 1; flex: none; }
.cx-item .dn small, .cx-pks .dn small { display: block; font-size: 10.5px; font-weight: 700; color: var(--cx-mari-ink); letter-spacing: 0.08em; }
.cx-item .dn b, .cx-pks .dn b { font-family: var(--cx-display); font-size: 24px; font-weight: 800; font-stretch: 75%; }
.cx-item .t { display: block; font-weight: 800; font-size: 15.5px; font-stretch: 85%; }
.cx-item .s { display: block; font-size: 12.5px; color: var(--cx-mari-ink); }
.cx-checks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.cx-checks li, .cx-checkline { display: flex; gap: 8px; align-items: center; font-size: 13.5px; color: var(--cx-fit); font-weight: 700; margin: 0; }
.cx-checks i, .cx-checkline i { width: 20px; height: 20px; border-radius: 50%; background: var(--cx-fit); color: var(--cx-card); display: grid; place-items: center; font-size: 11px; font-style: normal; font-weight: 800; flex: none; }
.cx-done { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; padding-top: 10px; }
.cx-done .d1 { fill: var(--cx-mari-soft); } .cx-done .d2 { fill: var(--cx-green-dark); } .cx-done .d3 { stroke: var(--cx-mari); }
:root[data-theme="dark"] .cx-done .d2 { fill: #174a43; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .cx-done .d2 { fill: #174a43; } }
.cx-done h2 { font-size: 28px; line-height: 1.05; }
.cx-done .kick { color: var(--cx-muted); }
.cx-lines { background: var(--cx-card); border: 1px solid var(--cx-line); border-radius: 18px; padding: 4px 16px; }
.cx-lines > div { display: flex; justify-content: space-between; padding: 8px 0; border-top: 1px solid var(--cx-line-soft); font-size: 13.5px; }
.cx-lines > div:first-child { border-top: 0; }
.cx-lines span { color: var(--cx-muted); }
.cx-nextup { display: flex; gap: 10px; align-items: center; background: var(--cx-soft); border-radius: 14px; padding: 12px 14px; color: var(--cx-green); font-weight: 700; font-size: 13.5px; }
.cx-nextup .cx-av { width: 32px; height: 32px; font-size: 11px; background: var(--cx-green); color: var(--cx-pri-fg); }
@media (min-width: 641px) { .cx dialog.cx-sheet { margin: auto; border-radius: 22px; padding: 22px 24px; } .cx dialog.cx-sheet .grab { display: none; } }

/* ---- Your Consortium ---- */
.cx-meters { display: grid; grid-template-columns: repeat(2, minmax(0, 280px)); gap: 8px; }
.cx-meter { background: var(--cx-card); border: 1px solid var(--cx-line); border-radius: 16px; padding: 12px; display: flex; gap: 10px; align-items: center; }
.cx-meter > div { display: flex; flex-direction: column; }
.cx-meter span { font-size: 12px; color: var(--cx-muted); }
.cx-meter.sum { background: var(--cx-mari-soft); border-color: var(--cx-mari-line); }
.cx-meter.sum b, .cx-meter.sum span { color: var(--cx-mari-ink); }
.mt-track { stroke: var(--cx-soft); } .mt-fill { stroke: var(--cx-green); }
.cx-meter.sum .mt-track { stroke: var(--cx-mari-line); } .cx-meter.sum .mt-fill { stroke: var(--cx-mari); }
.cx-minecols { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 18px; align-items: start; }
.cx-minecols > div { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.cx-mh2 { font-family: inherit; font-size: 12px; font-weight: 800; letter-spacing: 0.12em; color: var(--cx-green); margin: 8px 0 0; text-transform: uppercase; font-stretch: 100%; }
.cx-pks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.cx-pks li { display: flex; gap: 12px; align-items: center; background: var(--cx-card); border: 1px solid var(--cx-line); border-radius: 14px; padding: 9px 12px; }
.cx-pks li.wait { border-color: var(--cx-mari); }
.cx-pks .dn small { color: var(--cx-muted); }
.cx-pks .t { flex: 1; min-width: 0; }
.cx-pks .st { display: flex; align-items: center; gap: 6px; font-size: 12px; color: var(--cx-muted); margin-top: 2px; }
.cx-pks .st i { width: 8px; height: 8px; border-radius: 50%; background: var(--cx-fit); flex: none; }
.cx-pks li.wait .st i { background: var(--cx-mari); }

/* ---- Wishlist ---- */
.cx-wish { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.cx-wish li { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 14px; background: var(--cx-card); border: 1px solid var(--cx-line); }
.cx-wish li.dragging { opacity: 0.5; }
.cx-wish li.blocked { background: var(--cx-full); color: var(--cx-muted); }
.cx-wish li.blocked .t { text-decoration: line-through; }
.cx-wish li.triple { flex-wrap: wrap; background: var(--cx-soft); border: 2px solid var(--cx-green); }
.cx-wish li.picking { border-color: var(--cx-mari); box-shadow: 0 0 0 1px var(--cx-mari); }
.cx-wish .grip { color: var(--cx-blk-fg); cursor: grab; font-size: 16px; user-select: none; }
.cx-wish .n { font-family: var(--cx-display); font-stretch: 75%; font-weight: 800; font-size: 18px; width: 20px; color: var(--cx-muted); }
.cx-wish .body { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.cx-wish .t { font-weight: 700; }
.cx-wish small { font-size: 12.5px; color: var(--cx-muted); }
.cx-wish small.gold { color: var(--cx-mari-ink); font-weight: 600; }
.cx-wish .tools { display: flex; gap: 4px; }
.cx .cx-wish .tools button { min-height: 44px; width: 44px; padding: 0; border-radius: 10px; font-size: 15px; }
.cx-group-bar { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 12px; border-radius: 12px; background: var(--cx-mari-soft); font-size: 14px; }

/* ---- Older screens kept as they were (My requests, holiday preferences, the scheduler desk), on the tokens ---- */
.cx-card { background: var(--cx-card); border: 1px solid var(--cx-line); border-radius: 14px; padding: 18px; display: flex; flex-direction: column; gap: 12px; }
.cx-card h2 { font-size: 19px; font-weight: 800; margin: 0; }
.cx-card .muted, .cx .muted { color: var(--cx-muted); }
.cx-row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; font-size: 14px; }
.cx-row b { font-weight: 800; white-space: nowrap; font-variant-numeric: tabular-nums; }
.cx-pill { font-size: 12px; font-weight: 700; color: var(--cx-green); background: var(--cx-soft); padding: 4px 8px; border-radius: 999px; white-space: nowrap; }
.cx-pill.gold { color: var(--cx-mari-ink); background: var(--cx-mari-soft); }
.cx-problems { margin: 0; padding: 10px 12px 10px 30px; border-radius: 8px; background: var(--cx-danger-soft); color: var(--cx-danger); font-size: 13px; font-weight: 600; }
.cx-fine { font-size: 13px; color: var(--cx-fit); font-weight: 700; margin: 0; }
.cx-empty { text-align: center; padding: 36px 18px; }
.cx-empty h2 { font-size: 24px; line-height: 1.1; }
.cx-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.cx-turn-page { max-width: 620px; margin: 0 auto; display: flex; flex-direction: column; gap: 14px; padding-top: 20px; }
.cx-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.cx-tile { background: var(--cx-card); border: 1px solid var(--cx-line); border-radius: 12px; padding: 10px 12px; display: flex; flex-direction: column; gap: 2px; }
.cx-tile small { font-size: 12.5px; font-weight: 600; color: var(--cx-muted); }
.cx-tile b { font-family: var(--cx-display); font-stretch: 80%; font-size: 26px; font-weight: 800; line-height: 1.1; font-variant-numeric: tabular-nums; }
.cx-tile b span { font-size: 14px; color: var(--cx-muted); font-weight: 600; }
.cx-banner { padding: 16px; border-radius: 14px; background: var(--cx-card); color: var(--cx-ink); border: 1px solid var(--cx-line); display: flex; flex-direction: column; gap: 6px; }
.cx-banner .big { font-family: var(--cx-display); font-stretch: 80%; font-size: 24px; font-weight: 800; line-height: 1.1; }
.cx-banner p { font-size: 14px; color: var(--cx-muted); line-height: 1.45; margin: 0; }
.cx-banner.season { background: var(--cx-mari-soft); border-color: var(--cx-mari-line); }
.cx-banner.season p { color: var(--cx-ink); }
.cx-other { display: grid; grid-template-columns: 1fr 1fr auto; gap: 8px; align-items: end; }
.cx-other label { font-size: 12.5px; font-weight: 700; color: var(--cx-muted); display: flex; flex-direction: column; gap: 4px; }
.cx-seg { display: flex; background: var(--cx-soft); border-radius: 12px; padding: 4px; gap: 3px; }
.cx .cx-seg button { flex: 1; min-height: 40px; border: 0; background: transparent; color: var(--cx-muted); font-size: 14px; }
.cx .cx-seg button[aria-pressed="true"] { background: var(--cx-card); color: var(--cx-ink); box-shadow: 0 1px 2px var(--cx-shadow); }
.cx-nc-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.cx-nc-list > li { border-top: 1px solid var(--cx-line-soft); padding: 10px 0; gap: 10px; }
.cx-nc-list > li:first-child { border-top: 0; }
.cx-nc-item { display: flex; align-items: center; justify-content: space-between; }
.cx-nc-item span { display: flex; flex-direction: column; gap: 2px; }
.cx-nc-item small { font-size: 13px; color: var(--cx-muted); }
.cx .cx-withdraw { min-height: 44px; padding: 0 12px; border-radius: 8px; color: var(--cx-danger); font-weight: 700; background: var(--cx-card); }
.cx-nc-grid { display: grid; grid-template-columns: repeat(7, minmax(44px, 1fr)); gap: 4px; }
.cx-nc-dow { font-size: 12px; color: var(--cx-muted); text-align: center; }
.cx .cx-nc-day { min-width: 44px; min-height: 44px; padding: 0; border-radius: 8px; font-weight: 700; border: 1px solid var(--cx-line); background: var(--cx-card); color: var(--cx-ink); }
.cx .cx-nc-nav { min-width: 44px; min-height: 44px; padding: 0; font-size: 20px; }
.cx .cx-nc-day.off { border: 0; background: transparent; color: var(--cx-blk-fg); }
.cx button.cx-nc-day.mine { border: 0; background: var(--cx-r1); color: var(--cx-green); box-shadow: none; }
.cx button.cx-nc-day.sel { border: 0; background: var(--cx-green); color: var(--cx-pri-fg); outline: 0; }
.cx-nc-msg { margin: 4px 0; font-weight: 600; color: var(--cx-muted); }
.cx-nc-msg.ok { color: var(--cx-fit); }
.cx-nc-msg.no { color: var(--cx-danger); }
.cx-sheet-actions > button { flex: 1; min-height: 48px; }
@media (max-width: 380px) { .cx dialog#nc-sheet { padding: 16px 4px 20px; } dialog#nc-sheet > h2, dialog#nc-sheet > p, dialog#nc-sheet > .cx-row, dialog#nc-sheet > .cx-actions { margin-inline: 8px; } .cx-nc-grid { gap: 0; } .cx .cx-nc-day { border-radius: 0; border-color: var(--cx-line-soft); } .cx .cx-nc-day.sel, .cx .cx-nc-day.mine { border-radius: 8px; } }
.cx-pref-row { padding: 12px 0; border-top: 1px solid var(--cx-line-soft); display: flex; flex-direction: column; gap: 6px; }
.cx-pref-slider { display: flex; align-items: center; gap: 10px; }
.cx-pref-label { flex: 1; display: flex; }
.cx .cx-pref-range { -webkit-appearance: none; appearance: none; flex: 1; height: 44px; min-height: 44px; padding: 0; border: 0; background: transparent; cursor: pointer; --fill: var(--cx-muted); }
.cx-pref-range::-webkit-slider-runnable-track { height: 6px; border-radius: 3px; background: linear-gradient(to right, var(--cx-line) var(--from, 42.86%), var(--fill) var(--from, 42.86%), var(--fill) var(--to, 42.86%), var(--cx-line) var(--to, 42.86%)); }
.cx-pref-range::-moz-range-track { height: 6px; border-radius: 3px; background: linear-gradient(to right, var(--cx-line) var(--from, 42.86%), var(--fill) var(--from, 42.86%), var(--fill) var(--to, 42.86%), var(--cx-line) var(--to, 42.86%)); }
.cx-pref-range::-webkit-slider-thumb { -webkit-appearance: none; width: 26px; height: 26px; margin-top: -10px; border-radius: 50%; background: var(--cx-card); border: 2px solid var(--cx-ink); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2); }
.cx-pref-range::-moz-range-thumb { width: 22px; height: 22px; border-radius: 50%; background: var(--cx-card); border: 2px solid var(--cx-ink); }
.cx-pref-range.want { --fill: var(--cx-green); }
.cx-pref-range.nowant { --fill: var(--cx-danger); }
.cx-pref-badge { min-width: 40px; height: 36px; border-radius: 8px; display: grid; place-items: center; font-weight: 800; color: var(--cx-card); background: var(--cx-muted); font-variant-numeric: tabular-nums; }
.cx-pref-badge.want { background: var(--cx-green); }
.cx-pref-badge.nowant { background: var(--cx-danger); }
.cx-pref-scale { display: flex; justify-content: space-between; color: var(--cx-muted); font-size: 12px; }
.cx-pref-weekend { display: flex; justify-content: space-between; align-items: center; padding: 10px 12px; border-radius: 10px; background: var(--cx-soft); }
.cx-pref-preview { margin: 6px 0 0; font-weight: 700; color: var(--cx-ink); }
.cx-pref-preview:empty { display: none; }
.cx-pref-preview.no { color: var(--cx-danger); }
.cx .cx-pref-add { width: 100%; min-height: 48px; border: 1px dashed var(--cx-green); color: var(--cx-green); font-weight: 800; background: var(--cx-card); }
.cx .cx-pref-save { min-height: 52px; font-size: 16px; border-radius: 12px; }
.cx-pref-name { display: flex; flex-direction: column; gap: 1px; }
.cx-pref-name .muted { font-size: 13px; }
.cx-pref-track { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.cx-pref-track .cx-pref-scale { font-size: 11.5px; margin-top: -6px; }
.cx-pref-slider .cx-pref-step { align-self: flex-start; }
.cx .cx-pref-step { flex: none; width: 44px; height: 44px; min-height: 44px; padding: 0; border-radius: 50%; border: 1px solid var(--cx-line); background: var(--cx-card); color: var(--cx-ink); font-size: 22px; font-weight: 800; line-height: 1; display: grid; place-items: center; }
.cx .cx-pref-step[aria-disabled="true"] { opacity: 0.35; cursor: default; }
.cx-pref-notice { margin: 0; padding: 10px 12px; border-radius: 8px; background: var(--cx-mari-soft); color: var(--cx-mari-ink); font-weight: 600; }
.cx-pref-savebar { display: flex; flex-direction: column; gap: 6px; }
.cx-pref-savebar #pf-status { text-align: center; margin: 0; }
.cx-pref-savebar.dirty { position: sticky; bottom: 0; z-index: 6; margin: 0 -16px; padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px)); background: var(--cx-card); border-top: 1px solid var(--cx-line); box-shadow: 0 -4px 18px var(--cx-shadow); }
.cx-pref-savebar.dirty #pf-status { color: var(--cx-warn-ink); }
.cx-desk { display: flex; flex-direction: column; gap: 18px; padding-top: 20px; }
.cx-desk-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.cx-desk-head h1 { margin: 0; font-size: 34px; font-weight: 800; line-height: 1; }
.cx-steps { display: flex; flex-wrap: wrap; font-size: 13px; font-weight: 700; align-items: center; gap: 4px 6px; }
.cx-steps span { padding: 2px 0; color: var(--cx-muted); cursor: default; user-select: none; }
.cx-steps span + span::before { content: "›"; margin-right: 6px; color: var(--cx-blk-fg); font-weight: 400; }
.cx-steps span.done { color: var(--cx-green); }
.cx-steps span.now, .cx-steps span.next { color: var(--cx-ink); text-decoration: underline 2px var(--cx-mari); text-underline-offset: 4px; }
.cx-board { display: grid; grid-template-columns: 330px minmax(0, 1fr) 320px; gap: 18px; align-items: start; }
.cx-board > * { min-width: 0; }
.cx-order { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; font-size: 14px; }
.cx-order li { display: grid; grid-template-columns: 26px minmax(0, 1fr) auto; gap: 8px; align-items: baseline; padding: 8px; border-top: 1px solid var(--cx-line); }
.cx-order li:first-child { border-top: 0; }
.cx-order li .n { font-family: var(--cx-display); font-stretch: 75%; font-weight: 800; color: var(--cx-muted); }
.cx-order li.up { background: var(--cx-mari-soft); font-weight: 700; border-radius: 8px; border-top-color: transparent; }
.cx-order li.up + li { border-top-color: transparent; }
.cx-order .ok { color: var(--cx-fit); font-weight: 600; font-size: 13px; }
.cx-order .warn { color: var(--cx-warn-ink); font-weight: 600; font-size: 13px; }
.cx-order .quiet { color: var(--cx-muted); font-size: 13px; }
.cx-order li[draggable="true"] { cursor: grab; display: flex; justify-content: space-between; border: 1px solid var(--cx-line); border-radius: 8px; background: var(--cx-card); margin-top: 4px; }
.cx-next { background: var(--cx-band); color: #fff; border-radius: 14px; padding: 18px 20px; display: flex; flex-direction: column; gap: 10px; }
.cx-next h2 { margin: 0; font-family: var(--cx-display); font-stretch: 75%; font-size: 28px; font-weight: 800; line-height: 1.05; color: #fff; }
.cx-next p { margin: 0; font-size: 14px; opacity: 0.9; line-height: 1.45; }
.cx .cx-next button.go:disabled { background: rgba(255, 255, 255, 0.15); border-color: transparent; color: rgba(255, 255, 255, 0.75); }
.cx .cx-next button.ghost { background: transparent; color: #fff; border-color: rgba(255, 255, 255, 0.45); }
.cx .cx-next button.link { color: #fff; }
.cx-next input { width: auto; }
.cx-next label { color: #fff; }
.cx-preview { border: 1px solid var(--cx-line); border-radius: 12px; padding: 12px; display: flex; flex-direction: column; gap: 8px; background: var(--cx-card); }
.cx-preview.live { border: 2px solid var(--cx-danger); }
.cx-scroll { overflow-x: auto; }
.cx-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.cx-table th { text-align: left; color: var(--cx-muted); font-size: 12.5px; font-weight: 700; padding: 6px 8px; }
.cx-table td { padding: 8px; border-top: 1px solid var(--cx-line-soft); vertical-align: top; }
.cx-table td.num { font-variant-numeric: tabular-nums; }
.cx-table .strong { font-weight: 800; }
.cx-activity { list-style: none; margin: 0; padding: 0; font-size: 13.5px; display: flex; flex-direction: column; }
.cx-activity li { display: flex; gap: 10px; justify-content: space-between; border-top: 1px solid var(--cx-line-soft); padding: 8px 0; line-height: 1.4; }
.cx-activity li:first-child { border-top: 0; }
.cx-activity li > span:last-child { color: var(--cx-muted); white-space: nowrap; }
.cx-fold { background: var(--cx-card); border: 1px solid var(--cx-line); border-radius: 14px; }
.cx-fold > summary { cursor: pointer; padding: 14px 18px; font-weight: 800; list-style-position: inside; }
.cx-fold > .in { padding: 0 18px 18px; display: flex; flex-direction: column; gap: 14px; }
.cx-lockbox { display: flex; flex-direction: column; gap: 6px; padding: 8px 10px; border: 1px dashed var(--cx-line); border-radius: 8px; }
.cx-lockbox input[type=text] { width: 100%; }
.cx-triple-note { padding: 10px 12px; border-radius: 8px; background: var(--cx-mari-soft); color: var(--cx-mari-ink); }

.cx #toast { display: none; position: fixed; left: 50%; bottom: calc(24px + var(--cx-dock-h, 0px)); transform: translateX(-50%); background: var(--cx-ink); color: var(--cx-card); padding: 12px 18px; border-radius: 12px; font-weight: 600; z-index: 40; max-width: min(560px, calc(100vw - 32px)); box-sizing: border-box; }
.cx-dock { display: none; }

/* ---- The Picks tab inside the Schedule app ---- */
.cx-picknav { display: flex; gap: 4px; background: var(--cx-soft); border-radius: 12px; padding: 4px; max-width: 520px; }
.cx .cx-picknav a { flex: 1; min-height: 40px; border-radius: 9px; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px; color: var(--cx-muted); text-decoration: none; }
.cx .cx-picknav a[aria-current="page"] { background: var(--cx-card); color: var(--cx-ink); box-shadow: 0 1px 2px var(--cx-shadow); }
.cx-embed .cx-tabs { margin-top: 10px; max-width: 520px; background: transparent; padding: 0; gap: 6px; }
.cx-embed .cx-tabs a { min-height: 44px; flex: 1; justify-content: center; border: 1px solid var(--cx-line); }
.cx-embed .cx-main { padding: 0 0 24px; max-width: none; }
.cx-embed .cx-clock2 { position: static; margin: 14px 0 0; border-radius: 18px; padding: 14px 18px; }
.cx-embed .cx-side { top: calc(var(--shell-top-h, 60px) + 16px); max-height: calc(100vh - var(--shell-top-h, 60px) - 32px); }
.cx-embed .dev-banner a { color: inherit; font-weight: 700; }

/* ---- Narrower laptops ---- */
@media (max-width: 1240px) {
  .cx-waitlay { grid-template-columns: minmax(0, 1fr) 320px; }
  .cx-col-order { grid-column: 2; grid-row: 2; }
  .cx-waitlay .cx-yearsec { grid-column: 1; grid-row: 1 / span 2; }
  .cx-col-side { grid-column: 2; grid-row: 1; }
  .cx-board { grid-template-columns: 300px minmax(0, 1fr); }
  .cx-board > .cx-activity-card { grid-column: 1 / -1; }
}
@media (max-width: 1100px) {
  .cx-turnlay { grid-template-columns: minmax(0, 1fr) 300px; }
  .cx-wr { grid-template-columns: 30px 40px repeat(5, minmax(0, 1fr)) 28px; }
  .cx-wr.sum::before { left: 70px; right: 30px; }
}
/* ---- Phones and small tablets: the month grid, the dock and the sheets ---- */
@media (max-width: 899px) {
  .cx-top { grid-template-columns: auto 1fr auto; padding: 10px 16px 0; row-gap: 8px; }
  .cx-top .left { grid-column: 1 / 3; }
  .cx-top .cx-tabs { grid-column: 1 / -1; grid-row: 2; margin: 0 0 10px; }
  .cx-top .cx-tabs a { flex: 1; justify-content: center; padding: 0 8px; }
  .cx-account { grid-column: 3; grid-row: 1; }
  .cx-main { padding: 0 16px 48px; }
  .cx-clock2 { margin: 0 -16px; padding: 12px 16px; position: static; }
  .cx-clock2 .big { font-size: 22px; }
  .cx-clock2 .inline, .cx-clock2 .cx-verdict { display: none; }
  .cx-turnlay, .cx-waitlay, .cx-minecols { grid-template-columns: minmax(0, 1fr); gap: 14px; padding-top: 12px; }
  .cx-waitlay .cx-yearsec, .cx-col-side, .cx-col-order { grid-column: auto; grid-row: auto; }
  .cx-col-order { display: none; }
  .cx-waitlay .cx-yearsec { order: 3; }
  .cx-side { position: static; max-height: none; overflow: visible; }
  .cx-side .cx-daypanel { display: none; }
  .cx-yearsec { gap: 8px; }
  .cx-types { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin: 0 -16px; padding: 0 16px; }
  .cx-types::-webkit-scrollbar { display: none; }
  .cx .cx-types button { flex: none; min-height: 44px; }
  .cx-dayp .cx-types { flex-wrap: wrap; margin: 0; padding: 0; overflow: visible; }
  .cx-wait { padding: 18px 16px; gap: 12px; align-items: flex-start; }
  .cx-wait .cx-av.now { width: 46px; height: 46px; font-size: 15px; margin-top: 18px; }
  .cx-av.now + .txt .cx-strip { margin-left: -58px; }
  .cx-steps-p { display: none; }
  .cx-wait .stat { display: none; }
  .cx-wait h1 { font-size: 25px; }
  .cx-strip { display: flex; }
  .cx-waitlay .cx-yearsec.cx-panel { padding: 14px 12px; }
  .cx-hero h1 { font-size: 27px; }
  .cx-hstats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cx-meters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cx-dock.on { display: flex; flex-direction: column; gap: 8px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 9; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)); background: var(--cx-card); border-top: 1px solid var(--cx-line); border-radius: 22px 22px 0 0; box-shadow: 0 -10px 30px var(--cx-shadow); }
  .cx-dock .slots { display: flex; gap: 8px; }
  .cx-dock .cx-slot2 { flex: 1; min-width: 0; padding: 7px 40px 7px 10px; min-height: 52px; }
  .cx-dock .cx-slot2.full { background: var(--cx-mari-soft); border: 1.5px solid var(--cx-mari); }
  .cx-dock .cx-slot2.full span { color: var(--cx-mari-ink); text-transform: none; letter-spacing: 0; font-weight: 600; }
  .cx-dock .cx-slot2.empty { border: 1.5px dashed var(--cx-line); padding-right: 10px; }
  .cx-dock .cx-slot2.empty span, .cx-dock .cx-slot2.empty b { color: var(--cx-muted); font-weight: 600; text-transform: none; letter-spacing: 0; }
  .cx-dock .cx-slot2 b { font-size: 15px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .cx-dock .links { display: flex; justify-content: space-between; flex-wrap: wrap; margin: -4px -6px 0; }
  body.cx-has-dock .cx-main, body.cx-has-dock .cx-embed .cx-main { padding-bottom: calc(var(--cx-dock-h, 180px) + 16px); }
  .cx-embed .cx-dock.on { bottom: calc(68px + env(safe-area-inset-bottom, 0px)); padding-bottom: 12px; border-radius: 22px 22px 0 0; }
  .cx-embed .cx-clock2 { margin: 12px 0 0; }
  .cx-embed .cx-tabs { max-width: none; }
  .cx-embed .cx-picknav { max-width: none; }
  .cx-board { grid-template-columns: minmax(0, 1fr); }
  .cx-other { grid-template-columns: 1fr; }
}
@media (max-width: 380px) {
  .cx-lim3 b { font-size: 19px; }
  .cx .cx-d { padding: 4px 5px; }
  .cx .cx-d .o { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) { .cx .cx-switchrow input, .cx .cx-switchrow input::after { transition: none; } }
.cx .cx-rq th { text-transform: none; letter-spacing: 0; background: none; }
@media (min-width: 900px) { .cx-lim3 { display: none; } }
.cx .cx-btn:disabled, .cx .cx-btn.pri:disabled { background: var(--cx-full); border-color: var(--cx-line); color: var(--cx-full-fg); box-shadow: none; cursor: not-allowed; }
.cx .cx-switchrow input:checked::after { background: var(--cx-pri-fg); }
.cx aside.cx-side { background: none; border: 0; padding: 0; gap: 14px; }
.cx-clock2 .cx-slot2.full b { color: var(--cx-band-fg); }
/* The open period's hero already says it; on phones the dock carries the requests. */
@media (max-width: 899px) { .cx-hero ~ .cx-clock2 { display: none; } }
.cx-band-lim { display: none; }
.cx .cx-picknav .count { display: inline-grid; place-items: center; min-width: 20px; height: 20px; margin-left: 4px; border-radius: 999px; background: var(--cx-mari); color: var(--cx-mari-fg); font-size: 12px; font-weight: 800; }
.cx-embed .cx-tabs:empty { display: none; }
@media (max-width: 899px) {
  .cx-clock2 .txt { flex: 1 1 180px; }
  .cx-embed .cx-lim3 { display: none; }
  .cx-embed .cx-band-lim { display: inline; }
  .cx .cx-picknav a { font-size: 13px; padding: 0 6px; text-align: center; }
}
/* Inside the Schedule app the dock sits above its tab bar: the turn's other choices move up into the band. */
.cx-clock2 .links-phone { display: none; }
@media (max-width: 899px) {
  .cx-embed .cx-clock2 .links-phone { display: flex; flex-basis: 100%; justify-content: space-between; flex-wrap: wrap; margin: -6px -6px -8px; }
  .cx-embed .cx-dock .links { display: none; }
  .cx-embed .cx-dock.on { gap: 6px; padding-top: 10px; }
  .cx-embed .cx-dock .cx-slot2 { min-height: 46px; padding-top: 4px; padding-bottom: 4px; }
  .cx-embed .cx-dock .cx-btn.big { min-height: 48px; }
}
@media (max-width: 899px) { .cx .cx-clock2 .cx-lnk { min-height: 44px; } }
.cx .cx-rq th[scope="row"] { color: var(--cx-ink); }
/* The Schedule app's tab bar, as its own app.css draws it (Schedule redesign #21, 2026-10-26): the shell's ".shell a"
   colour restated, a bar under the current tab on phones, and Money under Numbers on phones. Keep in step with
   vaa-schedule-app public/assets/app.css. */
.shell .shell-tabs .shell-tab { color: var(--app-muted); position: relative; }
.shell .shell-tabs .shell-tab[aria-current="page"] { color: var(--sea); }
.shell .shell-tabs .shell-tab.live { color: var(--c-cons-fg); }
@media (max-width: 899px) {
  .shell .shell-tabs .shell-tab::after { content: ""; width: 22px; height: 4px; border-radius: 9px; background: transparent; }
  .shell .shell-tabs .shell-tab[aria-current="page"]::after { background: var(--sea); }
  .shell .shell-tabs .shell-tab.live[aria-current="page"]::after { background: var(--c-cons-fg); }
  .shell .shell-tabs .shell-tab[href="/money"] { display: none; }
}
/* Review fixes 2026-10-27: phone targets of at least 44px; the page alert after a Confirm the draft refused; the
   scheduler's way to the desk from inside Schedule. */
.cx .cx-tabs a, .cx .cx-picknav a, .cx .cx-account a, .cx .cx-name { min-height: 44px; }
.cx .cx-name { justify-content: center; }
.cx-pagealert { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 14px; }
.cx-alert { margin: 0; }
.cx-embed .cx-tabs:not(:empty) { display: flex; margin-top: 8px; }
.cx .cx-tabs a.cx-desklink { min-height: 44px; display: inline-flex; align-items: center; font-weight: 700; color: var(--cx-green); text-decoration: underline; text-underline-offset: 3px; border: 0; padding: 0 4px; flex: none; justify-content: flex-start; }
