/* ============================================================
   Property calendars (session 390): the property's Calendar tab (board 1), Add a calendar link (board 2), Calendar health (board 4), Homes
   with no calendar (board 9) and Owner holds (board 10), as drawn in mh-calendar-mockups-v1. Every value is the boards' own (their inline
   styles, which are the specification), every rule sits under .mhcal and every class carries the cl- prefix, so nothing else in the Hub changes.
   ============================================================ */
.mhcal{--cl-ink:#16181a;--cl-text:#4d545a;--cl-muted:#6b747b;--cl-line:#dfe3e6;--cl-line2:#c9d0d4;--cl-s2:#e9ecee;--cl-soft:#f6f8f9;
  --cl-b900:#0e363b;--cl-b700:#144d54;--cl-b500:#1d6e77;--cl-b300:#6fd5d4;--cl-b100:#dceff0;--cl-y500:#ffd13a;--cl-y100:#fff5cc;
  --cl-o500:#ff8a33;--cl-o700:#d96a18;--cl-o100:#ffe8d6;--cl-on-o:#9a4a0e;--cl-p500:#7a5cc7;--cl-p100:#ece6f7;--cl-on-p:#4b2e83;
  --cl-g600:#2e9c7c;--cl-g100:#e2f4ee;--cl-on-g:#08513f;--cl-a100:#fdf0d8;--cl-on-a:#7a5312;--cl-r100:#fbe4e0;--cl-on-r:#8a2617;
  --cl-card:0 4px 14px rgba(14,54,59,0.08);--cl-hero:0 10px 30px rgba(14,54,59,0.22);--cl-act:0 6px 16px rgba(217,106,24,0.28);
  font-family:Inter,'Segoe UI',system-ui,sans-serif;color:var(--cl-text);font-size:14px;font-weight:450;
  max-width:1240px;margin:0 auto;display:flex;flex-direction:column;gap:22px;box-sizing:border-box;text-align:left}
.mhcal *,.mhcal *::before,.mhcal *::after{box-sizing:border-box}
.mhcal a{color:var(--cl-b500);text-decoration:none}
.mhcal a:hover{text-decoration:underline;color:var(--cl-b700)}
.mhcal button,.mhcal input,.mhcal select{font-family:inherit}
.mhcal button{cursor:pointer}
.mhcal [hidden]{display:none !important}
.mhcal > *,.mhcal .cl-card{min-width:0}
/* The Hub's own table look (tokens.css th and td: capitals, a teal rule, one line with dots) is not the boards'; reset here, then each table below. */
.mhcal table th{text-transform:none;letter-spacing:normal;position:relative;box-shadow:none;cursor:default;user-select:auto;white-space:nowrap;line-height:1.35}
.mhcal table td{white-space:normal;overflow:visible;text-overflow:clip;max-width:none;border-bottom:none;font-size:inherit;line-height:1.4}
.mhcal :focus-visible{outline:3px solid var(--cl-b300);outline-offset:2px}
/* A full page (Calendar health, no calendar, Owner holds): the boards' frame. The property tab sits inside the property page's own frame. */
#page.cl-page{padding:calc(var(--hdrH) + var(--bandH)) 0 0;max-width:none;margin:0;box-sizing:border-box;background:#f2f4f5;min-height:100vh}
.mhcal.cl-full{padding:28px 32px 64px}
.mhcal.cl-tab{padding:0}

/* ---------- headings ---------- */
.mhcal .cl-title{display:flex;flex-direction:column;gap:6px}
.mhcal .cl-title h1{margin:0;font-size:36px;line-height:1.05;font-weight:800;letter-spacing:-0.035em;color:var(--cl-ink)}
.mhcal .cl-title .cl-lede{font-size:15px;color:var(--cl-text)}
.mhcal .cl-crumb{font-size:13px;color:var(--cl-muted);display:flex;gap:8px;flex-wrap:wrap}
.mhcal .cl-crumb a{font-weight:600}

