#elementMaterialChoices{display:block!important;background:#25292c;border:1px solid #424649;border-radius:12px;padding:18px;margin:14px 0;color:#eee}#elementMaterialChoices h2{font-size:20px;margin:0 0 8px}#elementMaterialChoices p{font-size:14px;color:#bfc3c5}.element-material-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.element-material-grid button{display:flex;align-items:center;gap:12px;text-align:left;min-width:0;border:1px solid #565b5f;background:#303438;border-radius:9px;padding:12px;color:#fff}.element-material-grid img{width:62px;height:62px;object-fit:cover;border-radius:5px}.element-material-grid strong{display:block;margin-top:5px;overflow-wrap:anywhere}.element-decor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.element-decor-grid button{min-width:0}.element-decor-grid img{width:100%;height:100px;object-fit:cover}.element-decor-grid strong{display:block;font-size:13px;overflow-wrap:anywhere}.element-decor-confirm{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;background:#25292c;border-top:1px solid #555}#applyElementDecor{background:#e90020;color:#fff;min-height:44px;padding:10px 15px;border-radius:7px}.front-decor-card[aria-pressed=true]{outline:2px solid #ef0027}#elementDecorDialog{width:min(900px,94vw);box-sizing:border-box}#deniAssetStatus{font-size:14px;color:#ddd}#elementDecorDialog .front-decor-filters{display:flex;gap:14px;flex-wrap:wrap}#elementDecorDialog input,#elementDecorDialog select{max-width:100%;min-height:42px}@media(max-width:760px){.element-material-grid{grid-template-columns:1fr}.element-decor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.element-decor-confirm{flex-direction:column;align-items:stretch}#elementDecorDialog .front-decor-filters{flex-direction:column}}

