/* m365-admin2.css — Office 365 combobox, tenant search, edit details, mailbox access, MFA, licences (m365-admin2.js).
   Classes only (strict CSP). Colours come from the theme variables, so light and dark both work. */

/* ── combobox ── */
.m365-cb{position:relative;display:inline-block;min-width:200px;flex:1 1 220px;max-width:100%}
.m365-cb .m365-cbin{width:100%;padding-right:28px;text-overflow:ellipsis}
.m365-cbchev{position:absolute;right:10px;top:50%;width:7px;height:7px;margin-top:-6px;border-right:1.6px solid var(--mut);border-bottom:1.6px solid var(--mut);transform:rotate(45deg);pointer-events:none}
.m365-cblb{position:absolute;z-index:60;left:0;right:0;top:calc(100% + 4px);min-width:260px;max-height:300px;overflow-y:auto;margin:0;padding:4px;list-style:none;background:var(--surface);border:1px solid var(--line-strong,var(--line));border-radius:var(--radius-sm);box-shadow:var(--shadow-lg,0 10px 30px rgba(0,0,0,.18))}
.m365-cbo{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;padding:7px 9px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--ink)}
.m365-cbo:hover{background:var(--hover,var(--surface2))}
.m365-cbo.act{background:var(--accent-bg);color:var(--accent-ink);outline:1px solid color-mix(in srgb,var(--accent) 45%,transparent)}
.m365-cbo.sel .m365-cbl{font-weight:650}
.m365-cbo.sel::after{content:"";margin-left:auto;width:8px;height:4px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg) translateY(-2px)}
.m365-cbs{flex-basis:100%;font-size:11.5px;color:var(--mut)}
.m365-cbo.act .m365-cbs{color:inherit;opacity:.8}
.m365-cbo .tag{font-size:10.5px;padding:0 6px;line-height:16px}
.m365-cbmore{padding:7px 9px;font-size:12px;color:var(--mut)}
.m365-pick .m365-cbpick{min-width:260px;max-width:360px}
.m365-maprow .m365-cb{min-width:200px;max-width:280px}
.m365-addrow .m365-cb.m365-grow{flex:1 1 260px}
.m365-tk .m365-cb{display:block;max-width:none}
@media (max-width:640px){.m365-pick .m365-cbpick{min-width:0;width:100%}.m365-cblb{min-width:0}}

/* ── Settings ▸ Tenants: search + chips ── */
.m365-tsearch{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.m365-tsicon{display:inline-flex;color:var(--mut)}.m365-tsicon svg{width:16px;height:16px}
#m365_tq{flex:1 1 280px;max-width:460px}
.m365-chips{display:flex;flex-wrap:wrap;gap:6px}
.m365-chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 11px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink2);font-size:12.5px;font-weight:550;cursor:pointer}
.m365-chip:hover{background:var(--surface2)}
.m365-chip.on{background:var(--accent-bg2,var(--accent-bg));border-color:color-mix(in srgb,var(--accent) 45%,var(--line));color:var(--accent-ink)}
.m365-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.m365-chipn{font-size:11px;font-weight:700;padding:0 6px;border-radius:999px;background:var(--surface3);color:var(--ink2);line-height:17px}
.m365-chip.on .m365-chipn{background:var(--surface);color:var(--accent-ink)}
.m365-tcount{margin-left:auto}
.m365-tbl tr[hidden]{display:none}

/* ── edit details ── */
.m365-egrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:0 12px}
.m365-ef label{display:flex;align-items:center;gap:2px}
.m365-ef input:disabled{background:var(--surface2);color:var(--mut);cursor:not-allowed}
.m365-ef .m365-cb{display:block;max-width:none;min-width:0}
.m365-sync{display:flex;align-items:center;gap:8px;padding:8px 12px;margin:0 0 6px;border-radius:var(--radius-sm);background:var(--info-bg,var(--surface2));color:var(--ink);font-size:12.5px;font-weight:550}
.m365-sync svg{width:15px;height:15px;color:var(--info,var(--accent))}

/* ── mailbox access ── */
.m365-mbhd{display:flex;align-items:center;gap:8px;margin:0 0 10px}
.m365-mbgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.m365-mbcol{border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px;background:var(--surface)}
.m365-mbt{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--ink2);text-transform:uppercase;letter-spacing:.3px;margin:0 0 6px}
.m365-mbt .cnt{margin-left:auto;font-size:11px;padding:0 7px;border-radius:999px;background:var(--surface3);color:var(--ink2);line-height:18px}
.m365-mbrow{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;border-top:1px solid var(--line-soft,var(--line))}
.m365-mbrow:first-of-type{border-top:0}
.m365-mbnone{padding:4px 0}
.m365-rseg{margin:2px 0 4px}

