/* Screenshot-based module components. Shared page/feature layouts stay separate. */
.mh-preview { container-type:inline-size; }
.mh-directory { padding:22px; background:#fff; color:var(--primary); font-size:12px; line-height:1.55; }
.mh-directory *, .mh-directory *::before, .mh-directory *::after { box-sizing:border-box; }
.mh-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.mh-directory-heading,.mh-directory-title,.mh-results-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.mh-directory-heading { margin-bottom:22px; }
.mh-directory-title { justify-content:flex-start; }
.mh-directory-icon { display:grid; place-items:center; width:38px; height:38px; border-radius:12px; background:#e8f8f4; color:var(--brand); flex-shrink:0; }
.mh-directory h2 { font-size:18px; line-height:1.45; font-weight:600; letter-spacing:-.3px; }
.mh-directory-title p { color:var(--secondary); font-size:12px; margin-top:2px; }
.mh-view-controls { display:flex; gap:4px; padding:4px; border:1px solid var(--neutral-200); border-radius:11px; background:var(--neutral-50); }
.mh-view-controls button { display:grid; place-items:center; width:32px; height:32px; border-radius:7px; color:var(--secondary); }
.mh-view-controls button[aria-pressed="true"] { color:var(--brand); background:#fff; box-shadow:0 2px 5px #0000000a; }
.mh-toolbar { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.85fr); gap:10px; }
.mh-toolbar label { display:flex; flex-direction:column; gap:6px; min-width:0; color:var(--secondary); font-size:11px; }
.mh-toolbar select,.mh-search-field { display:flex; align-items:center; min-width:0; width:100%; height:42px; border:1px solid var(--neutral-200); border-radius:10px; background:#fff; }
.mh-search-field { gap:8px; padding-inline:10px; }
.mh-search-field svg { flex-shrink:0; color:#8b929b; width:16px; height:16px; }
.mh-toolbar input { border:0; outline:none; min-width:0; width:100%; background:transparent; font-size:12px; color:var(--primary); padding:0; }
.mh-toolbar input::placeholder { color:var(--secondary); opacity:1; }
.mh-toolbar select { appearance:auto; padding:8px; font-size:12px; line-height:1.5; color:var(--primary); letter-spacing:normal; }
.mh-toolbar select option { color:var(--primary); background:#fff; }
.mh-search-field:focus-within,.mh-toolbar select:focus-visible { border-color:var(--brand); outline:2px solid #14b8a633; outline-offset:2px; }
.mh-directory button:focus-visible { outline:2px solid var(--brand); outline-offset:3px; }
.mh-results-bar { margin:18px 0 12px; color:var(--secondary); font-size:11px; flex-wrap:wrap; }
.mh-demo-label { color:var(--brand); padding:4px 9px; border-radius:6px; background:#eaf9f3; font-size:10px; }
.mh-record-stage { min-height:278px; max-height:388px; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#c4ded8 transparent; }
.mh-employee-table { width:100%; table-layout:fixed; border-collapse:collapse; font-size:12px; }
.mh-employee-table th,.mh-employee-table td { padding:14px 7px; text-align:start; vertical-align:middle; border:0; border-bottom:1px solid #eef0f0; overflow-wrap:anywhere; }
.mh-employee-table thead th { padding-block:10px; background:#f6f8f8; font-size:10px; color:var(--secondary); font-weight:500; }
.mh-employee-table thead th:first-child { width:39%; border-start-start-radius:10px; border-end-start-radius:10px; }
.mh-employee-table thead th:nth-child(2) { width:20%; }
.mh-employee-table thead th:nth-child(3) { width:16%; }
.mh-employee-table thead th:nth-child(4) { width:17%; }
.mh-employee-table thead th:last-child { width:8%; border-start-end-radius:10px; border-end-end-radius:10px; }
.mh-employee-table tbody tr:last-child > * { border-bottom:0; }
.mh-identity { display:flex; align-items:center; gap:10px; min-width:0; }
.mh-avatar { display:grid; place-items:center; flex-shrink:0; width:35px; height:35px; border-radius:50%; color:var(--brand); background:#ddf3ed; font-size:12px; font-weight:600; }
.mh-avatar[data-tone="amber"] { background:var(--accent-warm-soft); color:var(--accent-warm-ink); }
.mh-avatar[data-tone="slate"] { background:#edf0f4; color:#536477; }
.mh-identity-copy { display:block; min-width:0; font-weight:400; }
.mh-identity-copy strong { display:block; font-size:12px; font-weight:600; }
.mh-employee-id { display:block; font-size:10px; color:var(--secondary); }
.mh-email { display:block; overflow-wrap:anywhere; color:var(--secondary); font-size:10px; font-weight:400; }
.mh-cell-label { display:none; }
.mh-availability { display:inline-flex; align-items:center; gap:5px; max-width:100%; padding:3px 7px; border-radius:6px; color:var(--brand); background:#e8f8f2; font-size:10px; }
.mh-availability[data-available="true"]::before { content:""; width:4px; height:4px; border-radius:50%; background:var(--brand-bright); flex-shrink:0; }
.mh-availability[data-available="false"] { color:var(--secondary); background:#f4f4f5; }
.mh-profile-button { display:flex; align-items:center; justify-content:center; gap:5px; color:var(--brand); padding:7px; border-radius:8px; background:#eef9f5; min-height:32px; margin-inline-start:auto; }
.mh-profile-button > span:not(.mh-sr-only) { display:none; }
.mh-profile-button svg { width:14px; height:14px; }
html[dir="rtl"] .mh-profile-button svg,html[dir="rtl"] .mh-back svg { transform:scaleX(-1); }
.mh-empty { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; padding:36px 16px; text-align:center; }
.mh-empty > svg { color:var(--brand); width:28px; height:28px; }
.mh-empty p { color:var(--secondary); }
.mh-empty button { padding:8px 12px; color:var(--brand); background:#eaf9f3; border:1px solid #c4e8df; border-radius:9px; }
.mh-back { display:flex; align-items:center; gap:8px; color:var(--brand); padding:8px 0; margin-bottom:16px; font-size:12px; }
.mh-profile { padding:8px 4px; }
.mh-profile-heading { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.mh-profile-heading .mh-avatar { width:46px; height:46px; font-size:15px; }
.mh-profile-heading h3 { font-size:18px; line-height:1.4; font-weight:600; letter-spacing:normal; }
.mh-profile h3:focus { outline:none; }
.mh-profile dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 20px; padding:16px; border:1px solid var(--neutral-200); border-radius:12px; background:#fcfdfd; }
.mh-profile dt { color:var(--secondary); font-size:10px; margin-bottom:3px; }
.mh-profile dd { font-size:12px; font-weight:500; overflow-wrap:anywhere; }
/* Card view uses the same records and native table headings, not a second dataset. */
.mh-preview[data-view="cards"] .mh-employee-table,.mh-preview[data-view="cards"] .mh-employee-table tbody { display:block; }
.mh-preview[data-view="cards"] .mh-employee-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.mh-preview[data-view="cards"] .mh-employee-table tbody { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.mh-preview[data-view="cards"] .mh-employee-table tbody tr { position:relative; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:18px 14px 12px; border:1px solid var(--neutral-200); border-radius:14px; }
.mh-preview[data-view="cards"] .mh-employee-table tbody th,.mh-preview[data-view="cards"] .mh-employee-table tbody td { display:block; padding:0; border:0; }
.mh-preview[data-view="cards"] .mh-employee-table tbody th { grid-column:1/-1; padding-top:24px; }
.mh-preview[data-view="cards"] .mh-employee-id { position:absolute; inset-block-start:17px; inset-inline-start:14px; }
.mh-preview[data-view="cards"] .mh-cell-label { display:block; font-size:10px; color:var(--secondary); margin-bottom:3px; }
.mh-preview[data-view="cards"] td.mh-availability-cell { position:absolute; inset-block-start:14px; inset-inline-end:12px; }
.mh-preview[data-view="cards"] .mh-availability-cell .mh-cell-label { display:none; }
.mh-preview[data-view="cards"] td.mh-profile-action { grid-column:1/-1; }
.mh-preview[data-view="cards"] .mh-profile-button { width:100%; min-height:34px; font-size:11px; }
.mh-preview[data-view="cards"] .mh-profile-button > span:not(.mh-sr-only) { display:inline; }
@container (max-width:560px) {
 .mh-directory { padding:18px 14px; }
 .mh-directory h2 { font-size:17px; }
 .mh-directory-title p { font-size:11px; }
 .mh-view-controls { display:none; }
 .mh-toolbar { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .mh-search { grid-column:1/-1; }
 .mh-record-stage { max-height:440px; min-height:300px; }
 .mh-employee-table,.mh-employee-table tbody { display:block; }
 .mh-employee-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .mh-preview .mh-employee-table tbody { display:grid; grid-template-columns:1fr; gap:12px; }
 .mh-preview .mh-employee-table tbody tr { position:relative; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:18px 14px 12px; border:1px solid var(--neutral-200); border-radius:14px; }
 .mh-preview .mh-employee-table tbody th,.mh-preview .mh-employee-table tbody td { display:block; padding:0; border:0; }
 .mh-preview .mh-employee-table tbody th { grid-column:1/-1; padding-top:24px; }
 .mh-preview .mh-employee-id { position:absolute; inset-block-start:17px; inset-inline-start:14px; }
 .mh-preview .mh-cell-label { display:block; font-size:10px; color:var(--secondary); margin-bottom:3px; }
 .mh-preview td.mh-availability-cell { position:absolute; inset-block-start:14px; inset-inline-end:12px; }
 .mh-preview .mh-availability-cell .mh-cell-label { display:none; }
 .mh-preview td.mh-profile-action { grid-column:1/-1; }
 .mh-preview .mh-profile-button { width:100%; min-height:34px; font-size:11px; }
 .mh-preview .mh-profile-button > span:not(.mh-sr-only) { display:inline; }
 .mh-identity-copy strong { font-size:14px; }
 .mh-email { font-size:11px; }
 .mh-avatar { width:42px; height:42px; font-size:14px; }
 .mh-profile dl { gap:12px; padding:12px; }
}
.mh-directory [hidden] { display:none !important; }

/* Project overview follows the supplied project card, people and delivery fields. */
.mh-project-register { display:flex; padding:4px; gap:3px; border:1px solid var(--neutral-200); border-radius:11px; background:#f6f8f8; flex-shrink:0; }
.mh-project-register button { display:flex; justify-content:center; align-items:center; padding:7px 10px; border-radius:7px; color:var(--secondary); font-size:11px; line-height:1.5; }
.mh-project-register button[aria-pressed="true"] { color:var(--brand); background:#fff; box-shadow:0 2px 5px #0000000a; }
.mh-project-toolbar { grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); }
.mh-project-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:14px; }
.mh-project-choices button { display:flex; align-items:center; gap:8px; min-width:0; padding:10px 12px; text-align:start; border:1px solid var(--neutral-200); border-radius:10px; color:var(--secondary); background:#fcfdfd; font-size:11px; }
.mh-project-choices button > bdi { font-size:9px; flex-shrink:0; }
.mh-project-choices button > span { overflow-wrap:anywhere; font-weight:600; }
.mh-project-choices button[aria-pressed="true"] { border-color:#a9ded1; background:#eaf9f3; color:var(--brand); }
.mh-project-stage { min-height:325px; max-height:430px; overflow:auto; scrollbar-width:thin; scrollbar-color:#c4ded8 transparent; }
.mh-project-panel { padding:18px; border:1px solid var(--neutral-200); border-radius:16px; background:#fff; }
.mh-project-card-top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:9px; color:var(--secondary); font-size:10px; }
.mh-project-phase { display:inline-flex; padding:3px 8px; border-radius:6px; color:var(--brand); background:#e8f8f2; font-size:10px; line-height:1.5; white-space:nowrap; }
.mh-project-phase[data-archived="true"] { color:var(--secondary); background:#f1f3f4; }
.mh-project-panel h3 { font-size:20px; font-weight:600; line-height:1.4; letter-spacing:-.3px; overflow-wrap:anywhere; }
.mh-project-description { font-size:12px; line-height:1.7; color:var(--secondary); margin-top:7px; }
.mh-project-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 20px; padding:16px 0; border-bottom:1px solid #edf0ef; }
.mh-project-facts dt,.mh-project-field-label { display:block; color:var(--secondary); font-size:10px; font-weight:400; margin-bottom:4px; }
.mh-project-facts dd { font-size:12px; line-height:1.5; font-weight:500; margin:0; overflow-wrap:anywhere; }
.mh-project-people { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:15px 0; }
.mh-project-person { display:flex; align-items:center; gap:7px; min-width:0; font-size:11px; line-height:1.5; }
.mh-project-person > span:last-child { overflow-wrap:anywhere; }
.mh-project-person .mh-avatar { width:25px; height:25px; font-size:9px; }
.mh-project-members summary { display:block; cursor:pointer; }
.mh-project-members summary::marker,.mh-project-members summary::-webkit-details-marker { display:none; content:""; }
.mh-project-members summary:focus-visible { outline:2px solid var(--brand); outline-offset:4px; border-radius:4px; }
.mh-project-team-summary { display:flex; align-items:center; gap:6px; color:var(--brand); font-size:10px; }
.mh-project-team-summary > svg { width:12px; height:12px; flex-shrink:0; }
.mh-project-avatar-stack { display:flex; }
.mh-project-avatar-stack .mh-avatar { width:23px; height:23px; border:2px solid white; font-size:8px; }
.mh-project-avatar-stack .mh-avatar + .mh-avatar { margin-inline-start:-8px; }
.mh-project-members ul { padding-top:10px; display:grid; gap:8px; }
.mh-project-dates { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-top:14px; border-top:1px solid #edf0ef; font-size:11px; }
.mh-project-dates .mh-project-field-label { margin-bottom:2px; }
.mh-project-dates button { display:flex; align-items:center; gap:8px; padding:8px 11px; border:1px solid #c4e8df; border-radius:9px; color:var(--brand); background:#eaf9f3; font-size:11px; }
.mh-project-dates button > bdi { padding:1px 5px; border-radius:4px; background:#d8f0e9; }
.mh-project-dates button svg { width:13px; height:13px; }
html[dir="rtl"] .mh-project-dates button svg,html[dir="rtl"] .mh-project-team-summary > svg { transform:scaleX(-1); }
.mh-project-members[open] .mh-project-team-summary > svg { transform:rotate(90deg); }
.mh-project-task-heading { display:flex; justify-content:space-between; align-items:start; gap:12px; margin-bottom:16px; }
.mh-project-task-heading h3 { font-size:17px; }
.mh-project-task-heading p { font-size:12px; color:var(--secondary); margin-top:4px; }
.mh-project-task-heading h3:focus { outline:none; }
.mh-project-task-list { display:grid; gap:12px; }
.mh-project-task-list li { display:flex; justify-content:space-between; gap:14px; padding:13px 0; border-top:1px solid #edf0ef; }
.mh-project-task-list strong { display:block; font-size:12px; font-weight:600; line-height:1.5; }
.mh-project-task-list li > div:first-child > span,.mh-project-task-id { display:block; color:var(--secondary); font-size:10px; margin-top:4px; }
.mh-project-task-id { margin-top:0; margin-bottom:3px; }
.mh-project-task-meta { display:flex; flex-direction:column; align-items:end; gap:7px; flex-shrink:0; font-size:10px; color:var(--secondary); }
.mh-project-task-status { color:var(--brand); background:#eaf9f3; padding:3px 7px; border-radius:6px; }
.mh-project-task-status[data-state="in-progress"] { color:var(--accent-warm-ink); background:var(--accent-warm-soft); }
.mh-project-task-status[data-state="not-started"] { color:#536477; background:#edf0f4; }
@container (max-width:560px) {
 .mh-project-heading { flex-wrap:wrap; }
 .mh-project-register { width:100%; }
 .mh-project-register button { flex:1; }
 .mh-project-toolbar { grid-template-columns:1fr; }
 .mh-project-toolbar .mh-search { grid-column:auto; }
 .mh-project-choices button { flex-direction:column; align-items:start; gap:3px; padding:9px; }
 .mh-project-stage { max-height:500px; min-height:350px; }
 .mh-project-panel { padding:15px; }
 .mh-project-panel h3 { font-size:18px; }
 .mh-project-facts { gap:12px; }
 .mh-project-people { grid-template-columns:1fr; gap:14px; }
 .mh-project-people > div,.mh-project-members summary { display:flex; align-items:center; justify-content:space-between; gap:12px; }
 .mh-project-people .mh-project-field-label { margin-bottom:0; }
 .mh-project-person { font-size:12px; }
 .mh-project-members ul { padding-inline-start:10px; }
 .mh-project-dates { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
 .mh-project-dates button { grid-column:1/-1; justify-content:center; }
 .mh-project-task-list li { flex-direction:column; gap:9px; }
 .mh-project-task-meta { flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:space-between; }
}

/* Tasks use one set of cards in both the workflow board and mobile list. */
.mh-task-views { display:flex; gap:3px; padding:3px; background:#f6f8f8; border:1px solid var(--neutral-200); border-radius:10px; }
.mh-task-views button { display:flex; gap:6px; align-items:center; padding:6px 10px; border-radius:7px; color:var(--secondary); font-size:11px; }
.mh-task-views button[aria-pressed="true"] { background:#fff; color:var(--brand); box-shadow:0 2px 5px #0000000a; }
.mh-task-views svg { width:14px; height:14px; }
.mh-task-stage { min-height:355px; }
.mh-task-scroll-hint { font-size:10px; color:var(--secondary); margin-bottom:10px; }
.mh-task-board { display:grid; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:minmax(190px,1fr); gap:10px; overflow:auto; max-height:420px; padding:2px 2px 12px; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#bddbd4 #f6f8f8; }
.mh-task-column { min-width:0; padding:10px; border-radius:12px; background:#f5f7f7; }
.mh-task-column h3 { display:flex; align-items:center; justify-content:space-between; gap:6px; font-size:11px; font-weight:600; letter-spacing:normal; margin-bottom:12px; line-height:1.5; }
.mh-task-column h3 bdi { display:grid; place-items:center; min-width:22px; height:22px; padding:0 4px; border:1px solid #dce5e2; background:#fff; border-radius:7px; color:var(--secondary); font-size:10px; }
.mh-task-column ul { display:grid; gap:10px; list-style:none; padding:0; margin:0; }
.mh-task-column > p { font-size:11px; color:var(--secondary); padding:14px 0; }
.mh-task-card { display:flex; flex-direction:column; align-items:stretch; text-align:start; width:100%; min-width:0; padding:13px 11px; border:1px solid #e2e8e6; border-radius:10px; background:#fff; color:var(--primary); line-height:1.55; transition:border-color .15s,box-shadow .15s; }
.mh-task-card:hover { border-color:#8ccfc1; box-shadow:0 3px 10px #0f827b0d; }
.mh-task-card > strong { font-size:13px; font-weight:600; margin:10px 0 6px; line-height:1.45; }
.mh-task-card-top,.mh-task-card-bottom,.mh-task-detail-top { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; }
.mh-task-card-top > bdi,.mh-task-detail-top > bdi { font-size:10px; color:var(--brand); }
.mh-task-priority { font-size:10px; color:var(--secondary); padding:2px 6px; border-radius:5px; background:#f4f4f5; }
.mh-task-priority[data-priority="high"] { color:var(--accent-warm-ink); background:var(--accent-warm-soft); }
.mh-task-description { font-size:11px; color:var(--secondary); }
.mh-task-context { align-self:flex-start; font-size:10px; color:var(--brand); background:#ebf8f4; border-radius:4px; padding:2px 6px; margin:12px 0; }
.mh-task-person { display:flex; align-items:center; gap:7px; font-size:11px; }
.mh-task-person .mh-avatar { width:26px; height:26px; font-size:9px; }
.mh-task-card-bottom { font-size:10px; color:var(--secondary); border-top:1px solid #f0f2f1; padding-top:10px; margin-top:12px; }
.mh-task-status { display:inline-flex; border-radius:5px; padding:3px 7px; font-size:10px; background:#edf0f4; color:#536477; }
.mh-task-status[data-state="in-progress"] { background:var(--accent-warm-soft); color:var(--accent-warm-ink); }
.mh-task-status[data-state="on-hold"] { background:#f0f4f5; color:#526b75; }
.mh-task-status[data-state="submitted"],.mh-task-status[data-state="completed"] { background:#e2f6ee; color:var(--brand); }
[data-task-view="board"] .mh-task-card-bottom > .mh-task-status { display:none; }
[data-task-view="list"] .mh-task-board { grid-template-columns:1fr; grid-auto-flow:row; grid-auto-columns:auto; max-height:420px; }
[data-task-view="list"] .mh-task-scroll-hint { display:none; }
[data-task-view="list"] .mh-task-column ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
[data-task-view="list"] .mh-task-column:has(li:not([hidden])) > p { display:none; }
.mh-task-detail { padding:2px 2px 12px; }
.mh-task-detail h3 { font-size:20px; line-height:1.4; letter-spacing:normal; margin:12px 0; font-weight:600; }
.mh-task-detail h3:focus { outline:none; }
.mh-task-detail > p { font-size:12px; color:var(--secondary); line-height:1.65; margin-bottom:20px; }
.mh-task-detail dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 16px; padding:18px; background:#f8faf9; border:1px solid #e5ebe8; border-radius:12px; }
.mh-task-detail dt { font-size:10px; color:var(--secondary); margin-bottom:7px; }
.mh-task-detail dd { font-size:12px; }
.mh-task-disclosure { color:var(--secondary); font-size:10px; margin-top:16px; }
@container (max-width:560px) {
 [data-task-view="list"] .mh-task-column ul { grid-template-columns:1fr; }
 .mh-task-card { padding:14px; }
 .mh-task-card > strong { font-size:14px; }
 .mh-task-detail dl { padding:14px; gap:18px 12px; }
 .mh-task-person { flex-wrap:wrap; }
 .mh-task-detail h3 { font-size:18px; }
 .mh-task-views button { min-height:34px; }
}
@media (prefers-reduced-motion:reduce) { .mh-task-card { transition:none; } }

/* CRM keeps commercial leads, client contacts and sales groups distinct. */
.mh-crm-sections { display:flex; gap:6px; padding:4px; margin-bottom:20px; border:1px solid var(--neutral-200); border-radius:12px; background:#f6f8f8; overflow:auto; }
.mh-crm-sections button { flex:1 0 auto; padding:9px 12px; border-radius:8px; color:var(--secondary); font-size:12px; white-space:nowrap; }
.mh-crm-sections button[aria-pressed="true"] { background:#fff; color:var(--brand); box-shadow:0 2px 6px #0000000a; font-weight:600; }
.mh-crm-toolbar { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); }
.mh-crm-single-search { grid-template-columns:1fr; }
.mh-crm-outcomes { display:flex; gap:8px; margin-top:16px; }
.mh-crm-outcomes button { display:flex; align-items:center; justify-content:space-between; gap:8px; flex:1; min-width:0; padding:8px 10px; font-size:11px; border:1px solid #e1e8e5; border-radius:8px; color:var(--secondary); background:#fff; }
.mh-crm-outcomes button bdi { min-width:20px; text-align:center; padding:1px 4px; border-radius:5px; background:#f1f4f3; font-size:10px; }
.mh-crm-outcomes button[aria-pressed="true"] { color:var(--brand); border-color:#8ecfc3; background:#eaf8f3; }
.mh-crm-outcomes button[data-mh-crm-outcome="rejected"][aria-pressed="true"] { color:#a33a3a; border-color:#ecc7c7; background:#fff5f5; }
.mh-crm-record-stage { min-height:315px; max-height:410px; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#bddbd4 transparent; padding:3px; }
.mh-crm-lead-list,.mh-crm-client-list,.mh-crm-team-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; list-style:none; padding:0; margin:0; }
.mh-crm-lead-list > li,.mh-crm-client-list > li,.mh-crm-team-list > li { min-width:0; }
.mh-crm-lead-card,.mh-crm-client-card,.mh-crm-team-card { display:flex; flex-direction:column; align-items:stretch; width:100%; height:100%; min-width:0; padding:16px; border:1px solid #e0e7e4; border-radius:13px; background:#fff; text-align:start; color:var(--primary); line-height:1.55; }
.mh-crm-lead-card:hover { border-color:#8ecfc3; background:#fcfefd; }
.mh-crm-card-top { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; font-size:10px; color:var(--secondary); }
.mh-crm-card-top > bdi,.mh-crm-team-card > bdi { color:var(--brand); font-size:10px; }
.mh-crm-stage-label { color:#536477; background:#edf0f4; padding:3px 7px; border-radius:5px; }
.mh-crm-lead-card > strong,.mh-crm-client-card h3,.mh-crm-team-card h3 { font-size:15px; font-weight:600; letter-spacing:normal; line-height:1.45; margin:12px 0; }
.mh-crm-money { display:inline-flex; flex-wrap:wrap; align-items:baseline; gap:4px; color:var(--primary); font-size:14px; font-weight:600; }
.mh-crm-lead-card > .mh-crm-money { align-self:flex-start; background:#edf7f4; padding:5px 9px; border-radius:7px; margin-bottom:12px; }
.mh-crm-client-name { font-size:12px; color:var(--secondary); }
.mh-crm-card-people { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:18px 0; }
.mh-crm-card-people > span > span:first-child,.mh-crm-team-creator > span:first-child { display:block; font-size:10px; color:var(--secondary); margin-bottom:6px; }
.mh-crm-person { display:flex; align-items:center; gap:6px; font-size:11px; }
.mh-crm-person .mh-avatar { width:26px; height:26px; font-size:9px; }
.mh-crm-card-footer { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; border-top:1px solid #edf0ef; padding-top:12px; margin-top:auto; }
.mh-crm-outcome { display:inline-flex; padding:3px 7px; border-radius:5px; background:#edf6f4; color:var(--brand); font-size:10px; }
.mh-crm-outcome[data-outcome="awarded"] { background:#e0f5e9; color:#21724a; }
.mh-crm-outcome[data-outcome="rejected"] { background:#fff0f0; color:#a33a3a; }
.mh-crm-open-label { display:flex; align-items:center; gap:4px; font-size:11px; color:var(--brand); }
.mh-crm-open-label svg { width:13px; height:13px; }
.mh-crm-selected-value { display:flex; flex-wrap:wrap; align-items:baseline; gap:7px; font-size:10px; }
.mh-crm-selected-value .mh-crm-money { font-size:12px; }
.mh-crm-client-card > p,.mh-crm-team-card > p { font-size:12px; color:var(--secondary); }
.mh-crm-email { font-size:11px; color:var(--secondary); overflow-wrap:anywhere; margin:8px 0; }
.mh-crm-client-footer { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:11px; margin:14px 0; }
.mh-crm-client-footer > bdi { color:var(--brand); }
.mh-crm-client-card > button { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:9px 12px; color:var(--brand); background:#edf8f4; border:1px solid #d4ebe2; border-radius:8px; margin-top:auto; font-size:11px; }
.mh-crm-team-creator { margin:18px 0; }
.mh-crm-team-card details { border-top:1px solid #edf0ef; padding-top:12px; margin-top:auto; }
.mh-crm-team-card summary { display:flex; align-items:center; justify-content:space-between; gap:8px; color:var(--brand); font-size:12px; cursor:pointer; list-style:none; padding:5px 0; }
.mh-crm-team-card summary::-webkit-details-marker { display:none; }
.mh-crm-team-card details ul { list-style:none; display:grid; gap:12px; padding:14px 0 0; margin:0; }
.mh-crm-team-card details[open] summary svg { rotate:90deg; }
.mh-crm-team-card summary:focus-visible { outline:2px solid var(--brand); outline-offset:3px; border-radius:4px; }
.mh-crm-detail { min-height:390px; max-height:480px; overflow:auto; padding:3px; overscroll-behavior:contain; scrollbar-width:thin; }
.mh-crm-detail h3 { font-size:20px; font-weight:600; line-height:1.45; letter-spacing:normal; margin:12px 0; }
.mh-crm-detail h3:focus { outline:none; }
.mh-crm-detail > .mh-crm-money { padding:7px 12px; border-radius:8px; background:#edf7f4; margin-bottom:18px; font-size:17px; }
.mh-crm-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:16px; background:#f8faf9; border:1px solid #e4ebe7; border-radius:12px; }
.mh-crm-facts dt { color:var(--secondary); font-size:10px; margin-bottom:6px; }
.mh-crm-facts dd { font-size:12px; overflow-wrap:anywhere; }
.mh-crm-update { padding:16px; margin-top:14px; background:#fff8e9; border-radius:12px; }
.mh-crm-update > span,.mh-crm-update time { font-size:10px; color:var(--secondary); }
.mh-crm-update p { font-size:12px; margin:6px 0; line-height:1.65; }
.mh-crm-related { margin-top:18px; }
.mh-crm-related h4 { font-size:12px; font-weight:600; letter-spacing:normal; margin-bottom:10px; }
.mh-crm-related ul { padding:0; list-style:none; margin:0; display:grid; gap:10px; }
.mh-crm-related li { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:11px; padding:10px; border:1px solid #edf0ef; border-radius:8px; }
.mh-crm-disclosure { font-size:10px; color:var(--secondary); margin-top:16px; }
html[dir="rtl"] .mh-crm-open-label svg,html[dir="rtl"] .mh-crm-client-card > button svg,html[dir="rtl"] .mh-crm-team-card summary svg { transform:scaleX(-1); }
@container (max-width:560px) {
 .mh-crm-lead-list,.mh-crm-client-list,.mh-crm-team-list { grid-template-columns:1fr; }
 .mh-crm-toolbar { grid-template-columns:1fr; }
 .mh-crm-sections button { font-size:11px; padding:9px 10px; }
 .mh-crm-outcomes { gap:5px; }
 .mh-crm-outcomes button { padding:8px 6px; gap:4px; font-size:10px; }
 .mh-crm-record-stage { min-height:330px; max-height:430px; }
 .mh-crm-detail h3 { font-size:18px; }
 .mh-crm-facts { padding:12px; gap:16px 12px; }
 .mh-crm-person { flex-wrap:wrap; }
}

.mh-crm-sections button,.mh-crm-outcomes button { transition:background-color .15s,color .15s,border-color .15s; }
@media (prefers-reduced-motion:reduce) { .mh-crm-workspace button { transition:none; } }

/* Vendor identity cards and a separate agreement register, adapted from mobile captures. */
.mh-vendor-registers { display:flex; gap:6px; padding:4px; margin-bottom:20px; background:#f6f8f8; border:1px solid var(--neutral-200); border-radius:12px; }
.mh-vendor-registers button { flex:1; padding:9px 12px; border-radius:8px; color:var(--secondary); font-size:12px; transition:background-color .15s,color .15s; }
.mh-vendor-registers button[aria-pressed="true"] { color:var(--brand); background:#fff; box-shadow:0 2px 6px #0000000a; font-weight:600; }
.mh-vendor-search-only { grid-template-columns:1fr; }
.mh-contract-toolbar { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); }
.mh-vendor-record-stage { min-height:350px; max-height:420px; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#bddbd4 transparent; padding:3px; }
.mh-vendor-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; padding:0; list-style:none; }
.mh-vendor-list > li { min-width:0; }
.mh-vendor-card { display:flex; flex-direction:column; height:100%; padding:16px; border:1px solid #e0e7e4; border-radius:13px; background:#fff; }
.mh-vendor-card-top { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; color:var(--secondary); font-size:10px; }
.mh-vendor-card-top > bdi,.mh-contract-id { color:var(--brand); font-size:10px; }
.mh-vendor-creator { display:flex; flex-direction:column; gap:2px; text-align:end; }
.mh-vendor-creator > span:last-child { color:var(--primary); }
.mh-vendor-identity { display:flex; align-items:center; gap:10px; margin:16px 0; }
.mh-vendor-identity > .mh-avatar { width:42px; height:42px; border-radius:12px; font-size:13px; }
.mh-vendor-identity h3 { font-size:15px; line-height:1.45; font-weight:600; letter-spacing:normal; }
.mh-vendor-contact { display:grid; gap:9px; margin-bottom:18px; }
.mh-vendor-contact > div { display:grid; grid-template-columns:48px minmax(0,1fr); gap:8px; }
.mh-vendor-contact dt { font-size:10px; color:var(--secondary); }
.mh-vendor-contact dd { min-width:0; font-size:11px; overflow-wrap:anywhere; }
.mh-vendor-card > button { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:9px 12px; border:1px solid #d4ebe2; border-radius:8px; background:#edf8f4; color:var(--brand); font-size:11px; margin-top:auto; }
.mh-vendor-card > button > span:last-child { display:flex; align-items:center; gap:9px; }
.mh-vendor-card > button bdi { display:grid; place-items:center; min-width:21px; height:21px; border-radius:5px; background:#fff; font-size:10px; }
.mh-vendor-card > button svg { width:15px; height:15px; }
.mh-contract-list { list-style:none; display:grid; gap:12px; padding:0; margin:0; }
.mh-contract-row { display:flex; flex-direction:column; text-align:start; width:100%; padding:14px 16px; border:1px solid #e0e7e4; border-radius:12px; color:var(--primary); background:#fff; line-height:1.55; }
.mh-contract-row:hover { border-color:#8ecfc3; background:#fcfefd; }
.mh-contract-record-top { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; font-size:10px; color:var(--secondary); }
.mh-contract-record-top > bdi { color:var(--brand); }
.mh-contract-record-top > span { display:flex; gap:5px; flex-wrap:wrap; }
.mh-contract-row > strong { font-size:14px; font-weight:600; margin:9px 0; line-height:1.45; }
.mh-contract-row-bottom { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.mh-contract-vendor-name { font-size:11px; color:var(--secondary); flex:1; }
.mh-vendor-money { display:inline-flex; align-items:baseline; flex-wrap:wrap; gap:4px; font-size:13px; font-weight:600; color:var(--primary); }
.mh-contract-row .mh-vendor-money { padding:3px 7px; border-radius:6px; background:#fff5df; }
.mh-contract-row-bottom > svg { width:15px; height:15px; color:var(--brand); }
.mh-contract-detail { min-height:400px; max-height:510px; overflow:auto; padding:3px; overscroll-behavior:contain; scrollbar-width:thin; }
.mh-contract-detail h3 { font-size:20px; line-height:1.4; font-weight:600; letter-spacing:normal; margin:10px 0; }
.mh-contract-detail h3:focus { outline:none; }
.mh-contract-detail > p { font-size:12px; line-height:1.65; color:var(--secondary); margin-bottom:20px; }
.mh-contract-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; padding:18px; border:1px solid #e4ebe7; border-radius:12px; background:#f8faf9; }
.mh-contract-facts dt { color:var(--secondary); font-size:10px; margin-bottom:6px; }
.mh-contract-facts dd { font-size:12px; overflow-wrap:anywhere; }
.mh-vendor-disclosure { color:var(--secondary); font-size:10px; margin-top:16px; }
html[dir="rtl"] .mh-vendor-card > button svg,html[dir="rtl"] .mh-contract-row-bottom > svg { transform:scaleX(-1); }
@container (max-width:560px) {
 .mh-vendor-list { grid-template-columns:1fr; }
 .mh-contract-toolbar { grid-template-columns:1fr; }
 .mh-vendor-record-stage { min-height:350px; max-height:430px; }
 .mh-contract-record-top { align-items:flex-start; }
 .mh-contract-record-top > span { flex-direction:column; text-align:end; gap:2px; }
 .mh-contract-row { padding:14px; }
 .mh-contract-row-bottom { gap:8px; }
 .mh-contract-vendor-name { flex-basis:100%; }
 .mh-contract-row-bottom > svg { margin-inline-start:auto; }
 .mh-contract-detail h3 { font-size:18px; }
 .mh-contract-facts { gap:16px 12px; padding:14px; }
}
@media (prefers-reduced-motion:reduce) { .mh-vendor-workspace button { transition:none; } }
/* The search wrapper supplies the visible focus ring without a second ring on the input. */
.mh-vendor-workspace .mh-search-field input:focus-visible { outline:none; }

/* Drive uses the captured register fields and a navigable, page-owned folder tree. */
.mh-drive-sections { display:flex; gap:6px; padding:4px; margin-bottom:20px; background:#f6f8f8; border:1px solid var(--neutral-200); border-radius:12px; }
.mh-drive-sections button { flex:1; padding:9px 10px; border-radius:8px; color:var(--secondary); font-size:12px; transition:background-color .15s,color .15s; }
.mh-drive-sections button[aria-pressed="true"] { background:#fff; color:var(--brand); box-shadow:0 2px 6px #0000000a; font-weight:600; }
.mh-drive-toolbar { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); }
.mh-drive-workspace .mh-search-field input:focus-visible { outline:none; }
.mh-drive-breadcrumb { margin-top:18px; }
.mh-drive-breadcrumb ol { display:flex; align-items:center; gap:7px; flex-wrap:wrap; padding:0; margin:0; list-style:none; font-size:10px; color:var(--secondary); }
.mh-drive-breadcrumb li { display:flex; align-items:center; gap:7px; }
.mh-drive-breadcrumb li + li::before { content:"/"; color:#929d98; }
.mh-drive-breadcrumb button { color:var(--brand); padding:3px 0; text-align:start; font-size:10px; }
.mh-drive-location-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:12px; }
.mh-drive-location-heading h3 { font-size:15px; font-weight:600; line-height:1.5; letter-spacing:normal; }
.mh-drive-location-heading h3:focus,.mh-drive-detail h3:focus { outline:none; }
.mh-drive-location-heading .mh-back { margin:0; font-size:10px; gap:5px; }
.mh-drive-location-heading .mh-back svg { width:14px; height:14px; }
.mh-drive-stage { min-height:280px; max-height:365px; overflow:auto; padding:3px; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#bddbd4 transparent; }
.mh-drive-table { border-collapse:collapse; table-layout:fixed; width:100%; font-size:11px; }
.mh-drive-table th,.mh-drive-table td { border:0; padding:14px 7px; text-align:start; vertical-align:middle; border-bottom:1px solid #edf0ee; }
.mh-drive-table thead th { font-size:10px; font-weight:500; background:#f6f8f8; padding-block:10px; color:var(--secondary); }
.mh-drive-table thead th:first-child { width:47%; border-radius:8px 0 0 8px; }
.mh-drive-table thead th:nth-child(2) { width:17%; }
.mh-drive-table thead th:nth-child(3) { width:14%; }
.mh-drive-table thead th:last-child { width:22%; border-radius:0 8px 8px 0; }
.mh-drive-table tbody tr:last-child > * { border-bottom:0; }
.mh-drive-identity { display:flex; align-items:center; gap:10px; }
.mh-drive-identity > div { min-width:0; }
.mh-drive-type-icon { display:grid; place-items:center; width:30px; height:34px; border-radius:8px; background:#eaf7f3; color:var(--brand); flex-shrink:0; }
.mh-drive-type-icon[data-kind="folder"] { background:#fff5df; color:#966300; }
.mh-drive-record-button { display:flex; gap:5px; align-items:center; text-align:start; color:var(--primary); font-weight:600; font-size:12px; line-height:1.45; overflow-wrap:anywhere; }
.mh-drive-record-button:hover { color:var(--brand); }
.mh-drive-record-button > svg { width:12px; height:12px; color:var(--brand); flex-shrink:0; }
.mh-drive-row-creator { display:block; font-size:10px; font-weight:400; color:var(--secondary); margin-top:4px; }
.mh-drive-avatar-stack { display:flex; align-items:center; padding-inline-start:0; }
.mh-drive-avatar-stack .mh-avatar { width:24px; height:24px; font-size:8px; border:2px solid #fff; }
.mh-drive-avatar-stack .mh-avatar + .mh-avatar { margin-inline-start:-7px; }
.mh-drive-avatar-stack > bdi { color:var(--secondary); font-size:10px; margin-inline-start:4px; }
.mh-drive-cell-label { display:none; }
.mh-drive-size { display:inline-flex; align-items:baseline; gap:3px; flex-wrap:wrap; }
.mh-drive-detail { min-height:395px; max-height:515px; overflow:auto; padding:3px; overscroll-behavior:contain; scrollbar-width:thin; }
.mh-drive-info-label { color:var(--brand); font-size:11px; }
.mh-drive-detail h3 { font-size:20px; letter-spacing:normal; line-height:1.4; font-weight:600; margin:10px 0 20px; overflow-wrap:anywhere; }
.mh-drive-detail dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 16px; padding:16px; background:#f8faf9; border:1px solid #e4ebe7; border-radius:12px; }
.mh-drive-detail dt { font-size:10px; color:var(--secondary); margin-bottom:6px; }
.mh-drive-detail dd { font-size:12px; overflow-wrap:anywhere; }
.mh-drive-person { display:flex; align-items:center; gap:7px; font-size:11px; }
.mh-drive-person .mh-avatar { width:26px; height:26px; font-size:9px; }
.mh-drive-member-list { margin-top:20px; }
.mh-drive-member-list h4 { font-size:12px; letter-spacing:normal; font-weight:600; }
.mh-drive-member-list ul { display:flex; flex-wrap:wrap; gap:12px 18px; margin:12px 0 0; padding:0; list-style:none; }
.mh-drive-disclosure { color:var(--secondary); font-size:10px; margin-top:16px; }
html[dir="rtl"] .mh-drive-record-button > svg { transform:scaleX(-1); }
html[dir="rtl"] .mh-drive-table thead th:first-child { border-radius:0 8px 8px 0; }
html[dir="rtl"] .mh-drive-table thead th:last-child { border-radius:8px 0 0 8px; }
@container (max-width:560px) {
 .mh-drive-toolbar { grid-template-columns:1fr; }
 .mh-drive-stage { min-height:300px; max-height:420px; }
 .mh-drive-table,.mh-drive-table tbody { display:block; }
 .mh-drive-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .mh-drive-table tbody { display:grid; gap:12px; }
 .mh-drive-table tbody tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 12px; padding:15px; border:1px solid #e0e7e4; border-radius:12px; }
 .mh-drive-table tbody th,.mh-drive-table tbody td { display:block; border:0; padding:0; }
 .mh-drive-table tbody th { grid-column:1/-1; }
 .mh-drive-table tbody td:last-child { grid-column:1/-1; }
 .mh-drive-cell-label { display:block; color:var(--secondary); font-size:10px; margin-bottom:5px; }
 .mh-drive-record-button { font-size:13px; }
 .mh-drive-row-creator { font-size:10px; }
 .mh-drive-location-heading { align-items:flex-start; }
 .mh-drive-detail h3 { font-size:18px; }
 .mh-drive-detail dl { padding:14px; gap:16px 12px; }
 .mh-drive-person { flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) { .mh-drive-workspace button { transition:none; } }
@container (max-width:560px) {
 /* The mobile Application menu is a category list, as in the supplied capture. */
 [data-mh-drive-location="application"] .mh-drive-table tbody td:nth-child(2),
 [data-mh-drive-location="application"] .mh-drive-table tbody td:nth-child(3) { display:none; }
}

/* Authored documents use library cards and readers rather than uploaded-file rows. */
.mh-doc-toolbar { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); }
.mh-doc-workspace .mh-search-field input:focus-visible { outline:none; }
.mh-doc-stage { min-height:355px; max-height:465px; overflow:auto; padding:3px; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#bddbd4 transparent; }
.mh-doc-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:0; margin:0; list-style:none; }
.mh-doc-grid > li { min-width:0; }
.mh-doc-card { display:flex; flex-direction:column; align-items:stretch; width:100%; height:100%; padding:15px; border:1px solid #e0e7e4; border-radius:13px; background:#fff; color:var(--primary); text-align:start; line-height:1.55; transition:border-color .15s,background-color .15s; }
.mh-doc-card:hover { border-color:#8ecfc3; background:#fcfefd; }
.mh-doc-card-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:8px; }
.mh-doc-card-heading > strong { font-size:15px; line-height:1.45; font-weight:600; }
.mh-doc-type { display:inline-flex; align-self:flex-start; padding:3px 8px; border-radius:6px; background:#edf6f3; color:var(--brand); font-size:10px; font-weight:500; flex-shrink:0; }
.mh-doc-excerpt { font-size:11px; color:var(--secondary); margin:9px 0 16px; }
.mh-doc-creator { display:flex; align-items:flex-end; justify-content:space-between; gap:8px; flex-wrap:wrap; margin-top:auto; }
.mh-doc-creator > span { min-width:0; }
.mh-doc-field-label { display:block; color:var(--secondary); font-size:10px; margin-bottom:5px; }
.mh-doc-creator time { font-size:10px; color:var(--secondary); }
.mh-doc-person { display:flex; align-items:center; gap:7px; font-size:11px; }
.mh-doc-person > span:last-child { min-width:0; }
.mh-doc-person-name { display:block; font-weight:500; }
.mh-doc-person .mh-avatar { width:28px; height:28px; font-size:9px; }
.mh-doc-email { display:block; font-size:10px; color:var(--secondary); overflow-wrap:anywhere; }
.mh-doc-cover { position:relative; display:flex; align-items:center; justify-content:center; gap:25px; overflow:hidden; min-height:105px; border-radius:10px; background:linear-gradient(120deg,#e0f5ed,#f3fbf8); margin:16px 0; }
.mh-doc-cover::after { content:""; position:absolute; width:135px; height:135px; border:1px solid #bce4d7; border-radius:50%; inset-inline-end:-55px; inset-block-start:-65px; }
.mh-doc-cover img { width:48px; height:48px; border-radius:12px; box-shadow:0 5px 15px #0f827b14; }
.mh-doc-cover-lines { display:grid; gap:8px; width:92px; }
.mh-doc-cover-lines i { display:block; height:5px; width:100%; border-radius:4px; background:#a9d9cb; }
.mh-doc-cover-lines i:nth-child(2) { width:80%; }
.mh-doc-cover-lines i:nth-child(3) { width:58%; }
.mh-doc-cover[data-cover="update"] { background:linear-gradient(120deg,#fff1d2,#fffaf0); }
.mh-doc-cover[data-cover="update"]::after { border-color:#f0d596; }
.mh-doc-cover[data-cover="update"] .mh-doc-cover-lines i { background:#ecd39d; }
.mh-doc-cover-paper { display:grid; place-items:center; width:42px; height:58px; border:1px solid #ead5a7; border-radius:6px; background:#fff; color:#9d7423; rotate:-8deg; box-shadow:5px 5px 0 #f1dfb8; }
.mh-doc-cover-paper svg { width:23px; height:23px; }
.mh-doc-card-footer { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.mh-doc-role { display:inline-flex; align-items:center; padding:3px 7px; border-radius:5px; background:#e7f6ed; color:#287049; font-size:10px; }
.mh-doc-read-label { display:flex; align-items:center; gap:5px; font-size:11px; color:var(--brand); }
.mh-doc-read-label svg { width:13px; height:13px; }
.mh-doc-reader { min-height:410px; max-height:545px; overflow:auto; padding:3px; overscroll-behavior:contain; scrollbar-width:thin; }
.mh-doc-reader > .mh-doc-cover { margin-top:0; min-height:95px; }
.mh-doc-reader-heading h3 { margin:10px 0; font-size:20px; line-height:1.4; font-weight:600; letter-spacing:normal; }
.mh-doc-reader-heading h3:focus { outline:none; }
.mh-doc-reader-heading > p { font-size:12px; line-height:1.65; color:var(--secondary); margin-bottom:18px; }
.mh-doc-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:16px; background:#f8faf9; border:1px solid #e4ebe7; border-radius:12px; }
.mh-doc-facts dt { color:var(--secondary); font-size:10px; margin-bottom:6px; }
.mh-doc-facts dd { font-size:12px; overflow-wrap:anywhere; }
.mh-doc-body { padding:4px 1px; }
.mh-doc-body section { margin-top:22px; }
.mh-doc-body h4 { font-size:14px; line-height:1.5; font-weight:600; letter-spacing:normal; margin-bottom:9px; }
.mh-doc-body p,.mh-doc-body li { font-size:12px; line-height:1.8; color:#535f5b; }
.mh-doc-body ul { list-style:disc; padding-inline-start:20px; margin-top:10px; }
.mh-doc-body li + li { margin-top:5px; }
.mh-doc-disclosure { color:var(--secondary); font-size:10px; margin-top:16px; }
html[dir="rtl"] .mh-doc-read-label svg { transform:scaleX(-1); }
@container (max-width:560px) {
 .mh-doc-toolbar { grid-template-columns:1fr; }
 .mh-doc-grid { grid-template-columns:1fr; }
 .mh-doc-stage { min-height:360px; max-height:440px; }
 .mh-doc-card-heading > strong { font-size:15px; }
 .mh-doc-reader-heading h3 { font-size:18px; }
 .mh-doc-facts { gap:16px 12px; padding:14px; }
 .mh-doc-person { flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) { .mh-doc-workspace button { transition:none; } }
@container (max-width:560px) {
 .mh-doc-facts > div:nth-child(3) { grid-column:1/-1; }
}

/* Timesheets pair a real month calendar with task-linked intervals and derived totals. */
.mh-time-layout { display:grid; grid-template-columns:220px minmax(0,1fr); align-items:start; gap:16px; }
.mh-time-calendar { padding:12px; background:#fcfefd; border:1px solid #e0e7e4; border-radius:12px; }
.mh-time-month { display:flex; align-items:center; justify-content:space-between; gap:5px; margin-bottom:12px; }
.mh-time-month h3 { font-size:12px; font-weight:600; letter-spacing:normal; line-height:1.5; text-align:center; }
.mh-time-month button,.mh-time-day-heading button { display:grid; place-items:center; flex-shrink:0; width:28px; height:28px; border-radius:7px; color:var(--brand); background:#edf7f3; }
.mh-time-month svg,.mh-time-day-heading svg { width:14px; height:14px; }
.mh-time-weekdays,.mh-time-days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:3px; }
.mh-time-weekdays { font-size:9px; color:var(--secondary); text-align:center; margin-bottom:6px; }
.mh-time-days > button,.mh-time-days > span { display:flex; align-items:center; justify-content:center; position:relative; height:29px; min-width:0; border-radius:7px; font-size:11px; color:var(--primary); }
.mh-time-days button:hover { background:#eaf7f2; }
.mh-time-days button[data-has-entries="true"]::after { content:""; position:absolute; bottom:3px; width:3px; height:3px; background:var(--brand); border-radius:50%; }
.mh-time-days button[aria-pressed="true"] { background:var(--brand); color:#fff; font-weight:600; }
.mh-time-days button[aria-pressed="true"]::after { background:#fff; }
.mh-time-calendar-key { display:flex; align-items:center; justify-content:center; gap:6px; margin-top:12px; color:var(--secondary); font-size:9px; }
.mh-time-calendar-key i { width:4px; height:4px; background:var(--brand); border-radius:50%; }
.mh-time-day-work { min-width:0; }
.mh-time-day-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:12px; }
.mh-time-day-heading h3 { font-size:13px; line-height:1.5; font-weight:600; letter-spacing:normal; }
.mh-time-day-heading > div { display:flex; gap:5px; }
.mh-time-totals { display:flex; justify-content:space-between; gap:14px; padding:12px 14px; margin-bottom:16px; border-radius:10px; background:#eaf8f2; }
.mh-time-totals > div { display:flex; flex-direction:column; gap:4px; }
.mh-time-totals span { font-size:10px; color:var(--secondary); }
.mh-time-totals strong { font-size:17px; font-weight:600; color:var(--brand); line-height:1.4; }
.mh-time-toolbar { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); }
.mh-time-workspace .mh-search-field input:focus-visible { outline:none; }
.mh-time-toolbar .mh-search { grid-column:auto; }
.mh-time-toolbar select,.mh-time-toolbar .mh-search-field { height:38px; }
.mh-time-stage { min-height:260px; max-height:335px; overflow:auto; padding:3px; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#bddbd4 transparent; }
.mh-time-entries { list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.mh-time-entry { display:flex; flex-direction:column; align-items:stretch; width:100%; padding:12px 13px; border:1px solid #e0e7e4; border-radius:11px; background:#fff; color:var(--primary); text-align:start; line-height:1.5; }
.mh-time-entry:hover { border-color:#8ecfc3; background:#fcfefd; }
.mh-time-entry-top { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:10px; color:var(--brand); }
.mh-time-type { display:inline-flex; align-self:flex-start; padding:2px 7px; background:#edf5f2; color:var(--brand); border-radius:5px; font-size:10px; }
.mh-time-entry > strong { font-size:13px; font-weight:600; margin:7px 0 3px; line-height:1.45; }
.mh-time-context { color:var(--secondary); font-size:10px; }
.mh-time-slot { display:flex; align-items:center; gap:8px; margin-top:11px; padding-top:10px; border-top:1px solid #eef1ef; color:var(--secondary); font-size:11px; flex-wrap:wrap; }
.mh-time-slot > span:first-child { flex:1; }
.mh-time-slot > [data-mh-time-duration] { color:var(--brand); font-weight:600; }
.mh-time-slot svg { width:13px; height:13px; color:var(--brand); }
.mh-time-detail { min-height:395px; max-height:530px; overflow:auto; padding:3px; overscroll-behavior:contain; scrollbar-width:thin; }
.mh-time-detail h3 { font-size:20px; font-weight:600; line-height:1.45; letter-spacing:normal; margin:12px 0 20px; }
.mh-time-detail h3:focus { outline:none; }
.mh-time-detail dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; padding:18px; border:1px solid #e4ebe7; border-radius:12px; background:#f8faf9; }
.mh-time-detail dt { font-size:10px; color:var(--secondary); margin-bottom:6px; }
.mh-time-detail dd { font-size:12px; overflow-wrap:anywhere; }
.mh-time-detail-duration { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:16px; padding:14px 16px; background:#fff4dc; border-radius:10px; }
.mh-time-detail-duration > span { color:var(--accent-warm-ink); font-size:11px; }
.mh-time-detail-duration strong { font-size:18px; font-weight:600; color:var(--accent-warm-ink); }
.mh-time-disclosure { color:var(--secondary); font-size:10px; margin-top:16px; }
html[dir="rtl"] .mh-time-month svg,html[dir="rtl"] .mh-time-day-heading svg,html[dir="rtl"] .mh-time-slot svg { transform:scaleX(-1); }
@container (max-width:620px) {
 .mh-time-layout { grid-template-columns:1fr; gap:20px; }
 .mh-time-calendar { padding:14px; }
 .mh-time-days > button,.mh-time-days > span { height:30px; }
 .mh-time-stage { min-height:260px; max-height:320px; }
}
@container (max-width:400px) {
 .mh-time-toolbar { grid-template-columns:1fr; }
 .mh-time-detail h3 { font-size:18px; }
 .mh-time-detail dl { gap:16px 12px; padding:14px; }
 .mh-time-totals strong { font-size:16px; }
}
@media (prefers-reduced-motion:reduce) { .mh-time-workspace button { transition:none; } }

/* Chat keeps contact selection, messages and matching details in one workspace. */
.mh-chat-layout { display:grid; grid-template-columns:190px minmax(0,1fr); min-height:470px; border:1px solid #e0e7e4; border-radius:13px; overflow:hidden; }
.mh-chat-rail { padding:13px 10px; border-inline-end:1px solid #e8eeeb; background:#fcfefd; }
.mh-chat-search { grid-template-columns:1fr; }
.mh-chat-search .mh-search { grid-column:auto; }
.mh-chat-search input { font-size:11px; }
.mh-chat-workspace .mh-search-field input:focus-visible { outline:none; }
.mh-chat-rail > h3 { font-size:12px; font-weight:600; letter-spacing:normal; color:var(--brand); margin:18px 0 10px; }
.mh-chat-choices { list-style:none; padding:0; margin:0; display:grid; gap:7px; }
.mh-chat-choices button { display:flex; align-items:center; gap:8px; padding:10px 8px; border-radius:9px; text-align:start; width:100%; min-width:0; color:var(--primary); }
.mh-chat-choices button[aria-pressed="true"] { background:#e7f6ef; }
.mh-chat-choices button > span:last-child { min-width:0; }
.mh-chat-choices strong { display:block; font-size:12px; font-weight:600; }
.mh-chat-choices [data-mh-chat-snippet] { display:block; font-size:10px; color:var(--secondary); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:105px; margin-top:3px; }
.mh-chat-choices .mh-avatar { width:29px; height:29px; font-size:10px; }
.mh-chat-threads { min-width:0; }
.mh-chat-thread-header { display:flex; align-items:center; gap:8px; padding:13px 12px; border-bottom:1px solid #e8eeeb; }
.mh-chat-thread-header > .mh-avatar { width:30px; height:30px; font-size:10px; }
.mh-chat-thread-header > div { min-width:0; }
.mh-chat-thread-header h3 { font-size:13px; line-height:1.5; font-weight:600; letter-spacing:normal; }
.mh-chat-thread-header h3:focus,.mh-chat-file-panel h3:focus { outline:none; }
.mh-chat-thread-header > div > span { display:block; font-size:10px; color:var(--secondary); }
.mh-chat-info-button { margin-inline-start:auto; padding:7px 8px; border:1px solid #d9e9e2; background:#f1f9f5; border-radius:7px; color:var(--brand); font-size:10px; flex-shrink:0; max-width:95px; }
.mh-chat-list-back { display:none; }
.mh-chat-messages { display:flex; flex-direction:column; gap:12px; list-style:none; margin:0; padding:15px 12px; height:335px; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; }
.mh-chat-message { align-self:flex-start; max-width:92%; padding:11px; border-radius:10px 10px 10px 2px; background:#f3f5f5; color:var(--primary); min-width:0; }
.mh-chat-message[data-direction="outgoing"] { align-self:flex-end; background:#e2f6ed; border-radius:10px 10px 2px 10px; }
.mh-chat-sender { display:block; font-size:10px; color:var(--brand); margin-bottom:5px; font-weight:600; }
.mh-chat-message p { font-size:12px; line-height:1.7; overflow-wrap:anywhere; white-space:pre-wrap; }
.mh-chat-message time { display:block; text-align:end; font-size:9px; color:var(--secondary); margin-top:7px; }
.mh-chat-attachment { display:flex; align-items:center; gap:6px; width:100%; max-width:100%; border:1px solid #d8e7e0; border-radius:7px; padding:8px; background:#fff; color:var(--brand); font-size:10px; text-align:start; margin-top:9px; }
.mh-chat-attachment bdi { overflow-wrap:anywhere; min-width:0; }
.mh-chat-attachment svg { width:14px; height:14px; flex-shrink:0; }
.mh-chat-attachment svg:last-child { margin-inline-start:auto; }
.mh-chat-composer { display:flex; align-items:flex-end; gap:8px; padding:12px; border-top:1px solid #e8eeeb; }
.mh-chat-composer label { min-width:0; flex:1; }
.mh-chat-composer textarea { width:100%; min-width:0; resize:vertical; height:64px; min-height:55px; max-height:120px; border:1px solid #dfe7e3; border-radius:8px; padding:8px; font-size:12px; color:var(--primary); background:#fff; line-height:1.5; }
.mh-chat-composer textarea:focus-visible { outline:2px solid var(--brand); outline-offset:2px; }
.mh-chat-composer > button,.mh-chat-download { border:1px solid #bee2d5; border-radius:8px; padding:9px 12px; background:#e5f7ef; color:var(--brand); font-size:11px; }
.mh-chat-composer > button:disabled { opacity:.45; cursor:default; }
.mh-chat-status { font-size:10px; color:var(--brand); padding:0 12px 9px; min-height:22px; }
.mh-chat-info { padding:16px; max-height:435px; overflow:auto; scrollbar-width:thin; }
.mh-chat-info h4 { font-size:13px; letter-spacing:normal; font-weight:600; margin-bottom:14px; }
.mh-chat-info dl { display:grid; gap:14px; margin-bottom:22px; }
.mh-chat-info dt { font-size:10px; color:var(--secondary); margin-bottom:4px; }
.mh-chat-info dd { font-size:12px; overflow-wrap:anywhere; }
.mh-chat-file-panel { min-height:425px; max-height:530px; overflow:auto; padding:3px; scrollbar-width:thin; }
.mh-chat-sample-label { font-size:11px; color:var(--brand); }
.mh-chat-file-panel h3 { font-size:18px; line-height:1.5; font-weight:600; letter-spacing:normal; margin:12px 0 20px; overflow-wrap:anywhere; }
.mh-chat-file-panel pre { font-family:inherit; white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; line-height:1.9; padding:18px; border:1px solid #e1e9e5; background:#f8fbf9; border-radius:12px; margin-bottom:18px; }
.mh-chat-download { display:inline-flex; }
.mh-chat-disclosure { font-size:10px; color:var(--secondary); margin-top:16px; }
html[dir="rtl"] .mh-chat-attachment svg:last-child,html[dir="rtl"] .mh-chat-list-back svg { transform:scaleX(-1); }
@container (max-width:560px) {
 .mh-chat-layout { grid-template-columns:1fr; min-height:400px; }
 .mh-chat-rail { border-inline-end:0; }
 .mh-chat-choices [data-mh-chat-snippet] { max-width:none; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
 .mh-chat-choices button { padding:14px 10px; }
 .mh-chat-choices .mh-avatar { width:38px; height:38px; }
 .mh-preview[data-chat-view="list"] .mh-chat-threads { display:none; }
 .mh-preview[data-chat-view="thread"] .mh-chat-rail { display:none; }
 .mh-chat-list-back { display:grid; place-items:center; padding:5px; color:var(--brand); }
 .mh-chat-list-back svg { width:16px; height:16px; }
 .mh-chat-thread-header { padding:12px 9px; gap:6px; }
 .mh-chat-thread-header > .mh-avatar { display:none; }
 .mh-chat-messages { height:335px; }
 .mh-chat-info-button { max-width:90px; }
 .mh-chat-file-panel h3 { font-size:16px; }
}
@media (prefers-reduced-motion:reduce) { .mh-chat-workspace button { transition:none; } }

/* Assistant shell: welcome prompts, local history, bounded questions and exact source records. */
.mh-agent-layout { display:grid; grid-template-columns:155px minmax(0,1fr); border:1px solid #e0e7e4; border-radius:13px; overflow:hidden; }
.mh-agent-rail { padding:13px 10px; background:#f8fcfa; border-inline-end:1px solid #e5ece8; }
.mh-agent-new { width:100%; padding:10px; border-radius:8px; background:#e3f6ec; color:var(--brand); font-size:12px; font-weight:600; }
.mh-agent-rail details { margin-top:20px; }
.mh-agent-rail summary { cursor:pointer; color:var(--secondary); font-size:11px; padding:4px; }
.mh-agent-rail details p { color:var(--secondary); font-size:10px; padding:15px 4px; line-height:1.6; }
.mh-agent-rail ul { list-style:none; padding:0; margin:10px 0 0; display:grid; gap:6px; }
.mh-agent-rail li button { display:block; text-align:start; width:100%; padding:9px 8px; border-radius:7px; color:var(--secondary); font-size:11px; }
.mh-agent-rail li button[aria-pressed="true"] { background:#eaf6ef; color:var(--brand); }
.mh-agent-rail summary:focus-visible { outline:2px solid var(--brand); outline-offset:3px; }
.mh-agent-main { min-width:0; }
.mh-agent-stage { min-height:370px; max-height:460px; overflow:auto; padding:18px; overscroll-behavior:contain; scrollbar-width:thin; }
.mh-agent-welcome { padding:8px 0; }
.mh-agent-welcome-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:13px; color:var(--brand); background:#e4f7ee; font-size:24px; margin-bottom:17px; }
.mh-agent-welcome h3 { font-size:19px; line-height:1.4; font-weight:600; letter-spacing:normal; }
.mh-agent-welcome h3:focus,.mh-agent-answer h3:focus,.mh-agent-source-panel h3:focus { outline:none; }
.mh-agent-welcome > p { font-size:12px; color:var(--secondary); line-height:1.7; margin:9px 0 20px; }
.mh-agent-prompts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.mh-agent-prompts button { display:flex; align-items:flex-start; gap:8px; border:1px solid #e0e9e4; border-radius:10px; padding:12px 10px; color:var(--primary); background:#fff; text-align:start; font-size:11px; line-height:1.65; }
.mh-agent-prompts button:hover { border-color:#8ecfc3; background:#f6fcf8; }
.mh-agent-prompts svg { flex-shrink:0; width:15px; height:15px; color:var(--brand); margin-top:2px; }
.mh-agent-prompts svg:last-child { display:none; }
.mh-agent-composer { display:flex; align-items:flex-end; gap:8px; padding:14px; border-top:1px solid #e5ece8; }
.mh-agent-composer label { flex:1; min-width:0; }
.mh-agent-composer label > span { display:block; font-size:10px; color:var(--secondary); margin-bottom:6px; }
.mh-agent-composer select { width:100%; min-width:0; height:40px; border:1px solid #dfe7e2; border-radius:8px; padding:8px; background:#fff; color:var(--primary); font-size:11px; appearance:auto; }
.mh-agent-composer > button { padding:10px 12px; border:1px solid #c5e8da; border-radius:8px; color:var(--brand); background:#e6f7ee; font-size:11px; }
.mh-agent-composer > button:disabled { opacity:.45; cursor:default; }
.mh-agent-status { font-size:10px; color:var(--brand); padding:0 14px 10px; min-height:22px; }
.mh-agent-question-label,.mh-agent-label { display:block; color:var(--brand); font-size:10px; font-weight:600; }
.mh-agent-answer h3 { font-size:16px; font-weight:600; letter-spacing:normal; line-height:1.55; margin:8px 0 16px; }
.mh-agent-reply { padding:14px; border-radius:11px; background:#edf9f2; }
.mh-agent-reply p { font-size:12px; line-height:1.8; margin-top:7px; }
.mh-agent-scope { font-size:10px; color:var(--secondary); margin:12px 0 20px; }
.mh-agent-answer h4 { font-size:12px; font-weight:600; letter-spacing:normal; margin-bottom:10px; }
.mh-agent-sources { display:grid; gap:8px; }
.mh-agent-sources button { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:11px; border:1px solid #e0e9e3; border-radius:9px; background:#fff; width:100%; text-align:start; color:var(--primary); }
.mh-agent-sources strong { display:block; font-size:12px; font-weight:600; }
.mh-agent-sources small { display:block; color:var(--secondary); font-size:10px; margin-top:3px; }
.mh-agent-sources svg { width:14px; height:14px; color:var(--brand); flex-shrink:0; }
.mh-agent-source-panel { min-height:410px; max-height:535px; overflow:auto; padding:3px; scrollbar-width:thin; overscroll-behavior:contain; }
.mh-agent-source-panel h3 { font-size:20px; font-weight:600; letter-spacing:normal; line-height:1.4; margin:10px 0 20px; }
.mh-agent-source-panel dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:16px; border:1px solid #e1e9e4; border-radius:12px; background:#f8fbf9; }
.mh-agent-source-panel dt { font-size:10px; color:var(--secondary); margin-bottom:5px; }
.mh-agent-source-panel dd { font-size:12px; overflow-wrap:anywhere; }
.mh-agent-source-body { padding:15px 0; }
.mh-agent-source-body p,.mh-agent-source-body li { font-size:12px; line-height:1.8; color:#53615a; }
.mh-agent-source-body h4 { font-size:13px; font-weight:600; letter-spacing:normal; margin:15px 0 7px; }
.mh-agent-source-body ul { padding-inline-start:18px; list-style:disc; }
.mh-agent-source-body li { margin:10px 0; }
.mh-agent-source-body li strong,.mh-agent-source-body li span { display:block; }
.mh-agent-source-body blockquote { border-inline-start:3px solid var(--brand-bright); padding:14px; background:#f0faf5; font-size:13px; line-height:1.8; margin-bottom:16px; }
.mh-agent-disclosure { font-size:10px; color:var(--secondary); margin-top:16px; }
html[dir="rtl"] .mh-agent-sources svg { transform:scaleX(-1); }
@container (max-width:560px) {
 .mh-agent-layout { grid-template-columns:1fr; }
 .mh-agent-rail { border-inline-end:0; border-bottom:1px solid #e5ece8; display:grid; grid-template-columns:100px minmax(0,1fr); align-items:start; gap:10px; padding:10px; }
 .mh-agent-rail details { margin:0; min-width:0; }
 .mh-agent-rail ul { max-height:150px; overflow:auto; }
 .mh-agent-rail details p { padding:8px 4px; }
 .mh-agent-stage { padding:15px; min-height:355px; max-height:430px; }
 .mh-agent-prompts { grid-template-columns:1fr; }
 .mh-agent-welcome h3 { font-size:18px; }
 .mh-agent-composer { flex-wrap:wrap; padding:12px; }
 .mh-agent-composer label { flex-basis:100%; }
 .mh-agent-composer > button { width:100%; }
 .mh-agent-source-panel h3 { font-size:18px; }
}
@media (prefers-reduced-motion:reduce) { .mh-agent-workspace button { transition:none; } }
