/* ======================= Lịch họp (kiểu Microsoft Teams) ======================= */
/* Màu phân loại theo sáu nhóm của Teams (đỏ, cam, vàng, xanh lá, xanh dương, tím). Không
   phân loại thì dùng màu xanh nhận diện của trang. Mỗi màu có hai sắc: nền nhạt để chữ
   đọc được, vạch đậm bên trái để phân biệt nhanh. */
:root {
  --mt-none: #15803d; --mt-none-bg: #d9efdf;
  --mt-do:   #c4314b; --mt-do-bg:   #f9dade;
  --mt-cam:  #e0632a; --mt-cam-bg:  #fde3d5;
  --mt-vang: #b08500; --mt-vang-bg: #fcefc2;
  --mt-la:   #2f8a3a; --mt-la-bg:   #d8eed6;
  --mt-duong:#4f6bed; --mt-duong-bg:#dfe3fa;
  --mt-tim:  #7a55b0; --mt-tim-bg:  #e6dcf3;
  --mt-line: rgba(20, 83, 45, .12);
  --mt-now:  #c4314b;
}

/* Mở lịch thì cả khối công việc lui xuống, lịch chiếm chỗ. */
#jobCard.is-meet > .card-head,
#jobCard.is-meet > #jobStats,
#jobCard.is-meet > #jobBody,
#jobCard.is-meet > #jobLegend { display: none; }
.meet-open { margin-right: auto; }

