/*
 * MPWL Patient Portal v3.12.273 — Consolidation & Readability
 * Scoped cleanup layer loaded after the legacy portal bundle.
 * Keep this file patient-facing only; clinic chart CSS remains separate.
 */
.mpwl-portal{
  --v273-text:#203d63;
  --v273-muted:#5f7187;
  --v273-border:#dbe5ef;
  --v273-soft:#f6f9fc;
}

/* Global patient typography floor */
.mpwl-portal .mpwl-content{font-size:16px;line-height:1.55;color:var(--v273-text)}
.mpwl-portal .mpwl-top h1{font-size:30px;line-height:1.15;letter-spacing:-.025em}
.mpwl-portal .mpwl-top p{font-size:15.5px;line-height:1.5}
.mpwl-portal .mpwl-card p,
.mpwl-portal .mpwl-alert,
.mpwl-portal .mpwl-empty{font-size:15.5px;line-height:1.55}
body.mpwl-portal-mode .mpwl-portal .mpwl-content small{font-size:max(12.5px,.8em)!important;line-height:1.35!important}
.mpwl-portal .mpwl-content label{font-size:14.5px;line-height:1.4}
.mpwl-portal .mpwl-content table th{font-size:12.5px!important;line-height:1.35!important}
.mpwl-portal .mpwl-content table td{font-size:14.5px;line-height:1.45}
.mpwl-portal .mpwl-content .mpwl-badge{font-size:12px!important;line-height:1.2!important}
.mpwl-portal .muted{font-size:14px;line-height:1.5;color:var(--v273-muted)}
.mpwl-portal .mpwl-text-link{font-size:14.5px;line-height:1.35;font-weight:800}
.mpwl-portal .mpwl-btn,
.mpwl-portal button.mpwl-btn{font-size:14px;line-height:1.2;min-height:42px}
.mpwl-portal .mpwl-section-head small,
.mpwl-portal .mpwl-card-heading-row small{font-size:12.5px;line-height:1.25;letter-spacing:.08em}
.mpwl-portal .mpwl-section-head h3,
.mpwl-portal .mpwl-card-heading-row h3{font-size:20px;line-height:1.2}

/* Sidebar: no 9–10px navigation labels */
.mpwl-portal .mpwl-nav-heading{font-size:12px!important;line-height:1.25!important;letter-spacing:.09em!important}
.mpwl-portal .mpwl-sidebar nav .mpwl-nav-section>a{font-size:15px!important;line-height:1.3!important;min-height:43px}
.mpwl-portal .mpwl-nav-complete-copy strong{font-size:14.5px!important;line-height:1.25!important}
.mpwl-portal .mpwl-nav-complete-copy small{font-size:12.5px!important;line-height:1.3!important}
.mpwl-portal .mpwl-sidebar-foot strong{font-size:14px!important}
.mpwl-portal .mpwl-sidebar-foot a{font-size:13.5px!important;line-height:1.35!important}

