/* ===== Logos members portal =====
   The portal keeps its own layout (a board of pinned posters beside a dark
   sidebar, rounded cards, Inter for UI) but draws its colours from the public
   site's ladder in styles.css so the two feel like one organisation. Prefix: mh- */

:root{
  /* Same ground as the public site: the board is the nav's beige, the
     sidebar is the footer's near-black, the accent is the site maroon.
     Category colours are kept for legibility but muted to sit with it. */
  --p-board:var(--beige, #e8dfd0);
  --p-card:#ffffff;
  --p-ink:#0d0d0f;
  --p-body:#26262a;
  --p-muted:#5c5c63;
  --p-line:#e2dbd1;

  --p-side:var(--dark, #1a1816);
  --p-side-2:#2a2623;
  --p-side-text:var(--on-dark, #e9e2d6);
  --p-side-dim:var(--on-dark-dim, #b9b0a3);

  --p-accent:#8a2a2a;

  --c-deadline:#8a2a2a;   /* maroon, the site accent */
  --c-workshop:#3f6b4f;   /* deep green */
  --c-journal:#3b5b7a;    /* slate blue */
  --c-general:#a8762a;    /* ochre */
  --c-updates:#6b4c6e;    /* plum */
  --c-pinned:#8a2a2a;

  --p-ui:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}

[hidden]{display:none !important;}

/* ---------------------------------------------------------------
   Sign-in screen: stays on the public site's styling so arriving
   from the website does not jar. Only the app behind it changes.
   --------------------------------------------------------------- */
.mh-card{background:var(--bg-alt);border:0;border-radius:0;padding:36px 40px;position:relative;}
@media(max-width:640px){.mh-card{padding:28px 22px;}}
.mh-small{font-family:var(--sans);font-size:15px;color:var(--muted);margin:0;line-height:1.5;}
.mh-link{background:none;border:0;padding:0;font:inherit;font-weight:600;color:var(--accent);
  text-decoration:underline;text-underline-offset:2px;cursor:pointer;}
.mh-link:hover{color:var(--accent-dark);}
.mh-msg{font-size:16px;margin:16px 0 0;min-height:1.2em;color:var(--ink);animation:mhFade .2s ease;}
.mh-msg.is-err{color:var(--accent);}
@keyframes mhFade{from{opacity:0;}to{opacity:1;}}
.mh-loading{font-size:16px;color:var(--muted);padding:36px 0;}
.mh-loading::after{content:"";animation:dots 1.4s steps(4,end) infinite;}

.mh-auth{padding-bottom:80px;}

/* returning-member gate: the public site's centred page head, nothing more */
.mh-welcome{min-height:calc(100vh - 220px);margin-bottom:0;padding-bottom:84px;}
body:has(#welcomeView:not([hidden])) footer{margin-top:0;}
.mh-welcome h1{font-size:clamp(42px,5.6vw,80px);}
.mh-welcome .faq-ref{margin-top:28px;}
.mh-auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;}
@media(max-width:900px){.mh-auth-grid{grid-template-columns:1fr;gap:34px;}}
.mh-auth-card{box-shadow:none;}
.mh-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:0 0 24px;}
.mh-tab{background:none;border:0;padding:10px 14px 12px;font-family:var(--sans);font-size:17px;
  font-weight:600;color:var(--muted);cursor:pointer;position:relative;}
.mh-tab.is-on{color:var(--ink);}
.mh-tab.is-on::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent);}

.mh-form{display:grid;gap:18px;}
.mh-form label{display:grid;gap:7px;font-family:var(--sans);font-size:16px;font-weight:600;color:var(--ink);}
.mh-form input,.mh-form textarea,.mh-form select{
  font-family:var(--text);font-size:18px;color:var(--ink);background:#fff;
  border:1px solid #c9c9c5;border-radius:0;padding:13px 14px;width:100%;
  appearance:none;-webkit-appearance:none;font-weight:400;}
.mh-form textarea{resize:vertical;min-height:120px;line-height:1.5;}
.mh-form input:focus,.mh-form textarea:focus,.mh-form select:focus{
  outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent);}
