/* TotalDesign Bedroom Layout Studio — article-scoped, no external dependencies. */
.swa-bedroom{--swa-b-ink:#263e37;--swa-b-muted:#5c7066;--swa-b-accent:#397e66;--swa-b-line:#d9e5dc;font-family:inherit;color:var(--swa-b-ink);border:1px solid #d8e2da;border-radius:21px;background:#fff;box-shadow:0 20px 55px #29433314;overflow:hidden;margin:35px 0 43px;max-width:100%}
.swa-bedroom,.swa-bedroom *{box-sizing:border-box}
.swa-bedroom label{margin-top:0}
.swa-bedroom__hero{background:radial-gradient(circle at 97% -12%,#7ca48a 0%,transparent 40%),linear-gradient(125deg,#16392e,#315d48);color:#fff;padding:32px clamp(18px,4vw,45px) 28px}
.swa-bedroom__eyebrow{letter-spacing:.12em;font-size:11px;font-weight:800;color:#cce6d6;display:flex;gap:10px;align-items:center;margin-bottom:16px}
.swa-bedroom__eyebrow span{font-size:19px;color:#d6ebc9}
.swa-bedroom__heading{font-size:clamp(26px,3vw,39px)!important;line-height:1.15!important;letter-spacing:-.035em;font-weight:780;color:#fff!important;max-width:690px}
.swa-bedroom__hero>.swa-bedroom__intro{font-size:15px;line-height:1.65;color:#e3f0e5;max-width:710px;margin:14px 0 19px}
.swa-bedroom__hero-stats{display:flex;flex-wrap:wrap;gap:10px 28px;border-top:1px solid #ffffff40;padding-top:15px;color:#e1ebdf;font-size:12px}
.swa-bedroom__hero-stats strong{font-size:18px;color:#fff;margin-right:4px}
.swa-bedroom__workspace{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr)}
.swa-bedroom__visual{background:#f3f6f0;padding:22px clamp(15px,2.7vw,31px) 27px;min-width:0}
.swa-bedroom__canvas-top{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;margin:0 0 15px}
.swa-bedroom__canvas-top b{color:#356953}
.swa-bedroom__canvas-top small{font-size:11px;color:#708276}
.swa-bedroom__live-dot{display:inline-block;width:8px;height:8px;background:#3da66f;border-radius:50%;margin-right:5px}
.swa-bedroom__plan{display:block;width:100%;height:auto;border:1px solid #d6e2d6;border-radius:15px;background:#edf3e9;box-shadow:0 10px 26px #2c483315}
.swa-bedroom__legend{display:flex;flex-wrap:wrap;gap:8px 17px;margin-top:15px;font-size:11px;color:#53655a}
.swa-bedroom__legend>span{display:inline-flex;gap:6px;align-items:center}
.swa-bedroom__key{display:inline-block;width:11px;height:11px;border-radius:3px;border:1px solid #b5c5b8}
.swa-bedroom__key--bed{background:#c9ad93;border-color:#8b6b51}
.swa-bedroom__key--wardrobe{background:#cee1d8;border-color:#517e69}
.swa-bedroom__key--door{background:#cfe9d7;border-color:#68947a}
.swa-bedroom__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.swa-bedroom__metrics>div{border:1px solid #e0e8dd;background:#fff;border-radius:12px;padding:14px 14px 12px;min-width:0}
.swa-bedroom__metrics span{display:block;font-size:11px;color:#6c796d;line-height:1.45;margin-bottom:6px}
.swa-bedroom__metrics strong{font-size:29px;letter-spacing:-.05em;white-space:nowrap;color:#234b3b}
.swa-bedroom__metrics small{font-size:13px;font-weight:500;letter-spacing:0}
.swa-bedroom__assessment{font-size:13px;line-height:1.55;color:#285a42;background:#e3f1e6;border-left:4px solid #41875d;border-radius:0 11px 11px 0;margin:14px 0 0!important;padding:13px 14px}
.swa-bedroom[data-alert="tight"] .swa-bedroom__assessment{background:#fff0d8;border-color:#c78e30;color:#754f1b}
.swa-bedroom[data-alert="collision"] .swa-bedroom__assessment{background:#f9e3df;border-color:#c96c58;color:#7c3a2e}
.swa-bedroom[data-alert="collision"] [data-bed-frame]{stroke:#bf6351;stroke-width:5}
.swa-bedroom__controls{padding:25px clamp(16px,3vw,33px) 30px;min-width:0}
.swa-bedroom__step{display:flex;align-items:center;gap:12px;margin:6px 0 18px}
.swa-bedroom__step:not(:first-child){border-top:1px solid var(--swa-b-line);margin-top:24px;padding-top:25px}
.swa-bedroom__step>b{display:grid;place-items:center;width:33px;height:33px;flex:none;border-radius:10px;background:#e4efe7;color:#3c7456;font-size:12px}
.swa-bedroom__step strong{display:block;font-size:16px;color:#243f33}
.swa-bedroom__step .swa-bedroom__step-note{font-size:12px;color:#758177;margin:3px 0 0}
.swa-bedroom__controls label{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 11px;font-size:13px;font-weight:740;color:#395344;margin:18px 0 8px}
.swa-bedroom__controls label output{color:#1d7553}
.swa-bedroom__controls input[type="range"]{display:block;width:100%;accent-color:#377e62;cursor:pointer;margin:0;padding:0}
.swa-bedroom__scale{display:flex;justify-content:space-between;font-size:10px;color:#78857b;margin-top:3px}
.swa-bedroom__controls select{width:100%;max-width:100%;padding:12px;border-radius:10px!important;border:1px solid #d4e0d6!important;color:#34513f;background:#fbfdfb;font-size:13px;line-height:1.35;cursor:pointer}
.swa-bedroom__layout-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.swa-bedroom button{font-family:inherit;cursor:pointer}
.swa-bedroom__layout-options button{display:grid;gap:5px;justify-items:center;align-content:center;min-height:72px;font-size:11px!important;font-weight:700!important;line-height:1.2;padding:10px 4px!important;border:1px solid #d8e4da!important;border-radius:11px!important;color:#3e5949!important;background:#f7faf7!important;box-shadow:none!important}
.swa-bedroom__layout-options button span{font-size:23px;color:#5b8b72}
.swa-bedroom__layout-options button[aria-pressed="true"]{background:#e6f1e7!important;border:2px solid #368761!important;padding:9px 3px!important;color:#255c42!important}
.swa-bedroom__hint{background:#f1f6ef;border-radius:10px;padding:13px 14px;margin-top:17px;color:#385444;font-size:12px}
.swa-bedroom__hint strong{font-size:12px}
.swa-bedroom__hint .swa-bedroom__hint-body{line-height:1.55;margin:4px 0 0}
.swa-bedroom__reset{margin-top:17px;padding:12px 15px!important;border:1px solid #376c51!important;background:#2e6049!important;color:#fff!important;border-radius:10px!important;font-size:13px!important;font-weight:750!important;width:100%}
.swa-bedroom__reset:hover{background:#1e4935!important}
.swa-bedroom__disclaimer{font-size:11px!important;line-height:1.6;color:#718074;margin:17px 0 0!important}
.swa-bedroom :is(button,input,select):focus-visible{outline:3px solid #38855e!important;outline-offset:3px!important}
@media(max-width:790px){.swa-bedroom__workspace{display:block}.swa-bedroom__visual{padding:17px}.swa-bedroom__controls{padding:24px 22px 27px}.swa-bedroom__plan{max-width:560px;margin:auto}.swa-bedroom{border-radius:15px}.swa-bedroom__hero{padding:27px 22px}}
@media(max-width:370px){.swa-bedroom__metrics strong{font-size:23px}.swa-bedroom__metrics>div{padding:11px}.swa-bedroom__hero-stats{gap:8px 15px}.swa-bedroom__layout-options button{font-size:10px!important}}
@media(prefers-reduced-motion:reduce){.swa-bedroom *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
