.kitchen-visualisation{margin:28px 0;padding:26px;background:#f1eee7;border:1px solid #d9d6cc;border-radius:6px;color:#283d36}.visual-heading{display:flex;align-items:start;justify-content:space-between;gap:16px}.visual-heading h2{font-size:clamp(30px,4vw,43px);font-weight:400;margin:9px 0 12px;letter-spacing:-1px}.visual-badge{flex:none;font-size:10px;border:1px solid #cccfc5;border-radius:20px;padding:7px 10px;margin-top:4px}.kitchen-visualisation>p{line-height:1.6;max-width:640px}.visual-placeholder{background:#e6e7df;border:1px solid #d6dacd;overflow:hidden;display:flex;align-items:center;flex-direction:column;margin:20px 0;padding:16px;max-height:330px}.visual-placeholder svg{width:100%;height:235px;max-width:400px}.visual-placeholder>span{font-size:12px;padding:12px}.visual-result{margin:22px 0 14px}.visual-result img{width:100%;height:auto;display:block;border-radius:3px}.visual-result figcaption{padding:10px 0;font-size:12px}.visual-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.visual-actions button:disabled{opacity:.55;cursor:not-allowed}.visual-consent{display:flex!important;align-items:flex-start;gap:10px;font-size:12px!important;line-height:1.6!important;max-width:650px;cursor:pointer}.visual-consent input{width:18px!important;height:18px!important;margin-top:2px;flex:none;accent-color:#283d36}.visual-help,.visual-details{font-size:12px;line-height:1.6}.visual-details summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.visual-status{display:flex;align-items:center;gap:10px;font-size:13px;line-height:1.5;margin:12px 0}.visual-status:empty{display:none}.visual-stale{background:#fff5d8;padding:12px 15px;font-size:13px}.visual-spinner{width:15px;height:15px;border:2px solid #c5cdc2;border-top-color:#283d36;border-radius:50%;animation:visual-spin 1s linear infinite;flex:none}@keyframes visual-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.visual-spinner{animation:none}}@media(max-width:600px){.kitchen-visualisation{padding:18px;margin:20px 0}.visual-heading{display:block}.visual-badge{display:inline-block;margin-bottom:5px}.visual-actions{display:grid}.visual-actions button{width:100%}.visual-placeholder>span{font-size:10px}.visual-consent{font-size:12px!important}}
