/**/@media(max-width:767px){body.dmRoot div[dmtemplateid]:not([dmtemplateid=SlideRightTopFloatM]) .dmHeader .multilingualWidget{position:absolute;top:14px;left:13px;margin-top:0}body.dmRoot div[dmtemplateid][dmtemplateid=SlideRightTopFloatM] .dmHeader .multilingualWidget{position:absolute;top:5px;right:17px}
}@media(min-width:768px) and (max-width:1024px){body:not(.responsiveTablet) #dm div[dmtemplateid=StandardLayoutMultiT] .dmHeader .multilingualWidget{position:absolute!important;top:5px!important;right:17px!important;left:initial!important}
}@media(max-width:767px){body.dmRoot .dmHeader .displayHidden-inner .multilingualWidget{top:0!important}}#dm_content div.dmRespCol div.multilingualWidget,#hcontainer div.dmRespCol div.multilingualWidget{width:auto!important;display:table!important}
.multilingualWidget.displayNone{display:none!important}.multilingualWidget>div{position:relative}.multilingualWidget{clear:both;margin:0;vertical-align:top;display:table!important;font-size:0;font-family:sans-serif}
.multilingualWidget .language{color:#888;display:inline-block}.multilingualWidget .language a{text-align:center;display:inline-block;color:inherit;border:#dadada 1px solid;background-color:#fff}.multilingualWidget .language a img{width:24px;height:26px;min-width:24px;min-height:26px}
.multilingualWidget .language a span{display:none;line-height:initial}.multilingualWidget .language a span.name{margin-top:5px;margin-left:7px;font-size:12px;font-weight:400;text-transform:capitalize}
.multilingualWidget .language a span.short-label{font-size:12px}.multilingualWidget .language a:after{line-height:initial}.multilingualWidget.open .current-language a:after{transform:rotate(-180deg)}.multilingualWidget .current-language a:after{transition:transform .2s}
.multilingualWidget.dropdown .language{width:100%}.multilingualWidget.dropdown .language a{display:block;padding:1px 5px}.multilingualWidget.dropdown .language.other-languages{position:absolute;z-index:800;max-height:0;overflow:hidden;transition:max-height .1s ease-in-out}
.multilingualWidget.dropdown .language.other-languages a{border-top:0!important}.multilingualWidget.dropdown .current-language{position:relative}.multilingualWidget.dropdown .current-language span.name{padding-right:25px}
.multilingualWidget.dropdown .dm-icon{font-size:9px;display:inline-block;position:absolute;top:46%;transform:translateY(-50%);transition:transform .2s;right:8px}.multilingualWidget.dropdown.open .dm-icon{transform:rotate(-180deg) translateY(50%)}
.multilingualWidget.dropdown.open .other-languages{display:block;max-height:300px}.multilingualWidget.dropdown .other-languages,.multilingualWidget.dropdown.flag-only .dm-icon,.multilingualWidget.inline span,.multilingualWidget.no-flag a img{display:none}
.multilingualWidget.dropdown.flag-only a{border:transparent 1px solid;background-color:transparent}.multilingualWidget.dropdown.flag-only.open .language a{background-color:rgba(0,0,0,.3);border:#dadada 1px solid}
.multilingualWidget.dropdown.long-label a{text-align:left;padding:2px 0 2px 5px;position:relative;box-sizing:border-box}.multilingualWidget.dropdown.long-label a span.name,.multilingualWidget.inline.flag-only .language,.multilingualWidget.inline.short-label.no-flag span.short-label{display:inline-block}
.multilingualWidget.dropdown.long-label.no-flag a{padding:7px 10px 9px}.multilingualWidget.dropdown.long-label.no-flag a span.name,.multilingualWidget.dropdown.short-label.no-flag a span.short-label{margin:0;display:inline-block}
.multilingualWidget.dropdown.short-label.no-flag a{padding:8px 22px 9px 10px;font-size:12px;min-height:32px;height:auto;box-sizing:border-box}.multilingualWidget.dropdown.short-label.no-flag .current-language a:after{top:12px}
.multilingualWidget.short-label span.short-label{text-transform:uppercase}.multilingualWidget.inline.flag-only a{padding:2px 5px;height:32px;box-sizing:border-box}.multilingualWidget.inline.flag-only .current-language a{box-shadow:inset 0 0 8px 0 rgba(0,0,0,.6);border-right:0;border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}
.multilingualWidget.inline.flag-only .other-languages a:not(:last-child){border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}.multilingualWidget.inline.flag-only .dm-icon,.multilingualWidget.inline.short-label.no-flag .dm-icon{display:none}
.multilingualWidget.inline.short-label.no-flag .current-language a{padding-right:0;border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}.multilingualWidget.inline.short-label.no-flag .current-language a span.short-label{font-weight:700}
.multilingualWidget.inline.short-label.no-flag .other-languages a{border-left-color:transparent!important;border-left-width:0!important;border-left-style:none!important}.multilingualWidget.inline.short-label.no-flag .other-languages a:not(:last-child){padding-right:0;border-right-color:transparent!important;border-right-width:0!important;border-right-style:none!important}
.multilingualWidget.inline.short-label.no-flag a{position:relative;padding:8px 10px;font-size:12px;min-height:32px;height:auto;text-decoration:none}.multilingualWidget.inline.short-label.no-flag a:after{content:"/";position:absolute;top:8px;right:-7px;z-index:1;pointer-events:none}
.multilingualWidget.inline.short-label.no-flag a:hover .short-label{text-decoration:underline}.multilingualWidget.inline.short-label.no-flag .other-languages a:last-child:after{content:""}/**/.dmNewParagraph[data-version] .text-align-left{text-align:left!important}.dmNewParagraph[data-version] .text-align-center{text-align:center!important}.dmNewParagraph[data-version] .text-align-right{text-align:right!important}
.dmNewParagraph[data-version] .text-align-justify{text-align:justify!important}.dmNewParagraph[data-version] .ql-indent-1{padding:0 1em;padding-inline-end:0;padding-inline-start:3em}.dmNewParagraph[data-version] .ql-indent-2{padding:0 2em;padding-inline-end:0;padding-inline-start:6em}
.dmNewParagraph[data-version] .ql-indent-3{padding:0 3em;padding-inline-end:0;padding-inline-start:9em}.dmNewParagraph[data-version] .ql-indent-4{padding:0 4em;padding-inline-end:0;padding-inline-start:12em}
.dmNewParagraph[data-version] .ql-indent-5{padding:0 5em;padding-inline-end:0;padding-inline-start:15em}.dmNewParagraph[data-version] .ql-indent-6{padding:0 6em;padding-inline-end:0;padding-inline-start:18em}
.dmNewParagraph[data-version] .ql-indent-7{padding:0 7em;padding-inline-end:0;padding-inline-start:21em}.dmNewParagraph[data-version] .ql-indent-8{padding:0 8em;padding-inline-end:0;padding-inline-start:24em}
.dmNewParagraph[data-version] .ql-indent-9{padding:0 9em;padding-inline-end:0;padding-inline-start:27em}.dmNewParagraph[data-version]{line-height:initial}.dmNewParagraph[data-version] [class*=size-]{width:auto!important;height:auto!important}
.dmNewParagraph[data-version] h1,.dmNewParagraph[data-version] h2,.dmNewParagraph[data-version] h3,.dmNewParagraph[data-version] h4,.dmNewParagraph[data-version] h5,.dmNewParagraph[data-version] h6,.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] p,.dmNewParagraph[data-version] ul{margin-top:0;margin-bottom:0}
.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] ul{padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.dmNewParagraph[data-version] ol>li,.dmNewParagraph[data-version] ul>li{list-style-type:none;text-indent:-1.5em;margin:0 1em;margin-inline-end:0;margin-inline-start:2em}
.dmNewParagraph[data-version] ol>li:before,.dmNewParagraph[data-version] ul>li:before{min-width:1em;display:inline-block;margin-right:.5em;margin-inline-start:0;margin-inline-end:.5em;text-align:right;text-align:end}
.dmNewParagraph[data-version] ul .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ul .ql-indent-1:before{font-weight:700;content:"○"}
.dmNewParagraph[data-version] ul .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ul .ql-indent-2:before,.dmNewParagraph[data-version] ul .ql-indent-3:before,.dmNewParagraph[data-version] ul .ql-indent-4:before,.dmNewParagraph[data-version] ul .ql-indent-5:before,.dmNewParagraph[data-version] ul .ql-indent-6:before,.dmNewParagraph[data-version] ul .ql-indent-7:before,.dmNewParagraph[data-version] ul .ql-indent-8:before,.dmNewParagraph[data-version] ul .ql-indent-9:before{font-weight:700;content:"■"}
.dmNewParagraph[data-version] ul .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ul .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}
.dmNewParagraph[data-version] ul .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ul .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}
.dmNewParagraph[data-version] ul .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ul .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ul .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}
.dmNewParagraph[data-version] ul>li:before{font-weight:700;content:"•";font-family:Arial}.dmNewParagraph[data-version] ul.custom-list-1>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"○";transform:scale(1);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-2>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"★";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-3>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"➞";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-4>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"＋";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-5>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"－";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-6>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"✓";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-7>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"✗";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ol .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ol .ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}
.dmNewParagraph[data-version] ol .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ol .ql-indent-2:before{content:counter(list-2,lower-roman) ". "}
.dmNewParagraph[data-version] ol .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ol .ql-indent-3:before{content:counter(list-3,decimal) ". "}
.dmNewParagraph[data-version] ol .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}.dmNewParagraph[data-version] ol .ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}
.dmNewParagraph[data-version] ol .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ol .ql-indent-5:before{content:counter(list-5,lower-roman) ". "}
.dmNewParagraph[data-version] ol .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}.dmNewParagraph[data-version] ol .ql-indent-6:before{content:counter(list-6,decimal) ". "}
.dmNewParagraph[data-version] ol .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ol .ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}
.dmNewParagraph[data-version] ol .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ol .ql-indent-8:before{content:counter(list-8,lower-roman) ". "}
.dmNewParagraph[data-version] ol .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}.dmNewParagraph[data-version] ol .ql-indent-9:before{content:counter(list-9,decimal) ". "}
.dmNewParagraph[data-version] ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.dmNewParagraph[data-version] ol li:before{content:counter(list-0,decimal) ". "}
.dmNewParagraph[data-version] a{vertical-align:initial}@media(min-width:768px) and (max-width:1024px){.dmNewParagraph[data-version] .t-text-align-left{text-align:left!important}.dmNewParagraph[data-version] .t-text-align-center{text-align:center!important}
.dmNewParagraph[data-version] .t-text-align-right{text-align:right!important}.dmNewParagraph[data-version] .t-text-align-justify{text-align:justify!important}}@media(max-width:767px){.dmRoot .dmNewParagraph[data-version] .m-text-align-left{text-align:left!important}
.dmRoot .dmNewParagraph[data-version] .m-text-align-center{text-align:center!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-right{text-align:right!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-justify{text-align:justify!important}
}.inlineBindingLink{color:inherit!important;text-decoration:inherit!important}/**/.imageWidget{position:relative}.imageWidget a,.imageWidget span.image-caption{font-style:italic;text-align:center}.imageWidget a[data-caption]::after,.imageWidget span[data-caption]::after{content:attr(data-caption);display:block;line-height:100%}
.imageWidget.with-caption a::after,.imageWidget.with-caption span.image-caption::after{margin-top:12px}.imageWidget img[width][height]{height:auto}[data-flex-site] #fcontainer .imageWidget:after,[data-flex-site] #flex-footer .imageWidget:after,[data-flex-site] #flex-header .imageWidget:after{content:none}
[data-flex-site] #fcontainer .imageWidget:before,[data-flex-site] #flex-footer .imageWidget:before,[data-flex-site] #flex-header .imageWidget:before{font-size:80px;transform:none}.imageWidget.hover img.hover-image,.imageWidget:hover img.hover-image{display:initial}
.imageWidget.hover.hasHover img:not(.hover-image),.imageWidget:hover.hasHover img:not(.hover-image){display:none!important}.imageWidget img.hover-image,.imageWidget img.logo-on-scroll{display:none}/**/#dm .dmSocialHub:not(.gapSpacing) .socialHubInnerDiv a:not(:last-child){margin-right:5px}.socialHubIcon{display:flex!important;align-items:center;justify-content:center}.socialHubIcon svg{fill:currentColor;width:80%;height:80%}
.socialHubIcon.style1,.socialHubIcon.style4,.socialHubIcon.style6,.socialHubIcon.style7{background:#617379}.socialHubIcon.style7{box-shadow:0 5px 0 0 #475459}.style1.dmSocialTiktok,.style4.dmSocialTiktok{background:#000}
.style1.dmSocialFacebook,.style4.dmSocialFacebook{background:#1877f2}.style1.dmSocialTwitter,.style4.dmSocialTwitter{background:#0f1419}.style1.dmSocialGooglePlus,.style4.dmSocialGooglePlus{background:#da4835}
.style1.dmSocialInstagram,.style4.dmSocialInstagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important}.style1.dmSocialYoutube,.style4.dmSocialYoutube{background:red}
.style1.dmSocialLinkedin,.style4.dmSocialLinkedin{background:#2867b2}.style1.dmSocialYelp,.style4.dmSocialYelp{background:#e43340}.style1.dmSocialPinterest,.style4.dmSocialPinterest{background:#c8232c}
.style1.dmSocialVimeo,.style4.dmSocialVimeo{background:#1ab7ea}.style1.dmSocialPicasa,.style4.dmSocialPicasa{background:#be81d1}.style1.dmSocialFoursquare,.style4.dmSocialFoursquare{background:#ef4b78}
.style1.dmSocialRss,.style4.dmSocialRss{background:#f39200}.style1.dmSocialReddit,.style4.dmSocialReddit{background:#ff4500}.style1.dmSocialEmail,.style4.dmSocialEmail{background:#617379}.style1.dmSocialSnapchat,.style4.dmSocialSnapchat{background:#fffc00}
.style1.dmSocialTripadvisor,.style4.dmSocialTripadvisor{background:#589442}.style1.dmSocialWaze,.style4.dmSocialWaze{background:#56cbe7}.style1.dmSocialGoogleMyBusiness,.style4.dmSocialGoogleMyBusiness{background:#477cdf}
.style1.dmSocialWhatsapp,.style4.dmSocialWhatsapp{background:#25d366}.style1.dmSocialPhone,.style4.dmSocialPhone{background:#616c79}.style1:after{content:"";width:44px;height:28px;display:block;position:absolute;top:0;left:0;z-index:-1;border-radius:10px}
.style1.dmSocialEmail:after,.style1.dmSocialFacebook:after,.style1.dmSocialFoursquare:after,.style1.dmSocialGoogleMyBusiness:after,.style1.dmSocialGooglePlus:after,.style1.dmSocialInstagram:after,.style1.dmSocialLinkedin:after,.style1.dmSocialPhone:after,.style1.dmSocialPicasa:after,.style1.dmSocialPinterest:after,.style1.dmSocialReddit:after,.style1.dmSocialRss:after,.style1.dmSocialSnapchat:after,.style1.dmSocialTripadvisor:after,.style1.dmSocialTwitter:after,.style1.dmSocialVimeo:after,.style1.dmSocialYelp:after,.style1.dmSocialYoutube:after{background:#fff;opacity:.2}
.style2.dmSocialTiktok{color:#000}.style2.dmSocialFacebook{color:#1877f2}.style2.dmSocialTwitter{color:#0f1419}.style2.dmSocialGooglePlus{color:#da4835}.style2.dmSocialInstagram:before{background-image:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.style2.dmSocialYoutube{color:red}.style2.dmSocialLinkedin{color:#2867b2}.style2.dmSocialYelp{color:#e43340}.style2.dmSocialPinterest{color:#c8232c}.style2.dmSocialVimeo{color:#1ab7ea}.style2.dmSocialPicasa{color:#be81d1}
.style2.dmSocialFoursquare{color:#ef4b78}.style2.dmSocialRss{color:#f39200}.style2.dmSocialReddit{color:#ff4500}.style2.dmSocialEmail{color:#617379}.style2.dmSocialSnapchat{color:#fffc00}.style2.dmSocialTripadvisor{color:#589442}
.style2.dmSocialGoogleMyBusiness:before{color:#477cdf}.style2.dmSocialWaze:before{color:#56cbe7}.style2.dmSocialWhatsapp:before{color:#25d366}.style2.dmSocialPhone{color:#616c79}.style6.dmSocialTiktok{background:#000}
.style6.dmSocialFacebook{background:#1877f2}.style6.dmSocialTwitter{background:#0f1419}.style6.dmSocialGooglePlus{background:#da4835}.style6.dmSocialInstagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important}
.style6.dmSocialYoutube{background:red}.style6.dmSocialLinkedin{background:#2867b2}.style6.dmSocialYelp{background:#e43340}.style6.dmSocialPinterest{background:#c8232c}.style6.dmSocialVimeo{background:#1ab7ea}
.style6.dmSocialPicasa{background:#be81d1}.style6.dmSocialFoursquare{background:#ef4b78}.style6.dmSocialRss{background:#f39200}.style6.dmSocialReddit{background:#ff4500}.style6.dmSocialEmail{background:#617379}
.style6.dmSocialSnapchat{background:#fffc00}.style6.dmSocialTripadvisor{background:#589442}.style6.dmSocialWaze{background:#56cbe7}.style6.dmSocialGoogleMyBusiness{background:#477cdf}.style6.dmSocialWhatsapp{background:#25d366}
.style6.dmSocialPhone{background:#616c79}.style7.dmSocialTiktok{background:#000}.style7.dmSocialFacebook{background:#1877f2;box-shadow:0 5px 0 0 #4b68a5}.style7.dmSocialTwitter{background:#0f1419}.style7.dmSocialGooglePlus{background:#da4835;box-shadow:0 5px 0 0 #c44130}
.style7.dmSocialInstagram{box-shadow:0 5px 0 0 #ad2271;background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important}.style7.dmSocialYoutube{background:red;box-shadow:0 5px 0 0 #b3392c}
.style7.dmSocialLinkedin{background:#2867b2;box-shadow:0 5px 0 0 #1278b1}.style7.dmSocialYelp{background:#e43340;box-shadow:0 5px 0 0 #b62933}.style7.dmSocialPinterest{background:#c8232c;box-shadow:0 5px 0 0 #a21a2d}
.style7.dmSocialVimeo{background:#1ab7ea;box-shadow:0 5px 0 0 #1592bb}.style7.dmSocialPicasa{background:#be81d1;box-shadow:0 5px 0 0 #9867a7}.style7.dmSocialFoursquare{background:#ef4b78;box-shadow:0 5px 0 0 #da3b67}
.style7.dmSocialRss{background:#f39200;box-shadow:0 5px 0 0 #c27500}.style7.dmSocialReddit{background:#ff4500;box-shadow:0 5px 0 0 #ae5534}.style7.dmSocialEmail{background:#617379;box-shadow:0 5px 0 0 #475459}
.style7.dmSocialSnapchat{background:#fffc00;box-shadow:0 5px 0 0 #d1d05d}.style7.dmSocialTripadvisor{background:#589442;box-shadow:0 5px 0 0 #4e7b3e}.style7.dmSocialWaze{background:#56cbe7;box-shadow:0 5px 0 0 #475459}
.style7.dmSocialGoogleMyBusiness{background:#477cdf;box-shadow:0 5px 0 0 #475459}.style7.dmSocialWhatsapp{background:#25d366;box-shadow:0 5px 0 0 #475459}.style7.dmSocialPhone{background:#616c79;box-shadow:0 5px 0 0 #4a5458}
/* Custom Widgets Styles */
@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Heebo:wght@300;400;500;600;700&display=swap");
/* ── Widget root ──────────────────────────────────────────────────────────── */
.widget-19bbc2 {
  /* ════════════════════════════════════════════════════════════
     LAYER 1 — Platform token aliases (--mfw-* → --w-*)
     ALL --mfw-* references live ONLY here.
     Every --mfw-* var has a hardcoded fallback (Rule 2).
     ALL CSS rules below consume --w-* tokens only (Rule 1).
     ════════════════════════════════════════════════════════════ */
  --w-bg: var(--mfw-surface, #f5f6fa);
  --w-surface: var(--mfw-surface-raised, #ffffff);
  --w-border: var(--mfw-border, #e0e4ef);
  --w-brand: var(--mfw-brand, #2d6cdf);
  --w-brand-hover: var(--mfw-accent, #1a4fb5);
  --w-brand-text: var(--mfw-brand-text, #ffffff);
  --w-text: var(--mfw-text, #1a1f36);
  --w-text-muted: var(--mfw-text-muted, #6b7280);
  --w-text-subtle: var(--mfw-text-subtle, #9ca3af);
  --w-row-hover: var(--mfw-surface-subtle, #eef3ff);
  --w-chip-bg: var(--mfw-surface-subtle, #f0f4ff);
  --w-chip-text: var(--mfw-brand, #2d6cdf);
  --w-divider: var(--mfw-divider, var(--mfw-border, #e0e4ef));
  --w-focus: var(--mfw-focus, var(--mfw-brand, #2d6cdf));
  --w-font: var(--mfw-font-family-ui, "Heebo", system-ui, sans-serif);
  --w-font-heading: var(--mfw-font-family-heading, var(--mfw-font-family-body, inherit));
  --w-font-ui: var(--mfw-font-family-ui, var(--mfw-font-family-body, inherit));
  --w-font-weight-body: var(--mfw-font-weight-body, 400);
  --w-font-weight-heading: var(--mfw-font-weight-heading, 600);
  --w-radius: var(--mfw-radius, 8px);
  --w-radius-sm: var(--mfw-radius-sm, 6px);
  --w-radius-card: var(--mfw-radius-card, 10px);
  --w-shadow: var(--mfw-shadow, 0 2px 12px rgba(0,0,0,0.08));
  --w-shadow-lg: var(--mfw-shadow-lg, 0 8px 40px rgba(0,0,0,0.22));
  --w-easing: var(--mfw-easing-standard, ease);
  --w-duration-fast: var(--mfw-duration-fast, 0.15s);
  --w-duration-base: var(--mfw-duration-base, 0.2s);
  /* Status tokens */
  --w-success-bg: var(--mfw-status-success, #d1fae5);
  --w-success-text: var(--mfw-status-success-text, #065f46);
  --w-warning-bg: var(--mfw-status-warning, #fef3c7);
  --w-warning-text: var(--mfw-status-warning-text, #92400e);
  --w-danger-bg: var(--mfw-status-danger, #fee2e2);
  --w-danger-text: var(--mfw-status-danger-text, #991b1b);
  --w-neutral-bg: var(--mfw-status-neutral, #f3f4f6);
  --w-neutral-text: var(--mfw-status-neutral-text, #6b7280);
  /* Button tokens */
  --w-btn-bg: var(--mfw-btn-bg, var(--mfw-brand, #2d6cdf));
  --w-btn-text: var(--mfw-btn-text, var(--mfw-brand-text, #ffffff));
  --w-btn-border: var(--mfw-btn-border, transparent);
  /* Table header tokens */
  --w-table-hdr-bg: var(--mfw-table-col-header-bg, var(--mfw-brand, #2d6cdf));
  --w-table-hdr-text: var(--mfw-table-col-header-text, #ffffff);
  /* Popup / dialog tokens */
  --w-popup-bg: var(--mfw-popup-bg, var(--mfw-surface-raised, #ffffff));
  --w-popup-overlay: var(--mfw-popup-overlay, rgba(15, 23, 42, 0.5));
  --w-popup-title: var(--mfw-popup-header-text, var(--mfw-text, #1a1f36));
  /* Input tokens */
  --w-input-bg: var(--mfw-input-bg, #ffffff);
  --w-input-border: var(--mfw-input-border, var(--mfw-border, #e0e4ef));
  --w-input-text: var(--mfw-input-text, var(--mfw-text, #1a1f36));
  /* On-brand surface text (Rule 5 — icon / name colour on the navbar) */
  --w-on-brand: var(--mfw-text-on-brand, #ffffff);
  /* ════════════════════════════════════════════════════════════
     RULE 5 — Root-level font + colour inheritance
     ════════════════════════════════════════════════════════════ */
  font-family: var(--w-font) !important;
  color: var(--w-text) !important;
  box-sizing: border-box;
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 160px;
  position: relative;
  margin: 0;
  /* ── Login bar shell ─────────────────────────────────────────────────── */
  /* ── Logged-in panel ─────────────────────────────────────────────────── */
  /* ── Guest panel ─────────────────────────────────────────────────────── */
  /* ── Name + theme label stack ───────────────────────────────────────── */
  /* ── Name stack CSS tooltip ─────────────────────────────────────────── */
  /* ── Display name — uses on-brand text colour ──────────────────────────── */
  /* ── Theme name — dimmed line beneath the display name ──────────────── */
  /* ── Privacy padlock ─────────────────────────────────────────────────── */
  /* ── Account icon button (shared base) ──────────────────────────────── */
  /* ── Solid icon: normal logged-in user — brand primary colour ──────────── */
  /* ── Solid icon: admin — gold ─────────────────────────────────────────── */
  /* Swap icons when admin class is active */
  /* ── Outline icon: guest / not logged in ─────────────────────────────── */
  /* ── Dropdown container ──────────────────────────────────────────────── */
  /* ── Dropdown menu ───────────────────────────────────────────────────── */
  /* ── Menu items (shared for <a> and <button>) ────────────────────────── */
  /* ── Admin divider ───────────────────────────────────────────────────── */
  /* ── Admin menu items ────────────────────────────────────────────────── */
  /* ── Responsive ──────────────────────────────────────────────────────── */
}
.widget-19bbc2 * {
  box-sizing: border-box;
}
.widget-19bbc2 .mf-login-bar {
  width: 100%;
  max-width: 100%;
  min-width: 160px;
  background: transparent;
  font-family: var(--w-font) !important;
  font-size: 13px;
  margin: 0;
}
.widget-19bbc2 .mf-login-bar-inner {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 5px;
  min-height: 38px;
  margin: 0;
}
.widget-19bbc2 .mf-login-bar-auth {
  display: none;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.widget-19bbc2 .mf-login-bar-guest {
  display: none;
  align-items: center;
  min-width: 0;
}
.widget-19bbc2 .mf-login-bar-name-stack {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  min-width: 0;
  max-width: 180px;
  cursor: pointer;
  text-decoration: none;
  color: inherit;
  overflow: visible;
}
.widget-19bbc2 .mf-login-bar-name-stack:hover,
.widget-19bbc2 .mf-login-bar-name-stack:focus {
  text-decoration: none;
  color: inherit;
  outline: none;
}
.widget-19bbc2 .mf-login-bar-name-tip {
  position: relative;
}
.widget-19bbc2 .mf-login-bar-name-tip::after {
  content: "Change your Mood in your User Profile";
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  white-space: nowrap;
  background: var(--w-surface) !important;
  color: var(--w-text) !important;
  border: 1px solid var(--w-border);
  box-shadow: var(--w-shadow);
  font-size: 11px;
  line-height: 1.4;
  padding: 4px 8px;
  border-radius: 4px;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.15s ease;
  z-index: 9999;
}
.widget-19bbc2 .mf-login-bar-name-tip:hover::after {
  opacity: 1;
}
.widget-19bbc2 .mf-login-bar-name {
  font-family: var(--w-font) !important;
  font-weight: 400;
  color: var(--w-on-brand) !important;
  font-size: 13px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.widget-19bbc2 .mf-login-bar-theme {
  font-family: var(--w-font) !important;
  font-weight: 400;
  color: var(--w-on-brand) !important;
  font-size: 10px;
  opacity: 0.6;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  line-height: 1.2;
}
.widget-19bbc2 .mf-login-bar-theme:empty {
  display: none;
}
.widget-19bbc2 .mf-login-bar-privacy {
  display: inline-flex;
  align-items: center;
  color: var(--w-on-brand) !important;
  flex-shrink: 0;
  opacity: 0.85;
}
.widget-19bbc2 #mf-login-bar-privacy-locked {
  display: none;
  align-items: center;
  line-height: 1;
}
.widget-19bbc2 .mf-account-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  padding: 6px;
  /* Rule 6 — transitions use duration + easing tokens */
  transition: opacity var(--w-duration-fast) var(--w-easing) !important, background var(--w-duration-fast) var(--w-easing) !important;
  flex-shrink: 0;
  line-height: 1;
}
.widget-19bbc2 .mf-account-btn:hover {
  /* hardcoded — semi-transparent white overlay on a brand-coloured navbar;
     must remain white regardless of theme so it is always visible */
  background: rgba(255, 255, 255, 0.12) !important;
}
.widget-19bbc2 .mf-account-btn:active {
  /* hardcoded — semi-transparent white overlay, same reason as :hover */
  background: rgba(255, 255, 255, 0.2) !important;
}
.widget-19bbc2 .mf-account-icon--solid {
  color: var(--w-brand) !important;
  display: block;
}
.widget-19bbc2 .mf-account-icon--admin {
  /* hardcoded — semantic status colour: gold distinguishes admin from
     regular user at a glance; intentionally not theme-adaptive */
  color: #f5c842 !important;
  display: none;
}
.widget-19bbc2 .mf-account-btn.is-admin .mf-account-icon--solid {
  display: none;
}
.widget-19bbc2 .mf-account-btn.is-admin .mf-account-icon--admin {
  display: block;
}
.widget-19bbc2 .mf-account-icon--outline {
  color: var(--w-brand) !important;
  opacity: 0.65;
}
.widget-19bbc2 .mf-account-btn--guest:hover .mf-account-icon--outline {
  opacity: 1;
}
.widget-19bbc2 .mf-account-dropdown {
  position: relative;
  flex-shrink: 0;
}
.widget-19bbc2 .mf-logout-menu {
  position: absolute;
  right: 0;
  top: calc(100% + 6px);
  min-width: 150px;
  background: var(--w-surface) !important;
  border: 1px solid var(--w-border) !important;
  border-radius: var(--w-radius-card);
  box-shadow: var(--w-shadow) !important;
  z-index: 9999;
  overflow: hidden;
  display: none;
  animation: mf-dropdown-in var(--w-duration-fast) var(--w-easing);
}
.widget-19bbc2 .mf-logout-menu.mf-logout-menu--open {
  display: block;
}
.widget-19bbc2 .mf-logout-menu-item {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 10px 14px;
  background: none;
  border: none;
  cursor: pointer;
  font-family: var(--w-font) !important;
  font-size: 13px;
  font-weight: 400;
  color: var(--w-text) !important;
  text-align: left;
  text-decoration: none;
  transition: background var(--w-duration-fast) var(--w-easing) !important;
  white-space: nowrap;
}
.widget-19bbc2 .mf-logout-menu-item:hover {
  background: var(--w-row-hover) !important;
  color: var(--w-text) !important;
}
.widget-19bbc2 .mf-admin-divider {
  height: 1px;
  background: var(--w-divider) !important;
  margin: 4px 0;
}
.widget-19bbc2 .mf-admin-item {
  color: var(--w-brand) !important;
}
.widget-19bbc2 .mf-admin-item:hover {
  color: var(--w-brand) !important;
  background: var(--w-row-hover) !important;
}
@media (max-width: 767px) {
  .widget-19bbc2 {
    /* On mobile: icon comes first, text second — reverse the desktop order */
    /* Left-align the name/theme stack on mobile */
    /* Larger name on mobile */
    /* Theme name — balanced with the larger name */
    /* Dropdown opens above and to the right of the icon on mobile */
  }
  .widget-19bbc2 .mf-login-bar-inner {
    padding: 5px 5px 5px 0;
    justify-content: flex-start;
  }
  .widget-19bbc2 .mf-login-bar-auth {
    flex-direction: row-reverse;
    gap: 9px;
  }
  .widget-19bbc2 .mf-login-bar-guest {
    flex-direction: row-reverse;
  }
  .widget-19bbc2 .mf-login-bar-name-stack {
    max-width: 120px;
    align-items: flex-start;
  }
  .widget-19bbc2 .mf-login-bar-name {
    font-size: 15px;
    font-weight: 600;
    color: #ffffff !important;
  }
  .widget-19bbc2 .mf-login-bar-theme {
    font-size: 12px;
    color: #ffffff !important;
  }
  .widget-19bbc2 .mf-logout-menu {
    right: auto;
    left: 0;
    top: auto;
    bottom: calc(100% + 6px);
  }
  .widget-19bbc2 .mf-account-btn {
    padding-left: 0;
    margin-left: -6px;
  }
  .widget-19bbc2 .mf-login-bar-name-tip::after {
    right: auto;
    left: 0;
  }
}

/* ── Dropdown entrance animation (outside root to avoid nesting quirks) ── */
@keyframes mf-dropdown-in {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@charset "UTF-8";
.widget-1484b5 {
  /* ══════════════════════════════════════════════════════════════════════
     LAYER 1 — Platform token aliases (--mfw-* → --w-*)
     Every --mfw-* var has a hardcoded fallback (Rule 2).
     All CSS rules below consume --w-* tokens only (Rule 1).
     ══════════════════════════════════════════════════════════════════════ */
  /* Colour / surface */
  --w-bg: var(--mfw-surface, #f5f6fa);
  --w-surface: var(--mfw-surface-raised, #ffffff);
  --w-border: var(--mfw-border, #e0e4ef);
  --w-brand: var(--mfw-brand, #2d6cdf);
  --w-brand-hover: var(--mfw-accent, #1a4fb5);
  --w-brand-text: var(--mfw-brand-text, #ffffff);
  --w-text: var(--mfw-text, #1a1f36);
  --w-text-muted: var(--mfw-text-muted, #6b7280);
  --w-text-subtle: var(--mfw-text-subtle, #9ca3af);
  --w-row-hover: var(--mfw-surface-subtle, #eef3ff);
  --w-chip-bg: var(--mfw-surface-subtle, #f0f4ff);
  --w-chip-text: var(--mfw-brand, #2d6cdf);
  --w-divider: var(--mfw-divider, var(--mfw-border, #e0e4ef));
  --w-focus: var(--mfw-focus, var(--mfw-brand, #2d6cdf));
  --w-font: var(--mfw-font-family-body, inherit);
  --w-font-heading: var(--mfw-font-family-heading, var(--mfw-font-family-body, inherit));
  --w-font-ui: var(--mfw-font-family-ui, var(--mfw-font-family-body, inherit));
  --w-radius: var(--mfw-radius, 8px);
  --w-radius-sm: var(--mfw-radius-sm, 6px);
  --w-radius-card: var(--mfw-radius-card, 10px);
  --w-shadow: var(--mfw-shadow, 0 2px 12px rgba(0,0,0,0.08));
  --w-shadow-lg: var(--mfw-shadow-lg, 0 8px 40px rgba(0,0,0,0.22));
  --w-easing: var(--mfw-easing-standard, ease);
  --w-duration-fast: var(--mfw-duration-fast, 0.15s);
  --w-duration-base: var(--mfw-duration-base, 0.2s);
  /* Status tokens */
  --w-success-bg: var(--mfw-status-success, #d1fae5);
  --w-success-text: var(--mfw-status-success-text, #065f46);
  --w-warning-bg: var(--mfw-status-warning, #fef3c7);
  --w-warning-text: var(--mfw-status-warning-text, #92400e);
  --w-danger-bg: var(--mfw-status-danger, #fee2e2);
  --w-danger-text: var(--mfw-status-danger-text, #991b1b);
  --w-neutral-bg: var(--mfw-status-neutral, #f3f4f6);
  --w-neutral-text: var(--mfw-status-neutral-text, #6b7280);
  /* Button tokens */
  --w-btn-bg: var(--mfw-btn-bg, var(--mfw-brand, #2d6cdf));
  --w-btn-text: var(--mfw-btn-text, var(--mfw-brand-text, #ffffff));
  --w-btn-border: var(--mfw-btn-border, transparent);
  /* Table header tokens */
  --w-table-hdr-bg: var(--mfw-table-col-header-bg, var(--mfw-brand, #2d6cdf));
  --w-table-hdr-text: var(--mfw-table-col-header-text, #ffffff);
  /* Popup / dialog tokens */
  --w-popup-bg: var(--mfw-popup-bg, var(--mfw-surface-raised, #ffffff));
  --w-popup-overlay: var(--mfw-popup-overlay, rgba(15, 23, 42, 0.5));
  --w-popup-title: var(--mfw-popup-header-text, var(--mfw-text, #1a1f36));
  /* Input tokens */
  --w-input-bg: var(--mfw-input-bg, #ffffff);
  --w-input-border: var(--mfw-input-border, var(--mfw-border, #e0e4ef));
  --w-input-text: var(--mfw-input-text, var(--mfw-text, #1a1f36));
  /* ── Rule 5: root-level font and colour inheritance ── */
  font-family: var(--w-font) !important;
  color: var(--w-text) !important;
  box-sizing: border-box;
  /* ══════════════════════════════════════════════════════════════════════
     State messages: loading / error / empty
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     List widget wrapper
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     Single column layout
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     House Photo Section
     ══════════════════════════════════════════════════════════════════════ */
  /* Edit Controls (shown in edit mode) */
  /* ══════════════════════════════════════════════════════════════════════
     Mobile Action Bar — hidden on desktop, shown on mobile above controls
     ══════════════════════════════════════════════════════════════════════ */
  /* Mobile-only buttons: always hidden on desktop */
  /* ══════════════════════════════════════════════════════════════════════
     Configuration Bar — Grid Controls in Photo Container
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     Unassigned Badges Area
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     Action Buttons
     ══════════════════════════════════════════════════════════════════════ */
  /* Save button — uses btn tokens (Rule 8) */
  /* Cancel button — circular, top-right corner (desktop only) */
  /* ══════════════════════════════════════════════════════════════════════
     Photo Container
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     Upload button overlay
     ══════════════════════════════════════════════════════════════════════ */
  /* Upload button uses btn tokens (Rule 8) */
  /* ══════════════════════════════════════════════════════════════════════
     Vertical slider for badge positioning
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     Grid cells
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     Photo Badges
     ══════════════════════════════════════════════════════════════════════ */
  /* Badge name styling */
  /* Badges in grid cells: absolute positioned */
  /* Display-mode badge: uses theme surface and text tokens */
  /* Badges with a profile: light dark-green outline */
  /* Not-found badges: muted text, slightly dimmed surface */
  /* Edit-mode badges: red tint (unplaced) */
  /* Green: explicitly placed badge */
  /* Red: auto-assigned or displaced badge */
  /* Badges in unassigned area */
  /* ══════════════════════════════════════════════════════════════════════
     Blank state / hint
     Desktop: absolutely positioned inside the photo container, top-right,
     just to the left of the corner edit button — zero extra height.
     Mobile: lives inline inside the action bar right-side — also zero height.
     ══════════════════════════════════════════════════════════════════════ */
  /* Mobile inline hint: hidden on desktop */
  /* ══════════════════════════════════════════════════════════════════════
     Edit button — top-right corner
     ══════════════════════════════════════════════════════════════════════ */
  /* Edit button — top-right corner (desktop only; hidden on mobile via media query) */
  /* Only show when JS marks the user as having edit rights */
  /* Hide pencil button when in edit mode */
  /* ══════════════════════════════════════════════════════════════════════
     Edit positions button — bottom-right corner
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     Member list items
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     Two-column layout
     ══════════════════════════════════════════════════════════════════════ */
  /* ══════════════════════════════════════════════════════════════════════
     Responsive: stack columns on mobile
     ══════════════════════════════════════════════════════════════════════ */
  /* Portrait mobile: 0.6× badge name font sizes and tighter badge padding */
}
.widget-1484b5 * {
  box-sizing: border-box;
}
.widget-1484b5 .monitor-mode-container {
  display: block;
  width: 100%;
  min-height: 100px;
}
.widget-1484b5 .list-loading,
.widget-1484b5 .list-error,
.widget-1484b5 .list-empty {
  font-size: 0.875rem;
  font-weight: var(--mfw-font-weight-body, 400);
  color: var(--w-text-muted) !important;
  padding: 8px 0;
}
.widget-1484b5 .list-error {
  color: var(--w-danger-text) !important;
}
.widget-1484b5 .list-widget {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
}
.widget-1484b5 .house-photo-layout {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
}
.widget-1484b5 .house-photo-section {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}
.widget-1484b5 .photo-edit-controls {
  display: none;
}
.widget-1484b5 .photo-mobile-action-bar {
  display: none; /* hidden on desktop */
}
.widget-1484b5 .photo-edit-btn-mobile,
.widget-1484b5 .photo-upload-btn-mobile,
.widget-1484b5 .photo-save-btn-mobile,
.widget-1484b5 .photo-cancel-btn-mobile {
  display: none;
}
.widget-1484b5 .photo-config-bar {
  /* Default: hidden; shown only in edit-mode as a flex bar above the photo */
  display: none;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 8px 16px;
  /* hardcoded — dark translucent overlay; must stay dark regardless of theme */
  background: rgba(0, 0, 0, 0.75);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: var(--w-radius-card);
  box-shadow: var(--w-shadow) !important;
  /* On desktop, float it centred above the photo using relative+margin trick */
  position: relative;
  margin: 0 auto 0;
  width: fit-content;
  max-width: 100%;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-config-bar {
  display: flex;
}
.widget-1484b5 .photo-config-left {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: nowrap;
}
.widget-1484b5 .photo-config-right {
  display: flex;
  align-items: center;
  gap: 12px;
}
.widget-1484b5 .photo-config-group {
  display: inline-flex;
  align-items: center;
  gap: 0;
  /* hardcoded — sits inside the dark overlay; white-tint styling is intentional */
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: var(--w-radius-sm);
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}
.widget-1484b5 .photo-config-label {
  font-size: 0.75rem;
  font-weight: var(--mfw-font-weight-ui, 600);
  font-family: var(--w-font-ui) !important;
  /* hardcoded — white text on the dark overlay is intentional */
  color: #ffffff;
  padding: 0 10px;
  /* hardcoded — white-tint on dark overlay */
  background: rgba(255, 255, 255, 0.1);
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  height: 32px;
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.widget-1484b5 .photo-row-minus,
.widget-1484b5 .photo-row-plus,
.widget-1484b5 .photo-col-minus,
.widget-1484b5 .photo-col-plus {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  font-weight: var(--mfw-font-weight-ui, 600);
  /* hardcoded — white controls on the dark overlay are intentional */
  color: #ffffff;
  /* hardcoded — white-tint on dark overlay */
  background: rgba(255, 255, 255, 0.15);
  border: none;
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  cursor: pointer;
  transition: background var(--w-duration-fast) var(--w-easing) !important, color var(--w-duration-fast) var(--w-easing) !important;
  font-family: var(--w-font-ui) !important;
  line-height: 1;
  padding: 0;
  margin: 0;
}
.widget-1484b5 .photo-row-plus,
.widget-1484b5 .photo-col-plus {
  border-right: none;
}
.widget-1484b5 .photo-row-minus:hover,
.widget-1484b5 .photo-row-plus:hover,
.widget-1484b5 .photo-col-minus:hover,
.widget-1484b5 .photo-col-plus:hover {
  /* hardcoded — hover lightens the white tint on the dark overlay */
  background: rgba(255, 255, 255, 0.3) !important;
  color: #ffffff !important;
}
.widget-1484b5 .photo-row-minus:active,
.widget-1484b5 .photo-row-plus:active,
.widget-1484b5 .photo-col-minus:active,
.widget-1484b5 .photo-col-plus:active {
  /* hardcoded — active state on the dark overlay */
  background: rgba(255, 255, 255, 0.4) !important;
}
.widget-1484b5 .photo-row-minus:disabled,
.widget-1484b5 .photo-row-plus:disabled,
.widget-1484b5 .photo-col-minus:disabled,
.widget-1484b5 .photo-col-plus:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.widget-1484b5 .photo-row-value,
.widget-1484b5 .photo-col-value {
  min-width: 32px;
  text-align: center;
  font-size: 0.8125rem;
  font-weight: var(--mfw-font-weight-ui, 600);
  font-family: var(--w-font-ui) !important;
  /* hardcoded — white value display on the dark overlay */
  color: #ffffff;
  padding: 0 8px;
  border-right: 1px solid rgba(255, 255, 255, 0.2);
}
.widget-1484b5 .photo-columns-config {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: nowrap;
}
.widget-1484b5 .photo-columns-config .photo-config-label {
  font-size: 0.75rem;
  /* hardcoded — white text on dark overlay */
  color: #ffffff;
}
.widget-1484b5 .unassigned-badges {
  width: 100%;
  /* hardcoded — dark translucent panel below photo; must stay dark regardless of theme */
  background: rgba(0, 0, 0, 0.75);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: var(--w-radius-card);
  padding: 12px;
  min-height: 60px;
  display: none;
  flex-wrap: wrap;
  gap: 8px;
  align-content: flex-start;
  box-shadow: var(--w-shadow) !important;
  margin-top: -5px;
}
.widget-1484b5 .house-photo-section.edit-mode .unassigned-badges {
  display: flex;
  max-height: 160px;
  overflow-y: auto;
}
.widget-1484b5 .unassigned-badges:empty::after {
  content: "Drag badges here or from grid cells";
  /* hardcoded — semi-transparent white hint text on the dark overlay */
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.8125rem;
  font-family: var(--w-font-ui) !important;
  font-style: italic;
  width: 100%;
  text-align: center;
  padding: 8px 0;
}
.widget-1484b5 .photo-save-btn,
.widget-1484b5 .photo-cancel-btn,
.widget-1484b5 .photo-cancel-btn-corner {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 6px 16px;
  font-size: 0.8125rem;
  font-weight: var(--mfw-font-weight-ui, 600);
  border: none;
  border-radius: var(--w-radius);
  cursor: pointer;
  transition: background var(--w-duration-fast) var(--w-easing) !important;
  font-family: var(--w-font-ui) !important;
}
.widget-1484b5 .photo-save-btn {
  background: var(--w-btn-bg) !important;
  color: var(--w-btn-text) !important;
  border: 1px solid var(--w-btn-border) !important;
  min-width: 120px;
}
.widget-1484b5 .photo-save-btn:hover {
  background: var(--mfw-accent, var(--w-brand-hover)) !important;
}
.widget-1484b5 .photo-save-btn:disabled {
  /* hardcoded — disabled state; neutral grey is semantic, not theme-adaptive */
  background: rgba(156, 163, 175, 0.8) !important;
  cursor: not-allowed;
}
.widget-1484b5 .photo-cancel-btn {
  color: var(--w-text) !important;
  background: var(--w-surface) !important;
  border: 1px solid var(--w-border) !important;
}
.widget-1484b5 .photo-cancel-btn:hover {
  background: var(--w-row-hover) !important;
}
.widget-1484b5 .photo-cancel-btn-corner {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 25;
  width: 44px;
  height: 44px;
  padding: 0;
  border-radius: 50%;
  background: var(--w-danger-bg) !important;
  color: var(--w-danger-text) !important;
  border: none;
  box-shadow: var(--w-shadow) !important;
  display: none;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-cancel-btn-corner {
  display: flex;
}
.widget-1484b5 .photo-cancel-btn-corner:hover {
  /* hardcoded — danger button deeper shade on hover; fixed semantic colour */
  background: #b91c1c !important;
  /* hardcoded — white text stays white on the dark danger hover */
  color: #ffffff !important;
  transform: scale(1.08);
}
.widget-1484b5 .photo-cancel-btn-corner:active {
  /* hardcoded — pressed danger state */
  background: #991b1b !important;
  transform: scale(0.98);
}
.widget-1484b5 .photo-cancel-btn-corner svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}
.widget-1484b5 .photo-save-progress {
  display: none;
}
.widget-1484b5 .house-photo-container {
  position: relative;
  width: 100%;
  min-height: clamp(200px, 56.25vw, 800px);
  background: var(--w-chip-bg) !important;
  border-radius: var(--w-radius-card);
  overflow: hidden;
  max-height: 90vh;
}
.widget-1484b5 .house-photo-container.photo-loaded {
  min-height: unset;
}
.widget-1484b5 .house-photo {
  width: 100%;
  max-width: 100%;
  height: auto;
  max-height: 90vh;
  display: block;
  border-radius: var(--w-radius-card);
  vertical-align: top;
  object-fit: contain;
}
.widget-1484b5 .photo-grid-overlay {
  position: absolute;
  inset: 0;
  display: block;
  z-index: 10;
  pointer-events: none;
}
.widget-1484b5 .photo-upload-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none;
  z-index: 20;
  pointer-events: none;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-upload-overlay {
  display: block;
  pointer-events: auto;
}
.widget-1484b5 .photo-upload-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 28px;
  font-size: 0.9375rem;
  font-weight: var(--mfw-font-weight-ui, 600);
  background: var(--w-btn-bg) !important;
  color: var(--w-btn-text) !important;
  border: 1px solid var(--w-btn-border) !important;
  border-radius: var(--w-radius);
  cursor: pointer;
  transition: background var(--w-duration-fast) var(--w-easing) !important, box-shadow var(--w-duration-fast) var(--w-easing) !important;
  font-family: var(--w-font-ui) !important;
  box-shadow: var(--w-shadow-lg) !important;
}
.widget-1484b5 .photo-upload-btn:hover {
  background: var(--mfw-accent, var(--w-brand-hover)) !important;
  transform: scale(1.05);
}
.widget-1484b5 .photo-upload-btn svg {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}
.widget-1484b5 .photo-vertical-slider-container {
  position: absolute;
  left: 4px;
  top: 4px;
  width: 32px;
  height: calc(100% - 8px);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 30;
  pointer-events: auto;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-grid-cell[data-row="1"][data-col="1"] .photo-vertical-slider-container {
  display: flex;
}
.widget-1484b5 .photo-vertical-slider {
  writing-mode: vertical-lr;
  direction: rtl;
  width: 8px;
  height: 80%;
  /* hardcoded — slider track; near-white on translucent overlay */
  background: rgba(255, 255, 255, 0.95);
  border: 2px solid var(--w-focus) !important;
  border-radius: var(--w-radius-sm);
  cursor: pointer;
  outline: none;
}
.widget-1484b5 .photo-vertical-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 20px;
  height: 32px;
  background: var(--w-focus) !important;
  border-radius: var(--w-radius-sm);
  cursor: pointer;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
}
.widget-1484b5 .photo-vertical-slider::-moz-range-thumb {
  width: 20px;
  height: 32px;
  background: var(--w-focus) !important;
  border-radius: var(--w-radius-sm);
  cursor: pointer;
  border: none;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
}
.widget-1484b5 .photo-vertical-slider:hover::-webkit-slider-thumb {
  background: var(--w-brand-hover) !important;
}
.widget-1484b5 .photo-vertical-slider:hover::-moz-range-thumb {
  background: var(--w-brand-hover) !important;
}
.widget-1484b5 .photo-grid-cell {
  position: absolute;
  border: 2px dotted transparent;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background var(--w-duration-base) var(--w-easing) !important, border-color var(--w-duration-base) var(--w-easing) !important;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-grid-cell {
  /* hardcoded — dotted white grid lines on photo overlay; must stay white regardless of theme */
  border: 2px dotted rgba(255, 255, 255, 0.6);
  background: transparent;
}
.widget-1484b5 .photo-grid-cell.drag-over {
  /* hardcoded — white tint drag target on photo overlay */
  background: rgba(255, 255, 255, 0.15) !important;
  border-color: rgba(255, 255, 255, 0.9) !important;
  border-style: solid;
  transform: scale(1.05);
}
.widget-1484b5 .photo-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 4px 12px;
  width: 95%;
  max-width: 140px;
  min-height: 36px;
  border-radius: var(--w-radius-sm);
  white-space: normal;
  text-align: center;
  line-height: 1.2;
  word-wrap: break-word;
  overflow: hidden;
  pointer-events: auto;
  user-select: none;
  z-index: 15;
  transition: background var(--w-duration-base) var(--w-easing) !important, border-color var(--w-duration-base) var(--w-easing) !important, box-shadow var(--w-duration-base) var(--w-easing) !important;
  gap: 1px;
}
.widget-1484b5 .badge-first-name {
  font-size: 0.6875rem;
  font-weight: var(--mfw-font-weight-body, 400);
  font-family: var(--w-font) !important;
  display: block;
}
.widget-1484b5 .badge-last-name {
  font-size: 0.8125rem;
  font-weight: var(--mfw-font-weight-body, 700);
  font-family: var(--w-font) !important;
  display: block;
  letter-spacing: 0.3px;
}
.widget-1484b5 .photo-grid-cell .photo-badge {
  position: absolute;
  overflow: visible;
}
.widget-1484b5 .photo-badge {
  background: var(--w-surface) !important;
  color: var(--w-text) !important;
  border: 1px solid var(--w-border) !important;
  box-shadow: var(--w-shadow) !important;
  cursor: default;
}
.widget-1484b5 .photo-badge.badge-has-profile {
  /* hardcoded — semantic "has profile" indicator; dark-green outline is intentional */
  border: 1.5px solid rgba(20, 83, 45, 0.55) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), 0 0 0 0.5px rgba(20, 83, 45, 0.2) !important;
}
.widget-1484b5 .photo-badge.badge-not-found {
  background: var(--w-chip-bg) !important;
  color: var(--w-text-muted) !important;
  border: 1px solid var(--w-border) !important;
  box-shadow: var(--w-shadow) !important;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-badge {
  cursor: grab;
  /* hardcoded — edit-mode "unplaced" badge; red tint is semantic, not theme-adaptive */
  background: rgba(252, 165, 165, 0.92) !important;
  color: #7f1d1d !important;
  border: 1.5px solid rgba(220, 38, 38, 0.6) !important;
  box-shadow: 0 2px 6px rgba(239, 68, 68, 0.3) !important;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-badge.badge-green {
  /* hardcoded — "explicitly placed" badge; green is semantic, not theme-adaptive */
  background: rgba(187, 247, 208, 0.92) !important;
  color: #14532d !important;
  border-color: rgba(22, 163, 74, 0.6) !important;
  box-shadow: 0 2px 6px rgba(34, 197, 94, 0.3) !important;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-badge.badge-red {
  /* hardcoded — "auto-assigned / displaced" badge; red is semantic, not theme-adaptive */
  background: rgba(252, 165, 165, 0.92) !important;
  color: #7f1d1d !important;
  border-color: rgba(220, 38, 38, 0.6) !important;
  box-shadow: 0 2px 6px rgba(239, 68, 68, 0.3) !important;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-badge:hover {
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.4) !important;
  cursor: grab;
  transform: scale(1.05);
}
.widget-1484b5 .house-photo-section.edit-mode .photo-badge.dragging {
  cursor: grabbing;
  opacity: 0.6;
  transform: scale(0.95);
}
.widget-1484b5 .unassigned-badges .photo-badge {
  position: relative;
  display: inline-flex;
  cursor: grab;
  background: var(--w-surface) !important;
  border: 1.5px solid var(--w-border) !important;
  color: var(--w-text) !important;
  box-shadow: var(--w-shadow) !important;
  max-width: 20%;
}
.widget-1484b5 .unassigned-badges .photo-badge:hover {
  background: var(--w-row-hover) !important;
  border-color: var(--w-text-muted) !important;
}
.widget-1484b5 .photo-blank-state {
  position: absolute;
  top: 12px;
  right: 66px; /* clear of the 44px edit button + 12px gap */
  z-index: 24;
  pointer-events: none;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-blank-state {
  display: none !important;
}
.widget-1484b5 .photo-blank-state.hidden {
  display: none !important;
}
.widget-1484b5 .photo-blank-hint {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  pointer-events: none;
}
.widget-1484b5 .photo-blank-hint-text {
  font-size: 0.75rem;
  font-weight: var(--mfw-font-weight-ui, 600);
  color: var(--w-text-muted) !important;
  font-family: var(--w-font-ui) !important;
  white-space: nowrap;
  background: var(--w-surface) !important;
  border: 1px solid var(--w-border) !important;
  border-radius: var(--w-radius-sm);
  padding: 4px 10px;
  box-shadow: var(--w-shadow) !important;
}
.widget-1484b5 .photo-blank-hint-arrow {
  color: var(--w-text-subtle) !important;
  flex-shrink: 0;
}
.widget-1484b5 .photo-blank-hint--mobile {
  display: none;
}
.widget-1484b5 .photo-edit-btn-corner {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 25;
  width: 44px;
  height: 44px;
  padding: 0;
  border-radius: 50%;
  /* hardcoded — semi-opaque white button overlaid on photo; must stay white-ish */
  background: rgba(255, 255, 255, 0.85) !important;
  color: var(--w-text) !important;
  border: none;
  cursor: pointer;
  transition: background var(--w-duration-fast) var(--w-easing) !important, box-shadow var(--w-duration-fast) var(--w-easing) !important;
  font-family: var(--w-font-ui) !important;
  display: none;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  box-shadow: var(--w-shadow) !important;
}
.widget-1484b5 .photo-edit-btn-corner.photo-edit-btn-corner--active {
  display: flex;
}
.widget-1484b5 .house-photo-section.edit-mode .photo-edit-btn-corner,
.widget-1484b5 .house-photo-section.edit-mode .photo-edit-btn-corner.photo-edit-btn-corner--active {
  display: none !important;
}
.widget-1484b5 .photo-edit-btn-corner:hover {
  /* hardcoded — fully opaque white on hover */
  background: rgb(255, 255, 255) !important;
  transform: scale(1.08);
}
.widget-1484b5 .photo-edit-btn-corner:active {
  transform: scale(0.98);
}
.widget-1484b5 .photo-edit-btn-corner svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}
.widget-1484b5 .photo-edit-positions-btn {
  position: absolute;
  bottom: 12px;
  right: 12px;
  z-index: 25;
  width: 36px;
  height: 36px;
  padding: 0;
  border-radius: 50%;
  /* hardcoded — semi-opaque white button on photo overlay */
  background: rgba(255, 255, 255, 0.75) !important;
  color: var(--w-text) !important;
  border: none;
  cursor: pointer;
  transition: background var(--w-duration-fast) var(--w-easing) !important, box-shadow var(--w-duration-fast) var(--w-easing) !important;
  font-family: var(--w-font-ui) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  box-shadow: var(--w-shadow) !important;
}
.widget-1484b5 .photo-edit-positions-btn:hover {
  /* hardcoded — fully opaque white on hover */
  background: rgb(255, 255, 255) !important;
  transform: scale(1.08);
}
.widget-1484b5 .photo-edit-positions-btn:active {
  transform: scale(0.98);
}
.widget-1484b5 .house-photo-section.edit-mode .photo-edit-positions-btn {
  display: none;
}
.widget-1484b5 .list-item {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  padding: 2.5px 0;
}
.widget-1484b5 .list-item-content {
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
  min-width: 0;
}
.widget-1484b5 .list-item-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
}
.widget-1484b5 .list-group-divider {
  width: 100%;
  margin: 8px 0 0;
}
.widget-1484b5 .list-group-divider-line {
  display: none;
}
.widget-1484b5 .list-group-label {
  font-size: 0.75rem;
  font-weight: var(--mfw-font-weight-ui, 600);
  font-family: var(--w-font-ui) !important;
  color: var(--w-text-muted) !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 6px 0;
  border-top: 1px solid var(--w-divider) !important;
  border-bottom: 1px solid var(--w-divider) !important;
  margin-bottom: 4px;
}
.widget-1484b5 .list-item-order {
  font-size: 0.875rem;
  font-weight: var(--mfw-font-weight-body, 500);
  color: var(--w-text-muted) !important;
  line-height: 1.4;
  flex-shrink: 0;
  text-align: left;
}
.widget-1484b5 .list-item-title {
  font-size: 0.875rem;
  font-weight: var(--mfw-font-weight-body, 400);
  font-family: var(--w-font) !important;
  color: var(--w-text) !important;
  line-height: 1.4;
}
.widget-1484b5 .list-two-column-layout {
  display: flex;
  flex-direction: row;
  gap: 32px;
  width: 100%;
}
.widget-1484b5 .list-left-column {
  flex: 0 0 25%;
  min-width: 0;
}
.widget-1484b5 .list-right-column {
  flex: 1;
  min-width: 0;
}
@media (max-width: 767px) {
  .widget-1484b5 {
    /* ── Mobile action bar ────────────────────────────────────────────── */
    /* Show the mobile action bar */
    /* Read-only mode: show the mobile edit button above the photo */
    /* Hide the desktop corner edit button on mobile */
    /* Edit mode: show the mobile action bar with upload + save + cancel */
    /* Hide desktop-only overlays and corner buttons on mobile edit mode */
    /* Save button inside config bar: hide on mobile (replaced by mobile action bar) */
    /* Config bar ordering */
    /* Hint: hide the desktop absolute overlay on mobile — the inline action-bar hint takes over */
    /* Show the inline hint inside the mobile action bar */
    /* Hide the inline hint when in edit mode or when photo is loaded */
  }
  .widget-1484b5 .list-two-column-layout {
    flex-direction: column;
  }
  .widget-1484b5 .list-left-column {
    flex: 1;
    width: 100%;
  }
  .widget-1484b5 .list-right-column {
    flex: 1;
    width: 100%;
  }
  .widget-1484b5 .list-item {
    flex-direction: column;
    gap: 12px;
  }
  .widget-1484b5 .photo-mobile-action-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    /* hidden by default; shown when section has a relevant mode class */
    display: none;
  }
  .widget-1484b5 .photo-mobile-action-left {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
  }
  .widget-1484b5 .photo-mobile-action-right {
    display: flex;
    align-items: center;
    flex-shrink: 0;
  }
  .widget-1484b5 .house-photo-section:not(.edit-mode) .photo-mobile-action-bar {
    display: flex;
  }
  .widget-1484b5 .house-photo-section:not(.edit-mode) .photo-edit-btn-mobile {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
    background: transparent !important;
    color: var(--w-text-muted) !important;
    border: none !important;
    border-radius: var(--w-radius-sm);
    cursor: pointer;
    box-shadow: none !important;
    transition: color var(--w-duration-fast) var(--w-easing) !important;
  }
  .widget-1484b5 .house-photo-section:not(.edit-mode) .photo-edit-btn-mobile:hover {
    color: var(--w-text) !important;
    background: transparent !important;
  }
  .widget-1484b5 .photo-edit-btn-corner {
    display: none !important;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-mobile-action-bar {
    display: flex;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-upload-btn-mobile {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 10px;
    font-size: 0.75rem;
    font-weight: var(--mfw-font-weight-ui, 600);
    font-family: var(--w-font-ui) !important;
    background: var(--w-btn-bg) !important;
    color: var(--w-btn-text) !important;
    border: 1px solid var(--w-btn-border) !important;
    border-radius: var(--w-radius);
    cursor: pointer;
    transition: background var(--w-duration-fast) var(--w-easing) !important;
    white-space: nowrap;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-upload-btn-mobile:hover {
    background: var(--mfw-accent, var(--w-brand-hover)) !important;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-save-btn-mobile {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 10px;
    font-size: 0.75rem;
    font-weight: var(--mfw-font-weight-ui, 600);
    font-family: var(--w-font-ui) !important;
    background: var(--w-btn-bg) !important;
    color: var(--w-btn-text) !important;
    border: 1px solid var(--w-btn-border) !important;
    border-radius: var(--w-radius);
    cursor: pointer;
    transition: background var(--w-duration-fast) var(--w-easing) !important;
    white-space: nowrap;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-save-btn-mobile:hover {
    background: var(--mfw-accent, var(--w-brand-hover)) !important;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-save-btn-mobile:disabled {
    /* hardcoded — disabled state */
    background: rgba(156, 163, 175, 0.8) !important;
    cursor: not-allowed;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-cancel-btn-mobile {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border-radius: 50%;
    background: var(--w-danger-bg) !important;
    color: var(--w-danger-text) !important;
    border: none;
    cursor: pointer;
    box-shadow: var(--w-shadow) !important;
    transition: background var(--w-duration-fast) var(--w-easing) !important;
    flex-shrink: 0;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-cancel-btn-mobile:hover {
    /* hardcoded — danger hover */
    background: #b91c1c !important;
    color: #ffffff !important;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-upload-overlay {
    display: none !important;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-cancel-btn-corner {
    display: none !important;
  }
  .widget-1484b5 .photo-save-btn {
    display: none !important;
  }
  .widget-1484b5 .house-photo-section {
    display: flex;
    flex-direction: column;
  }
  .widget-1484b5 .photo-mobile-action-bar {
    order: -3;
  }
  .widget-1484b5 .photo-blank-state {
    display: none !important;
  }
  .widget-1484b5 .photo-blank-hint--mobile {
    display: flex;
    align-items: center;
    gap: 4px;
    pointer-events: none;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-blank-hint--mobile,
  .widget-1484b5 .photo-blank-hint--mobile.hidden {
    display: none !important;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-config-bar {
    order: -1;
    width: calc(100% - 10px);
    margin: 0 auto;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 8px;
  }
  .widget-1484b5 .house-photo-section.edit-mode .house-photo-container {
    order: 0;
  }
  .widget-1484b5 .house-photo-section.edit-mode .unassigned-badges {
    order: 1;
  }
}
@media (max-width: 767px) and (orientation: portrait) {
  .widget-1484b5 {
    /* Config bar: compact on portrait — smaller text, tighter padding, max-width */
  }
  .widget-1484b5 .badge-first-name {
    font-size: 0.4125rem; /* 0.6875rem × 0.6 */
  }
  .widget-1484b5 .badge-last-name {
    font-size: 0.4875rem; /* 0.8125rem × 0.6 */
  }
  .widget-1484b5 .photo-badge {
    padding: 2px 8px;
    min-height: 0;
    gap: 0;
  }
  .widget-1484b5 .badge-first-name,
  .widget-1484b5 .badge-last-name {
    line-height: 1.1;
  }
  .widget-1484b5 .house-photo-section.edit-mode .photo-config-bar {
    width: calc(100% - 10px);
    max-width: calc(100% - 10px);
    padding: 6px 8px;
    gap: 6px;
  }
  .widget-1484b5 .photo-config-label {
    font-size: 0.6875rem;
    padding: 0 6px;
    height: 28px;
  }
  .widget-1484b5 .photo-row-minus,
  .widget-1484b5 .photo-row-plus,
  .widget-1484b5 .photo-col-minus,
  .widget-1484b5 .photo-col-plus {
    width: 26px;
    height: 28px;
    font-size: 0.875rem;
  }
  .widget-1484b5 .photo-row-value,
  .widget-1484b5 .photo-col-value {
    min-width: 24px;
    font-size: 0.75rem;
    padding: 0 5px;
  }
  .widget-1484b5 .photo-save-btn {
    font-size: 0.75rem;
    padding: 4px 10px;
    min-width: auto;
  }
}
