.dehome-m3d{--m3d-blue:#4f8ec7;--m3d-ink:#17202b;--m3d-muted:#6d7683;color:var(--m3d-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;max-width:1180px;margin:18px auto;box-sizing:border-box;font-size:14px}
.dehome-m3d *{box-sizing:border-box}
.dehome-m3d-layout{display:grid;grid-template-columns:minmax(0,1fr) 244px;gap:0;background:#fff;border:1px solid #e7e7e7;border-radius:14px;overflow:hidden;box-shadow:0 5px 30px rgba(34,45,60,.04)}
.dehome-m3d-stage{position:relative;isolation:isolate;height:clamp(460px,58vw,670px);min-width:0;overflow:hidden;background:radial-gradient(ellipse at 40% 20%,#fff 0%,#f8f8f6 64%,#efeee9 100%);touch-action:pan-y}
.dehome-m3d-model{position:absolute;inset:0;z-index:1;width:100%;height:100%;--poster-color:transparent;background:transparent}
.dehome-m3d-heading{position:absolute;left:17px;top:17px;z-index:8;display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.045em;pointer-events:none}
.dehome-m3d-heading strong{font-size:17px;letter-spacing:.02em}
.dehome-m3d-heading span:nth-child(2){color:#6d7480;border-left:1px solid #c8cdd2;padding-left:12px;font-weight:700}
.dehome-m3d-heading-note{color:#818792;letter-spacing:0;text-transform:none;font-weight:400}
.dehome-m3d-lines{position:absolute;inset:0;z-index:4;width:100%;height:100%;pointer-events:none;overflow:hidden}
.dehome-m3d-lines>line{stroke:var(--m3d-blue);stroke-width:1.4px;stroke-linecap:round;opacity:.95}
.dehome-m3d-bbox{display:none;pointer-events:none}
.dehome-m3d.show-outline .dehome-m3d-bbox{display:block}
.dehome-m3d-bbox line{stroke:#f2cf45;stroke-width:2.9px;stroke-linecap:round;opacity:.92;filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}
.dehome-m3d-dimension-label{position:absolute;z-index:5;left:0;top:0;display:none;transform:translate(-50%,-50%);padding:4px 9px;border-radius:18px;border:1px solid #b9d3e9;background:rgba(255,255,255,.98);box-shadow:0 2px 5px rgba(40,80,110,.09);color:#2d6798;white-space:nowrap;font-size:12px;font-weight:600;line-height:1.35;pointer-events:none}
.dehome-m3d.is-dim-loaded .dehome-m3d-dimension-label{display:block}
.dehome-m3d.no-dimensions .dehome-m3d-lines>line,.dehome-m3d.no-dimensions .dehome-m3d-dimension-label{display:none}
.dehome-m3d:not(.is-dim-loaded) .dehome-m3d-lines>line{display:none}
.dehome-m3d-anchor{width:1px;height:1px;opacity:0;pointer-events:none}
.dehome-m3d-loader{position:absolute;z-index:3;top:50%;left:50%;transform:translate(-50%,-50%);padding:13px 18px;border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 6px 22px rgba(0,0,0,.08);font-size:13px;color:#526175;pointer-events:none}
.dehome-m3d.is-ready .dehome-m3d-loader{display:none}
.dehome-m3d-warning{position:absolute;z-index:9;top:45%;left:50%;transform:translate(-50%,-50%);max-width:min(390px,85%);padding:14px 18px;border:1px solid #efc8ae;border-radius:9px;background:#fff8f1;color:#8a431e;font-size:13px;line-height:1.55;text-align:center}
.dehome-m3d-warning[hidden]{display:none!important}
.dehome-m3d-tools{position:absolute;z-index:10;left:10px;right:10px;bottom:12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;pointer-events:none}
.dehome-m3d-button{pointer-events:auto!important;appearance:none;-webkit-appearance:none;min-width:auto!important;width:auto!important;min-height:32px!important;height:auto!important;margin:0!important;padding:6px 10px!important;border:1px solid #d9dce2!important;border-radius:20px!important;background:rgba(255,255,255,.95)!important;color:#374457!important;font-family:inherit!important;font-size:11px!important;font-weight:650!important;line-height:1.6!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer!important;box-shadow:0 1px 4px rgba(13,37,68,.05)!important;transition:background .15s,border-color .15s,color .15s}
.dehome-m3d-button:hover,.dehome-m3d-button:focus-visible{border-color:#8bb8df!important;background:#f5fafe!important;outline-offset:2px}
.dehome-m3d-button.is-active{color:#fff!important;background:#407eaf!important;border-color:#407eaf!important}
.dehome-m3d-native-ar{position:absolute;bottom:86px;left:50%;transform:translateX(-50%);white-space:nowrap;border:none;border-radius:22px;background:#131d29;color:white;padding:10px 18px;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 5px 16px rgba(0,0,0,.2)}
.dehome-m3d-details{min-width:0;padding:26px 17px 16px;background:linear-gradient(180deg,#fff 0%,#faf9f7 100%);border-left:1px solid #ececec}
.dehome-m3d-title{margin:0 0 7px!important;font-size:22px!important;line-height:1.15!important;letter-spacing:0!important;font-weight:750!important;color:#121820!important;overflow-wrap:anywhere;text-transform:none!important}
.dehome-m3d-finish-label{margin:2px 0 15px;color:#343d4b;font-size:15px;font-weight:650}
.dehome-m3d-swatches{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:0 0 15px;padding:4px}
.dehome-m3d-swatch{position:relative;display:inline-flex!important;align-items:center;gap:7px;width:auto!important;height:40px!important;min-width:0!important;min-height:40px!important;padding:5px 9px!important;margin:0!important;border-radius:22px!important;cursor:pointer!important;border:1px solid #c4c8d0!important;background:#fff!important;color:#27313e!important;font-size:12px!important;line-height:1.25!important;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;transition:box-shadow .14s ease!important}
.dehome-m3d-swatch:before{content:"";display:block;flex:0 0 22px;width:22px;height:22px;border-radius:50%;border:1px solid #a5a9af;background:#222}
.dehome-m3d-swatch.is-dark:before{background:#242024}
.dehome-m3d-swatch.is-white:before{background:#f3f3f3}
.dehome-m3d-swatch.is-selected{border-color:#174a75!important;box-shadow:0 0 0 2px #a2cce7!important;font-weight:750!important}
.dehome-m3d-swatch:focus-visible{outline:3px solid #4c96ca;outline-offset:3px}
.dehome-m3d-variant-note{font-size:11px;color:#7a8090;line-height:1.45;margin-bottom:18px}
.dehome-m3d-size-card{display:flex;flex-direction:column;gap:4px;border-top:1px solid #e8e7e3;border-bottom:1px solid #e8e7e3;padding:16px 0;margin:15px 0}
.dehome-m3d-size-card strong{font-size:13px}
.dehome-m3d-size-card span{font-size:18px;font-weight:700}
.dehome-m3d-size-card small{font-size:11px;color:#818792}
.dehome-m3d-ar-card{padding-top:4px}
.dehome-m3d-ar-card h4{margin:0 0 8px!important;font-size:17px!important;font-weight:700!important;color:#1e2834!important;text-transform:none!important;line-height:1.25!important}
.dehome-m3d-ar-card p{margin:0 0 13px!important;font-size:12px!important;line-height:1.55!important;color:#5b6877!important}
.dehome-m3d-qr{display:flex;align-items:center;justify-content:center;min-height:176px;min-width:176px;margin:10px auto 6px;padding:7px;background:#fff;border:1px solid #e5e9ef;border-radius:9px;text-align:center;color:#748195;font-size:12px}
.dehome-m3d-qr canvas,.dehome-m3d-qr img{width:160px!important;height:160px!important;max-width:100%!important}
.dehome-m3d-link{display:block;text-align:center;margin:7px 0 13px;color:#226eac!important;text-decoration:underline!important;font-size:12px!important}
.dehome-m3d-ar-button{display:block!important;width:100%!important;min-height:42px!important;margin:6px 0 10px!important;border:0!important;border-radius:9px!important;background:#192d43!important;color:#fff!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;font-size:13px!important;cursor:pointer!important}
.dehome-m3d-ar-button:hover{background:#286299!important}
.dehome-m3d-ar-card small{display:block;color:#7d8693;font-size:10px;line-height:1.5;text-align:center}
.dehome-m3d-footnote{margin:0!important;padding:11px 6px!important;color:#6c7582;font-size:11px;line-height:1.5;text-align:center}
.dehome-m3d-stage.is-expanded{position:fixed!important;z-index:9999999!important;inset:0!important;width:100vw!important;height:100dvh!important;border:0!important;border-radius:0!important}
.dehome-m3d-ar-page{margin:0;background:#f5f6f7}
.dehome-m3d-ar-page .dehome-m3d{max-width:1280px;padding:0 12px}
.dehome-m3d-ar-header{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e8e8e8;font-family:system-ui,-apple-system,sans-serif;gap:12px;font-size:13px}
.dehome-m3d-ar-header a{color:#2d6390;text-decoration:none;font-weight:600}
.dehome-m3d-ar-header strong{font-size:14px;letter-spacing:.02em}
.dehome-m3d.is-standalone .dehome-m3d-details{padding-top:22px}
@media(max-width:1020px){
 .dehome-m3d-layout{grid-template-columns:minmax(0,1fr) 218px}
 .dehome-m3d-details{padding:20px 12px}
 .dehome-m3d-heading-note{display:none}
 .dehome-m3d-qr{min-width:174px}
}
@media(max-width:760px){
 .dehome-m3d{margin:8px auto}
 .dehome-m3d-layout{grid-template-columns:1fr}
 .dehome-m3d-stage{height:min(78vh,570px);min-height:425px}
 .dehome-m3d-heading{top:11px;left:12px;gap:8px;font-size:10px}
 .dehome-m3d-heading strong{font-size:14px}
 .dehome-m3d-heading span:nth-child(2){padding-left:8px}
 .dehome-m3d-tools{bottom:9px;left:7px;right:7px;gap:5px}
 .dehome-m3d-button{font-size:10px!important;min-height:30px!important;padding:5px 9px!important}
 .dehome-m3d-dimension-label{font-size:11px;padding:3px 6px}
 .dehome-m3d-details{border-left:none;border-top:1px solid #ebedf0;padding:18px 18px}
 .dehome-m3d-size-card{max-width:480px}
 .dehome-m3d-qr{display:none}
 .dehome-m3d-ar-card{max-width:480px}
 .dehome-m3d-native-ar{bottom:95px}
}
@media(prefers-reduced-motion:reduce){.dehome-m3d-button{transition:none}.dehome-m3d-swatch{transition:none}}

/* Independent color-selecting modal; avoids altering legacy DEHOME theme views. */
.dehome-m3d-quick{position:fixed;z-index:2147483640;bottom:18px;right:18px;font-family:system-ui,-apple-system,Segoe UI,sans-serif}
.dehome-m3d-quick-launch{display:inline-flex!important;align-items:center;gap:9px;min-height:46px!important;width:auto!important;padding:11px 17px!important;background:#164c82!important;color:#fff!important;border:1px solid #0f3a68!important;border-radius:35px!important;font-size:13px!important;font-weight:750!important;letter-spacing:0!important;text-transform:none!important;box-shadow:0 6px 24px rgba(0,0,0,.22)!important;cursor:pointer!important}
.dehome-m3d-quick-launch:focus-visible{outline:3px solid #f0a744!important;outline-offset:3px}
.dehome-m3d-quick-launch:hover{background:#286eac!important}
.dehome-m3d-quick-modal[hidden]{display:none!important}
.dehome-m3d-quick-modal{position:fixed;inset:0;z-index:2147483645;display:flex;align-items:center;justify-content:center;padding:2vh 2vw;background:rgba(9,15,24,.74)}
.dehome-m3d-quick-window{display:flex;flex-direction:column;min-width:0;width:min(1260px,96vw);height:min(920px,96dvh);overflow:hidden;background:#fff;border-radius:13px;box-shadow:0 14px 70px rgba(0,0,0,.4)}
.dehome-m3d-quick-topbar{min-height:50px;padding:8px 16px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #e5e7eb;font-size:14px;color:#1a2837}
.dehome-m3d-quick-close{width:auto!important;min-height:32px!important;height:auto!important;margin:0!important;padding:6px 12px!important;background:#edf1f4!important;border:1px solid #c9d0d9!important;color:#1a2837!important;border-radius:8px!important;font-size:13px!important;text-transform:none!important;cursor:pointer!important}
.dehome-m3d-quick-iframe{display:block;flex:1;min-height:0;width:100%;height:100%;background:#fff;border:0}
body.dehome-m3d-modal-open{overflow:hidden!important}
@media (max-width:760px){.dehome-m3d-quick{right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px))}.dehome-m3d-quick-launch{font-size:11px!important;padding:9px 12px!important;min-height:42px!important}.dehome-m3d-quick-modal{padding:0}.dehome-m3d-quick-window{width:100vw;height:100dvh;border-radius:0}.dehome-m3d-quick-topbar{font-size:12px;padding:8px}}
