@font-face{font-family:DM;src:url(/simulateur-3d/fonts/DMSans-Latin.woff2) format("woff2");font-weight:100 1000;font-display:swap}@font-face{font-family:DM;src:url(/simulateur-3d/fonts/DMSans-LatinExt.woff2) format("woff2");font-weight:100 1000;font-display:swap;unicode-range:U+0100-02FF,U+2000-206F}:root{font-family:DM,Segoe UI,sans-serif;color:#261c20;background:#f8f6f2;font-synthesis:none;--wine:#4b1722;--line:#ded9d0}*{box-sizing:border-box}body{margin:0}button,input,a{-webkit-tap-highlight-color:transparent}button,a,input{touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.6}button,a,input{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,#viewport:focus-visible{outline:2px solid #b67945}a{color:inherit}button{border:0;background:none}fieldset{border:0;margin:0;padding:24px 0;border-top:1px solid var(--line);min-width:0}legend{float:left;width:100%;padding:0;margin:0 0 16px;font-size:13px;font-weight:650;letter-spacing:.01em}fieldset>div{clear:both}.masthead{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;font-size:21px;letter-spacing:-.8px;font-weight:600;line-height:1.1}.brand-mark{height:39px;width:39px;border:1px solid #4b1722;border-radius:22px 22px 0 0;display:grid;place-items:center;color:var(--wine);font-size:13px;letter-spacing:-1px}.brand-sub{display:block;font-size:8px;letter-spacing:2px;font-weight:500;margin-top:6px}.local-label{font-size:12px;color:#716964}.quiet-button{padding:10px 0;border-bottom:1px solid #96877e;font-size:12px;min-height:40px}.quiet-button:hover{color:var(--wine);border-color:var(--wine)}.studio{display:grid;grid-template-columns:minmax(0,1fr) 338px;min-height:calc(100svh - 82px)}.stage{position:relative;min-width:0;min-height:690px;overflow:hidden;background:#71817b;color:#fff}.stage:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#171c252b,transparent 20%,transparent 61%,#131c255c)}#viewport{position:absolute;inset:0;touch-action:none}#viewport canvas{width:100%;height:100%;display:block;touch-action:none}.stage-top{position:absolute;inset:24px 26px auto;display:flex;justify-content:space-between;align-items:center;gap:16px;z-index:2}.world-tabs{display:flex;padding:5px;background:#f8f6f2;color:#473e3c;box-shadow:0 2px 9px #0001}.world-tabs button{display:flex;gap:8px;align-items:center;padding:13px 15px;font-size:9px;font-weight:450;min-height:44px}.world-tabs button span{font-size:12px;font-weight:550}.world-tabs button[aria-pressed=true]{background:var(--wine);color:#fff}.world-tabs button:hover:not([aria-pressed=true]){background:#ebe6de}.live-indicator{font-size:10px;letter-spacing:.2px;white-space:nowrap;text-shadow:0 1px 4px #0008}.live-indicator i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#e9cf8f;margin-right:7px;vertical-align:middle}.scene-caption{position:absolute;bottom:104px;left:35px;z-index:1;pointer-events:none;text-shadow:0 2px 16px #0004}.scene-caption>p:first-child{font-size:9px;letter-spacing:2.3px;font-weight:600;margin:0 0 9px}.scene-caption h2{font-size:clamp(26px,3.1vw,49px);line-height:1.1;font-weight:450;letter-spacing:-1.8px;margin:0}.scene-subtitle{font-size:12px;margin:12px 0 0;font-weight:400}.stage-bottom{position:absolute;left:32px;right:26px;bottom:43px;z-index:2;display:flex;justify-content:space-between;gap:16px;align-items:center}.interaction-hint{font-size:9px;color:#ffffffe0}.camera-tools{display:flex;gap:2px;background:#f8f6f2;color:#403632;padding:4px}.camera-tools button{font-size:10px;padding:10px 11px;min-height:38px}.camera-tools button[aria-pressed=true]{background:#e3ddd2}.camera-tools button:hover{background:#e8e2d8}.illustrative{position:absolute;left:32px;bottom:16px;font-size:8px;letter-spacing:.35px;color:#fffd;z-index:2}.settings{padding:31px 27px 20px;background:#f8f6f2;overflow-y:auto;max-height:calc(100svh - 82px)}.eyebrow{font-size:8px;letter-spacing:1.7px;color:#86776f;font-weight:650;margin:0 0 12px}.panel-heading h2{font-size:27px;font-weight:450;letter-spacing:-1px;line-height:1.15;margin:0 0 28px}.decor-options{display:flex;gap:9px}.decor-options button{padding:0;flex:1;min-width:0;text-align:left;font-size:9px;line-height:1.4}.decor-options button>span:last-child{display:block;padding-top:8px}.decor-preview{display:block;height:58px;width:100%;border:2px solid transparent;box-shadow:inset 0 0 0 2px #f8f6f2;background-size:cover;position:relative;overflow:hidden}.decor-options button[aria-pressed=true] .decor-preview{border-color:var(--wine)}.decor-options button[aria-pressed=true]>span:last-child{font-weight:750;color:var(--wine)}.lake{background:linear-gradient(165deg,#a9b5ac 0 40%,#5e6b5d 41% 51%,#aabeb9 52% 72%,#7c7362 73%)}.garden{background:linear-gradient(110deg,#2c4438 0 26%,#718471 27% 41%,#9e9c82 42% 59%,#4d6648 60%)}.room{background:linear-gradient(90deg,#b2a997 0 26%,#d7c9b5 27% 76%,#6e7b64 77% 86%,#e3d3b7 87%)}.time-field legend{display:flex;justify-content:space-between}#hour-output{font-size:13px;font-weight:450;font-variant-numeric:tabular-nums;color:#6a5b52}input[type=range]{width:100%;height:26px;margin:0;accent-color:var(--wine);cursor:pointer;background:transparent}input[type=range]::-webkit-slider-runnable-track{height:3px;background:#c5b9a6}input[type=range]::-webkit-slider-thumb{margin-top:-6px}.range-labels{display:flex;justify-content:space-between;font-size:8px;color:#827770;margin-top:3px}.hour-mood{font-size:10px;color:#786956;margin:15px 0 0}.material-options{display:flex;gap:20px}.material-options button{padding:0;font-size:9px;display:flex;align-items:center;gap:7px;min-height:33px}.swatch{width:24px;height:24px;border-radius:50%;border:3px solid #f8f6f2;outline:1px solid transparent}.material-options button[aria-pressed=true] .swatch{outline-color:var(--wine)}.material-options button[aria-pressed=true]{font-weight:700}.natural{background:#b99360 url(/simulateur-3d/textures-v2/oak-swatch.webp) center/cover}.walnut{background:#6c4832}.dark{background:#373c39}.details-settings{padding-bottom:18px}.details-settings legend{margin-bottom:12px;font-size:11px}.switch-row{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:37px;font-size:11px;cursor:pointer}.switch-row input{position:absolute;right:0;opacity:0;width:32px;height:24px}.switch{width:28px;height:16px;border-radius:12px;background:#d1c9be;border:1px solid #d1c9be;transition:background .2s;pointer-events:none}.switch:after{content:"";display:block;height:10px;width:10px;margin:2px;background:#fff;border-radius:50%;transition:transform .2s}.switch-row input:checked+.switch{background:var(--wine);border-color:var(--wine)}.switch-row input:checked+.switch:after{transform:translate(11px)}.switch-row input:focus-visible+.switch{outline:2px solid #b67945;outline-offset:4px}.primary-button{background:var(--wine);color:#fff;border:1px solid var(--wine);font:inherit;text-align:center;display:block;width:100%;text-decoration:none;padding:15px 12px;font-size:12px;font-weight:550;min-height:46px;transition:background .18s}.primary-button:hover{background:#662632}.project-actions{padding-top:2px}.save-button{display:block;text-align:center;width:100%;font-size:10px;min-height:39px;color:#685d56}.save-button:hover{text-decoration:underline}#save-status{font-size:9px;color:var(--wine);display:block;text-align:center}.panel-note{font-size:8px;line-height:1.65;color:#867c74;margin:10px 0 0}.loading-line{height:1px;width:110px;background:#eee;display:block;margin:0 auto 20px;animation:loading 1s ease-in-out infinite alternate}#loading{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:4;background:#3b453f;font-size:12px;letter-spacing:.5px}#loading[hidden]{display:none}#fallback{position:absolute;inset:0;padding:130px 40px;background:#313c35;z-index:5}#fallback h2{font-weight:450;font-size:27px}#fallback p{font-size:13px}#fallback a{display:inline-block;margin-top:20px}dialog{border:0;padding:38px;max-width:480px;width:calc(100% - 30px);background:#f8f6f2;color:#261c20;box-shadow:0 20px 90px #0003}dialog::backdrop{background:#19241fc4}dialog h2{font-weight:450;font-size:30px;letter-spacing:-1px;margin:0 0 20px}.dialog-close{position:absolute;top:10px;right:12px;font-size:25px;width:35px;height:35px}#project-summary{font-size:13px;line-height:1.7}#project-specs{display:grid;grid-template-columns:1fr 1fr;font-size:11px;line-height:2;border-top:1px solid var(--line);padding-top:15px}#project-specs dt{color:#7b6d64}#project-specs dd{text-align:right;margin:0}.project-disclaimer{font-size:10px;line-height:1.7;color:#7d7168;margin:18px 0 24px}.secondary-link{display:block;font-size:11px;text-align:center;margin-top:17px}#toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#f8f6f2;box-shadow:0 3px 25px #0002;padding:13px 22px;z-index:10;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s}#toast.visible{opacity:1}@keyframes loading{to{transform:scaleX(.35);opacity:.4}}[hidden]{display:none!important}.settings{display:flex;flex-direction:column;height:calc(100svh - 82px);overflow:hidden}.settings-controls{overflow-y:auto;min-height:0;flex:1;scrollbar-width:thin;scrollbar-color:#c5b9a6 transparent;padding-right:3px}.project-actions{flex-shrink:0;padding-top:15px;border-top:1px solid var(--line)}.panel-note{flex-shrink:0}@media(max-width:760px){.settings{display:grid;height:auto;overflow:visible}.settings-controls{display:contents}.project-actions{padding-top:15px}}fieldset>.switch-row{clear:both;width:100%}@media(min-width:1500px){.studio{grid-template-columns:minmax(0,1fr) 370px}.settings{padding:38px 36px}.panel-heading h2{font-size:30px}fieldset{padding:27px 0}.decor-preview{height:68px}}@media(max-width:1100px){.live-indicator,.interaction-hint{display:none}.stage-bottom{justify-content:flex-end}.world-tabs button{padding:11px}.scene-caption{left:26px}.scene-subtitle{max-width:350px;line-height:1.6}}@media(max-width:760px){.masthead{height:69px;padding:0 18px}.brand{font-size:18px}.brand-mark{width:32px;height:34px}.brand-sub{font-size:7px;letter-spacing:1.4px}.local-label{display:none}.quiet-button{font-size:10px}.studio{display:block}.stage{height:65svh;min-height:485px;max-height:650px}.stage-top{inset:14px 14px auto}.world-tabs{width:100%;justify-content:space-between}.world-tabs button{flex:1;justify-content:center;gap:7px;padding:11px 5px}.world-tabs button span{font-size:11px}.scene-caption{bottom:104px;left:22px}.scene-caption h2{font-size:31px;letter-spacing:-1.2px}.scene-subtitle{font-size:10px;max-width:270px}.scene-caption>p:first-child{font-size:8px}.stage-bottom{left:18px;right:18px;bottom:38px}.camera-tools{width:100%;justify-content:space-between}.camera-tools button{font-size:10px;min-height:40px;padding:9px 12px}.illustrative{bottom:14px;left:21px;font-size:7px}.settings{max-height:none;overflow:visible;padding:28px 23px 24px;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.panel-heading{grid-column:1/-1}.panel-heading h2{font-size:25px;margin:0 0 24px}.panel-heading h2 br{display:none}.eyebrow{font-size:8px}.settings fieldset{padding:20px 0}.settings fieldset:first-of-type{grid-column:1/-1}.decor-preview{height:64px}.decor-options{gap:12px}.decor-options button{font-size:11px}.details-settings{grid-column:1/-1}.switch-row{min-height:44px;font-size:12px}.project-actions,.panel-note{grid-column:1/-1}.material-options{gap:12px;flex-wrap:wrap}.material-options button{font-size:10px;min-height:38px}.settings legend{font-size:12px}.time-field legend{gap:10px}.range-labels{font-size:8px}.panel-note{font-size:9px}.primary-button{font-size:13px;min-height:49px}.save-button{font-size:11px;min-height:44px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.decor-preview.lake{background:#7c9a9f url(/simulateur-3d/environments-v2/lake-thumb.webp) center/cover}.decor-preview.garden{background:#7f8165 url(/simulateur-3d/environments-v2/garden-thumb.webp) center/cover}.decor-preview.room{background:#c9c3b4 url(/simulateur-3d/textures-v2/plaster-thumb.webp) center/cover}@media(min-width:761px){.settings-controls fieldset{padding-block:20px}.settings-controls .panel-heading h2{margin-bottom:22px}.settings-controls legend{margin-bottom:13px}.settings-controls .switch-row{min-height:34px}}.masthead-actions,.site-links{display:flex;align-items:center;gap:24px}.site-links{font-size:12px;gap:20px}.site-links a{text-decoration:none;min-height:40px;display:flex;align-items:center}.site-links a:hover{text-decoration:underline}@media(max-width:760px){.masthead{gap:10px}.masthead-actions{gap:12px}.site-links{font-size:10px}.site-links .workshop-link{display:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