.meet-view { margin-top: 6px; }
.mt-top, .mt-nav { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.mt-top { padding-bottom: 8px; border-bottom: 1px solid var(--mt-line); }
.mt-title { margin: 0 0 0 4px; font-size: 18px; color: var(--green-900); }
.mt-spacer { flex: 1; }
.mt-nav { padding: 8px 0; position: relative; }
.mt-label { font: inherit; font-weight: 700; font-size: 15px; color: var(--ink);
  background: none; border: 0; cursor: pointer; padding: 4px 8px; border-radius: 8px;
  font-variant-numeric: tabular-nums; }
.mt-label:hover { background: var(--green-50); }
.mt-viewsel { font: inherit; font-size: 13px; padding: 5px 8px; border-radius: 9px;
  border: 1px solid var(--line); background: #fff; color: var(--ink); }
.mt-ico { margin-right: 4px; font-size: .9em; }

/* ---------- lịch nhỏ ---------- */
.mt-mini { position: absolute; top: 44px; left: 130px; z-index: 40; background: #fff;
  border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow);
  padding: 10px; width: 260px; }
.mt-mini-head { display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 6px; font-size: 13px; }
.mt-mini-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.mt-mini-grid .h { font-size: 10.5px; text-align: center; color: var(--ink-soft);
  font-weight: 700; }
.mt-mini-grid .d { font: inherit; font-size: 12px; border: 0; background: none;
  border-radius: 6px; padding: 5px 0; cursor: pointer; color: var(--ink);
  font-variant-numeric: tabular-nums; }
.mt-mini-grid .d:hover { background: var(--green-50); }
.mt-mini-grid .d.out { color: #a3b1a9; }
.mt-mini-grid .d.in { background: #eef5f0; }
.mt-mini-grid .d.today { background: var(--green-700); color: #fff; font-weight: 700; }

/* ---------- lưới giờ ---------- */
.mt-grid { --gut: 58px; border: 1px solid var(--mt-line); border-radius: 12px;
  background: #fff; overflow: hidden; }
.mt-head, .mt-allday { display: grid;
  grid-template-columns: var(--gut) repeat(var(--ndays), minmax(0, 1fr)); }
.mt-head { border-bottom: 1px solid var(--mt-line); }
.mt-gutter { font-size: 11px; color: var(--ink-soft); }
.mt-dayhead { font: inherit; text-align: left; background: none; border: 0;
  border-left: 1px solid var(--mt-line); padding: 8px 10px 6px; cursor: pointer;
  display: flex; flex-direction: column; color: var(--ink); }
.mt-dayhead:hover { background: #f6faf7; }
.mt-dayhead .n { font-size: 22px; font-weight: 600; line-height: 1.1;
  font-variant-numeric: tabular-nums; }
.mt-dayhead .w { font-size: 12px; color: var(--ink-soft); }
.mt-dayhead.is-today { box-shadow: inset 0 -3px 0 var(--green-700); }
.mt-dayhead.is-today .n, .mt-dayhead.is-today .w { color: var(--green-700); font-weight: 700; }

.mt-allday { border-bottom: 2px solid var(--mt-line); min-height: 30px; }
.mt-allday > .mt-gutter { padding: 6px 6px 0; text-align: right; }
.mt-allcell { border-left: 1px solid var(--mt-line); padding: 3px 3px 2px;
  display: flex; flex-direction: column; gap: 2px; min-width: 0; }

.mt-scroll { height: min(640px, 64vh); overflow-y: auto; position: relative; }
.mt-inner { position: relative; display: grid;
  grid-template-columns: var(--gut) repeat(var(--ndays), minmax(0, 1fr));
  /* nửa giờ một vạch mờ, một giờ một vạch rõ - như Teams */
  background-image:
    linear-gradient(to bottom, var(--mt-line) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(20, 83, 45, .05) 1px, transparent 1px);
  background-size: 100% 48px, 100% 24px; }
.mt-hours { position: relative; background: #fff; }
.mt-hours span { position: absolute; right: 8px; transform: translateY(-50%);
  font-size: 11px; color: var(--ink-soft); font-variant-numeric: tabular-nums; }
.mt-col { position: relative; border-left: 1px solid var(--mt-line); cursor: cell;
  touch-action: none; }
.mt-col.is-weekend { background: rgba(20, 83, 45, .025); }
.mt-col.is-today { background: rgba(22, 163, 74, .045); }
.mt-now { position: absolute; left: -1px; right: 0; height: 2px; background: var(--mt-now);
  z-index: 5; pointer-events: none; }
.mt-now::before { content: ""; position: absolute; left: -5px; top: -4px; width: 10px;
  height: 10px; border-radius: 50%; background: var(--mt-now); }
.mt-sel { position: absolute; left: 0; right: 0; border: 2px solid var(--ink);
  border-radius: 4px; background: rgba(20, 38, 28, .04); z-index: 3; pointer-events: none; }

/* ---------- khối cuộc họp ---------- */
.mt-ev { --c: var(--mt-none); --bg: var(--mt-none-bg);
  background: var(--bg); border-left: 4px solid var(--c); border-radius: 5px;
  color: var(--ink); font-size: 12px; line-height: 1.3; padding: 3px 6px;
  overflow: hidden; cursor: pointer; user-select: none; box-sizing: border-box; }
.mt-ev.c-do    { --c: var(--mt-do);    --bg: var(--mt-do-bg); }
.mt-ev.c-cam   { --c: var(--mt-cam);   --bg: var(--mt-cam-bg); }
.mt-ev.c-vang  { --c: var(--mt-vang);  --bg: var(--mt-vang-bg); }
.mt-ev.c-la    { --c: var(--mt-la);    --bg: var(--mt-la-bg); }
.mt-ev.c-duong { --c: var(--mt-duong); --bg: var(--mt-duong-bg); }
.mt-ev.c-tim   { --c: var(--mt-tim);   --bg: var(--mt-tim-bg); }
.mt-ev .t { font-weight: 600; overflow: hidden; text-overflow: ellipsis; }
.mt-ev .s { color: var(--ink-soft); font-size: 11.5px; overflow: hidden;
  text-overflow: ellipsis; white-space: nowrap; }
.mt-ev:hover { filter: brightness(.97); box-shadow: 0 1px 4px rgba(0, 0, 0, .12); }
.mt-ev:focus-visible { outline: 2px solid var(--c); outline-offset: 1px; }
.mt-ev.is-timed { position: absolute; z-index: 2; }
.mt-ev.is-timed.is-short { padding-top: 1px; }
.mt-ev.is-timed.is-short .t { white-space: nowrap; }
.mt-ev.is-timed.is-short .s { display: none; }
.mt-ev.is-allday .t, .mt-ev.is-chip .t { white-space: nowrap; }
.mt-ev.is-allday.cont-l { border-top-left-radius: 0; border-bottom-left-radius: 0; }
.mt-ev.is-allday.cont-r { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.mt-ev.is-dragging { opacity: .85; z-index: 20; box-shadow: 0 6px 18px rgba(0, 0, 0, .22);
  cursor: grabbing; }
.mt-ev.is-dragging[data-drag]::after { content: attr(data-drag); position: absolute;
  right: 4px; bottom: 2px; font-size: 10.5px; font-weight: 700; background: #fff;
  padding: 0 4px; border-radius: 4px; }
.mt-resize { position: absolute; left: 0; right: 0; bottom: 0; height: 7px;
  cursor: ns-resize; }

/* "Hiển thị là". Khối LUÔN tô kín màu phân loại như Teams (user chốt 15/09: nền trắng
   viền đứt kiểu Outlook cho "Rảnh" trông như ô trống chưa có gì). Chỉ phân biệt nhẹ:
   Rảnh = vạch trái nét đứt, Tạm thời = sọc chéo, Vắng mặt = nền đậm hơn. */
.mt-ev.s-ranh    { border-left-style: dashed; }
.mt-ev.s-tam     { background: repeating-linear-gradient(135deg, var(--bg) 0 6px, #fff 6px 12px); }
.mt-ev.s-noikhac { border-left-style: dotted; }
.mt-ev.s-vang    { background: color-mix(in srgb, var(--c) 28%, #fff); }

/* ---------- khung tháng ---------- */
.mt-month { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr));
  border: 1px solid var(--mt-line); border-radius: 12px; overflow: hidden; background: #fff; }
.mt-mhead { font-size: 11.5px; font-weight: 700; color: var(--ink-soft); padding: 7px 8px;
  border-bottom: 1px solid var(--mt-line); letter-spacing: .03em; }
.mt-mcell { min-height: 108px; border-left: 1px solid var(--mt-line);
  border-top: 1px solid var(--mt-line); padding: 3px 4px 4px; display: flex;
  flex-direction: column; gap: 2px; min-width: 0; }
.mt-mcell:nth-child(7n + 1) { border-left: 0; }
.mt-mcell.out { background: #f8faf9; }
.mt-mcell.out .mt-mnum { color: #a3b1a9; }
.mt-mcell.is-today .mt-mnum { background: var(--green-700); color: #fff; }
.mt-mnum { font: inherit; font-size: 12.5px; font-weight: 600; align-self: flex-start;
  background: none; border: 0; border-radius: 99px; padding: 1px 7px; cursor: pointer;
  color: var(--ink); font-variant-numeric: tabular-nums; }
.mt-mnum:hover { background: var(--green-50); }
.mt-ev.is-chip { font-size: 11.5px; padding: 1px 5px; border-left-width: 3px; }
.mt-ev.is-chip .tm { font-weight: 400; color: var(--ink-soft); }
.mt-more { font: inherit; font-size: 11.5px; font-weight: 600; color: var(--green-700);
  background: none; border: 0; text-align: left; cursor: pointer; padding: 1px 4px; }
.mt-drop { box-shadow: inset 0 0 0 2px var(--green-600); background: var(--green-50); }

/* ---------- thẻ xem nhanh ---------- */
.mt-peek { position: fixed; z-index: 70; width: 340px; max-width: calc(100vw - 16px);
  background: #fff; border-radius: 12px; box-shadow: 0 12px 36px rgba(0, 0, 0, .2);
  border-top: 5px solid var(--mt-none); padding: 12px 14px; font-size: 13px;
  display: flex; flex-direction: column; gap: 5px; max-height: 80vh; overflow-y: auto; }
.mt-peek.c-do { border-top-color: var(--mt-do); }
.mt-peek.c-cam { border-top-color: var(--mt-cam); }
.mt-peek.c-vang { border-top-color: var(--mt-vang); }
.mt-peek.c-la { border-top-color: var(--mt-la); }
.mt-peek.c-duong { border-top-color: var(--mt-duong); }
.mt-peek.c-tim { border-top-color: var(--mt-tim); }
.mt-peek h4 { margin: 0 24px 2px 0; font-size: 15px; color: var(--ink); }
.mt-peek .mt-when { font-weight: 600; color: var(--green-900); }
.mt-peek .mt-rec, .mt-peek .mt-org, .mt-peek .mt-show, .mt-peek .mt-att,
.mt-peek .mt-loc { color: var(--ink-soft); }
.mt-peek .mt-rec:empty, .mt-peek .mt-att:empty { display: none; }
.mt-peek-body { border-top: 1px solid var(--mt-line); padding-top: 6px; }
.mt-peek-body:empty { display: none; }
.mt-peek-act { display: flex; gap: 8px; margin-top: 6px; }
.mt-x { position: absolute; right: 8px; top: 6px; font-size: 20px; line-height: 1;
  background: none; border: 0; cursor: pointer; color: var(--ink-soft); }

.mt-toast { position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%);
  z-index: 90; background: var(--green-900); color: #fff; padding: 9px 16px;
  border-radius: 10px; font-size: 13px; box-shadow: var(--shadow); max-width: 90vw; }
.mt-toast.is-bad { background: #b3261e; }

/* ---------- hộp thoại nhỏ (buổi này / cả chuỗi, lặp tuỳ chỉnh) ---------- */
.mt-modal { position: fixed; inset: 0; z-index: 80; display: flex; align-items: center;
  justify-content: center; padding: 16px; background: rgba(12, 30, 20, .42); }
.mt-askbox { background: #fff; border-radius: 12px; padding: 16px 18px; width: min(360px, 100%);
  box-shadow: var(--shadow); display: flex; flex-direction: column; gap: 8px; }
.mt-askbox h4 { margin: 0 0 4px; font-size: 15px; color: var(--green-900); }
.mt-radio { display: flex; align-items: center; gap: 8px; font-size: 13.5px; cursor: pointer; }
.mt-radio input { accent-color: var(--green-700); }
.mt-custom { width: min(420px, 100%); }
.mt-crow { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.mt-cblock { display: flex; flex-direction: column; gap: 6px; }
.mt-cblock[hidden], .mt-crow[hidden] { display: none; }
.mt-cblock > b { font-size: 12px; color: var(--ink-soft); margin-top: 4px; }
.mt-num { width: 64px; }
.mt-askbox input[type="number"], .mt-askbox input[type="date"], .mt-askbox select {
  font: inherit; padding: 5px 7px; border: 1px solid var(--line); border-radius: 8px; }
.mt-daybtn { font: inherit; font-size: 12px; width: 34px; height: 30px; border-radius: 99px;
  border: 1px solid var(--line); background: #fff; cursor: pointer; }
.mt-daybtn.is-on { background: var(--green-700); color: #fff; border-color: var(--green-700); }

/* ---------- form cuộc họp ---------- */
.mt-formwrap { align-items: flex-start; padding-top: 3vh; z-index: 75; }
.mt-form { background: #fff; border-radius: 14px; box-shadow: var(--shadow);
  width: min(1040px, 100%); max-height: 94vh; overflow-y: auto; padding: 0 0 16px; }
.mt-fhead { position: sticky; top: 0; z-index: 3; background: #fff; display: flex;
  align-items: center; gap: 10px; padding: 12px 18px; border-bottom: 1px solid var(--mt-line);
  flex-wrap: wrap; }
.mt-fhead h3 { margin: 0; font-size: 16px; color: var(--green-900); }
.mt-ftabs { display: flex; gap: 2px; margin-left: 10px; }
.mt-ftab { font: inherit; font-size: 13.5px; background: none; border: 0; cursor: pointer;
  padding: 6px 10px; color: var(--ink-soft); border-bottom: 2px solid transparent; }
.mt-ftab.is-on { color: var(--green-900); font-weight: 700; border-bottom-color: var(--green-700); }
.mt-ferr { padding: 0 18px; }
.mt-ferr:empty { display: none; }
.mt-fdet, .mt-fas { padding: 10px 18px 0; }
.mt-fnote { margin: 0 0 8px; font-size: 12.5px; background: #fff8e1; color: #7a4a00;
  border-radius: 8px; padding: 7px 10px; }
.mt-frow { display: grid; grid-template-columns: 32px minmax(0, 1fr); align-items: start;
  padding: 7px 0; border-bottom: 1px solid rgba(20, 83, 45, .06); }
.mt-ficon { font-size: 16px; color: var(--ink-soft); padding-top: 6px; text-align: center; }
.mt-fcell.is-off { opacity: .5; pointer-events: none; }
.mt-fcell input[type="text"], .mt-fcell input[type="date"], .mt-fcell input[type="time"],
.mt-fcell select { font: inherit; color: var(--ink); background: #f7faf8;
  border: 1px solid var(--line); border-radius: 8px; padding: 6px 9px; }
.mt-fcell input[type="text"] { width: 100%; box-sizing: border-box; }
.mt-in-title { font-size: 18px !important; font-weight: 600; border: 0 !important;
  border-bottom: 2px solid var(--line) !important; border-radius: 0 !important;
  background: transparent !important; }
.mt-in-title:focus { outline: none; border-bottom-color: var(--green-700) !important; }
.mt-time { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.mt-time input[hidden] { display: none; }
.mt-arrow { color: var(--ink-soft); padding: 0 2px; }
.mt-dur { font-size: 12.5px; color: var(--ink-soft); margin-left: 4px; min-width: 60px; }
.mt-switch { display: inline-flex; align-items: center; gap: 7px; font-size: 13px;
  cursor: pointer; user-select: none; margin-left: 8px; }
.mt-switch input { position: absolute; opacity: 0; width: 0; height: 0; }
.mt-switch .k { width: 34px; height: 18px; border-radius: 99px; background: #c9d4ce;
  position: relative; transition: background .15s; flex: none; }
.mt-switch .k::after { content: ""; position: absolute; top: 2px; left: 2px; width: 14px;
  height: 14px; border-radius: 50%; background: #fff; transition: transform .15s; }
.mt-switch input:checked + .k { background: var(--green-700); }
.mt-switch input:checked + .k::after { transform: translateX(16px); }
.mt-switch input:focus-visible + .k { outline: 2px solid var(--green-600); outline-offset: 2px; }
.mt-rec-wrap { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.mt-rec-text { font-size: 12.5px; color: var(--ink-soft); }
.mt-opts { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.mt-opt, .mt-cats { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; }
.mt-opt .k, .mt-cats .k { font-size: 12px; color: var(--ink-soft); }
.mt-cat { width: 20px; height: 20px; border-radius: 50%; cursor: pointer;
  border: 2px solid #fff; box-shadow: 0 0 0 1px var(--line); background: var(--mt-none-bg); }
.mt-cat.c-do { background: var(--mt-do); } .mt-cat.c-cam { background: var(--mt-cam); }
.mt-cat.c-vang { background: var(--mt-vang); } .mt-cat.c-la { background: var(--mt-la); }
.mt-cat.c-duong { background: var(--mt-duong); } .mt-cat.c-tim { background: var(--mt-tim); }
.mt-cat.c-none { background: repeating-linear-gradient(135deg, #fff 0 3px, #d6dfda 3px 5px); }
.mt-cat.is-on { box-shadow: 0 0 0 2px var(--ink); }
.mt-fwarn { font-size: 12.5px; color: #9a5b00; padding: 6px 0 0 32px; }
.mt-fwarn:empty { display: none; }
.mt-link { font: inherit; font-size: 12.5px; color: var(--green-700); background: none;
  border: 0; cursor: pointer; padding: 4px 0; font-weight: 600; }
.mt-link[hidden], .mt-people[hidden] { display: none; }

.mt-people { position: relative; display: flex; align-items: center; flex-wrap: wrap;
  gap: 5px; background: #f7faf8; border: 1px solid var(--line); border-radius: 8px;
  padding: 4px 6px; margin-bottom: 4px; }
.mt-people:focus-within { border-color: var(--green-600); }
.mt-people input { flex: 1; min-width: 160px; border: 0 !important; background: transparent !important;
  padding: 4px !important; outline: none; }
.mt-chips { display: contents; }
.mt-chip { display: inline-flex; align-items: center; gap: 4px; background: #fff;
  border: 1px solid var(--line); border-radius: 99px; padding: 2px 4px 2px 9px; font-size: 12.5px; }
.mt-chip button { border: 0; background: none; cursor: pointer; font-size: 14px;
  line-height: 1; color: var(--ink-soft); padding: 0 3px; }
.mt-sugg { position: absolute; left: 0; top: 100%; z-index: 10; list-style: none;
  margin: 3px 0 0; padding: 4px; background: #fff; border: 1px solid var(--line);
  border-radius: 10px; box-shadow: var(--shadow); min-width: 260px; }
.mt-sugg li { padding: 6px 9px; border-radius: 7px; cursor: pointer; font-size: 13px; }
.mt-sugg li small { color: var(--ink-soft); font-weight: 700; font-size: 10.5px; }
.mt-sugg li:hover, .mt-sugg li.is-hi { background: var(--green-50); }

.mt-editor { margin: 10px 0 0 32px; border: 1px solid var(--line); border-radius: 10px;
  overflow: hidden; }
.mt-etb { display: flex; gap: 2px; padding: 4px; background: #f4f8f5;
  border-bottom: 1px solid var(--line); }
.mt-eb { font: inherit; font-size: 13px; min-width: 30px; height: 28px; border: 0;
  background: none; border-radius: 6px; cursor: pointer; color: var(--ink); }
.mt-eb:hover { background: #e3ede7; }
.mt-eb.e-bold { font-weight: 800; } .mt-eb.e-italic { font-style: italic; }
.mt-eb.e-underline { text-decoration: underline; }
.mt-ebody { min-height: 150px; padding: 10px 12px; font-size: 13.5px; outline: none; }
.mt-ebody:empty::before { content: attr(data-ph); color: #9aaaa1; }
.mt-ffoot { display: flex; justify-content: flex-end; padding: 12px 0 0; }

/* ---------- trợ lý lập lịch ---------- */
.mt-as-bar { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; }
.mt-as-when { font-size: 13px; color: var(--green-900); font-weight: 600; margin-left: 8px; }
.mt-as-leg { margin-left: auto; display: flex; gap: 12px; font-size: 11.5px; color: var(--ink-soft); }
.mt-as-leg .i { display: inline-flex; align-items: center; gap: 4px; }
.mt-as-leg .sw { width: 14px; height: 10px; border-radius: 2px; display: inline-block; }
.sw.s-ban, .mt-as-blk.s-ban, .mt-as-blk.s-noikhac { background: #5b7fa8; }
.sw.s-tam, .mt-as-blk.s-tam { background: repeating-linear-gradient(135deg, #5b7fa8 0 4px, #dfe8f2 4px 8px); }
.sw.s-vang, .mt-as-blk.s-vang { background: #7a55b0; }
.sw.s-off { background: #eef1ef; border: 1px solid #dde4e0; }
.mt-as { display: grid; grid-template-columns: 200px minmax(0, 1fr);
  border: 1px solid var(--mt-line); border-radius: 10px; overflow: hidden; }
.mt-as-names { border-right: 1px solid var(--mt-line); background: #fbfcfb; }
.mt-as-name { height: 38px; display: flex; align-items: center; padding: 0 10px;
  font-size: 13px; border-bottom: 1px solid var(--mt-line); white-space: nowrap;
  overflow: hidden; text-overflow: ellipsis; }
.mt-as-name.head { height: 26px; }
.mt-as-name.all { font-weight: 700; }
.mt-as-name small { color: var(--ink-soft); margin-left: 4px; }
.mt-as-scroll { overflow-x: auto; }
.mt-as-tracks { position: relative;
  background-image: linear-gradient(to right, var(--mt-line) 1px, transparent 1px);
  background-size: 68px 100%; }
.mt-as-ruler { height: 26px; position: relative; border-bottom: 1px solid var(--mt-line); }
.mt-as-ruler span { position: absolute; top: 5px; padding-left: 4px; font-size: 11px;
  color: var(--ink-soft); font-variant-numeric: tabular-nums; }
.mt-as-track { position: relative; height: 38px; border-bottom: 1px solid var(--mt-line);
  cursor: pointer; }
.mt-as-track.all { background: rgba(20, 83, 45, .03); }
.mt-as-off { position: absolute; top: 0; bottom: 0; background: rgba(120, 135, 128, .12); }
.mt-as-blk { position: absolute; top: 7px; bottom: 7px; border-radius: 4px; color: #fff;
  font-size: 11px; font-style: normal; padding: 3px 5px; overflow: hidden;
  white-space: nowrap; text-overflow: ellipsis; opacity: .9; box-sizing: border-box; }
.mt-as-blk.s-vang { opacity: .45; }
.mt-as-sel { position: absolute; top: 26px; bottom: 0; border: 2px solid var(--green-700);
  background: rgba(22, 163, 74, .12); border-radius: 4px; pointer-events: none; }
.mt-as-sug { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin-top: 10px;
  font-size: 12.5px; }
.mt-as-empty { margin: 6px 0; }

@media (max-width: 760px) {
  .mt-grid { --gut: 44px; }
  .mt-dayhead .w { display: none; }
  .mt-as { grid-template-columns: 120px minmax(0, 1fr); }
  .mt-editor, .mt-fwarn { margin-left: 0; padding-left: 0; }
}
