/* Matter intake: demo-specific layout only. Shell tokens and components are untouched. */
.mi-stack{display:grid;gap:18px;min-width:0}
.mi-gap{margin-top:18px}
.mi-plain>li{display:block;padding:2px 0}
.mi-inline-field select{min-height:34px;padding:5px 10px;font-size:12.5px;max-width:240px}
.mi-check-field .mi-checkline{display:flex;align-items:center;gap:8px;min-height:42px;font-weight:400}
.mi-check-field input[type=checkbox]{width:18px;height:18px;min-height:0;accent-color:var(--bw-petrol)}

/* Prepared record lists */
.mi-need{list-style:none;display:grid;gap:4px}
.mi-need li{padding-left:14px;position:relative}
.mi-need li::before{content:'';position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:var(--bw-warn)}
.mi-need li.ok::before{background:var(--bw-ok)}

/* Check results */
.mi-checkrow{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px 0;border-bottom:1px solid var(--bw-rule);font-size:13px}
.mi-checkrow:last-of-type{border-bottom:0}
.mi-checkrow .k{color:var(--bw-ink-3);font-weight:600}
@media(max-width:600px){.mi-checkrow{grid-template-columns:1fr;gap:4px}}

/* Scope builder */
.mi-scope{list-style:none;display:grid;gap:6px}
.mi-scope label{display:grid;grid-template-columns:22px minmax(0,1fr) auto auto;gap:6px 10px;align-items:center;padding:8px 10px;border:1px solid var(--bw-rule);border-radius:10px;font-size:13px;cursor:pointer}
.mi-scope label:has(input:checked){background:var(--bw-petrol-l);border-color:#cfe0e3}
.mi-scope input[type=checkbox]{width:16px;height:16px;accent-color:var(--bw-petrol)}
.mi-scope .r{font-size:11.5px;color:var(--bw-ink-3);white-space:nowrap}
.mi-scope .a{font-variant-numeric:tabular-nums;font-weight:600;min-width:64px;text-align:right}
.mi-scope .bespoke .r{grid-column:2}
.mi-bespoke{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) 90px auto;gap:10px;align-items:end}
@media(max-width:700px){.mi-bespoke{grid-template-columns:1fr 1fr}}
.mi-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:10px;border-top:2px solid var(--bw-rule-2);font-weight:600}
.mi-total .v{font-size:20px;letter-spacing:-.02em;color:var(--bw-petrol-d)}

/* Engagement letter preview (native HTML, printable) */
.mi-letter{background:#fff;border:1px solid var(--bw-rule-2);border-radius:12px;padding:26px 28px;font-size:13px;line-height:1.6;max-width:72ch}
.mi-letter .lh{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:12px;margin-bottom:16px;border-bottom:2px solid var(--bw-petrol)}
.mi-letter .lh b{font-size:16px;letter-spacing:-.01em}
.mi-letter .lh span{font-size:11px;color:var(--bw-ink-3);text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.mi-letter h4{font-size:14px;margin:14px 0 6px}
.mi-letter p+p{margin-top:8px}
.mi-letter ol{padding-left:20px;margin:6px 0}
.mi-letter table{width:100%;border-collapse:collapse;margin:8px 0;font-size:12.5px}
.mi-letter td,.mi-letter th{padding:6px 8px;border-bottom:1px solid var(--bw-rule);text-align:left;vertical-align:top}
.mi-letter th{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--bw-ink-3)}
.mi-letter .num{text-align:right;font-variant-numeric:tabular-nums}
.mi-letter .draft{font-style:normal;color:var(--bw-copper);border:1.5px solid var(--bw-copper);border-radius:6px;padding:2px 7px;margin-left:6px}
.mi-letter .fine{font-size:11.5px;color:var(--bw-ink-3);margin-top:14px}

@media print{
  body *{visibility:hidden}
  .mi-letter,.mi-letter *{visibility:visible}
  .mi-letter{position:absolute;left:0;top:0;width:100%;max-width:none;border:0;padding:0}
}
