.mmp-application-wrap{max-width:1180px;margin:30px auto;padding:0 16px;font-family:inherit}.mmp-front-header{background:linear-gradient(135deg,#101828,#1d4ed8);color:#fff;border-radius:22px;padding:34px;margin-bottom:24px;box-shadow:0 18px 50px rgba(16,24,40,.14)}.mmp-front-header span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.75}.mmp-front-header h2{color:#fff;margin:10px 0 8px;font-size:32px}.mmp-front-header p{margin:0;color:rgba(255,255,255,.82)}.mmp-section{background:#fff;border:1px solid #e6e9ef;border-radius:22px;padding:26px;margin-bottom:22px;box-shadow:0 12px 36px rgba(16,24,40,.06)}.mmp-section h3{margin:0 0 18px;color:#101828;font-size:20px}.mmp-membership-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:22px;align-items:start}.mmp-icon-card{position:relative;text-align:center;border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important}.mmp-icon-card input{position:absolute;opacity:0;pointer-events:none}.mmp-card-check{position:absolute;top:12px;right:14px;width:22px;height:22px;border:2px solid #d0d5dd;border-radius:50%;background:#fff;z-index:2}.mmp-ltr .mmp-card-check{right:auto;left:14px}.mmp-icon-card input:checked+.mmp-card-check{border-color:#2563eb;background:#2563eb;box-shadow:inset 0 0 0 5px #fff}.mmp-card-icon{height:190px;border-radius:30px;background:#fff;border:1px solid #eef2f7;box-shadow:0 14px 34px rgba(16,24,40,.10);display:flex;align-items:center;justify-content:center;color:#9ca3af;transition:.2s}.mmp-icon-card:hover .mmp-card-icon,.mmp-icon-card input:checked~.mmp-card-icon{border-color:#c7d2fe;box-shadow:0 18px 42px rgba(37,99,235,.16);transform:translateY(-2px)}.mmp-card-icon svg{width:96px;height:96px}.mmp-card-icon img{max-width:110px;max-height:110px;object-fit:contain}.mmp-icon-card strong{display:block;margin-top:18px;color:#101828;font-size:21px;line-height:1.25}.mmp-icon-card small{display:block;margin-top:7px;color:#667085;font-size:13px}.mmp-frontend-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.mmp-front-field{display:grid;gap:8px}.mmp-front-field label{font-weight:800;color:#344054}.mmp-front-field label em{color:#d92d20;font-style:normal}.mmp-front-field input[type=text],.mmp-front-field input[type=email],.mmp-front-field input[type=tel],.mmp-front-field input[type=date],.mmp-front-field input[type=file],.mmp-front-field select,.mmp-front-field textarea{width:100%;min-height:46px;border:1px solid #d0d5dd;border-radius:14px;padding:10px 13px;background:#fff;box-shadow:none}.mmp-front-field textarea{min-height:120px;resize:vertical}.mmp-front-field input:focus,.mmp-front-field select:focus,.mmp-front-field textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12)}.mmp-option-list{display:grid;gap:8px;background:#f8fafc;border:1px solid #edf0f4;border-radius:14px;padding:14px}.mmp-option-list label,.mmp-consent{display:flex;gap:8px;align-items:center;font-weight:600}.mmp-terms-section{margin-top:24px}.mmp-terms-box{max-height:300px;overflow:auto;border:1px solid #d0d5dd;background:#f8fafc;border-radius:16px;padding:20px;color:#475467;line-height:1.8}.mmp-terms-consent{display:flex;align-items:center;gap:10px;margin-top:16px;font-weight:800;color:#344054}.mmp-terms-consent input{width:20px;height:20px}.mmp-submit-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;border:0;border-radius:16px;background:#1d4ed8;color:#fff;font-weight:800;padding:12px 28px;cursor:pointer;box-shadow:0 10px 28px rgba(29,78,216,.22)}.mmp-success,.mmp-front-alert{background:#ecfdf3;color:#067647;border:1px solid #abefc6;border-radius:16px;padding:16px 18px;margin-bottom:18px;font-weight:700}.mmp-rtl{text-align:right}.mmp-ltr{text-align:left}@media(max-width:900px){.mmp-membership-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.mmp-card-icon{height:150px;border-radius:24px}.mmp-card-icon svg{width:74px;height:74px}.mmp-icon-card strong{font-size:17px}.mmp-frontend-grid{grid-template-columns:1fr}}@media(max-width:520px){.mmp-membership-cards{grid-template-columns:1fr}.mmp-card-icon{height:132px}.mmp-front-header{padding:26px}.mmp-front-header h2{font-size:26px}.mmp-section{padding:20px}}


/* v1.3.2 refinements */
.mmp-membership-cards{
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:18px;
}
.mmp-card-icon{
  height:172px;
  border-radius:28px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%);
}
.mmp-card-icon svg{
  width:88px;
  height:88px;
  color:#9aa3b2;
  filter:drop-shadow(0 8px 14px rgba(16,24,40,.08));
}
.mmp-icon-card input:checked~.mmp-card-icon svg{
  color:#1d4ed8;
}
.mmp-icon-card strong{
  font-size:18px;
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.mmp-field-key-profile_photo,
.mmp-field-key-cv_upload{
  align-self:stretch;
}
.mmp-field-key-profile_photo .mmp-upload-box,
.mmp-field-key-cv_upload .mmp-upload-box{
  min-height:160px;
}
.mmp-upload-box{
  border:1.5px dashed #cbd5e1;
  border-radius:18px;
  background:linear-gradient(180deg,#fff,#f8fafc);
  padding:22px;
  min-height:140px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  cursor:pointer;
  transition:.2s;
}
.mmp-upload-box:hover{
  border-color:#2563eb;
  background:#f8fbff;
  box-shadow:0 10px 26px rgba(37,99,235,.09);
}
.mmp-upload-box input[type=file]{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
  pointer-events:none;
}
.mmp-upload-icon{
  width:42px;
  height:42px;
  border-radius:50%;
  background:#eff6ff;
  color:#1d4ed8;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  font-weight:800;
  margin-bottom:10px;
}
.mmp-upload-box strong{
  color:#101828;
  font-size:15px;
}
.mmp-upload-box small{
  margin-top:5px;
  color:#667085;
  font-size:12px;
}
.mmp-upload-box em{
  margin-top:10px;
  color:#1d4ed8;
  font-style:normal;
  font-size:12px;
  font-weight:700;
  max-width:100%;
  word-break:break-word;
}
@media(max-width:900px){
  .mmp-membership-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .mmp-membership-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .mmp-card-icon{height:118px;border-radius:22px}
  .mmp-card-icon svg{width:60px;height:60px}
  .mmp-icon-card strong{font-size:14px;min-height:38px}
}

:root{
 --mmp-primary:#bf992c;
 --mmp-primary-dark:#8f721d;
}
.mmp-front-header,
.mmp-page-header{
 background:linear-gradient(135deg,var(--mmp-primary-dark),var(--mmp-primary)) !important;
}
.mmp-submit-btn{
 background:linear-gradient(135deg,var(--mmp-primary-dark),var(--mmp-primary)) !important;
}
.mmp-upload-box:hover,
.mmp-icon-card input:checked~.mmp-card-icon{
 border-color:var(--mmp-primary)!important;
 box-shadow:0 10px 26px rgba(191,153,44,.18)!important;
}
.mmp-upload-icon{
 background:rgba(191,153,44,.12)!important;
 color:var(--mmp-primary)!important;
}
.mmp-card-check{
 border-color:#d6c28b!important;
}
.mmp-icon-card input:checked+.mmp-card-check{
 background:var(--mmp-primary)!important;
 border-color:var(--mmp-primary)!important;
}
.mmp-front-field input:focus,
.mmp-front-field select:focus,
.mmp-front-field textarea:focus{
 border-color:var(--mmp-primary)!important;
 box-shadow:0 0 0 3px rgba(191,153,44,.15)!important;
}

/* v1.3.4 brand refinements */
:root{
 --mmp-primary:#bf992c;
 --mmp-primary-dark:#6f5415;
 --mmp-primary-mid:#a37d20;
 --mmp-primary-light:#d7b85a;
}
.mmp-front-header{
 background:linear-gradient(135deg,var(--mmp-primary-dark) 0%, var(--mmp-primary-mid) 48%, var(--mmp-primary-light) 100%) !important;
}
.mmp-icon-card input:checked~.mmp-card-icon svg,
.mmp-upload-box em,
.mmp-upload-icon{
 color:var(--mmp-primary)!important;
}
.mmp-icon-card input:checked~.mmp-card-icon{
 border-color:var(--mmp-primary)!important;
 box-shadow:0 18px 42px rgba(191,153,44,.20)!important;
}
.mmp-submit-btn{
 background:linear-gradient(135deg,var(--mmp-primary-dark) 0%, var(--mmp-primary) 100%)!important;
}

.mmp-field-description{
    margin:-3px 0 10px;
    color:#667085;
    font-size:13px;
    line-height:1.65;
}

.mmp-member-dashboard{
    max-width:1100px;
    margin:30px auto;
    padding:0 16px;
}
.mmp-dashboard-grid{
    display:grid;
    grid-template-columns:320px minmax(0,1fr);
    gap:22px;
    margin-bottom:22px;
}
.mmp-dashboard-card{
    background:#fff;
    border:1px solid #e6e9ef;
    border-radius:22px;
    padding:24px;
    box-shadow:0 12px 36px rgba(16,24,40,.06);
}
.mmp-profile-summary{
    text-align:center;
}
.mmp-dashboard-photo{
    width:132px;
    height:132px;
    object-fit:cover;
    border-radius:50%;
    border:4px solid rgba(191,153,44,.18);
    margin-bottom:14px;
}
.mmp-profile-summary h3{
    margin:0 0 6px;
    color:#101828;
}
.mmp-profile-summary p{
    color:#667085;
    margin:0 0 12px;
}
.mmp-dashboard-list,
.mmp-dashboard-data{
    display:grid;
    gap:12px;
}
.mmp-dashboard-list > div,
.mmp-dashboard-data > div{
    border:1px solid #edf0f4;
    background:#f8fafc;
    border-radius:14px;
    padding:14px;
}
.mmp-dashboard-list strong,
.mmp-dashboard-data strong{
    display:block;
    color:#667085;
    font-size:12px;
    margin-bottom:6px;
}
.mmp-dashboard-list span,
.mmp-dashboard-data span{
    color:#101828;
    font-weight:700;
}
@media(max-width:800px){
    .mmp-dashboard-grid{grid-template-columns:1fr;}
}

.mmp-directory-wrap,
.mmp-public-profile{
    max-width:1180px;
    margin:30px auto;
    padding:0 16px;
}
.mmp-directory-search{
    display:flex;
    gap:12px;
    background:#fff;
    border:1px solid #e6e9ef;
    border-radius:18px;
    padding:14px;
    box-shadow:0 10px 30px rgba(16,24,40,.06);
    margin-bottom:22px;
}
.mmp-directory-search input{
    flex:1;
    min-height:46px;
    border:1px solid #d0d5dd;
    border-radius:12px;
    padding:10px 14px;
}
.mmp-directory-search button{
    border:0;
    border-radius:12px;
    padding:10px 22px;
    background:linear-gradient(135deg,var(--mmp-primary-dark),var(--mmp-primary));
    color:#fff;
    font-weight:800;
}
.mmp-directory-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:18px;
}
.mmp-doctor-card{
    display:flex;
    gap:16px;
    align-items:center;
    text-decoration:none;
    background:#fff;
    border:1px solid #e6e9ef;
    border-radius:22px;
    padding:18px;
    box-shadow:0 10px 30px rgba(16,24,40,.06);
    transition:.2s;
}
.mmp-doctor-card:hover{
    transform:translateY(-2px);
    box-shadow:0 16px 34px rgba(191,153,44,.13);
    border-color:rgba(191,153,44,.4);
}
.mmp-doctor-photo-wrap{
    width:82px;
    height:82px;
    border-radius:20px;
    overflow:hidden;
    background:#f8fafc;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--mmp-primary);
    font-size:28px;
    font-weight:900;
}
.mmp-doctor-photo-wrap img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.mmp-doctor-card h3{
    margin:0 0 5px;
    color:#101828;
    font-size:18px;
}
.mmp-doctor-card p{
    margin:0;
    color:#667085;
    font-weight:700;
}
.mmp-doctor-card small{
    display:block;
    margin-top:8px;
    color:#667085;
}
.mmp-profile-hero{
    display:flex;
    gap:24px;
    align-items:center;
    background:linear-gradient(135deg,var(--mmp-primary-dark),var(--mmp-primary));
    color:#fff;
    border-radius:28px;
    padding:34px;
    box-shadow:0 18px 50px rgba(16,24,40,.14);
    margin-bottom:24px;
}
.mmp-profile-photo-large{
    width:150px;
    height:150px;
    border-radius:32px;
    overflow:hidden;
    background:rgba(255,255,255,.18);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:54px;
    font-weight:900;
    flex:none;
}
.mmp-profile-photo-large img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.mmp-profile-badge{
    display:inline-flex;
    background:rgba(255,255,255,.18);
    border:1px solid rgba(255,255,255,.26);
    border-radius:999px;
    padding:6px 12px;
    font-weight:800;
}
.mmp-profile-hero h2{
    color:#fff;
    margin:12px 0 8px;
    font-size:34px;
}
.mmp-profile-hero p{
    margin:0;
    color:rgba(255,255,255,.84);
    line-height:1.8;
}
.mmp-profile-data-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.mmp-profile-data-grid > div{
    background:#f8fafc;
    border:1px solid #edf0f4;
    border-radius:16px;
    padding:16px;
}
.mmp-profile-data-grid strong{
    display:block;
    color:#667085;
    font-size:12px;
    margin-bottom:6px;
}
.mmp-profile-data-grid span{
    color:#101828;
    font-weight:700;
}
@media(max-width:760px){
    .mmp-directory-search{flex-direction:column;}
    .mmp-profile-hero{flex-direction:column;text-align:center;}
    .mmp-profile-data-grid{grid-template-columns:1fr;}
}

/* v1.6.1 directory/profile layout refinements */
.mmp-directory-wrap,
.mmp-public-profile{
    max-width:100% !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
}
.mmp-directory-wrap .mmp-front-header,
.mmp-public-profile .mmp-front-header,
.mmp-directory-wrap > .mmp-front-header{
    display:none!important;
}
.mmp-directory-search{
    margin:0 0 22px 0 !important;
}
.mmp-directory-grid{
    width:100%;
}
.mmp-public-profile .mmp-section{
    margin-left:0!important;
    margin-right:0!important;
}
.mmp-profile-top-card{
    display:flex;
    gap:24px;
    align-items:center;
    background:#fff;
    border:1px solid #e6e9ef;
    border-radius:22px;
    padding:26px;
    box-shadow:0 12px 36px rgba(16,24,40,.06);
    margin-bottom:24px;
}
.mmp-profile-top-card h2{
    color:#101828;
    margin:12px 0 8px;
    font-size:34px;
}
.mmp-profile-top-card p{
    margin:0;
    color:#667085;
    line-height:1.8;
}
.mmp-profile-top-card .mmp-profile-badge{
    background:rgba(191,153,44,.12);
    color:var(--mmp-primary-dark);
    border:1px solid rgba(191,153,44,.28);
}
@media(max-width:760px){
    .mmp-profile-top-card{
        flex-direction:column;
        text-align:center;
    }
}

/* v1.8.0 editable member dashboard */
.mmp-member-edit-form .mmp-submit-btn{margin-top:22px}
.mmp-field-full{grid-column:1 / -1}
.mmp-member-dashboard .mmp-success{margin-bottom:22px}
.mmp-member-dashboard .mmp-upload-box{min-height:160px}

/* v1.8.1 member login */
.mmp-login-box{
    max-width:560px;
    margin:30px auto;
    background:#fff;
    border:1px solid #e6e9ef;
    border-radius:24px;
    padding:30px;
    box-shadow:0 14px 38px rgba(16,24,40,.08);
}
.mmp-login-box h3{
    margin:0 0 8px;
    color:#101828;
    font-size:26px;
}
.mmp-login-box p{
    color:#667085;
    margin:0 0 22px;
    line-height:1.7;
}
.mmp-login-box .login-username,
.mmp-login-box .login-password,
.mmp-login-box .login-remember,
.mmp-login-box .login-submit{
    margin-bottom:16px;
}
.mmp-login-box label{
    font-weight:800;
    color:#344054;
}
.mmp-login-box input[type=text],
.mmp-login-box input[type=password]{
    width:100%;
    min-height:46px;
    border:1px solid #d0d5dd;
    border-radius:14px;
    padding:10px 13px;
}
.mmp-login-box input[type=submit]{
    min-height:50px;
    border:0;
    border-radius:16px;
    background:linear-gradient(135deg,var(--mmp-primary-dark),var(--mmp-primary));
    color:#fff;
    font-weight:800;
    padding:10px 24px;
    cursor:pointer;
}
.mmp-login-links{
    margin-top:12px;
}
.mmp-login-links a{
    color:var(--mmp-primary-dark);
    font-weight:800;
}

/* v1.8.6 polished member account UI */
.mmp-login-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}
.mmp-secondary-front-btn,
.mmp-dashboard-logout{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    border-radius:14px;
    border:1px solid rgba(191,153,44,.35);
    color:var(--mmp-primary-dark);
    background:#fff;
    font-weight:800;
    padding:10px 18px;
    text-decoration:none;
    margin-top:12px;
}
.mmp-profile-summary .mmp-dashboard-logout{
    width:100%;
}
.mmp-edit-profile-details{
    padding:0!important;
    overflow:hidden;
}
.mmp-edit-profile-details summary{
    list-style:none;
    cursor:pointer;
    padding:24px 26px;
    font-size:22px;
    font-weight:900;
    color:#101828;
    border-bottom:1px solid #edf0f4;
    position:relative;
}
.mmp-edit-profile-details summary::-webkit-details-marker{
    display:none;
}
.mmp-edit-profile-details summary:after{
    content:"+";
    position:absolute;
    right:26px;
    top:22px;
    width:34px;
    height:34px;
    border-radius:50%;
    background:rgba(191,153,44,.12);
    color:var(--mmp-primary-dark);
    display:flex;
    align-items:center;
    justify-content:center;
}
.mmp-rtl .mmp-edit-profile-details summary:after{
    right:auto;
    left:26px;
}
.mmp-edit-profile-details[open] summary:after{
    content:"−";
}
.mmp-edit-profile-details form{
    padding:24px 26px 28px;
}
.mmp-profile-data-section .mmp-dashboard-data{
    grid-template-columns:repeat(3,minmax(0,1fr));
}
.mmp-profile-data-section .mmp-dashboard-data > div{
    min-height:92px;
}
@media(max-width:1000px){
    .mmp-profile-data-section .mmp-dashboard-data{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
    .mmp-profile-data-section .mmp-dashboard-data{grid-template-columns:1fr;}
}

.mmp-correction-notice{margin-bottom:22px;background:#fffaeb;border-color:#fedf89;color:#93370d;}

.mmp-validation-msg{color:#b42318;font-size:12px;font-weight:700;margin-top:4px;}



/* v2.1.0 validation: red only after user enters wrong value */
.mmp-front-field input.mmp-invalid,
.mmp-front-field textarea.mmp-invalid,
.mmp-front-field select.mmp-invalid{
    border-color:#f04438 !important;
    box-shadow:0 0 0 3px rgba(240,68,56,.10) !important;
}

/* v2.1.1 split name layout */
.mmp-name-split-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    grid-column:1 / -1;
}
@media(max-width:1024px){
    .mmp-name-split-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
    .mmp-name-split-grid{grid-template-columns:1fr;}
}

/* v2.1.3 four-part name layout */
.mmp-name-split-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    grid-column:1 / -1;
}
@media(max-width:1100px){
    .mmp-name-split-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
    .mmp-name-split-grid{grid-template-columns:1fr;}
}


/* v2.4.0 Structured membership form layout */
.mmp-structured-name-block{
    grid-column:1 / -1;
    width:100%;
    margin-bottom:22px;
}
.mmp-name-subsection{margin-bottom:20px;}
.mmp-name-subsection h4{
    font-size:22px;
    font-weight:900;
    color:#101828;
    margin:0 0 14px;
}
.mmp-name-row{
    display:grid;
    gap:14px;
    align-items:end;
}
.mmp-name-row-ar{grid-template-columns:1.05fr 1.25fr 1.25fr 1.25fr; direction:rtl;}
.mmp-name-row-en{grid-template-columns:repeat(3,1fr); direction:ltr;}
.mmp-name-cell label{
    display:block;
    font-size:16px;
    font-weight:800;
    color:#344054;
    margin-bottom:8px;
}
.mmp-name-cell em{color:#dc3d25;font-style:normal;}
.mmp-name-cell input,
.mmp-name-cell select{
    width:100%;
    min-height:54px;
    border:1px solid #d0d5dd;
    border-radius:12px;
    background:#fff;
    padding:0 16px;
    font-size:16px;
}
.mmp-name-row-ar .mmp-name-cell{text-align:right;}
.mmp-name-row-ar .mmp-name-cell input{direction:rtl;text-align:right;}
.mmp-name-row-en .mmp-name-cell{text-align:left;}
.mmp-name-row-en .mmp-name-cell input{direction:ltr;text-align:left;}
.mmp-fixed-application-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px 22px!important;
}
.mmp-fixed-application-grid .mmp-field-type-textarea,
.mmp-fixed-application-grid .mmp-field-type-address,
.mmp-fixed-application-grid .mmp-field-type-repeater,
.mmp-fixed-application-grid .mmp-field-type-file,
.mmp-fixed-application-grid .mmp-field-type-image,
.mmp-fixed-application-grid .mmp-field-type-consent{
    grid-column:1 / -1;
}
.mmp-field-key-work_phone input,
.mmp-field-key-home_phone input,
.mmp-field-key-mobile input{
    direction:ltr!important;
    text-align:left!important;
}
@media(max-width:900px){
    .mmp-name-row-ar,.mmp-name-row-en,.mmp-fixed-application-grid{grid-template-columns:1fr!important;}
}

/* v2.4.1 Exact structured form layout */
.mmp-v241-form-shell{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding:28px 30px;
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:18px;
    box-shadow:0 18px 40px rgba(16,24,40,.06);
    color:#101828;
}
.mmp-v241-form-shell h3{
    margin:0 0 26px;
    font-size:24px;
    font-weight:900;
}
.mmp-v241-section{
    margin-bottom:26px;
}
.mmp-v241-section h4{
    margin:0 0 16px;
    font-size:24px;
    font-weight:900;
}
.mmp-v241-name-row{
    display:grid;
    gap:16px;
    align-items:end;
}
.mmp-v241-ar-name{
    grid-template-columns:1fr 1fr 1fr .72fr;
}
.mmp-v241-en-name{
    grid-template-columns:1fr 1fr 1fr;
}
.mmp-v241-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px 28px;
    align-items:start;
}
.mmp-v241-field label{
    display:block;
    margin:0 0 8px;
    color:#344054;
    font-weight:800;
    font-size:18px;
    line-height:1.25;
}
.mmp-v241-required{
    color:#c0392b;
    font-weight:900;
}
.mmp-v241-field input,
.mmp-v241-field select,
.mmp-v241-field textarea{
    width:100%;
    min-height:58px;
    border:1px solid #cfd6df;
    border-radius:12px;
    padding:12px 16px;
    background:#fff;
    color:#101828;
    font-size:17px;
    outline:none;
    box-shadow:none;
}
.mmp-v241-field input[type="date"]{
    appearance:auto !important;
    -webkit-appearance:auto !important;
}
.mmp-v241-field textarea{
    min-height:150px;
    resize:vertical;
}
.mmp-v241-span-2{
    grid-column:1 / -1;
}
.mmp-v241-upload-row{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:28px;
}
.mmp-v241-upload-field .mmp-upload-box{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:150px;
    border:2px dashed #cfd6df;
    border-radius:18px;
    background:#fff;
}
.mmp-v241-rtl{
    direction:rtl;
}
.mmp-v241-ltr{
    direction:ltr;
}
.mmp-v241-rtl .mmp-v241-grid{
    direction:rtl;
}
.mmp-v241-ltr .mmp-v241-grid{
    direction:ltr;
}
.mmp-v241-ar-name{
    direction:rtl !important;
}
.mmp-v241-ar-name .mmp-v241-field,
.mmp-v241-ar-name label,
.mmp-v241-ar-name input{
    direction:rtl !important;
    text-align:right !important;
}
.mmp-v241-en-name,
.mmp-v241-en-name .mmp-v241-field,
.mmp-v241-en-name label,
.mmp-v241-en-name input{
    direction:ltr !important;
    text-align:left !important;
}
.mmp-v241-ltr .mmp-v241-field label,
.mmp-v241-ltr .mmp-v241-field input,
.mmp-v241-ltr .mmp-v241-field select,
.mmp-v241-ltr .mmp-v241-field textarea{
    text-align:left;
    direction:ltr;
}
.mmp-v241-rtl .mmp-v241-field label,
.mmp-v241-rtl .mmp-v241-field input,
.mmp-v241-rtl .mmp-v241-field select,
.mmp-v241-rtl .mmp-v241-field textarea{
    text-align:right;
    direction:rtl;
}
@media(max-width:1000px){
    .mmp-v241-grid,
    .mmp-v241-upload-row{
        grid-template-columns:1fr;
    }
    .mmp-v241-ar-name,
    .mmp-v241-en-name{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .mmp-v241-form-shell{
        padding:20px 16px;
    }
    .mmp-v241-ar-name,
    .mmp-v241-en-name{
        grid-template-columns:1fr;
    }
}


/* v2.4.2 Reference-style structured application form */
.mmp-v241-form-shell{
    max-width:1500px !important;
    padding:28px 30px !important;
    border-radius:18px !important;
    border:1px solid #e7ebf0 !important;
    box-shadow:0 16px 42px rgba(16,24,40,.05) !important;
}
.mmp-v241-form-shell h3{
    font-size:22px !important;
    margin-bottom:28px !important;
}
.mmp-v241-section h4{
    font-size:24px !important;
    margin-bottom:18px !important;
}
.mmp-v241-field label{
    font-size:16px !important;
    font-weight:700 !important;
    color:#344054 !important;
    margin-bottom:8px !important;
}
.mmp-v241-field input,
.mmp-v241-field select,
.mmp-v241-field textarea{
    background:#fff !important;
    min-height:50px !important;
    border:1px solid #d0d5dd !important;
    border-radius:8px !important;
    padding:10px 14px !important;
    font-size:16px !important;
    color:#101828 !important;
}
.mmp-v241-field input:focus,
.mmp-v241-field select:focus,
.mmp-v241-field textarea:focus{
    border-color:#bf992c !important;
    box-shadow:0 0 0 3px rgba(191,153,44,.12) !important;
}
.mmp-v241-name-row{
    gap:14px !important;
    align-items:end !important;
    width:100% !important;
}
.mmp-v241-ar-name{
    grid-template-columns:.75fr 1fr 1fr 1fr !important;
}
.mmp-v241-ar-row-ltr,
.mmp-v241-ar-row-ltr .mmp-v241-field,
.mmp-v241-ar-row-ltr label,
.mmp-v241-ar-row-ltr input,
.mmp-v241-ar-row-ltr select{
    direction:ltr !important;
    text-align:left !important;
}
.mmp-v241-ar-row-rtl,
.mmp-v241-ar-row-rtl .mmp-v241-field,
.mmp-v241-ar-row-rtl label,
.mmp-v241-ar-row-rtl input,
.mmp-v241-ar-row-rtl select{
    direction:rtl !important;
    text-align:right !important;
}
.mmp-v241-en-name{
    grid-template-columns:1fr 1fr 1fr !important;
    direction:ltr !important;
}
.mmp-v241-en-name .mmp-v241-field,
.mmp-v241-en-name label,
.mmp-v241-en-name input{
    direction:ltr !important;
    text-align:left !important;
}
.mmp-v241-grid{
    grid-template-columns:1fr 1fr !important;
    gap:20px 28px !important;
}
.mmp-v241-rtl .mmp-v241-grid{
    direction:rtl !important;
}
.mmp-v241-ltr .mmp-v241-grid{
    direction:ltr !important;
}
.mmp-v241-field input[type="date"]{
    cursor:pointer !important;
    color:#667085 !important;
    background:#fff !important;
    min-height:54px !important;
}
.mmp-v241-field input[type="date"]::-webkit-calendar-picker-indicator{
    cursor:pointer !important;
    opacity:1 !important;
    width:22px !important;
    height:22px !important;
}
.mmp-v241-upload-row{
    grid-template-columns:1fr 1fr !important;
    gap:28px !important;
}
.mmp-v241-upload-field .mmp-upload-box{
    border:2px dashed #d0d5dd !important;
    background:#fff !important;
    border-radius:12px !important;
}
@media(max-width:1100px){
    .mmp-v241-ar-name,
    .mmp-v241-en-name,
    .mmp-v241-grid,
    .mmp-v241-upload-row{
        grid-template-columns:1fr 1fr !important;
    }
}
@media(max-width:640px){
    .mmp-v241-ar-name,
    .mmp-v241-en-name,
    .mmp-v241-grid,
    .mmp-v241-upload-row{
        grid-template-columns:1fr !important;
    }
}


/* v2.4.3 TRUE horizontal reference layout - overrides older vertical/grid rules */
.mmp-application-form .mmp-section{
    width:100% !important;
}
.mmp-application-form .mmp-section > h3{
    font-size:22px !important;
    font-weight:900 !important;
    margin:0 0 22px !important;
}

/* Structured name rows */
.mmp-structured-name-block{
    width:100% !important;
    margin:0 0 22px !important;
}
.mmp-structured-name-block .mmp-name-subsection{
    margin:0 0 22px !important;
}
.mmp-structured-name-block .mmp-name-subsection h4{
    font-size:22px !important;
    line-height:1.2 !important;
    font-weight:900 !important;
    margin:0 0 14px !important;
}
.mmp-name-row{
    display:grid !important;
    gap:14px !important;
    align-items:end !important;
    width:100% !important;
}
.mmp-name-row-ar{
    grid-template-columns:.75fr 1fr 1fr 1fr !important;
}
.mmp-name-row-en{
    grid-template-columns:1fr 1fr 1fr !important;
    direction:ltr !important;
}
.mmp-name-cell{
    min-width:0 !important;
    width:100% !important;
}
.mmp-name-cell label,
.mmp-front-field label{
    display:block !important;
    margin:0 0 7px !important;
    font-size:16px !important;
    font-weight:800 !important;
    line-height:1.25 !important;
    color:#344054 !important;
}
.mmp-name-cell label em,
.mmp-front-field label em{
    color:#c0392b !important;
    font-style:normal !important;
    font-weight:900 !important;
}
.mmp-name-cell input,
.mmp-name-cell select,
.mmp-front-field input,
.mmp-front-field select,
.mmp-front-field textarea{
    width:100% !important;
    max-width:100% !important;
    min-height:52px !important;
    padding:10px 14px !important;
    border:1px solid #d0d5dd !important;
    border-radius:8px !important;
    background:#fff !important;
    color:#101828 !important;
    font-size:16px !important;
    box-shadow:0 1px 2px rgba(16,24,40,.04) !important;
    outline:none !important;
}
.mmp-name-cell input:focus,
.mmp-name-cell select:focus,
.mmp-front-field input:focus,
.mmp-front-field select:focus,
.mmp-front-field textarea:focus{
    border-color:#bf992c !important;
    box-shadow:0 0 0 3px rgba(191,153,44,.13) !important;
}

/* English page: EVERYTHING starts from the left, including Arabic-name section */
.mmp-ltr .mmp-name-page-en,
.mmp-ltr .mmp-name-page-en .mmp-name-ar-subsection,
.mmp-ltr .mmp-name-page-en .mmp-name-row-ar,
.mmp-ltr .mmp-name-page-en .mmp-name-cell,
.mmp-ltr .mmp-name-page-en .mmp-name-cell label,
.mmp-ltr .mmp-name-page-en .mmp-name-cell input,
.mmp-ltr .mmp-name-page-en .mmp-name-cell select{
    direction:ltr !important;
    text-align:left !important;
}
.mmp-ltr .mmp-name-page-en .mmp-name-row-ar{
    grid-template-columns:.72fr 1fr 1fr 1fr !important;
}

/* Arabic page: Arabic block starts from right */
.mmp-rtl .mmp-name-page-ar .mmp-name-ar-subsection,
.mmp-rtl .mmp-name-page-ar .mmp-name-row-ar,
.mmp-rtl .mmp-name-page-ar .mmp-name-cell,
.mmp-rtl .mmp-name-page-ar .mmp-name-cell label,
.mmp-rtl .mmp-name-page-ar .mmp-name-cell input,
.mmp-rtl .mmp-name-page-ar .mmp-name-cell select{
    direction:rtl !important;
    text-align:right !important;
}
/* English name stays LTR in both languages */
.mmp-name-en-subsection,
.mmp-name-row-en,
.mmp-name-row-en .mmp-name-cell,
.mmp-name-row-en label,
.mmp-name-row-en input{
    direction:ltr !important;
    text-align:left !important;
}

/* Main fields: four-column horizontal rows, not long vertical stacking */
.mmp-frontend-grid.mmp-fixed-application-grid,
.mmp-fixed-application-grid{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
    gap:18px 18px !important;
    align-items:end !important;
    width:100% !important;
}
.mmp-front-field{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
}
/* field widths to mimic the reference form */
.mmp-field-key-email{grid-column:span 2 !important;}
.mmp-field-key-graduation_country{grid-column:span 1 !important;}
.mmp-field-key-specialty_certificate{grid-column:span 1 !important;}
.mmp-field-key-specialty_country{grid-column:span 1 !important;}
.mmp-field-key-specialty_place{grid-column:span 1 !important;}
.mmp-field-key-graduation_date{grid-column:span 1 !important;}
.mmp-field-key-training_from{grid-column:span 1 !important;}
.mmp-field-key-training_to{grid-column:span 1 !important;}
.mmp-field-key-current_workplace{grid-column:span 1 !important;}
.mmp-field-key-work_phone,
.mmp-field-key-home_phone,
.mmp-field-key-mobile{grid-column:span 1 !important;}
.mmp-field-key-permanent_address,
.mmp-field-key-address,
.mmp-field-key-doctor_bio,
.mmp-field-key-bio{grid-column:1 / -1 !important;}
.mmp-field-key-references{grid-column:1 / -1 !important;}
.mmp-field-key-profile_photo,
.mmp-field-key-cv_files,
.mmp-field-key-cv,
.mmp-field-key-files{grid-column:span 2 !important;}

.mmp-front-field textarea{
    min-height:120px !important;
    resize:vertical !important;
}
.mmp-front-field input[type="date"]{
    appearance:auto !important;
    -webkit-appearance:auto !important;
    cursor:pointer !important;
    color:#475467 !important;
}
.mmp-front-field input[type="date"]::-webkit-calendar-picker-indicator{
    opacity:1 !important;
    cursor:pointer !important;
    width:22px !important;
    height:22px !important;
}

/* RTL/LTR for labels and fields */
.mmp-ltr .mmp-fixed-application-grid,
.mmp-ltr .mmp-front-field,
.mmp-ltr .mmp-front-field label,
.mmp-ltr .mmp-front-field input,
.mmp-ltr .mmp-front-field select,
.mmp-ltr .mmp-front-field textarea{
    direction:ltr !important;
    text-align:left !important;
}
.mmp-rtl .mmp-fixed-application-grid,
.mmp-rtl .mmp-front-field,
.mmp-rtl .mmp-front-field label,
.mmp-rtl .mmp-front-field input,
.mmp-rtl .mmp-front-field select,
.mmp-rtl .mmp-front-field textarea{
    direction:rtl !important;
    text-align:right !important;
}

@media(max-width:1200px){
    .mmp-frontend-grid.mmp-fixed-application-grid,
    .mmp-fixed-application-grid{grid-template-columns:repeat(2, minmax(0,1fr)) !important;}
    .mmp-name-row-ar{grid-template-columns:1fr 1fr !important;}
    .mmp-name-row-en{grid-template-columns:1fr 1fr !important;}
    .mmp-field-key-email,
    .mmp-field-key-profile_photo,
    .mmp-field-key-cv_files,
    .mmp-field-key-cv,
    .mmp-field-key-files{grid-column:span 1 !important;}
}
@media(max-width:640px){
    .mmp-frontend-grid.mmp-fixed-application-grid,
    .mmp-fixed-application-grid,
    .mmp-name-row-ar,
    .mmp-name-row-en{grid-template-columns:1fr !important;}
}


/* v2.4.4 final horizontal layout fixes */
.mmp-v241-form-shell{max-width:1500px!important;width:100%!important;}
.mmp-v241-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px 22px!important;align-items:end!important;}
.mmp-v241-grid>.mmp-v241-field{min-width:0!important;}
.mmp-v241-grid>.mmp-v241-span-2,.mmp-v241-grid>.mmp-v241-field:has(textarea){grid-column:1/-1!important;}
.mmp-v241-field:has(input[name="work_phone"]),.mmp-v241-field:has(input[name="home_phone"]),.mmp-v241-field:has(input[name="mobile"]){grid-column:auto!important;}
.mmp-v241-field:has(input[name="graduation_date"]),.mmp-v241-field:has(input[name="training_from"]),.mmp-v241-field:has(input[name="training_to"]){grid-column:auto!important;}
.mmp-v241-field input[type="date"]{display:block!important;width:100%!important;min-height:54px!important;line-height:54px!important;padding:0 14px!important;background:#fff!important;color:#475467!important;border:1px solid #d0d5dd!important;border-radius:8px!important;appearance:auto!important;-webkit-appearance:auto!important;}
.mmp-v241-field input[type="date"]::-webkit-calendar-picker-indicator{display:block!important;cursor:pointer!important;opacity:1!important;width:22px!important;height:22px!important;}
.mmp-v241-upload-row,.mmp-v241-grid>.mmp-v241-upload-row{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px!important;align-items:stretch!important;}
.mmp-v241-upload-field{width:100%!important;}
.mmp-v241-upload-field .mmp-upload-box,.mmp-upload-box{min-height:160px!important;width:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:24px!important;text-align:center!important;border:2px dashed #cfd6df!important;border-radius:16px!important;background:#fff!important;}
.mmp-upload-box strong,.mmp-upload-box small,.mmp-upload-box em{display:block!important;margin:0!important;}
.mmp-v241-field:has(input[type="checkbox"]),.mmp-consent,.mmp-v241-consent{grid-column:1/-1!important;}
.mmp-consent,.mmp-v241-consent,.mmp-v241-field label.mmp-consent{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:12px!important;border:1px solid #eadca8!important;background:#fffdf5!important;border-radius:12px!important;padding:16px 18px!important;font-size:16px!important;font-weight:700!important;line-height:1.7!important;}
.mmp-consent input[type="checkbox"],.mmp-v241-consent input[type="checkbox"],.mmp-v241-field input[type="checkbox"]{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;margin:4px 0 0!important;padding:0!important;transform:none!important;appearance:auto!important;-webkit-appearance:auto!important;accent-color:#bf992c!important;box-shadow:none!important;}
.mmp-v241-ltr,.mmp-v241-ltr .mmp-v241-grid,.mmp-v241-ltr .mmp-v241-ar-name,.mmp-v241-ltr .mmp-v241-en-name{direction:ltr!important;}
.mmp-v241-ltr .mmp-v241-field,.mmp-v241-ltr .mmp-v241-field label,.mmp-v241-ltr .mmp-v241-field input,.mmp-v241-ltr .mmp-v241-field select,.mmp-v241-ltr .mmp-v241-field textarea{text-align:left!important;direction:ltr!important;}
.mmp-v241-rtl,.mmp-v241-rtl .mmp-v241-grid,.mmp-v241-rtl .mmp-v241-ar-name{direction:rtl!important;}
.mmp-v241-rtl .mmp-v241-field,.mmp-v241-rtl .mmp-v241-field label,.mmp-v241-rtl .mmp-v241-field input,.mmp-v241-rtl .mmp-v241-field select,.mmp-v241-rtl .mmp-v241-field textarea{text-align:right!important;direction:rtl!important;}
.mmp-v241-en-name,.mmp-v241-en-name .mmp-v241-field,.mmp-v241-en-name label,.mmp-v241-en-name input{direction:ltr!important;text-align:left!important;}
.mmp-v241-ar-name{display:grid!important;grid-template-columns:.75fr 1fr 1fr 1fr!important;gap:16px!important;}
.mmp-v241-en-name{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;}
@media(max-width:1200px){.mmp-v241-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:760px){.mmp-v241-grid,.mmp-v241-upload-row,.mmp-v241-grid>.mmp-v241-upload-row,.mmp-v241-ar-name,.mmp-v241-en-name{grid-template-columns:1fr!important;}}


/* v2.4.5 uploads side-by-side + final title naming */
.mmp-v241-upload-row,
.mmp-v241-grid > .mmp-v241-upload-row{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:28px !important;
    align-items:stretch !important;
}

/* If upload fields are not wrapped in upload-row, force profile + CV upload to share one row */
.mmp-v241-field:has(input[name="profile_photo"]),
.mmp-v241-field:has(input[name="cv_files"]),
.mmp-v241-field:has(input[name="profile_image"]),
.mmp-v241-field:has(input[name="doctor_photo"]),
.mmp-v241-field:has(input[name="cv"]),
.mmp-v241-field:has(input[name="files"]){
    grid-column:auto !important;
}

.mmp-v241-field:has(input[type="file"]){
    min-width:0 !important;
}

.mmp-v241-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.mmp-v241-upload-field .mmp-upload-box,
.mmp-v241-field .mmp-upload-box,
.mmp-upload-box{
    width:100% !important;
    min-height:170px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    gap:8px !important;
    padding:24px !important;
    box-sizing:border-box !important;
}

@media(min-width:900px){
    .mmp-v241-field:has(input[name="profile_photo"]),
    .mmp-v241-field:has(input[name="profile_image"]),
    .mmp-v241-field:has(input[name="doctor_photo"]){
        grid-column:1 / span 2 !important;
    }
    .mmp-v241-field:has(input[name="cv_files"]),
    .mmp-v241-field:has(input[name="cv"]),
    .mmp-v241-field:has(input[name="files"]){
        grid-column:3 / span 2 !important;
    }
}

@media(max-width:899px){
    .mmp-v241-upload-row,
    .mmp-v241-grid > .mmp-v241-upload-row{
        grid-template-columns:1fr !important;
    }
    .mmp-v241-field:has(input[type="file"]){
        grid-column:1 / -1 !important;
    }
}


/* v2.4.6 force Profile Photo and CV / Files Upload side-by-side */
@media (min-width: 900px) {
    .mmp-v241-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }

    .mmp-v241-grid > .mmp-v241-field:has(input[type="file"]) {
        grid-column: span 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .mmp-v241-grid > .mmp-v241-field:has(input[name="profile_photo"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="profile_image"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="doctor_photo"]) {
        grid-column: 1 / span 2 !important;
    }

    .mmp-v241-grid > .mmp-v241-field:has(input[name="cv_files"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="cv"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="files"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="attachments"]) {
        grid-column: 3 / span 2 !important;
    }

    .mmp-v246-upload-row,
    .mmp-v241-upload-row,
    .mmp-v241-grid > .mmp-v241-upload-row,
    .mmp-upload-row,
    .mmp-file-upload-row {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 28px !important;
        align-items: stretch !important;
    }

    .mmp-v246-upload-row > *,
    .mmp-v241-upload-row > *,
    .mmp-upload-row > *,
    .mmp-file-upload-row > * {
        width: 100% !important;
        min-width: 0 !important;
    }
}

.mmp-v241-field:has(input[type="file"]) .mmp-upload-box,
.mmp-v241-upload-field .mmp-upload-box,
.mmp-upload-box {
    width: 100% !important;
    min-height: 180px !important;
    box-sizing: border-box !important;
}

@media (max-width: 899px) {
    .mmp-v241-grid > .mmp-v241-field:has(input[type="file"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="profile_photo"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="cv_files"]) {
        grid-column: 1 / -1 !important;
    }
}


/* v2.4.7 wider form and equal upload boxes side-by-side */
.mmp-v241-form-shell,
.mmp-application-form,
.mmp-form-shell,
.mmp-membership-form,
.mmp-public-form {
    max-width: 1500px !important;
    width: 100% !important;
}

/* Force the parent grid to be wide enough */
.mmp-v241-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

/* JavaScript fallback wrapper */
.mmp-v247-upload-row {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
    width: 100% !important;
    align-items: stretch !important;
}

/* Force both upload fields to equal half width when wrapper exists */
.mmp-v247-upload-row > .mmp-v241-field,
.mmp-v247-upload-row > .mmp-v241-upload-field,
.mmp-v247-upload-row > div {
    width: 100% !important;
    min-width: 0 !important;
}

/* CSS-only fallback for upload fields */
@media (min-width: 900px) {
    .mmp-v241-grid > .mmp-v241-field:has(input[type="file"]),
    .mmp-v241-grid > .mmp-v241-upload-field:has(input[type="file"]) {
        grid-column: span 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .mmp-v241-grid > .mmp-v241-field:has(input[name="profile_photo"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="profile_image"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="doctor_photo"]) {
        grid-column: 1 / span 2 !important;
    }

    .mmp-v241-grid > .mmp-v241-field:has(input[name="cv_files"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="cv"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="files"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="attachments"]) {
        grid-column: 3 / span 2 !important;
    }
}

/* Make CV box same size as Profile Photo box */
.mmp-v247-upload-row .mmp-upload-box,
.mmp-v241-field:has(input[type="file"]) .mmp-upload-box,
.mmp-v241-upload-field .mmp-upload-box,
.mmp-upload-box {
    width: 100% !important;
    max-width: none !important;
    min-height: 180px !important;
    height: 180px !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 22px !important;
}

/* Prevent the CV upload from stretching full row */
.mmp-v241-field:has(input[name="cv_files"]) .mmp-upload-box,
.mmp-v241-field:has(input[name="cv"]) .mmp-upload-box,
.mmp-v241-field:has(input[name="files"]) .mmp-upload-box,
.mmp-v241-field:has(input[name="attachments"]) .mmp-upload-box {
    max-width: none !important;
}

/* Mobile: stack them */
@media (max-width: 899px) {
    .mmp-v247-upload-row {
        grid-template-columns: 1fr !important;
    }
    .mmp-v241-grid > .mmp-v241-field:has(input[type="file"]) {
        grid-column: 1 / -1 !important;
    }
}


/* v2.4.8 real upload-row layout */
.mmp-v248-upload-row{
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
    width: 100% !important;
    align-items: stretch !important;
    margin: 0 !important;
}
.mmp-v248-upload-row > *{
    width: 100% !important;
    min-width: 0 !important;
    grid-column: auto !important;
}
.mmp-v248-upload-row .mmp-v241-field,
.mmp-v248-upload-row .mmp-v241-upload-field{
    grid-column: auto !important;
}
.mmp-v248-upload-row .mmp-upload-box{
    width: 100% !important;
    max-width: none !important;
    height: 180px !important;
    min-height: 180px !important;
    box-sizing: border-box !important;
}
@media(max-width:899px){
    .mmp-v248-upload-row{
        grid-template-columns: 1fr !important;
    }
}


/* v2.4.9 actual upload row fix */
.mmp-v249-upload-row{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:28px !important;
    width:100% !important;
    align-items:stretch !important;
    margin:0 !important;
}
.mmp-v249-upload-row > .mmp-v241-field,
.mmp-v249-upload-row > .mmp-v241-upload-field{
    width:100% !important;
    min-width:0 !important;
    grid-column:auto !important;
}
.mmp-v249-upload-row .mmp-upload-box{
    width:100% !important;
    max-width:none !important;
    min-height:180px !important;
    height:180px !important;
    box-sizing:border-box !important;
}
@media(max-width:899px){
    .mmp-v249-upload-row{
        grid-template-columns:1fr !important;
    }
}


/* v2.5.0 clean real upload row */
.mmp-v250-upload-row{
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
    width: 100% !important;
    align-items: stretch !important;
    margin: 0 0 20px 0 !important;
}

.mmp-v250-upload-row > .mmp-v241-field,
.mmp-v250-upload-row > .mmp-v241-upload-field{
    grid-column: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.mmp-v250-upload-row .mmp-upload-box{
    width: 100% !important;
    max-width: none !important;
    height: 185px !important;
    min-height: 185px !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

@media(max-width:899px){
    .mmp-v250-upload-row{
        grid-template-columns: 1fr !important;
    }
}


/* v2.5.1 exact real upload field keys fix */
/* The real CV field key is cv_upload, not cv_files. */
@media (min-width: 900px) {
    .mmp-application-wrap {
        max-width: 1450px !important;
    }

    .mmp-frontend-grid.mmp-fixed-application-grid,
    .mmp-fixed-application-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        align-items: stretch !important;
    }

    .mmp-fixed-application-grid .mmp-field-key-profile_photo,
    .mmp-fixed-application-grid .mmp-field-key-cv_upload {
        grid-column: span 1 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .mmp-fixed-application-grid .mmp-field-key-profile_photo .mmp-upload-box,
    .mmp-fixed-application-grid .mmp-field-key-cv_upload .mmp-upload-box {
        width: 100% !important;
        max-width: none !important;
        height: 185px !important;
        min-height: 185px !important;
        box-sizing: border-box !important;
    }
}

/* Keep them stacked only on mobile */
@media (max-width: 899px) {
    .mmp-fixed-application-grid .mmp-field-key-profile_photo,
    .mmp-fixed-application-grid .mmp-field-key-cv_upload {
        grid-column: 1 / -1 !important;
    }
}


/* v2.5.2 dates in one horizontal row */
@media (min-width: 1000px) {
    .mmp-fixed-application-grid,
    .mmp-frontend-grid.mmp-fixed-application-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    }

    .mmp-fixed-application-grid .mmp-field-key-graduation_date,
    .mmp-fixed-application-grid .mmp-field-key-training_from,
    .mmp-fixed-application-grid .mmp-field-key-training_to {
        grid-column: span 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .mmp-fixed-application-grid .mmp-field-key-graduation_date input,
    .mmp-fixed-application-grid .mmp-field-key-training_from input,
    .mmp-fixed-application-grid .mmp-field-key-training_to input {
        width: 100% !important;
    }
}

/* fallback if classes are not available but input names exist */
@media (min-width: 1000px) {
    .mmp-v241-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    }

    .mmp-v241-grid > .mmp-v241-field:has(input[name="graduation_date"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="training_from"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="training_to"]) {
        grid-column: span 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }
}

@media (max-width: 999px) {
    .mmp-fixed-application-grid .mmp-field-key-graduation_date,
    .mmp-fixed-application-grid .mmp-field-key-training_from,
    .mmp-fixed-application-grid .mmp-field-key-training_to {
        grid-column: 1 / -1 !important;
    }
}


/* v2.5.3 larger upload buttons + name validation visual */
@media (min-width: 900px) {
    .mmp-v250-upload-row,
    .mmp-v249-upload-row,
    .mmp-v247-upload-row,
    .mmp-v246-upload-row,
    .mmp-v241-upload-row {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 28px !important;
        width: 100% !important;
    }

    .mmp-v250-upload-row > *,
    .mmp-v249-upload-row > *,
    .mmp-v247-upload-row > *,
    .mmp-v246-upload-row > *,
    .mmp-v241-upload-row > * {
        width: 100% !important;
        min-width: 0 !important;
    }

    .mmp-v250-upload-row .mmp-upload-box,
    .mmp-v249-upload-row .mmp-upload-box,
    .mmp-v247-upload-row .mmp-upload-box,
    .mmp-v246-upload-row .mmp-upload-box,
    .mmp-v241-upload-row .mmp-upload-box,
    .mmp-field-key-profile_photo .mmp-upload-box,
    .mmp-field-key-cv_upload .mmp-upload-box {
        width: 100% !important;
        max-width: none !important;
        min-height: 220px !important;
        height: 220px !important;
        padding: 32px !important;
        box-sizing: border-box !important;
    }

    .mmp-field-key-profile_photo,
    .mmp-field-key-cv_upload {
        width: 100% !important;
    }
}

.mmp-name-invalid,
input.mmp-name-invalid {
    border-color: #c0392b !important;
    box-shadow: 0 0 0 3px rgba(192, 57, 43, .12) !important;
}

.mmp-name-error {
    display: block;
    margin-top: 7px;
    color: #a93226;
    font-size: 14px;
    font-weight: 700;
}

@media (max-width: 899px) {
    .mmp-v250-upload-row,
    .mmp-v249-upload-row,
    .mmp-v247-upload-row,
    .mmp-v246-upload-row,
    .mmp-v241-upload-row {
        grid-template-columns: 1fr !important;
    }
}


/* v2.5.4 upload boxes wider and balanced */
@media (min-width: 900px) {
    .mmp-v250-upload-row,
    .mmp-v249-upload-row,
    .mmp-v247-upload-row,
    .mmp-v246-upload-row,
    .mmp-v241-upload-row,
    .mmp-v248-upload-row,
    .mmp-v249-upload-row,
    .mmp-v250-upload-row {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px !important;
        width: 100% !important;
        max-width: none !important;
        align-items: stretch !important;
    }

    .mmp-v250-upload-row > *,
    .mmp-v249-upload-row > *,
    .mmp-v248-upload-row > *,
    .mmp-v247-upload-row > *,
    .mmp-v246-upload-row > *,
    .mmp-v241-upload-row > * {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    .mmp-field-key-profile_photo,
    .mmp-field-key-cv_upload {
        width: 100% !important;
        max-width: none !important;
    }

    .mmp-field-key-profile_photo .mmp-upload-box,
    .mmp-field-key-cv_upload .mmp-upload-box,
    .mmp-v250-upload-row .mmp-upload-box,
    .mmp-v249-upload-row .mmp-upload-box,
    .mmp-v248-upload-row .mmp-upload-box,
    .mmp-v247-upload-row .mmp-upload-box,
    .mmp-v246-upload-row .mmp-upload-box,
    .mmp-v241-upload-row .mmp-upload-box {
        width: 100% !important;
        max-width: none !important;
        min-height: 240px !important;
        height: 240px !important;
        padding: 36px !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        text-align: center !important;
    }

    .mmp-field-key-profile_photo .mmp-upload-box strong,
    .mmp-field-key-cv_upload .mmp-upload-box strong,
    .mmp-v250-upload-row .mmp-upload-box strong,
    .mmp-v249-upload-row .mmp-upload-box strong,
    .mmp-v248-upload-row .mmp-upload-box strong,
    .mmp-v247-upload-row .mmp-upload-box strong,
    .mmp-v246-upload-row .mmp-upload-box strong,
    .mmp-v241-upload-row .mmp-upload-box strong {
        font-size: 22px !important;
        line-height: 1.25 !important;
    }

    .mmp-field-key-profile_photo .mmp-upload-box small,
    .mmp-field-key-cv_upload .mmp-upload-box small,
    .mmp-v250-upload-row .mmp-upload-box small,
    .mmp-v249-upload-row .mmp-upload-box small,
    .mmp-v248-upload-row .mmp-upload-box small,
    .mmp-v247-upload-row .mmp-upload-box small,
    .mmp-v246-upload-row .mmp-upload-box small,
    .mmp-v241-upload-row .mmp-upload-box small {
        font-size: 16px !important;
        line-height: 1.35 !important;
    }
}

/* JS-created wrapper */
@media (min-width: 900px) {
    .mmp-v254-upload-row {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px !important;
        width: 100% !important;
    }

    .mmp-v254-upload-row > * {
        width: 100% !important;
        max-width: none !important;
    }

    .mmp-v254-upload-row .mmp-upload-box {
        width: 100% !important;
        max-width: none !important;
        height: 240px !important;
        min-height: 240px !important;
    }
}

@media (max-width: 899px) {
    .mmp-v254-upload-row {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
}


/* v2.5.7 SAFE workplace + phone sizing without breaking main grid */
/* This does NOT change the main form grid globally. It only targets the four fields. */

@media (min-width: 1000px) {
    .mmp-fixed-application-grid .mmp-field-key-current_workplace,
    .mmp-v241-grid > .mmp-v241-field:has(input[name="current_workplace"]) {
        grid-column: span 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .mmp-fixed-application-grid .mmp-field-key-work_phone,
    .mmp-fixed-application-grid .mmp-field-key-home_phone,
    .mmp-fixed-application-grid .mmp-field-key-mobile,
    .mmp-v241-grid > .mmp-v241-field:has(input[name="work_phone"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="home_phone"]),
    .mmp-v241-grid > .mmp-v241-field:has(input[name="mobile"]) {
        grid-column: span 1 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .mmp-fixed-application-grid .mmp-field-key-current_workplace input,
    .mmp-fixed-application-grid .mmp-field-key-work_phone input,
    .mmp-fixed-application-grid .mmp-field-key-home_phone input,
    .mmp-fixed-application-grid .mmp-field-key-mobile input,
    .mmp-v241-grid input[name="current_workplace"],
    .mmp-v241-grid input[name="work_phone"],
    .mmp-v241-grid input[name="home_phone"],
    .mmp-v241-grid input[name="mobile"] {
        width: 100% !important;
        box-sizing: border-box !important;
        min-height: 60px !important;
    }
}

/* Keep existing good upload layout from v2.5.4 */
@media (min-width: 900px) {
    .mmp-v254-upload-row,
    .mmp-v250-upload-row,
    .mmp-v249-upload-row,
    .mmp-v248-upload-row,
    .mmp-v247-upload-row,
    .mmp-v246-upload-row,
    .mmp-v241-upload-row {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px !important;
        width: 100% !important;
        max-width: none !important;
    }
}


/* v2.7.3 member media display */
.mmp-dashboard-photo {
    width: 120px !important;
    height: 120px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    display: block !important;
    margin: 0 auto 18px !important;
    border: 3px solid #e8d99c !important;
}
.mmp-dashboard-files {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 18px;
}
.mmp-dashboard-data span,
.mmp-dashboard-data div {
    overflow-wrap: anywhere;
    word-break: break-word;
}


/* v2.7.4 password setup and profile photo improvements */
.mmp-password-wrap {
    position: relative;
    display: block;
}

.mmp-password-wrap input[type="password"],
.mmp-password-wrap input[type="text"] {
    width: 100%;
    padding-inline-end: 58px !important;
}

.mmp-password-toggle {
    position: absolute;
    top: 50%;
    inset-inline-end: 12px;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 12px;
    background: #f4f0df;
    color: #7a641e;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
}

.mmp-password-toggle:hover,
.mmp-password-toggle.is-visible {
    background: #e6d68f;
}

.mmp-reset-error,
.mmp-client-error {
    margin: 16px 0 18px;
    border: 1px solid #f1b6b6;
    background: #fff5f5;
    color: #9b1c1c;
    border-radius: 14px;
    padding: 14px 16px;
    font-weight: 700;
}

/* Make profile image square and larger instead of circular crop */
.mmp-dashboard-photo,
.mmp-doctor-profile-photo img,
.mmp-doctor-card-photo img,
.mmp-member-profile-photo img,
.mmp-profile-photo img {
    width: 190px !important;
    height: 230px !important;
    border-radius: 18px !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
    border: 3px solid #e8d99c !important;
    background: #f8fafc !important;
}

.mmp-dashboard-card .mmp-dashboard-photo,
.mmp-member-sidebar .mmp-dashboard-photo {
    margin: 0 auto 18px !important;
}


/* v2.7.5 login password toggle and clean commitment */
.mmp-member-login-form .mmp-password-wrap {
    position: relative;
    display: block;
}
.mmp-member-login-form .mmp-password-wrap input {
    padding-inline-end: 58px !important;
}
.mmp-login-error {
    margin: 16px 0;
}
.mmp-dashboard-commitment {
    margin: 18px 0;
}

/* v2.7.7 clean terms/commitment layout */
.mmp-v277-terms-row,
.mmp-profile-data-grid.mmp-v277-terms-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    margin: 18px 0 !important;
}
.mmp-v277-terms-row > div {
    background: #f8fafc !important;
    border: 1px solid #e7edf3 !important;
    border-radius: 16px !important;
    padding: 18px 20px !important;
}
@media (max-width: 767px) {
    .mmp-v277-terms-row,
    .mmp-profile-data-grid.mmp-v277-terms-row { grid-template-columns: 1fr !important; }
}


/* v2.7.8 member dashboard upload boxes side-by-side */
.mmp-v278-upload-pair {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px !important;
    align-items: stretch !important;
    margin: 22px 0 28px !important;
}

.mmp-v278-upload-pair > * {
    width: 100% !important;
    margin: 0 !important;
}

.mmp-v278-upload-pair label,
.mmp-v278-upload-pair .mmp-field-label {
    display: block !important;
    margin-bottom: 12px !important;
}

.mmp-v278-upload-pair .mmp-file-drop,
.mmp-v278-upload-pair .mmp-upload-box,
.mmp-v278-upload-pair .mmp-upload-area,
.mmp-v278-upload-pair [class*="upload"],
.mmp-v278-upload-pair [class*="file"] {
    max-width: none !important;
}

.mmp-v278-upload-pair input[type="file"] {
    width: 100% !important;
}

.mmp-v278-upload-pair > *:has(input[type="file"]) {
    display: flex !important;
    flex-direction: column !important;
}

.mmp-v278-upload-pair > *:has(input[type="file"]) > div:last-child,
.mmp-v278-upload-pair > *:has(input[type="file"]) .mmp-file-upload-box,
.mmp-v278-upload-pair > *:has(input[type="file"]) .mmp-file-dropzone {
    min-height: 260px !important;
    width: 100% !important;
}

@media (max-width: 767px) {
    .mmp-v278-upload-pair {
        grid-template-columns: 1fr !important;
    }
}


/* v2.8.0 renewal alerts */
.mmp-renewal-alert {
    margin-bottom: 20px;
}


/* v2.8.3 Professional Members Directory */
.mmp-directory-pro,
.mmp-public-profile-pro {
    max-width: 1220px;
    margin: 0 auto;
    padding: 28px 16px;
}

.mmp-directory-hero {
    background: linear-gradient(135deg, #0f2438, #c5a33a);
    border-radius: 28px;
    padding: 42px;
    color: #fff;
    margin-bottom: 24px;
    box-shadow: 0 24px 55px rgba(15, 36, 56, 0.18);
}

.mmp-directory-hero span {
    display: inline-block;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: .88;
    margin-bottom: 10px;
}

.mmp-directory-hero h2 {
    color: #fff;
    font-size: clamp(32px, 4vw, 54px);
    line-height: 1.1;
    margin: 0 0 14px;
}

.mmp-directory-hero p {
    max-width: 720px;
    font-size: 18px;
    line-height: 1.7;
    margin: 0;
    opacity: .92;
}

.mmp-directory-toolbar {
    display: grid;
    grid-template-columns: 1fr 260px auto;
    gap: 14px;
    align-items: center;
    background: #fff;
    border: 1px solid #e8edf4;
    border-radius: 22px;
    padding: 18px;
    box-shadow: 0 15px 40px rgba(15, 36, 56, .08);
    margin-bottom: 14px;
}

.mmp-directory-toolbar input,
.mmp-directory-toolbar select {
    width: 100%;
    min-height: 54px;
    border: 1px solid #d5dde8;
    border-radius: 14px;
    padding: 0 16px;
    font-size: 16px;
    background: #fff;
}

.mmp-directory-toolbar button,
.mmp-view-profile-btn,
.mmp-back-directory {
    min-height: 54px;
    border: 0;
    border-radius: 14px;
    background: linear-gradient(135deg, #87691e, #c5a33a);
    color: #fff !important;
    font-weight: 800;
    padding: 0 24px;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.mmp-directory-count {
    color: #64748b;
    font-weight: 700;
    margin: 12px 4px 24px;
}

.mmp-directory-grid-pro {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.mmp-doctor-card-pro {
    background: #fff;
    border: 1px solid #e8edf4;
    border-radius: 26px;
    overflow: hidden;
    box-shadow: 0 18px 45px rgba(15, 36, 56, .08);
    transition: transform .2s ease, box-shadow .2s ease;
}

.mmp-doctor-card-pro:hover {
    transform: translateY(-5px);
    box-shadow: 0 28px 60px rgba(15, 36, 56, .14);
}

.mmp-doctor-card-link {
    display: block;
    text-decoration: none !important;
    color: inherit !important;
}

.mmp-doctor-photo-pro {
    height: 280px;
    background: #f3f6fa;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.mmp-doctor-photo-pro img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
}

.mmp-doctor-photo-pro span,
.mmp-profile-photo-pro-large span {
    width: 96px;
    height: 96px;
    border-radius: 24px;
    background: #efe6c2;
    color: #7b5f18;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 42px;
    font-weight: 900;
}

.mmp-doctor-card-body {
    padding: 24px;
}

.mmp-member-type-pill {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 7px 12px;
    background: #f6f0dc;
    color: #735817;
    font-size: 13px;
    font-weight: 900;
    margin-bottom: 14px;
}

.mmp-doctor-card-body h3 {
    margin: 0 0 8px;
    color: #111827;
    font-size: 24px;
    line-height: 1.25;
}

.mmp-doctor-specialty {
    color: #334155;
    font-weight: 800;
    margin: 0 0 10px;
}

.mmp-doctor-bio {
    color: #64748b;
    line-height: 1.65;
    margin: 0 0 18px;
}

.mmp-profile-hero-pro {
    display: grid;
    grid-template-columns: 330px 1fr;
    gap: 32px;
    align-items: stretch;
    background: #fff;
    border: 1px solid #e8edf4;
    border-radius: 28px;
    padding: 28px;
    box-shadow: 0 18px 45px rgba(15, 36, 56, .08);
    margin-top: 20px;
}

.mmp-profile-photo-pro-large {
    min-height: 390px;
    background: #f3f6fa;
    border-radius: 24px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mmp-profile-photo-pro-large img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

.mmp-profile-hero-content {
    padding: 20px 8px;
}

.mmp-profile-hero-content h1 {
    font-size: clamp(36px, 5vw, 64px);
    line-height: 1.05;
    margin: 0 0 18px;
    color: #111827;
}

.mmp-profile-hero-content p {
    color: #475569;
    font-size: 18px;
    line-height: 1.8;
}

.mmp-public-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 24px;
}

.mmp-public-info-grid > div {
    background: #f8fafc;
    border: 1px solid #e8edf4;
    border-radius: 20px;
    padding: 20px;
}

.mmp-public-info-grid strong {
    display: block;
    color: #64748b;
    font-size: 14px;
    margin-bottom: 8px;
}

.mmp-public-info-grid span {
    display: block;
    color: #111827;
    font-weight: 900;
    font-size: 18px;
}

@media (max-width: 1024px) {
    .mmp-directory-grid-pro { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .mmp-profile-hero-pro { grid-template-columns: 1fr; }
    .mmp-profile-photo-pro-large { max-width: 420px; }
    .mmp-public-info-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
    .mmp-directory-hero { padding: 28px 22px; }
    .mmp-directory-toolbar { grid-template-columns: 1fr; }
    .mmp-directory-grid-pro { grid-template-columns: 1fr; }
    .mmp-public-info-grid { grid-template-columns: 1fr; }
}


/* v2.8.4 Directory card bio toggle and public profile contact details */
.mmp-doctor-card-pro { display: flex; flex-direction: column; }
.mmp-doctor-card-link { height: 100%; display: flex !important; flex-direction: column; }
.mmp-doctor-photo-pro { height: 300px !important; }
.mmp-doctor-card-body { display: flex; flex-direction: column; flex: 1; }
.mmp-doctor-card-body h3 { min-height: 58px; }
.mmp-doctor-specialty { min-height: 28px; }
.mmp-card-bio-details {
    margin: 10px 0 18px;
    background: #f8fafc;
    border: 1px solid #e8edf4;
    border-radius: 14px;
    padding: 12px 14px;
}
.mmp-card-bio-details summary {
    cursor: pointer;
    font-weight: 900;
    color: #87691e;
    list-style: none;
}
.mmp-card-bio-details summary::-webkit-details-marker { display: none; }
.mmp-card-bio-details summary:after {
    content: "+";
    float: inline-end;
    font-weight: 900;
}
.mmp-card-bio-details[open] summary:after { content: "−"; }
.mmp-card-bio-details p {
    color: #64748b;
    line-height: 1.7;
    margin: 10px 0 0;
    max-height: 150px;
    overflow: auto;
}
.mmp-view-profile-btn { margin-top: auto; }
.mmp-profile-contact-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 24px;
}
.mmp-profile-contact-strip > div {
    background: #fff;
    border: 1px solid #e8edf4;
    border-radius: 20px;
    padding: 20px;
    box-shadow: 0 12px 28px rgba(15, 36, 56, .06);
}
.mmp-profile-contact-strip strong {
    display: block;
    color: #64748b;
    font-size: 14px;
    margin-bottom: 8px;
}
.mmp-profile-contact-strip span {
    display: block;
    color: #111827;
    font-weight: 900;
    font-size: 18px;
    overflow-wrap: anywhere;
}
@media (max-width: 767px) {
    .mmp-profile-contact-strip { grid-template-columns: 1fr; }
}


/* v2.8.5 Bio popup and richer public profile */
.mmp-bio-popup-btn {
    width: 100%;
    min-height: 54px;
    border: 1px solid #e8edf4;
    background: #f8fafc;
    color: #87691e;
    border-radius: 14px;
    padding: 0 18px;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    margin: 10px 0 18px;
    font-size: 16px;
}

.mmp-bio-popup-btn:hover {
    background: #f6f0dc;
}

.mmp-bio-modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 999999;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.mmp-bio-modal.is-open {
    display: flex;
}

.mmp-bio-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 36, 56, .58);
    backdrop-filter: blur(4px);
}

.mmp-bio-modal-card {
    position: relative;
    width: min(720px, 100%);
    max-height: 80vh;
    overflow: auto;
    background: #fff;
    border-radius: 28px;
    box-shadow: 0 30px 90px rgba(15, 36, 56, .28);
    padding: 36px;
    border: 1px solid #e8edf4;
}

.mmp-bio-modal-card h3 {
    margin: 0 0 18px;
    color: #111827;
    font-size: clamp(26px, 4vw, 38px);
}

.mmp-bio-modal-card p {
    color: #475569;
    line-height: 1.9;
    font-size: 18px;
    margin: 0;
    white-space: pre-wrap;
}

.mmp-bio-modal-close {
    position: absolute;
    top: 18px;
    inset-inline-end: 18px;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    border: 0;
    background: #f6f0dc;
    color: #7b5f18;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
}

.mmp-public-section-title {
    margin: 30px 0 14px;
    color: #111827;
    font-size: 30px;
}

.mmp-profile-contact-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.mmp-profile-contact-strip a {
    color: #111827;
    text-decoration: none;
}

@media (max-width: 1024px) {
    .mmp-profile-contact-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    .mmp-bio-modal-card {
        padding: 28px 22px;
    }
    .mmp-profile-contact-strip {
        grid-template-columns: 1fr !important;
    }
}


/* v2.8.6 smooth bio popup + public visibility controls */
.mmp-bio-modal.is-open .mmp-bio-modal-backdrop {
    animation: mmpBioFadeIn .22s ease both;
}
.mmp-bio-modal.is-open .mmp-bio-modal-card {
    animation: mmpBioZoomIn .28s cubic-bezier(.2,.8,.2,1) both;
}
.mmp-bio-modal.is-closing .mmp-bio-modal-backdrop {
    animation: mmpBioFadeOut .2s ease both;
}
.mmp-bio-modal.is-closing .mmp-bio-modal-card {
    animation: mmpBioZoomOut .2s ease both;
}
@keyframes mmpBioFadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes mmpBioFadeOut { from { opacity: 1; } to { opacity: 0; } }
@keyframes mmpBioZoomIn {
    from { opacity: 0; transform: translateY(18px) scale(.96); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes mmpBioZoomOut {
    from { opacity: 1; transform: translateY(0) scale(1); }
    to { opacity: 0; transform: translateY(14px) scale(.97); }
}
.mmp-public-visibility-settings {
    background: #f8fafc;
    border: 1px solid #e8edf4;
    border-radius: 18px;
    padding: 18px;
}
.mmp-public-visibility-settings > p {
    margin: 0 0 14px;
    color: #64748b;
    font-weight: 600;
}
.mmp-public-toggle {
    display: inline-flex !important;
    align-items: center;
    gap: 9px;
    margin: 6px 10px 6px 0 !important;
    padding: 10px 12px;
    border: 1px solid #e8edf4;
    background: #fff;
    border-radius: 999px;
    cursor: pointer;
    font-weight: 800;
}
.mmp-public-toggle input {
    width: 18px !important;
    height: 18px !important;
}


/* v2.8.7 Directory full width polish + Show Bio hover readability */
.mmp-directory-pro.mmp-directory-fullwidth {
    max-width: min(1680px, calc(100vw - 64px));
    width: 100%;
}

.mmp-directory-pro.mmp-directory-fullwidth .mmp-directory-grid-pro {
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
}

.mmp-directory-pro.mmp-directory-fullwidth .mmp-directory-hero,
.mmp-directory-pro.mmp-directory-fullwidth .mmp-directory-toolbar {
    width: 100%;
}

.mmp-bio-popup-btn,
.mmp-bio-popup-btn span {
    color: #87691e !important;
}

.mmp-bio-popup-btn:hover,
.mmp-bio-popup-btn:focus,
.mmp-bio-popup-btn:hover span,
.mmp-bio-popup-btn:focus span {
    color: #111827 !important;
}

.mmp-doctor-card-pro:hover .mmp-bio-popup-btn {
    color: #111827 !important;
}

.mmp-doctor-card-pro:hover .mmp-bio-popup-btn span {
    color: #111827 !important;
}

@media (min-width: 1400px) {
    .mmp-directory-pro.mmp-directory-fullwidth .mmp-doctor-photo-pro {
        height: 330px !important;
    }
}

@media (max-width: 767px) {
    .mmp-directory-pro.mmp-directory-fullwidth {
        max-width: calc(100vw - 28px);
    }
}


/* v2.8.8 Members Directory 4 cards per row on wide screens */
@media (min-width: 1280px) {
    .mmp-directory-pro.mmp-directory-fullwidth .mmp-directory-grid-pro {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 24px !important;
    }

    .mmp-directory-pro.mmp-directory-fullwidth .mmp-doctor-photo-pro {
        height: 280px !important;
    }

    .mmp-directory-pro.mmp-directory-fullwidth .mmp-doctor-card-body {
        padding: 22px !important;
    }

    .mmp-directory-pro.mmp-directory-fullwidth .mmp-doctor-card-body h3 {
        font-size: 22px !important;
        min-height: 56px !important;
    }
}

@media (min-width: 992px) and (max-width: 1279px) {
    .mmp-directory-pro.mmp-directory-fullwidth .mmp-directory-grid-pro {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 640px) and (max-width: 991px) {
    .mmp-directory-pro.mmp-directory-fullwidth .mmp-directory-grid-pro {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}


/* v2.8.9 Public doctor profile typography refinement */
.mmp-public-profile-pro .mmp-profile-hero-content h1 {
    font-size: clamp(44px, 4vw, 56px) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.02em !important;
    max-width: 920px !important;
}

.mmp-public-profile-pro .mmp-profile-hero-content p {
    font-size: 18px !important;
    line-height: 1.75 !important;
    max-width: 850px !important;
}

@media (max-width: 1024px) {
    .mmp-public-profile-pro .mmp-profile-hero-content h1 {
        font-size: clamp(36px, 6vw, 46px) !important;
    }
}

@media (max-width: 767px) {
    .mmp-public-profile-pro .mmp-profile-hero-content h1 {
        font-size: 34px !important;
        line-height: 1.18 !important;
    }

    .mmp-public-profile-pro .mmp-profile-hero-content p {
        font-size: 16px !important;
    }
}


/* v2.8.13 hard fix for application upload boxes */
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-type-image,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-type-file {
    grid-column: auto !important;
    min-width: 0 !important;
    width: 100% !important;
}

.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-profile_photo,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-cv_upload,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-cv_files {
    grid-column: auto !important;
}

.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-profile_photo .mmp-upload-box,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-cv_upload .mmp-upload-box,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-cv_files .mmp-upload-box,
.mmp-application-form .mmp-front-field.mmp-field-type-image .mmp-upload-box,
.mmp-application-form .mmp-front-field.mmp-field-type-file .mmp-upload-box {
    width: 100% !important;
    max-width: none !important;
    min-height: 220px !important;
    height: 220px !important;
    padding: 28px 22px !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

.mmp-application-form .mmp-upload-box .mmp-upload-icon {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    position: static !important;
    margin: 0 0 12px !important;
    font-size: 24px !important;
}

.mmp-application-form .mmp-upload-box strong {
    font-size: 19px !important;
    line-height: 1.25 !important;
    margin: 0 0 6px !important;
    white-space: normal !important;
    word-break: normal !important;
}

.mmp-application-form .mmp-upload-box small {
    font-size: 14px !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
}

.mmp-application-form .mmp-upload-box em {
    font-size: 13px !important;
    line-height: 1.35 !important;
    margin-top: 8px !important;
}

@media (max-width: 900px) {
    .mmp-application-form .mmp-fixed-application-grid > .mmp-field-type-image,
    .mmp-application-form .mmp-fixed-application-grid > .mmp-field-type-file {
        grid-column: 1 / -1 !important;
    }
}


/* v2.8.14 force Profile Photo + CV upload boxes side by side */
.mmp-application-form .mmp-fixed-application-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.mmp-application-form .mmp-fixed-application-grid > .mmp-field-type-image,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-type-file,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-profile_photo,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-cv_upload,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-cv_files {
    grid-column: auto !important;
    width: 100% !important;
    min-width: 0 !important;
}

.mmp-application-form .mmp-fixed-application-grid > .mmp-field-type-image + .mmp-field-type-file,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-profile_photo + .mmp-field-key-cv_upload,
.mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-profile_photo + .mmp-field-key-cv_files {
    grid-column: auto !important;
}

.mmp-application-form .mmp-front-field.mmp-field-type-image .mmp-upload-box,
.mmp-application-form .mmp-front-field.mmp-field-type-file .mmp-upload-box,
.mmp-application-form .mmp-field-key-profile_photo .mmp-upload-box,
.mmp-application-form .mmp-field-key-cv_upload .mmp-upload-box,
.mmp-application-form .mmp-field-key-cv_files .mmp-upload-box {
    width: 100% !important;
    max-width: none !important;
    min-height: 220px !important;
    height: 220px !important;
    padding: 26px 20px !important;
    box-sizing: border-box !important;
}

.mmp-application-form .mmp-upload-box strong {
    font-size: 19px !important;
    line-height: 1.25 !important;
}

.mmp-application-form .mmp-upload-box small {
    font-size: 14px !important;
    line-height: 1.35 !important;
}

.mmp-application-form .mmp-upload-box em {
    font-size: 13px !important;
}

@media (max-width: 767px) {
    .mmp-application-form .mmp-fixed-application-grid > .mmp-field-type-image,
    .mmp-application-form .mmp-fixed-application-grid > .mmp-field-type-file,
    .mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-profile_photo,
    .mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-cv_upload,
    .mmp-application-form .mmp-fixed-application-grid > .mmp-field-key-cv_files {
        grid-column: 1 / -1 !important;
    }
}

/* v2.8.15 final upload pair layout */
.mmp-v2815-upload-pair {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
    width: 100% !important;
    align-items: stretch !important;
    margin: 24px 0 !important;
}
.mmp-v2815-upload-pair .mmp-front-field,
.mmp-v2815-upload-pair .mmp-v2815-upload-item {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}
.mmp-v2815-upload-pair .mmp-upload-box {
    width: 100% !important;
    max-width: none !important;
    min-height: 220px !important;
    height: 220px !important;
    padding: 28px 22px !important;
    box-sizing: border-box !important;
}
.mmp-v2815-upload-pair .mmp-upload-icon {
    position: static !important;
    width: 46px !important;
    height: 46px !important;
    margin: 0 0 12px !important;
}
.mmp-v2815-upload-pair .mmp-upload-box strong {
    font-size: 19px !important;
    line-height: 1.25 !important;
}
.mmp-v2815-upload-pair .mmp-upload-box small {
    font-size: 14px !important;
    line-height: 1.35 !important;
}
.mmp-v2815-upload-pair .mmp-upload-box em {
    font-size: 13px !important;
}
@media(max-width:767px){
    .mmp-v2815-upload-pair {
        grid-template-columns: 1fr !important;
    }
}


/* v2.8.17 read-bio-card-cleanup */
.mmp-directory-wrap .mmp-doctor-card .mmp-doctor-bio,
.mmp-directory-wrap .mmp-doctor-card .mmp-card-bio,
.mmp-directory-wrap .mmp-doctor-card .mmp-member-bio,
.mmp-directory-wrap .mmp-doctor-card .mmp-bio-text,
.mmp-directory-grid .mmp-doctor-bio,
.mmp-directory-grid .mmp-card-bio,
.mmp-directory-grid .mmp-member-bio,
.mmp-directory-grid .mmp-bio-text {
    display: none !important;
}

.mmp-directory-wrap .mmp-doctor-card,
.mmp-directory-wrap .mmp-doctor-card-pro {
    height: 100%;
}

.mmp-directory-wrap .mmp-doctor-card-body {
    display: flex;
    flex-direction: column;
}

.mmp-directory-wrap .mmp-bio-popup-btn {
    margin-top: auto;
}

.mmp-directory-wrap .mmp-bio-popup-btn,
.mmp-directory-wrap .mmp-bio-popup-btn:visited {
    color: #8b6f1b !important;
}

.mmp-directory-wrap .mmp-bio-popup-btn:hover,
.mmp-directory-wrap .mmp-bio-popup-btn:focus {
    color: #101828 !important;
    background: #f8fafc !important;
}

.mmp-bio-modal-card p,
.mmp-bio-modal-box p {
    white-space: pre-wrap;
    line-height: 1.75;
}
