.up-view[hidden] { display: none; }
#up-views { margin-bottom: 18px; }
#up-views button, #up-months button { font: 500 .74rem var(--mono); letter-spacing: .04em; text-transform: uppercase; padding: 6px 10px; border-radius: 3px; }
#up-views button[aria-pressed="true"], #up-months button[aria-pressed="true"] { background: var(--ink); color: var(--bg); border-color: var(--ink); }
@media (hover: hover) and (pointer: fine) { #up-views button[aria-pressed="true"]:hover, #up-months button[aria-pressed="true"]:hover { box-shadow: none; } }
.up-strip { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 10px 0; margin: 0 0 26px; display: flex; flex-wrap: wrap; gap: 6px 22px; font-size: .84rem; color: var(--ink-2); }
.up-strip b { font-weight: 600; color: var(--ink); }
.up-strip > span { white-space: nowrap; }
.up-strip .us-k { font: 600 .66rem/1 var(--mono); letter-spacing: .09em; text-transform: uppercase; color: var(--muted); align-self: center; }
.up-row.key .wire-top time { color: var(--ink); font-weight: 600; }
@media (min-width: 721px) { .up-row .up-hm { display: block; } .up-row .up-sep { display: none; } }
.up-key { margin: 10px 0 0; font-size: .8rem; color: var(--muted); }
.up-leg { margin-left: auto; font-size: .8rem; font-weight: 500; color: var(--muted); white-space: nowrap; }
.up-leg .mk { margin: 0 1px 0 0; }
.up-leg .mk i.e, .up-leg .mk i.d { display: inline-block; }
#up-stage .opt-ctl > .om-acts { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; }
.up-today { font: 500 .74rem var(--mono); letter-spacing: .04em; text-transform: uppercase; padding: 6px 10px; border: 1px solid var(--line);
  border-radius: 3px; background: var(--surface); color: var(--ink); cursor: pointer; }
.up-today:disabled { color: var(--muted); cursor: default; }
@media (hover: hover) and (pointer: fine) { .up-today:not(:disabled):hover { border-color: var(--accent); } }
.up-today:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
#up-stage .opt-ctl { margin-bottom: 12px; }
.up-month[hidden] { display: none; }
.up-month .om-h { margin: 0 0 6px; display: flex; align-items: baseline; gap: 8px 14px; flex-wrap: wrap; }
.om-cal-t { --om-cw: 54px; --om-sw: 0px; width: 100%; min-width: 0; }
.om-cal-t th, .om-cal-t td { height: auto; white-space: normal; }
.om-cal-t td { height: 94px; padding: 4px 5px; text-align: left; vertical-align: top; line-height: 1.15; position: relative; cursor: pointer;
  border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.om-cal-t td .cin { display: block; max-height: 50px; overflow: hidden; margin-top: 3px; }
.om-cal-t td .cin .lb { margin-top: 0; }
.om-cal-t td .cin .lb + .lb { margin-top: 3px; }
.om-cal-t td:last-child { border-right: 0; }
.om-cal-t tr:last-child td { border-bottom: 0; }
.om-cal-t td.nl { cursor: default; }
.om-cal-t td .cday { font: 500 .66rem/1 var(--mono); color: var(--muted); }
.om-cal-t td .ct { position: absolute; top: 4px; right: 5px; font: 700 .7rem/1 var(--mono); }
.om-cal-t td .lb { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; margin-top: 3px; font: 600 .7rem/1.15 var(--sans); white-space: normal; overflow-wrap: anywhere; }
.om-cal-t td .lb-more { font: 500 .66rem/1.3 var(--mono); color: var(--muted); }
.om-cal-t td .lb-d { font: 500 .62rem/1.15 var(--mono); color: var(--muted); }
.om-cal-t td.z, .om-cal-t td.v { background: var(--surface); color: var(--ink); }
.om-cal-t td.z { color: var(--muted); }
.om-cal-t td.today .cday { color: var(--accent); font-weight: 700; }
@media (min-width: 721px) {
  .om-cal-t td .cday { font-size: .7rem; }
  .om-cal-t td .ct { font-size: .72rem; }
  .om-cal-t td .lb { font-size: .76rem; line-height: 1.2; }
  .om-cal-t td .lb-d { font-size: .68rem; }
  .om-cal-t th span { font-size: .7rem; }
}
.om-cal-t td:focus-visible { outline: 2px solid var(--accent); outline-offset: -3px; }
.mk { display: inline-flex; gap: 3px; vertical-align: middle; }
.mk i { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--muted); opacity: .7; }
.mk i.d, .mk i.e { display: none; }
.mk i.e { background: var(--accent); opacity: 1; }
.om-cal-t td .mk { position: absolute; right: 5px; bottom: 5px; }
.up-day { margin-top: 14px; }
.up-day .wire-item.is-past > .wire-top time, .up-day .wire-item.is-past .wire-title, .up-day .wire-item.is-past .wire-dek { color: var(--muted); font-weight: 500; }
@media (max-width: 720px) {
  .om-cal-t { --om-cw: 0px; }
  .om-cal-t thead th { padding: 5px 2px; font-size: 9px; }
  .om-cal-t td { height: 52px; min-width: 0; padding: 5px 4px 4px; overflow: hidden; }
  .om-cal-t td .cday { font-size: 11px; }
  .om-cal-t td .ct, .om-cal-t td .lb, .om-cal-t td .cin { display: none; }
  .om-cal-t td.v { background: var(--surface); color: var(--ink); }
  .om-cal-t td.v .cday { color: var(--muted); opacity: 1; }
  .om-cal-t td.today .cday, .om-cal-t td.v.today .cday { display: inline-block; min-width: 18px; text-align: center; background: var(--accent); color: var(--accent-ink); border-radius: 9px; padding: 1px 4px; font-weight: 700; }
  .om-cal-t td .mk { position: static; display: flex; flex-wrap: wrap; gap: 3px; margin-top: 7px; }
  .om-cal-t td .mk i { width: 7px; height: 7px; }
  .om-cal-t td .mk i.e, .om-cal-t td .mk i.d { display: inline-block; }
  .om-cal-t td .mk i:nth-child(n+4) { display: none; }
}
.om-cal-t td.sel, .om-cal-t td.v.sel { box-shadow: none; }
.om-cal-t td.sel .cday, .om-cal-t td.v.sel .cday { display: inline-block; min-width: 18px; text-align: center; background: var(--ink); color: var(--bg); border-radius: 9px; padding: 1px 4px; font-weight: 700; opacity: 1; }
.om-cal-t td.today.sel .cday, .om-cal-t td.v.today.sel .cday { background: var(--accent); color: var(--accent-ink); box-shadow: 0 0 0 2px var(--ink); }
.up-box { max-height: none; }
.om-cal-t td.key, .om-cal-t td.key.v, .om-cal-t td.key.z { background: color-mix(in oklab, var(--accent) 22%, var(--surface)); color: var(--ink); box-shadow: none; }
.om-cal-t td.key .cday { color: var(--ink); }
.om-cal-t td.key.sel .cday, .om-cal-t td.key.v.sel .cday { color: var(--bg); }
.om-cal-t td.key .lb-k { font-weight: 700; }
.om-cal-t td.key .lb-d { color: color-mix(in srgb, var(--ink) 70%, transparent); }
.om-cal-t td.key.today .cday, .om-cal-t td.key.v.today .cday { display: inline-block; min-width: 18px; text-align: center; background: var(--ink); color: var(--bg); border-radius: 9px; padding: 1px 4px; font-weight: 700; }
.om-cal-t td.key.today.sel .cday { background: var(--ink); color: var(--bg); box-shadow: 0 0 0 2px var(--accent); }
.up-leg .sw { display: inline-block; width: 10px; height: 10px; border-radius: 2px; vertical-align: -1px; margin-right: 2px;
  background: color-mix(in oklab, var(--accent) 22%, var(--surface)); border: 1px solid color-mix(in oklab, var(--accent) 45%, transparent); }
@media (min-width: 721px) { .up-leg .lg-dots { display: none; } .om-cal-t td .mk { display: none; } }
.om-cal-t td.p:not(.key), .om-cal-t td.p.v:not(.key) { background: var(--surface); color: var(--muted); }
.om-cal-t td.p:not(.key) .cday, .om-cal-t td.p:not(.key) .lb, .om-cal-t td.p:not(.key) .lb-d { color: var(--muted); font-weight: 500; }
.om-cal-t td.p .ct { display: none; }
.om-cal-t td.p:not(.key) .mk i, .om-cal-t td.p:not(.key) .mk i.e { background: var(--muted); opacity: .45; }
.om-cal-t td.p.sel .cday { color: var(--bg); }
@media (min-width: 721px) and (max-width: 999px) { .om-cal-t td .lb { -webkit-line-clamp: 1; } }
@media (max-width: 720px) { .up-row .wire-meta.wm-one { max-height: none; } .up-row .wm-of { white-space: normal; } }
