:root{color-scheme:light}*{box-sizing:border-box}.calculator-page{margin:0;background:#edf2f5}.bsg-calculator{--navy:#0b2d4d;--blue:#164d75;--red:#c63f3a;--ink:#132332;--muted:#607181;--paper:#fff;--soft:#f4f7f9;--line:#d6e0e7;min-height:100vh;color:var(--ink);background:#edf2f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}.bsg-calculator *,.bsg-calculator *:before,.bsg-calculator *:after{box-sizing:border-box}.bsg-calculator button,.bsg-calculator input{font:inherit}.bsg-calculator button,.bsg-calculator a{-webkit-tap-highlight-color:transparent}.bsg-calculator button:focus-visible,.bsg-calculator a:focus-visible,.bsg-calculator input:focus-visible{outline:3px solid #164d7547;outline-offset:2px}.bsg-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}
.bsg-header{min-height:78px;padding:12px clamp(18px,4vw,64px);background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:4px solid var(--red)}.bsg-brand{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:13px}.bsg-brand-mark{width:48px;height:48px;display:grid;place-items:center;background:#fff;color:var(--navy);border-radius:6px;border-bottom:5px solid var(--red);font-size:12px;font-weight:900}.bsg-brand>span:last-child{display:flex;flex-direction:column}.bsg-brand strong{font-size:clamp(15px,2vw,20px);line-height:1.15}.bsg-brand small{font-size:12px;color:#c8d7e3;letter-spacing:.05em;text-transform:uppercase}.bsg-header-note{font-size:13px;color:#c8d7e3}
.bsg-main{width:min(1600px,100%);margin:auto;padding:28px clamp(14px,3vw,46px) 60px}.bsg-intro{padding:16px 4px 28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,500px);gap:40px;align-items:end}.bsg-eyebrow{margin:0 0 6px;color:var(--red);font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.bsg-intro h1{margin:0;max-width:790px;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4vw,58px);font-weight:400;line-height:1.02;letter-spacing:-.045em}.bsg-intro>p{margin:0;color:var(--muted);font-size:16px;line-height:1.65}
.bsg-workspace{min-height:735px;display:grid;grid-template-columns:340px minmax(470px,1fr) 320px;background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 24px 70px #0b2d4d24}.bsg-inventory,.bsg-result{padding:28px 24px;min-width:0}.bsg-inventory{border-right:1px solid var(--line)}.bsg-result{border-left:1px solid var(--line)}.bsg-section-heading{display:flex;align-items:flex-start;gap:12px}.bsg-step{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font-size:13px;font-weight:800}.bsg-calculator h2{margin:0;color:var(--navy);font:400 24px/1.15 Georgia,"Times New Roman",serif;letter-spacing:-.02em}.bsg-helper{margin:16px 0 8px;color:var(--muted);font-size:13px}
.bsg-search{height:44px;margin-top:20px;padding:0 12px;display:flex;align-items:center;gap:8px;color:var(--muted);background:var(--soft);border:1px solid var(--line);border-radius:7px}.bsg-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:14px}.bsg-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #164d751a}.bsg-categories{margin-top:10px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin;padding-bottom:3px}.bsg-categories button{flex:0 0 auto;min-height:34px;padding:6px 10px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--muted);font-size:12px;cursor:pointer}.bsg-categories button.active{background:var(--navy);border-color:var(--navy);color:#fff}.bsg-item-grid{min-height:190px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.bsg-item-button{min-height:82px;padding:8px 4px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font-size:12px;cursor:pointer;transition:.15s}.bsg-item-button:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 6px 15px #0b2d4d1a}.bsg-item-button b{position:absolute;top:5px;right:5px;min-width:20px;height:20px;padding:0 5px;display:grid;place-items:center;border-radius:10px;background:var(--red);color:#fff;font-size:11px}.bsg-no-results{grid-column:1/-1;margin:28px 0;text-align:center;color:var(--muted);font-size:14px}
.bsg-item-symbol{--item-color:#777;width:42px;height:34px;position:relative;display:block;border-radius:4px;background:var(--item-color);box-shadow:inset 0 -4px #0000001f}.bsg-item-symbol i{position:absolute;display:block}.bsg-item-symbol.model-box,.bsg-item-symbol.model-tote{width:36px;height:30px}.bsg-item-symbol .tape{top:0;left:45%;width:5px;height:100%;background:#ffffff59}.bsg-item-symbol .lid{left:-2px;right:-2px;top:3px;height:5px;background:#ffffff73;border-radius:3px}.bsg-item-symbol.model-sofa{width:48px;height:27px;margin-top:8px}.bsg-item-symbol .back{left:4px;right:4px;bottom:20px;height:14px;border-radius:5px 5px 0 0;background:var(--item-color);box-shadow:inset 0 -3px #0000001f}.bsg-item-symbol .seat{left:6px;right:6px;bottom:4px;height:11px;border-radius:3px;background:#ffffff2e}.bsg-item-symbol.model-chair{width:34px;height:28px;margin-top:7px}.bsg-item-symbol.model-table,.bsg-item-symbol.model-desk{height:8px;width:45px;margin-bottom:18px}.bsg-item-symbol .legs{left:5px;right:5px;top:7px;height:19px;border:solid var(--item-color);border-width:0 4px}.bsg-item-symbol .drawers{inset:5px;border-block:2px solid #ffffff80}.bsg-item-symbol.model-shelf{background:transparent;border:4px solid var(--item-color);box-shadow:none}.bsg-item-symbol .shelves{inset:7px 0;border-block:3px solid var(--item-color)}.bsg-item-symbol.model-mattress{height:18px;width:48px;border-radius:10px;background:#e7e2d6;border:2px solid #aeb7bb;box-shadow:none}.bsg-item-symbol .pillow{top:3px;left:4px;width:12px;height:8px;border:1px solid #aeb7bb;border-radius:4px}.bsg-item-symbol.model-appliance{height:40px;width:28px}.bsg-item-symbol .handle{right:4px;top:8px;width:2px;height:11px;background:#61717a}.bsg-item-symbol .drum{width:20px;height:20px;border:3px solid #71818a;border-radius:50%;left:11px;top:8px;background:#d9eef5}.bsg-item-symbol.model-tv{height:27px;width:44px;background:#24323a;border:3px solid #52636e}.bsg-item-symbol .screen{inset:3px;background:linear-gradient(135deg,#89afc2,#263f4e)}.bsg-item-symbol.model-bike{width:52px;background:transparent;box-shadow:none}.bsg-item-symbol .wheel{width:22px;height:22px;bottom:0;border:3px solid #3f4c54;border-radius:50%}.bsg-item-symbol .wheel.one{left:1px}.bsg-item-symbol .wheel.two{right:1px}.bsg-item-symbol.model-bike:after{content:"";position:absolute;left:16px;top:11px;width:19px;height:14px;border:3px solid var(--item-color);transform:skew(-18deg)}
.bsg-selection-heading{margin-top:22px;padding-bottom:8px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.bsg-selection-heading h3{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:13px}.bsg-selection-heading h3 span{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:4px;padding:0 5px;border-radius:12px;background:#e6edf2}.bsg-text-button{min-height:36px;padding:5px 3px;border:0;background:transparent;color:var(--red);font-size:13px;cursor:pointer}.bsg-text-button:disabled{color:#9aa7b0;cursor:default}.bsg-selected-items{max-height:236px;overflow-y:auto;scrollbar-width:thin}.bsg-empty-state{padding:22px 0 10px;color:#81909b;text-align:center;font-size:13px}.bsg-empty-state span{width:34px;height:34px;margin:auto;display:grid;place-items:center;border:1px dashed #9ba9b2;border-radius:50%;font-size:20px}.bsg-empty-state p{margin:7px 0 0}.bsg-selected-row{min-height:60px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:9px;border-bottom:1px solid #e8edf1}.bsg-selected-row .bsg-item-symbol{transform:scale(.72)}.bsg-selected-row>span:nth-child(2){min-width:0;display:flex;flex-direction:column}.bsg-selected-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.bsg-selected-row small{color:var(--muted);font-size:11px}.bsg-quantity{display:grid;grid-template-columns:40px 28px 40px;align-items:center;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff}.bsg-quantity button{width:40px;height:40px;border:0;background:#fff;color:var(--navy);font-size:20px;cursor:pointer}.bsg-quantity button:hover{background:var(--soft)}.bsg-quantity span{text-align:center;font-size:13px;font-weight:800}
.bsg-visual{min-width:0;display:flex;flex-direction:column;background:#f8fafb}.bsg-visual-toolbar{min-height:92px;padding:22px 28px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.bsg-view-control{display:flex;overflow:hidden;border:1px solid var(--line);border-radius:23px;background:#fff}.bsg-view-control button{min-width:44px;height:44px;padding:0 11px;border:0;background:#fff;color:var(--navy);font-size:14px;cursor:pointer}.bsg-view-control button+button{border-left:1px solid var(--line)}.bsg-view-control button:hover{background:var(--soft)}.bsg-scene-wrap{flex:1;min-height:540px;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 56%,#fff 0,#edf2f5 62%,#e3eaf0 100%);border-block:1px solid var(--line)}.bsg-scene{width:540px;height:470px;display:grid;place-items:center;perspective:1100px;transform:translateY(15px)}.bsg-room{--floor-width:300px;--floor-depth:250px;--foot-scale:30px;--wall-height:170px;width:var(--floor-width);height:var(--floor-depth);position:relative;transform-style:preserve-3d;transform:rotateX(58deg) rotateZ(-38deg);transition:transform .35s}.bsg-floor{width:var(--floor-width);height:var(--floor-depth);position:absolute;transform-style:preserve-3d;background:#d1b28b;border:3px solid #73593f;box-shadow:38px 48px 48px #1a2f3e40;transition:.35s}.bsg-floor-grid{position:absolute;inset:0;opacity:.38;background-image:linear-gradient(#49372652 1px,transparent 1px),linear-gradient(90deg,#49372652 1px,transparent 1px);background-size:var(--foot-scale) var(--foot-scale)}.bsg-wall{position:absolute;background-color:#e8edf0;background-image:repeating-linear-gradient(0deg,#46566117 0 1px,transparent 1px 21px);border:2px solid #aebac1;backface-visibility:visible;transition:.35s}.bsg-wall-back{width:var(--floor-width);height:var(--wall-height);top:calc(var(--wall-height)*-1);left:0;transform-origin:bottom;transform:rotateX(-90deg)}.bsg-wall-left{width:var(--floor-depth);height:var(--wall-height);left:calc(var(--floor-depth)*-1);top:0;transform-origin:right bottom;transform:rotateY(90deg)}.bsg-wall span{position:absolute;color:#60727c;font-size:12px;font-weight:800;opacity:.85}.bsg-wall-back span{bottom:8px;left:50%;transform:translateX(-50%)}.bsg-wall-left span{right:8px;bottom:50%}.bsg-placed-items{position:absolute;inset:0;transform-style:preserve-3d}
.bsg-object{position:absolute;left:var(--left);top:var(--top);width:var(--width);height:var(--depth);transform-style:preserve-3d;animation:bsg-place .28s ease both;animation-delay:var(--delay)}.bsg-object-body{position:absolute;inset:2px;transform-style:preserve-3d;transform:translateZ(calc(var(--oh)/2))}.bsg-object .face{display:block;position:absolute;background:var(--color);border:1px solid #141e2347}.bsg-object .face.top{inset:0;transform:translateZ(calc(var(--oh)/2));filter:brightness(1.13)}.bsg-object .face.front{left:0;right:0;bottom:0;height:var(--oh);transform-origin:bottom;transform:rotateX(90deg);filter:brightness(.88)}.bsg-object .face.side{top:0;right:0;bottom:0;width:var(--oh);transform-origin:right;transform:rotateY(90deg);filter:brightness(.72)}.bsg-object-body>span:last-child{position:absolute;z-index:6;left:50%;top:50%;transform:translate(-50%,-50%);color:#ffffffe6;font-size:10px;line-height:1;font-weight:800;text-shadow:0 1px 2px #0006;white-space:nowrap}.bsg-object .detail{position:absolute;z-index:4;display:block}.bsg-object .back{left:4%;right:4%;top:4%;height:24%;background:var(--color);border:1px solid #0004;transform:translateZ(calc(var(--oh)/2))}.bsg-object .arm{top:20%;bottom:7%;width:12%;background:var(--color);border:1px solid #0004;transform:translateZ(calc(var(--oh)/2))}.bsg-object .arm.left{left:3%}.bsg-object .arm.right{right:3%}.bsg-object.model-table .face.front,.bsg-object.model-table .face.side,.bsg-object.model-desk .face.front,.bsg-object.model-desk .face.side{height:12px}.bsg-object .leg{width:7px;height:7px;border-radius:50%;background:#4f3829}.bsg-object .leg.a{left:5%;top:8%}.bsg-object .leg.b{right:5%;top:8%}.bsg-object .leg.c{left:5%;bottom:8%}.bsg-object .leg.d{right:5%;bottom:8%}.bsg-object .drawer,.bsg-object .shelf{left:9%;right:9%;height:2px;background:#ffffff8c;transform:translateZ(calc(var(--oh)/2 + 2px))}.bsg-object .one{top:25%}.bsg-object .two{top:50%}.bsg-object .three{top:75%}.bsg-object .washer-door{width:45%;aspect-ratio:1;left:28%;top:25%;border:3px solid #657782;background:#9ebccc;border-radius:50%;transform:translateZ(calc(var(--oh)/2 + 2px))}.bsg-object .screen{inset:9%;background:linear-gradient(135deg,#8eb5c8,#1d3443);border:2px solid #101a20;transform:translateZ(calc(var(--oh)/2 + 2px))}.bsg-object.model-bike .face{opacity:.18}.bsg-object .bike-wheel{width:37%;aspect-ratio:1;top:30%;border:4px solid #26343c;border-radius:50%;transform:translateZ(calc(var(--oh)/2 + 3px))}.bsg-object .bike-wheel.one{left:3%}.bsg-object .bike-wheel.two{right:3%}.bsg-object .bike-frame{left:31%;top:37%;width:37%;height:34%;border:4px solid var(--color);transform:skew(-20deg) translateZ(calc(var(--oh)/2 + 4px))}.bsg-object .box-tape,.bsg-object .tote-lid,.bsg-object .mattress-line,.bsg-object .slats{inset:8%;border:2px solid #ffffff7a;transform:translateZ(calc(var(--oh)/2 + 2px))}
.bsg-capacity-badge{width:84px;height:84px;position:absolute;right:22px;bottom:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:#fff;border:1px solid var(--line);box-shadow:0 9px 25px #0b2d4d21}.bsg-capacity-badge span{color:var(--navy);font:23px/1 Georgia,serif}.bsg-capacity-badge small{margin-top:4px;color:var(--muted);font-size:9px;text-transform:uppercase}.bsg-room-legend{position:absolute;left:18px;bottom:16px;color:var(--muted);font-size:11px}.bsg-room-legend i{display:inline-block;width:12px;height:12px;margin-right:4px;border:1px solid #8a6c4d;background:#d1b28b;vertical-align:-2px}.bsg-fit-status{min-height:82px;padding:14px 24px;display:flex;align-items:center;justify-content:center;gap:13px;background:#fff}.bsg-fit-status p{margin:0;display:flex;flex-direction:column;font-size:13px;color:var(--muted)}.bsg-fit-status strong{color:var(--navy);font:400 18px Georgia,serif}.bsg-status-dot{width:12px;height:12px;flex:0 0 auto;border-radius:50%;background:#2d7b5d;box-shadow:0 0 0 5px #deeee7}.bsg-status-dot.warning{background:#c27a19;box-shadow:0 0 0 5px #f6ead7}.bsg-status-dot.danger{background:var(--red);box-shadow:0 0 0 5px #f5dedd}
.bsg-recommend-card{margin:25px 0 22px;padding:22px;text-align:center;border-radius:8px;color:#fff;background:linear-gradient(145deg,var(--navy),#123e63);box-shadow:0 12px 28px #0b2d4d33}.bsg-recommend-card p{margin:0;color:#d4e1ea;font-size:12px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.bsg-recommend-card strong{display:block;margin:8px 0 5px;font:400 46px/1 Georgia,serif}.bsg-recommend-card>span{display:block;min-height:38px;color:#d4e1ea;font-size:13px}.bsg-meter{height:6px;margin:16px 0 7px;overflow:hidden;border-radius:4px;background:#47647b}.bsg-meter i{display:block;width:0;height:100%;border-radius:4px;background:#ef6259;transition:width .25s}.bsg-recommend-card small{color:#c8d7e3;font-size:11px}.bsg-secondary-button{min-height:42px;margin-top:14px;padding:8px 14px;border:1px solid #ffffff8c;border-radius:5px;background:transparent;color:#fff;font-size:13px;font-weight:700;cursor:pointer}.bsg-unit-picker>div{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.bsg-unit-button{min-height:48px;padding:7px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--navy);font-size:13px;cursor:pointer}.bsg-unit-button small{display:block;color:var(--red);font-size:9px;font-weight:800;text-transform:uppercase}.bsg-unit-button.active{border-color:var(--blue);box-shadow:inset 0 0 0 2px var(--blue);background:#eef5f9;font-weight:800}.bsg-unit-button.recommended:not(.active){border-color:#e4a5a1}.bsg-unit-note{margin-top:20px;padding-top:18px;display:flex;gap:10px;border-top:1px solid var(--line)}.bsg-unit-note>span{color:var(--red);font-size:20px}.bsg-unit-note p{margin:0;color:var(--muted);font-size:12px}.bsg-unit-note strong{color:var(--navy);font-size:14px}.bsg-primary-cta{min-height:50px;margin-top:20px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;border-radius:6px;background:var(--red);color:#fff;text-decoration:none;font-size:15px;font-weight:800;box-shadow:0 8px 18px #c63f3a38;transition:.15s}.bsg-primary-cta:hover{background:#a72e2a;transform:translateY(-1px)}.bsg-disclaimer{margin:10px 2px 0;color:var(--muted);font-size:11px}.bsg-mobile-result{display:none}.bsg-footer{max-width:1600px;margin:auto;padding:20px clamp(18px,4vw,46px) 34px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px}.bsg-footer p{margin:0}@keyframes bsg-place{from{opacity:0;transform:translateZ(20px) scale(.9)}to{opacity:1;transform:none}}
@media(max-width:1180px){.bsg-workspace{grid-template-columns:320px minmax(440px,1fr)}.bsg-result{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:24px;align-items:center}.bsg-result>.bsg-section-heading{grid-column:1/-1}.bsg-recommend-card{margin:0}.bsg-unit-note{margin:0;padding:0;border:0}.bsg-primary-cta{margin-top:12px}.bsg-disclaimer{grid-column:3}}
@media(max-width:780px){.bsg-header{min-height:68px}.bsg-header-note{display:none}.bsg-brand-mark{width:42px;height:42px}.bsg-brand small{font-size:10px}.bsg-main{padding:18px 10px 110px}.bsg-intro{padding:10px 5px 20px;display:block}.bsg-intro>p{margin-top:14px;font-size:15px}.bsg-intro h1{font-size:38px}.bsg-workspace{display:flex;flex-direction:column;border-radius:9px}.bsg-inventory{border-right:0;border-bottom:1px solid var(--line)}.bsg-inventory,.bsg-result{padding:24px 18px}.bsg-item-grid{grid-template-columns:repeat(4,1fr)}.bsg-visual-toolbar{padding:18px}.bsg-scene-wrap{min-height:480px}.bsg-scene{width:500px;height:430px;transform:translateY(14px) scale(.84)}.bsg-capacity-badge{right:14px;bottom:16px}.bsg-result{display:block}.bsg-recommend-card{margin:22px 0}.bsg-unit-picker>div{grid-template-columns:repeat(4,1fr)}.bsg-unit-note{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.bsg-mobile-result{position:fixed;z-index:50;left:10px;right:10px;bottom:10px;min-height:72px;padding:10px 10px 10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:9px;background:var(--navy);color:#fff;box-shadow:0 12px 35px #0b2d4d59}.bsg-mobile-result span{display:flex;flex-direction:column}.bsg-mobile-result small{color:#c8d7e3;font-size:10px;text-transform:uppercase}.bsg-mobile-result strong{font:24px/1.1 Georgia,serif}.bsg-mobile-result a{min-height:48px;padding:0 17px;display:grid;place-items:center;border-radius:6px;background:var(--red);color:#fff;text-decoration:none;font-size:14px;font-weight:800}.bsg-footer{padding-bottom:100px;display:block}.bsg-footer p+p{margin-top:6px}}
@media(max-width:520px){.bsg-brand strong{font-size:14px}.bsg-brand small{font-size:9px}.bsg-intro h1{font-size:33px}.bsg-item-grid{grid-template-columns:repeat(3,1fr)}.bsg-item-button{min-height:86px}.bsg-scene-wrap{min-height:420px}.bsg-scene{transform:translateY(10px) scale(.68)}.bsg-view-control button:nth-child(2){display:none}.bsg-unit-picker>div{grid-template-columns:repeat(3,1fr)}.bsg-room-legend{display:none}.bsg-selected-row{grid-template-columns:38px minmax(0,1fr) auto}.bsg-quantity{grid-template-columns:38px 25px 38px}.bsg-quantity button{width:38px}.bsg-capacity-badge{width:74px;height:74px}.bsg-capacity-badge span{font-size:20px}}
@media(prefers-reduced-motion:reduce){.bsg-calculator *,.bsg-calculator *:before,.bsg-calculator *:after{animation:none!important;transition:none!important}}
