/* Responsive profile, privacy, badge, accordion, and service form refinements. */
.shaa-profile-head{align-items:center}
.shaa-profile-avatar-wrap,.shaa-tile-avatar-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;line-height:0}
.shaa-profile-avatar-wrap .shaa-specialist-avatar,.shaa-tile-avatar-wrap .shaa-specialist-avatar{margin:0}
.shaa-profile-avatar-wrap>.shaa-verified-badge,.shaa-tile-avatar-wrap>.shaa-verified-badge{position:absolute;inset-inline-start:-3px;bottom:-3px;z-index:2;margin:0;line-height:1}
.shaa-profile-identity{flex:1;min-width:0;text-align:center}
.shaa-profile-identity h2{display:block;margin:5px 0;text-align:center;overflow-wrap:anywhere}
.shaa-profile-identity p{margin:0;text-align:center}
.shaa-tile-profile-link h3{display:block;text-align:center;overflow-wrap:anywhere}
.shaa-specialist-tile .shaa-tile-profile-link{display:block;text-decoration:none}
.shaa-specialist-directory .shaa-specialist-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.shaa-tile-head{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(90px,auto);align-items:center;gap:12px;direction:rtl;text-align:right}
.shaa-tile-identity{display:block;min-width:0;flex:1;text-align:right}
.shaa-tile-identity h3{margin:0 0 4px;text-align:right}
.shaa-tile-identity>span{display:block;color:var(--sp-muted);font-size:13px}
.shaa-tile-description{margin:10px 0 0;color:var(--sp-muted);line-height:1.8;text-align:right;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.shaa-tile-category-summary,.shaa-profile-category-summary{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:5px;text-align:right}
.shaa-tile-category-summary>small,.shaa-profile-category-summary>small{margin:0;color:var(--sp-muted);font-size:11px}
.shaa-tile-categories{display:flex;flex-wrap:wrap;gap:6px}
.shaa-tile-categories .shaa-service-chip{margin:0}
.shaa-profile-category-summary .shaa-tile-categories{max-width:180px}
.shaa-directory-filters{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(220px,1.4fr) auto;align-items:end;gap:12px;margin:16px 0 8px;padding:14px;border:1px solid var(--sp-line);border-radius:14px;background:#fff}
.shaa-directory-filters label{display:block;min-width:0;color:var(--sp-ink);font-size:13px;font-weight:700}
.shaa-directory-filters input,.shaa-directory-filters select{box-sizing:border-box;display:block;width:100%;min-height:44px;margin-top:6px;padding:9px 11px;border:1px solid var(--sp-line);border-radius:9px;background:#fff;color:var(--sp-ink);font:inherit}
.shaa-directory-filters button{min-width:110px}
.shaa-directory-result-count{margin:8px 0 14px;color:var(--sp-muted);font-size:13px}
.shaa-directory-load-more{display:block;min-width:170px;margin:22px auto 0}
.shaa-registration-link,.shaa-customer-register-link{cursor:pointer}
.shaa-customer-section{margin:14px 0;border:1px solid var(--sp-line);border-radius:14px;background:#fff;overflow:hidden}
.shaa-customer-section>summary{padding:14px 16px;background:#fff4f8;font-weight:700;color:var(--sp-dark);cursor:pointer}
.shaa-customer-section>div{padding:12px}
.shaa-customer-notification-list .shaa-notification-item{display:flex;flex-direction:column;gap:5px;padding:12px;border-bottom:1px solid var(--sp-line)}
.shaa-customer-notification-list .shaa-notification-item:last-child{border-bottom:0}
.shaa-customer-notification-list .shaa-notification-item small{color:var(--sp-muted)}
.shaa-customer-notification-list .shaa-customer-mark-read{align-self:flex-start}
.shaa-verified-badge{display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;flex:0 0 21px;vertical-align:middle}
.shaa-verified-badge svg{display:block;width:100%;height:100%;overflow:visible}
.shaa-verified-shape{fill:#168bea}
.shaa-verified-check{fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.shaa-social-count{display:inline-flex;align-items:center;padding:8px 12px;border:1px solid var(--sp-line);border-radius:99px;background:#fff;color:var(--sp-dark);font-size:13px}
.shaa-service-accordion,.shaa-comments-accordion{margin-top:20px;border:1px solid var(--sp-line);border-radius:15px;background:#fff;overflow:hidden}
.shaa-service-accordion>summary,.shaa-comments-accordion>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:#fff4f8;color:var(--sp-dark);font-weight:700;cursor:pointer;list-style:none}
.shaa-service-accordion>summary::-webkit-details-marker,.shaa-comments-accordion>summary::-webkit-details-marker{display:none}
.shaa-service-accordion>summary::after,.shaa-comments-accordion>summary::after{content:'＋';flex:0 0 auto;font-size:18px}
.shaa-service-accordion[open]>summary::after,.shaa-comments-accordion[open]>summary::after{content:'−'}
.shaa-service-accordion>summary span{margin-inline-start:auto;font-size:12px;font-weight:400;color:var(--sp-muted)}
.shaa-service-accordion[open] .shaa-service-list{padding:12px}
.shaa-comments-accordion{margin:10px 0 0}
.shaa-comments-accordion>summary{padding:10px 13px;font-size:13px}
.shaa-comments-accordion .shaa-comment-list{padding:0 13px}
.shaa-service-main-fields{grid-template-columns:minmax(0,1.5fr) minmax(125px,.9fr) repeat(3,minmax(0,1fr))}
.shaa-service-main-fields>*,.shaa-admin-service-row>p:first-child>*{box-sizing:border-box;min-width:0;width:100%;max-width:100%;margin:0!important}
.shaa-service-main-fields input,.shaa-service-main-fields select{display:block;height:auto;min-height:46px;padding:10px 11px;border:1px solid var(--sp-line);border-radius:10px;background:#fff;color:var(--sp-ink);font:inherit}
.shaa-service-main-fields input::placeholder,.shaa-admin-service-row input::placeholder{color:#927c88;opacity:1}
.shaa-admin-service-row>p:first-child{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(130px,1fr) repeat(2,minmax(110px,.8fr));gap:8px}
.shaa-admin-service-row>p:nth-child(2) input{box-sizing:border-box;width:100%;max-width:100%}
@media (min-width:701px) and (max-width:960px){
  .shaa-specialist-directory .shaa-specialist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
}

/* Stable, compact specialist tiles; details open in a dialog so card heights stay aligned. */
.shaa-specialist-directory .shaa-specialist-grid{align-items:stretch;grid-auto-rows:1fr}
.shaa-directory-tile{display:grid;grid-template-rows:96px 64px 70px 44px;gap:10px;min-width:0;height:100%;padding:14px;text-align:right;overflow:hidden}
.shaa-directory-tile .shaa-tile-head{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:start;gap:12px;min-width:0;direction:rtl;text-align:right}
.shaa-directory-tile .shaa-tile-avatar-wrap{width:64px;height:64px;align-self:start}
.shaa-directory-tile .shaa-tile-avatar-wrap .shaa-specialist-avatar{width:64px;height:64px;flex:0 0 64px}
.shaa-directory-tile .shaa-tile-identity{display:grid;grid-template-rows:48px 40px;align-content:start;gap:2px;min-width:0;max-width:100%;text-align:right}
.shaa-directory-tile .shaa-tile-text{position:relative;min-width:0;max-width:100%;overflow:hidden;text-align:right}
.shaa-directory-tile .shaa-tile-title,.shaa-directory-tile .shaa-tile-name,.shaa-directory-tile .shaa-tile-description{display:-webkit-box;max-width:100%;margin:0;overflow:hidden;overflow-wrap:anywhere;word-break:normal;text-align:right;unicode-bidi:plaintext;-webkit-box-orient:vertical}
.shaa-directory-tile .shaa-tile-title{font-size:15px;line-height:24px;-webkit-line-clamp:2}
.shaa-directory-tile .shaa-tile-name{font-size:13px;line-height:20px;color:var(--sp-muted);-webkit-line-clamp:2}
.shaa-directory-tile .shaa-tile-description{max-height:66px;margin:0;color:var(--sp-muted);line-height:22px;-webkit-line-clamp:3}
.shaa-directory-tile .shaa-tile-service-summary{position:relative;min-width:0;max-height:64px;overflow:hidden;text-align:right}
.shaa-directory-tile .shaa-tile-service-summary .shaa-tile-categories{max-height:54px;overflow:hidden;align-content:flex-start;gap:5px}
.shaa-directory-tile .shaa-tile-service-summary .shaa-service-chip{max-width:100%;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;padding:4px 8px}
.shaa-directory-tile .shaa-more-services{position:absolute;left:0;bottom:0;padding:1px 6px;border:0;background:#fff4f8;color:var(--sp-dark);font:inherit;font-size:11px;line-height:20px;cursor:pointer}
.shaa-directory-tile .shaa-expand-text:not([hidden]){position:absolute;left:0;bottom:0;z-index:1;padding:0 5px;border:0;border-radius:4px;background:#fff4f8;color:var(--sp-dark);font-size:18px;line-height:22px;cursor:pointer}
.shaa-directory-tile .shaa-expand-text[hidden]{display:none!important}
.shaa-directory-tile>.shaa-specialist-button{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:44px;max-height:44px;margin:0;padding:8px 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.shaa-tile-text-dialog{box-sizing:border-box;width:min(520px,calc(100vw - 28px));max-height:min(80vh,700px);padding:24px;border:1px solid var(--sp-line);border-radius:18px;background:#fffafc;color:var(--sp-ink);box-shadow:0 20px 70px #39263440;overflow:auto}
.shaa-tile-text-dialog::backdrop{background:#39263499;backdrop-filter:blur(2px)}
.shaa-tile-text-dialog h3{margin:0 0 12px;color:var(--sp-ink)}
.shaa-tile-text-dialog p{margin:0 0 18px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}
.shaa-booking-advisor-dialog .shaa-advisor-cta,.shaa-booking-advisor-dialog a.shaa-advisor-cta{position:relative;display:inline-flex!important;align-items:center;justify-content:center;visibility:visible!important;opacity:1!important;min-width:190px;min-height:48px;width:auto;height:auto;max-width:100%;margin:18px auto 0;padding:12px 22px;border:0;border-radius:12px;background:#d86d91;color:#fff!important;-webkit-text-fill-color:#fff!important;font-family:inherit;font-size:16px;font-weight:700;line-height:1.5;text-align:center;text-indent:0;text-decoration:none!important;white-space:normal;overflow:visible;clip:auto}
.shaa-booking-advisor-dialog .shaa-advisor-cta:hover,.shaa-booking-advisor-dialog .shaa-advisor-cta:focus{background:#a94d70;color:#fff!important;-webkit-text-fill-color:#fff!important}
.shaa-comment-counter{display:block;margin:5px 0;color:var(--sp-muted);font-size:12px}
@media(max-width:700px){
  .shaa-directory-tile{grid-template-rows:96px 64px 70px 44px;gap:9px;padding:13px}
  .shaa-directory-tile .shaa-tile-head{grid-template-columns:60px minmax(0,1fr);gap:10px}
  .shaa-directory-tile .shaa-tile-avatar-wrap,.shaa-directory-tile .shaa-tile-avatar-wrap .shaa-specialist-avatar{width:60px;height:60px;flex-basis:60px}
  .shaa-tile-text-dialog{padding:20px 16px}
  .shaa-booking-advisor-dialog .shaa-advisor-cta{width:100%;}
}
@media(max-width:700px){
  .shaa-specialist-directory .shaa-specialist-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .shaa-tile-head{grid-template-columns:auto minmax(0,1fr) minmax(90px,auto);gap:10px}
  .shaa-tile-category-summary{max-width:110px}
  .shaa-tile-category-summary .shaa-service-chip{font-size:10px;padding:4px 7px}
  .shaa-profile-category-summary{align-items:center;text-align:center}
  .shaa-profile-category-summary .shaa-tile-categories{justify-content:center;max-width:100%}
  .shaa-directory-filters{grid-template-columns:minmax(0,1fr);gap:10px;padding:12px}
  .shaa-directory-filters button{width:100%}
  .shaa-profile-head{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}
  .shaa-profile-avatar-wrap{justify-content:center}
  .shaa-profile-identity,.shaa-profile-identity h2,.shaa-profile-identity p{text-align:center}
  .shaa-profile-identity{width:100%}
  .shaa-profile-identity h2{font-size:19px;line-height:1.5}
  .shaa-service-main-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .shaa-service-main-fields>[name="service_name[]"],.shaa-service-main-fields>[name="service_description[]"]{grid-column:1/-1}
  .shaa-service-main-fields input,.shaa-service-main-fields select{min-width:0;width:100%;font-size:14px;padding:10px 8px}
  .shaa-admin-service-row>p:first-child{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .shaa-admin-service-row>p:first-child>[name="admin_service_name[]"]{grid-column:1/-1}
  .shaa-admin-service-row>p:first-child select,.shaa-admin-service-row>p:first-child input{min-width:0;width:100%;max-width:100%;font-size:14px}
  .shaa-service-accordion>summary,.shaa-comments-accordion>summary{padding:12px;font-size:14px}
  .shaa-service-accordion>summary span{font-size:11px}
  .shaa-social-count{font-size:12px;padding:7px 10px}
}

/* Keep Select2 booking controls inside the narrow mobile booking card. */
@media(max-width:700px){
  .shaa-booking-only .shaa-booking-form{grid-template-columns:minmax(0,1fr);width:100%;min-width:0;max-width:100%}
  .shaa-booking-only .shaa-booking-form>label{display:block;width:100%;min-width:0;max-width:100%}
  .shaa-booking-only .shaa-booking-form .select2-container{display:block!important;width:100%!important;min-width:0;max-width:100%;box-sizing:border-box}
  .shaa-booking-only .shaa-booking-form .select2-selection{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
  .shaa-booking-only .shaa-booking-form .select2-selection__rendered{max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .shaa-booking-only .shaa-booking-form .shaa-specialist-button{display:block;width:100%;min-width:0;max-width:100%;grid-column:1/-1;box-sizing:border-box;white-space:normal}
.shaa-booking-only .shaa-booking-form .shaa-booking-status{min-width:0;max-width:100%;box-sizing:border-box}
}

/* Keep the approved specialist badge styling scoped; do not recolor product cards. */
.shaa-specialist-status.status-publish{background:#e9f8ed;color:#277141}
