:root{--ink:#2b4237;--green:#285d4b;--paper:#f8f6ef;--white:#fffef9;--muted:#748073;--line:#dbe1d5;--orange:#af7750;--blue:#7ba3aa;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 'Segoe UI',Arial,sans-serif}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #bf8c60;outline-offset:4px}a{color:inherit}button{border:1px solid var(--line);background:var(--white);border-radius:10px;min-height:44px;padding:8px 13px}header{height:83px;padding:15px 4%;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-size:21px;font-weight:650;letter-spacing:-.6px}.mark{display:grid;place-items:center;width:43px;height:47px;border-radius:11px 11px 3px 11px;background:var(--green);color:white;font:34px Georgia,serif}.brand small{display:block;font-size:8px;letter-spacing:1.5px;font-weight:500}header nav{display:flex;gap:17px;align-items:center;font-size:13px;margin-left:auto;color:var(--muted)}header nav strong{color:var(--green)}.step-line{width:35px;border-top:1px solid #bfcbbb}#resume{font-size:12px}main{max-width:1500px;margin:auto;padding:22px 4% 16px}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:700;color:var(--muted);margin:0 0 4px}h1{font:35px/1.2 Georgia,serif;letter-spacing:-1px;margin:0 0 5px}.intro p:not(.eyebrow){font-size:13px;color:var(--muted);margin:0}.view-badge{font-size:11px;border:1px solid #cfd9c9;border-radius:20px;padding:7px 12px;color:var(--muted)}.workbench{display:grid;grid-template-columns:90px minmax(0,1fr) 90px;gap:13px}.shape-tools,.opening-tools{display:flex;flex-direction:column;gap:11px;padding-top:12px}.tool-heading{font-size:9px;letter-spacing:1.8px;color:var(--muted);text-align:center}.workbench aside button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:10px 6px;font-size:11px;min-height:76px}.workbench aside svg{width:34px;height:34px;stroke:var(--green);fill:none;stroke-width:2}.workbench aside .chosen,.workbench aside [aria-pressed=true]{background:#e7eee1;border:1.5px solid var(--green)}.opening-tools [aria-pressed=true]{background:#f3e6d9!important;border-color:var(--orange)!important}.drawing{border:1px solid #d6decd;border-radius:16px;overflow:hidden;background:#f0f2e9;position:relative}.drawing-top{padding:11px 15px;display:flex;align-items:center;gap:10px;font-size:12px;color:#667b64;min-height:44px;border-bottom:1px solid #e2e7db}.drawing-top #instruction{flex:1}.drawing-top button{font-size:11px;min-height:30px;padding:4px 9px;background:white}#stage{position:relative;width:100%;height:clamp(340px,calc(100dvh - 355px),560px);min-width:0}#room-plan{width:100%;height:100%;display:block;touch-action:none}.measurement{position:absolute;transform:translate(-50%,-50%);display:block;text-align:center;z-index:2;font-size:12px;color:var(--muted)}.measurement>span:first-child{display:block;margin-bottom:4px;white-space:nowrap}.measurement small{font-size:10px}.measurement>span>small{margin-left:4px}.value{display:flex;align-items:center;justify-content:center;border:1px solid #c3cfb9;border-radius:9px;background:var(--white);padding:5px 8px;gap:1px;box-shadow:0 2px 6px #1e392b05}.value input{width:74px;border:0;outline-offset:2px;text-align:center;font-size:18px;font-weight:600;background:transparent;padding:4px 0;min-height:30px;-moz-appearance:textfield}.value input::-webkit-inner-spin-button{-webkit-appearance:none}.height{color:#6d826b}.height .value{background:#f7f9f0;border-color:#d5decb}.height input{width:60px;font-size:17px}.height>span:first-child{font-size:10px}.drawing-bottom{display:flex;justify-content:space-between;padding:9px 15px;font-size:10px;color:var(--muted);border-top:1px solid #e2e7db}.drawing-bottom #room-summary{font-weight:650;color:#59724e}.wall-target{cursor:pointer}.wall-target:hover,.wall-target:focus{stroke:#b8cfad;stroke-opacity:.7}.selecting-wall .wall-target{stroke:#c2aa86;stroke-opacity:.35}.opening-hit{cursor:grab}.opening-hit:active{cursor:grabbing}.room-note{font-size:12px;fill:#8d9c84}#opening-editor{margin:13px 103px 0;padding:12px 16px;background:var(--white);border:1px solid #ccd8c1;border-radius:13px}.opening-title{display:flex;align-items:center;gap:12px;font-size:12px;margin-bottom:9px}.opening-title>span{color:var(--muted);font-size:11px}.opening-title #delete-opening{margin-left:auto}.opening-title button{padding:4px 8px;min-height:28px;font-size:12px}.text-button{border:0;background:none;text-decoration:underline;text-underline-offset:3px;color:var(--muted)}.placement-controls{display:grid;grid-template-columns:130px minmax(90px,1fr) 130px 135px;align-items:center;gap:15px}.placement-controls label,.detail-fields label{font-size:10px;color:var(--muted);display:block}.placement-controls label>span:first-child{display:block;margin-bottom:4px}.compact-value{display:flex;gap:5px;align-items:center;border:1px solid #cbd6c1;background:white;border-radius:7px;padding:5px 9px;width:max-content;max-width:100%}.compact-value input{width:66px;min-height:28px;background:none;border:0;font-size:15px;-moz-appearance:textfield}.compact-value input::-webkit-inner-spin-button{-webkit-appearance:none}.compact-value small{font-size:10px;color:var(--muted)}.slider-field label{font-size:11px;color:var(--ink);text-align:center}.slider-field input{width:100%;accent-color:var(--green);height:32px;cursor:ew-resize}.slider-ends{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:-4px}details{margin-top:10px;font-size:11px;color:var(--muted)}.detail-fields{display:flex;gap:15px;flex-wrap:wrap;padding-top:12px}.detail-fields select{display:block;border:1px solid #cbd6c1;border-radius:6px;margin-top:5px;padding:7px;font-size:11px}.below-plan{margin:10px 103px 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;min-height:24px}.below-plan p{font-size:11px;color:var(--muted);margin:0}#opening-list{display:flex;gap:7px;flex-wrap:wrap}#opening-list:empty{display:none}#opening-list button{min-height:30px;font-size:11px;padding:5px 10px;border-radius:20px}#opening-list [aria-pressed=true]{background:#e7eee1;border-color:var(--green)}#error,#kitchen-error{padding:10px 13px;background:#f4e5d9;color:#874425;border-radius:8px;font-size:13px;margin:12px 103px 0}footer{display:flex;gap:20px;align-items:center;justify-content:space-between;margin:17px 103px 0;padding-top:16px;border-top:1px solid var(--line)}footer>span{font-size:11px;color:var(--muted)}.primary{display:flex;align-items:center;justify-content:center;gap:26px;background:var(--green);border:1px solid var(--green);color:white;padding:13px 20px;min-height:48px;font-size:14px;font-weight:600;white-space:nowrap}.primary:hover{background:#1c4d3b}.primary:disabled{opacity:.55;cursor:wait}dialog{width:min(520px,calc(100% - 28px));max-height:calc(100dvh - 30px);overflow:auto;border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);padding:28px}dialog::backdrop{background:#1c352b65;backdrop-filter:blur(2px)}dialog h2{font:30px/1.2 Georgia,serif;letter-spacing:-.8px;margin:12px 0}dialog p{color:var(--muted);font-size:13px}.dialog-close{float:right;padding:3px 8px;font-size:22px;min-height:32px;border:0;background:none}.layouts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.layouts label{position:relative}.layouts input{position:absolute;opacity:0}.layouts span{display:flex;flex-direction:column;align-items:center;background:var(--white);border:1px solid #cbd5c1;border-radius:10px;padding:12px;gap:6px;font-size:13px;cursor:pointer}.layouts b{font-size:33px;line-height:1;font-weight:400;color:var(--green)}.layouts input:checked+span{background:#e7eee1;border-color:var(--green)}.layouts input:focus-visible+span{outline:3px solid var(--orange);outline-offset:3px}.block-label{display:block;font-size:13px}.block-label select{display:block;width:100%;padding:11px;margin-top:6px;border:1px solid #cbd5c1;border-radius:8px;background:var(--white)}.needs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.needs label{display:flex;gap:8px;align-items:center;font-size:13px;padding:10px;background:var(--white);border:1px solid var(--line);border-radius:9px}.needs input{accent-color:var(--green);height:17px;width:17px}#generate{width:100%}.dialog-note{text-align:center;font-size:11px!important}#kitchen-error{margin:10px 0}#replace-dialog .primary{display:inline-flex}
@media(min-width:1500px){main{padding-top:28px}}@media(max-width:850px){header{height:72px;padding:12px 4%;gap:10px}.brand{font-size:17px;gap:8px}.mark{width:36px;height:41px;font-size:30px}.brand small{font-size:6px}.step-line{width:15px}header nav{gap:9px;font-size:11px}header nav>span:last-child>span{display:none}#resume{display:none!important}main{padding:15px 3%}.intro{margin-bottom:13px}.intro h1{font-size:28px}.intro p:not(.eyebrow){font-size:11px;max-width:285px}.eyebrow{font-size:8px}.view-badge{font-size:9px;padding:5px 8px}.workbench{grid-template-columns:58px minmax(0,1fr) 58px;gap:7px}.workbench aside button{min-height:64px;padding:7px 3px;font-size:9px}.workbench aside svg{width:27px;height:29px}.tool-heading{font-size:7px;letter-spacing:1px}.drawing-top{font-size:10px;padding:8px;flex-wrap:wrap;min-height:47px}.drawing-top #instruction{flex-basis:100%}.drawing-top button{min-height:24px;font-size:9px}.drawing-bottom{font-size:8px;gap:8px;padding:8px}.drawing-bottom span:last-child{max-width:120px;text-align:right}#stage{height:clamp(350px,calc(100dvh - 330px),510px)}.measurement{font-size:10px}.measurement small{font-size:8px}.value{padding:3px 5px;gap:0}.value input{font-size:15px;width:54px;min-height:27px}.height input{width:45px;font-size:14px}.height>span:first-child{font-size:8px;white-space:normal;max-width:88px}.height .value{width:76px}.measurement.vertical>span:first-child small{display:none}#opening-editor{margin:12px 0 0;padding:10px}.opening-title{gap:8px}.opening-title>span{font-size:9px}.placement-controls{grid-template-columns:1fr 1fr 1fr;gap:10px}.slider-field{grid-column:1/-1;grid-row:1}.placement-controls label{font-size:9px}.compact-value{padding:3px 5px}.compact-value input{width:53px;font-size:14px}.below-plan{margin:10px 0 0;font-size:10px}footer{margin:14px 0 0;gap:10px}footer>span{font-size:9px;max-width:100px}.primary{font-size:12px;padding:12px 13px;gap:15px}#error{margin:10px 0}dialog{padding:22px}.detail-fields{gap:10px}}@media(max-width:480px){.view-badge{display:none}.workbench{grid-template-columns:45px minmax(0,1fr) 45px;gap:5px}.workbench aside button{font-size:8px;padding:6px 1px;min-height:60px}.tool-heading{font-size:6px}.workbench aside svg{width:25px}.drawing{border-radius:11px}.intro h1{font-size:27px}.drawing-bottom span:last-child{display:none}.drawing-top #instruction{font-size:9px}#stage{height:350px}.measurement.vertical .value{padding:2px 1px}.measurement.vertical input{width:41px;font-size:13px}.measurement.vertical .value small{font-size:7px}.measurement.vertical{font-size:8px}.measurement.height>span:first-child{font-size:7px;max-width:65px}.measurement.height .value{width:66px}.measurement.height input{width:41px}.measurement.horizontal .value{padding:3px}.measurement.horizontal input{font-size:14px}header nav strong>span{display:none}.intro p:not(.eyebrow){max-width:320px}.opening-width>span:first-child{min-height:27px}.placement-controls label>span:first-child{font-size:9px}.placement-controls input{width:48px}footer>span{display:none}.primary{width:100%}}
/* Le réglage fait partie du dessin, directement sous le mur. */
#stage.editing-opening{height:clamp(480px,calc(100dvh - 240px),650px)}
#stage.opening-context .measurement{visibility:hidden}
#wall-prompt{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;color:#86623e;pointer-events:none;min-width:160px}
#wall-prompt strong{font:23px Georgia,serif;font-weight:normal}
#wall-prompt small{font-size:12px}
#wall-prompt>span{font-size:24px;line-height:1.1;color:#b6875d}
.selecting-wall .wall-target:hover{stroke:#b58a5b;stroke-opacity:.7}
#stage #opening-editor{position:absolute;z-index:4;margin:0;padding:9px 12px;border-radius:11px;background:#fffef9f5;box-shadow:0 5px 20px #3a51330d;max-width:calc(100% - 18px)}
#stage .opening-title{margin-bottom:5px;gap:7px;font-size:11px}
#stage .opening-title>span{font-size:9px}
#stage .opening-title #delete-opening{font-size:10px}
#stage #close-opening{font-size:10px;padding:4px 7px;background:#eaf0e3;border-color:#cad8bf}
#stage .placement-controls{grid-template-columns:78px minmax(60px,1fr) 78px;grid-template-areas:'start slider end';gap:9px}
#stage .placement-controls>label:first-child{grid-area:start}
#stage .placement-controls>.slider-field{grid-area:slider}
#stage .placement-controls>label:nth-child(3){grid-area:end}
#stage .reverse-wall .placement-controls{grid-template-areas:'end slider start'}
#stage .reverse-wall #opening-position{direction:rtl}
#stage .reverse-wall .slider-ends{flex-direction:row-reverse}
#stage .placement-controls>label>span:first-child{font-size:9px;white-space:nowrap}
#stage .compact-value{padding:2px 5px}
#stage .compact-value input{width:43px;font-size:13px;min-height:24px}
#stage .slider-field label{font-size:9px;line-height:1.2}
#stage .slider-field input{height:25px}
#stage details{font-size:9px;margin-top:4px}
#stage .detail-fields label{font-size:10px}
#stage:has(#opening-details[open]){min-height:620px}
@media(max-width:600px){#stage #opening-editor{padding:8px}#stage .placement-controls{grid-template-columns:65px minmax(35px,1fr) 65px;gap:5px}#stage .opening-title>span{display:none}#wall-prompt{min-width:100px}#wall-prompt strong{font-size:15px}#wall-prompt small{font-size:9px}#wall-prompt>span{font-size:17px}#stage .placement-controls>label>span:first-child{font-size:8px}#stage .compact-value input{width:36px;font-size:12px}#stage .slider-field label{font-size:8px}#stage .opening-title{font-size:10px}}

/* Disposition de cuisine choisie sur le plan, sans fenetre centrale. */
#kitchen-tools{display:flex;flex-direction:column;gap:10px;padding-top:12px}#kitchen-tools .layouts{display:flex;flex-direction:column;gap:10px;margin:0}#kitchen-tools .layouts span{min-height:76px;padding:10px 6px;font-size:11px}#kitchen-tools .layouts b{font-size:30px}#kitchen-tools .layouts input:checked+span{border:2px solid #285d4b;background:#e7eee1}body.choosing-kitchen .workbench{grid-template-columns:minmax(0,1fr) 90px}body.choosing-kitchen .measurement,body.choosing-kitchen .below-plan{display:none}body.choosing-kitchen .drawing{grid-column:1}body.choosing-kitchen #stage{height:clamp(340px,calc(100dvh - 360px),560px)}body.choosing-kitchen .wall-target:hover{stroke:#9dbb83;stroke-opacity:.6}#kitchen-equipment{margin:12px 103px 0;display:flex;align-items:center;gap:20px}#kitchen-equipment>strong{font-size:12px;font-weight:500;color:#748073}#kitchen-equipment .needs{display:flex;gap:13px;flex-wrap:wrap;margin:0}#kitchen-equipment .needs label{font-size:12px;padding:8px 11px}body.choosing-kitchen footer{margin-top:14px}#back-to-room{font-size:12px;white-space:nowrap}body.choosing-kitchen footer #save-note{display:none}body.choosing-kitchen #kitchen-error{margin:10px 103px 0}body.choosing-kitchen #wall-prompt{color:#567444}body.choosing-kitchen #wall-prompt strong{font-size:20px}body.choosing-kitchen #wall-prompt small{font-size:11px}
@media(max-width:850px){body.choosing-kitchen .workbench{grid-template-columns:minmax(0,1fr) 58px}#kitchen-tools .layouts span{min-height:64px;font-size:9px;padding:7px 3px}#kitchen-tools .layouts b{font-size:25px}#kitchen-equipment{margin:12px 0;display:block}#kitchen-equipment>strong{display:block;margin-bottom:8px;font-size:11px}#kitchen-equipment .needs{gap:6px}#kitchen-equipment .needs label{font-size:11px;padding:7px}body.choosing-kitchen #kitchen-error{margin:8px 0}body.choosing-kitchen #wall-prompt strong{font-size:16px}body.choosing-kitchen #wall-prompt small{font-size:9px}body.choosing-kitchen footer{flex-wrap:wrap}body.choosing-kitchen footer #continue{flex:1}#back-to-room{font-size:11px}}

body.choosing-kitchen .opening-hit{pointer-events:none}

/* En-tête léger, retour explicite et action principale toujours accessible. */
.flow-header{height:68px;padding:10px 4%;gap:20px}.flow-header .brand{font-size:18px}.flow-header .mark{width:37px;height:41px;font-size:30px}.flow-header .brand small{font-size:7px}.journey-nav{margin-left:auto;display:flex;align-items:center;gap:8px}.journey-nav button{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:#748073;font-size:12px;font-weight:500;padding:7px 10px;min-height:36px}.journey-nav button[aria-current=step]{background:#e7eee1;color:#285d4b;font-weight:700}.step-dot{width:19px;height:19px;display:grid;place-items:center;border:1px solid #c4d0bd;border-radius:100%;font-size:10px}.journey-nav [aria-current=step] .step-dot{background:#285d4b;color:white;border-color:#285d4b}.header-actions{display:flex;align-items:center;gap:12px}.header-actions a{font-size:11px}.header-actions #new-project{font-size:11px;min-height:35px;padding:6px 11px;background:transparent}.flow-footer{position:sticky;bottom:0;z-index:8;background:#f8f6eff5;backdrop-filter:blur(8px);padding:12px 0;margin-bottom:0;box-shadow:0 -10px 18px #f8f6efee}.flow-footer .primary{min-height:46px}body>main{padding-bottom:16px}.flow-footer #back-to-room{background:none;border-color:#ced8c4;font-size:12px}#kitchen-tools .layouts input:checked+span{color:#285d4b;background:#e7eee1}.drawing-top{font-size:12px}.measurement>span:first-child>small{color:#8c9886}
@media(max-width:850px){.flow-header{height:auto;min-height:90px;flex-wrap:wrap;gap:6px 12px;padding:10px 4%}.flow-header .brand{font-size:16px}.flow-header .mark{width:32px;height:35px;font-size:26px}.flow-header .header-actions{margin-left:auto}.flow-header .journey-nav{order:3;width:100%;justify-content:center;margin:0;gap:6px}.flow-header .journey-nav button{font-size:11px;min-height:32px;padding:5px 10px}.flow-header .journey-nav strong>span,.flow-header .journey-nav>span:last-child>span{display:initial}.flow-header .step-line{width:22px}.flow-footer{gap:8px;padding:10px 0}.flow-footer .primary{min-height:46px}.flow-footer #back-to-room{font-size:11px}.flow-footer #save-note{display:none}}

.flow-footer{flex-wrap:wrap;gap:10px}body.choosing-kitchen .flow-footer #kitchen-equipment{flex:0 0 100%;order:-1;margin:0;padding:0 0 8px;border-bottom:1px solid #dbe1d5}body.choosing-kitchen .flow-footer #kitchen-equipment .needs{margin-left:auto}.choosing-kitchen #stage{height:clamp(280px,calc(100dvh - 420px),560px)}@media(max-width:850px){body.choosing-kitchen .flow-footer #kitchen-equipment{display:flex;align-items:center;gap:8px}body.choosing-kitchen .flow-footer #kitchen-equipment>strong{display:none}body.choosing-kitchen .flow-footer #kitchen-equipment .needs{margin:0;display:flex;gap:5px;flex-wrap:wrap}.flow-footer .needs label{font-size:10px;padding:5px 7px}.choosing-kitchen #stage{height:300px}}
