/* Microsoft 365 (m365.js): the client page tab, the Microsoft 365 page, the launchpad card's mark and the user drawer. Foundation language: hairline rules, mono for values, status as words. Both themes use the app's variables. */
.m3-chip{--chip:22px;position:relative;vertical-align:-5px;margin-right:8px}
.m3-chip{overflow:visible}
.m3-chip .m3-365{position:absolute;right:-3px;bottom:-3px;padding:1px 2px;border-radius:3px;background:var(--acc);color:var(--accInk);font:700 6.5px/1 var(--mono);letter-spacing:0}
.lp-chip.m3-chip{vertical-align:baseline;margin-right:0}
.m3-page .ph h1,.m3-sec .sh h2{display:flex;align-items:center}
.m3-cards{margin:8px 0 12px}
.m3-status{margin:6px 0 8px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.m3-actions{margin:0 0 8px;display:flex;gap:8px;flex-wrap:wrap}
.m3-actions a.btn{text-decoration:none}
.m3-msg{margin:0 0 8px;min-height:1px;max-width:78ch}
.m3-empty{margin:4px 0 0}
.m3-hintrow{display:grid;gap:4px;max-width:360px;margin:0 0 10px}
.m3-link{border:1px solid var(--bd2);border-radius:var(--r);background:var(--bg);padding:10px 12px;margin:0 0 10px;max-width:90ch}
.m3-url{display:block;overflow-wrap:anywhere;word-break:break-all;font-size:11.5px}
.m3-setup{max-width:90ch}
.m3-help{margin-top:8px}
.m3-helpbody{display:grid;gap:8px;max-width:84ch;margin-top:6px}
.m3-helpbody p,.m3-helpbody ol{margin:0}
.m3-helpbody ol{padding-left:20px;display:grid;gap:6px}
.m3-waste{margin:0 0 8px}
.m3-wnote{margin:6px 0 8px;max-width:84ch}
.m3-filter{margin:6px 0 8px;max-width:100%;overflow-x:auto}
.m3-q{min-width:220px}
.m3-count{margin:0 0 6px}
.m3-none{margin:8px 0}
.m3-foot{margin-top:10px;max-width:90ch}
.m3-tw.m3-scroll{max-height:560px;overflow:auto}
.m3-t td.c-host .host{font-weight:500}
.m3-t td.c-host .role{display:block;text-transform:none;letter-spacing:0;font-size:11px;color:var(--ink3);overflow-wrap:anywhere}
.m3-t td.n{text-align:right}
.m3-t td.act{text-align:right;white-space:nowrap}
.m3-t tr.m3-go{cursor:pointer}
.m3-t tr.m3-go:hover td{background:var(--sel)}
.m3-t tr.m3-go:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}
.m3-t tr.m3-xr>td{white-space:normal;background:var(--bg)}
.m3-meter{display:inline-block;width:84px;height:6px;border-radius:3px;background:var(--bd);overflow:hidden;vertical-align:middle;margin-right:6px}
.m3-meter>i{display:block;height:100%;background:var(--ok)}
.m3-meter.full>i{background:var(--warn)}
/* the drawer: a panel from the right, a bottom sheet on phones */
.m3-drawer{position:fixed;inset:0;z-index:40}
.m3-drawer[hidden]{display:none}
.m3-dr-bg{position:absolute;inset:0;background:var(--scrim,rgba(0,0,0,.45))}
.m3-dr-panel{position:absolute;top:0;right:0;bottom:0;width:min(460px,100%);background:var(--sf);border-left:1px solid var(--bd2);overflow:auto;padding:14px 18px 24px;display:grid;gap:12px;align-content:start}
.m3-dr-h{display:flex;gap:10px;align-items:center;justify-content:space-between}
.m3-dr-t{display:flex;gap:10px;align-items:center;min-width:0;font-size:15px;flex-wrap:wrap}
.m3-dr-kv{display:grid;grid-template-columns:110px minmax(0,1fr);gap:6px 12px;margin:0;font-size:12.5px}
.m3-dr-kv dt{color:var(--ink3)}
.m3-dr-kv dd{margin:0;overflow-wrap:anywhere}
.m3-dr-s{border-top:1px solid var(--bd);padding-top:10px;display:grid;gap:8px}
.m3-dr-s h3{margin:0;font:600 10.5px var(--font);letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.m3-lic{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:12.5px}
body.m3-dr-open{overflow:hidden}
@media (max-width:719px){
  .m3-q{min-width:0;width:100%}
  .m3-meter{width:60px}
  .m3-dr-panel{top:auto;left:0;width:100%;max-height:88vh;border-left:0;border-top:1px solid var(--bd2);border-radius:14px 14px 0 0}
  .m3-dr-kv{grid-template-columns:96px minmax(0,1fr)}
  .m3-tw.m3-scroll{max-height:none;overflow:visible}
  .m3-t,.m3-t tbody,.m3-t tr,.m3-t td{display:block;width:auto!important;max-width:none!important;box-sizing:border-box}
  .m3-t colgroup,.m3-t thead,.m3-t .rz-handle,.m3-t .ua-grip{display:none!important}
  .m3-t tr{border:1px solid var(--bd);border-radius:var(--r);background:var(--sf);margin:0 0 10px;padding:6px 12px}
  .m3-t td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border:0;padding:5px 0;text-align:right;white-space:normal;min-width:0!important}
  .m3-t td::before{content:attr(data-l);color:var(--ink3);font:600 10.5px var(--font);letter-spacing:.06em;text-transform:uppercase;text-align:left;flex:none}
  .m3-t td[data-l=""]::before{content:none}
  .m3-t td.c-host{display:block;text-align:left;padding-bottom:6px}
  .m3-t td.c-host::before{content:none}
  .m3-t td.act{justify-content:stretch;flex-wrap:wrap}
  .m3-t td.act .btn{flex:1 1 auto}
  .m3-t tr.m3-go:hover td{background:none}
  .m3-t tr.m3-xr{border:0;background:none;padding:0;margin:0}
  .m3-t tr.m3-xr>td{display:block;padding:6px 0;background:none}
  .m3-t tr.m3-xr>td::before{content:none}
}
