/* Marketplace media layout and touch controls, shared by the public site and cabinet. */
.marketplace-cover{display:block;position:relative;width:100%;height:210px;border:0;padding:0;overflow:hidden;background:#eaf2ed;cursor:pointer}
.marketplace-cover img{width:100%;height:100%;object-fit:cover}
.marketplace-fallback{display:grid;width:100%;height:100%;place-items:center;background:#eaf2ed;color:#14583f;font-size:2rem;font-weight:700}
.clinic-card-marketplace{display:flex;flex-direction:column;min-width:0;overflow:hidden}
.marketplace-card-copy{display:flex;flex:1;flex-direction:column;gap:14px;padding:22px}
.marketplace-card-copy p{margin:0}.marketplace-card-copy .card-actions{margin-top:auto}
.marketplace-card-brand{display:flex;align-items:center;gap:12px;min-width:0}.marketplace-card-brand>img,.marketplace-card-brand>.marketplace-fallback{width:54px;height:54px;flex:0 0 54px;object-fit:cover;border:1px solid #dce7df;border-radius:14px}
.marketplace-card-brand>div{min-width:0}.marketplace-card-brand h3{margin:0 0 5px;font-size:21px;line-height:1.25}.marketplace-card-brand p{font-size:14px;color:#496457;line-height:1.5}
.marketplace-description{color:#496457;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.marketplace-card-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px;color:#496457}
.marketplace-public-hero{position:relative;border-radius:24px;overflow:hidden;background:#e6efe9;min-height:360px}
.marketplace-public-hero>img,.marketplace-public-hero>.marketplace-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.marketplace-public-overlay{position:relative;display:flex;align-items:end;justify-content:space-between;gap:24px;min-height:360px;padding:32px;background:linear-gradient(180deg,#102c2510,#102c25ef);color:white}
.marketplace-identity{display:flex;align-items:center;gap:18px;min-width:0}.marketplace-identity>img,.marketplace-identity>.marketplace-fallback{width:80px;height:80px;border-radius:20px;object-fit:cover;flex:0 0 80px}
.marketplace-identity h1{color:white;font-size:clamp(26px,4vw,44px);line-height:1.15;margin:8px 0}.marketplace-identity p{color:#f3f8f5}.marketplace-about{display:grid;grid-template-columns:2fr 1fr;gap:28px}.marketplace-about aside{display:grid;align-content:start;gap:12px}.marketplace-about a{overflow-wrap:anywhere}
.marketplace-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.marketplace-gallery img{width:100%;height:230px;object-fit:cover;border-radius:18px}
.marketplace-doctors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.marketplace-doctors article{display:flex;gap:18px;padding:20px;background:#fff;border:1px solid #dce7df;border-radius:18px}.marketplace-doctor-photo{width:90px;height:110px;flex:0 0 90px;border-radius:14px;overflow:hidden}.marketplace-doctor-photo img{width:100%;height:100%;object-fit:cover}.marketplace-doctors h3{margin:8px 0}.marketplace-doctors .table-btn{display:block;margin-top:14px}
.marketplace-cabinet-section{padding:20px 0;border-top:1px solid #dce7df}.marketplace-editor,.marketplace-rows,.media-upload-form{display:grid;gap:14px}.marketplace-service-edit{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px;background:#f2f7f4;border-radius:14px}.marketplace-service-edit input{min-width:0;width:100%}.marketplace-rows article{display:flex;justify-content:space-between;gap:16px;padding:16px}.marketplace-cabinet-section .inline-form{display:flex;flex-wrap:wrap;gap:10px}.inline-form input{min-width:0;flex:1 1 220px}.inline-form .form-status{flex-basis:100%}
.gallery-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.gallery-editor-grid article{padding:12px;border:1px solid #dce7df;border-radius:16px;min-width:0}.gallery-editor-grid img{width:100%;height:150px;object-fit:cover;border-radius:10px}.gallery-editor-grid span{display:block;margin-block:10px}.gallery-editor-grid .profile-actions{flex-wrap:wrap;gap:8px}
.upload-previews{display:flex;gap:10px;overflow-x:auto}.upload-previews img{width:84px;height:84px;border-radius:12px;object-fit:cover;flex:none}
.media-editor{padding:20px;background:#fff;border:1px solid #dce7df;border-radius:18px;margin-bottom:22px;scroll-margin-top:100px}.media-admin-row{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #dce7df;padding:20px 0}.media-admin-row>div{min-width:0}.media-admin-row p{margin:8px 0}.media-admin-row .profile-actions{flex-wrap:wrap;align-content:center}.video-frame video,.video-frame iframe{display:block;width:100%;height:100%;border:0}.video-frame{aspect-ratio:16/9;background:#102c25}.video-external{display:block;margin-top:14px;font-size:13px;color:#14583f;text-decoration:underline}
#emergencyFilterBtn{min-height:44px;padding:10px 14px;gap:8px;border-radius:12px;transition:background-color .16s,color .16s,border-color .16s}
#emergencyFilterBtn[aria-pressed="true"],#emergencyFilterBtn.active{background:#8b371d;color:#fff;border-color:#8b371d;box-shadow:0 3px 10px #6b2d1820}
#emergencyFilterBtn[aria-pressed="true"]:hover{background:#712911;border-color:#712911;color:#fff}
#emergencyFilterBtn:focus-visible{outline:3px solid #176246;outline-offset:3px}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #176246;outline-offset:3px}
@media(max-width:1000px){.marketplace-about{grid-template-columns:1fr}.marketplace-public-overlay{align-items:start;flex-direction:column;justify-content:end}.marketplace-doctors{grid-template-columns:1fr}}
@media(min-width:761px) and (max-width:1000px){.simple-search{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.simple-search .simple-search-field{grid-column:auto;border:0;padding:10px 14px}.simple-search .simple-search-field:nth-child(3){grid-column:1}.simple-search .simple-search-submit{grid-column:2;min-width:0;margin:0}.simple-search-field select{min-height:36px}}
@media(max-width:760px){
 body{padding-bottom:calc(90px + env(safe-area-inset-bottom));overflow-wrap:break-word}.shell{width:calc(100% - 32px);max-width:100%}.view,.dashboard-body,.cabinet-panel{min-width:0}
 .site-header{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));gap:10px}.site-header .header-actions{gap:8px;min-width:0}.account-btn{min-height:44px;max-width:160px}.account-btn #accountLabel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 input,select,textarea{font-size:16px!important;max-width:100%}input[type=file]{width:100%;min-width:0;padding:10px;border:1px dashed #a9bfb1;border-radius:12px;background:#f5f9f6}input::file-selector-button{padding:10px;border:0;border-radius:8px;margin-right:8px;background:#dfede4;color:#173d2c}
 button,.primary-btn,.secondary-btn,.text-btn{min-height:44px;touch-action:manipulation}.icon-btn{min-width:44px;flex-shrink:0}
 .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.hero-actions a{justify-content:center}.hero-v95 .hero-copy h1{font-size:clamp(29px,8vw,38px)}.hero-portrait{min-width:0}
 .simple-search{display:grid;grid-template-columns:1fr;gap:0}.simple-search-field{min-width:0;border-right:0;border-bottom:1px solid #dce7df}.simple-search-submit{width:100%;margin:10px 0 0;min-height:48px}.search-secondary{margin-block:12px}#emergencyFilterBtn{width:100%;justify-content:center;font-size:14px;line-height:1.4}
 .results-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:12px}.view-switch{align-self:start}.sort-chips{display:flex;max-width:100%;overflow-x:auto;white-space:nowrap;padding-bottom:6px}.sort-chips button{flex:0 0 auto}.results-heading{align-items:start;gap:12px}.results-heading h2{font-size:24px}.results-heading p{flex-shrink:0}
 .clinic-grid{grid-template-columns:minmax(0,1fr);gap:18px}.marketplace-cover{height:190px}.marketplace-card-copy{padding:18px;gap:12px}.marketplace-card-copy .card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.card-actions button{min-width:0;padding:12px 8px}.marketplace-card-brand h3{font-size:20px}
 .marketplace-public-hero{min-height:320px;border-radius:18px}.marketplace-public-overlay{min-height:320px;padding:22px 18px;gap:18px}.marketplace-public-overlay>.primary-btn{width:100%;justify-content:center}.marketplace-identity{gap:12px;align-items:start}.marketplace-identity>img,.marketplace-identity>.marketplace-fallback{width:58px;height:58px;flex-basis:58px;border-radius:14px}.marketplace-identity h1{font-size:27px}.marketplace-identity p{margin-bottom:0}.marketplace-about{gap:16px}.marketplace-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.marketplace-gallery img{height:140px;border-radius:12px}.marketplace-gallery img:first-child{grid-column:1/-1;height:220px}.marketplace-doctors article{padding:16px;gap:12px}.marketplace-doctor-photo{width:65px;flex-basis:65px;height:84px}.marketplace-doctors article>div:last-child{min-width:0}
 .services-table article{display:grid;grid-template-columns:1fr;gap:14px}.services-table article>div:last-child{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.services-table h3{font-size:20px}
 dialog{box-sizing:border-box;width:calc(100% - 16px);max-width:calc(100% - 16px);max-height:calc(100dvh - 16px);margin:auto;padding:0;overscroll-behavior:contain}.modal-shell{padding:20px 16px;min-width:0}.modal-head h2{font-size:23px;overflow-wrap:anywhere}.modal-head{align-items:start}.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid>*{min-width:0}.modal-shell .inline-form{display:grid;grid-template-columns:minmax(0,1fr)}.inline-form .form-status{grid-column:1}.marketplace-service-edit{grid-template-columns:minmax(0,1fr)}.marketplace-rows article{flex-direction:column;gap:6px}
 .table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.table-wrap table{min-width:620px}.cabinet-nav{max-width:100%;overflow-x:auto;flex-wrap:nowrap;gap:6px}.cabinet-nav button{flex-shrink:0}.cabinet-panel .section-title{align-items:start;flex-wrap:wrap;gap:12px}.people-nav button{flex:1 1 130px}.booking-cards{grid-template-columns:minmax(0,1fr)}.profile-actions{flex-wrap:wrap;gap:10px}.booking-slots{max-height:35dvh;overflow:auto}.slot-choice{min-height:52px}
 .media-admin-row{flex-direction:column;gap:12px}.media-editor{padding:16px}.gallery-editor-grid{grid-template-columns:minmax(0,1fr)}.gallery-editor-grid img{height:200px}.page-toast{max-width:calc(100% - 24px);bottom:calc(90px + env(safe-area-inset-bottom));overflow-wrap:anywhere}.site-footer{padding-bottom:25px}.site-menu-popover.mobile-open{bottom:calc(82px + env(safe-area-inset-bottom))}
}
@media(max-width:760px){.simple-search .simple-search-field,.simple-search .simple-search-submit{grid-column:1/-1;border-left:0}.simple-search .simple-search-field{padding:10px 12px}.simple-search .simple-search-field select{min-height:36px}.simple-emergency{white-space:normal}}
@media(max-width:600px){
 .table-wrap:has(.mobile-card-table){overflow:visible;background:transparent;border:0}.table-wrap .mobile-card-table{display:block;min-width:0;width:100%}.mobile-card-table thead{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.mobile-card-table tbody{display:grid;gap:16px}.mobile-card-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;background:#fff;border:1px solid #dce7df;border-radius:18px}.mobile-card-table td{display:block;min-width:0;padding:0;border:0;white-space:normal!important;overflow-wrap:anywhere}.mobile-card-table td:first-child,.mobile-card-table td:last-child{grid-column:1/-1}.mobile-card-table td::before{content:attr(data-label);display:block;margin-bottom:6px;font-size:11px;color:#567464;text-transform:uppercase;letter-spacing:.05em}.mobile-card-table .admin-row-actions{display:flex;flex-wrap:wrap;gap:8px}.mobile-card-table input,.mobile-card-table select{max-width:100%;width:100%}.mobile-card-table input[type=checkbox]{width:24px;height:24px;min-height:24px}
}
@media(prefers-reduced-motion:reduce){#emergencyFilterBtn{transition:none}html{scroll-behavior:auto}}

/* Allow content to shrink inside its card, not just inside the viewport. */
.marketplace-card-copy,.marketplace-card-brand,.marketplace-identity,
.marketplace-about>*,.marketplace-doctors article>*,.marketplace-editor>*,
.media-upload-form>*,.gallery-editor-grid article>*,.media-editor>*,
.booking-card>*,.booking-card header>*,.account-summary>*{min-width:0}
.marketplace-card-brand h3,.marketplace-identity h1,.marketplace-doctors h3,
.marketplace-rows strong,.account-summary h2,.booking-card h3,
.media-admin-row strong,.form-status,.field small{overflow-wrap:anywhere}
.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{width:100%;min-width:0;box-sizing:border-box}
.user-memberships input{flex:0 0 18px}

@media(max-width:760px){
 .site-header{grid-template-columns:minmax(0,1fr) minmax(0,auto)}
 .site-header .brand{min-width:0;gap:7px}
 .site-header .brand-mark,.account-dot{flex-shrink:0}
 .site-header .header-actions{max-width:100%}
 .site-header .account-btn{min-width:0;max-width:min(160px,40vw);padding-inline:10px;gap:6px}
 .site-header .account-btn #accountLabel{min-width:0}
 .home-steps,.pro-plans,.doctor-list{grid-template-columns:minmax(0,1fr)}
 .home-steps>*,.pro-plans>*,.doctor-list>*{min-width:0}
 .signup-corner{position:static;width:auto;margin:20px 16px 32px}
 .verified-explainer{margin-bottom:24px}
 .home-steps article,.verified-explainer,.pro-plans article,.doctor-list article,.account-summary{padding:20px}
 .hero-actions>a,.profile-actions>button,.profile-actions>a,.empty-actions>*,
 .marketplace-cabinet-section button,.media-editor button,.nearby-actions button{
  max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere;height:auto
 }
 .profile-actions{align-items:center}
 .profile-actions>button,.profile-actions>a{flex:0 1 auto}
 .results-heading{flex-wrap:wrap}
 .results-heading>div{min-width:0;flex:1 1 200px}
 .results-heading p{margin-block:0;white-space:normal}
 .marketplace-identity{width:100%}
 .marketplace-identity>div:last-child{min-width:0;flex:1}
 .marketplace-identity .verified-badge{white-space:normal;display:inline-block}
 .marketplace-card-copy .card-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
 .marketplace-card-copy .card-actions>*{white-space:normal;overflow-wrap:anywhere}
 .marketplace-gallery,.marketplace-about,.marketplace-doctors,.services-table{min-width:0}
 .services-table article>div:last-child{min-width:0;text-align:left}
 .services-table article>div:last-child>*{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .marketplace-doctors .table-btn{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .doctor-list article .profile-actions{display:grid;grid-template-columns:minmax(0,1fr)}
 .booking-card header{flex-wrap:wrap;align-items:flex-start;gap:10px}
 .booking-card header>div:first-child{flex:1 1 180px}
 .booking-card p,.account-summary p,.doctor-list p,.video-copy h3{overflow-wrap:anywhere}
 .booking-confirmation{padding:18px;overflow-wrap:anywhere}
 .booking-slots,.live-slot-strip{min-width:0;max-width:100%}
 .booking-slots{grid-template-columns:repeat(auto-fit,minmax(min(120px,100%),1fr))}
 .slot-choice{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .modal-head{gap:12px}
 .modal-head>div,.modal-head>h2{min-width:0;flex:1}
 .modal-head>.icon-btn{flex:0 0 44px}
 .modal-shell{max-width:100%;box-sizing:border-box}
 .modal-shell :is(form,.field,.form-grid,.marketplace-editor,.media-upload-form){min-width:0;max-width:100%}
 .modal-shell .inline-form input{flex-basis:auto;width:100%}
 .modal-shell :is(input,select,textarea){min-width:0;box-sizing:border-box}
 .modal-shell input:is([type=date],[type=time],[type=datetime-local]){display:block;width:100%;min-height:46px}
 .modal-shell input::-webkit-date-and-time-value{text-align:left;min-width:0}
 .auth-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .auth-tabs button{white-space:normal;overflow-wrap:anywhere}
 .people-nav{flex-wrap:wrap;overflow:visible}
 .people-nav button{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .user-tools{display:grid;grid-template-columns:minmax(0,1fr)}
 .user-tools input{min-width:0;width:100%;box-sizing:border-box}
 .user-memberships label{align-items:flex-start;overflow-wrap:anywhere}
 .user-memberships input{margin-top:3px}
 .cabinet-panel .section-title>*,.dashboard-head>*{max-width:100%;min-width:0}
 .dashboard-head{flex-wrap:wrap}
 .dashboard-head h1{overflow-wrap:anywhere}
 .cabinet-nav{scroll-padding-inline:6px;overscroll-behavior-x:contain}
 .mobile-nav{grid-template-columns:repeat(4,minmax(0,1fr))}
 .mobile-nav button{min-width:0}
 .mobile-nav button b{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.25}
 .site-menu-popover{max-width:calc(100vw - 32px);box-sizing:border-box}
 .site-menu-popover .guest-menu>*{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .site-footer>*{min-width:0;overflow-wrap:anywhere}
}
@media(max-width:380px){
 .marketplace-card-copy .card-actions{grid-template-columns:minmax(0,1fr)}
 .marketplace-doctors article{flex-direction:column}
 .marketplace-doctor-photo{flex-basis:auto}
 .profile-actions{gap:8px}
 .gallery-editor-grid .profile-actions{display:grid;grid-template-columns:minmax(0,1fr)}
 .marketplace-public-overlay{padding:20px 16px}
 .marketplace-identity{flex-wrap:wrap}
 .marketplace-identity>div:last-child{flex-basis:100%}
}
