/* The interactive studio stays live before, during and after every gesture. */
html body.nexgen-v5 #app #ng3dStage {background:radial-gradient(ellipse at 0% 62%,#401024 0%,#160c13 32%,#06080b 70%)!important;isolation:isolate;}
html body.nexgen-v5 #app #ng3dStage .ng3d-studio-image {display:none!important;}
html body.nexgen-v5 #app #ng3dStage .ng3d-webgl-host {visibility:visible!important;opacity:1!important;inset:0!important;z-index:2!important;transform:none!important;}
html body.nexgen-v5 #app #ng3dStage .ng3d-webgl-canvas {filter:none!important;opacity:1!important;}
html body.nexgen-v5 #app #ng3dStage.webgl-ready .ng3d-floor,
html body.nexgen-v5 #app #ng3dStage.webgl-ready .ng3d-stage-glow,
html body.nexgen-v5 #app #ng3dStage.webgl-ready .ng3d-scene {display:none!important;}
html body.nexgen-v5 #app #ng3dStage:before,html body.nexgen-v5 #app #ng3dStage:after {display:none!important;}
html body.nexgen-v5 #app .ng3d-stage-measures {opacity:.65!important;}
html body.nexgen-v5 #app .ng3d-reference-segment>button .ng3d-check {display:none!important;}

html body.nexgen-v5 #app .ng3d-opening-finish {display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:space-between;margin:12px 14px 6px;color:#c5cdd3;font-size:12px;}
html body.nexgen-v5 #app .ng3d-opening-finish select {width:132px;border:1px solid #45515c;border-radius:7px;background:#0b1015;color:#fff;padding:7px 9px;min-height:34px;}
html body.nexgen-v5 #app .ng3d-opening-finish label {width:100%;display:flex;align-items:center;gap:8px;margin-top:4px;}
html body.nexgen-v5 #app .ng3d-install-note {display:block;margin:6px 14px;color:#8e9da9;font-size:10px;line-height:1.5;}
html body.nexgen-v5 #app .ng3d-focus-chip {display:none!important;}