.mh-form .btn,.mh-form .mh-link{justify-self:start;}
.mh-form .mh-check{display:flex;align-items:center;gap:10px;font-size:16px;color:var(--body);font-weight:500;}
.mh-form .mh-check input{width:auto;appearance:auto;-webkit-appearance:auto;}
.mh-form .mh-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
@media(max-width:600px){.mh-form .mh-row{grid-template-columns:1fr;}}

/* ---------------------------------------------------------------
   The app shell
   --------------------------------------------------------------- */
body.mh-app-on{background:var(--p-board);}
body.mh-app-on .topbar,body.mh-app-on footer,body.mh-app-on .to-top{display:none !important;}

.mh-app{display:grid;grid-template-columns:268px 1fr;min-height:100vh;font-family:var(--p-ui);}

/* --- sidebar --- */
.mh-side{
  background:var(--p-side);color:var(--p-side-text);
  display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;
}
.mh-side-head{display:flex;align-items:center;gap:10px;padding:22px 22px 18px;
  border-bottom:1px solid rgba(255,255,255,.08);}
.mh-side-mark{font-family:var(--serif);font-size:26px;line-height:1;color:#fff;}
.mh-side-name{font-size:16px;font-weight:700;letter-spacing:.01em;color:#fff;}

.mh-nav{flex:1;padding:16px 12px 10px;display:flex;flex-direction:column;gap:2px;}
.mh-nav-label{margin:18px 0 6px;padding:0 10px;font-size:11.5px;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;color:var(--p-side-dim);}
.mh-nav-label:first-child{margin-top:2px;}
.mh-nav-item{
  display:flex;align-items:center;gap:11px;width:100%;text-align:left;
  background:none;border:0;border-radius:8px;padding:9px 10px;cursor:pointer;
  font-family:inherit;font-size:15.5px;font-weight:500;color:var(--p-side-text);
  transition:background .12s,color .12s;
}
.mh-nav-item:hover{background:var(--p-side-2);color:#fff;}
.mh-nav-item.is-on{background:#fff;color:var(--p-ink);font-weight:600;}
.nav-dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto;background:var(--p-side-dim);}
.mh-nav-item.is-on .nav-dot{box-shadow:0 0 0 2px rgba(0,0,0,.06);}
.d-board{background:var(--c-pinned);}
.d-dates{background:var(--c-deadline);}
.d-sessions{background:var(--c-workshop);}
.d-resources{background:var(--c-journal);}
.d-updates{background:var(--c-updates);}
.d-quickref{background:var(--c-general);}
.d-faq{background:var(--p-side-dim);}
.d-contact{background:var(--p-side-dim);}
.d-ask{background:var(--p-side-dim);}

.mh-side-foot{padding:14px 16px 20px;border-top:1px solid rgba(255,255,255,.08);display:grid;gap:8px;}
.mh-who{margin:0 0 4px;font-size:13px;color:var(--p-side-dim);}
.mh-who strong{color:#fff;font-weight:600;}
.mh-side-btn{
  display:block;text-align:left;background:none;border:0;border-radius:7px;padding:8px 10px;
  font-family:inherit;font-size:14.5px;font-weight:500;color:var(--p-side-text);
  text-decoration:none;cursor:pointer;transition:background .12s;
}
.mh-side-btn:hover{background:var(--p-side-2);color:#fff;}

/* --- main column --- */
.mh-main{min-width:0;background:var(--p-board);
  background-image:radial-gradient(rgba(120,100,70,.10) 1px, transparent 1px);
  background-size:18px 18px;}
.mh-bar{
  position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:14px;
  padding:18px 32px;background:rgba(232,223,208,.92);backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(0,0,0,.07);
}
.mh-bar-title{margin:0;font-family:var(--p-ui);font-size:22px;font-weight:700;color:var(--p-ink);letter-spacing:-.01em;}
.mh-burger{display:none;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:8px;
  padding:7px 11px;font-size:17px;line-height:1;cursor:pointer;color:var(--p-ink);}
.mh-scrim{display:none;}

.mh-panes{padding:28px 32px 64px;}
.mh-pane-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;
  flex-wrap:wrap;margin-bottom:20px;}
.mh-pane-note{margin:0 0 20px;font-size:15.5px;color:var(--p-muted);max-width:62ch;line-height:1.55;}
.mh-pane-head .mh-pane-note{margin:0;}
.mh-pane-note a{color:var(--p-accent);font-weight:600;}

/* --- chips and search, portal flavour --- */
.mh-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.mh-filters > div{display:flex;flex-wrap:wrap;gap:8px;}
.mh-chip{font-family:var(--p-ui);font-size:14px;font-weight:600;color:var(--p-body);
  background:rgba(255,255,255,.7);border:1px solid rgba(0,0,0,.09);border-radius:999px;
  padding:7px 14px;cursor:pointer;transition:.14s;}
.mh-chip:hover{background:#fff;}
.mh-chip.is-on{background:var(--p-ink);color:#fff;border-color:var(--p-ink);}
.mh-search{font-family:var(--p-ui);font-size:14.5px;color:var(--p-ink);background:#fff;
  border:1px solid rgba(0,0,0,.12);border-radius:999px;padding:8px 16px;min-width:220px;}
.mh-search:focus{outline:2px solid var(--p-accent);outline-offset:1px;}

/* ---------------------------------------------------------------
   The board: ragged columns of pinned posters
   --------------------------------------------------------------- */
.mh-board{columns:3;column-gap:22px;}
@media(max-width:1280px){.mh-board{columns:2;}}
@media(max-width:820px){.mh-board{columns:1;}}
.mh-board-sm{columns:4;}
@media(max-width:1280px){.mh-board-sm{columns:2;}}
@media(max-width:820px){.mh-board-sm{columns:1;}}

.mh-board > *{break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;
  display:block;width:100%;margin:0 0 22px;}

/* the poster itself */
.mh-poster,.mh-board .mh-notice,.mh-board .mh-date,.mh-link-card{
  position:relative;background:var(--p-card);border:0;border-radius:10px;
  padding:26px 24px 22px;color:var(--p-body);
  box-shadow:0 1px 2px rgba(60,40,20,.10), 0 10px 22px -12px rgba(60,40,20,.34);
  transition:transform .16s ease, box-shadow .16s ease;
}
/* the pin */
.mh-board .mh-notice::before,.mh-board .mh-date::before,.mh-link-card::before{
  content:"";position:absolute;top:-7px;left:50%;transform:translateX(-50%);
  width:14px;height:14px;border-radius:50%;background:var(--c-general);
  box-shadow:0 2px 4px rgba(60,40,20,.4), inset 0 -2px 3px rgba(0,0,0,.18);
}
/* a board of perfectly square posters looks like a spreadsheet */
.mh-board > *:nth-child(4n+1){transform:rotate(-0.7deg);}
.mh-board > *:nth-child(4n+2){transform:rotate(0.5deg);}
.mh-board > *:nth-child(4n+3){transform:rotate(-0.35deg);}
.mh-board > *:nth-child(4n){transform:rotate(0.8deg);}
.mh-board > *:hover{transform:rotate(0deg) translateY(-3px);
  box-shadow:0 2px 4px rgba(60,40,20,.12), 0 20px 36px -16px rgba(60,40,20,.42);}

/* notices */
.mh-board .mh-notice .meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px;}
.mh-board .mh-notice h3{font-family:var(--p-ui);font-size:20px;font-weight:700;line-height:1.25;
  color:var(--p-ink);margin:0 0 8px;letter-spacing:-.01em;}
.mh-board .mh-notice .body{font-size:15.5px;line-height:1.6;color:var(--p-body);}
.mh-board .mh-notice .body p{margin:0 0 10px;}
.mh-board .mh-notice .body p:last-child{margin-bottom:0;}
.mh-board .mh-notice .body a{color:var(--p-accent);font-weight:600;}
.mh-board .mh-notice .date{font-size:13px;color:var(--p-muted);}
.mh-board .mh-notice .by{font-size:13px;color:var(--p-muted);margin-top:12px;}
.mh-board .mh-notice.is-expired{opacity:.62;}
.mh-board .mh-notice.is-pinned{background:#fbf7ef;}
.mh-board .mh-notice.deadline::before{background:var(--c-deadline);}
.mh-board .mh-notice.workshop::before{background:var(--c-workshop);}
.mh-board .mh-notice.journal::before{background:var(--c-journal);}
.mh-board .mh-notice.general::before{background:var(--c-general);}
.mh-board .mh-notice.deadline{border-top:4px solid var(--c-deadline);}
.mh-board .mh-notice.workshop{border-top:4px solid var(--c-workshop);}
.mh-board .mh-notice.journal{border-top:4px solid var(--c-journal);}
.mh-board .mh-notice.general{border-top:4px solid var(--c-general);}

/* pills, back in the portal because a board needs labels */
.mh-pill{display:inline-block;font-family:var(--p-ui);font-size:11px;font-weight:700;
  letter-spacing:.07em;text-transform:uppercase;padding:4px 9px;border-radius:999px;
  background:rgba(0,0,0,.06);color:var(--p-muted);border:0;}
.mh-pill.deadline{background:rgba(138,42,42,.13);color:#6f1f22;}
.mh-pill.workshop{background:rgba(63,107,79,.14);color:#2c4f38;}
.mh-pill.journal{background:rgba(59,91,122,.14);color:#2b4661;}
.mh-pill.general{background:rgba(168,118,42,.16);color:#7a5518;}
.mh-pill.new{background:var(--c-deadline);color:#fff;}
.mh-pill.start{background:var(--c-workshop);color:#fff;}

/* key dates as small posters */
.mh-board .mh-date{display:flex;flex-direction:column;gap:5px;padding-top:28px;}
.mh-board .mh-date .when{font-size:12.5px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--c-general);}
.mh-board .mh-date.is-soon .when{color:var(--c-deadline);}
.mh-board .mh-date.is-soon::before{background:var(--c-deadline);}
.mh-board .mh-date .label{font-family:var(--p-ui);font-size:19px;font-weight:700;
  line-height:1.2;color:var(--p-ink);}
.mh-board .mh-date .desc{font-size:14.5px;color:var(--p-body);margin:4px 0 0;line-height:1.5;}
.mh-board .mh-date .count{font-size:13.5px;font-weight:700;color:var(--p-accent);margin-top:8px;}
.mh-board .mh-date .acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px;}
.mh-board .mh-date .acts a{font-size:12.5px;font-weight:600;color:var(--p-muted);
  text-decoration:underline;text-underline-offset:2px;}
.mh-board .mh-date .acts a:hover{color:var(--p-accent);}
.mh-board .mh-date.is-past{opacity:.55;}

/* philosophy updates */
.mh-link-card{display:block;text-decoration:none;color:inherit;padding-top:28px;}
.mh-link-card::before{background:var(--c-updates);}
.mh-link-card .kind{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:#4e3751;background:rgba(107,76,110,.14);
  padding:4px 9px;border-radius:999px;margin-bottom:10px;}
.mh-link-card h3{font-family:var(--p-ui);font-size:19px;font-weight:700;line-height:1.25;
  color:var(--p-ink);margin:0 0 6px;letter-spacing:-.01em;}
.mh-link-card .src{font-size:13px;color:var(--p-muted);margin:0 0 10px;}
.mh-link-card .note{font-size:15px;line-height:1.55;color:var(--p-body);margin:0;}
.mh-link-card .go{display:inline-block;margin-top:14px;font-size:13.5px;font-weight:700;color:var(--p-accent);}
.mh-link-card:hover h3{color:var(--p-accent);}

/* ---------------------------------------------------------------
   The quieter panes
   --------------------------------------------------------------- */
.mh-empty{font-size:15.5px;color:var(--p-muted);padding:26px 0;}
.mh-archive-row{margin:6px 0 0;}
.mh-archive-row .mh-link{font-family:var(--p-ui);font-size:14.5px;color:var(--p-accent);}

.mh-ref{display:grid;grid-template-columns:1fr 1.2fr;gap:22px;align-items:start;}
@media(max-width:900px){.mh-ref{grid-template-columns:1fr;}}
.mh-poster h3{font-family:var(--p-ui);font-size:20px;font-weight:700;color:var(--p-ink);
  margin:0 0 14px;letter-spacing:-.01em;}
.mh-poster p{font-size:15.5px;line-height:1.6;color:var(--p-body);}

.mh-facts{display:grid;grid-template-columns:1fr;gap:0;border:0;border-top:1px solid var(--p-line);}
.mh-facts div{padding:12px 0;border-bottom:1px solid var(--p-line);border-right:0;}
.mh-facts span{display:block;font-family:var(--p-ui);font-size:12.5px;font-weight:600;
  color:var(--p-muted);margin-bottom:2px;text-transform:none;letter-spacing:0;}
.mh-facts strong{font-family:var(--p-ui);font-size:17px;font-weight:700;color:var(--p-ink);}

.mh-checklist{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--p-line);}
.mh-checklist li{border-bottom:1px solid var(--p-line);}
.mh-checklist label{display:flex;gap:12px;align-items:flex-start;padding:12px 2px;cursor:pointer;
  font-size:15px;color:var(--p-body);line-height:1.5;}
.mh-checklist input{margin-top:4px;width:17px;height:17px;accent-color:var(--p-accent);flex:0 0 auto;}
.mh-checklist input:checked + span{color:var(--p-muted);text-decoration:line-through;}

.mh-sessions{display:grid;gap:18px;}
.mh-session{display:grid;grid-template-columns:170px 1fr auto;gap:24px;align-items:start;
  background:var(--p-card);border:0;border-radius:10px;padding:24px 26px;
  box-shadow:0 1px 2px rgba(60,40,20,.10), 0 10px 22px -14px rgba(60,40,20,.3);}
@media(max-width:820px){.mh-session{grid-template-columns:1fr;gap:12px;}}
.mh-session.is-upcoming{border-left:5px solid var(--c-workshop);}
.mh-session .when{font-family:var(--p-ui);font-size:14px;font-weight:700;color:var(--p-ink);
  line-height:1.45;letter-spacing:0;text-transform:none;}
.mh-session .when small{display:block;font-weight:500;color:var(--p-muted);}
.mh-session h3{font-family:var(--p-ui);font-size:20px;font-weight:700;line-height:1.25;
  color:var(--p-ink);margin:0 0 4px;}
.mh-session .spk{font-size:14px;color:var(--p-muted);margin:0 0 8px;}
.mh-session p{font-size:15.5px;color:var(--p-body);margin:0;line-height:1.55;}
.mh-session .acts{display:flex;flex-direction:column;gap:8px;align-items:flex-end;}
@media(max-width:820px){.mh-session .acts{flex-direction:row;align-items:center;}}

.mh-group{margin-top:30px;}
.mh-group:first-child{margin-top:0;}
.mh-group-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:14px;}
.mh-group-head h3{font-family:var(--p-ui);font-size:19px;font-weight:700;color:var(--p-ink);margin:0;}
.mh-group-head .sub{font-size:13.5px;color:var(--p-muted);}
.mh-res-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
@media(max-width:1180px){.mh-res-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:700px){.mh-res-grid{grid-template-columns:1fr;}}
.mh-res{display:flex;flex-direction:column;background:var(--p-card);border:0;border-radius:10px;
  padding:20px 20px 18px;text-decoration:none;color:inherit;
  box-shadow:0 1px 2px rgba(60,40,20,.09), 0 8px 18px -12px rgba(60,40,20,.3);
  transition:transform .14s, box-shadow .14s;}
.mh-res:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(60,40,20,.12), 0 16px 28px -14px rgba(60,40,20,.4);}
.mh-res .top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;}
.mh-res .type{font-family:var(--p-ui);font-size:11px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:#2b4661;background:rgba(59,91,122,.13);padding:4px 9px;border-radius:999px;}
.mh-res h4{font-family:var(--p-ui);font-size:17px;font-weight:700;line-height:1.3;color:var(--p-ink);margin:0 0 6px;}
.mh-res p{font-size:14.5px;color:var(--p-body);margin:0 0 14px;line-height:1.5;}
.mh-res .open{margin-top:auto;font-size:13px;font-weight:700;color:var(--p-accent);}

.mh-contacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;border:0;}
.mh-contact{background:var(--p-card);border:0;border-bottom:0;border-radius:10px;padding:22px 22px;
  box-shadow:0 1px 2px rgba(60,40,20,.09), 0 8px 18px -12px rgba(60,40,20,.3);}
.mh-contact h3{font-family:var(--p-ui);font-size:19px;font-weight:700;color:var(--p-ink);margin:0 0 2px;}
.mh-contact .role{font-size:13.5px;color:var(--p-muted);margin:0 0 10px;text-transform:none;letter-spacing:0;}
.mh-contact a{font-size:15px;color:var(--p-accent);font-weight:600;}
.mh-contact .note{font-size:14.5px;color:var(--p-muted);margin:8px 0 0;}

.mh-ask{max-width:720px;}
.mh-ask .mh-form label{font-family:var(--p-ui);color:var(--p-ink);font-size:15px;}
.mh-ask .mh-form textarea{border-radius:8px;border-color:rgba(0,0,0,.14);font-family:var(--p-ui);font-size:16px;}
.mh-ask .btn{border-radius:8px;font-family:var(--p-ui);}

.mh-pane .faq{margin-top:0;border-top:0;}
.mh-pane .faq details{background:var(--p-card);border:0;border-radius:10px;margin-bottom:12px;padding:0 22px;
  box-shadow:0 1px 2px rgba(60,40,20,.09), 0 8px 18px -14px rgba(60,40,20,.3);}
.mh-pane .faq summary{font-family:var(--p-ui);font-size:17px;font-weight:700;color:var(--p-ink);padding:18px 0;}
.mh-pane .faq summary::after{color:var(--p-muted);}
.mh-pane .faq-a{font-size:15.5px;color:var(--p-body);padding:0 0 18px;line-height:1.6;}

.mh-demo-banner{margin:0;padding:11px 32px;font-family:var(--p-ui);font-size:14px;font-weight:600;
  background:#fff3cd;color:#6b4b00;border-bottom:1px solid #e9d48a;}

/* ---------------------------------------------------------------
   Mobile: the sidebar becomes a drawer
   --------------------------------------------------------------- */
@media(max-width:900px){
  .mh-app{grid-template-columns:1fr;}
  .mh-side{
    position:fixed;top:0;left:0;bottom:0;width:272px;height:100dvh;z-index:60;
    transform:translateX(-100%);transition:transform .22s ease;
  }
  .mh-side.is-open{transform:none;}
  .mh-scrim{display:block;position:fixed;inset:0;z-index:55;background:rgba(20,16,12,.45);}
  .mh-burger{display:inline-flex;}
  .mh-bar{padding:14px 18px;}
  .mh-panes{padding:20px 18px 56px;}
  .mh-demo-banner{padding:11px 18px;}
}
@media (prefers-reduced-motion: reduce){
  .mh-board > *,.mh-board > *:hover,.mh-res:hover{transform:none;transition:none;}
  .mh-side{transition:none;}
}

/* ================= ADMIN ================= */
.mh-admin-layout{display:grid;grid-template-columns:220px 1fr;gap:44px;align-items:start;padding-top:40px;}
@media(max-width:860px){.mh-admin-layout{grid-template-columns:1fr;gap:20px;}}
.mh-admin-nav{position:sticky;top:96px;display:flex;flex-direction:column;gap:2px;}
@media(max-width:860px){.mh-admin-nav{position:static;flex-direction:row;flex-wrap:wrap;gap:6px;}}
.mh-admin-nav button{text-align:left;background:none;border:0;border-left:3px solid transparent;
  padding:10px 12px;font-family:var(--sans);font-size:15px;font-weight:600;color:var(--body);
  cursor:pointer;border-radius:0;}
.mh-admin-nav button:hover{color:var(--accent);}
.mh-admin-nav button.is-on{border-left-color:var(--accent);color:var(--ink);background:var(--bg-alt);}
.mh-admin-nav button .n{display:inline;margin-left:6px;padding:0;border-radius:0;background:none;
  color:var(--muted);font-size:14px;font-variant-numeric:tabular-nums;}
.mh-admin-pane h2{font-size:clamp(30px,3.4vw,42px);margin-bottom:6px;}
.mh-admin-pane .intro{font-family:var(--sans);font-size:16px;color:var(--muted);margin:0 0 24px;max-width:70ch;}
.mh-admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px;}
.mh-table{width:100%;border-collapse:collapse;font-family:var(--sans);font-size:15px;
  background:none;border:0;border-radius:0;border-top:1px solid var(--line);}
.mh-table th,.mh-table td{text-align:left;padding:13px 14px 13px 0;border-bottom:1px solid var(--line);vertical-align:top;}
.mh-table th{font-size:15px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink);background:none;}
.mh-table td .t{font-family:var(--serif);font-size:20px;font-weight:600;color:var(--ink);}
.mh-table td .sub{display:block;color:var(--muted);font-size:14px;margin-top:3px;max-width:60ch;}
.mh-table td.acts{white-space:nowrap;text-align:right;padding-right:0;}
.mh-table .mh-link{font-size:14px;margin-left:12px;}
.mh-table .mh-link.danger{color:var(--accent);}
.mh-table-wrap{overflow-x:auto;}
.mh-editor{margin-bottom:26px;}
.mh-editor h3{font-family:var(--serif);font-size:27px;font-weight:600;color:var(--ink);margin:0 0 18px;}
.mh-editor .mh-actions{display:flex;gap:10px;align-items:center;}

.mh-status,.mh-status.approved,.mh-status.pending,.mh-status.blocked,
.mh-status.team,.mh-status.chapter_lead{
  font-family:var(--sans);font-size:15px;font-weight:600;padding:0;border-radius:0;border:0;
  background:none;color:var(--muted);letter-spacing:0;text-transform:none;}
.mh-status.blocked{color:var(--accent);}
.mh-status.team{color:var(--ink);}

.mh-q{background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:20px 0;margin-bottom:0;}
.mh-q.is-done{opacity:.6;}
.mh-q .from{font-family:var(--sans);font-size:14px;color:var(--muted);margin-bottom:6px;}
.mh-q .body{font-size:18px;color:var(--ink);margin:0 0 10px;}
.mh-q .acts{display:flex;gap:16px;align-items:center;}
.mh-q .acts a{font-family:var(--sans);font-size:14px;font-weight:600;color:var(--accent);}
.mh-inline{font-family:var(--sans);font-size:14px;color:var(--ink);background:#fff;
  border:1px solid var(--line);border-radius:0;padding:6px 8px;}
.mh-inline:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent);}