/* Compact, equal-sized real material swatches inside either element editor. */
#studioInspector #elementMaterialChoices .element-material-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
#studioInspector #elementMaterialChoices .element-material-grid>button{min-height:72px;min-width:0;gap:9px;padding:9px;box-sizing:border-box}
#studioInspector #elementMaterialChoices .element-material-grid button>img:not([hidden]){display:block!important;width:48px!important;height:48px!important;min-width:48px!important;max-width:48px!important;max-height:48px!important;flex:0 0 48px;object-fit:cover;aspect-ratio:1;border-radius:5px}
#studioInspector #elementMaterialChoices .element-material-grid button>img[hidden]{display:none!important}
#studioInspector #elementMaterialChoices .element-material-grid button>span{display:block;min-width:0;font-size:13px}
#studioInspector #elementMaterialChoices .element-material-grid strong{font-size:12px;line-height:1.3;word-break:break-word}
#elementMaterialChoices .inspector-model-preview{width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin:14px 0 0}
#elementMaterialChoices .inspector-model-preview canvas{max-width:100%}
#studioInspector #automaticTotal[aria-hidden=true],#studioInspector #quickElementCost[aria-hidden=true]{display:none!important}
@media(max-width:760px){#studioInspector #elementMaterialChoices{padding:12px}#studioInspector #elementMaterialChoices .element-material-grid{gap:8px}#studioInspector #elementMaterialChoices .element-material-grid>button{flex-direction:column;align-items:flex-start;min-height:102px}}

/* Three compact columns and a persistent action next to search. */
#elementDecorDialog #elementDecorGrid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px;width:100%;align-items:start}
#elementDecorDialog #elementDecorGrid>.front-decor-card{display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:none;min-width:0;box-sizing:border-box;padding:8px;margin:0}
#elementDecorDialog #elementDecorGrid .front-decor-card>img{display:block;width:100%!important;max-width:100%!important;height:105px!important;object-fit:cover;aspect-ratio:auto}
#elementDecorDialog #elementDecorGrid strong{font-size:12px;line-height:1.3;padding-top:5px}
#elementDecorDialog .element-decor-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) auto;align-items:end;gap:12px;position:sticky;top:0;z-index:4;background:#25292c;padding:12px 0;border-bottom:1px solid #555}
#elementDecorDialog .element-decor-toolbar label{display:grid;gap:5px;min-width:0;margin:0}
#elementDecorDialog .element-decor-toolbar input,#elementDecorDialog .element-decor-toolbar select{width:100%;box-sizing:border-box}
#elementDecorDialog #applyElementDecor{align-self:end;min-height:44px;max-width:190px;white-space:normal;font-size:14px}
#elementDecorDialog .element-decor-confirm{position:static;padding:10px 0;border:0}
@media(max-width:760px){#elementDecorDialog .element-decor-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px}#elementDecorDialog .element-decor-toolbar label:first-child{grid-column:1/-1}#elementDecorDialog #applyElementDecor{width:100%;max-width:none;font-size:12px;padding:8px;min-height:44px}#elementDecorDialog #elementDecorGrid{gap:7px}#elementDecorDialog #elementDecorGrid .front-decor-card>img{height:76px!important}#elementDecorDialog #elementDecorGrid>.front-decor-card{padding:5px}#elementDecorDialog #elementDecorGrid strong{font-size:10px}}

#elementDecorDialog .element-decor-toolbar{top:var(--element-decor-header-height,64px)}
@media(max-width:760px){#elementDecorDialog #elementDecorGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#elementDecorDialog #elementDecorGrid .front-decor-card>img{height:92px!important}#elementDecorDialog #elementDecorGrid strong{font-size:12px}}

/* Remove both library count rows without leaving an empty line. */
.studio-catalog .catalog-heading>small,#studioMatches{display:none!important;margin:0!important;padding:0!important}

/* The icon is centered independently of heading fonts and line-height. */
body.deni-studio button.deni-help-trigger{align-items:center!important;justify-content:center!important;padding:0!important;text-indent:0;line-height:1}
body.deni-studio button.deni-help-trigger>span{display:grid!important;place-items:center!important;box-sizing:border-box;width:23px!important;height:23px!important;min-width:23px!important;min-height:23px!important;max-width:23px!important;max-height:23px!important;padding:0!important;margin:0!important;flex:0 0 23px;line-height:0!important;text-indent:0}
body.deni-studio button.deni-help-trigger>span>svg{display:block;position:static;width:16px;height:16px;max-width:none;max-height:none;margin:0;padding:0;transform:none;overflow:visible}

/* Wardrobe equipment actions sit directly below the element editor title. */
#quickElementControls>#interiorQuickActions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 14px}
#quickElementControls>#interiorQuickActions button{min-width:0;min-height:44px;white-space:normal;padding:9px 6px;font-size:12px;line-height:1.25}
#interiorEditor>p[hidden]{display:none!important;margin:0!important;padding:0!important}
@media(max-width:760px){#quickElementControls>#interiorQuickActions{gap:6px}#quickElementControls>#interiorQuickActions button{font-size:11px}}

/* The customer editor keeps configuration controls, without source geometry diagnostics. */
#sourceParts { display: none !important; }

#handlesDialog{max-width:960px;width:calc(100% - 24px)}
#handlesDialog .handles-toolbar{position:sticky;top:var(--handles-header-height,64px);z-index:2;background:#26292c;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
#handlesDialog .handles-toolbar label{margin:0;min-width:0;display:grid;gap:5px}
#handlesDialog .handles-toolbar input,#handlesDialog .handles-toolbar select{width:100%;margin:0;min-width:0}
#handlesDialog #applyHandles{margin:0;align-self:stretch;background:#ed0020}
#handleGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}
#handleGrid .handle-choice{min-width:0;margin:0;padding:9px;display:flex;flex-direction:column;align-items:stretch;gap:7px;background:#303337;border:2px solid transparent;overflow:hidden;overflow-wrap:anywhere;text-align:left}
#handleGrid .handle-choice[aria-pressed=true]{border-color:#ed0020}
#handleGrid img{width:100%;height:110px;object-fit:contain;border-radius:5px;background:#e8e7e2}
#handleGrid small{color:#c4c6c8}
#handleFeedback{padding:0 12px}
#openHandles{white-space:nowrap}
@media(max-width:700px){#handleGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px}#handleGrid img{height:85px}#handlesDialog .handles-toolbar{padding:8px;gap:8px}#handlesDialog .handles-toolbar label{font-size:13px}}

#interiorDrawerSettings[hidden],#interiorShelfSettings[hidden],#handleScopeField[hidden]{display:none!important}
#interiorQuickActions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
#interiorDrawerSettings,#interiorShelfSettings{scroll-margin-top:20px}
#handlesDialog .handles-toolbar select{max-width:100%;text-overflow:ellipsis}

/* Fixed handle picker; only its contents scroll. */
#handlesDialog{position:fixed!important;top:var(--deni-popup-top,12px)!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translateX(-50%)!important;margin:0!important;padding:0!important;box-sizing:border-box;height:min(820px,var(--deni-popup-height,calc(100dvh - 24px)))!important;max-height:var(--deni-popup-height,calc(100dvh - 24px));overflow:hidden!important;overscroll-behavior:none}
#handlesDialog[open]{display:flex!important;flex-direction:column}
#handlesDialog>.front-decor-header{position:static!important;flex:0 0 auto;padding:12px;margin:0;box-sizing:border-box}
#handlesDialog .handles-toolbar{position:static!important;top:auto!important;flex:0 1 auto;max-height:48%;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box}
#handlesDialog .handle-edge-note{grid-column:1/-1;margin:0;font-size:12px;color:#d0d2d4}
#handlesDialog #handleFeedback{flex:0 0 auto;margin:4px 0;font-size:13px}
#handlesDialog #handleGrid{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;align-content:start;-webkit-overflow-scrolling:touch}
#projectHandleLegControls{display:inline-flex;align-items:center;flex-wrap:nowrap;gap:8px;max-width:100%;vertical-align:middle}
#projectHandleLegControls>button{min-width:0;margin:0;white-space:nowrap;min-height:44px}
@media(max-width:700px){#handlesDialog .handles-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#handlesDialog #handleOrientation{font-size:12px}#projectHandleLegControls{gap:6px}}

body.deni-studio #projectHandleLegControls{order:3;margin-left:auto;grid-column:1/-1;justify-self:end}
body.deni-studio #projectHandleLegControls>button{font-family:var(--leg-control-font-family,inherit)!important;font-size:12px!important;font-weight:var(--leg-control-font-weight,500)!important;line-height:1.35!important;letter-spacing:normal!important;min-height:34px!important;box-sizing:border-box;padding:6px 12px!important;border:1px solid var(--leg-control-border-color,#555c61)!important;border-radius:var(--leg-control-border-radius,7px)!important;background:var(--leg-control-background,#303438)!important;color:var(--leg-control-color,#fff)!important;text-align:center}
@media(max-width:760px){body.deni-studio #projectHandleLegControls>button{min-height:40px!important}}

#handlesDialog{font-family:inherit!important;color:#f4f4f4;background:#252729;border:1px solid #505358;border-radius:14px}
#handlesDialog button,#handlesDialog input,#handlesDialog select{font-family:inherit!important}
#handlesDialog #handleGrid .handle-choice{font-size:12px;line-height:1.3;border-radius:7px}
#handlesDialog #handleGrid .handle-choice>span{font-weight:600}
#handlesDialog #handleGrid .handle-choice>small{font-size:11px;line-height:1.3}

#wpPricingStatus[hidden]{display:none!important}
#handlesDialog input,#handlesDialog select{font-size:13px}

/* Reserve space for controls and let card rows overflow the list, never collapse. */
#handlesDialog .handles-toolbar{flex:0 0 auto!important}
#handlesDialog #handleGrid{flex:1 1 0%!important;grid-auto-rows:max-content;align-items:start;align-content:start}
#handlesDialog #handleGrid>.handle-choice{box-sizing:border-box;min-height:178px;height:auto;overflow:visible;flex-shrink:0}
#handlesDialog #handleGrid>.handle-choice>img{flex:0 0 110px;min-height:110px;height:110px;max-height:110px;object-fit:contain}
#handlesDialog #handleGrid>.handle-choice>span,#handlesDialog #handleGrid>.handle-choice>small{flex-shrink:0;white-space:normal;overflow-wrap:anywhere}
#handlesDialog .handles-toolbar input,#handlesDialog .handles-toolbar select{box-sizing:border-box;min-height:38px}
@media(max-width:700px){#handlesDialog #handleGrid>.handle-choice{min-height:153px}#handlesDialog #handleGrid>.handle-choice>img{flex-basis:85px;min-height:85px;height:85px;max-height:85px}}

#roomObjectsDialog{width:min(850px,calc(100vw - 24px));background:#252729;color:#f4f4f4;border:1px solid #505358;border-radius:12px;padding:0}#roomObjectsDialog .blum-header{padding:14px}#roomObjectsDialog .room-object-fields{padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}#roomObjectsDialog label{display:grid;gap:5px;font-size:13px}#roomObjectsDialog input,#roomObjectsDialog select{width:100%;min-width:0;box-sizing:border-box;margin:0;min-height:40px}#roomObjectsDialog .wide{grid-column:1/-1}#roomObjectPreview{width:100%;height:130px;object-fit:contain;grid-column:1/-1;background:#e8eaeb;border-radius:8px}#roomObjectList .room-object-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;border-top:1px solid #555;padding:10px 0}#roomObjectList .room-object-row>span{flex:1 0 65%;font-size:12px}#openRoomObjects{order:2;font-family:inherit;font-size:12px;margin:0;min-height:34px}#restoreOriginalHandles{min-height:40px;margin:0} @media(max-width:600px){#openRoomObjects{grid-column:1/-1;min-height:40px}#roomObjectsDialog .room-object-fields{grid-template-columns:1fr}#roomObjectsDialog .wide{grid-column:1}}

/* Guided room preparation, shared on desktop and mobile. */
#roomSetupDialog{width:min(680px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:0;border:1px solid #444b51;border-radius:12px;background:#25292c;color:#eee;font-family:inherit;font-size:14px;box-sizing:border-box;overflow:auto}
#roomSetupDialog::backdrop{background:rgba(0,0,0,.68)}
#roomSetupDialog form{margin:0;width:100%;box-sizing:border-box}
#roomSetupDialog .blum-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #454b50;gap:12px}
#roomSetupDialog h2{font-family:inherit;font-size:19px;margin:0}
#roomSetupDialog button,#roomSetupDialog input,#roomSetupDialog select{font-family:inherit;font-size:14px;min-height:42px;box-sizing:border-box}
#roomSetupDialog button{padding:10px 16px;cursor:pointer;border:1px solid #596168;border-radius:5px;background:#393f44;color:#fff}
#roomSetupDialog #roomSetupNext{background:#e00024;border-color:#e00024;font-weight:600}
#roomSetupDialog button:disabled{opacity:.45;cursor:default}
.room-setup-body{padding:16px 20px;display:grid;gap:12px;overflow:auto}
#roomSetupFields{display:grid;gap:16px}
#roomSetupFields label{display:grid;gap:7px;font-weight:500}
#roomSetupFields input,#roomSetupFields select{width:100%;max-width:100%;border:1px solid #596168;border-radius:5px;padding:9px;background:#343a3f;color:#fff}
#roomSetupFields fieldset{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:1px solid #525a61;border-radius:7px;min-width:0;padding:14px}
#roomSetupFields legend{padding:0 7px;font-weight:600}
#roomSetupFields p,#roomSetupProgress{margin:0;color:#c2c8cd;line-height:1.5}
#roomSetupStatus{margin:0;min-height:1.5em;color:#ffabb5}
.room-setup-actions{display:flex;justify-content:space-between;gap:12px}
@media(max-width:600px){#roomSetupDialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}#roomSetupFields fieldset{grid-template-columns:1fr}.room-setup-body{padding:14px}.room-setup-actions button{flex:1;padding:10px 8px!important}#roomSetupDialog .blum-header{padding:14px}}
