/* Asistente de cocina · 2.9.1 */
#modal:has(.kitchen-wizard){width:min(1000px,calc(100vw - 32px));max-width:1000px;background:#eff4f1}
#modal:has(.kitchen-wizard) .modal-content{padding:0;background:#eff4f1}
.kitchen-wizard{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:min(620px,calc(92dvh - 90px))}
.kw-steps{background:#f7faf8;border-right:1px solid #dce6e1;padding:20px 16px;display:flex;flex-direction:column;gap:18px}
.kw-steps ol{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.kw-steps button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:8px 10px;border:0;border-radius:12px;background:transparent;color:#4d635c;font:inherit;font-weight:550;text-align:left;cursor:pointer}
.kw-steps button span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1.5px solid #b9cbc3;font-size:13px;flex-shrink:0;background:#fff}
.kw-steps button.done span{background:var(--teal,#098b80);border-color:var(--teal,#098b80);color:#fff}
.kw-steps button[aria-current=step]{background:#fff;color:#14453d;box-shadow:0 1px 4px #0b3a3312}
.kw-steps button[aria-current=step] span{border-color:var(--teal,#098b80);color:var(--teal,#098b80);font-weight:700}
.kw-steps button:disabled{cursor:default;opacity:.62}
.kw-steps button:focus-visible,.kw-body :focus-visible{outline:3px solid #33a99a;outline-offset:2px}
.kw-preview{margin-top:auto;background:#fff;border:1px solid #dce6e1;border-radius:14px;padding:10px}
.kw-plan{width:100%;height:auto;display:block;max-height:230px}
.kw-wall{fill:#3d4c48}.kw-floor{fill:#f4f1ea}.kw-band{fill:#9fd6cc;stroke:#098b80;stroke-width:12}
.kw-module{fill:#d9e6e1;stroke:#5b7d73;stroke-width:8}.kw-equipped{fill:#7cc8bb;stroke:#0a6e65;stroke-width:8}
.kw-tall{fill:#b8c7d6;stroke:#4f6b86;stroke-width:8}.kw-appliance{fill:#c9cdd1;stroke:#5c6268;stroke-width:8}
.kw-dim{font:600 120px system-ui,sans-serif;fill:#5b7068}
.kw-body{padding:24px 28px 20px;display:flex;flex-direction:column;gap:6px;min-width:0}
.kw-body h3{font-size:20px;font-weight:650;margin:0;letter-spacing:-.3px}
.kw-body h3:focus{outline:none}
.kw-body>p{margin:2px 0 12px;color:#556b64}
.kw-eyebrow{font-size:12px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal,#098b80)!important;margin:0!important}
.kw-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}
.kw-field{display:grid;gap:6px;font-weight:550;color:#294741;min-width:0}
.kw-input{display:flex;align-items:center;background:#fff;border:1px solid #c9d9d2;border-radius:12px;padding:0 12px;min-height:46px}
.kw-input:focus-within{border-color:var(--teal,#098b80);box-shadow:0 0 0 3px #098b8022}
.kw-input input{border:0;outline:none;background:transparent;font:inherit;font-size:16px;width:100%;min-width:0;padding:10px 0}
.kw-input small{color:#6a807a;white-space:nowrap}
.kw-help{color:#617770;font-weight:400;font-size:13px;line-height:1.45}
.kw-shapes,.kw-styles{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.kw-shapes button,.kw-styles button{display:grid;gap:6px;text-align:left;padding:14px;border:1.5px solid #d4e2dc;border-radius:16px;background:#fff;font:inherit;cursor:pointer;min-height:44px;color:#203b37}
.kw-shapes button[aria-checked=true],.kw-styles button[aria-checked=true]{border-color:var(--teal,#098b80);box-shadow:0 0 0 3px #098b8020;background:#f5fbf9}
.kw-shapes button:disabled{opacity:.55;cursor:not-allowed}
.kw-shapes small,.kw-styles small{color:#617770;line-height:1.4}
.kw-shape-icon{display:block;width:72px;height:56px;border:3px solid #3d4c48;border-radius:4px;position:relative;margin-bottom:4px;background:#f4f1ea}
.kw-shape-icon::before,.kw-shape-icon::after{content:"";position:absolute;background:#7cc8bb}
.kw-shape-linear::before{left:0;right:0;top:0;height:14px}
.kw-shape-lLeft::before{left:0;right:0;top:0;height:14px}.kw-shape-lLeft::after{left:0;top:0;bottom:0;width:14px}
.kw-shape-lRight::before{left:0;right:0;top:0;height:14px}.kw-shape-lRight::after{right:0;top:0;bottom:0;width:14px}
.kw-shape-u::before{left:0;right:0;top:0;height:14px;box-shadow:none}.kw-shape-u::after{left:0;right:0;top:0;bottom:0;background:transparent;border:14px solid #7cc8bb;border-bottom:0;box-sizing:border-box}
.kw-run{border:1px solid #d4e2dc;border-radius:14px;padding:12px 14px;margin:0 0 12px;background:#fff;display:grid;gap:10px}
.kw-run legend{font-weight:650;padding:0 6px}
.kw-switch{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}
.kw-switch input{width:22px;height:22px;accent-color:var(--teal,#098b80)}
.kw-choices{display:grid;gap:4px;background:#fff;border:1px solid #d4e2dc;border-radius:16px;padding:6px 14px}
.kw-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #edf2ef;flex-wrap:wrap}
.kw-choice:last-child{border-bottom:0}
.kw-choice-label{font-weight:600}
.kw-segments{display:flex;gap:4px;padding:3px;background:#eef3f0;border-radius:12px;flex-wrap:wrap}
.kw-segments button{min-height:40px;min-width:44px;padding:6px 14px;border:0;border-radius:9px;background:transparent;font:inherit;color:#3f5852;cursor:pointer}
.kw-segments button[aria-checked=true]{background:#fff;color:#0a6e65;font-weight:650;box-shadow:0 1px 4px #0b3a3320}
.kw-segments button:disabled{opacity:.45;cursor:not-allowed}
.kw-swatches{display:flex;gap:4px}.kw-swatch{flex:1;height:40px;border-radius:8px;border:1px solid #0000001a;background-size:cover;background-position:center}
.kw-summary{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden;border:1px solid #d4e2dc}
.kw-summary th,.kw-summary td{overflow-wrap:anywhere;padding:10px 14px;text-align:left;vertical-align:top;border-bottom:1px solid #edf2ef}
.kw-summary th{width:30%;color:#546a63;font-weight:600}
.kw-notes{margin:12px 0 4px;padding:0;list-style:none;display:grid;gap:6px}
.kw-notes li{background:#eef6f3;border-radius:10px;padding:8px 12px;font-size:14px}
.kw-notes li.warn{background:#fff4e0;color:#6b4a0f}
.kw-error{color:#a3261b;font-weight:600;margin:6px 0 0!important}
.kw-error:empty{display:none}
.kw-actions{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:18px;position:sticky;bottom:0;background:linear-gradient(#eff4f100,#eff4f1 30%)}
.kw-actions button{min-height:46px;min-width:120px;border-radius:12px;font-weight:650}
@media (max-width:760px){
 #modal:has(.kitchen-wizard){width:100%;max-width:100%}
 .kitchen-wizard{grid-template-columns:minmax(0,1fr);min-height:0}
 .kw-steps{border-right:0;border-bottom:1px solid #dce6e1;padding:12px;gap:10px}
 .kw-steps ol{display:flex;overflow-x:auto;gap:6px;scrollbar-width:none}
 .kw-steps li{flex-shrink:0}
 .kw-steps button{min-height:40px;padding:6px 10px;font-size:14px}
 .kw-steps button:not([aria-current=step]){font-size:0;gap:0}
 .kw-steps button:not([aria-current=step]) span{font-size:13px}
 .kw-preview{display:none}
 .kw-body{padding:18px 16px calc(14px + env(safe-area-inset-bottom))}
 .kw-shapes,.kw-styles{grid-template-columns:repeat(2,minmax(0,1fr))}
 .kw-grid{grid-template-columns:minmax(0,1fr)}
 .kw-summary th{width:38%}
 .kw-choice{align-items:flex-start;flex-direction:column;gap:6px}
 .kw-segments{width:100%}.kw-segments button{flex:1}
 .kw-actions button{flex:1;min-width:0}
}
@media (prefers-reduced-motion:reduce){.kitchen-wizard *{transition:none!important;animation:none!important}}
