/* featureos:maintenance-announcements@1.0.0 */
/* Colour roles: warn = a window that is on, or warned about; info = scheduled; ok = the all-clear; bad = running over. Product tokens only, so both themes follow. */
.mt-banner{position:sticky;top:0;z-index:450}
.mt-banner[hidden]{display:none}
.mt-ban{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;padding:10px 18px;border-bottom:1px solid var(--line);font-size:13.5px;color:var(--ink)}
.mt-ban>svg{margin-top:2px}
.mt-ban.info{background:var(--info-soft);border-color:color-mix(in srgb,var(--info) 30%,var(--line))}.mt-ban.info>svg{color:var(--info)}
.mt-ban.warn{background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 35%,var(--line))}.mt-ban.warn>svg{color:var(--warn)}
.mt-ban.ok{background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 35%,var(--line))}.mt-ban.ok>svg{color:var(--ok)}
.mt-ban.bad{background:var(--bad-soft);border-color:color-mix(in srgb,var(--bad) 40%,var(--line))}.mt-ban.bad>svg{color:var(--bad)}
.mt-bt{font-weight:700}.mt-bx{flex:1 1 320px;color:var(--ink-2)}.mt-ba{display:flex;gap:6px;align-items:center;margin-left:auto}
.mt-lnk{background:none;border:0;padding:0;font:inherit;font-weight:650;color:var(--brand);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.mt-x{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:var(--ink-2);cursor:pointer}.mt-x:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}
/* sign-in strip */
.mt-strip{display:flex;gap:10px;align-items:flex-start;margin:0 0 16px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--warn-soft);border:1px solid color-mix(in srgb,var(--warn) 35%,var(--line));font-size:13px;color:var(--ink-2)}.mt-strip svg{color:var(--warn);margin-top:1px}
/* the notice page: it replaces the whole app */
.mt-notice{min-height:100vh;display:grid;place-items:center;padding:28px 16px;background:var(--bg)}
.mt-card{width:min(100%,560px);padding:34px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-2)}
.mt-eyebrow{display:inline-block;margin:0 0 12px;padding:3px 10px;border-radius:99px;background:var(--warn-soft);color:var(--warn);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mt-eyebrow.is-bad{background:var(--bad-soft);color:var(--bad)}
.mt-card h1{margin:0 0 12px}.mt-card h1:focus{outline:none}
.mt-msg{margin:0 0 18px;color:var(--ink-2);font-size:15px}
.mt-endbox{margin:0 0 18px;padding:14px 16px;border-radius:var(--radius-sm);background:var(--neutral-soft);color:var(--ink-2)}.mt-endbox strong{display:block;color:var(--ink)}.mt-endbox .mt-sub{display:block;margin-top:2px;font-size:13px}
.mt-endbox.is-over{background:var(--warn-soft);box-shadow:inset 3px 0 0 var(--warn)}
.mt-uh{margin:6px 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--mut)}
.mt-updates{margin:0 0 18px;padding:0;list-style:none;display:grid;gap:8px}.mt-updates li{display:grid;grid-template-columns:minmax(120px,max-content) 1fr;gap:4px 14px;font-size:13.5px;padding-top:8px;border-top:1px solid var(--line)}.mt-updates time{font-weight:650;color:var(--ink-2)}
.mt-live{margin:0 0 6px;font-size:12.5px;color:var(--mut)}.mt-back{margin:0;font-size:13.5px}
/* console */
.mt-console .card-h{margin-bottom:14px}.mt-lede{margin:0 0 18px;max-width:70ch}
.mt-form .field>label,.mt-form fieldset legend{font-weight:650}
.mt-seg{display:inline-flex;flex-wrap:wrap;gap:6px}
.mt-sgb{min-height:38px;padding:7px 14px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-2);font:600 13.5px var(--font);cursor:pointer}
.mt-sgb:hover{background:var(--neutral-soft)}.mt-sgb[aria-pressed=true]{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}
.mt-when{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.mt-when>div{display:grid;gap:4px}.mt-when label{font-size:12.5px;font-weight:600;color:var(--ink-2)}
.mt-sum{margin:0 0 16px;padding:10px 14px;border-radius:var(--radius-sm);background:var(--info-soft);color:var(--ink-2);font-size:13.5px}
.mt-who{border:0;padding:0;margin:0 0 16px}.mt-who legend{padding:0;margin-bottom:6px}
.mt-row{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;margin-bottom:6px;border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer}
.mt-row.is-on{background:var(--bad-soft);border-color:color-mix(in srgb,var(--bad) 35%,var(--line))}
.mt-row.is-locked{background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 35%,var(--line));cursor:default}
.mt-rl{display:block;font-weight:600}.mt-rs{display:block;font-weight:400;font-size:12.5px;color:var(--ink-2)}
.mt-zones{margin:0;padding:0;list-style:none;display:grid;gap:6px}.mt-zones li{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:13px}.mt-zn{min-width:130px;font-weight:650}
.mt-state.is-over{box-shadow:inset 3px 0 0 var(--bad);padding-left:14px}
.mt-sh{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:6px}.mt-big{margin:0;font-weight:650;font-size:15px}
.mt-state .kv-list{margin:14px 0}.mt-state .row{margin:12px 0}
.mt-noteform{margin:14px 0;display:grid;gap:6px}.mt-noterow{display:flex;gap:8px;flex-wrap:wrap}.mt-noterow input{flex:1 1 260px}
@media (pointer:coarse){.mt-sgb,.mt-x,.mt-row{min-height:44px}.mt-x{width:44px;height:44px}}
@media (max-width:600px){.mt-ban{padding:10px 14px}.mt-ba{margin-left:0}.mt-card{padding:22px}.mt-updates li{grid-template-columns:1fr}}