html body.nexgen-v5 #app .ng3d-interior-tools{margin-top:20px;border:1px solid #303a44;border-radius:10px;color:#e2e8ed;background:#0c1015}
html body.nexgen-v5 #app .ng3d-interior-tools summary{padding:14px;cursor:pointer;font-size:14px;font-weight:700}
html body.nexgen-v5 #app .ng3d-interior-tools summary small{display:block;color:#8f9daa;font-size:10px;line-height:1.6;font-weight:400;margin-top:5px}
html body.nexgen-v5 #app .ng3d-interior-body{padding:0 14px 14px}
html body.nexgen-v5 #app .ng3d-interior-body p{font-size:12px;line-height:1.5;color:#b0beca}
html body.nexgen-v5 #app .ng3d-interior-views,html body.nexgen-v5 #app .ng3d-interior-add{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
html body.nexgen-v5 #app .ng3d-interior-body button,html body.nexgen-v5 #app .ng3d-floorplan button{border:1px solid #46535f;border-radius:7px;padding:8px 10px;background:#111821;color:#fff;cursor:pointer;font-size:12px}
html body.nexgen-v5 #app .ng3d-interior-body button[aria-pressed="true"]{border-color:#ff1888;color:#ff1888}
html body.nexgen-v5 #app .ng3d-interior-card{border-top:1px solid #303a44;padding:14px 0}
html body.nexgen-v5 #app .ng3d-interior-card header{display:flex;justify-content:space-between;align-items:center}
html body.nexgen-v5 #app .ng3d-interior-card>small{color:#ff58a5;font-size:11px}
html body.nexgen-v5 #app .ng3d-interior-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}
html body.nexgen-v5 #app .ng3d-interior-card label{display:block;font-size:10px;color:#adbdcb}
html body.nexgen-v5 #app .ng3d-interior-card input{display:block;width:100%;min-width:0;box-sizing:border-box;background:#080d13;border:1px solid #384553;border-radius:5px;padding:8px;color:#fff;margin-top:4px}
html body.nexgen-v5 #app .ng3d-floorplan{display:none;position:absolute;inset:0;z-index:8;background:radial-gradient(ellipse at 0% 100%,#351325,#0a1017 65%);padding:24px;color:#fff}
html body.nexgen-v5 #app #ng3dStage.ng3d-plan-mode .ng3d-floorplan{display:flex;flex-direction:column}
html body.nexgen-v5 #app #ng3dStage.ng3d-plan-mode .ng3d-webgl-host,html body.nexgen-v5 #app #ng3dStage.ng3d-plan-mode .ng3d-stage-measures{visibility:hidden!important}
html body.nexgen-v5 #app .ng3d-floorplan header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
html body.nexgen-v5 #app .ng3d-floorplan small{font-size:11px;color:#ff1888;letter-spacing:1.4px}
html body.nexgen-v5 #app .ng3d-floorplan h3{margin:7px 0}
html body.nexgen-v5 #app .ng3d-floorplan p,html body.nexgen-v5 #app .ng3d-floorplan .ng3d-plan-note{font-size:12px;color:#9cadbc;line-height:1.5}
html body.nexgen-v5 #app .ng3d-floorplan svg{flex:1;width:100%;min-height:0;touch-action:none}
html body.nexgen-v5 #app .ng3d-floorplan [data-plan-item]{cursor:grab}
@media(max-width:600px){html body.nexgen-v5 #app .ng3d-floorplan{padding:12px}html body.nexgen-v5 #app .ng3d-floorplan header{font-size:12px}html body.nexgen-v5 #app .ng3d-floorplan p,html body.nexgen-v5 #app .ng3d-floorplan .ng3d-plan-note{font-size:10px}}

html body.nexgen-v5 #app .ng3d-floorplan h3{color:#fff!important;background:none!important;font-size:18px!important}
html body.nexgen-v5 #app .ng3d-floorplan .ng3d-plan-note{padding-top:10px;flex-shrink:0}

/* Catalogue thumbnails belong to the hoisted modal as well as the designer. */
html body.nexgen-v5 #ng3dOptionModal .ng3d-catalog-product{background:#080b0f!important;}
html body.nexgen-v5 #ng3dOptionModal .ng3d-catalog-product.has-webgl-render>.ng3d-schematic-webgl-render{position:absolute!important;inset:0!important;left:0!important;top:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;transform:none!important;opacity:1!important;filter:none!important;display:block!important;}
html body.nexgen-v5 #ng3dOptionModal .ng3d-catalog-product.has-webgl-render>svg{visibility:hidden!important;}
html body.nexgen-v5 #app #ng3dSummary strong,html body.nexgen-v5 #app #ng3dSummary b{color:#f4f6f8!important;}
html body.nexgen-v5 #app .ng3d-interior-card label{color:#adbdcb!important;}
@media(min-width:1100px) and (max-width:1440px){html body.nexgen-v5 #app .ng3d-viewer-spec{grid-template-columns:minmax(0,1fr)!important;column-gap:0!important;}html body.nexgen-v5 #app .ng3d-viewer-spec .ng3d-line-icon{display:none!important;}html body.nexgen-v5 #app .ng3d-viewer-spec>span,html body.nexgen-v5 #app .ng3d-viewer-spec>b,html body.nexgen-v5 #app .ng3d-viewer-spec>small{grid-column:1!important;}html body.nexgen-v5 #app .ng3d-viewer-spec b{font-size:16px!important;}}

@media(max-width:600px){html body.nexgen-v5 #app .ng3d-dimension-height{right:26px!important;}html body.nexgen-v5 #app .ng3d-dimension-height span,html body.nexgen-v5 #app .ng3d-dimension-height small{left:auto!important;right:7px!important;}}

@media(max-width:800px){
 html body.nexgen-v5 #app #ng3dOptionModal .ng3d-option-dialog{width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;grid-template-rows:auto auto auto!important;}
 html body.nexgen-v5 #app #ng3dOptionModal .ng3d-option-body{min-height:0!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:12px!important;}
 html body.nexgen-v5 #app #ng3dOptionModal .ng3d-option-footer{position:static!important;height:auto!important;min-height:54px!important;}
}

html body.nexgen-v5 #app .ng3d-option-schematic.has-webgl-render{background:#080b0f!important;}
html body.nexgen-v5 #app .ng3d-option-schematic.has-webgl-render>.ng3d-schematic-webgl-render{display:block!important;position:absolute!important;inset:0!important;left:0!important;top:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;transform:none!important;filter:none!important;opacity:1!important;}
html body.nexgen-v5 #app .ng3d-option-schematic.has-webgl-render>svg{visibility:hidden!important;}
html body.nexgen-v5 #app .ng3d-added-opening-main>span>b{color:#f5f6f8!important;font-size:14px!important;}
html body.nexgen-v5 #app .ng3d-added-opening-main>span>small,html body.nexgen-v5 #app .ng3d-inline-position b{color:#bdc9d4!important;}
html body.nexgen-v5 #app .ng3d-added-opening-main>span>em{color:#ff1888!important;}
html body.nexgen-v5 #app .ng3d-opening-finish label{color:#d1dbe3!important;}

html body.nexgen-v5 #ng3dOptionModal .ng3d-category-live,html body.nexgen-v5 #app #ng3dOptionModal .ng3d-category-live{background-image:none!important;background-color:#080b0f!important;}
html body.nexgen-v5 #ng3dOptionModal .ng3d-category-live img,html body.nexgen-v5 #app #ng3dOptionModal .ng3d-category-live img{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;transform:none!important;opacity:1!important;}
html body.nexgen-v5 #app .ng3d-placement-product-card strong{color:#ff1888!important;}

html body.nexgen-v5 #ng3dOptionModal [data-addon-category] .ng3d-category-schematic.ng3d-category-live{background-image:none!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-category-live img{visibility:visible!important;z-index:1}
#ng3dOptionModal .ng3d-other-openings{display:flex!important;align-items:center;gap:20px;width:100%;padding:18px 22px;margin-top:18px;border:1px solid #34414a;border-radius:12px;background:#0d1419;color:#fff;text-align:left}
#ng3dOptionModal .ng3d-other-openings span{flex:1;color:#a9bfcc;font-size:14px}
#ng3dOptionModal .ng3d-other-openings i{font-size:26px;color:#ff168f}
@media(max-width:800px){#ng3dOptionModal .ng3d-other-openings{flex-wrap:wrap;gap:8px}#ng3dOptionModal .ng3d-other-openings span{flex-basis:80%}}

#ng3dStage,#ng3dStage *{user-select:none;-webkit-user-select:none}
.ng3d-other-openings b{color:#fff!important}
.ng3d-model-opening .ng3d-catalog-product,.ng3d-review-opening .ng3d-catalog-product{width:100%;height:100%}

html body.nexgen-v5 #ng3dOptionModal [data-addon-category] .ng3d-category-schematic{position:relative!important;overflow:hidden!important}
html body.nexgen-v5 #ng3dOptionModal [data-addon-category] .ng3d-category-schematic img{pointer-events:none!important}

@media(max-width:800px){
html body.nexgen-v5 #app #ng3dOptionModal .ng3d-option-copy{min-width:0!important}
html body.nexgen-v5 #app #ng3dOptionModal .ng3d-catalog-meta{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:6px!important}
html body.nexgen-v5 #app #ng3dOptionModal .ng3d-catalog-meta strong{font-size:12px!important;white-space:normal!important;overflow-wrap:anywhere}
html body.nexgen-v5 #app #ng3dOptionModal .ng3d-catalog-meta em{font-size:11px!important;color:#b7c5ce!important;max-width:100%!important}
html body.nexgen-v5 #app #ng3dOptionModal .ng3d-option-dialog-head>div{min-width:0!important;max-width:100%!important}
html body.nexgen-v5 #app #ng3dOptionModal .ng3d-option-dialog-head p{white-space:normal!important;max-width:100%!important;font-size:12px!important;overflow-wrap:anywhere}
}

@media(min-width:801px){html body.nexgen-v5 #ng3dOptionModal .has-many-options .ng3d-catalog-product{height:155px!important;min-height:155px!important}html body.nexgen-v5 #ng3dOptionModal .has-many-options .ng3d-option-copy{padding:14px 16px!important}}

@media(min-width:801px){html body.nexgen-v5 #ng3dOptionModal .has-many-options .ng3d-option-part{grid-template-rows:155px auto!important;min-height:0!important}html body.nexgen-v5 #ng3dOptionModal .has-many-options .ng3d-option-copy{min-height:120px!important}}

/* Measured desktop reference spacing and controls. */
@media(min-width:1100px){
html body.nexgen-v5 #app .ng3d-reference>.ng3d-reference-topbar{padding:0 36px!important}
html body.nexgen-v5 #app .ng3d-brand-logo{height:54px!important;max-height:54px!important}
html body.nexgen-v5 #app .ng3d-wizard-title>small{display:block!important;line-height:16px!important}
html body.nexgen-v5 #app .ng3d-wizard-title{padding-bottom:8px!important}
html body.nexgen-v5 #app .ng3d-wizard-title h1{padding:0!important;margin:6px 0!important}
html body.nexgen-v5 #app .ng3d-wizard-title+.ng3d-config-section{padding-top:10px!important}
html body.nexgen-v5 #app .ng3d-camera-presets button{width:55px!important;min-width:55px!important;height:35px!important;padding:0!important}
html body.nexgen-v5 #app #ng3dResetView{width:86px!important;height:35px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:8px!important;font-size:12px!important}
html body.nexgen-v5 #app #ng3dResetView .ng3d-line-icon{width:18px!important;height:18px!important;margin-right:8px!important}
html body.nexgen-v5 #app .ng3d-stage-colour>b,html body.nexgen-v5 #app .ng3d-stage-colour>em{padding:4px 8px!important;border:1px solid #30383f!important;border-radius:7px!important;font-size:11px!important}
html body.nexgen-v5 #app .ng3d-dimension-height span{width:56px!important;white-space:nowrap!important}
html body.nexgen-v5 #app .ng3d-stage-measures{opacity:.85!important}
}
@media print{
.ng3d-print-preview{margin:10px 0 18px;break-inside:avoid}
.ng3d-print-preview img{display:block;width:100%;max-height:300px;object-fit:contain;background:#090b0e;border-radius:8px}
.ng3d-print-preview figcaption{font-size:10px;color:#59616a;text-align:center;margin-top:5px}
.ng3d-print-quote-required{font-size:11px;color:#b01560!important;font-weight:700}
}

@media(min-width:1100px){
html body.nexgen-v5 #app .ng3d-wizard-title+.ng3d-config-section{padding-top:2px!important}
html body.nexgen-v5 #app .ng3d-config-section:has(#ng3dCondition){padding-top:10px!important}
html body.nexgen-v5 #app .ng3d-dimension-cards>div:first-child{position:relative!important}
html body.nexgen-v5 #app .ng3d-dimension-cards>div:first-child:after{content:'✓';display:grid;place-items:center;position:absolute;top:7px;right:7px;width:18px;height:18px;border-radius:50%;background:#ff1888;color:white;font-size:12px}
html body.nexgen-v5 #app .ng3d-viewer-footer{grid-template-rows:minmax(0,1fr)!important}
html body.nexgen-v5 #app .ng3d-viewer-price{padding:0!important;min-height:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;height:60px!important}
html body.nexgen-v5 #app .ng3d-viewer-price>span{font-size:10px!important;line-height:12px!important}
html body.nexgen-v5 #app .ng3d-viewer-price>strong{font-size:30px!important;line-height:34px!important}
html body.nexgen-v5 #app .ng3d-viewer-price>small{font-size:10px!important;line-height:14px!important}
}
@media(min-width:1500px){
html body.nexgen-v5 #app .ng3d-viewer-footer{grid-template-columns:19.15% 20.21% 25.71% minmax(0,1fr)!important;column-gap:30px!important}
html body.nexgen-v5 #app .ng3d-viewer-spec:nth-child(3){padding-left:13px!important}
}

.ng3d-all-frame-finish[hidden]{display:none!important}
.ng3d-all-frame-finish{padding:14px;border:1px solid #323c45;border-radius:10px;background:#0d1318;color:#edf3f6}
.ng3d-all-frame-finish label{display:block;font-size:12px;font-weight:700;margin-bottom:9px}
.ng3d-all-frame-finish>div{display:flex;gap:8px}
.ng3d-all-frame-finish select,.ng3d-all-frame-finish button{min-height:36px;border:1px solid #465360;border-radius:7px;background:#111a22;color:white;font:inherit;font-size:12px;padding:8px 10px}
.ng3d-all-frame-finish select{flex:1;min-width:0}
.ng3d-all-frame-finish button{border-color:#d81476;color:#ff4aa2}
.ng3d-all-frame-finish small{display:block;margin-top:8px;color:#9aabb8;font-size:10px;line-height:1.5}
@media(min-width:1100px){html body.nexgen-v5 #app .ng3d-viewer-price>b{font-size:30px!important;line-height:34px!important}}

html body.nexgen-v5 #app .ng3d-stage-colour>b{display:inline-flex!important;align-items:center!important;gap:6px!important}
html body.nexgen-v5 #app #ng3dStageColourSwatch{width:19px!important;height:13px!important;border:1px solid #687078!important;border-radius:3px!important;margin:0!important}

html body.nexgen-v5 #app #ng3dResumeDraft{font-size:13px!important;min-height:34px!important;padding:7px 15px!important}
html body.nexgen-v5 #app #ng3dDraftStrip.has-resume>div>i{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;background:#10161b!important;border:1px solid #3b454d!important;border-radius:7px!important;box-shadow:none!important;flex:none!important}
html body.nexgen-v5 #app #ng3dDraftStrip.has-resume>div>i:before{content:'';width:20px;height:24px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28' fill='none' stroke='%23edf2f4' stroke-width='1.4'%3E%3Cpath d='M4 2h10l6 6v18H4zM14 2v6h6M7 12h10M7 16h10M7 20h10'/%3E%3C/svg%3E")}
html body.nexgen-v5 #app #ng3dDraftStripTitle{font-size:12px!important}
html body.nexgen-v5 #app #ng3dDraftStripDetail{font-size:11px!important}

/* Keep raster thumbnails in their own paint layer on narrow catalogue rows. */
@media(max-width:800px){html body.nexgen-v5 #app #ng3dOptionModal .ng3d-catalog-product.has-webgl-render>.ng3d-schematic-webgl-render{position:relative!important;inset:auto!important;left:auto!important;top:auto!important;transform:translateZ(0)!important;isolation:isolate!important;}html body.nexgen-v5 #app #ng3dOptionModal .ng3d-catalog-product.has-webgl-render>svg{display:none!important;}}

@media(max-width:800px){html body.nexgen-v5 #app #ng3dOptionModal .ng3d-catalog-product.has-webgl-render{background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;}html body.nexgen-v5 #app #ng3dOptionModal .ng3d-catalog-product.has-webgl-render>.ng3d-schematic-webgl-render{opacity:0!important;}}

/* Use one thumbnail paint layer at every width; avoid tiled edge fragments. */
html body.nexgen-v5 #ng3dOptionModal .ng3d-catalog-product.has-webgl-render{background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;}
html body.nexgen-v5 #ng3dOptionModal .ng3d-catalog-product.has-webgl-render>.ng3d-schematic-webgl-render{opacity:0!important;}
/* Keep the two hero cards at the reference height; additional categories stay in the header. */
@media(min-width:1100px){html body.nexgen-v5 #ng3dOptionModal .ng3d-option-dialog{position:relative!important;}html body.nexgen-v5 #ng3dOptionModal .ng3d-other-openings{position:absolute!important;left:24px!important;top:26px!important;width:auto!important;height:52px!important;min-height:0!important;margin:0!important;padding:12px 16px!important;gap:12px!important;font-size:13px!important;border-radius:9px!important;}html body.nexgen-v5 #ng3dOptionModal .ng3d-other-openings>span{display:none!important;}html body.nexgen-v5 #ng3dOptionModal .ng3d-other-openings>i{font-size:20px!important;}}

/* Phone catalogues keep their navigation visible while choices scroll. */
@media(max-width:800px){
html body.nexgen-v5.ng3d-addon-modal-open{overflow:hidden!important}
html body.nexgen-v5 #ng3dOptionModal:not([hidden]){display:flex!important;position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;padding:12px!important;margin:0!important;box-sizing:border-box!important;z-index:10000!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;background:rgba(0,0,0,.78)!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-dialog{width:100%!important;max-width:none!important;height:calc(100dvh - 24px)!important;max-height:calc(100dvh - 24px)!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;overflow:hidden!important;border-radius:12px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-dialog-head{position:relative!important;height:auto!important;min-height:110px!important;padding:18px 50px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-dialog-head h2{font-size:25px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-dialog-head p{font-size:12px!important;line-height:1.45!important;white-space:normal!important;overflow-wrap:anywhere!important}
html body.nexgen-v5 #ng3dOptionModal #ng3dOptionBack{left:10px!important;top:23px!important;width:36px!important;height:40px!important}
html body.nexgen-v5 #ng3dOptionModal #ng3dOptionClose{right:10px!important;top:23px!important;width:36px!important;height:40px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-body{padding:12px!important;height:auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overscroll-behavior:contain!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-footer{position:static!important;display:flex!important;min-height:60px!important;padding:12px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-grid{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-part{display:grid!important;grid-template-columns:110px minmax(0,1fr)!important;grid-template-rows:auto!important;min-height:138px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-catalog-product{height:100%!important;min-height:138px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-copy{padding:12px!important;min-width:0!important;min-height:0!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-copy>b{font-size:16px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-catalog-meta{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:6px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-catalog-meta em{font-size:11px!important;color:#b7c5ce!important;max-width:100%!important;white-space:normal!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-catalog-meta strong{font-size:12px!important;white-space:normal!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-categories{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-categories>button{grid-template-rows:142px 76px!important;min-height:0!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-categories>button>span:last-child{min-height:76px!important;padding:14px 48px 12px 72px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-other-openings{font-size:13px!important;padding:12px!important;gap:6px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-other-openings>span{font-size:11px!important}
}
html body.nexgen-v5 #ng3dOptionModal[hidden]{display:none!important}

@media(max-width:800px){
html:has(body.nexgen-v5.ng3d-addon-modal-open){overflow:hidden!important}
html body.nexgen-v5 #ng3dOptionModal:not([hidden]){width:auto!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-dialog-head #ng3dOptionBack,html body.nexgen-v5 #ng3dOptionModal .ng3d-option-dialog-head #ng3dOptionClose{position:absolute!important;width:36px!important;min-width:36px!important;max-width:36px!important;height:40px!important;min-height:40px!important;max-height:40px!important;top:24px!important;transform:none!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-dialog-head #ng3dOptionBack{left:10px!important;right:auto!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-dialog-head #ng3dOptionClose{left:auto!important;right:10px!important}
html body.nexgen-v5 #ng3dOptionModal .ng3d-option-part:after{display:none!important}
}

.ng3d-brand-home{display:inline-flex;align-items:center;flex:none;line-height:0;border-radius:4px}.ng3d-brand-home:focus-visible{outline:2px solid #ff1888;outline-offset:5px}

#ng3dConstruction .ng3d-construction-options{display:grid;gap:16px}#ng3dConstruction .ng3d-construction-options fieldset{border:0;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap}#ng3dConstruction .ng3d-construction-options legend{color:#dfe5e8;font-weight:700;margin-bottom:8px}#ng3dConstruction .ng3d-construction-options button{background:#10161b;color:#cad4da;border:1px solid #34424b;border-radius:9px;padding:12px 18px}#ng3dConstruction .ng3d-construction-options button[aria-pressed="true"]{border-color:#ff1493;background:#fff;color:#111;box-shadow:0 0 15px #ff14932a}#ng3dConstruction .ng3d-construction-options label{display:grid;gap:8px;font-weight:700}#ng3dConstruction .ng3d-construction-options label small{font-weight:400;color:#a3b4c0}#ng3dConstruction .ng3d-construction-options input{background:#10161b;color:#fff;border:1px solid #34424b;border-radius:8px;padding:12px;width:100%;box-sizing:border-box}
@media print{.ng3d-print-preview{break-inside:avoid;max-height:78mm}.ng3d-print-preview img{max-height:72mm;width:100%;object-fit:contain}.ng3d-print-wall{break-inside:avoid}.ng3d-print-pricing tr{break-inside:avoid}.ng3d-print-pricing thead{display:table-header-group}.ng3d-print-pricing table{font-size:9px;table-layout:fixed;width:100%}.ng3d-print-pricing td{overflow-wrap:anywhere}.ng3d-print-construction{font-size:10px;color:#222;margin:8px 0}.ng3d-print-totals,.ng3d-print-check{break-inside:avoid}}

@media print{#ng3dPrintSheet .ng3d-print-pricing{break-inside:auto!important;page-break-inside:auto!important}#ng3dPrintSheet .ng3d-print-pricing tr{break-inside:avoid!important;page-break-inside:avoid!important}#ng3dPrintSheet .ng3d-print-preview{margin:8px 0}}

@media print{#ng3dPrintSheet .ng3d-print-plan{break-inside:avoid;page-break-inside:avoid;margin:10mm 0 5mm}#ng3dPrintSheet .ng3d-print-plan svg{display:block;width:100%;max-height:58mm}#ng3dPrintSheet .ng3d-print-plan h2{color:#222;font-size:13px}#ng3dPrintSheet .ng3d-print-plan p{font-size:9px;color:#333;margin-top:4mm}}

#ng3dBuildPreview{position:fixed;inset:0;z-index:11000;display:flex;align-items:center;justify-content:center;padding:20px;background:#000c;backdrop-filter:blur(7px);box-sizing:border-box}
#ng3dBuildPreview .ng3d-build-preview-dialog{display:flex;flex-direction:column;width:min(940px,100%);max-height:calc(100dvh - 40px);border:1px solid #39424a;border-radius:14px;overflow:hidden;background:#10151a;box-shadow:0 30px 100px #0009}
#ng3dBuildPreview .ng3d-build-preview-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;gap:12px;border-bottom:1px solid #39424a;flex-shrink:0}
#ng3dBuildPreview .ng3d-build-preview-dialog>header h2{font:700 20px Arial,sans-serif;color:white;margin:0}
#ng3dBuildPreview header>div{display:flex;gap:10px}
#ng3dBuildPreview button{height:42px;min-width:42px;border:1px solid #f9188b;background:#f9188b;color:white;border-radius:9px;font:700 13px Arial,sans-serif;padding:0 16px}
#ng3dBuildPreview [data-build-close]{background:#1b232b;border-color:#46515b;font-size:25px;padding:0;width:42px}
#ng3dBuildPreviewContent{background:#dbe0e4;padding:24px;overflow:auto;overscroll-behavior:contain}
#ng3dBuildPreviewContent .ng3d-print-sheet{display:block!important;background:white;padding:28px;max-width:800px;margin:auto;box-shadow:0 4px 20px #0002;box-sizing:border-box}
#ng3dBuildPreviewContent .ng3d-print-sheet{font-family:Arial,Helvetica,sans-serif;font-size:9pt;line-height:1.35;color:#28333a}#ng3dBuildPreviewContent .ng3d-print-brand{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-bottom:2px solid #1d2730;padding-bottom:8px;margin-bottom:10px}#ng3dBuildPreviewContent .ng3d-print-logo-block img{display:block;width:150px;height:auto;margin:0 0 5px}#ng3dBuildPreviewContent .ng3d-print-brand small,#ng3dBuildPreviewContent .ng3d-print-ref small,#ng3dBuildPreviewContent .ng3d-print-meta small{display:block;font-size:6.5pt;letter-spacing:.12em;font-weight:700;color:#6e7a82}#ng3dBuildPreviewContent .ng3d-print-brand h1{font-size:18pt;line-height:1.05;margin:2px 0 0}#ng3dBuildPreviewContent .ng3d-print-ref{text-align:right}#ng3dBuildPreviewContent .ng3d-print-ref b{display:block;font-size:11pt;margin-top:2px}#ng3dBuildPreviewContent .ng3d-print-meta{display:grid;grid-template-columns:1.4fr 1fr 1fr .7fr;gap:5px;margin-bottom:9px}#ng3dBuildPreviewContent .ng3d-print-meta span{border:1px solid #d7dde0;border-radius:5px;padding:6px}#ng3dBuildPreviewContent .ng3d-print-meta b{display:block;margin-top:2px;font-size:8.5pt}#ng3dBuildPreviewContent .ng3d-print-walls{display:grid;grid-template-columns:1fr 1fr;gap:7px;break-inside:avoid}#ng3dBuildPreviewContent .ng3d-print-wall{border:1px solid #cbd3d8;border-radius:6px;padding:6px;break-inside:avoid}#ng3dBuildPreviewContent .ng3d-print-wall header{display:flex;justify-content:space-between;gap:8px;margin-bottom:4px}#ng3dBuildPreviewContent .ng3d-print-wall header b{font-size:8.5pt}#ng3dBuildPreviewContent .ng3d-print-wall header span{font-size:6.5pt;color:#748089}#ng3dBuildPreviewContent .ng3d-print-elevation{position:relative;height:82px;border:1px solid #7e8b93;background:#e7ebed;overflow:hidden}#ng3dBuildPreviewContent .ng3d-print-corrugation{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 7%,#fff9 7% 7.5%,#88959d45 7.5% 8%,transparent 8% 14%)}#ng3dBuildPreviewContent .ng3d-print-elevation em{position:absolute;inset:0;display:grid;place-items:center;color:#8a949a;font-size:7pt;font-style:normal}#ng3dBuildPreviewContent .ng3d-print-opening{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;background:#9ba5aa;border:1.5px solid #3c4951;overflow:hidden}#ng3dBuildPreviewContent .ng3d-print-opening.window{background:#83aec5}#ng3dBuildPreviewContent .ng3d-print-opening[class*="rollup"]{background:repeating-linear-gradient(0deg,#a9b1b5 0 4px,#78848b 4px 5px)}#ng3dBuildPreviewContent .ng3d-print-opening span{font-size:5.5pt;font-style:normal;color:#172128;background:#ffffffd9;padding:1px 2px}#ng3dBuildPreviewContent .ng3d-print-pricing{margin-top:10px;break-inside:avoid}#ng3dBuildPreviewContent .ng3d-print-pricing h2{font-size:11pt;margin:0 0 4px}#ng3dBuildPreviewContent .ng3d-print-pricing table{width:100%;border-collapse:collapse;font-size:7pt}#ng3dBuildPreviewContent .ng3d-print-pricing th,#ng3dBuildPreviewContent .ng3d-print-pricing td{border-bottom:1px solid #d7dde0;text-align:left;padding:3px 4px;vertical-align:top}#ng3dBuildPreviewContent .ng3d-print-pricing th:last-child,#ng3dBuildPreviewContent .ng3d-print-pricing td:last-child{text-align:right}#ng3dBuildPreviewContent .ng3d-print-totals{display:flex;justify-content:flex-end;gap:14px;margin-top:6px;font-size:7.5pt}#ng3dBuildPreviewContent .ng3d-print-totals span{white-space:nowrap}#ng3dBuildPreviewContent .ng3d-print-totals b{margin-left:4px}#ng3dBuildPreviewContent .ng3d-print-totals .total{font-size:9pt}#ng3dBuildPreviewContent .ng3d-print-check{margin-top:8px;padding:6px 8px;border-radius:5px;border:1px solid #b9ddd0;background:#f2faf7}#ng3dBuildPreviewContent .ng3d-print-check.review{border-color:#e3bd9e;background:#fff8f1}#ng3dBuildPreviewContent .ng3d-print-check b,#ng3dBuildPreviewContent .ng3d-print-check span{display:block}#ng3dBuildPreviewContent .ng3d-print-check span{font-size:7pt;margin-top:2px;color:#5f6c74}#ng3dBuildPreviewContent .ng3d-print-disclaimer{font-size:6.5pt;color:#6e7980;margin:8px 0 0}

#ng3dBuildPreviewContent .ng3d-print-brand{align-items:center;border-bottom:2px solid #f9188b}
#ng3dBuildPreviewContent .ng3d-print-logo-block img{width:168px;height:42px;object-fit:contain;background:#080a0d;border-radius:5px;padding:5px 8px}
#ng3dBuildPreviewContent .ng3d-print-brand h1{font-size:22px;color:#222}
#ng3dBuildPreviewContent .ng3d-print-preview{margin:12px 0}
#ng3dBuildPreviewContent .ng3d-print-preview img{display:block;width:100%;max-height:290px;object-fit:contain;background:#06090c}
#ng3dBuildPreviewContent figcaption{font-size:11px;color:#53616b;margin:5px 0}
#ng3dBuildPreviewContent .ng3d-print-wall-notes{list-style:none;padding:0;font-size:9px;margin:5px 0;line-height:1.4}
#ng3dBuildPreviewContent .ng3d-print-wall-notes span{display:block}
#ng3dBuildPreviewContent .ng3d-print-elevation{background:var(--ng3d-print-shell,#33383b)}
#ng3dBuildPreviewContent .ng3d-print-elevation em{color:#fff}
#ng3dBuildPreviewContent .ng3d-print-plan svg{width:100%;max-height:210px;display:block}
#ng3dBuildPreviewContent .ng3d-print-plan p{font-size:10px}
#ng3dBuildPreviewContent .ng3d-print-totals{flex-wrap:wrap;gap:9px;margin-top:12px}
#ng3dBuildPreviewContent .ng3d-print-pricing table{table-layout:fixed;overflow-wrap:anywhere}
#ng3dBuildPreviewContent .ng3d-print-pricing th:first-child{width:20px}
#ng3dBuildPreviewContent .ng3d-print-pricing th:last-child{width:65px}
@media(max-width:600px){#ng3dBuildPreview{padding:8px}#ng3dBuildPreview .ng3d-build-preview-dialog{max-height:calc(100dvh - 16px)}#ng3dBuildPreview .ng3d-build-preview-dialog>header{padding:12px;flex-wrap:wrap}#ng3dBuildPreviewContent{padding:8px}#ng3dBuildPreviewContent .ng3d-print-sheet{padding:14px}#ng3dBuildPreviewContent .ng3d-print-brand{gap:12px;flex-wrap:wrap}#ng3dBuildPreviewContent .ng3d-print-meta{grid-template-columns:1fr 1fr}#ng3dBuildPreviewContent .ng3d-print-walls{grid-template-columns:1fr}#ng3dBuildPreviewContent .ng3d-print-pricing table{font-size:8px}#ng3dBuildPreviewContent .ng3d-print-pricing td,#ng3dBuildPreviewContent .ng3d-print-pricing th{padding:3px 2px}}
@media print{#ng3dBuildPreview{display:none!important}}

#ng3dBuildPreviewContent h1,#ng3dBuildPreviewContent h2{color:#25313a;font-family:Arial,Helvetica,sans-serif}#ng3dBuildPreviewContent .ng3d-print-plan h2{font-size:15px;margin:16px 0 8px}

@media print{html:has(body.v5-designer),html body.nexgen-v5.v5-designer{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;background:#fff!important}html body #ng3dPrintSheet{position:static!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0!important;background:#fff!important;color:#25313a!important}html body #ng3dPrintSheet h1,html body #ng3dPrintSheet h2{color:#25313a!important}html body #ng3dPrintSheet .ng3d-print-totals{flex-wrap:wrap!important}html body #ng3dPrintSheet .ng3d-print-walls{break-inside:auto!important;page-break-inside:auto!important}}

.ng3d-platform-credit{position:static;flex:0 0 auto;padding:8px 18px;text-align:right;font:11px/16px Arial,sans-serif;color:#9da9b2}.ng3d-platform-credit a{color:#ccd5db;text-decoration:none}.ng3d-platform-credit a:hover{text-decoration:underline}.ng3d-visual-side{position:relative}html body.nexgen-v5 #app .ng3d-viewer-footer{height:auto!important;min-height:96px}html body.nexgen-v5 #app .ng3d-viewer-price{height:auto!important;min-height:60px!important}html body.nexgen-v5 #app .ng3d-viewer-price>small{overflow-wrap:normal;white-space:normal}@media(max-width:800px){.ng3d-platform-credit{padding:9px 12px;text-align:center;background:#080c0f}}@media print{.ng3d-platform-credit{display:none!important}}