/* ---------- cards ---------- */
.mhcal .cl-card{background:#ffffff;border-radius:14px;box-shadow:var(--cl-card);overflow:hidden}
.mhcal .cl-ch{display:flex;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid var(--cl-line);flex-wrap:wrap}
.mhcal .cl-ch.cl-nol{border-bottom:none;padding:0}
.mhcal .cl-isq{width:40px;height:40px;border-radius:10px;background:var(--cl-b700);color:#ffffff;display:inline-flex;align-items:center;justify-content:center;flex:none}
.mhcal .cl-isq.cl-orange{background:var(--cl-o500);color:var(--cl-ink)}
.mhcal .cl-cht{display:flex;flex-direction:column;gap:2px;flex:1 1 320px;min-width:0}
.mhcal .cl-cht h2{margin:0;font-size:22px;font-weight:700;letter-spacing:-0.025em;color:var(--cl-ink)}
.mhcal .cl-cht .cl-sub{font-size:13px;color:var(--cl-muted)}
.mhcal .cl-body{padding:18px 20px;display:flex;flex-direction:column;gap:18px}
.mhcal .cl-note{display:flex;align-items:center;gap:10px;padding:12px 20px 16px;background:var(--cl-soft);font-size:12.5px;color:var(--cl-text);flex-wrap:wrap}
.mhcal .cl-empty{padding:18px 20px;font-size:14px;color:var(--cl-text)}
.mhcal .cl-wait-txt{padding:18px 20px;font-size:13px;color:var(--cl-muted)}
.mhcal .cl-err{padding:14px 20px;font-size:13px;color:var(--cl-on-r);background:var(--cl-r100);border-radius:12px}

/* ---------- buttons ---------- */
.mhcal .cl-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#ffffff;color:var(--cl-b700);border:1px solid var(--cl-line2);border-radius:10px;padding:10px 16px;font-weight:700;font-size:14px;min-height:44px;text-decoration:none}
.mhcal .cl-btn:hover{background:var(--cl-soft);text-decoration:none;color:var(--cl-b700)}
.mhcal .cl-btn-y{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(#ffd13a,#f5c21c);color:var(--cl-ink);border:none;border-radius:10px;padding:12px 22px;font-weight:700;font-size:14px;box-shadow:var(--cl-act);min-height:46px}
.mhcal .cl-btn-y:hover{filter:brightness(1.03)}
.mhcal .cl-btn-y:disabled,.mhcal .cl-btn-y.cl-off{background:var(--cl-s2);box-shadow:none;color:var(--cl-text);cursor:default}
.mhcal .cl-btn-2{background:#ffffff;color:var(--cl-b700);border:1px solid var(--cl-line2);border-radius:10px;padding:12px 18px;font-weight:600;font-size:14px;min-height:46px}
.mhcal .cl-btn-2:hover{background:var(--cl-soft)}
.mhcal .cl-act{display:flex;align-items:center;justify-content:center;width:100%;background:#ffffff;color:var(--cl-b700);border:1px solid var(--cl-line2);border-radius:10px;height:42px;font-weight:700;font-size:13px;text-decoration:none;padding:0 4px;white-space:nowrap;letter-spacing:normal;line-height:1}
.mhcal .cl-act:hover{background:var(--cl-soft);text-decoration:none}
.mhcal .cl-lk{background:none;border:none;color:var(--cl-b500);font-weight:600;font-size:14px;padding:6px 2px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#1d6e7766}
.mhcal .cl-lk:hover{color:var(--cl-b700);text-decoration-color:currentColor}
.mhcal a.cl-go{font-weight:700;font-size:14px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#1d6e7766;white-space:nowrap}
.mhcal .cl-pills{display:flex;gap:6px;flex-wrap:wrap}
.mhcal .cl-pill-b{background:var(--cl-s2);color:var(--cl-text);border:none;border-radius:999px;padding:8px 14px;font-weight:600;font-size:12.5px;min-height:36px}
.mhcal .cl-pill-b.cl-on{background:var(--cl-b700);color:#ffffff}
.mhcal .cl-pill-b:hover:not(.cl-on){background:#dde2e5}

/* ---------- small pills ---------- */
.mhcal .cl-tag{display:inline-block;font-size:12.5px;font-weight:600;padding:4px 10px;border-radius:999px;white-space:nowrap}
.mhcal .cl-t-ok{background:var(--cl-g100);color:var(--cl-on-g)}
.mhcal .cl-t-amber{background:var(--cl-a100);color:var(--cl-on-a)}
.mhcal .cl-t-red{background:var(--cl-r100);color:var(--cl-on-r)}
.mhcal .cl-t-grey{background:var(--cl-s2);color:var(--cl-text)}
.mhcal .cl-t-teal{background:var(--cl-b100);color:var(--cl-b700)}
.mhcal .cl-t-purple{background:var(--cl-p100);color:var(--cl-on-p)}

/* ---------- board 1: Right now ---------- */
.mhcal .cl-band{background:linear-gradient(135deg,#144d54,#0e363b);border-radius:18px;box-shadow:var(--cl-hero);color:#ffffff;padding:16px 24px;display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.mhcal .cl-band-main{display:flex;flex-direction:column;gap:2px;min-width:170px}
.mhcal .cl-band-lbl{font-size:12px;font-weight:600;color:var(--cl-b300)}
.mhcal .cl-band-big{font-size:32px;line-height:1;font-weight:800;letter-spacing:-0.035em}
.mhcal .cl-band-it{display:flex;flex-direction:column;gap:2px}
.mhcal .cl-band-it .cl-v{font-size:17px;font-weight:800}
.mhcal .cl-band-it .cl-v.cl-y{color:var(--cl-y500)}
.mhcal .cl-band-it .cl-v.cl-o{color:var(--cl-o500)}
.mhcal .cl-band-it .cl-l{font-size:12px;color:var(--cl-b100)}
.mhcal .cl-band-read{margin-left:auto;font-size:11.5px;color:var(--cl-b100)}
.mhcal .cl-wait{display:flex;align-items:center;gap:14px;background:#ffffff;border-radius:14px;box-shadow:var(--cl-card);padding:14px 18px;flex-wrap:wrap}
.mhcal .cl-osq{min-width:28px;height:28px;border-radius:7px;background:var(--cl-o500);color:var(--cl-ink);font-size:14px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}
.mhcal .cl-wait-t{flex:1 1 420px;font-size:14px;color:var(--cl-ink)}
.mhcal .cl-wait a{font-weight:700;font-size:13px;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}

/* ---------- board 1: Next five weeks ---------- */
.mhcal .cl-tlwrap{overflow-x:auto;padding:16px 20px 8px}
.mhcal .cl-tl{display:grid;row-gap:6px;align-items:center}
.mhcal .cl-mon{font-size:12.5px;font-weight:700;color:var(--cl-ink);white-space:nowrap;overflow:hidden}
.mhcal .cl-mon.cl-mb{border-left:2px solid var(--cl-line);padding-left:6px}
.mhcal .cl-rowbg{grid-column:1 / -1;align-self:stretch;background:var(--cl-soft);border-radius:10px}
.mhcal .cl-rowbg.cl-bel{background:#ffffff;border:1px solid var(--cl-line)}
.mhcal .cl-todayc{align-self:stretch;background:rgba(29,110,119,0.16);border-radius:8px}
.mhcal .cl-day{position:relative;display:flex;flex-direction:column;align-items:center;gap:1px;padding:3px 0;color:var(--cl-text)}
.mhcal .cl-day .cl-dw{font-size:10px;font-weight:600;color:var(--cl-muted)}
.mhcal .cl-day .cl-dn{font-size:12px;font-weight:700}
.mhcal .cl-day.cl-on{background:var(--cl-b700);color:#ffffff;border-radius:8px}
.mhcal .cl-day.cl-on .cl-dw{color:#ffffff}
.mhcal .cl-day.cl-on .cl-dn{font-weight:800}
.mhcal .cl-rl{position:relative;padding-left:10px;font-size:12.5px;font-weight:600;color:var(--cl-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mhcal .cl-rl.cl-strong{font-weight:700;color:var(--cl-ink)}
.mhcal .cl-fb{position:relative;height:24px;margin:0 2px;border-radius:6px;font-size:11px;font-weight:600;display:flex;align-items:center;padding-left:8px;white-space:nowrap;overflow:hidden;min-width:0}
.mhcal .cl-fb.cl-res{background:var(--cl-b100);color:var(--cl-b700)}
.mhcal .cl-fb.cl-blk{background:#e3e7ea;color:var(--cl-muted)}
.mhcal .cl-fb.cl-new{outline:2px dashed var(--cl-b500);outline-offset:-2px}
.mhcal .cl-fb.cl-gone{border:1.5px dashed var(--cl-line2);color:var(--cl-muted);background:transparent}
.mhcal .cl-fb.cl-cl,.mhcal .cl-bb.cl-cl{margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}
.mhcal .cl-fb.cl-cr,.mhcal .cl-bb.cl-cr{margin-right:0;border-top-right-radius:0;border-bottom-right-radius:0}
.mhcal .cl-bb{position:relative;height:30px;margin:0 2px;border-radius:7px;font-size:11.5px;font-weight:700;display:flex;align-items:center;padding-left:8px;white-space:nowrap;overflow:hidden;min-width:0}
.mhcal .cl-bb.cl-guest{background:var(--cl-b500);color:#ffffff}
.mhcal .cl-bb.cl-owner{background:var(--cl-p100);color:var(--cl-on-p)}
.mhcal .cl-bb.cl-open{background:repeating-linear-gradient(135deg,#e2f4ee 0 6px,#f2faf7 6px 12px);color:var(--cl-on-g);justify-content:center;padding-left:0}
.mhcal .cl-bb.cl-hold{background:var(--cl-a100);color:var(--cl-on-a);padding-left:6px}
.mhcal .cl-bb.cl-cancelled{background:var(--cl-o100);color:var(--cl-on-o);border:1.5px dashed var(--cl-o500);padding-left:6px}
.mhcal .cl-bb.cl-closed{background:#e3e7ea;color:var(--cl-muted)}
.mhcal .cl-cc{position:relative;display:flex;justify-content:center;overflow:visible}
.mhcal .cl-chip{white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700}
.mhcal .cl-chip.cl-done{background:var(--cl-g100);color:var(--cl-on-g)}
.mhcal .cl-chip.cl-sameday{background:var(--cl-b700);color:#ffffff}
.mhcal .cl-chip.cl-booked{background:var(--cl-b100);color:var(--cl-b700)}
.mhcal .cl-chip.cl-deep{background:var(--cl-p100);color:var(--cl-on-p)}
.mhcal .cl-chip.cl-hold{background:var(--cl-a100);color:var(--cl-on-a)}
.mhcal .cl-chip.cl-cancel{background:var(--cl-o100);color:var(--cl-on-o)}
.mhcal .cl-chip.cl-noclean{background:var(--cl-o500);color:var(--cl-ink)}
.mhcal a.cl-chip:hover{text-decoration:none;filter:brightness(0.97)}
.mhcal .cl-leg{display:flex;gap:18px;flex-wrap:wrap;padding:10px 20px 18px;font-size:12px;color:var(--cl-text);align-items:center}
.mhcal .cl-leg span{display:inline-flex;align-items:center;gap:6px}
.mhcal .cl-sw{width:14px;height:10px;border-radius:3px;display:inline-block}
.mhcal .cl-leg .cl-asof{margin-left:auto;font-size:11.5px;color:var(--cl-muted)}

/* ---------- board 1: How this home is used ---------- */
.mhcal .cl-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.mhcal .cl-kpi{background:var(--cl-soft);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.mhcal .cl-kpi .cl-kv{font-size:28px;font-weight:800;letter-spacing:-0.03em;color:var(--cl-ink);line-height:1.05}
.mhcal .cl-kpi .cl-kv.cl-o{color:var(--cl-o700)}
.mhcal .cl-kpi .cl-kl{font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .cl-kpi .cl-ks{font-size:11.5px;color:var(--cl-muted)}
.mhcal .cl-chart{display:flex;flex-direction:column;gap:8px}
.mhcal .cl-chart-t{font-size:13px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-bars{position:relative;height:150px;display:flex;align-items:flex-end;gap:10px;border-bottom:1px solid var(--cl-line2);padding:0 4px}
.mhcal .cl-gl{position:absolute;left:0;right:0;border-top:1px dashed var(--cl-line)}
.mhcal .cl-gll{position:absolute;left:0;font-size:10.5px;color:var(--cl-muted)}
.mhcal .cl-bcol{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;height:100%;position:relative;min-width:0}
.mhcal .cl-bcol .cl-bp{font-size:11px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-bcol .cl-bar{width:70%;border-radius:5px 5px 0 0;background:var(--cl-b500)}
.mhcal .cl-bcol .cl-bar.cl-hi{background:var(--cl-b700)}
.mhcal .cl-bcol .cl-bar.cl-cur{background:var(--cl-o500)}
.mhcal .cl-bcol .cl-bp.cl-na{color:var(--cl-muted);font-weight:600}
.mhcal .cl-blabels{display:flex;gap:10px;padding:0 4px}
.mhcal .cl-blabels span{flex:1;text-align:center;font-size:11px;color:var(--cl-text);min-width:0}
.mhcal .cl-insights{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}
.mhcal .cl-ins{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--cl-line);border-radius:12px;padding:14px 16px}
.mhcal .cl-ins-ic{width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.mhcal .cl-ins-t{display:flex;flex-direction:column;gap:3px}
.mhcal .cl-ins-t b{font-size:14px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-ins-t span{font-size:13px;color:var(--cl-text)}
.mhcal .cl-tw{overflow-x:auto;border:1px solid var(--cl-line);border-radius:12px}
.mhcal .cl-mt{width:100%;border-collapse:collapse;min-width:760px}
.mhcal .cl-mt th{background:var(--cl-s2);text-align:right;padding:9px 12px;font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .cl-mt th:first-child{text-align:left;padding-left:16px}
.mhcal .cl-mt th:last-child,.mhcal .cl-mt td:last-child{padding-right:16px}
.mhcal .cl-mt td{padding:9px 12px;text-align:right;color:var(--cl-text);border-top:1px solid var(--cl-line)}
.mhcal .cl-mt td:first-child{text-align:left;padding-left:16px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-mt td.cl-strong{color:var(--cl-ink)}
.mhcal .cl-starts{font-size:12px;color:var(--cl-muted)}

/* ---------- board 1: Care signals ---------- */
.mhcal .cl-sig{display:flex;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid var(--cl-line);flex-wrap:wrap}
.mhcal .cl-sig:last-child{border-bottom:none}
.mhcal .cl-sig-ic{width:48px;height:48px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.mhcal .cl-sig-t{flex:1 1 360px;display:flex;flex-direction:column;gap:3px}
.mhcal .cl-sig-t b{font-size:16px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-sig-t span{font-size:13px;color:var(--cl-text)}

/* ---------- board 1: Calendar links ---------- */
.mhcal .cl-lt{width:100%;border-collapse:collapse;min-width:860px;font-size:14px}
.mhcal .cl-lt th{background:var(--cl-s2);text-align:left;padding:10px 12px;font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .cl-lt th:first-child,.mhcal .cl-lt td:first-child{padding-left:20px}
.mhcal .cl-lt th:last-child,.mhcal .cl-lt td:last-child{padding-right:20px;text-align:right}
.mhcal .cl-lt td{padding:14px 12px;border-top:1px solid var(--cl-line);color:var(--cl-text);vertical-align:middle}
.mhcal .cl-lt tr.cl-paused td{background:#fafbfb}
.mhcal .cl-src{display:flex;flex-direction:column;gap:2px}
.mhcal .cl-src b{font-weight:700;color:var(--cl-ink);font-size:15px}
.mhcal .cl-src span{font-size:12px;color:var(--cl-muted)}
.mhcal .cl-mask{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.mhcal .cl-show{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--cl-b500);font-weight:600;font-size:13px;padding:6px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#1d6e7766}
.mhcal .cl-show:hover{color:var(--cl-b700)}
.mhcal .cl-full-link{display:block;max-width:420px;font-size:12.5px;color:var(--cl-ink);word-break:break-all;background:var(--cl-soft);border-radius:8px;padding:6px 8px;margin-top:6px}
.mhcal .cl-lt .cl-acts{white-space:nowrap}
.mhcal .cl-lt .cl-acts .cl-lk + .cl-lk{margin-left:14px}
.mhcal .cl-errline{display:block;font-size:12px;color:var(--cl-on-r);margin-top:4px}

/* ---------- board 2: the drawer ---------- */
.cl-scrim{position:fixed;inset:0;background:rgba(14,24,26,0.35);z-index:900}
.mhcal.cl-drawer{position:fixed;top:0;right:0;bottom:0;width:620px;max-width:100vw;background:#ffffff;box-shadow:-8px 0 24px rgba(0,0,0,0.18);z-index:901;
  display:flex;flex-direction:column;gap:0;margin:0;padding:0}
.mhcal .cl-dh{padding:22px 26px 18px;border-bottom:1px solid var(--cl-line);display:flex;align-items:flex-start;gap:14px}
.mhcal .cl-dh h1{margin:0;font-size:22px;font-weight:700;letter-spacing:-0.025em;color:var(--cl-ink)}
.mhcal .cl-dh .cl-sub{font-size:13px;color:var(--cl-muted)}
.mhcal .cl-x{width:44px;height:44px;border:none;background:var(--cl-s2);border-radius:10px;color:var(--cl-text);display:inline-flex;align-items:center;justify-content:center;flex:none}
.mhcal .cl-x:hover{background:#dde2e5}
.mhcal .cl-db{flex:1;padding:22px 26px;display:flex;flex-direction:column;gap:20px;overflow-y:auto}
.mhcal .cl-df{padding:16px 26px;border-top:1px solid var(--cl-line);display:flex;justify-content:flex-end;gap:10px;background:#ffffff;flex-wrap:wrap}
.mhcal .cl-fld{display:flex;flex-direction:column;gap:8px}
.mhcal .cl-fld label,.mhcal .cl-fld .cl-flbl{font-size:12.5px;font-weight:600;color:var(--cl-ink)}
.mhcal .cl-fld label .cl-optl{font-weight:450;color:var(--cl-muted)}
.mhcal .cl-in{height:44px;border:1px solid var(--cl-line2);border-radius:10px;padding:0 14px;font-size:14px;color:var(--cl-ink);background:#ffffff;width:100%}
.mhcal .cl-in.cl-url{height:46px;border:1.5px solid var(--cl-b300);outline:none}
.mhcal .cl-in:focus{border-color:var(--cl-b500);outline:2px solid var(--cl-b300);outline-offset:0}
.mhcal .cl-help{font-size:12px;color:var(--cl-muted)}
.mhcal .cl-plat{display:flex;align-items:center;gap:12px;background:var(--cl-soft);border-radius:12px;padding:14px 16px}
.mhcal .cl-plat-ic{width:38px;height:38px;border-radius:10px;background:var(--cl-b100);color:var(--cl-b500);display:inline-flex;align-items:center;justify-content:center;flex:none}
.mhcal .cl-plat-t{flex:1;display:flex;flex-direction:column;gap:2px}
.mhcal .cl-plat-t b{font-size:15px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-plat-t span{font-size:12.5px;color:var(--cl-text)}
.mhcal .cl-res{border-radius:12px;border:1px solid var(--cl-line);overflow:hidden}
.mhcal .cl-res-h{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--cl-g100);font-size:14px;font-weight:700;color:var(--cl-on-g)}
.mhcal .cl-res-h.cl-bad{background:var(--cl-r100);color:var(--cl-on-r)}
.mhcal .cl-res-h.cl-busy{background:var(--cl-soft);color:var(--cl-text);font-weight:600}
.mhcal .cl-res-r{display:flex;align-items:center;gap:12px;padding:11px 16px;border-top:1px solid var(--cl-line)}
.mhcal .cl-res-r .cl-rd{width:128px;font-weight:600;color:var(--cl-ink);flex:none}
.mhcal .cl-res-r .cl-rl2{flex:1;color:var(--cl-text);min-width:0}
.mhcal .cl-res-r .cl-tag{font-size:12px;padding:3px 9px}
.mhcal .cl-res-more{padding:10px 16px;border-top:1px solid var(--cl-line);font-size:12.5px}
.mhcal .cl-warn{border-radius:12px;background:var(--cl-o100);padding:16px;display:flex;flex-direction:column;gap:12px}
.mhcal .cl-warn-h{display:flex;gap:10px;align-items:flex-start}
.mhcal .cl-warn-h b{font-size:14px;font-weight:700;color:var(--cl-on-o);display:block}
.mhcal .cl-warn-h span{font-size:13px;color:var(--cl-on-o)}
.mhcal .cl-radio{display:flex;align-items:center;gap:10px;background:#ffffff;border:1px solid var(--cl-line2);border-radius:10px;padding:12px 14px;cursor:pointer}
.mhcal .cl-radio.cl-on{border:2px solid var(--cl-b500);padding:11px 13px}
.mhcal .cl-radio input{width:18px;height:18px;accent-color:var(--cl-b500);margin:0;flex:none}
.mhcal .cl-radio span{display:flex;flex-direction:column;gap:1px}
.mhcal .cl-radio b{font-weight:700;color:var(--cl-ink)}
.mhcal .cl-radio small{font-size:12.5px;color:var(--cl-muted)}
.mhcal .cl-lockline{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--cl-text)}
.mhcal .cl-sugg{border:1px solid var(--cl-line);border-radius:10px;overflow:hidden}
.mhcal .cl-sugg button{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;background:#ffffff;border:none;border-top:1px solid var(--cl-line);padding:10px 14px}
.mhcal .cl-sugg button:first-child{border-top:none}
.mhcal .cl-sugg button:hover,.mhcal .cl-sugg button:focus-visible{background:var(--cl-soft)}
.mhcal .cl-sugg b{color:var(--cl-ink);font-weight:700}
.mhcal .cl-sugg small{color:var(--cl-muted);font-size:12px}

/* ---------- board 4: Calendar health ---------- */
.mhcal .cl-hero{background:linear-gradient(135deg,#144d54,#0e363b);border-radius:18px;box-shadow:var(--cl-hero);color:#ffffff;padding:26px 28px;display:flex;flex-direction:column;gap:18px}
.mhcal .cl-hero-n{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}
.mhcal .cl-hero-n b{font-size:64px;line-height:0.9;font-weight:800;letter-spacing:-0.04em}
.mhcal .cl-hero-n span{font-size:17px;font-weight:700}
.mhcal .cl-hbar{display:flex;height:18px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,0.12)}
.mhcal .cl-hleg{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.mhcal .cl-hleg > div{display:flex;gap:10px;align-items:flex-start}
.mhcal .cl-hleg i{width:12px;height:12px;border-radius:3px;margin-top:5px;flex:none}
.mhcal .cl-hleg span{display:flex;flex-direction:column;gap:2px}
.mhcal .cl-hleg b{font-size:24px;font-weight:800}
.mhcal .cl-hleg small{font-size:12.5px;color:var(--cl-b100)}
.mhcal .cl-srcc{background:#ffffff;border-radius:14px;box-shadow:var(--cl-card);padding:20px;display:flex;flex-direction:column;gap:16px}
.mhcal .cl-srow{display:grid;grid-template-columns:220px 1fr 50px;gap:12px;align-items:center}
.mhcal .cl-srow b{font-weight:700;color:var(--cl-ink)}
.mhcal .cl-srow b small{font-weight:450;color:var(--cl-muted);font-size:12.5px}
.mhcal .cl-strack{height:22px;background:var(--cl-s2);border-radius:6px;overflow:hidden;display:flex}
.mhcal .cl-strack i{background:var(--cl-b500);border-radius:6px;display:block}
.mhcal .cl-strack i.cl-o{background:var(--cl-o500)}
.mhcal .cl-srow .cl-sn{font-weight:800;color:var(--cl-ink);text-align:right}
.mhcal .cl-sfoot{font-size:12.5px;color:var(--cl-text);background:var(--cl-soft);border-radius:10px;padding:12px 14px}
.mhcal .cl-fix{display:flex;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid var(--cl-line);flex-wrap:wrap}
.mhcal .cl-fix:last-child{border-bottom:none}
.mhcal .cl-fix-n{width:48px;height:48px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:17px;font-weight:800}
.mhcal .cl-fix-t{flex:1 1 380px;display:flex;flex-direction:column;gap:3px;min-width:0}
.mhcal .cl-fix-t b{font-size:16px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-fix-t span{font-size:13px;color:var(--cl-text)}
.mhcal .cl-fix-list{flex:1 1 100%;display:flex;flex-direction:column;border:1px solid var(--cl-line);border-radius:10px;overflow:hidden}
.mhcal .cl-fix-list > div{display:flex;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--cl-line);flex-wrap:wrap}
.mhcal .cl-fix-list > div:first-child{border-top:none}
.mhcal .cl-fix-list a{font-weight:700}
.mhcal .cl-fix-list .cl-fd{flex:1 1 240px;font-size:13px;color:var(--cl-text)}
.mhcal .cl-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.mhcal .cl-tile{background:#ffffff;border:2px dashed var(--cl-line2);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:8px}
.mhcal .cl-tile.cl-live{border:none;box-shadow:var(--cl-card)}
.mhcal .cl-tile b{font-size:16px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-tile .cl-tn{font-size:32px;font-weight:800;letter-spacing:-0.035em;line-height:1;color:var(--cl-ink)}
.mhcal .cl-tile span{font-size:13px;color:var(--cl-text)}
.mhcal .cl-tile .cl-need{align-self:flex-start;background:var(--cl-y100);color:var(--cl-ink);font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px}

/* ---------- board 9: homes with no calendar ---------- */
.mhcal .cl-tally{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.mhcal .cl-tal{background:#ffffff;border-radius:14px;box-shadow:var(--cl-card);padding:16px;display:flex;flex-direction:column;gap:6px}
.mhcal .cl-tal b{font-size:32px;font-weight:800;letter-spacing:-0.035em;line-height:1;color:var(--cl-ink)}
.mhcal .cl-tal span{font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .cl-tal.cl-link{background:var(--cl-o100)}
.mhcal .cl-tal.cl-link b{color:var(--cl-o700)}
.mhcal .cl-tal.cl-link span{color:var(--cl-on-o)}
.mhcal .cl-ask{display:flex;align-items:center;gap:14px;padding:13px 20px;border-bottom:1px solid var(--cl-line);flex-wrap:wrap}
.mhcal .cl-ask-t{flex:1 1 380px;display:flex;flex-direction:column;gap:2px;min-width:0}
.mhcal .cl-ask-t b{font-size:15px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-ask-t span,.mhcal .cl-ask .cl-em{font-size:13px;color:var(--cl-text)}
.mhcal .cl-ask a{font-weight:700;font-size:13px}
.mhcal .cl-filt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--cl-line);flex-wrap:wrap}
.mhcal .cl-fpill{background:var(--cl-s2);color:var(--cl-text);border:none;border-radius:999px;padding:9px 16px;font-weight:700;font-size:13px;min-height:40px}
.mhcal .cl-fpill.cl-on{background:var(--cl-b700);color:#ffffff}
.mhcal .cl-nrow{display:flex;align-items:center;gap:14px;padding:12px 20px;border-bottom:1px solid var(--cl-line);flex-wrap:wrap}
.mhcal .cl-nrow-t{flex:1 1 320px;display:flex;flex-direction:column;gap:3px;min-width:0}
.mhcal .cl-nrow-t .cl-nm{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.mhcal .cl-nrow-t .cl-nm a{font-size:15px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-nrow-t .cl-flag{background:var(--cl-a100);color:var(--cl-on-a);font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:999px}
.mhcal .cl-nrow-t .cl-ns{font-size:12.5px;color:var(--cl-muted)}
.mhcal .cl-ans{display:flex;flex-direction:column;gap:6px;align-items:flex-end;flex:0 1 auto}
.mhcal .cl-opts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.mhcal .cl-opt{background:#ffffff;color:var(--cl-text);border:1px solid var(--cl-line2);border-radius:999px;padding:6px 11px;font-weight:600;font-size:12px;min-height:34px}
.mhcal .cl-opt:hover{border-color:var(--cl-b500)}
.mhcal .cl-opt.cl-on{background:var(--cl-b700);color:#ffffff;border-color:var(--cl-b700)}
.mhcal .cl-opt.cl-on.cl-lnk{background:var(--cl-o500);color:var(--cl-ink);border-color:var(--cl-o500)}
.mhcal .cl-kinds{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.mhcal .cl-kinds > span{font-size:12px;color:var(--cl-muted)}
.mhcal .cl-kind{background:#ffffff;color:var(--cl-b700);border:1px solid var(--cl-line2);border-radius:8px;padding:5px 10px;font-weight:600;font-size:12px;min-height:32px}
.mhcal .cl-kind.cl-on{background:var(--cl-b100);border-color:var(--cl-b500)}
.mhcal .cl-kinds a{font-size:12px;font-weight:700}

/* ---------- board 10: Owner holds ---------- */
.mhcal .cl-tabs{display:flex;gap:6px;flex-wrap:wrap}
.mhcal .cl-tabs a,.mhcal .cl-tabs span{background:var(--cl-s2);color:var(--cl-text);border-radius:999px;padding:9px 16px;font-weight:600;font-size:13px;text-decoration:none}
.mhcal .cl-tabs .cl-on{background:var(--cl-b700);color:#ffffff;font-weight:700}
.mhcal .cl-ht{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.mhcal .cl-htile{background:#ffffff;border-radius:14px;box-shadow:var(--cl-card);padding:18px 20px;display:flex;flex-direction:column;gap:6px}
.mhcal .cl-htile b{font-size:40px;font-weight:800;letter-spacing:-0.035em;line-height:1;color:var(--cl-ink)}
.mhcal .cl-htile span{font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .cl-htile small{font-size:11.5px;color:var(--cl-muted)}
.mhcal .cl-htile.cl-amber{background:var(--cl-a100)}
.mhcal .cl-htile.cl-amber b,.mhcal .cl-htile.cl-amber span,.mhcal .cl-htile.cl-amber small{color:var(--cl-on-a)}
.mhcal .cl-htile.cl-amber span{font-weight:700}
.mhcal .cl-sel{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;border-bottom:1px solid var(--cl-line);background:var(--cl-soft);flex-wrap:wrap}
.mhcal .cl-sel label{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:var(--cl-ink);cursor:pointer;min-height:44px}
.mhcal .cl-sel label input{width:20px;height:20px;accent-color:var(--cl-b500);margin:0}
.mhcal .cl-sel label small{font-weight:450;color:var(--cl-muted);font-size:13px}
.mhcal .cl-sel .cl-sbtns{display:inline-flex;gap:10px;flex-wrap:wrap}
.mhcal .cl-sel .cl-sbtns button{height:46px;min-width:200px;padding:0 18px;border-radius:10px;font-weight:700;font-size:14px}
.mhcal .cl-sel .cl-sbtns .cl-guestb{background:#ffffff;color:var(--cl-b700);border:1px solid var(--cl-line2)}
.mhcal .cl-sel .cl-sbtns .cl-holdb{background:linear-gradient(#ffd13a,#f5c21c);color:var(--cl-ink);border:none;box-shadow:var(--cl-act)}
.mhcal .cl-sel .cl-sbtns button:disabled{background:var(--cl-s2);box-shadow:none;color:var(--cl-text);border:none;cursor:default}
.mhcal .cl-wt{width:100%;border-collapse:collapse;min-width:1080px;table-layout:fixed}
.mhcal .cl-wt th{background:var(--cl-s2);text-align:left;padding:10px 12px;font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .cl-wt th:first-child{padding:10px 0 10px 18px}
.mhcal .cl-wt th:last-child{padding:10px 18px}
.mhcal .cl-wt td{padding:14px 12px;vertical-align:middle;border-top:1px solid var(--cl-line);font-size:13px;color:var(--cl-text)}
.mhcal .cl-wt td:first-child{padding:14px 0 14px 18px}
.mhcal .cl-wt td:last-child{padding:14px 18px}
.mhcal .cl-wt tr.cl-on td{background:#f4fafa}
.mhcal .cl-wt td input[type=checkbox]{width:18px;height:18px;accent-color:var(--cl-b500);margin:0}
.mhcal .cl-wt .cl-hd{display:flex;flex-direction:column;gap:3px}
.mhcal .cl-wt .cl-hd a{font-size:15px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-wt .cl-hd span{font-size:13px;color:var(--cl-text)}
.mhcal .cl-wt .cl-tag{font-size:12px}
.mhcal .cl-rt{width:100%;border-collapse:collapse;min-width:900px;table-layout:fixed}
.mhcal .cl-rt th{background:var(--cl-s2);text-align:left;padding:10px 12px;font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .cl-rt th:first-child,.mhcal .cl-rt td:first-child{padding-left:20px}
.mhcal .cl-rt th:last-child,.mhcal .cl-rt td:last-child{padding-right:20px;text-align:right}
.mhcal .cl-rt td{padding:13px 12px;border-top:1px solid var(--cl-line);font-size:13px;color:var(--cl-text)}
.mhcal .cl-rt td:first-child{font-weight:700;color:var(--cl-ink);font-size:14px}
.mhcal .cl-rt .cl-tag{font-size:12px}
.mhcal .cl-how{display:flex;gap:14px;align-items:flex-start;background:#ffffff;border-radius:14px;box-shadow:var(--cl-card);padding:18px 20px}
.mhcal .cl-how div{display:flex;flex-direction:column;gap:6px}
.mhcal .cl-how b{font-size:16px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-how span{font-size:13px;color:var(--cl-text)}
.mhcal .cl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mhcal .cl-choices{display:flex;flex-direction:column;gap:8px}
.mhcal .cl-seg{display:flex;gap:6px;flex-wrap:wrap}

/* ---------- a phone (390 wide) ---------- */
@media (max-width:760px){
  .mhcal.cl-full{padding:20px 16px 48px}
  .mhcal{gap:18px}
  .mhcal .cl-title h1{font-size:28px}
  .mhcal .cl-band{gap:16px 22px;padding:16px 18px}
  .mhcal .cl-band-read{margin-left:0;flex:1 1 100%}
  .mhcal .cl-hero{padding:20px 18px}
  .mhcal .cl-hero-n b{font-size:48px}
  .mhcal .cl-srow{grid-template-columns:1fr 44px}
  .mhcal .cl-srow .cl-strack{grid-column:1 / -1;grid-row:2}
  .mhcal .cl-ans{align-items:flex-start;flex:1 1 100%}
  .mhcal .cl-opts,.mhcal .cl-kinds{justify-content:flex-start}
  .mhcal.cl-drawer{width:100vw}
  .mhcal .cl-dh,.mhcal .cl-db{padding-left:16px;padding-right:16px}
  .mhcal .cl-df{padding:12px 16px}
  .mhcal .cl-sel .cl-sbtns{width:100%}
  .mhcal .cl-sel .cl-sbtns button{flex:1 1 100%;min-width:0}
  .mhcal .cl-res-r .cl-rd{width:108px}
}

/* ============================================================
   Session 391: the Appointments screens, drawn as mh-calendar-mockups-v1 boards 3 (Appointment changes), 5 (the Appointments calendar),
   6 (Resort match), 7 (Decline) and 8 (New appointment). Same tokens and parts as above; the new parts carry the ac- prefix.
   ============================================================ */
/* the tab bar across every Appointments screen */
.mhcal .ac-views{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--cl-line)}
.mhcal .ac-views a{padding:10px 14px;color:var(--cl-text);font-weight:600;display:inline-flex;gap:8px;align-items:center;text-decoration:none}
.mhcal .ac-views a:hover{color:var(--cl-b700);text-decoration:none}
.mhcal .ac-views a[aria-current=page]{color:var(--cl-b700);font-weight:700;border-bottom:3px solid var(--cl-b500);margin-bottom:-1px}
.mhcal .ac-cnt{background:var(--cl-o500);color:var(--cl-ink);font-size:12px;font-weight:800;padding:1px 7px;border-radius:6px}
.mhcal.ac-bar{max-width:none;margin:0 0 14px;gap:0}
.mhcal .cl-tabs a.ac-amber{background:var(--cl-a100);color:var(--cl-on-a);font-weight:700}
.mhcal .cl-tabs a:hover{text-decoration:none;filter:brightness(0.97)}
/* board 3: the table, fixed columns, every action the same */
.mhcal .ac-confirm{min-width:220px}
.mhcal .ac-qt{width:100%;border-collapse:collapse;min-width:1080px;table-layout:fixed}
.mhcal .ac-qt th{background:var(--cl-s2);text-align:left;padding:10px 12px;font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .ac-qt th:first-child{padding:10px 0 10px 18px}
.mhcal .ac-qt th:last-child{padding:10px 18px}
.mhcal .ac-qt td{padding:14px 12px;vertical-align:middle;border-top:1px solid var(--cl-line);font-size:13px;color:var(--cl-text)}
.mhcal .ac-qt td:first-child{padding:14px 0 14px 18px}
.mhcal .ac-qt td:last-child{padding:14px 18px}
.mhcal .ac-qt.ac-done td:first-child,.mhcal .ac-qt.ac-done th:first-child{padding-left:18px}
.mhcal .ac-qt tr.ac-gh td{padding:12px 12px 8px;font-size:12.5px;font-weight:700;color:var(--cl-ink);background:#ffffff}
.mhcal .ac-qt tr.ac-gh td:first-child{padding:12px 0 8px 18px}
.mhcal .ac-qt tr.ac-gh.ac-gtoday td{background:#fff7f0}
.mhcal .ac-qt tr.ac-gh.ac-gtoday td.ac-ght{color:var(--cl-on-o)}
.mhcal .ac-qt tr.ac-gh small{font-weight:450;color:var(--cl-muted);font-size:12.5px}
.mhcal .ac-qt tr.ac-on td{background:#f4fafa}
.mhcal .ac-qt input[type=checkbox]{width:18px;height:18px;accent-color:var(--cl-b500);margin:0}
.mhcal .ac-qt .cl-tag{font-size:12px}
.mhcal .ac-qt .cl-act{padding:0 12px}
.mhcal .ac-hc{display:flex;gap:12px;align-items:center}
.mhcal .ac-bd{width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:11px;font-weight:800;letter-spacing:normal}
.mhcal .ac-t-teal{background:var(--cl-b100);color:var(--cl-b700)}
.mhcal .ac-t-orange{background:var(--cl-o100);color:var(--cl-on-o)}
.mhcal .ac-t-red{background:var(--cl-r100);color:var(--cl-on-r)}
.mhcal .ac-t-grey{background:var(--cl-s2);color:var(--cl-ink)}
.mhcal .ac-t-purple{background:var(--cl-p100);color:var(--cl-on-p)}
.mhcal .ac-ht{display:flex;flex-direction:column;gap:3px;min-width:0}
.mhcal .ac-hn{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.mhcal .ac-hn a{font-size:15px;font-weight:700;color:var(--cl-ink)}
.mhcal .ac-hn a:hover{color:var(--cl-b700)}
.mhcal .ac-src{background:var(--cl-s2);color:var(--cl-text);font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;white-space:nowrap}
.mhcal .ac-hw{font-size:13px;color:var(--cl-text)}
/* board 5: the header, the tiles, the month */
.mhcal .ac-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.mhcal .ac-nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.mhcal .ac-new{display:inline-flex;align-items:center;gap:8px;background:var(--cl-b700);color:#ffffff;border:none;border-radius:10px;padding:11px 16px;font-weight:700;font-size:14px;min-height:44px}
.mhcal .ac-new:hover{background:var(--cl-b900)}
.mhcal .ac-today{background:var(--cl-s2);color:var(--cl-ink);border:none;border-radius:10px;padding:10px 14px;font-weight:700;font-size:13px;min-height:44px}
.mhcal .ac-arrow{width:44px;height:44px;background:var(--cl-s2);color:var(--cl-ink);border:none;border-radius:10px;display:inline-flex;align-items:center;justify-content:center}
.mhcal .ac-today:hover,.mhcal .ac-arrow:hover{background:#dde2e5}
.mhcal .ac-asof{font-size:11.5px;color:var(--cl-muted)}
.mhcal .ac-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.mhcal .ac-tile{background:#ffffff;border-radius:14px;box-shadow:var(--cl-card);padding:18px 20px;display:flex;flex-direction:column;gap:6px}
.mhcal .ac-tile b{font-size:40px;font-weight:800;letter-spacing:-0.035em;line-height:1;color:var(--cl-ink)}
.mhcal .ac-tile span{font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .ac-tile small{font-size:11.5px;color:var(--cl-muted)}
.mhcal .ac-tile.ac-o{background:var(--cl-o100);gap:8px}
.mhcal .ac-tile.ac-o b{color:var(--cl-o700)}
.mhcal .ac-tile.ac-o span{color:var(--cl-on-o);font-weight:700}
.mhcal .ac-tbtn{align-self:flex-start;background:linear-gradient(#ffd13a,#f5c21c);color:var(--cl-ink);border-radius:10px;padding:10px 16px;font-weight:700;font-size:13px;box-shadow:var(--cl-act);text-decoration:none}
.mhcal a.ac-tbtn:hover{text-decoration:none;color:var(--cl-ink);filter:brightness(1.03)}
.mhcal .ac-tile.ac-dark{background:var(--cl-b700);box-shadow:var(--cl-hero);color:#ffffff}
.mhcal .ac-tile.ac-dark b{color:#ffffff}
.mhcal .ac-tile.ac-dark span{color:var(--cl-b100)}
.mhcal .ac-tile.ac-dark a{font-size:12.5px;font-weight:700;color:var(--cl-b300);text-decoration:underline;text-underline-offset:3px}
.mhcal .ac-calbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--cl-line);flex-wrap:wrap}
.mhcal .ac-runpill{display:inline-flex;align-items:center;gap:8px;background:var(--cl-a100);color:var(--cl-on-a);font-weight:600;font-size:12.5px;padding:6px 12px;border-radius:999px}
.mhcal .ac-swb{display:inline-flex;align-items:center;gap:10px;background:none;border:none;color:var(--cl-ink);font-weight:600;font-size:13px;padding:6px;min-height:44px}
.mhcal .ac-sw{width:40px;height:24px;border-radius:999px;background:var(--cl-line2);position:relative;display:inline-block;flex:none}
.mhcal .ac-sw i{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:999px;background:#ffffff;box-shadow:0 1px 3px rgba(0,0,0,0.25)}
.mhcal .ac-sw.ac-on{background:var(--cl-b500)}
.mhcal .ac-sw.ac-on i{left:19px}
.mhcal .ac-gridwrap{overflow-x:auto}
.mhcal .ac-grid{min-width:840px}
.mhcal .ac-wd,.mhcal .ac-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.mhcal .ac-wd{background:var(--cl-s2)}
.mhcal .ac-wd span{padding:10px 12px;font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .ac-day{min-height:104px;border:none;border-top:1px solid var(--cl-line);border-right:1px solid var(--cl-line);background:#ffffff;box-shadow:none;padding:8px 10px;text-align:left;display:flex;flex-direction:column;gap:6px;align-items:stretch;color:var(--cl-text);border-radius:0}
.mhcal .ac-day:hover{background:#f4fafa}
.mhcal .ac-day.ac-out{background:var(--cl-soft)}
.mhcal .ac-day.ac-tod{background:var(--cl-y100)}
.mhcal .ac-day.ac-sel{box-shadow:inset 0 0 0 2px var(--cl-b500)}
.mhcal .ac-dt{display:flex;justify-content:space-between;align-items:center}
.mhcal .ac-sq{min-width:24px;height:24px;border-radius:6px;background:var(--cl-o500);color:var(--cl-ink);font-size:12.5px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}
.mhcal .ac-dn{font-size:15px;font-weight:700;color:var(--cl-ink)}
.mhcal .ac-day.ac-out .ac-dn{color:var(--cl-muted)}
.mhcal .ac-cc{align-self:flex-start;background:var(--cl-g100);color:var(--cl-on-g);font-size:12px;font-weight:700;padding:3px 9px;border-radius:6px}
.mhcal .ac-cc.ac-past{background:var(--cl-b100);color:var(--cl-b700)}
.mhcal .ac-mt{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--cl-on-g)}
.mhcal .ac-mt.ac-off{font-weight:700;color:var(--cl-on-o)}
.mhcal .ac-leg{padding:12px 18px 16px;border-top:1px solid var(--cl-line)}
/* board 5: the day panel */
.mhcal .ac-wbox{display:flex;flex-direction:column;background:#fff7f0}
/* Session 399 (brief A6): the day opened from a number box on the Home preview's calendar, filtered to that box's cleans. */
.mhcal .ac-boxbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 20px 12px;padding:8px 12px;border-radius:8px;background:#dceff0;color:#144d54;font-size:13.5px}
.mhcal .ac-boxbar b{color:#0e363b}
.mhcal .ac-wbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;flex-wrap:wrap}
.mhcal .ac-wbar label{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:var(--cl-ink);cursor:pointer;min-height:44px}
.mhcal .ac-wbar label input{width:20px;height:20px;accent-color:var(--cl-b500);margin:0}
.mhcal .ac-wbar label small{font-weight:450;color:var(--cl-muted);font-size:13px}
.mhcal .ac-dconf{padding:11px 18px;min-height:44px;min-width:200px}
.mhcal .ac-wrow{display:flex;flex-direction:column;gap:10px;padding:14px 20px;border-top:1px solid #f3dcc8}
.mhcal .ac-wr{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.mhcal .ac-wck{width:20px;flex:none;display:inline-flex}
.mhcal .ac-wck input{width:18px;height:18px;accent-color:var(--cl-b500);margin:0}
.mhcal .ac-wt{flex:1 1 380px;display:flex;flex-direction:column;gap:3px;min-width:0}
.mhcal .ac-wsrc{background:var(--cl-b100);color:var(--cl-b700);font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:999px;white-space:nowrap}
.mhcal .ac-wsrc.ac-cl{background:var(--cl-s2);color:var(--cl-ink)}
.mhcal .ac-dup{font-size:12.5px;font-weight:600;color:var(--cl-on-o)}
.mhcal .ac-wact{width:300px;flex:none;display:flex;justify-content:flex-end;align-items:center;gap:8px}
.mhcal .ac-dec{width:120px;background:#ffffff;color:var(--cl-b700);border:1px solid var(--cl-line2);border-radius:10px;height:42px;font-weight:700;font-size:13px}
.mhcal .ac-dec:hover{background:var(--cl-soft)}
.mhcal .ac-pick{background:#ffffff;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--cl-card);align-items:flex-start}
.mhcal .ac-pickt{font-size:12.5px;font-weight:700;color:var(--cl-ink)}
.mhcal .ac-chips{display:flex;gap:8px;flex-wrap:wrap}
.mhcal .ac-chip{background:#ffffff;color:var(--cl-b700);border:1px solid var(--cl-line2);border-radius:999px;padding:8px 12px;font-weight:600;font-size:12.5px;min-height:40px}
.mhcal .ac-chip:hover{border-color:var(--cl-b500)}
.mhcal .ac-chip.ac-hint{background:var(--cl-b100);border-color:var(--cl-b500)}
.mhcal .ac-cancel{color:var(--cl-muted);font-size:12.5px}
.mhcal .ac-shead{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 8px;gap:12px;border-top:1px solid var(--cl-line)}
.mhcal .ac-shead > span{font-size:13px;font-weight:700;color:var(--cl-ink)}
.mhcal .ac-shead .cl-lk{font-size:13px}
.mhcal .ac-st{width:100%;border-collapse:collapse;min-width:760px}
.mhcal .ac-st th{background:var(--cl-s2);text-align:left;padding:9px 12px;font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .ac-st th:first-child,.mhcal .ac-st td:first-child{padding-left:20px}
.mhcal .ac-st th:last-child,.mhcal .ac-st td:last-child{padding-right:20px}
.mhcal .ac-st td{padding:12px;border-top:1px solid var(--cl-line);color:var(--cl-text)}
.mhcal .ac-st td:first-child a{font-weight:700;color:var(--cl-ink)}
.mhcal .ac-st td.ac-una{color:var(--cl-on-o);font-weight:700}
/* board 7: Decline (and Pick the date) */
.mhcal .ac-cmp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mhcal .ac-cmpb{background:var(--cl-soft);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:6px}
.mhcal .ac-cmpb .ac-cl{font-size:12.5px;font-weight:600;color:var(--cl-muted)}
.mhcal .ac-cmpb b{font-size:15px;font-weight:700;color:var(--cl-ink)}
.mhcal .ac-cmpb > span:last-child{font-size:13px;color:var(--cl-text)}
.mhcal .ac-cmpb.ac-g{background:var(--cl-g100)}
.mhcal .ac-cmpb.ac-g .ac-cl{color:var(--cl-on-g)}
.mhcal .ac-why{border:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.mhcal .ac-why legend{font-size:12.5px;font-weight:600;color:var(--cl-ink);padding:0;margin-bottom:8px}
.mhcal .ac-why .cl-radio b{font-weight:600}
.mhcal .ac-why .cl-radio.cl-on{background:#f4fafa}
.mhcal .ac-why .cl-radio.cl-on b{font-weight:700}
.mhcal .ac-ta{border:1px solid var(--cl-line2);border-radius:10px;padding:10px 14px;font-size:14px;color:var(--cl-ink);resize:none;font-family:inherit;width:100%}
.mhcal .ac-ta:focus{border-color:var(--cl-b500);outline:2px solid var(--cl-b300);outline-offset:0}
.mhcal .ac-whathappens{background:var(--cl-soft);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.mhcal .ac-whathappens b{font-size:13px;font-weight:700;color:var(--cl-ink)}
.mhcal .ac-whathappens span{font-size:13px;color:var(--cl-text)}
.mhcal .ac-whathappens.ac-amberbox{background:var(--cl-a100)}
.mhcal .ac-whathappens.ac-amberbox b,.mhcal .ac-whathappens.ac-amberbox span{color:var(--cl-on-a)}
.mhcal .ac-primary{background:var(--cl-b700);color:#ffffff;border:none;border-radius:10px;padding:12px 22px;font-weight:700;font-size:14px;min-height:46px}
.mhcal .ac-primary:hover{background:var(--cl-b900)}
.mhcal .ac-primary:disabled{background:var(--cl-s2);color:var(--cl-text);cursor:default}
/* board 8: New appointment */
.mhcal .ac-homef{position:relative}
.mhcal .ac-sug{border-radius:12px;box-shadow:0 10px 24px rgba(14,54,59,0.14);background:#ffffff;overflow:hidden}
.mhcal .ac-sgo{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;text-align:left;background:#ffffff;border:none;border-top:1px solid var(--cl-line);padding:11px 14px;color:var(--cl-text);font-size:14px}
.mhcal .ac-sgo:first-child{border-top:none}
.mhcal .ac-sgo span{display:flex;flex-direction:column;gap:1px}
.mhcal .ac-sgo b{font-weight:700;color:var(--cl-ink)}
.mhcal .ac-sgo b.ac-u,.mhcal .ac-u{text-decoration:underline}
.mhcal .ac-sgo small{font-size:12px;color:var(--cl-text)}
.mhcal .ac-sgo em{font-style:normal;font-size:12px;font-weight:600;color:var(--cl-b700)}
.mhcal .ac-sgo.ac-on,.mhcal .ac-sgo:hover,.mhcal .ac-sgo:focus-visible{background:var(--cl-b100)}
.mhcal .ac-svcs{display:flex;gap:8px;flex-wrap:wrap}
.mhcal .ac-svc{background:#ffffff;color:var(--cl-text);border:1px solid var(--cl-line2);border-radius:10px;padding:8px 12px;font-weight:600;font-size:13px;min-height:40px;display:inline-flex;flex-direction:column;align-items:flex-start;text-align:left}
.mhcal .ac-svc span{font-size:11px;font-weight:600;color:var(--cl-b500)}
.mhcal .ac-svc:hover{border-color:var(--cl-b500)}
.mhcal .ac-svc.ac-on{background:var(--cl-b100);color:var(--cl-b700);border:2px solid var(--cl-b500);padding:7px 11px;font-weight:700}
.mhcal .ac-more{background:none;color:var(--cl-b500);border:none;padding:8px 6px;font-weight:700;font-size:13px;min-height:40px;text-decoration:underline;text-underline-offset:3px}
.mhcal .ac-addh{display:flex;justify-content:space-between;align-items:center}
.mhcal .ac-addb{display:inline-flex;align-items:center;gap:6px;background:#ffffff;color:var(--cl-b700);border:1px solid var(--cl-line2);border-radius:10px;padding:7px 12px;font-weight:700;font-size:13px;min-height:38px}
.mhcal .ac-addb:hover{background:var(--cl-soft)}
.mhcal .ac-addr{display:flex;align-items:center;gap:12px;border:1px solid var(--cl-line);border-radius:10px;padding:10px 12px}
.mhcal .ac-addt{flex:1;display:flex;flex-direction:column;gap:1px}
.mhcal .ac-addt b{font-weight:700;color:var(--cl-ink)}
.mhcal .ac-addt small{font-size:12px;color:var(--cl-muted)}
.mhcal .ac-addp{font-size:13px;color:var(--cl-ink);font-weight:700}
.mhcal .ac-addx{width:36px;height:36px;border:none;background:var(--cl-s2);border-radius:8px;color:var(--cl-text);display:inline-flex;align-items:center;justify-content:center}
.mhcal .ac-addx:hover{background:#dde2e5}
.mhcal .ac-addall{display:flex;flex-direction:column;border:1px solid var(--cl-line);border-radius:10px;overflow:hidden;max-height:300px;overflow-y:auto}
.mhcal .ac-addo{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#ffffff;border:none;border-top:1px solid var(--cl-line);padding:10px 12px;text-align:left;color:var(--cl-ink);font-size:13px;font-weight:700}
.mhcal .ac-addo:first-child{border-top:none}
.mhcal .ac-addo span:first-child{display:flex;flex-direction:column;gap:1px}
.mhcal .ac-addo small{font-size:12px;color:var(--cl-muted);font-weight:450}
.mhcal .ac-addo .ac-noset{font-size:12px;color:var(--cl-muted);font-weight:600}
.mhcal .ac-addo:hover,.mhcal .ac-addo:focus-visible{background:var(--cl-soft)}
.mhcal .ac-common{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.mhcal .ac-common span{font-size:12px;color:var(--cl-muted)}
.mhcal .ac-common button{background:var(--cl-soft);color:var(--cl-text);border:1px solid var(--cl-line);border-radius:999px;padding:5px 10px;font-weight:600;font-size:12px;min-height:32px}
.mhcal .ac-common button:hover{border-color:var(--cl-b500)}
.mhcal .ac-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mhcal .ac-3 .cl-in{height:46px;padding:0 12px}
.mhcal .ac-dim{color:var(--cl-muted) !important}
.mhcal .cl-in.ac-disabled{border:1px dashed var(--cl-line2);color:var(--cl-muted);background:var(--cl-soft)}
.mhcal .ac-rep{display:flex;flex-direction:column;gap:10px;background:var(--cl-soft);border-radius:12px;padding:14px 16px}
.mhcal .ac-reps{display:flex;gap:6px;flex-wrap:wrap}
.mhcal .ac-rp{background:#ffffff;color:var(--cl-text);border:1px solid var(--cl-line2);border-radius:999px;padding:8px 12px;font-weight:600;font-size:12.5px;min-height:38px}
.mhcal .ac-rp:hover{border-color:var(--cl-b500)}
.mhcal .ac-rp.ac-on{background:var(--cl-b700);color:#ffffff;border-color:var(--cl-b700);font-weight:700}
.mhcal .ac-rule{background:#ffffff;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}
.mhcal .ac-rulet{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:14px;color:var(--cl-ink)}
.mhcal .ac-selb{border:1px solid var(--cl-line2);border-radius:8px;padding:6px 10px;font-weight:700;font-size:14px;color:var(--cl-ink);background:#ffffff;min-height:36px}
.mhcal .ac-last{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.mhcal .ac-last label{font-size:12.5px;font-weight:600;color:var(--cl-ink)}
.mhcal .ac-last .cl-in{height:40px;width:auto}
.mhcal .ac-visits{font-size:13px;color:var(--cl-text)}
.mhcal .ac-mbox{display:flex;flex-direction:column;gap:4px;border:1px solid var(--cl-line);border-radius:12px;padding:12px 14px}
.mhcal .ac-ml{font-size:12.5px;font-weight:600;color:var(--cl-muted)}
.mhcal .ac-mbox b{font-size:22px;font-weight:800;color:var(--cl-ink)}
.mhcal .ac-mbox small{font-size:11.5px;color:var(--cl-muted)}
.mhcal .ac-mbox .ac-min{height:40px;font-size:18px;font-weight:800}
.mhcal .ac-mch{font-size:12px;padding:2px 0;align-self:flex-start}
.mhcal .ac-mfrom{margin-top:-10px}
/* board 6: Resort match */
.mhcal .ac-mhero{background:linear-gradient(135deg,#144d54,#0e363b);border-radius:18px;box-shadow:var(--cl-hero);color:#ffffff;padding:24px 28px;display:flex;flex-direction:column;gap:18px}
.mhcal .ac-mtop{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-end}
.mhcal .ac-mnum{display:flex;flex-direction:column;gap:8px}
.mhcal .ac-mk,.mhcal .ac-mk2{font-size:12.5px;font-weight:600;color:var(--cl-b300)}
.mhcal .ac-mk2{color:var(--cl-b100)}
.mhcal .ac-mbig{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.mhcal .ac-mbig b{font-size:64px;line-height:0.9;font-weight:800;letter-spacing:-0.04em}
.mhcal .ac-mbig span{font-size:15px;color:var(--cl-b100)}
.mhcal .ac-target{background:rgba(255,209,58,0.16);color:var(--cl-y500);font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:999px}
.mhcal .ac-m4{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;border-top:1px solid rgba(255,255,255,0.16);padding-top:16px}
.mhcal .ac-m4 div{display:flex;flex-direction:column;gap:2px}
.mhcal .ac-m4 b{font-size:24px;font-weight:800}
.mhcal .ac-m4 b.ac-y{color:var(--cl-y500)}
.mhcal .ac-m4 span{font-size:12.5px;color:var(--cl-b100)}
.mhcal .ac-mwait{font-size:12.5px;color:var(--cl-b100)}
.mhcal .ac-chart{display:flex;flex-direction:column;gap:8px}
.mhcal .ac-bars{position:relative;height:130px;display:flex;align-items:flex-end;gap:8px;border-bottom:1px solid rgba(255,255,255,0.3);padding:0 4px}
.mhcal .ac-tl{position:absolute;left:0;right:0;border-top:2px dashed var(--cl-y500)}
.mhcal .ac-tll{position:absolute;right:0;font-size:11px;font-weight:700;color:var(--cl-y500)}
.mhcal .ac-bc{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;height:100%;max-width:60px}
.mhcal .ac-bv{font-size:10.5px;color:var(--cl-b100)}
.mhcal .ac-bb{width:100%;background:var(--cl-b300);border-radius:4px 4px 0 0}
.mhcal .ac-bb.ac-hit{background:var(--cl-y500)}
.mhcal .ac-nobar{font-size:12.5px;color:var(--cl-b100);align-self:center;margin:auto}
.mhcal .ac-blabels{display:flex;gap:8px;padding:0 4px}
.mhcal .ac-blabels span{flex:1;text-align:center;font-size:10.5px;color:var(--cl-b100);max-width:60px}
.mhcal .ac-ck{display:flex;align-items:center;gap:14px;padding:14px 20px;border-bottom:1px solid var(--cl-line);flex-wrap:wrap}
.mhcal .ac-ck:last-child{border-bottom:none}
.mhcal .ac-ckt{flex:1 1 420px;display:flex;flex-direction:column;gap:2px}
.mhcal .ac-ckt b{font-size:15px;font-weight:700;color:var(--cl-ink)}
.mhcal .ac-ckt span{font-size:13px;color:var(--cl-text)}
.mhcal .ac-ck .cl-tag{padding:5px 12px}
.mhcal .ac-ct,.mhcal .ac-ot{width:100%;border-collapse:collapse;min-width:900px}
.mhcal .ac-ot{min-width:1080px;table-layout:fixed}
.mhcal .ac-ct th,.mhcal .ac-ot th{background:var(--cl-s2);text-align:left;padding:10px 12px;font-size:12.5px;font-weight:600;color:var(--cl-text)}
.mhcal .ac-ct th:first-child,.mhcal .ac-ct td:first-child,.mhcal .ac-ot th:first-child,.mhcal .ac-ot td:first-child{padding-left:20px}
.mhcal .ac-ct th:last-child,.mhcal .ac-ct td:last-child,.mhcal .ac-ot th:last-child,.mhcal .ac-ot td:last-child{padding-right:20px}
.mhcal .ac-ct td{padding:13px 12px;border-top:1px solid var(--cl-line);color:var(--cl-text)}
.mhcal .ac-ct td:first-child{font-weight:700;color:var(--cl-ink)}
.mhcal .ac-ct .ac-r{text-align:right}
.mhcal .ac-ct td.ac-r{font-weight:800;color:var(--cl-ink)}
.mhcal .ac-ct .cl-tag,.mhcal .ac-ot .cl-tag{font-size:12px}
.mhcal .ac-ot td{padding:14px 12px;border-top:1px solid var(--cl-line);vertical-align:top;font-size:13px;color:var(--cl-text)}
.mhcal .ac-ot td.ac-ink{color:var(--cl-ink)}
.mhcal .ac-mh{display:flex;flex-direction:column;gap:2px}
.mhcal .ac-mh a{font-size:15px;font-weight:700;color:var(--cl-ink)}
.mhcal .ac-mh small,.mhcal .ac-by{font-size:12px;color:var(--cl-muted)}
.mhcal .ac-ans3{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}   /* session 405: four answers, two by two */
.mhcal .ac-cc{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;padding:8px;border:1px solid var(--cl-line2);border-radius:10px;background:var(--cl-soft)}
.mhcal .ac-cc label{flex-basis:100%;font-size:12.5px;font-weight:700;color:var(--cl-b700)}
.mhcal .ac-cc input{flex:1 1 140px;min-width:0;height:36px;border:1px solid var(--cl-line2);border-radius:8px;padding:0 8px;font:inherit;font-size:13px}
.mhcal .ac-cc button{border-radius:8px;padding:0 12px;height:36px;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;border:1px solid var(--cl-line2);background:#ffffff;color:var(--cl-b700)}
.mhcal .ac-cc .ac-ccgo{background:var(--cl-b700);border-color:var(--cl-b700);color:#ffffff}
.mhcal .ac-cc button:hover{filter:brightness(.95)} .mhcal .ac-cc button:focus-visible,.mhcal .ac-ccb:focus-visible{outline:2px solid var(--cl-b700);outline-offset:2px}
.mhcal .ac-ccerr{flex-basis:100%;font-size:12px;font-weight:600;color:#b42318} .mhcal .ac-ccerr:empty{display:none}
.mhcal .ac-ans{background:#ffffff;color:var(--cl-b700);border:1px solid var(--cl-line2);border-radius:10px;padding:8px 10px;font-weight:600;font-size:12.5px;min-height:40px}
.mhcal .ac-ans:hover{background:var(--cl-soft)}
.mhcal .ac-ot .cl-act{width:auto;padding:0 14px}
/* a phone (390 wide) */
@media (max-width:760px){
  .mhcal .ac-head{align-items:flex-start}
  .mhcal .ac-3{grid-template-columns:1fr}
  .mhcal .ac-cmp{grid-template-columns:1fr}
  .mhcal .ac-wact{width:100%;justify-content:flex-start}
  .mhcal .ac-tile b{font-size:32px}
  .mhcal .ac-mbig b{font-size:48px}
  .mhcal .ac-mhero{padding:20px 18px}
  .mhcal .ac-confirm,.mhcal .ac-dconf{flex:1 1 100%;min-width:0}
}
/* session 391: New appointment's fields keep the drawer's 20px rhythm; the rule's three choices sit in the sentence */
.mhcal .ac-nabody{display:flex;flex-direction:column;gap:20px}
.mhcal .ac-rulet .ac-selb{width:auto;display:inline-block;flex:none;margin:0}
/* session 391: Resort match's three answers, one above the other, the same width, in one column (Daniel: "The buttons ... should be aligned") */
.mhcal .ac-ans3{grid-template-columns:1fr}

/* Session 393: Link these homes (board 9's look). One row per home: the tick, the home and its suggestion, then Link, Not this one and No match in
   one column, all the same size. */
.mhcal .cl-lh-hint{padding:10px 20px;font-size:12.5px;color:var(--cl-muted);border-bottom:1px solid var(--cl-line)}
.mhcal .cl-lh-row{display:grid;grid-template-columns:32px minmax(0,1fr) 230px;gap:16px;align-items:start;padding:16px 20px;border-bottom:1px solid var(--cl-line)}
.mhcal .cl-lh-tick{padding-top:2px}
.mhcal .cl-lh-tick input{width:20px;height:20px;accent-color:var(--cl-b500);margin:0}
.mhcal .cl-lh-main{display:flex;flex-direction:column;gap:10px;min-width:0}
.mhcal .cl-lh-home{display:flex;flex-direction:column;gap:3px}
.mhcal .cl-lh-home a{font-size:15px;font-weight:700;color:var(--cl-ink)}
.mhcal .cl-lh-home .cl-ns{font-size:12.5px;color:var(--cl-muted)}
.mhcal .cl-lh-sug{display:flex;flex-direction:column;gap:4px;background:var(--cl-soft);border-radius:10px;padding:12px 14px}
.mhcal .cl-lh-sug.cl-lh-other{background:#ffffff;border:1px solid var(--cl-line)}
.mhcal .cl-lh-sug.cl-lh-none{background:#ffffff;border:1px dashed var(--cl-line2)}
.mhcal .cl-lh-k{font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--cl-muted)}
.mhcal .cl-lh-sug b{font-size:14.5px;color:var(--cl-ink)}
.mhcal .cl-lh-sub{font-size:12.5px;color:var(--cl-text)}
.mhcal .cl-lh-why{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12.5px;color:var(--cl-text)}
.mhcal .cl-lh-one{width:auto;align-self:flex-start;padding:0 16px;margin-top:4px}
.mhcal .cl-lh-btns{display:flex;flex-direction:column;gap:8px}
.mhcal .cl-lh-btns .cl-lh-b{width:230px;height:46px;min-height:46px;padding:0 12px;white-space:nowrap;font-size:13.5px}
.mhcal .cl-lh-done{display:flex;gap:10px;align-items:center;padding:16px 20px;font-size:14px;color:var(--cl-text)}
.mhcal .cl-lh-done svg{color:var(--cl-on-g)}
@media (max-width:760px){
  .mhcal .cl-lh-row{grid-template-columns:28px minmax(0,1fr);padding:14px 16px}
  .mhcal .cl-lh-btns{grid-column:1 / -1}
  .mhcal .cl-lh-btns .cl-lh-b{width:100%}
}
/* Session 393: Resort match, Resort's own mistakes: each Resort appointment on its own line, its Resort number under it. */
.mhcal .ac-rma{display:flex;flex-direction:column;gap:1px;margin-bottom:6px}
.mhcal .ac-rma a{font-weight:600;color:var(--cl-b700)}
.mhcal .ac-rma small{font-size:12px;color:var(--cl-muted)}
/* Session 394: a Res # under a Resort match row's side, small and breakable (the calendar line's own id). */
.mhcal .ac-resw{ display:block; margin-top:3px; font-size:11.5px; font-weight:500; color:var(--cl-muted); overflow-wrap:anywhere; word-break:break-all }
/* Session 394: a guest stay from Resort's record: the guest colour, a hatched right edge and a small "Resort" tag (board 1's bar, marked). */
.mhcal .cl-bb.cl-fromresort{ background:linear-gradient(90deg,var(--cl-b500) 0 calc(100% - 14px),transparent calc(100% - 14px)),repeating-linear-gradient(135deg,var(--cl-b500) 0 4px,#7fb3b8 4px 8px) }
.mhcal .cl-rtag{ font-style:normal; font-size:10px; font-weight:800; letter-spacing:.02em; background:#ffffff; color:var(--cl-b700, #155a61); border-radius:5px; padding:1px 5px; margin-right:6px; flex:0 0 auto }
.mhcal .cl-sw.cl-sw-resort{ background:repeating-linear-gradient(135deg,var(--cl-b500) 0 4px,#7fb3b8 4px 8px) }

/* Session 395: Appointment changes' two tiers as filters (New to the calendar, Moved to another day). The badges are the home page's own box
   colours: new to confirm #ff8a33 on ink, moved here to confirm #9a4a0e on white. */
.mhcal .ac-tiers{display:flex;gap:8px;flex-wrap:wrap;margin-top:-8px}
.mhcal .ac-dayonly{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--cl-ink)}   /* session 401: the Home preview's day filter */
.mhcal .ac-tier{display:inline-flex;align-items:center;gap:8px;background:#ffffff;color:var(--cl-ink);border:1.5px solid var(--cl-line2);border-radius:10px;padding:8px 13px;font:inherit;font-weight:600;font-size:13.5px;cursor:pointer;min-height:40px}
.mhcal .ac-tier b{font-weight:800}
.mhcal .ac-tier:hover{background:var(--cl-s2)}
.mhcal .ac-tier:focus-visible{outline:2px solid var(--cl-b700);outline-offset:2px}
.mhcal .ac-tier.ac-tier-on{border-color:var(--cl-b700);box-shadow:inset 0 0 0 1px var(--cl-b700)}
.mhcal .ac-tb{min-width:22px;height:18px;border-radius:6px;font-size:11px;font-weight:700;padding:0 5px;display:inline-flex;align-items:center;justify-content:center}
.mhcal .ac-tb-new{background:#ff8a33;color:#16181a}
.mhcal .ac-tb-moved{background:#9a4a0e;color:#ffffff}
.mhcal .ac-tb-other{background:#e9ecee;color:#16181a}   /* session 398 */
/* Session 397: a prep night on "What we believe" (a small grey cell, never Hold?), its legend swatch and line under How this home is used; the
   links moved to or from this home; Move this link's reason box; Resort match's "Matched, link missing" tag and its Move the link here button. */
.mhcal .cl-bb.cl-prep{height:22px;margin:4px 0;background:#eef1f3;color:var(--cl-muted);box-shadow:inset 0 0 0 1px var(--cl-line2);font-weight:700;font-size:9px;letter-spacing:-.2px;padding:0;justify-content:center}
.mhcal .cl-sw.cl-sw-prep{background:#eef1f3;border:1px solid var(--cl-line2)}
.mhcal .cl-prepline{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--cl-text);background:var(--cl-soft);border-radius:10px;padding:10px 14px;margin-top:12px}
.mhcal .cl-prepline .cl-sw{flex:none}
.mhcal .cl-moves{display:flex;flex-direction:column;gap:4px;padding:12px 20px;border-top:1px solid var(--cl-line);font-size:12.5px;color:var(--cl-text)}
.mhcal .cl-moves b{color:var(--cl-ink);font-size:13px}
.mhcal textarea.cl-in.cl-ta{height:auto;min-height:84px;padding:10px 14px;line-height:1.45;resize:vertical;font-family:inherit}
.mhcal .ac-lm{display:inline-block;align-self:flex-start;margin-top:4px;font-size:11.5px;font-weight:700;color:var(--cl-on-g);background:#e2f4ee;border-radius:6px;padding:2px 7px}
.mhcal .ac-mv{margin-top:6px}
.mhcal .ac-rma small,.mhcal .ac-resw{overflow-wrap:anywhere}   /* a long Res # wraps inside its own column */

/* Session 402: a LINK row's three ways off (Replace link, Pause link, Asked the client), one width, stacked in the action column; the ask form under the row;
   the Calendar tab's "No same-day turns" line and a turnover's Flexible tag; "May expire soon" on a link; the restart markers on the Resort match chart. */
.mhcal .ac-acts3{display:flex;flex-direction:column;gap:6px;width:100%}
.mhcal .ac-acts3 .cl-act{height:36px}
.mhcal .ac-q{font-size:12px;font-weight:600;color:var(--cl-ink);text-align:center}
.mhcal .cl-act.ac-act-quiet{color:var(--cl-text);font-weight:600}
.mhcal .ac-askrow td{background:var(--cl-soft)}
.mhcal .ac-ask{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:4px 0}
.mhcal .ac-ask label{display:flex;flex-direction:column;gap:2px;flex:1 1 220px;font-size:13px}
.mhcal .ac-ask label b{color:var(--cl-ink)}
.mhcal .ac-askin{flex:2 1 280px;min-width:0;height:42px;border:1px solid var(--cl-line2);border-radius:10px;padding:0 12px;font:inherit;color:var(--cl-ink);background:#ffffff}
.mhcal .ac-askb{display:flex;align-items:center;gap:12px}
.mhcal .ac-askb .cl-btn-y{min-height:42px;padding:10px 16px}
.mhcal .ac-askhint{flex:1 1 100%;font-size:12.5px;color:var(--cl-muted)}
.mhcal .cl-sdline{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--cl-on-p);background:var(--cl-p100);border-radius:10px;padding:10px 14px;margin-top:12px}
.mhcal .cl-cc .cl-flex{display:block;margin-top:3px;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:700;background:var(--cl-p100);color:var(--cl-on-p);white-space:nowrap;text-align:center}
.mhcal .cl-flexlist{display:flex;flex-wrap:wrap;gap:6px 16px;padding:10px 20px 14px;font-size:12.5px;color:var(--cl-text);border-top:1px solid var(--cl-line)}
.mhcal .cl-flexlist b{color:var(--cl-on-p)}
.mhcal .cl-expire{display:inline-block;margin-left:6px;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;background:var(--cl-a100);color:var(--cl-on-a)}
.mhcal .ac-bc.ac-old .ac-bb{opacity:0.45}
.mhcal .ac-bc.ac-old .ac-bv{opacity:0.7}
.mhcal .ac-bc{position:relative}
.mhcal .ac-rs{position:absolute;left:-5px;top:0;bottom:0;border-left:2px dashed var(--cl-y500)}
.mhcal .ac-rsl{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--cl-b100)}
.mhcal .ac-rsl span::before{content:'';display:inline-block;width:10px;height:0;border-top:2px dashed var(--cl-y500);margin-right:8px;vertical-align:middle}
.mhcal .ac-flexw{display:block;color:var(--cl-on-p);font-weight:600;font-size:12px;margin-top:2px}

/* Session 406 (briefs/session-406-brief.md F6): Calendar health's hero links to Get them on iCal; each home there says how it books today, Turno marked. */
.mhcal .cl-hero-n a.cl-hero-go{font-size:14px;font-weight:700;color:#ffd13a;text-decoration:underline;text-underline-offset:3px;margin-left:auto}
.mhcal .cl-hero-n a.cl-hero-go:hover{color:#fff}
.mhcal .cl-hero-n a.cl-hero-go:focus-visible{outline:2px solid #6fd5d4;outline-offset:3px;border-radius:4px}
.mhcal .cl-ask-t span.cl-hbk{display:inline;color:var(--cl-text)}
.mhcal .cl-ask-t span.cl-hbk.cl-turno{color:#9a4a0e;font-weight:600}

/* Session 407 (briefs/session-407-brief.md part G; Daniel, 27 October 2026: "Yes, I like the Navy much better"): inside the Appointments frame only
   (the four tabs and Owner holds sit in #page.core-page since this session), the dark bands take the navy (tokens.css --mh-navy-band). Calendar health
   is not in that frame and keeps its teal. Nothing else on these boards changes. */
#page.core-page .mhcal .cl-band,#page.core-page .mhcal .cl-hero,#page.core-page .mhcal .ac-mhero{background:var(--mh-navy-band)}