/* ── authentication methods ── */
.m365-amt td{padding-top:7px;padding-bottom:7px}
.m365-amic{width:28px;color:var(--mut)}.m365-amic svg{width:17px;height:17px}
.csub.m365-dz{color:var(--bad)}

/* ── licences ── */
.m365-lictb{flex-wrap:wrap;gap:8px}
.m365-lictb a.btn{text-decoration:none}
.m365-okv{color:var(--ok)}
.m365-warnv{color:var(--warn)}
.m365-meter i.m365-over{width:100%;background:var(--bad)}
.m365-cohd{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.m365-cohd svg{width:20px;height:20px;color:var(--accent)}
.m365-kpis .m365-big.m365-none{color:var(--bad)}

/* ── licence changes (m365-licchanges.js) ── */
.m365-lctabs{margin:0 0 12px}
.m365-lctb{flex-wrap:wrap;gap:8px}
.m365-lctb a.btn{text-decoration:none}
.m365-lcrange{display:inline-flex;align-items:center;gap:6px}
.m365-lcrange input{width:auto;height:30px;margin:0}
.m365-lcmeta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin:2px 0 12px}
.m365-lcmeta b{color:var(--ink)}
.m365-lcmeta .stchip{margin:0 0 0 6px}
.m365-lcdot{opacity:.6}
.m365-lcnote{margin-top:0}
.m365-lcmore{padding:0 16px 10px}
.m365-lcmore summary{cursor:pointer;color:var(--accent);font-size:12.5px;font-weight:600}
.m365-lcmore .m365-lcsl{padding:6px 0 0 16px}
.m365-lcsl{margin:0;padding:10px 16px 12px 32px;display:grid;gap:4px;font-size:13px;color:var(--ink)}
.m365-d{font-weight:650;white-space:nowrap;font-variant-numeric:tabular-nums}
.m365-d.good{color:var(--ok)} .m365-d.warn{color:var(--warn)} .m365-d.info{color:var(--accent)} .m365-d.zero{color:var(--mut);font-weight:500}
.m365-d span{font-size:.8em}
.m365-lcpair{white-space:nowrap;font-variant-numeric:tabular-nums;margin-right:6px}
.m365-lct td .stchip{margin:0}
.m365-lcsel{width:auto;height:28px;margin:0;font-size:12.5px;max-width:260px}
.m365-lcchart{min-height:220px;overflow:hidden}
.m365-lcsvg{display:block;max-width:100%}
.m365-lc-grid{stroke:var(--grid-line);stroke-width:1}
.m365-lc-axis{stroke:var(--axis);stroke-width:1}
.m365-lc-tk{fill:var(--mut);font-size:10.5px}
.m365-lc-a{fill:none;stroke:var(--c1);stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.m365-lc-p{fill:none;stroke:var(--mut);stroke-width:1.8;stroke-dasharray:5 4;stroke-linejoin:round}
.m365-lc-dot{fill:var(--c1);stroke:var(--surface);stroke-width:2}
.m365-lc-hits rect{fill:transparent}
.m365-lc-hits rect:hover{fill:var(--grid-line);fill-opacity:.55}
.m365-lcleg{display:flex;gap:16px;font-size:12px;color:var(--ink2);margin-top:6px}
.m365-lcleg span{display:inline-flex;align-items:center;gap:6px}
.m365-lcleg .sw{display:inline-block;width:18px;height:0;border-top:2.5px solid var(--c1)}
.m365-lcleg .sw.p{border-top:2px dashed var(--mut)}
.m365-lcgrid{grid-template-columns:1fr}
.m365-lcfilt{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line)}
.m365-lcfilt input,.m365-lcfilt select{width:auto;height:30px;margin:0;font-size:12.5px}
.m365-lcfilt input{min-width:200px}
.m365-lcfilt a.btn{text-decoration:none}
.m365-lcby{display:inline-flex;align-items:center;gap:5px;font-weight:600}
.m365-lcby svg{width:13px;height:13px;color:var(--accent)}
@media (max-width:640px){.m365-lcfilt input{min-width:0;flex:1 1 100%}.m365-lcrange{flex-wrap:wrap}}
.m365-excl{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:10px 16px;border-top:1px solid var(--line)}