/* Reciprocal Admin / Patient switches consolidated here from legacy portal.css */
.mpwl-portal .mpwl-sidebar>.mpwl-admin-view-switcher{margin:18px 0 14px;padding:15px 9px 14px;border-top:1px solid var(--v273-border);border-bottom:1px solid var(--v273-border)}
.mpwl-portal .mpwl-admin-view-switcher-label{margin:0 3px 9px;color:#64748b;font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.mpwl-portal .mpwl-admin-view-switcher-links{display:grid;gap:6px}
.mpwl-portal .mpwl-admin-view-switch{display:flex;align-items:center;gap:9px;min-height:44px;padding:9px 11px;border:1px solid #dbe5f1;border-radius:9px;background:#f8fafc;color:#29435f!important;text-decoration:none!important;font-size:14.5px;font-weight:750;line-height:1.3}
.mpwl-portal .mpwl-admin-view-switch .dashicons{width:18px;height:18px;font-size:18px;color:#47739f}
.mpwl-portal .mpwl-admin-view-switch:hover{border-color:#b9d0e8;background:#eef5fd;color:#164f8f!important}
.mpwl-portal .mpwl-admin-view-switch.is-active{border-color:#0b4fb3;background:#0b4fb3;color:#fff!important;box-shadow:0 4px 12px rgba(11,79,179,.15)}
.mpwl-portal .mpwl-admin-view-switch.is-active .dashicons{color:#fff}

/* Approved dashboard hero/wheel stays intact; only improve legibility. */
.mpwl-portal .mpwl-v254-hero-wheel-head small{font-size:12px!important}
.mpwl-portal .mpwl-v254-hero-wheel-head span{font-size:13px!important;line-height:1.45!important}
.mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action strong{font-size:12.5px!important;line-height:1.15!important}
.mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action em{font-size:10.5px!important;line-height:1.1!important}
.mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-center>span{font-size:11px!important}

/* Dashboard consolidation */
.mpwl-portal .mpwl-v273-attention{margin:18px 0 24px}
.mpwl-portal .mpwl-v273-attention-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))!important}
.mpwl-portal .mpwl-v190-treatment-card .mpwl-v190-treatment-body{padding-bottom:20px}
.mpwl-portal .mpwl-v190-treatment-card .mpwl-v190-med-row p{font-size:15px!important}
.mpwl-portal .mpwl-v190-treatment-card .mpwl-v190-dose span{font-size:13px!important}
.mpwl-portal .mpwl-v273-target-context{margin:0 0 12px;color:var(--v273-muted);font-size:13.5px;line-height:1.45}
.mpwl-portal .mpwl-v197-target small,
.mpwl-portal .mpwl-v198-calorie-copy small,
.mpwl-portal .mpwl-v197-movement-tile small{font-size:12px!important}
.mpwl-portal .mpwl-v197-target strong{font-size:18px!important}
.mpwl-portal .mpwl-v197-movement-tile strong{font-size:14px!important;line-height:1.4!important}
.mpwl-portal .mpwl-v190-activity-row strong{font-size:15px!important}
.mpwl-portal .mpwl-v190-activity-row small,
.mpwl-portal .mpwl-v190-activity-row time{font-size:13px!important}

/* Shot Tracker: form is the task; history has its own page. */
.mpwl-portal .mpwl-shot-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px}
.mpwl-portal .mpwl-shot-intro h2{font-size:22px;line-height:1.2;margin:2px 0 4px}
.mpwl-portal .mpwl-shot-intro p{margin:0}
.mpwl-portal .mpwl-shot-intro>div>small{font-size:12.5px;letter-spacing:.08em;font-weight:850}
.mpwl-portal .mpwl-form-card .gform_wrapper{font-size:15.5px}
.mpwl-portal .mpwl-form-card .gfield_label{font-size:15px!important;line-height:1.35!important}
.mpwl-portal .mpwl-form-card .gfield_description{font-size:13.5px!important;line-height:1.5!important}
.mpwl-portal .mpwl-form-card input,
.mpwl-portal .mpwl-form-card select,
.mpwl-portal .mpwl-form-card textarea{font-size:16px!important}

/* Generic compact page action bar replaces duplicate inner page heroes. */
.mpwl-portal .mpwl-v273-page-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:14px 16px;border:1px solid var(--v273-border);background:var(--v273-soft);border-radius:12px;color:var(--v273-muted);font-size:14.5px;line-height:1.4}
.mpwl-portal .mpwl-v273-page-actions .mpwl-btn{flex:0 0 auto}

/* Shot History readability */
.mpwl-portal .mpwl-history-overview-card small{font-size:12.5px!important;letter-spacing:.06em!important}
.mpwl-portal .mpwl-history-overview-card strong{font-size:19px!important;line-height:1.25!important}
.mpwl-portal .mpwl-history-overview-card span{font-size:13.5px!important}
.mpwl-portal .mpwl-history-filter-heading small,
.mpwl-portal .mpwl-history-list-intro small{font-size:12.5px!important}
.mpwl-portal .mpwl-history-filter-heading h3{font-size:20px!important}
.mpwl-portal .mpwl-history-filters label{font-size:14px!important;line-height:1.35!important;font-weight:750}
.mpwl-portal .mpwl-history-filters select{font-size:15px!important;min-height:44px}
.mpwl-portal .mpwl-history-table th{font-size:12.5px!important;line-height:1.3!important;letter-spacing:.04em!important}
.mpwl-portal .mpwl-history-table td{font-size:14.5px!important;line-height:1.45!important}
.mpwl-portal .mpwl-history-table td small{font-size:13px!important;line-height:1.35!important}
.mpwl-portal .mpwl-shot-action{font-size:13.5px!important}

/* My Progress: one story, not four versions of the same totals. */
.mpwl-portal .mpwl-progress-hero h2{font-size:31px!important;line-height:1.12!important}
.mpwl-portal .mpwl-progress-hero p{font-size:16px!important;line-height:1.55!important}
.mpwl-portal .mpwl-progress-hero-copy>small{font-size:12.5px!important}
.mpwl-portal .mpwl-v273-progress-hero-side{display:grid;gap:12px;align-content:center}
.mpwl-portal .mpwl-v273-progress-remaining{padding:12px 14px;border:1px solid rgba(255,255,255,.28);border-radius:12px;background:rgba(255,255,255,.1)}
.mpwl-portal .mpwl-v273-progress-remaining small{display:block;font-size:11.5px;letter-spacing:.08em;font-weight:850;opacity:.85}
.mpwl-portal .mpwl-v273-progress-remaining strong{display:block;margin-top:3px;font-size:16px;line-height:1.25}
.mpwl-portal .mpwl-progress-trend-section .mpwl-progress-mini-stats small{font-size:12.5px!important}
.mpwl-portal .mpwl-progress-trend-section .mpwl-progress-mini-stats strong{font-size:15px!important}
.mpwl-portal .mpwl-v273-achievement-summary{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:10px;margin:0 0 16px}
.mpwl-portal .mpwl-v273-achievement-summary>div{padding:13px 14px;border:1px solid var(--v273-border);border-radius:11px;background:var(--v273-soft)}
.mpwl-portal .mpwl-v273-achievement-summary small{display:block;font-size:11.5px!important;letter-spacing:.06em;font-weight:850;color:var(--v273-muted)}
.mpwl-portal .mpwl-v273-achievement-summary strong{display:block;margin-top:4px;font-size:16px;line-height:1.25}
.mpwl-portal .mpwl-v273-achievement-summary span{display:block;margin-top:3px;font-size:13px;line-height:1.4;color:var(--v273-muted)}
.mpwl-portal .mpwl-milestone-item strong{font-size:15px!important}
.mpwl-portal .mpwl-milestone-item small{font-size:13px!important;line-height:1.4!important}
.mpwl-portal .mpwl-weighins-row{font-size:14.5px!important}
.mpwl-portal .mpwl-progress-disclaimer{font-size:13.5px!important}

/* Online Forms + Form History: shell provides the page title; cards provide the task/status. */
.mpwl-portal .mpwl-forms-hub-grid{margin-top:0!important}
.mpwl-portal .mpwl-forms-hub-card small{font-size:12.5px!important;line-height:1.25!important;letter-spacing:.06em!important}
.mpwl-portal .mpwl-forms-hub-card h3{font-size:19px!important;line-height:1.25!important}
.mpwl-portal .mpwl-forms-hub-card p{font-size:15px!important;line-height:1.5!important}
.mpwl-portal .mpwl-form-complete-line,
.mpwl-portal .mpwl-form-detail-line,
.mpwl-portal .mpwl-form-last-line{font-size:14px!important;line-height:1.45!important}
.mpwl-portal .mpwl-form-hub-button{font-size:13.5px!important;line-height:1.25!important}
.mpwl-portal .mpwl-form-history-tabs a{font-size:14px!important;line-height:1.3!important}
.mpwl-portal .mpwl-submission-table th{font-size:12.5px!important}
.mpwl-portal .mpwl-submission-table td{font-size:15px!important;line-height:1.45!important}
.mpwl-portal .mpwl-submission-table .muted{font-size:13px!important}
.mpwl-portal .mpwl-submission-detail-head small{font-size:12.5px!important}
.mpwl-portal .mpwl-submission-detail-head h3{font-size:21px!important}
.mpwl-portal .mpwl-submission-detail-head p{font-size:14px!important}
.mpwl-portal .mpwl-submission-field small{font-size:13px!important;line-height:1.35!important}
.mpwl-portal .mpwl-submission-field>div{font-size:15.5px!important;line-height:1.5!important}

/* Treatment, Visits, Records, Messages, Account/Security: typography-only cleanup. */
.mpwl-portal .mpwl-treatment-detail-grid small,
.mpwl-portal .mpwl-treatment-history-row small,
.mpwl-portal .mpwl-patient-chain-row small,
.mpwl-portal .mpwl-timeline-event small,
.mpwl-portal .mpwl-visit-card-title small,
.mpwl-portal .mpwl-visit-history-head small,
.mpwl-portal .mpwl-update-row small{font-size:12.5px!important;line-height:1.35!important}
.mpwl-portal .mpwl-treatment-detail-grid span,
.mpwl-portal .mpwl-treatment-history-row span,
.mpwl-portal .mpwl-patient-chain-row p,
.mpwl-portal .mpwl-timeline-event p,
.mpwl-portal .mpwl-visit-card-title p,
.mpwl-portal .mpwl-visit-history-head p{font-size:14px!important;line-height:1.45!important}
.mpwl-portal .mpwl-account-section small,
.mpwl-portal .mpwl-security-card small,
.mpwl-portal .mpwl-notification-card small,
.mpwl-portal .mpwl-small-note{font-size:13px!important;line-height:1.45!important}

@media(max-width:760px){
  .mpwl-portal .mpwl-content{font-size:15.5px}
  .mpwl-portal .mpwl-top h1{font-size:25px}
  .mpwl-portal .mpwl-top p{font-size:14.5px}
  .mpwl-portal .mpwl-v254-hero-wheel-head small{font-size:11px!important}
  .mpwl-portal .mpwl-v254-hero-wheel-head span{font-size:12px!important}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action strong{font-size:11px!important;line-height:1.12!important}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action em{font-size:10px!important}
  .mpwl-portal .mpwl-v273-page-actions{align-items:stretch;flex-direction:column}
  .mpwl-portal .mpwl-v273-page-actions .mpwl-btn{width:100%;text-align:center}
  .mpwl-portal .mpwl-shot-intro{align-items:flex-start;flex-direction:column}
  .mpwl-portal .mpwl-shot-intro .mpwl-text-link{width:100%}
  .mpwl-portal .mpwl-v273-achievement-summary{grid-template-columns:1fr}
  .mpwl-portal .mpwl-progress-hero h2{font-size:27px!important}
  .mpwl-portal .mpwl-history-table td{font-size:14px!important}
}


/* ========================================================================== 
   v3.12.292 — Patient Portal 100% Zoom Typography + Control Normalization
   Rebalanced after validating the portal at browser 100% zoom. This is a
   density/consistency layer only: no patient workflows or information
   architecture are changed.
   ========================================================================== */

/* Make patient actions visually centered instead of relying on inherited line-height. */
.mpwl-portal .mpwl-btn,
.mpwl-portal a.mpwl-btn,
.mpwl-portal button.mpwl-btn,
.mpwl-portal input[type="submit"].mpwl-btn,
.mpwl-portal input[type="button"].mpwl-btn,
.mpwl-portal .mpwl-v190-hero-actions a,
.mpwl-portal .mpwl-v190-contact-actions a,
.mpwl-portal .mpwl-form-hub-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  min-height:40px!important;
  padding:0 14px!important;
  line-height:1.15!important;
  text-align:center!important;
  vertical-align:middle!important;
}

/* Desktop/tablet density at actual 100% browser zoom. */
@media(min-width:761px){
  .mpwl-portal .mpwl-content{
    padding:22px!important;
    font-size:15px!important;
    line-height:1.5!important;
  }
  .mpwl-portal .mpwl-top{
    padding:20px 24px!important;
  }
  .mpwl-portal .mpwl-top h1{
    font-size:24px!important;
    line-height:1.18!important;
    letter-spacing:-.018em!important;
  }
  .mpwl-portal .mpwl-top p{
    font-size:14px!important;
    line-height:1.45!important;
  }
  .mpwl-portal .mpwl-card{
    padding:17px!important;
    margin-bottom:14px!important;
  }
  .mpwl-portal .mpwl-card p,
  .mpwl-portal .mpwl-alert,
  .mpwl-portal .mpwl-empty{
    font-size:14.5px!important;
    line-height:1.5!important;
  }
  .mpwl-portal .mpwl-section-head h3,
  .mpwl-portal .mpwl-card-heading-row h3,
  .mpwl-portal .mpwl-v190-card-head h3{
    font-size:18px!important;
    line-height:1.22!important;
  }
  .mpwl-portal .mpwl-v190-hero{
    padding:22px 22px 18px!important;
  }
  .mpwl-portal .mpwl-v190-hero h2{
    font-size:31px!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }
  .mpwl-portal .mpwl-v190-hero-top p{
    font-size:14px!important;
    line-height:1.5!important;
  }
  .mpwl-portal .mpwl-v190-quick-heading h3{
    font-size:22px!important;
    line-height:1.18!important;
  }
  .mpwl-portal .mpwl-v190-action-grid .mpwl-next-step-copy h2{
    font-size:18px!important;
    line-height:1.2!important;
  }
  .mpwl-portal .mpwl-v190-action-grid .mpwl-next-step-copy>p{
    font-size:14px!important;
    line-height:1.5!important;
  }
  .mpwl-portal .mpwl-v190-trend-top>div strong{
    font-size:32px!important;
    line-height:1!important;
  }
  .mpwl-portal .mpwl-v190-goal-route>strong{
    font-size:24px!important;
  }
  .mpwl-portal .mpwl-progress-hero h2{
    font-size:27px!important;
    line-height:1.12!important;
  }
  .mpwl-portal .mpwl-progress-hero p{
    font-size:14.5px!important;
    line-height:1.5!important;
  }
  .mpwl-portal .mpwl-btn,
  .mpwl-portal button.mpwl-btn{
    min-height:40px!important;
    font-size:13.5px!important;
  }
}

