:root{--mp-blue:#0b4fb3;--mp-blue2:#1468d8;--mp-bg:#f4f7fb;--mp-text:#12203a;--mp-muted:#6d7b91;--mp-border:#dbe4ef;--mp-green:#1eaa59;--mp-red:#c63a3a;--mp-warn:#b36b00}.mpwl-portal{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:760px;background:var(--mp-bg);color:var(--mp-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;border:1px solid var(--mp-border);border-radius:18px;overflow:hidden}.mpwl-sidebar{background:#fff;border-right:1px solid var(--mp-border);padding:22px 15px;display:flex;flex-direction:column}.mpwl-brand{padding:0 9px 20px}.mpwl-brand img{max-width:150px;height:auto}.mpwl-wordmark{display:flex;flex-direction:column;color:#0d3b82;line-height:.9}.mpwl-wordmark b{font-family:Georgia,serif;font-size:42px}.mpwl-wordmark span{font-size:12px;letter-spacing:1.5px;font-weight:700;margin-top:6px}.mpwl-sidebar nav{display:flex;flex-direction:column;gap:4px}.mpwl-sidebar nav a{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:9px;text-decoration:none;color:#27364e;font-size:14px;font-weight:600}.mpwl-sidebar nav a span{width:22px;text-align:center;color:#52647e}.mpwl-sidebar nav a:hover,.mpwl-sidebar nav a.is-active{background:#0b4fb3;color:#fff}.mpwl-sidebar nav a.is-active span{color:#fff}.mpwl-sidebar-foot{margin-top:auto;border:1px solid var(--mp-border);border-radius:12px;padding:13px;font-size:12px;display:flex;flex-direction:column;gap:5px}.mpwl-main{min-width:0}.mpwl-top{background:#fff;border-bottom:1px solid var(--mp-border);padding:25px 30px;display:flex;justify-content:space-between;gap:20px;align-items:center}.mpwl-top h1{font-size:28px;margin:0 0 4px}.mpwl-top p{margin:0;color:var(--mp-muted)}.mpwl-user{text-align:right;font-size:13px}.mpwl-user span{display:block;font-weight:700}.mpwl-user a{color:var(--mp-blue);font-size:12px}.mpwl-content{padding:28px;max-width:1250px}.mpwl-welcome h2{font-size:24px;margin:0}.mpwl-welcome p{color:var(--mp-muted);margin-top:4px}.mpwl-grid{display:grid;gap:16px}.mpwl-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.mpwl-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.mpwl-card{background:#fff;border:1px solid var(--mp-border);border-radius:14px;padding:20px;margin-bottom:16px;box-shadow:0 1px 3px rgba(20,45,80,.03)}.mpwl-card.highlight{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#eff7ff,#f3fff7)}.mpwl-card h2,.mpwl-card h3{margin-top:4px}.mpwl-card small{color:var(--mp-muted)}.mpwl-ring{width:76px;height:76px;border:8px solid #d9f1e3;border-top-color:var(--mp-green);border-right-color:var(--mp-green);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px}.mpwl-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.mpwl-metrics div{border-right:1px solid var(--mp-border);padding:4px 16px}.mpwl-metrics div:last-child{border-right:0}.mpwl-metrics span{display:block;color:var(--mp-muted);font-size:12px}.mpwl-metrics strong{display:block;font-size:22px;margin-top:6px}.mpwl-progress{height:8px;background:#edf1f6;border-radius:99px;overflow:hidden;margin-top:18px}.mpwl-progress.big{height:12px}.mpwl-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--mp-blue2),#2b8cff);border-radius:99px}.mpwl-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.mpwl-action-card{background:#fff;border:1px solid var(--mp-border);border-radius:14px;padding:18px;text-decoration:none;color:var(--mp-text);transition:.15s}.mpwl-action-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(20,55,100,.08)}.mpwl-action-card .mpwl-icon{width:42px;height:42px;background:#edf5ff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--mp-blue);font-size:20px}.mpwl-action-card h3{margin:13px 0 5px;font-size:17px}.mpwl-action-card p{font-size:13px;color:var(--mp-muted);min-height:40px}.mpwl-action-card span{font-size:12px;font-weight:800;color:var(--mp-blue)}.mpwl-alert{border-radius:10px;padding:13px 15px;margin-bottom:16px;border:1px solid}.mpwl-alert.info{background:#eef6ff;border-color:#c9e1ff;color:#24578c}.mpwl-alert.warn{background:#fff8e7;border-color:#f1d897;color:#795500}.mpwl-alert.danger{background:#fff0f0;border-color:#f0c4c4;color:#9c2424}.mpwl-alert.success{background:#effaf3;border-color:#bfe2cb;color:#247542}.mpwl-btn{appearance:none;border:0;background:var(--mp-blue);color:#fff!important;border-radius:8px;padding:11px 18px;font-weight:800;font-size:12px;text-decoration:none;cursor:pointer;display:inline-block}.mpwl-btn.wide{width:100%;padding:13px}.mpwl-btn.small{padding:8px 12px}.mpwl-btn.secondary{background:#eef3f9;color:#263d5d!important}.mpwl-text-link{color:var(--mp-blue);font-weight:700;text-decoration:none}.mpwl-table{overflow:auto}.mpwl-table table{width:100%;border-collapse:collapse}.mpwl-table th,.mpwl-table td{padding:10px;border-bottom:1px solid var(--mp-border);text-align:left;font-size:13px}.mpwl-table th{font-size:11px;color:var(--mp-muted);text-transform:uppercase}.mpwl-form label,.mpwl-auth-card label{display:block;font-size:12px;font-weight:700;margin-bottom:13px;color:#394a63}.mpwl-form input,.mpwl-form select,.mpwl-form textarea,.mpwl-auth-card input:not([type=checkbox]){width:100%;box-sizing:border-box;border:1px solid #cfd9e6;border-radius:7px;padding:10px 11px;background:#fff;color:#182841}.mpwl-form small{display:block;font-weight:400;margin-top:4px}.mpwl-form-card .gform_wrapper{margin:0}.mpwl-appointment{display:flex;justify-content:space-between;gap:15px;border:1px solid var(--mp-border);border-radius:10px;padding:13px;margin-bottom:10px}.mpwl-appointment span{display:block;color:var(--mp-muted);font-size:12px;margin-top:3px}.mpwl-appt-actions{display:flex;gap:10px;align-items:flex-start}.mpwl-appt-actions a{font-size:12px;text-decoration:none;font-weight:700;color:var(--mp-blue)}.mpwl-appt-actions a.danger{color:var(--mp-red)}.mpwl-message{border-bottom:1px solid var(--mp-border);padding:14px 0}.mpwl-message:last-child{border:0}.mpwl-message>span{float:right;color:var(--mp-muted);font-size:11px}.mpwl-message p{margin-bottom:0}.mpwl-empty{min-height:180px;border:1px dashed #cbd7e5;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--mp-muted);flex-direction:column;font-size:26px}.mpwl-empty strong{font-size:14px}.mpwl-status{display:flex;justify-content:space-between;padding:12px;background:#f7f9fc;border-radius:8px}.mpwl-status .good{color:var(--mp-green)}.mpwl-status .danger{color:var(--mp-red)}.mpwl-toggle-list>label{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--mp-border)}.mpwl-toggle-list small{display:block;color:var(--mp-muted);margin-top:3px}.mpwl-toggle-list input[type=checkbox]{width:22px;height:22px}.mpwl-card details{border-bottom:1px solid var(--mp-border);padding:12px 0}.mpwl-card summary{cursor:pointer;font-weight:700}.mpwl-auth-wrap{max-width:100%;min-height:650px;background:#f3f6fa;display:flex;align-items:center;justify-content:center;padding:30px}.mpwl-auth-card{background:#fff;border:1px solid var(--mp-border);border-radius:18px;box-shadow:0 12px 40px rgba(20,45,80,.08);width:100%;max-width:460px;padding:36px;text-align:center}.mpwl-auth-brand{display:flex;justify-content:center;margin-bottom:24px}.mpwl-auth-brand .mpwl-wordmark{align-items:center}.mpwl-auth-card h2{font-size:26px;margin-bottom:6px}.mpwl-auth-card>p{color:var(--mp-muted);margin-bottom:22px}.mpwl-auth-card form{text-align:left}.mpwl-check{display:flex!important;align-items:center;gap:8px;font-weight:500!important}.mpwl-check input{width:auto!important}.mpwl-auth-links{display:flex;justify-content:space-between;margin-top:15px;font-size:12px}.mpwl-auth-links a{color:var(--mp-blue)}.mpwl-privacy{background:#f2f7fd;border-radius:9px;padding:12px;margin-top:24px;font-size:12px;color:#45617e}.mpwl-code{text-align:center;font-size:30px!important;font-weight:800!important;letter-spacing:8px;margin:10px 0 18px}.mpwl-resend{text-align:center!important;margin-top:10px}.mpwl-link-btn{border:0;background:none;color:var(--mp-blue);font-weight:700;cursor:pointer}.mpwl-stat-grid .mpwl-card h2{color:var(--mp-blue)}
@media(max-width:900px){.mpwl-portal{grid-template-columns:1fr}.mpwl-sidebar{display:none}.mpwl-content{padding:18px}.mpwl-top{padding:18px}.mpwl-grid.two,.mpwl-grid.four,.mpwl-action-grid{grid-template-columns:1fr}.mpwl-metrics{grid-template-columns:repeat(2,1fr)}.mpwl-metrics div:nth-child(2){border-right:0}.mpwl-top h1{font-size:22px}.mpwl-user{display:none}}
@media(max-width:520px){.mpwl-auth-wrap{padding:15px;min-height:560px}.mpwl-auth-card{padding:24px}.mpwl-metrics{grid-template-columns:1fr}.mpwl-metrics div{border-right:0;border-bottom:1px solid var(--mp-border);padding:10px 0}.mpwl-appointment{flex-direction:column}.mpwl-appt-actions{justify-content:flex-start}}
.mpwl-day-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:10px 0 18px}.mpwl-doc-list{display:flex;flex-direction:column;gap:12px}.mpwl-document{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid #e8edf5}.mpwl-document>div{display:flex;flex-direction:column;gap:3px}.mpwl-document span,.mpwl-document small{color:#6b778c}.mpwl-goals-embed{overflow:auto;background:#fff;border-radius:14px}.mpwl-goals-embed .mp-planner{max-width:100%!important;margin:0!important}.mpwl-goals-save{margin-bottom:18px}@media(max-width:720px){.mpwl-day-grid{grid-template-columns:1fr}.mpwl-document{align-items:flex-start;flex-direction:column}.mpwl-goals-embed{overflow-x:auto}}

/* v1.1.2 Shot Tracker portal integration */
.mpwl-shot-jumpbar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px;position:sticky;top:10px;z-index:8;background:rgba(255,255,255,.94);padding:10px;border:1px solid #e5eaf2;border-radius:14px;backdrop-filter:blur(8px)}
.mpwl-btn.secondary{background:#fff;color:#123b74;border:1px solid #b9c9df}
.mpwl-shot-section{scroll-margin-top:90px;margin-bottom:28px}
.mpwl-shot-intro,.mpwl-shot-history-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px}
.mpwl-shot-intro h2,.mpwl-shot-history-head h2{margin:.2rem 0 .35rem}
.mpwl-shot-intro p,.mpwl-shot-history-head p{margin:0}
.mpwl-embedded-tracker{min-width:0;overflow:hidden}
.mpwl-embedded-tracker .mpwl-exact-app{max-width:100%;margin:0;background:transparent}
.mpwl-embedded-tracker .mpwl-exact-main{width:100%;max-width:100%;padding:0}
.mpwl-embedded-tracker .mpwl-exact-topbar{display:none}
.mpwl-embedded-tracker .mpwl-exact-card{box-shadow:none}
.mpwl-shot-section .gform_wrapper{max-width:100%}
@media(max-width:780px){.mpwl-shot-intro,.mpwl-shot-history-head{align-items:flex-start;flex-direction:column}.mpwl-shot-jumpbar{position:static}.mpwl-shot-jumpbar .mpwl-btn{flex:1;text-align:center}}

/* v1.1.3 — full-width portal + responsive mobile + approved-branding cleanup */
.mpwl-portal{
  width:calc(100vw - 24px)!important;
  max-width:none!important;
  position:relative;
  left:50%;
  transform:translateX(-50%);
  margin:12px 0 28px!important;
  grid-template-columns:250px minmax(0,1fr)!important;
}
.mpwl-main{width:100%;min-width:0}
.mpwl-content{width:100%;max-width:none!important;box-sizing:border-box;padding:28px 32px 38px!important}
.mpwl-top{padding:24px 32px!important}
.mpwl-brand{padding:4px 10px 20px!important;display:flex;flex-direction:column;gap:2px}
.mpwl-brand strong{font-size:19px;color:#16355f}
.mpwl-brand small{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#6d7b91}
.mpwl-brand-text{display:flex;flex-direction:column;gap:2px;align-items:center}
.mpwl-brand-text strong{font-size:20px;color:#173762}.mpwl-brand-text span{font-size:12px;color:#6d7b91}
.mpwl-goals-embed{width:100%;max-width:none!important;overflow:visible!important}
.mpwl-goals-embed .mp-planner{width:100%!important;max-width:none!important;margin:0!important}
.mpwl-goals-embed .mp-entry-card,.mpwl-goals-embed .mp-report-card{max-width:none!important;width:100%!important;box-sizing:border-box}
.mpwl-goals-embed .mp-entry-grid{grid-template-columns:minmax(190px,1.25fr) minmax(140px,.8fr) minmax(120px,.65fr) minmax(260px,1.35fr) minmax(155px,.8fr)!important;gap:16px!important;align-items:end}
.mpwl-shot-intro,.mpwl-shot-history-head{display:flex;align-items:center;justify-content:space-between;gap:24px}
.mpwl-embedded-tracker{width:100%;max-width:none;overflow:hidden}
.mpwl-form-card .gform_wrapper{max-width:none!important;width:100%!important}

@media (max-width:900px){
  .mpwl-portal{width:100%!important;left:auto!important;transform:none!important;margin:0!important;border-radius:0!important;grid-template-columns:1fr!important;overflow:visible!important}
  .mpwl-sidebar{display:block!important;position:relative;border-right:0;border-bottom:1px solid var(--mp-border);padding:10px 12px!important;overflow-x:auto}
  .mpwl-sidebar .mpwl-brand,.mpwl-sidebar-foot{display:none!important}
  .mpwl-sidebar nav{display:flex!important;flex-direction:row!important;gap:6px!important;min-width:max-content}
  .mpwl-sidebar nav a{white-space:nowrap;padding:9px 11px!important;font-size:13px!important}
  .mpwl-sidebar nav a span{width:auto!important}
  .mpwl-top{padding:18px 16px!important}
  .mpwl-content{padding:16px!important}
  .mpwl-goals-embed{overflow-x:hidden!important}
  .mpwl-goals-embed .mp-entry-grid{grid-template-columns:1fr 1fr!important}
  .mpwl-goals-embed .mp-entry-field.mp-entry-height,.mpwl-goals-embed .mp-entry-submit{grid-column:1/-1}
  .mpwl-shot-intro,.mpwl-shot-history-head{align-items:flex-start;flex-direction:column}
}
@media (max-width:600px){
  .mpwl-top h1{font-size:22px!important}
  .mpwl-top p{font-size:13px}
  .mpwl-content{padding:12px!important}
  .mpwl-card{padding:16px!important;border-radius:12px!important}
  .mpwl-grid.four,.mpwl-grid.two,.mpwl-action-grid,.mpwl-metrics{grid-template-columns:1fr!important}
  .mpwl-goals-embed .mp-entry-grid{grid-template-columns:1fr!important}
  .mpwl-goals-embed .mp-entry-field,.mpwl-goals-embed .mp-entry-submit{grid-column:1!important}
  .mpwl-goals-embed .mp-entry-two{grid-template-columns:1fr 1fr!important}
  .mpwl-goals-embed .mp-report-patient-grid,.mpwl-goals-embed .mp-report-target-grid,.mpwl-goals-embed .mp-report-macro-grid{grid-template-columns:1fr!important}
  .mpwl-goals-embed table{min-width:760px}
  .mpwl-goals-embed .mp-report-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
}

/* v1.1.4 organized portal navigation */
.mpwl-sidebar nav{gap:0}
.mpwl-nav-section{display:flex;flex-direction:column;gap:4px;margin:0 0 17px}
.mpwl-nav-section:last-child{margin-bottom:0}
.mpwl-nav-heading{padding:0 12px 6px;color:#8795aa;font-size:10px;font-weight:800;letter-spacing:.11em;line-height:1.2}
@media(max-width:900px){
  .mpwl-sidebar nav{flex-direction:column!important;min-width:0!important;gap:0!important}
  .mpwl-nav-section{min-width:100%;margin-bottom:13px}
  .mpwl-nav-heading{display:block;padding:5px 11px 4px;font-size:9px}
  .mpwl-sidebar nav a{width:100%;box-sizing:border-box}
}

/* v1.1.5 — true mobile Patient Portal menu */
.mpwl-mobile-portalbar{display:none}
@media(max-width:900px){
  .mpwl-portal{display:block!important}
  .mpwl-mobile-portalbar{
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    background:#0b4fb3;
    color:#fff;
    padding:11px 14px;
    border-bottom:1px solid rgba(255,255,255,.16);
    position:sticky;
    top:0;
    z-index:30;
  }
  .mpwl-mobile-portal-title{display:flex;flex-direction:column;min-width:0;line-height:1.15}
  .mpwl-mobile-portal-kicker{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.82;margin-bottom:3px}
  .mpwl-mobile-portal-title strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mpwl-mobile-menu-toggle{
    appearance:none;
    border:1px solid rgba(255,255,255,.35);
    background:rgba(255,255,255,.08);
    color:#fff;
    width:42px;
    height:38px;
    border-radius:9px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    line-height:1;
    cursor:pointer;
    flex:0 0 auto;
  }
  .mpwl-mobile-menu-toggle[aria-expanded="true"]{background:#fff;color:#0b4fb3}
  .mpwl-mobile-menu-toggle[aria-expanded="true"] .mpwl-mobile-menu-icon{font-size:0}
  .mpwl-mobile-menu-toggle[aria-expanded="true"] .mpwl-mobile-menu-icon:before{content:"×";font-size:28px;line-height:1}
  .mpwl-sidebar{
    display:none!important;
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box;
    border-right:0!important;
    border-bottom:1px solid var(--mp-border)!important;
    padding:14px!important;
    overflow:visible!important;
    background:#fff;
    z-index:29;
    box-shadow:0 12px 24px rgba(20,45,80,.10);
  }
  .mpwl-sidebar.is-open{display:block!important}
  .mpwl-sidebar .mpwl-brand{display:none!important}
  .mpwl-sidebar-foot{display:block!important;margin-top:10px!important}
  .mpwl-sidebar nav{display:block!important;min-width:0!important}
  .mpwl-nav-section{margin:0 0 14px!important}
  .mpwl-nav-heading{display:block!important;padding:5px 10px 5px!important;font-size:9px!important}
  .mpwl-sidebar nav a{width:100%!important;white-space:normal!important;padding:10px 11px!important;font-size:14px!important}
  .mpwl-sidebar nav a span{width:24px!important;text-align:center!important}
  .mpwl-main{width:100%!important}
}
@media(max-width:520px){
  .mpwl-mobile-portalbar{padding:10px 12px}
  .mpwl-mobile-portal-title strong{font-size:14px}
  .mpwl-sidebar{padding:12px!important}
  .mpwl-sidebar nav a{padding:9px 10px!important}
  .mpwl-nav-section{margin-bottom:11px!important}
}


/* v1.1.6 — portal-wide form/select normalization */
.mpwl-portal .mpwl-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
.mpwl-portal .mpwl-form select,
.mpwl-portal .mpwl-form textarea,
.mpwl-portal .gform_wrapper input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
.mpwl-portal .gform_wrapper select,
.mpwl-portal .gform_wrapper textarea,
.mpwl-portal input.mpwl-control,
.mpwl-portal select.mpwl-control,
.mpwl-portal textarea.mpwl-control{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  border:1px solid #c9d6e5!important;
  border-radius:9px!important;
  background-color:#fff!important;
  color:#182841!important;
  font-family:inherit!important;
  font-size:16px!important;
  font-weight:500!important;
  line-height:1.35!important;
  box-shadow:none!important;
}
.mpwl-portal .mpwl-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
.mpwl-portal .gform_wrapper input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
.mpwl-portal input.mpwl-control{
  min-height:52px!important;
  height:52px!important;
  padding:0 16px!important;
}
.mpwl-portal .mpwl-form select,
.mpwl-portal .gform_wrapper select,
.mpwl-portal select.mpwl-control{
  min-height:52px!important;
  height:52px!important;
  padding:0 44px 0 16px!important;
  line-height:52px!important;
  vertical-align:middle!important;
  -webkit-appearance:auto!important;
  appearance:auto!important;
  background-clip:padding-box!important;
}
.mpwl-portal .mpwl-form select option,
.mpwl-portal .gform_wrapper select option,
.mpwl-portal select.mpwl-control option{
  color:#182841!important;
  background:#fff!important;
  font-size:16px!important;
  line-height:1.4!important;
}
.mpwl-portal .mpwl-form textarea,
.mpwl-portal .gform_wrapper textarea,
.mpwl-portal textarea.mpwl-control{
  min-height:130px!important;
  height:auto!important;
  padding:14px 16px!important;
  line-height:1.5!important;
  resize:vertical;
}
.mpwl-portal .mpwl-form label,
.mpwl-portal .gform_wrapper .gfield_label{
  line-height:1.3!important;
}
.mpwl-portal .gform_wrapper .ginput_container,
.mpwl-portal .gform_wrapper .gfield{
  min-width:0!important;
}
.mpwl-portal .gform_wrapper .ginput_container_select{
  overflow:visible!important;
}
.mpwl-portal .mpwl-form input:focus,
.mpwl-portal .mpwl-form select:focus,
.mpwl-portal .mpwl-form textarea:focus,
.mpwl-portal .gform_wrapper input:focus,
.mpwl-portal .gform_wrapper select:focus,
.mpwl-portal .gform_wrapper textarea:focus{
  border-color:#0b4fb3!important;
  outline:0!important;
  box-shadow:0 0 0 3px rgba(11,79,179,.10)!important;
}
/* Defeat Flatsome/UX Builder rules that force selects to short line-heights. */
.mpwl-portal select,
.mpwl-portal .select-resize-ghost,
.mpwl-portal .gform_wrapper select.large,
.mpwl-portal .gform_wrapper select.medium,
.mpwl-portal .gform_wrapper select.small{
  text-indent:0!important;
  margin:0!important;
}
@supports (-webkit-touch-callout:none){
  .mpwl-portal .mpwl-form select,
  .mpwl-portal .gform_wrapper select,
  .mpwl-portal select.mpwl-control{
    font-size:16px!important;
    line-height:normal!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }
}
@media(max-width:900px){
  .mpwl-portal .mpwl-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  .mpwl-portal .mpwl-form select,
  .mpwl-portal .gform_wrapper input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  .mpwl-portal .gform_wrapper select{
    min-height:52px!important;
    height:52px!important;
    font-size:16px!important;
  }
  .mpwl-portal .mpwl-form select,
  .mpwl-portal .gform_wrapper select{
    padding-left:14px!important;
    padding-right:42px!important;
  }
}

/* v1.1.7 — appointment clarity + interactive clinic help */
.mpwl-sidebar-foot a{display:flex;flex-direction:column;gap:1px;text-decoration:none;color:var(--mp-blue);font-weight:700;line-height:1.25}.mpwl-sidebar-foot a span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--mp-muted);font-weight:800}.mpwl-appointment-notice{border-left:4px solid var(--mp-blue);padding:22px 24px}.mpwl-appointment-notice h2{margin:6px 0 7px}.mpwl-appointment-notice>p{margin:0 0 15px;color:var(--mp-muted)}.mpwl-reminder-badge{display:inline-flex;align-items:center;background:#e9f2ff;color:#0b4fb3;border:1px solid #c8dcfb;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:900;letter-spacing:.08em}.mpwl-appt-contact{display:flex;flex-direction:column;gap:4px}.mpwl-appt-contact>span{color:var(--mp-muted);font-size:13px}.mpwl-contact-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:8px}.mpwl-contact-actions a{display:inline-flex;align-items:center;justify-content:center;border:1px solid #c9d9ec;border-radius:8px;padding:9px 12px;background:#fff;color:var(--mp-blue);text-decoration:none;font-size:12px;font-weight:800}.mpwl-contact-actions a:hover{background:#f2f7fd}.mpwl-help-links{display:grid;gap:10px;margin:12px 0 18px}.mpwl-help-links a{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--mp-border);border-radius:10px;padding:12px 13px;text-decoration:none;background:#fbfdff;color:var(--mp-text)}.mpwl-help-links a strong{color:var(--mp-blue)}.mpwl-help-links a span{font-size:13px;text-align:right}.mpwl-help-links a:hover{background:#f2f7fd}
@media(max-width:640px){.mpwl-contact-actions{display:grid;grid-template-columns:1fr}.mpwl-contact-actions a{width:100%;box-sizing:border-box}.mpwl-help-links a{align-items:flex-start;flex-direction:column}.mpwl-help-links a span{text-align:left}.mpwl-appointment-notice{padding:18px}}

/* v1.1.8 — mandatory 2FA + global Privacy & HIPAA notice */
.mpwl-hipaa-notice{display:flex;gap:14px;align-items:flex-start;margin-top:28px;padding:17px 19px;border:1px solid #cbdced;border-radius:12px;background:#f6faff;color:#334866;font-size:13px;line-height:1.5}.mpwl-hipaa-notice strong{display:block;color:#12365f;font-size:14px;margin-bottom:3px}.mpwl-hipaa-notice p{margin:0!important;color:#526985!important}.mpwl-hipaa-icon{flex:0 0 auto;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#e7f1ff}.mpwl-trust-note{margin:12px 0 16px;padding:11px 12px;border-radius:9px;background:#f3f7fc;color:#526985;font-size:13px;line-height:1.45}.mpwl-auth-card .mpwl-hipaa-notice{margin-top:22px;text-align:left}.mpwl-auth-card .mpwl-hipaa-notice p{font-size:11px!important;line-height:1.45!important}@media(max-width:640px){.mpwl-hipaa-notice{padding:14px;gap:10px;font-size:12px}.mpwl-hipaa-icon{width:28px;height:28px}.mpwl-auth-card .mpwl-hipaa-notice{margin-left:-4px;margin-right:-4px}}

/* v1.2.0 trusted devices */
.mpwl-device-list{display:flex;flex-direction:column;gap:10px;margin:12px 0 18px}
.mpwl-device-row{border:1px solid #dbe7f4;border-radius:12px;padding:12px 14px;background:#f8fbff}
.mpwl-device-row strong{display:block;color:#17324d;margin-bottom:3px}
.mpwl-device-row span{display:block;font-size:12px;line-height:1.45;color:#6a7b8c}

/* v1.4.3 patient form history */
.mpwl-history-linkbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;margin:0 0 16px;background:#f7fbff;border:1px solid #dbe9f7;border-radius:12px}
.mpwl-forms-head{display:flex;justify-content:space-between;align-items:center;gap:20px}
.mpwl-form-history-tabs{display:flex;gap:8px;margin:16px 0}
.mpwl-form-history-tabs a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:700;padding:11px 16px;border-radius:10px;background:#fff;border:1px solid #dbe4ef;color:#24354a}
.mpwl-form-history-tabs a.is-active{background:#eaf4ff;border-color:#8dc3f3;color:#1267a8}
.mpwl-form-history-tabs span{min-width:24px;text-align:center;border-radius:999px;padding:2px 7px;background:#edf2f7;font-size:12px}
.mpwl-submission-table td .muted{display:block;margin-top:3px;font-size:12px;color:#718096}
.mpwl-submission-detail-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:18px;border-bottom:1px solid #e7edf3}
.mpwl-submission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.mpwl-submission-field{padding:14px 16px;border:1px solid #e0e8f0;border-radius:12px;background:#fbfdff;overflow-wrap:anywhere}
.mpwl-submission-field small{display:block;font-weight:800;color:#607086;text-transform:uppercase;letter-spacing:.04em;font-size:11px;margin-bottom:6px}
.mpwl-submission-field div{color:#172b3f;line-height:1.5}
.mpwl-submission-actions{display:flex;gap:10px;margin-top:18px}
.mpwl-empty-state{text-align:center;padding:34px 20px}
@media(max-width:720px){.mpwl-history-linkbar,.mpwl-forms-head,.mpwl-submission-detail-head{display:block}.mpwl-history-linkbar .mpwl-text-link,.mpwl-forms-head .mpwl-btn{display:inline-block;margin-top:10px}.mpwl-form-history-tabs{display:grid;grid-template-columns:1fr 1fr}.mpwl-form-history-tabs a{justify-content:center;padding:10px 8px}.mpwl-submission-grid{grid-template-columns:1fr}.mpwl-submission-table table,.mpwl-submission-table thead,.mpwl-submission-table tbody,.mpwl-submission-table tr,.mpwl-submission-table th,.mpwl-submission-table td{display:block}.mpwl-submission-table thead{display:none}.mpwl-submission-table tr{padding:12px 0;border-bottom:1px solid #e6edf3}.mpwl-submission-table td{border:0!important;padding:5px 0!important}.mpwl-submission-actions{flex-wrap:wrap}}
@media print{.mpwl-sidebar,.mpwl-mobile-portalbar,.mpwl-top,.mpwl-hipaa-notice,.mpwl-submission-actions,.mpwl-form-history-tabs{display:none!important}.mpwl-main{margin:0!important;width:100%!important}.mpwl-submission-detail{box-shadow:none!important;border:0!important}}

/* v1.4.4 Patient Portal registration */
.mpwl-registration-shell{max-width:1180px;margin:32px auto;padding:0 20px}.mpwl-registration-card{background:#fff;border:1px solid #dbe5f2;border-radius:22px;padding:34px;box-shadow:0 12px 36px rgba(20,52,92,.08)}.mpwl-registration-heading{margin-bottom:26px}.mpwl-registration-heading span{display:block;color:#57708f;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.mpwl-registration-heading h1{margin:6px 0 8px;color:#172d4d;font-size:34px;line-height:1.15}.mpwl-registration-heading p{margin:0;color:#657993;font-size:17px}.mpwl-registration-card .gform_wrapper{max-width:none}.mpwl-registration-card .mpwl-auth-links{margin-top:22px;padding-top:18px;border-top:1px solid #e5ebf3}.mpwl-registration-card .gform_button{background:#1457bd!important;color:#fff!important;border:0!important;border-radius:10px!important;padding:13px 22px!important;font-weight:800!important}.mpwl-registration-card input,.mpwl-registration-card select{min-height:48px}
@media(max-width:700px){.mpwl-registration-shell{margin:14px auto;padding:0 12px}.mpwl-registration-card{padding:20px 16px;border-radius:16px}.mpwl-registration-heading h1{font-size:27px}}

/* v1.4.8 native patient registration */
.mpwl-native-registration{margin-top:26px}.mpwl-reg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px}.mpwl-reg-field{display:flex;flex-direction:column;gap:8px}.mpwl-reg-full{grid-column:1/-1;max-width:calc(50% - 12px)}.mpwl-reg-field label{font-weight:700;color:#1d3352;font-size:15px}.mpwl-reg-field label span,.mpwl-reg-consent em{color:#c63422;font-style:normal;font-weight:600}.mpwl-reg-field input{width:100%;height:50px;border:1px solid #b9c7d8;border-radius:8px;padding:0 14px;font-size:16px;background:#fff;color:#172d4d;box-sizing:border-box}.mpwl-reg-field small{color:#687b94;font-size:13px;line-height:1.45}.mpwl-password-notice{margin:24px 0;padding:18px 20px;border:1px solid #c9def6;border-radius:12px;background:#f4f9ff;color:#234a78}.mpwl-password-notice strong{display:block;font-size:16px;color:#173d6c}.mpwl-password-notice p{margin:5px 0 0;line-height:1.55}.mpwl-reg-consent{display:flex;gap:12px;align-items:flex-start;color:#52657e;line-height:1.55;font-size:14px}.mpwl-reg-consent input{width:19px;height:19px;margin-top:3px;flex:0 0 auto}.mpwl-reg-consent strong{color:#1d3352}.mpwl-reg-submit{width:100%;margin-top:24px;min-height:54px;border:0;border-radius:10px;background:#1457bd;color:#fff;font-weight:800;font-size:15px;letter-spacing:.03em;cursor:pointer}.mpwl-reg-submit:hover{background:#0f489f}.mpwl-reg-success{padding:22px;border:1px solid #b9dfc7;border-radius:14px;background:#f2fbf5;color:#245c37}.mpwl-reg-success strong{display:block;font-size:20px;margin-bottom:6px}.mpwl-reg-success p{margin:0;line-height:1.6}.mpwl-reg-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){.mpwl-reg-grid{grid-template-columns:1fr;gap:18px}.mpwl-reg-full{grid-column:auto;max-width:none}.mpwl-reg-field input{height:50px}.mpwl-password-notice{padding:16px}.mpwl-reg-submit{min-height:56px}}

/* MPWL branded password setup */
.mpwl-set-password-card{max-width:640px;margin:40px auto;padding:38px}.mpwl-auth-kicker{font-size:13px;font-weight:800;letter-spacing:.14em;color:#5f7694;margin-bottom:8px}.mpwl-password-form{display:grid;gap:18px;margin-top:24px}.mpwl-password-form label{display:grid;gap:8px;font-weight:700;color:#1d3352}.mpwl-password-form input{height:52px;border:1px solid #b9c7d8;border-radius:8px;padding:0 14px;font-size:16px;box-sizing:border-box;width:100%}.mpwl-help-mini{text-align:center;margin:18px 0;color:#667a93}.mpwl-help-mini a{color:#1457bd;text-decoration:none;font-weight:700}.mpwl-inline-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;width:auto;padding:0 22px}.mpwl-auth-error{margin:18px 0;padding:14px 16px;border:1px solid #e1b7b7;background:#fff5f5;border-radius:10px;color:#8f2f2f}.mpwl-auth-wrap{padding:20px}.mpwl-auth-card{background:#fff;border:1px solid #d8e2ee;border-radius:18px;box-shadow:0 16px 40px rgba(16,39,68,.08)}
@media(max-width:700px){.mpwl-set-password-card{margin:12px auto;padding:24px 18px}.mpwl-auth-wrap{padding:10px}}

/* MPWL password requirements */
.mpwl-password-rules{margin-top:-4px;padding:16px 18px;border:1px solid #d8e2ee;border-radius:12px;background:#f8fbff;color:#50657f}.mpwl-password-rules-title{font-weight:800;color:#1d3352;margin-bottom:10px}.mpwl-password-rules ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}.mpwl-password-rules li{display:flex;align-items:center;gap:8px;font-size:14px;line-height:1.35;transition:color .18s ease}.mpwl-rule-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:1px solid #aebed1;color:#7d8da3;font-weight:900;font-size:13px;flex:0 0 auto}.mpwl-password-rules li.is-valid{color:#1c6c3d;font-weight:700}.mpwl-password-rules li.is-valid .mpwl-rule-icon{border-color:#77c590;background:#eaf8ef;color:#176b39}.mpwl-password-rules li.is-invalid{color:#9b3d35}.mpwl-password-strength{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding-top:12px;border-top:1px solid #dfe7f0;font-size:13px}.mpwl-password-strength strong{color:#1d3352}.mpwl-reg-submit:disabled{opacity:.48;cursor:not-allowed}.mpwl-reg-submit:disabled:hover{background:#1457bd}@media(max-width:700px){.mpwl-password-rules ul{grid-template-columns:1fr}.mpwl-password-rules{padding:14px}}
