/* MedDirect service page + enrolled-patient portal. Quindlee shell, WeCare service. */
body.md-page { background: var(--color-surface-white); color: var(--ink); }
.md-page .topnav { background: rgba(255,255,255,.94); backdrop-filter: blur(14px); }
.md-nav-service { color: var(--sage-dark); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.md-wrap { max-width: 1120px; margin: 0 auto; padding: 0 22px 88px; }
.md-overview { margin: 0 -22px; }
.md-hero { position: relative; overflow: hidden; padding: 76px max(22px, calc((100vw - 1120px)/2 + 22px)) 68px; background: var(--site-hero-ground); }
.md-hero::after { content:""; position:absolute; width:480px; height:480px; border-radius:50%; right:-140px; top:-210px; background:rgba(255,255,255,.5); }
.md-hero-grid { position:relative; z-index:1; max-width:1120px; margin:auto; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr); align-items:center; gap:58px; }
.md-eyebrow { display:flex; align-items:center; gap:9px; font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--sage-dark); margin-bottom:16px; }
.md-eyebrow::before { content:""; width:26px; height:2px; background:var(--sage); border-radius:2px; }
.md-title { font-family:var(--serif); font-size:clamp(42px,5.4vw,64px); line-height:1.02; font-weight:500; letter-spacing:-.035em; color:var(--ink); margin:0 0 20px; max-width:15ch; }
.md-lead { max-width:570px; font-size:18px; line-height:1.65; color:var(--ink-2); margin:0 0 10px; }
.md-lead strong { color:var(--ink); }
.md-audience { max-width:560px; margin:0 0 25px; color:var(--ink-3); font-size:12.5px; line-height:1.55; }
.md-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.md-actions .btn { min-height:48px; padding:0 20px; display:inline-flex; align-items:center; justify-content:center; }
.md-coming-soon{margin:18px 0 0;border:1px solid var(--color-border);border-radius:var(--site-radius-md);background:var(--soon-card-bg,var(--color-mint-tint));color:var(--color-text-secondary);padding:12px 15px;display:flex;align-items:center;gap:10px;font-size:13px}.md-coming-soon strong{border-radius:var(--site-radius-pill);background:var(--color-white);color:var(--color-mint-text);padding:4px 8px;font-size:10px;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.md-disabled-link{pointer-events:none;opacity:.58;cursor:not-allowed}
.md-trust { margin-top:18px; display:flex; flex-wrap:wrap; gap:8px 18px; color:var(--ink-3); font-size:12px; }
.md-trust span::before { content:"✓"; color:var(--sage-dark); font-weight:800; margin-right:7px; }
.md-visual { background:rgba(255,255,255,.82); border:1px solid rgba(23,122,90,.18); border-radius:28px; padding:26px; box-shadow:0 28px 70px rgba(34,58,49,.12); transform:rotate(1.5deg); }
.md-visual-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:24px; }
.md-visual-mark { width:44px; height:44px; display:grid; place-items:center; color:var(--sage-dark); }
.md-visual-mark svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.8; }
.md-visual-chip { font-size:11px; font-weight:700; color:var(--sage-dark); background:var(--sage-light); border-radius:999px; padding:6px 10px; }
.md-visual h2 { font-family:var(--serif); font-size:28px; line-height:1.12; margin:0 0 8px; font-weight:500; }
.md-visual p { font-size:14px; line-height:1.55; color:var(--ink-3); margin:0 0 22px; }
.md-year { display:grid; gap:10px; }
.md-year-row { display:grid; grid-template-columns:34px 1fr; align-items:center; gap:10px; border-top:1px solid var(--cream-3); padding-top:10px; }
.md-year-num { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:var(--cream); color:var(--sage-dark); font-size:12px; font-weight:800; }
.md-year-row strong { display:block; font-size:13px; }
.md-year-row span { display:block; font-size:11px; color:var(--ink-3); margin-top:2px; }
.md-visual-fee { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-top:18px; padding-top:16px; border-top:1px solid var(--cream-3); }
.md-visual-fee strong { color:var(--sage-dark); font-size:16px; white-space:nowrap; }
.md-visual-fee span { max-width:22ch; color:var(--ink-3); font-size:10.5px; line-height:1.45; text-align:right; }
.md-section { max-width:1120px; margin:0 auto; padding:76px 22px 0; }
.md-section-head { max-width:660px; margin:0 auto 34px; text-align:center; }
.md-kicker { color:var(--sage-dark); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.09em; }
.md-section h2 { font-family:var(--serif); font-size:clamp(30px,4vw,44px); line-height:1.12; letter-spacing:-.025em; font-weight:500; margin:8px 0 12px; }
.md-section-head p { color:var(--ink-3); line-height:1.65; margin:0; }
.md-benefits-section { padding-top:82px; }
.md-benefits-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); border-top:1px solid var(--cream-3); }
.md-benefit { grid-column:span 2; padding:28px 26px 30px 0; border-bottom:1px solid var(--cream-3); }
.md-benefit:not(:nth-child(3n+1)) { padding-left:26px; border-left:1px solid var(--cream-3); }
.md-benefit:nth-child(4) { grid-column:2 / span 2; }
.md-benefit:nth-child(5) { grid-column:4 / span 2; }
.md-benefit-icon { display:block; width:30px; height:30px; margin-bottom:18px; color:var(--sage-dark); }
.md-benefit-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.md-benefit h3 { margin:0 0 9px; font-size:17px; line-height:1.3; }
.md-benefit p { margin:0; color:var(--ink-3); font-size:13px; line-height:1.65; }
.md-benefit p strong { color:var(--ink-2); }
.md-cost-note { max-width:720px; margin:17px auto 0; color:var(--ink-3); font-size:11.5px; line-height:1.55; text-align:center; }
.md-how { margin-top:82px; padding:76px max(22px,calc((100vw - 1120px)/2 + 22px)); background:var(--site-ground-mint); color:var(--color-ink); }
.md-how-inner { max-width:1120px; margin:0 auto; }
.md-how-head { max-width:680px; margin:0 auto 38px; text-align:center; }
.md-how .md-kicker { color:var(--color-mint-text); }
.md-how h2 { margin:9px 0 12px; color:var(--color-ink); font-family:var(--serif); font-size:clamp(32px,4vw,46px); line-height:1.1; font-weight:600; letter-spacing:-.025em; }
.md-how-head p { margin:0; color:var(--color-text-secondary); font-size:15px; line-height:1.65; }
.md-how .md-steps { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.md-how .md-step { border-color:transparent; background:var(--color-white); box-shadow:var(--site-shadow-raised); }
.md-how .md-step-num { border-radius:var(--site-radius-pill); background:var(--color-white); border:2px solid var(--color-orange); color:var(--color-orange-deep); }
.md-how .md-step h3 { color:var(--color-ink); }
.md-how .md-step p { color:var(--color-text-secondary); }
.md-how-note { margin:22px 0 0; color:var(--color-text-secondary); font-size:12px; text-align:center; }
.md-fit-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.md-fit { border-radius:22px; padding:26px; border:1px solid var(--cream-3); background:white; }
.md-fit.good { background:var(--fit-online-bg); border-color:var(--color-peach-line); }
.md-fit.wait { background:var(--fit-inperson-bg); border-color:var(--color-border-strong); }
.md-fit h3 { font-size:18px; margin:0 0 18px; }
.md-checklist { list-style:none; padding:0; margin:0; display:grid; gap:12px; }
.md-checklist li { display:grid; grid-template-columns:24px 1fr; gap:9px; font-size:14px; line-height:1.5; color:var(--ink-2); }
.md-checklist li::before { content:"✓"; width:20px; height:20px; display:grid; place-items:center; border-radius:50%; background:rgba(23,122,90,.14); color:var(--sage-dark); font-size:11px; font-weight:800; margin-top:1px; }
.md-fit.wait .md-checklist li::before { content:"—"; background:rgba(191,137,43,.13); color:var(--amber-dark); }
.md-condition-strip { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-top:18px; }
.md-condition-strip span { border:1px solid var(--cream-3); background:white; border-radius:999px; padding:8px 12px; font-size:12px; color:var(--ink-2); }
.md-difference { padding-top:66px; }
.md-loop-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.md-loop { position:relative; overflow:hidden; border:1px solid var(--cream-3); border-radius:var(--r-xl); padding:26px; background:var(--white); }
.md-loop-old { background:var(--cream); }
.md-loop-new { border-color:var(--sage-light); background:var(--sage-pale); box-shadow:var(--sh-md); }
.md-loop-label { display:inline-flex; border-radius:999px; padding:6px 10px; margin-bottom:20px; background:var(--cream-2); color:var(--ink-3); font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.md-loop-new .md-loop-label { background:var(--sage-light); color:var(--sage-dark); }
.md-loop ol { list-style:none; display:grid; gap:0; counter-reset:loop; }
.md-loop li { position:relative; display:grid; gap:3px; padding:0 0 20px 36px; counter-increment:loop; }
.md-loop li:not(:last-child)::after { content:""; position:absolute; left:12px; top:25px; bottom:2px; width:1px; background:var(--cream-3); }
.md-loop li::before { content:counter(loop); position:absolute; left:0; top:0; width:25px; height:25px; display:grid; place-items:center; border-radius:50%; background:var(--white); border:1px solid var(--cream-3); color:var(--ink-3); font-size:11px; font-weight:700; }
.md-loop-new li:not(:last-child)::after { background:var(--sage-light); }
.md-loop-new li::before { border-color:var(--sage-light); color:var(--sage-dark); }
.md-loop li strong { font-size:14px; color:var(--ink); }
.md-loop li span { font-size:13px; line-height:1.55; color:var(--ink-3); }
.md-loop-end { border-top:1px solid var(--cream-3); padding-top:15px; color:var(--ink-2); font-size:13px; font-weight:700; }
.md-loop-new .md-loop-end { border-color:var(--sage-light); color:var(--sage-dark); }
.md-cost-compare { display:grid; grid-template-columns:auto 1fr 1fr; gap:14px 22px; align-items:center; margin-top:16px; padding:18px 20px; border-radius:var(--site-radius-lg); background:var(--color-mint-tint); color:var(--color-ink); }
.md-cost-compare strong { font-family:var(--serif); font-size:19px; font-weight:500; }
.md-cost-compare span { font-size:12px; line-height:1.55; color:var(--color-text-secondary); }
.md-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.md-step { position:relative; background:white; border:1px solid var(--cream-3); border-radius:20px; padding:24px; }
.md-step-num { width:34px; height:34px; display:grid; place-items:center; border-radius:12px; background:var(--sage-pale); color:var(--sage-dark); font-weight:800; font-size:13px; margin-bottom:18px; }
.md-step h3 { font-size:16px; margin:0 0 8px; }
.md-step p { font-size:13px; line-height:1.6; color:var(--ink-3); margin:0; }
.md-value-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:14px; }
.md-price-card,.md-safety-card { border-radius:22px; padding:28px; }
.md-price-card { background:var(--color-white); border:1.5px solid var(--color-orange); color:var(--color-ink); }
.md-price-card h2 { color:var(--color-ink); margin-top:0; max-width:12ch; }
.md-price { font-family:var(--serif); font-size:48px; line-height:1; margin:18px 0 8px; }
.md-price small { font-family:var(--sans); font-size:13px; font-weight:500; opacity:.85; }
.md-price-card p { color:var(--color-text-secondary); font-size:13px; line-height:1.65; }
.md-safety-card { background:var(--color-mint-tint); }
.md-safety-card h3 { font-family:var(--serif); font-size:26px; margin:0 0 12px; font-weight:500; }
.md-safety-card p { font-size:13px; line-height:1.65; color:var(--ink-2); }
.md-final { text-align:center; margin:76px auto 0; max-width:780px; border-radius:26px; padding:42px 24px; background:white; border:1px solid var(--cream-3); box-shadow:0 15px 45px rgba(31,36,33,.06); }
.md-final h2 { margin-top:0; }
.md-final p { color:var(--ink-3); line-height:1.6; max-width:55ch; margin:0 auto 22px; }

/* Portal states */
.md-portal { max-width:680px; margin:0 auto; padding:36px 0 30px; }
.md-state { text-align:center; padding:56px 18px; }
.md-state .md-title,.md-portal .md-title { font-size:clamp(30px,6vw,42px); max-width:none; }
.md-state p { font-size:14px; color:var(--ink-3); line-height:1.65; max-width:46ch; margin:8px auto 22px; }
.md-spinner { width:28px; height:28px; border:3px solid var(--cream-3); border-top-color:var(--sage); border-radius:50%; margin:70px auto; animation:mdspin .8s linear infinite; }
@keyframes mdspin { to { transform:rotate(360deg); } }
.md-card { background:white; border:1px solid var(--cream-3); border-radius:18px; padding:20px; margin-bottom:14px; }
.md-card h2 { font-family:var(--serif); font-size:19px; font-weight:500; margin:0 0 12px; }
.md-chip { display:inline-block; font-size:11px; font-weight:700; padding:5px 10px; border-radius:999px; }
.md-chip-green { background:var(--sage-light); color:var(--sage-dark); }
.md-chip-honey { background:var(--honey-light); color:var(--amber-dark); }
.md-delivery { border:1.5px solid var(--sage); background:var(--sage-pale); }
.md-delivery-head { display:flex; justify-content:space-between; gap:10px; }
.md-delivery-date { font-family:var(--serif); font-size:24px; margin:5px 0 3px; }
.md-delivery-meta,.md-sub { font-size:13px; color:var(--ink-3); line-height:1.6; }
.md-row { display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:11px 0; border-bottom:1px solid var(--cream-2); }
.md-row:last-child,.md-med:last-child { border-bottom:0; }
.md-row-label,.md-med-dir { font-size:13px; color:var(--ink-3); }
.md-row-value { font-size:14px; font-weight:600; text-align:right; }
.md-row-value.md-due { color:var(--amber-dark); }
.md-med { padding:11px 0; border-bottom:1px solid var(--cream-2); }
.md-med-name { font-size:14px; font-weight:600; }
.md-card-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.md-plan-label { margin:17px 0 7px; font-size:11px; color:var(--ink-3); text-transform:uppercase; letter-spacing:.07em; }
.md-condition-list { display:flex; flex-wrap:wrap; gap:7px; }
.md-condition-list span { padding:7px 10px; border-radius:999px; background:var(--sage-pale); color:var(--sage-dark); font-size:12px; font-weight:700; }
.md-record-text,.md-plan-summary { color:var(--ink-2); font-size:14px; line-height:1.65; }
.md-record-meta { margin:-4px 0 0; color:var(--ink-3); font-size:12px; }
.md-plan-summary { margin:0 0 8px; padding:12px 14px; border-radius:10px; background:var(--sage-pale); }
.md-plan-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
.md-plan-grid .md-card { margin-bottom:0; }
.md-plan-grid .md-urgent-card { grid-column:1 / -1; border-color:#ebc9c3; background:#fff8f6; }
.md-plan-list { margin:0; padding-left:20px; display:grid; gap:8px; }
.md-plan-list li { color:var(--ink-2); font-size:13.5px; line-height:1.55; padding-left:2px; }
.md-note { background:var(--cream); border-radius:13px; padding:14px 16px; font-size:13px; color:var(--ink-3); line-height:1.65; }
.md-note strong { color:var(--ink-2); }
.md-note a { color:var(--sage-dark); font-weight:700; }
.md-attention { border-color:#e7c66f; background:#fffaf0; }
.md-attention .md-card-head { align-items:center; }
.md-attention-row { display:flex; align-items:flex-start; gap:10px; margin:0 0 10px; color:var(--ink-2); font-size:14px; line-height:1.5; }
.md-attention-row span { display:grid; place-items:center; flex:0 0 22px; height:22px; border-radius:50%; background:#f4d77f; color:#624b0d; font-weight:800; }
.md-attention .btn { margin-top:5px; }

@media (max-width:760px) {
  .md-nav-service { display:none; }
  .md-page .topnav > .nav-btn { display:none; }
  .md-wrap { padding-left:16px; padding-right:16px; }
  .md-overview { margin:0 -16px; }
  .md-hero { padding:38px 18px 40px; }
  .md-hero-grid { grid-template-columns:1fr; gap:30px; }
  .md-title { font-size:39px; line-height:1.04; margin-bottom:16px; }
  .md-lead { font-size:15px; line-height:1.58; margin-bottom:9px; }
  .md-audience { margin-bottom:21px; font-size:12px; }
  .md-eyebrow { margin-bottom:13px; }
  .md-trust { display:grid; grid-template-columns:1fr; gap:7px; margin-top:15px; }
  .md-visual { display:none; }
  .md-section { padding:48px 16px 0; }
  .md-benefits-grid { grid-template-columns:1fr; }
  .md-benefit,.md-benefit:nth-child(4),.md-benefit:nth-child(5) { grid-column:auto; padding:18px 0; border-left:0; display:grid; grid-template-columns:38px 1fr; column-gap:14px; }
  .md-benefit:not(:nth-child(3n+1)) { padding-left:0; border-left:0; }
  .md-benefit-icon { grid-column:1; grid-row:1 / span 2; width:28px; height:28px; margin:2px 0 0; }
  .md-benefit h3,.md-benefit p { grid-column:2; }
  .md-benefit h3 { margin-bottom:6px; }
  .md-cost-note { text-align:left; margin-top:14px; }
  .md-how { margin-top:48px; padding:48px 16px; }
  .md-how-head { text-align:left; margin-bottom:26px; }
  .md-how h2 { font-size:34px; }
  .md-how .md-steps { grid-template-columns:1fr; }
  .md-how-note { text-align:left; }
  .md-fit-grid,.md-steps,.md-value-grid,.md-loop-grid { grid-template-columns:1fr; }
  .md-loop { padding:20px; }
  .md-cost-compare { grid-template-columns:1fr; gap:8px; padding:20px; }
  .md-section-head { text-align:left; margin-bottom:24px; }
  .md-condition-strip { justify-content:flex-start; }
  .md-final { margin:58px 16px 0; padding:34px 18px; }
  .md-actions { align-items:stretch; }
  .md-actions .btn { flex:1 1 180px; }
  .md-plan-grid { grid-template-columns:1fr; }
  .md-plan-grid .md-urgent-card { grid-column:auto; }
  .md-row { align-items:flex-start; }
  .md-row-value { max-width:58%; }
}
@media (prefers-reduced-motion:reduce) { .md-spinner { animation:none; } }

/* Phase 45.4A — shared Quinn Enrolment / Quinn Care conversation shell. */
.mdq-page { min-height:100vh; background:var(--color-surface-warm); }
.mdq-wrap { width:min(760px,calc(100% - 32px)); margin:0 auto; padding:42px 0 72px; }
.mdq-head { text-align:center; margin:0 auto 24px; max-width:650px; }
.mdq-brand { display:inline-flex; align-items:center; gap:8px; padding:6px 12px 6px 7px; border:1px solid var(--sage-light); border-radius:999px; background:var(--white); color:var(--sage-dark); font-size:12px; font-weight:700; }
.mdq-brand img { width:30px; height:30px; }
.mdq-head h1 { font-family:var(--serif); font-size:clamp(34px,6vw,50px); line-height:1.08; font-weight:500; letter-spacing:-.03em; margin:15px 0 10px; }
.mdq-head p { color:var(--ink-3); font-size:15px; line-height:1.6; margin:0; }
.mdq-head-note { margin-top:8px !important; font-size:13px !important; color:var(--sage-dark) !important; font-weight:600; }
.mdq-gate-fit { list-style:none; margin:14px 0 18px; padding:14px 18px; border:1px solid var(--cream-3); border-radius:var(--r); background:var(--sage-pale); text-align:left; display:grid; gap:8px; max-width:420px; }
.mdq-gate-fit li { font-size:13.5px; line-height:1.5; color:var(--ink-2); padding-left:24px; position:relative; }
.mdq-gate-fit li::before { content:"✓"; position:absolute; left:2px; color:var(--sage-dark); font-weight:700; }
.mdq-gate-unsure { margin-top:14px; font-size:12.5px !important; color:var(--ink-3); }
.mdq-card { min-height:500px; border:1px solid var(--cream-3); border-radius:var(--r-xl); background:var(--white); box-shadow:var(--sh-lg); overflow:hidden; }
.mdq-card [hidden] { display:none !important; }
.mdq-loading,.mdq-gate,.mdq-complete { min-height:500px; padding:48px 30px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; box-sizing:border-box; }
.mdq-loading p,.mdq-gate p,.mdq-complete p { max-width:480px; color:var(--ink-3); font-size:14px; line-height:1.65; }
.mdq-gate h2,.mdq-complete h2 { font-family:var(--serif); font-size:28px; font-weight:500; margin:12px 0 6px; }
.mdq-gate .btn { margin:6px 3px 0; }
.mdq-complete img { width:64px; height:64px; }
.mdq-progress { display:grid; gap:7px; padding:16px 20px 13px; border-bottom:1px solid var(--cream-2); color:var(--ink-3); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.mdq-progress > span:last-child { display:block; height:4px; border-radius:999px; background:var(--cream-2); overflow:hidden; }
.mdq-progress i { display:block; width:10%; height:100%; border-radius:inherit; background:var(--sage); transition:width .25s ease; }
.mdq-baseline { margin:16px 20px 0; padding:13px 15px; border:1px solid var(--sage-light); border-radius:var(--r); background:var(--sage-pale); display:grid; gap:3px; }
.mdq-baseline strong { font-size:12px; color:var(--sage-dark); }
.mdq-baseline span { color:var(--ink-3); font-size:12px; line-height:1.45; }
.mdq-summary { margin:14px 20px 0; border:1px solid var(--cream-3); border-radius:12px; background:var(--cream); padding:12px; }
.mdq-summary-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:8px; }
.mdq-summary-head strong { font-size:13px; }
.mdq-summary-row { display:flex; justify-content:space-between; gap:10px; padding:7px 0; border-top:1px solid var(--cream-3); font-size:12px; line-height:1.4; }
.mdq-summary-row span { color:var(--ink-3); min-width:0; overflow-wrap:anywhere; }
.mdq-summary-row button { border:0; background:none; color:var(--sage-dark); font:700 11px inherit; cursor:pointer; min-height:32px; }
.mdq-messages { height:420px; overflow:auto; padding:22px 20px; display:flex; flex-direction:column; gap:12px; scroll-behavior:smooth; }
.mdq-message { display:flex; gap:8px; align-items:flex-end; max-width:88%; }
.mdq-message.is-user { align-self:flex-end; justify-content:flex-end; }
.mdq-message.is-quinn { align-self:flex-start; }
.mdq-message > img { width:30px; height:30px; flex:0 0 30px; }
.mdq-bubble { white-space:pre-wrap; border-radius:17px 17px 17px 5px; padding:11px 14px; background:var(--cream); color:var(--ink-2); font-size:14px; line-height:1.55; }
.mdq-message.is-user .mdq-bubble { border-radius:17px 17px 5px 17px; background:var(--sage); color:var(--white); }
.mdq-compose { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:end; border-top:1px solid var(--cream-2); padding:14px 16px; background:var(--white); }
.mdq-compose textarea { width:100%; max-height:150px; resize:vertical; border:1px solid var(--cream-3); border-radius:14px; padding:11px 13px; box-sizing:border-box; font:inherit; font-size:14px; line-height:1.45; color:var(--ink); outline:none; }
.mdq-compose textarea:focus { border-color:var(--sage); box-shadow:0 0 0 3px rgba(23,122,90,.12); }
.mdq-compose .btn { min-height:44px; }
.mdq-error { margin:0; padding:0 18px 14px; color:var(--red-dark); font-size:12px; }
.mdq-safety { max-width:600px; margin:14px auto 0; color:var(--ink-3); font-size:12px; line-height:1.5; text-align:center; }
@media (max-width:560px) {
  .mdq-wrap { width:100%; padding:24px 0 0; }
  .mdq-head { padding:0 18px; margin-bottom:18px; text-align:left; }
  .mdq-brand { margin-left:-2px; }
  .mdq-head h1 { font-size:35px; }
  .mdq-head p { font-size:14px; }
  .mdq-card { min-height:calc(100vh - 250px); border-width:1px 0 0; border-radius:22px 22px 0 0; box-shadow:none; }
  .mdq-loading,.mdq-gate,.mdq-complete { min-height:430px; padding:36px 20px; }
  .mdq-messages { height:calc(100vh - 410px); min-height:330px; padding:18px 14px; }
  .mdq-message { max-width:94%; }
  .mdq-compose { position:sticky; bottom:0; padding:10px 12px calc(10px + env(safe-area-inset-bottom)); }
  .mdq-compose .btn { padding-left:15px; padding-right:15px; }
  .mdq-baseline { margin:13px 14px 0; }
  .mdq-summary { margin:12px 14px 0; }
  .mdq-safety { padding:0 16px 20px; }
}