/* Phone density: readable at 100% without oversized dashboard/hero type. */
@media(max-width:760px){
  .mpwl-portal,
  .mpwl-portal .mpwl-main,
  .mpwl-portal .mpwl-content,
  .mpwl-portal .mpwl-card,
  .mpwl-portal .mpwl-v190-dashboard,
  .mpwl-portal .mpwl-v190-dashboard-grid,
  .mpwl-portal .mpwl-v190-main-column,
  .mpwl-portal .mpwl-v190-side-column,
  .mpwl-portal .mpwl-v190-action-grid{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .mpwl-portal .mpwl-content{
    padding:14px!important;
    font-size:14.5px!important;
    line-height:1.5!important;
  }
  .mpwl-portal .mpwl-main p,
  .mpwl-portal .mpwl-main li,
  .mpwl-portal .mpwl-main td,
  .mpwl-portal .mpwl-main .muted{
    font-size:14px!important;
    line-height:1.5!important;
  }
  .mpwl-portal .mpwl-main h1,
  .mpwl-portal .mpwl-top h1{
    font-size:22px!important;
    line-height:1.16!important;
    letter-spacing:-.012em!important;
  }
  .mpwl-portal .mpwl-main h2{font-size:20px!important;line-height:1.2!important;}
  .mpwl-portal .mpwl-main h3{font-size:18px!important;line-height:1.23!important;}
  .mpwl-portal .mpwl-main h4{font-size:16px!important;line-height:1.28!important;}
  .mpwl-portal .mpwl-top{padding:14px!important;}
  .mpwl-portal .mpwl-top p{font-size:13.5px!important;line-height:1.45!important;}
  .mpwl-portal .mpwl-card{
    padding:14px!important;
    margin-bottom:12px!important;
    border-radius:12px!important;
  }
  .mpwl-portal .mpwl-v190-hero{
    padding:17px 15px 14px!important;
    border-radius:17px!important;
  }
  .mpwl-portal .mpwl-v190-eyebrow{
    font-size:10.5px!important;
    line-height:1.2!important;
  }
  .mpwl-portal .mpwl-v190-hero h2{
    font-size:27px!important;
    line-height:1.08!important;
    letter-spacing:-.03em!important;
  }
  .mpwl-portal .mpwl-v190-hero-top p{
    font-size:14px!important;
    line-height:1.48!important;
  }
  .mpwl-portal .mpwl-v190-progress-head strong{font-size:14px!important;}
  .mpwl-portal .mpwl-v190-progress-head small{font-size:11.5px!important;}
  .mpwl-portal .mpwl-v190-quick-heading h3{
    font-size:20px!important;
    line-height:1.18!important;
  }
  .mpwl-portal .mpwl-v190-quick-heading small{font-size:11px!important;}
  .mpwl-portal .mpwl-v190-action-grid>.mpwl-next-step-card{
    padding:13px!important;
    gap:11px!important;
  }
  .mpwl-portal .mpwl-v190-action-grid .mpwl-next-step-copy h2{
    font-size:17px!important;
    line-height:1.2!important;
  }
  .mpwl-portal .mpwl-v190-action-grid .mpwl-next-step-copy>p{
    font-size:13.5px!important;
    line-height:1.48!important;
  }
  .mpwl-portal .mpwl-v190-card-head h3,
  .mpwl-portal .mpwl-section-head h3,
  .mpwl-portal .mpwl-card-heading-row h3{
    font-size:17px!important;
    line-height:1.2!important;
  }
  .mpwl-portal .mpwl-v190-trend-top>div strong{font-size:27px!important;}
  .mpwl-portal .mpwl-v191-loss-line>strong{font-size:26px!important;}
  .mpwl-portal .mpwl-v190-med-row h3{font-size:18px!important;}
  .mpwl-portal .mpwl-health-metric strong,
  .mpwl-portal .mpwl-simple-metrics .mpwl-health-metric strong,
  .mpwl-portal .mpwl-dashboard-metrics-v313 .mpwl-health-metric strong{font-size:17px!important;}
  .mpwl-portal .mpwl-progress-hero h2{font-size:24px!important;}
  .mpwl-portal .mpwl-progress-hero p{font-size:14px!important;}
  .mpwl-portal .mpwl-btn,
  .mpwl-portal a.mpwl-btn,
  .mpwl-portal button.mpwl-btn,
  .mpwl-portal input[type="submit"].mpwl-btn,
  .mpwl-portal input[type="button"].mpwl-btn,
  .mpwl-portal .mpwl-v190-hero-actions a,
  .mpwl-portal .mpwl-v190-contact-actions a,
  .mpwl-portal .mpwl-form-hub-button{
    min-height:42px!important;
    padding:0 13px!important;
    font-size:13.5px!important;
    line-height:1.1!important;
  }
  /* Keep native inputs at 16px so iOS never zooms into fields. */
  .mpwl-portal input,
  .mpwl-portal select,
  .mpwl-portal textarea,
  .mpwl-portal .gform_wrapper input,
  .mpwl-portal .gform_wrapper select,
  .mpwl-portal .gform_wrapper textarea{
    font-size:16px!important;
  }
  .mpwl-portal .mpwl-card,
  .mpwl-portal .mpwl-alert,
  .mpwl-portal .mpwl-v273-page-actions,
  .mpwl-portal .mpwl-next-step-card,
  .mpwl-portal .mpwl-forms-hub-card,
  .mpwl-portal .mpwl-visit-card,
  .mpwl-portal .mpwl-document{
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
}

@media(max-width:390px){
  .mpwl-portal .mpwl-content{padding:12px!important;}
  .mpwl-portal .mpwl-v190-hero h2{font-size:25px!important;}
  .mpwl-portal .mpwl-v190-quick-heading h3{font-size:19px!important;}
  .mpwl-portal .mpwl-main h1,
  .mpwl-portal .mpwl-top h1{font-size:21px!important;}
}


/* ========================================================================== 
   v3.12.294 — Patient Dashboard True 100% Density Pass
   The previous 100% zoom cleanup normalized type, but several dashboard
   components still retained legacy oversized dimensions. This layer reduces
   dashboard-specific height/padding without changing other portal pages.
   ========================================================================== */

/* Desktop / laptop dashboard density. */
@media (min-width:761px){
  .mpwl-portal .mpwl-v254-hero-with-wheel,
  .mpwl-portal .mpwl-v254-goal-hero-with-wheel{
    padding:18px 20px!important;
    margin-bottom:12px!important;
    border-radius:18px!important;
  }
  .mpwl-portal .mpwl-v254-hero-layout,
  .mpwl-portal .mpwl-v254-goal-layout{
    grid-template-columns:minmax(0,1.6fr) minmax(260px,.58fr)!important;
    gap:18px!important;
  }
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-hero-top h2,
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-copy h2{
    font-size:27px!important;
    line-height:1.08!important;
    margin-bottom:5px!important;
  }
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-hero-top p,
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-copy p{
    font-size:13px!important;
    line-height:1.42!important;
  }
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-progress{margin-top:12px!important;}
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-hero-stats{margin-top:8px!important;gap:6px!important;}
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-hero-stats>div{min-height:46px!important;padding:7px 9px!important;border-radius:10px!important;}
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-next-strip{margin-top:8px!important;padding:8px 10px!important;border-radius:10px!important;}

  .mpwl-portal .mpwl-v254-hero-wheel-panel{max-width:300px!important;padding:2px 0!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head{margin-bottom:5px!important;max-width:280px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head small{font-size:9.5px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head strong{font-size:17px!important;margin-top:2px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head span{font-size:10.5px!important;line-height:1.3!important;margin-top:2px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel{width:270px!important;height:270px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-ring:after{inset:72px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-center{width:96px!important;height:96px!important;padding:4px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-center>span{bottom:-20px!important;font-size:8.5px!important;padding:3px 7px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action{width:78px!important;min-height:52px!important;gap:3px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-icon{width:25px!important;height:25px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-icon svg{width:22px!important;height:22px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action strong{font-size:9.5px!important;line-height:1.08!important;max-width:70px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action em{font-size:6.5px!important;padding:2px 5px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-1{top:10px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-2,
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-6{top:63px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-3,
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-5{bottom:47px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-4{bottom:7px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-2{right:9px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-6{left:9px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-3{right:11px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-5{left:11px!important;}

  .mpwl-portal .mpwl-v274-attention-promo-row{gap:14px!important;margin:12px 0 16px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-v190-quick-heading{margin:0 0 8px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-v190-quick-heading h3{font-size:18px!important;}
  .mpwl-portal .mpwl-v273-attention-grid{gap:10px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-next-step-card{padding:11px 12px!important;gap:10px!important;border-radius:14px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-next-step-icon{width:36px!important;height:36px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-next-step-copy h2{font-size:16px!important;margin:2px 0 3px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-next-step-copy p{font-size:13px!important;line-height:1.4!important;}
  .mpwl-portal .mpwl-v274-attention-actions{margin-top:10px!important;gap:7px!important;}
  .mpwl-portal .mpwl-v274-attention-actions .mpwl-btn{min-height:38px!important;padding:0 12px!important;font-size:12.5px!important;}

  .mpwl-portal .mpwl-v190-dashboard-grid{gap:12px!important;margin-top:12px!important;}
  .mpwl-portal .mpwl-v190-main-column,
  .mpwl-portal .mpwl-v190-side-column{gap:12px!important;}
  .mpwl-portal .mpwl-v190-dashboard-grid .mpwl-card{border-radius:16px!important;}
  .mpwl-portal .mpwl-v190-card-head{padding:12px 14px 0!important;}
  .mpwl-portal .mpwl-v190-card-head h3{font-size:16px!important;}
  .mpwl-portal .mpwl-v190-card-head a{font-size:12px!important;}
  .mpwl-portal .mpwl-v190-trend-body,
  .mpwl-portal .mpwl-v190-treatment-body,
  .mpwl-portal .mpwl-v190-appointment-body,
  .mpwl-portal .mpwl-v190-goal-body,
  .mpwl-portal .mpwl-v190-activity-body{padding:10px 14px 13px!important;}
  .mpwl-portal .mpwl-v190-trend-top>div strong{font-size:27px!important;}
  .mpwl-portal .mpwl-v190-chart-wrap{margin-top:8px!important;padding:5px 7px 2px!important;border-radius:12px!important;}
  .mpwl-portal .mpwl-v190-chart-wrap svg{height:100px!important;}
  .mpwl-portal .mpwl-v190-med-row{padding:10px 11px!important;border-radius:13px!important;}
  .mpwl-portal .mpwl-v190-med-row h3{font-size:17px!important;}
  .mpwl-portal .mpwl-v190-dose{min-width:76px!important;padding:8px!important;}
  .mpwl-portal .mpwl-v190-activity-row{padding:7px 0!important;}
  .mpwl-portal .mpwl-v190-visit-main{padding:9px!important;border-radius:12px!important;}
  .mpwl-portal .mpwl-v190-no-visit{padding:10px!important;border-radius:12px!important;}
  .mpwl-portal .mpwl-v190-contact-label{margin:8px 0 5px!important;}
  .mpwl-portal .mpwl-v190-contact-actions a{min-height:36px!important;}
  .mpwl-portal .mpwl-v198-calorie-card{margin:7px 0!important;padding:9px 10px!important;border-radius:12px!important;}
  .mpwl-portal .mpwl-v197-movement{margin-top:9px!important;padding-top:9px!important;}
  .mpwl-portal .mpwl-v197-movement-grid{gap:6px!important;}
  .mpwl-portal .mpwl-v197-movement-tile{padding:8px 9px!important;border-radius:11px!important;}
}

/* Tablet: keep the hero compact after it stacks. */
@media (max-width:1180px) and (min-width:761px){
  .mpwl-portal .mpwl-v254-hero-layout,
  .mpwl-portal .mpwl-v254-goal-layout{gap:10px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel{max-width:290px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel{width:260px!important;height:260px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-ring:after{inset:69px!important;}
}

/* Phone: compact cards/hero while preserving 16px form inputs. */
@media (max-width:760px){
  .mpwl-portal .mpwl-v254-hero-with-wheel,
  .mpwl-portal .mpwl-v254-goal-hero-with-wheel{
    padding:13px 11px 12px!important;
    margin-bottom:8px!important;
    border-radius:14px!important;
  }
  .mpwl-portal .mpwl-v254-hero-layout,
  .mpwl-portal .mpwl-v254-goal-layout{gap:8px!important;}
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-hero-top h2,
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-copy h2{
    font-size:22px!important;
    line-height:1.1!important;
    margin-bottom:4px!important;
  }
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-hero-top p,
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-copy p{font-size:12.5px!important;line-height:1.4!important;}
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-progress{margin-top:10px!important;}
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-hero-stats{margin-top:7px!important;gap:5px!important;}
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-hero-stats>div{min-height:43px!important;padding:6px 7px!important;border-radius:9px!important;}
  .mpwl-portal .mpwl-v254-hero-main .mpwl-v190-next-strip{margin-top:7px!important;padding:7px 8px!important;}

  .mpwl-portal .mpwl-v254-hero-wheel-panel{max-width:260px!important;padding:2px 0 0!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head{margin-bottom:3px!important;padding:0 5px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head small{font-size:8.5px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head strong{font-size:15px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head span{font-size:9.5px!important;line-height:1.28!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel{width:244px!important;height:244px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-ring:after{inset:65px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-center{width:84px!important;height:84px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-center>span{bottom:-18px!important;font-size:7.5px!important;padding:3px 6px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action{width:70px!important;min-height:47px!important;gap:2px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-icon{width:22px!important;height:22px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-icon svg{width:20px!important;height:20px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action strong{font-size:8.5px!important;line-height:1.08!important;max-width:62px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action em{font-size:5.8px!important;padding:1px 4px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-1{top:8px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-2,
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-6{top:57px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-3,
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-5{bottom:42px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-4{bottom:6px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-2{right:7px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-6{left:7px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-3{right:9px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-action.wheel-5{left:9px!important;}

  .mpwl-portal .mpwl-v274-attention-promo-row{gap:10px!important;margin:10px 0 12px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-v190-quick-heading{margin:0 0 6px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-v190-quick-heading h3{font-size:16px!important;}
  .mpwl-portal .mpwl-v273-attention-grid{gap:8px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-next-step-card{padding:10px!important;gap:9px!important;border-radius:12px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-next-step-icon{width:34px!important;height:34px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-next-step-copy h2{font-size:15px!important;}
  .mpwl-portal .mpwl-v273-attention .mpwl-next-step-copy p{font-size:12.5px!important;line-height:1.38!important;}
  .mpwl-portal .mpwl-v274-attention-actions{margin-top:8px!important;gap:6px!important;}
  .mpwl-portal .mpwl-v274-attention-actions .mpwl-btn{min-height:38px!important;font-size:12.5px!important;}

  .mpwl-portal .mpwl-v190-dashboard-grid{gap:8px!important;margin-top:8px!important;}
  .mpwl-portal .mpwl-v190-dashboard-grid .mpwl-card{border-radius:13px!important;}
  .mpwl-portal .mpwl-v190-card-head{padding:10px 11px 0!important;}
  .mpwl-portal .mpwl-v190-card-head h3{font-size:15px!important;}
  .mpwl-portal .mpwl-v190-card-head a{font-size:11.5px!important;}
  .mpwl-portal .mpwl-v190-trend-body,
  .mpwl-portal .mpwl-v190-treatment-body,
  .mpwl-portal .mpwl-v190-appointment-body,
  .mpwl-portal .mpwl-v190-goal-body,
  .mpwl-portal .mpwl-v190-activity-body{padding:9px 11px 11px!important;}
  .mpwl-portal .mpwl-v190-trend-top>div strong{font-size:24px!important;}
  .mpwl-portal .mpwl-v190-chart-wrap{margin-top:7px!important;padding:4px 6px 2px!important;border-radius:10px!important;}
  .mpwl-portal .mpwl-v190-chart-wrap svg{height:82px!important;}
  .mpwl-portal .mpwl-v190-med-row{padding:9px!important;border-radius:11px!important;}
  .mpwl-portal .mpwl-v190-med-row h3{font-size:16px!important;}
  .mpwl-portal .mpwl-v190-dose{min-width:70px!important;padding:7px!important;}
  .mpwl-portal .mpwl-v190-activity-row{padding:6px 0!important;}
  .mpwl-portal .mpwl-v190-visit-main{padding:8px!important;border-radius:10px!important;}
  .mpwl-portal .mpwl-v190-no-visit{padding:9px!important;border-radius:10px!important;}
  .mpwl-portal .mpwl-v190-contact-actions{gap:5px!important;}
  .mpwl-portal .mpwl-v190-contact-actions a{min-height:36px!important;font-size:11.5px!important;}
  .mpwl-portal .mpwl-v198-calorie-card{margin:6px 0!important;padding:8px 9px!important;border-radius:10px!important;}
  .mpwl-portal .mpwl-v198-calorie-icon{width:36px!important;height:36px!important;font-size:16px!important;}
  .mpwl-portal .mpwl-v198-calorie-card{grid-template-columns:36px minmax(0,1fr)!important;gap:8px!important;}
  .mpwl-portal .mpwl-v198-calorie-copy>strong{font-size:18px!important;}
  .mpwl-portal .mpwl-v198-activity-button{min-height:38px!important;}
  .mpwl-portal .mpwl-v197-movement{margin-top:7px!important;padding-top:7px!important;}
  .mpwl-portal .mpwl-v197-movement-head{margin-bottom:6px!important;}
  .mpwl-portal .mpwl-v197-movement-grid{gap:6px!important;}
  .mpwl-portal .mpwl-v197-movement-tile{padding:7px 8px!important;border-radius:10px!important;grid-template-columns:32px minmax(0,1fr)!important;gap:8px!important;}
  .mpwl-portal .mpwl-v197-movement-tile>span{width:32px!important;height:32px!important;}
}

@media (max-width:390px){
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel{width:232px!important;height:232px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel .mpwl-dashboard-wheel-ring:after{inset:62px!important;}
}

/* ========================================================================== 
   v3.12.295 — Mobile-first patient dashboard quick access + Weight Trend
   Mobile is the source layout. Desktop adapts from it secondarily.
   ========================================================================== */

/* Mobile-first Quick Access. The circular wheel is desktop-only now. */
.mpwl-portal .mpwl-v254-hero-wheel-panel{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  padding:5px 0 0!important;
}
.mpwl-portal .mpwl-v254-hero-wheel-head{
  max-width:none!important;
  margin:0 0 8px!important;
  padding:0!important;
  text-align:left!important;
}
.mpwl-portal .mpwl-v254-hero-wheel-head small{
  font-size:9px!important;
  line-height:1.2!important;
  letter-spacing:.13em!important;
}
.mpwl-portal .mpwl-v254-hero-wheel-head strong{
  margin-top:3px!important;
  font-size:16px!important;
  line-height:1.15!important;
}
.mpwl-portal .mpwl-v254-hero-wheel-head span{
  margin-top:3px!important;
  font-size:11px!important;
  line-height:1.35!important;
}
.mpwl-portal .mpwl-v295-mobile-quick-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  width:100%;
}
.mpwl-portal .mpwl-v295-mobile-quick-action{
  position:relative;
  min-width:0;
  min-height:62px;
  display:grid;
  grid-template-columns:31px minmax(0,1fr) 12px;
  gap:7px;
  align-items:center;
  box-sizing:border-box;
  padding:9px 8px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:12px;
  background:rgba(255,255,255,.94);
  color:#173f51!important;
  text-decoration:none!important;
  box-shadow:0 4px 12px rgba(6,44,62,.10);
}
.mpwl-portal .mpwl-v295-mobile-quick-action.is-followup{
  background:#fff6bf;
  border-color:#e4cc5e;
}
.mpwl-portal .mpwl-v295-mobile-quick-icon{
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  color:#087f96;
}
.mpwl-portal .mpwl-v295-mobile-quick-action.is-followup .mpwl-v295-mobile-quick-icon{color:#685500;}
.mpwl-portal .mpwl-v295-mobile-quick-icon svg{
  display:block;
  width:25px;
  height:25px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.85;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.mpwl-portal .mpwl-v295-mobile-quick-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
}
.mpwl-portal .mpwl-v295-mobile-quick-copy strong{
  width:100%;
  font-size:12.5px!important;
  line-height:1.15!important;
  font-weight:850!important;
  letter-spacing:-.01em;
  color:inherit!important;
  text-align:left!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.mpwl-portal .mpwl-v295-mobile-quick-copy em{
  display:inline-flex;
  align-items:center;
  min-height:16px;
  padding:1px 5px;
  border-radius:999px;
  background:#756100;
  color:#fff;
  font-size:7px!important;
  line-height:1!important;
  font-style:normal;
  font-weight:900;
  letter-spacing:.06em;
}
.mpwl-portal .mpwl-v295-mobile-quick-arrow{
  font-size:20px;
  line-height:1;
  color:#7d99a5;
  justify-self:end;
}
.mpwl-portal .mpwl-v254-hero-wheel-panel>.mpwl-dashboard-wheel{display:none!important;}

/* Mobile-first Weight Trend card. */
.mpwl-portal .mpwl-v295-trend-card{
  border-radius:14px!important;
  overflow:hidden!important;
}
.mpwl-portal .mpwl-v295-trend-head{
  display:block!important;
  padding:11px 12px 0!important;
}
.mpwl-portal .mpwl-v295-trend-head h3{
  margin:0!important;
  font-size:15px!important;
  line-height:1.2!important;
}
.mpwl-portal .mpwl-v295-trend-head .mpwl-v193-freshness{
  margin-top:3px!important;
  font-size:10.5px!important;
  line-height:1.3!important;
  font-weight:750!important;
}
.mpwl-portal .mpwl-v295-trend-body{
  padding:9px 12px 11px!important;
}
.mpwl-portal .mpwl-v295-trend-summary{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(105px,.75fr);
  gap:8px;
  align-items:end;
}
.mpwl-portal .mpwl-v295-trend-current,
.mpwl-portal .mpwl-v295-trend-loss{min-width:0;}
.mpwl-portal .mpwl-v295-trend-current small,
.mpwl-portal .mpwl-v295-trend-loss small{
  display:block;
  margin-bottom:3px;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.08em;
  color:#738895!important;
}
.mpwl-portal .mpwl-v295-trend-current strong{
  display:block;
  font-size:29px!important;
  line-height:1!important;
  letter-spacing:-.045em!important;
  color:#163f50!important;
}
.mpwl-portal .mpwl-v295-trend-current strong span{
  font-size:12px!important;
  letter-spacing:0!important;
  color:#6d8292!important;
  font-weight:750!important;
}
.mpwl-portal .mpwl-v295-trend-loss{
  padding:8px 9px;
  border:1px solid #d8eee3;
  border-radius:10px;
  background:#eef8f2;
}
.mpwl-portal .mpwl-v295-trend-loss strong{
  display:block;
  font-size:14px!important;
  line-height:1.2!important;
  color:#1f7d5f!important;
}
.mpwl-portal .mpwl-v295-trend-card.is-stale .mpwl-v190-trend-top>div:after{
  content:none!important;
  display:none!important;
}
.mpwl-portal .mpwl-v295-trend-card .mpwl-v190-chart-wrap{
  margin-top:9px!important;
  padding:6px 6px 5px!important;
  border-radius:10px!important;
  background:#f8fbfd!important;
}
.mpwl-portal .mpwl-v295-trend-card .mpwl-v190-chart-wrap svg{
  height:92px!important;
}
.mpwl-portal .mpwl-v295-trend-card .mpwl-v190-chart-labels{
  padding:2px 2px 0!important;
  font-size:9px!important;
  line-height:1.2!important;
}
.mpwl-portal .mpwl-v295-trend-card .mpwl-v190-chart-selected{
  margin-top:6px!important;
  padding:7px 2px 0!important;
  border:0!important;
  border-top:1px solid #e3edf2!important;
  border-radius:0!important;
  background:transparent!important;
  color:#34586b!important;
  font-size:11.5px!important;
  line-height:1.3!important;
  font-weight:800!important;
}
.mpwl-portal .mpwl-v295-trend-card .mpwl-v190-chart-note{
  padding:3px 2px 0!important;
  text-align:left!important;
  font-size:9.5px!important;
  line-height:1.25!important;
  color:#82939d!important;
  font-weight:650!important;
}
.mpwl-portal .mpwl-v295-trend-footer-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:38px;
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid #e6eef2;
  color:#2f83b5!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:850!important;
  text-decoration:none!important;
}

/* Desktop/tablet adaptation from the mobile-first source layout. */
@media (min-width:761px){
  .mpwl-portal .mpwl-v295-mobile-quick-grid{display:none!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel>.mpwl-dashboard-wheel{display:block!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-panel{max-width:300px!important;padding:2px 0!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head{text-align:center!important;margin-bottom:5px!important;max-width:280px!important;margin-left:auto!important;margin-right:auto!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head small{font-size:9.5px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head strong{font-size:17px!important;}
  .mpwl-portal .mpwl-v254-hero-wheel-head span{font-size:10.5px!important;}

  .mpwl-portal .mpwl-v295-trend-head{padding:12px 14px 0!important;}
  .mpwl-portal .mpwl-v295-trend-head h3{font-size:16px!important;}
  .mpwl-portal .mpwl-v295-trend-head .mpwl-v193-freshness{font-size:11px!important;}
  .mpwl-portal .mpwl-v295-trend-body{padding:10px 14px 12px!important;}
  .mpwl-portal .mpwl-v295-trend-summary{grid-template-columns:minmax(0,1fr) 135px;gap:12px;}
  .mpwl-portal .mpwl-v295-trend-current strong{font-size:31px!important;}
  .mpwl-portal .mpwl-v295-trend-loss{padding:8px 10px;}
  .mpwl-portal .mpwl-v295-trend-card .mpwl-v190-chart-wrap svg{height:108px!important;}
  .mpwl-portal .mpwl-v295-trend-footer-link{justify-content:flex-end;gap:7px;min-height:30px;font-size:11.5px!important;}
}

@media (max-width:390px){
  .mpwl-portal .mpwl-v295-mobile-quick-grid{gap:6px;}
  .mpwl-portal .mpwl-v295-mobile-quick-action{grid-template-columns:28px minmax(0,1fr) 10px;gap:6px;min-height:58px;padding:8px 7px;}
  .mpwl-portal .mpwl-v295-mobile-quick-icon{width:28px;height:28px;}
  .mpwl-portal .mpwl-v295-mobile-quick-icon svg{width:23px;height:23px;}
  .mpwl-portal .mpwl-v295-mobile-quick-copy strong{font-size:11.5px!important;}
  .mpwl-portal .mpwl-v295-trend-summary{grid-template-columns:minmax(0,1.2fr) minmax(96px,.8fr);}
  .mpwl-portal .mpwl-v295-trend-current strong{font-size:27px!important;}
}


/* ========================================================================== 
   v3.12.296 — Weight Trend graph rebuild
   Responsive graph geometry is percentage-based so the line may stretch while
   interactive points stay circular and readable on phones and desktop.
   ========================================================================== */
.mpwl-portal .mpwl-v295-trend-card .mpwl-v296-chart-wrap{
  margin-top:9px!important;
  padding:7px 8px 7px!important;
  overflow:visible!important;
  border:1px solid #deebf1!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,#f8fcfe 0%,#ffffff 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.mpwl-portal .mpwl-v296-chart-plot{
  position:relative;
  width:100%;
  height:96px;
}
.mpwl-portal .mpwl-v296-chart-plot svg{
  display:block!important;
  width:100%!important;
  height:100%!important;
  overflow:visible!important;
}
.mpwl-portal .mpwl-v296-gridline{
  fill:none;
  stroke:#e6eff4;
  stroke-width:.65;
  vector-effect:non-scaling-stroke;
}
.mpwl-portal .mpwl-v296-chart-area{fill:url(#mpwlV296Area)!important;}
.mpwl-portal .mpwl-v296-chart-line{
  fill:none!important;
  stroke:#168bc4!important;
  stroke-width:3!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke;
}
.mpwl-portal .mpwl-v296-chart-points{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.mpwl-portal .mpwl-v296-chart-point-button{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:absolute!important;
  left:var(--x)!important;
  top:var(--y)!important;
  width:13px!important;
  height:13px!important;
  min-width:13px!important;
  min-height:13px!important;
  margin:0!important;
  padding:0!important;
  transform:translate(-50%,-50%)!important;
  border:3px solid #168bc4!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 2px 7px rgba(22,139,196,.14)!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  z-index:2!important;
}
.mpwl-portal .mpwl-v296-chart-point-button:hover,
.mpwl-portal .mpwl-v296-chart-point-button:focus-visible{
  outline:none!important;
  box-shadow:0 0 0 4px rgba(22,139,196,.13),0 2px 8px rgba(22,139,196,.20)!important;
}
.mpwl-portal .mpwl-v296-chart-point-button.is-selected{
  width:15px!important;
  height:15px!important;
  min-width:15px!important;
  min-height:15px!important;
  background:#168bc4!important;
  border-color:#fff!important;
  box-shadow:0 0 0 3px rgba(22,139,196,.18),0 3px 9px rgba(22,139,196,.24)!important;
  z-index:4!important;
}
.mpwl-portal .mpwl-v296-chart-point-button.is-selected::after{
  content:attr(data-weight) " lb";
  position:absolute;
  left:50%;
  bottom:calc(100% + 8px);
  transform:translateX(-50%);
  display:block;
  padding:4px 7px;
  border:1px solid #d5e9f3;
  border-radius:8px;
  background:#fff;
  box-shadow:0 4px 12px rgba(24,78,105,.10);
  color:#18465c;
  font-size:10px;
  line-height:1;
  font-weight:900;
  white-space:nowrap;
}
.mpwl-portal .mpwl-v296-chart-point-button.is-first.is-selected::after{
  left:-2px;
  transform:none;
}
.mpwl-portal .mpwl-v296-chart-point-button.is-last.is-selected::after{
  left:auto;
  right:-2px;
  transform:none;
}
.mpwl-portal .mpwl-v296-chart-labels{
  padding:1px 3px 0!important;
  font-size:9.5px!important;
  line-height:1.2!important;
  color:#8396a1!important;
}
.mpwl-portal .mpwl-v296-chart-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-top:4px;
  padding:6px 2px 0;
  border-top:1px solid #edf3f6;
}
.mpwl-portal .mpwl-v296-chart-detail{
  display:flex;
  align-items:baseline;
  gap:5px;
  min-width:0;
  color:#476878;
  font-size:10.5px;
  line-height:1.2;
}
.mpwl-portal .mpwl-v296-chart-detail strong{
  color:#173f51!important;
  font-size:11.5px!important;
  line-height:1.2!important;
}
.mpwl-portal .mpwl-v296-chart-help{
  color:#8798a1!important;
  font-size:9px!important;
  line-height:1.2!important;
  text-align:right;
}
/* Retire the older in-SVG value-label / selected-bar treatment for this chart. */
.mpwl-portal .mpwl-v296-chart-wrap .mpwl-v190-chart-value,
.mpwl-portal .mpwl-v296-chart-wrap .mpwl-v190-chart-selected,
.mpwl-portal .mpwl-v296-chart-wrap .mpwl-v190-chart-note{display:none!important;}

@media (max-width:390px){
  .mpwl-portal .mpwl-v296-chart-plot{height:90px;}
  .mpwl-portal .mpwl-v296-chart-meta{align-items:flex-start;flex-direction:column;gap:2px;}
  .mpwl-portal .mpwl-v296-chart-help{text-align:left;}
}

@media (min-width:761px){
  .mpwl-portal .mpwl-v295-trend-card .mpwl-v296-chart-wrap{padding:9px 10px 8px!important;}
  .mpwl-portal .mpwl-v296-chart-plot{height:118px;}
  .mpwl-portal .mpwl-v296-chart-line{stroke-width:3.25!important;}
  .mpwl-portal .mpwl-v296-chart-point-button{width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;}
  .mpwl-portal .mpwl-v296-chart-point-button.is-selected{width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;}
  .mpwl-portal .mpwl-v296-chart-labels{font-size:10px!important;}
  .mpwl-portal .mpwl-v296-chart-detail{font-size:11px;}
  .mpwl-portal .mpwl-v296-chart-detail strong{font-size:12px!important;}
}

/* ========================================================================== 
   v3.12.298 — Patient dashboard desktop adaptation fix
   Mobile remains the source layout. Desktop now adapts the same Quick Access
   grid instead of resurrecting the oversized circular wheel.
   ========================================================================== */

/* The wheel is retired from the dashboard at every breakpoint. */
.mpwl-portal .mpwl-v254-hero-wheel-panel>.mpwl-dashboard-wheel{
  display:none!important;
}

@media (min-width:761px){
  /* Desktop uses the same quick-action information architecture as mobile. */
  .mpwl-portal .mpwl-v295-mobile-quick-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .mpwl-portal .mpwl-v254-hero-wheel-panel{
    width:100%!important;
    max-width:390px!important;
    align-self:start!important;
    justify-self:end!important;
    margin:0!important;
    padding:2px 0 0!important;
  }
  .mpwl-portal .mpwl-v254-hero-wheel-head{
    max-width:none!important;
    margin:0 0 9px!important;
    padding:0!important;
    text-align:left!important;
  }
  .mpwl-portal .mpwl-v254-hero-wheel-head small{
    font-size:9px!important;
    line-height:1.2!important;
    letter-spacing:.13em!important;
  }
  .mpwl-portal .mpwl-v254-hero-wheel-head strong{
    margin-top:2px!important;
    font-size:16px!important;
    line-height:1.15!important;
  }
  .mpwl-portal .mpwl-v254-hero-wheel-head span{
    margin-top:2px!important;
    font-size:10.5px!important;
    line-height:1.3!important;
  }
  .mpwl-portal .mpwl-v295-mobile-quick-action{
    min-height:58px!important;
    grid-template-columns:30px minmax(0,1fr) 10px!important;
    gap:7px!important;
    padding:8px 9px!important;
    border-radius:11px!important;
    box-shadow:0 4px 12px rgba(6,44,62,.09)!important;
  }
  .mpwl-portal .mpwl-v295-mobile-quick-icon{
    width:30px!important;
    height:30px!important;
  }
  .mpwl-portal .mpwl-v295-mobile-quick-icon svg{
    width:24px!important;
    height:24px!important;
  }
  .mpwl-portal .mpwl-v295-mobile-quick-copy strong{
    font-size:12.5px!important;
    line-height:1.12!important;
  }

  /* Rebalance the milestone hero after removing the 270px wheel. */
  .mpwl-portal .mpwl-v254-hero-layout,
  .mpwl-portal .mpwl-v254-goal-layout{
    grid-template-columns:minmax(0,1fr) minmax(330px,390px)!important;
    gap:20px!important;
    align-items:start!important;
  }
  .mpwl-portal .mpwl-v254-hero-with-wheel,
  .mpwl-portal .mpwl-v254-goal-hero-with-wheel{
    padding:16px 18px!important;
    margin-bottom:12px!important;
  }
  .mpwl-portal .mpwl-v254-goal-hero-with-wheel .mpwl-dashboard-hero-sparkles,
  .mpwl-portal .mpwl-v254-hero-with-wheel .mpwl-dashboard-hero-sparkles{
    display:none!important;
  }

  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-copy>small{
    margin-bottom:5px!important;
    font-size:10px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-copy h2{
    margin-bottom:4px!important;
    font-size:25px!important;
    line-height:1.08!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-copy p{
    font-size:12.5px!important;
    line-height:1.4!important;
  }
  .mpwl-portal .mpwl-dashboard-hero-actions{
    gap:7px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-progress-link{
    min-height:38px!important;
    height:38px!important;
    padding:0 12px!important;
    border-radius:10px!important;
    font-size:12px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-progress{
    margin-top:12px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-progress-head{
    margin-bottom:6px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-progress-head strong{
    font-size:15px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-progress-head span{
    font-size:11px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-track{
    height:8px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-pills{
    gap:7px!important;
    margin-top:9px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-pill{
    min-height:50px!important;
    padding:7px 8px!important;
    gap:7px!important;
    border-radius:10px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-pill>span{
    width:29px!important;
    height:29px!important;
    flex-basis:29px!important;
    font-size:15px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-pill small{
    font-size:8.5px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-pill strong{
    margin-top:2px!important;
    font-size:12.5px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-coach{
    margin-top:8px!important;
    padding:8px 10px!important;
    gap:8px!important;
    border-radius:10px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-coach>span{
    font-size:16px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-coach strong{
    font-size:10.5px!important;
  }
  .mpwl-portal .mpwl-v254-goal-main .mpwl-dashboard-hero-coach p{
    margin-top:2px!important;
    font-size:12px!important;
    line-height:1.35!important;
  }
}

/* Mid-size tablet / small laptop: stack cleanly rather than squeezing the desktop panel. */
@media (min-width:761px) and (max-width:1040px){
  .mpwl-portal .mpwl-v254-hero-layout,
  .mpwl-portal .mpwl-v254-goal-layout{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .mpwl-portal .mpwl-v254-hero-wheel-panel{
    max-width:none!important;
    justify-self:stretch!important;
  }
  .mpwl-portal .mpwl-v295-mobile-quick-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

/* ========================================================================== 
   v3.12.299 — Dashboard care-team messages under Needs Your Attention
   Mobile source order: attention -> messages -> education/news slider.
   Desktop uses the same structure and lets Messages fill the former dead space.
   ========================================================================== */
.mpwl-portal .mpwl-v299-attention-messages-column{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.mpwl-portal .mpwl-v299-attention-messages-column .mpwl-v273-attention{margin:0!important;}
.mpwl-portal .mpwl-v299-dashboard-messages{
  margin:0!important;
  padding:14px!important;
  border-radius:16px!important;
  min-width:0;
}
.mpwl-portal .mpwl-v299-dashboard-messages-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.mpwl-portal .mpwl-v299-dashboard-messages-head>div:first-child{min-width:0;}
.mpwl-portal .mpwl-v299-dashboard-messages-head small{
  display:block;
  margin:0 0 2px;
  color:#6e8299;
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  line-height:1.2;
}
.mpwl-portal .mpwl-v299-dashboard-messages-head h3{
  margin:0!important;
  color:#142c4a;
  font-size:18px!important;
  line-height:1.18!important;
}
.mpwl-portal .mpwl-v299-dashboard-messages-head-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.mpwl-portal .mpwl-v299-dashboard-messages-head-actions>a{
  color:#1765bf;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
  text-decoration:none;
  white-space:nowrap;
}
.mpwl-portal .mpwl-v299-unread-pill,
.mpwl-portal .mpwl-v299-read-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:4px 8px;
  border-radius:999px;
  font-size:10px;
  font-style:normal;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
.mpwl-portal .mpwl-v299-unread-pill{background:#e8f2ff;color:#125bad;border:1px solid #c9def7;}
.mpwl-portal .mpwl-v299-read-pill{background:#edf8f3;color:#23785c;border:1px solid #d1ecdf;}
.mpwl-portal .mpwl-v299-message-list{display:grid;gap:7px;}
.mpwl-portal .mpwl-v299-message-row{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 12px;
  align-items:center;
  gap:9px;
  min-width:0;
  padding:9px 10px;
  border:1px solid #dbe6f0;
  border-radius:12px;
  background:#fff;
  color:#173652;
  text-decoration:none!important;
  transition:border-color .15s ease,background .15s ease,transform .15s ease;
}
.mpwl-portal .mpwl-v299-message-row:hover,
.mpwl-portal .mpwl-v299-message-row:focus-visible{border-color:#9fc6ed;background:#f7fbff;transform:translateY(-1px);}
.mpwl-portal .mpwl-v299-message-row.is-unread{border-color:#a9cef5;background:#f5faff;box-shadow:inset 3px 0 0 #1a70c9;}
.mpwl-portal .mpwl-v299-message-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:10px;
  background:#eef6fd;
  color:#1765b6;
  font-size:15px;
}
.mpwl-portal .mpwl-v299-message-copy{display:block;min-width:0;}
.mpwl-portal .mpwl-v299-message-titleline{display:flex;align-items:center;gap:7px;min-width:0;}
.mpwl-portal .mpwl-v299-message-titleline strong{
  min-width:0;
  overflow:hidden;
  color:#173652;
  font-size:13px;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.mpwl-portal .mpwl-v299-message-titleline em{
  flex:0 0 auto;
  padding:2px 5px;
  border-radius:999px;
  background:#1668c5;
  color:#fff;
  font-size:8px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.05em;
  line-height:1.2;
}
.mpwl-portal .mpwl-v299-message-preview{
  display:block;
  min-width:0;
  margin-top:2px;
  overflow:hidden;
  color:#5d738b;
  font-size:11.5px;
  line-height:1.3;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.mpwl-portal .mpwl-v299-message-copy>small{
  display:block;
  margin-top:3px;
  color:#8595a6;
  font-size:9.5px;
  font-weight:700;
  line-height:1.2;
}
.mpwl-portal .mpwl-v299-message-arrow{color:#6c90b4;font-size:20px;font-weight:700;line-height:1;}
.mpwl-portal .mpwl-v299-message-empty{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:96px;
  padding:14px;
  border:1px dashed #cedbe7;
  border-radius:12px;
  background:#f8fafc;
}
.mpwl-portal .mpwl-v299-message-empty>span{font-size:22px;color:#6688a8;}
.mpwl-portal .mpwl-v299-message-empty strong{display:block;color:#1b3854;font-size:13px;line-height:1.2;}
.mpwl-portal .mpwl-v299-message-empty p{margin:3px 0 0!important;color:#708499;font-size:11.5px!important;line-height:1.35!important;}

@media (min-width:761px){
  .mpwl-portal .mpwl-v299-attention-messages-row{align-items:stretch!important;}
  .mpwl-portal .mpwl-v299-attention-messages-column{align-self:stretch;}
  .mpwl-portal .mpwl-v299-dashboard-messages{flex:1 1 auto;min-height:210px;}
}

@media (max-width:760px){
  .mpwl-portal .mpwl-v299-attention-messages-row{grid-template-columns:1fr!important;gap:10px!important;}
  .mpwl-portal .mpwl-v299-attention-messages-column{gap:10px;}
  .mpwl-portal .mpwl-v299-dashboard-messages{padding:11px!important;border-radius:14px!important;min-height:0;}
  .mpwl-portal .mpwl-v299-dashboard-messages-head{align-items:center;margin-bottom:8px;}
  .mpwl-portal .mpwl-v299-dashboard-messages-head h3{font-size:16px!important;}
  .mpwl-portal .mpwl-v299-dashboard-messages-head-actions{gap:6px;}
  .mpwl-portal .mpwl-v299-dashboard-messages-head-actions>a{font-size:11px;}
  .mpwl-portal .mpwl-v299-message-list{gap:6px;}
  .mpwl-portal .mpwl-v299-message-row{grid-template-columns:32px minmax(0,1fr) 10px;gap:8px;padding:8px 9px;border-radius:11px;}
  .mpwl-portal .mpwl-v299-message-icon{width:32px;height:32px;border-radius:9px;font-size:14px;}
  .mpwl-portal .mpwl-v299-message-titleline strong{font-size:12.5px;}
  .mpwl-portal .mpwl-v299-message-preview{font-size:11px;}
  .mpwl-portal .mpwl-v299-message-copy>small{font-size:9px;}
  .mpwl-portal .mpwl-v274-promo-column{grid-row:auto!important;}
}

/* v3.12.301 — Shared 4-column patient form history + care feedback */
.mpwl-portal .mpwl-v301-form-history-card{
  padding:0!important;
  overflow:hidden;
}
.mpwl-portal .mpwl-v301-form-records{display:grid;}
.mpwl-portal .mpwl-v301-form-record{
  display:grid;
  grid-template-columns:minmax(120px,.7fr) minmax(170px,1fr) minmax(280px,2.1fr) minmax(145px,.8fr);
  align-items:center;
  gap:0;
  min-width:0;
  border-top:1px solid #e2eaf2;
  background:#fff;
}
.mpwl-portal .mpwl-v301-form-record:first-child{border-top:0;}
.mpwl-portal .mpwl-v301-form-record>div{
  min-width:0;
  padding:15px 18px;
}
.mpwl-portal .mpwl-v301-form-record-head{
  background:#f3f7fb;
  color:#536b82;
  font-size:11px;
  font-weight:900;
  letter-spacing:.065em;
  text-transform:uppercase;
}
.mpwl-portal .mpwl-v301-form-record-head>div{padding-top:11px;padding-bottom:11px;}
.mpwl-portal .mpwl-v301-form-record small{
  display:none;
  margin:0 0 4px;
  color:#72879b;
  font-size:9px;
  font-weight:900;
  letter-spacing:.07em;
  line-height:1.15;
  text-transform:uppercase;
}
.mpwl-portal .mpwl-v301-form-date strong,
.mpwl-portal .mpwl-v301-form-name strong,
.mpwl-portal .mpwl-v301-form-feedback strong{
  display:block;
  color:#173954;
  font-size:13px;
  font-weight:800;
  line-height:1.25;
}
.mpwl-portal .mpwl-v301-form-date span,
.mpwl-portal .mpwl-v301-form-feedback span{
  display:block;
  margin-top:4px;
  color:#687e93;
  font-size:11px;
  line-height:1.35;
}
.mpwl-portal .mpwl-v301-form-feedback em{
  display:block;
  margin-top:4px;
  color:#8797a7;
  font-size:9.5px;
  font-style:normal;
  font-weight:700;
}
.mpwl-portal .mpwl-v301-form-feedback.is-sent strong{color:#176c52;}
.mpwl-portal .mpwl-v301-form-feedback.is-reviewing strong{color:#1466ad;}
.mpwl-portal .mpwl-v301-form-feedback.is-followup strong{color:#a45a13;}
.mpwl-portal .mpwl-v301-form-feedback.is-pending strong{color:#6b7784;}
.mpwl-portal .mpwl-v301-form-feedback.is-reviewed strong{color:#365f78;}
.mpwl-portal .mpwl-v301-form-action a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#0b5fc3;
  font-size:12px;
  font-weight:850;
  line-height:1.25;
  text-decoration:none!important;
}
.mpwl-portal .mpwl-v301-form-action a:hover{text-decoration:underline!important;}
.mpwl-portal .mpwl-v301-care-feedback-section{margin-top:28px;}

@media (max-width:760px){
  .mpwl-portal .mpwl-v301-form-history-card{
    padding:0!important;
    overflow:visible;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .mpwl-portal .mpwl-v301-form-records{gap:9px;}
  .mpwl-portal .mpwl-v301-form-record-head{display:none!important;}
  .mpwl-portal .mpwl-v301-form-record{
    grid-template-columns:92px minmax(0,1fr);
    align-items:start;
    border:1px solid #d8e4ee!important;
    border-radius:13px;
    background:#fff;
    overflow:hidden;
    box-shadow:0 3px 12px rgba(28,65,96,.05);
  }
  .mpwl-portal .mpwl-v301-form-record>div{padding:11px 12px;}
  .mpwl-portal .mpwl-v301-form-record small{display:block;}
  .mpwl-portal .mpwl-v301-form-date{border-right:1px solid #e5edf4;}
  .mpwl-portal .mpwl-v301-form-date strong{font-size:12px;}
  .mpwl-portal .mpwl-v301-form-date span{font-size:10px;}
  .mpwl-portal .mpwl-v301-form-name strong{font-size:13px;}
  .mpwl-portal .mpwl-v301-form-feedback{
    grid-column:1/-1;
    border-top:1px solid #e5edf4;
    background:#fbfdff;
  }
  .mpwl-portal .mpwl-v301-form-feedback strong{font-size:12.5px;}
  .mpwl-portal .mpwl-v301-form-feedback span{font-size:11px;}
  .mpwl-portal .mpwl-v301-form-action{
    grid-column:1/-1;
    padding-top:9px!important;
    padding-bottom:10px!important;
    border-top:1px solid #e5edf4;
  }
  .mpwl-portal .mpwl-v301-form-action a{
    justify-content:space-between;
    width:100%;
    min-height:28px;
    font-size:12px;
  }
  .mpwl-portal .mpwl-v301-care-feedback-section{margin-top:22px;}
}


/* v3.12.302 — Patient appointment scheduler/reschedule attribution */
.mpwl-v302-appointment-audit{display:grid;gap:8px;margin:12px 0 2px;padding:10px 12px;background:#f7f9fc;border:1px solid #e3e9f2;border-radius:10px}
.mpwl-v302-appointment-audit-row{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:start;color:#526175}
.mpwl-v302-appointment-audit-row+.mpwl-v302-appointment-audit-row{padding-top:8px;border-top:1px solid #e5eaf1}
.mpwl-v302-appointment-audit-icon{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#eaf3ff;color:#2868b2;font-size:13px;font-weight:900;line-height:1}
.mpwl-v302-appointment-audit-row.is-rescheduled .mpwl-v302-appointment-audit-icon{background:#fff2df;color:#a55d00}
.mpwl-v302-appointment-audit-row p{margin:0;font-size:13px;line-height:1.45}
.mpwl-v302-appointment-audit-row p strong{color:#263a53}
.mpwl-v302-appointment-audit-row small{display:block;margin-top:3px;font-size:12px;line-height:1.4;color:#718096}
@media (min-width:761px){.mpwl-v302-appointment-audit{padding:11px 14px}.mpwl-v302-appointment-audit-row p{font-size:13.5px}}
