:root{color-scheme:light;font-family:var(--sdh-font-family);background:var(--sdh-bg-canvas);color:var(--sdh-text-primary)}*{box-sizing:border-box}body,html{min-width:320px;background:var(--sdh-bg-canvas)}body{margin:0;min-height:100vh}button,input{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a,button{color:inherit}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.configurator__render-stage[data-preview-suspended=true]{visibility:hidden;pointer-events:none}.wardrobe-bay-label{border-radius:50%!important;min-width:44px;min-height:44px;font-size:16px!important}.configurator{min-height:100vh;overflow-x:hidden;background:var(--sdh-bg-canvas)}.configurator__header{position:relative;z-index:10;display:grid;min-height:72px;gap:var(--sdh-space-4);align-items:center;padding:var(--sdh-space-3) var(--sdh-space-6);border-bottom:1px solid var(--sdh-border-default);background:var(--sdh-bg-surface)}.configurator__brand{color:var(--sdh-action-primary-hover);font-size:.75rem;font-weight:800;letter-spacing:.04em}.configurator__product p{margin:0}.configurator__product-name{overflow:hidden;font-size:.95rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.configurator__save-state{margin-top:2px!important;color:var(--sdh-text-tertiary);font-size:.7rem}.configurator__reset{min-height:var(--sdh-control-size-compact);padding:0 var(--sdh-space-4);border:1px solid var(--sdh-border-strong);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);cursor:pointer;font-size:.85rem;font-weight:750}.configurator__reset:hover{border-color:var(--sdh-border-focus);color:var(--sdh-action-primary)}.configurator__header-actions{display:flex;gap:var(--sdh-space-2);align-items:center}.saved-design-manager{position:relative}.saved-design-manager__trigger{display:flex;min-height:var(--sdh-control-size-compact);gap:var(--sdh-space-2);align-items:center;padding:0 var(--sdh-space-4);border:1px solid var(--sdh-action-primary);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover);cursor:pointer;font-size:.82rem;font-weight:800}.saved-design-manager__trigger small{padding:3px 7px;border-radius:var(--sdh-radius-full);background:var(--sdh-bg-surface);color:var(--sdh-text-secondary);font-size:.62rem;font-weight:750}.saved-design-manager__dialog{position:absolute;z-index:30;top:calc(100% + var(--sdh-space-3));right:0;width:min(430px,calc(100vw - 32px));max-height:min(720px,calc(100vh - 96px));overflow-y:auto;padding:var(--sdh-space-5);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-xl);background:var(--sdh-bg-surface);box-shadow:0 22px 70px rgb(25 24 22/18%)}.saved-design-manager__dialog>header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--sdh-space-4)}.saved-design-manager__dialog>header h2,.saved-design-manager__dialog>header p{margin:0}.saved-design-manager__dialog>header p{color:var(--sdh-action-primary);font-size:.65rem;font-weight:850;letter-spacing:.08em}.saved-design-manager__dialog>header h2{margin-top:3px;font-size:1.25rem}.saved-design-manager__dialog>header button{display:grid;width:36px;height:36px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-surface);cursor:pointer;font-size:1.35rem;place-items:center}.saved-design-manager__identity{display:flex;justify-content:space-between;margin:0 0 var(--sdh-space-4);padding:var(--sdh-space-3);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-subtle);color:var(--sdh-text-secondary);font-size:.75rem}.saved-design-manager__identity strong{overflow:hidden;max-width:68%;color:var(--sdh-text-primary);text-overflow:ellipsis;white-space:nowrap}.saved-design-manager__name,.saved-design-manager__sign-in label{display:grid;gap:6px;color:var(--sdh-text-secondary);font-size:.75rem;font-weight:750}.saved-design-manager__name input,.saved-design-manager__revision-fields input,.saved-design-manager__revision-fields textarea,.saved-design-manager__sign-in input{min-height:var(--sdh-control-size-compact);padding:0 var(--sdh-space-3);border:1px solid var(--sdh-border-strong);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);color:var(--sdh-text-primary)}.saved-design-manager__name input:focus,.saved-design-manager__revision-fields input:focus,.saved-design-manager__revision-fields textarea:focus,.saved-design-manager__sign-in input:focus{border-color:var(--sdh-border-focus);outline:3px solid rgb(25 102 78/12%)}.saved-design-manager__revision-fields{display:grid;gap:var(--sdh-space-2);margin-top:var(--sdh-space-3);padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-subtle)}.saved-design-manager__revision-fields label{display:grid;gap:5px;color:var(--sdh-text-secondary);font-size:.7rem;font-weight:750}.saved-design-manager__revision-fields label>span{display:flex;align-items:center;justify-content:space-between}.saved-design-manager__revision-fields label small{color:var(--sdh-text-tertiary);font-size:.58rem;font-weight:650}.saved-design-manager__revision-fields input,.saved-design-manager__revision-fields textarea{width:100%;padding:var(--sdh-space-2) var(--sdh-space-3);resize:vertical;font:inherit;font-weight:600}.saved-design-manager__actions{display:flex;gap:var(--sdh-space-2);margin-top:var(--sdh-space-3)}.saved-design-manager__actions button,.saved-design-manager__sign-in button{min-height:var(--sdh-control-size-compact);padding:0 var(--sdh-space-3);border:1px solid var(--sdh-border-strong);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);cursor:pointer;font-size:.76rem;font-weight:800}.saved-design-manager__actions .saved-design-manager__save,.saved-design-manager__sign-in button{flex:1 1;border-color:var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.saved-design-manager__actions button:disabled,.saved-design-manager__sign-in button:disabled{cursor:wait;opacity:.55}.saved-design-manager__list{margin-top:var(--sdh-space-5);padding-top:var(--sdh-space-4);border-top:1px solid var(--sdh-border-default)}.saved-design-manager__list h3,.saved-design-manager__list p{margin:0}.saved-design-manager__list h3{font-size:.82rem}.saved-design-manager__list>p{margin-top:var(--sdh-space-3);color:var(--sdh-text-tertiary);font-size:.76rem}.saved-design-manager__list ul{display:grid;gap:var(--sdh-space-2);padding:0;margin:var(--sdh-space-3) 0 0;list-style:none}.saved-design-manager__list li{display:flex;gap:var(--sdh-space-2);align-items:center;padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md)}.saved-design-manager__list a{display:flex;min-width:0;flex:1 1;gap:var(--sdh-space-3);align-items:center;text-decoration:none}.saved-design-manager__list a:hover strong{color:var(--sdh-action-primary)}.saved-design-manager__list a strong{overflow:hidden;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.saved-design-manager__list li>small,.saved-design-manager__list-copy>span{color:var(--sdh-text-tertiary);font-size:.66rem}.saved-design-manager__list-copy{display:grid;min-width:0;flex:1 1;gap:3px}.saved-design-thumbnail{position:relative;display:block;width:64px;height:64px;flex:0 0 64px;overflow:hidden;padding:5px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-subtle)}.saved-design-thumbnail img,.saved-design-thumbnail svg{display:block;width:100%;height:100%;object-fit:cover}.saved-design-thumbnail img{position:absolute;inset:0;opacity:0;transition:opacity var(--sdh-motion-250) ease}.saved-design-thumbnail img.is-ready{opacity:1}.saved-design-thumbnail>small{position:absolute;right:3px;bottom:3px;left:3px;overflow:hidden;padding:2px 4px;border-radius:4px;background:rgb(25 24 22/78%);color:#fff;font-size:.48rem;font-weight:800;line-height:1.25;text-align:center;text-overflow:ellipsis;white-space:nowrap}.saved-design-thumbnail>small.is-failed{background:rgb(143 43 43/90%)}.saved-design-manager__list li>small{padding:3px 7px;border-radius:var(--sdh-radius-full);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary);font-weight:800}.saved-design-manager__danger-zone,.saved-design-manager__history,.saved-design-manager__sharing{margin-top:var(--sdh-space-5);padding-top:var(--sdh-space-4);border-top:1px solid var(--sdh-border-default)}.saved-design-manager__share-create{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sdh-space-2);align-items:end;margin-top:var(--sdh-space-3)}.saved-design-manager__share-create label{display:grid;gap:5px;color:var(--sdh-text-secondary);font-size:.68rem;font-weight:750}.saved-design-manager__share-create button,.saved-design-manager__share-create select,.saved-design-manager__share-list button,.saved-design-manager__share-result a,.saved-design-manager__share-result button{min-height:38px;border:1px solid var(--sdh-border-strong);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font-size:.68rem;font-weight:800}.saved-design-manager__share-create select{width:100%;padding:0 var(--sdh-space-2)}.saved-design-manager__share-create button{padding:0 var(--sdh-space-3);border-color:var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.saved-design-manager__share-create button:disabled,.saved-design-manager__share-list button:disabled{cursor:wait;opacity:.55}.saved-design-manager__share-result{margin-top:var(--sdh-space-3);padding:var(--sdh-space-3);border:1px solid var(--sdh-action-primary);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-brand-subtle)}.saved-design-manager__share-result>p,.saved-design-manager__share-result>strong{margin:0}.saved-design-manager__share-result>strong{color:var(--sdh-action-primary-hover);font-size:.75rem}.saved-design-manager__share-result>p{margin-top:3px;color:var(--sdh-text-secondary);font-size:.64rem;line-height:1.4}.saved-design-manager__share-result>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:5px;margin-top:var(--sdh-space-2)}.saved-design-manager__share-result input{min-width:0;min-height:38px;padding:0 var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-secondary);font-size:.64rem}.saved-design-manager__share-result a,.saved-design-manager__share-result button{display:inline-flex;align-items:center;justify-content:center;padding:0 var(--sdh-space-2);text-decoration:none}.saved-design-manager__share-list{display:grid;gap:var(--sdh-space-2);padding:0;margin:var(--sdh-space-3) 0 0;list-style:none}.saved-design-manager__share-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:var(--sdh-space-2);align-items:center;padding:var(--sdh-space-2);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-subtle)}.saved-design-manager__share-list li>span:first-child{display:grid;min-width:0;gap:2px}.saved-design-manager__share-list strong{font-size:.72rem}.saved-design-manager__share-list small{overflow:hidden;color:var(--sdh-text-tertiary);font-size:.59rem;text-overflow:ellipsis;white-space:nowrap}.saved-design-manager__share-status{padding:4px 7px;border-radius:var(--sdh-radius-full);background:var(--sdh-bg-subtle);color:var(--sdh-text-tertiary);font-size:.58rem;font-weight:800}.saved-design-manager__share-status.is-active{background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary)}.saved-design-manager__share-status.is-revoked{background:var(--sdh-bg-error-subtle);color:var(--sdh-text-error)}.saved-design-manager__share-empty{margin:var(--sdh-space-3) 0 0;color:var(--sdh-text-tertiary);font-size:.68rem}.saved-design-manager__section-heading{display:flex;gap:var(--sdh-space-3);align-items:flex-start;justify-content:space-between}.saved-design-manager__section-heading h3,.saved-design-manager__section-heading p{margin:0}.saved-design-manager__section-heading h3{font-size:.82rem}.saved-design-manager__section-heading p{margin-top:3px;color:var(--sdh-text-tertiary);font-size:.68rem;line-height:1.4}.saved-design-manager__section-heading>span{flex:0 0 auto;padding:4px 8px;border-radius:var(--sdh-radius-full);background:var(--sdh-bg-subtle);color:var(--sdh-text-secondary);font-size:.64rem;font-weight:750}.saved-design-manager__history ol{display:grid;gap:var(--sdh-space-2);padding:0;margin:var(--sdh-space-3) 0 0;list-style:none}.saved-design-manager__history ol>li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:var(--sdh-space-3);align-items:center;padding:var(--sdh-space-2);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-subtle)}.saved-design-manager__history .saved-design-thumbnail{width:48px;height:48px;flex-basis:48px}.saved-design-manager__history ol>li>span{display:grid;min-width:0;gap:2px}.saved-design-manager__history ol>li>.saved-design-manager__revision-copy>strong{font-size:.74rem}.saved-design-manager__history ol>li small{color:var(--sdh-text-tertiary);font-size:.62rem}.saved-design-manager__history ol>li button{min-height:34px;padding:0 var(--sdh-space-2);border:1px solid var(--sdh-border-strong);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);cursor:pointer;font-size:.65rem;font-weight:800}.saved-design-manager__history ol>li button:disabled{border-color:transparent;background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary);cursor:default}.saved-design-manager__revision-copy>p{display:-webkit-box;overflow:hidden;margin:2px 0;color:var(--sdh-text-secondary);font-size:.64rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.saved-design-manager__revision-copy details{margin-top:4px;color:var(--sdh-text-secondary);font-size:.62rem}.saved-design-manager__revision-copy summary{cursor:pointer;color:var(--sdh-action-primary);font-weight:800}.saved-design-manager__revision-copy details ul{display:grid;gap:5px;padding:0;margin:6px 0 0;list-style:none}.saved-design-manager__revision-copy details li{display:grid;gap:1px;padding-left:7px;border-left:2px solid var(--sdh-border-default)}.saved-design-manager__revision-copy details li strong{font-size:.6rem}.saved-design-manager__revision-copy details li span{overflow-wrap:anywhere;color:var(--sdh-text-tertiary);font-size:.57rem}.saved-design-manager__revision-actions{display:grid!important;gap:5px!important}.saved-design-manager__revision-actions button:last-child:not(:only-child){border-color:var(--sdh-border-warning);color:var(--sdh-text-warning)}.saved-design-preview-render-page,.saved-design-preview-render-stage{width:800px;height:600px;overflow:hidden;margin:0;background:#ece8df}.saved-design-preview-render-page .bookcase-viewport{width:100%;height:100%;min-height:600px;border:0;border-radius:0}.saved-design-preview-render-page .bookcase-viewport__hint,.saved-design-preview-render-page .bookcase-viewport__mode,.saved-design-preview-render-page .bookcase-viewport__quality,.saved-design-preview-render-page .bookcase-viewport__visual-controls{display:none!important}.saved-design-manager__danger-zone div button,.saved-design-manager__danger-zone>button{min-height:38px;padding:0 var(--sdh-space-3);border:1px solid var(--sdh-border-error);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-error);cursor:pointer;font-size:.7rem;font-weight:800}.saved-design-manager__danger-zone div{padding:var(--sdh-space-3);border:1px solid var(--sdh-border-error);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-error-subtle)}.saved-design-manager__danger-zone div p,.saved-design-manager__danger-zone div strong{margin:0}.saved-design-manager__danger-zone div strong{color:var(--sdh-text-error);font-size:.75rem}.saved-design-manager__danger-zone div p{margin-top:3px;color:var(--sdh-text-secondary);font-size:.68rem}.saved-design-manager__danger-zone div span{display:flex;gap:var(--sdh-space-2);margin-top:var(--sdh-space-3)}.saved-design-manager__danger-zone div button:first-child{background:var(--sdh-text-error);color:var(--sdh-text-on-brand)}.saved-design-manager__danger-zone div button:last-child{border-color:var(--sdh-border-strong);color:var(--sdh-text-primary)}.saved-design-manager__sign-in{display:grid;gap:var(--sdh-space-3)}.saved-design-manager__sign-in p{margin:0;color:var(--sdh-text-secondary);font-size:.8rem;line-height:1.55}.saved-design-manager__notice{margin:var(--sdh-space-3) 0 0;padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);font-size:.75rem;line-height:1.45}.saved-design-manager__notice.is-success{border-color:var(--sdh-action-primary);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover)}.saved-design-manager__notice.is-warning{border-color:var(--sdh-border-warning);background:var(--sdh-bg-warning-subtle);color:var(--sdh-text-warning)}.saved-design-manager__notice.is-error{border-color:var(--sdh-border-error);background:var(--sdh-bg-error-subtle);color:var(--sdh-text-error)}.shared-design-page{width:min(1440px,100%);min-height:100vh;margin:0 auto;padding:0 clamp(var(--sdh-space-4),4vw,var(--sdh-space-10)) var(--sdh-space-10);background:var(--sdh-bg-canvas)}.shared-design-page__header{display:flex;min-height:76px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--sdh-border-default)}.shared-design-page__brand{color:var(--sdh-action-primary-hover);font-size:.78rem;font-weight:850;letter-spacing:.06em;text-decoration:none}.shared-design-page__header>span{color:var(--sdh-text-tertiary);font-size:.64rem;font-weight:800;letter-spacing:.1em}.shared-design-page__intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);gap:var(--sdh-space-8);align-items:end;padding:clamp(var(--sdh-space-6),5vw,var(--sdh-space-10)) 0 var(--sdh-space-6)}.shared-design-page__intro aside p,.shared-design-page__intro h1,.shared-design-page__intro p,.shared-design-page__intro span{margin:0}.shared-design-page__cta p,.shared-design-page__intro>div>p{color:var(--sdh-action-primary);font-size:.65rem;font-weight:850;letter-spacing:.1em}.shared-design-page__intro h1{margin-top:var(--sdh-space-2);font-size:clamp(2rem,5vw,4.4rem);letter-spacing:-.055em;line-height:.98}.shared-design-page__intro>div>span{display:inline-block;margin-top:var(--sdh-space-4);color:var(--sdh-text-secondary);font-size:clamp(.85rem,1.4vw,1.05rem);font-weight:750}.shared-design-page__intro aside{padding:var(--sdh-space-4);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-lg);background:var(--sdh-bg-surface)}.shared-design-page__intro aside strong{color:var(--sdh-action-primary-hover);font-size:.78rem}.shared-design-page__intro aside p{margin-top:5px;color:var(--sdh-text-secondary);font-size:.72rem;line-height:1.5}.shared-design-page__intro aside small{display:inline-block;margin-top:var(--sdh-space-3);color:var(--sdh-text-tertiary);font-size:.64rem;font-weight:750}.shared-design-viewer{overflow:hidden;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-xl);background:var(--sdh-bg-surface);box-shadow:0 26px 80px rgb(25 24 22/10%)}.shared-design-viewer__toolbar{display:flex;min-height:70px;gap:var(--sdh-space-4);align-items:center;justify-content:space-between;padding:var(--sdh-space-3) var(--sdh-space-5);border-bottom:1px solid var(--sdh-border-default)}.shared-design-viewer__toolbar>div:first-child{display:grid;gap:2px}.shared-design-viewer__toolbar>div:first-child span{color:var(--sdh-action-primary);font-size:.58rem;font-weight:850;letter-spacing:.09em}.shared-design-viewer__toolbar>div:first-child strong{font-size:.8rem}.shared-design-viewer__toolbar>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(88px,1fr));gap:3px;padding:3px;border-radius:var(--sdh-radius-full);background:var(--sdh-bg-subtle)}.shared-design-viewer__toolbar button{min-height:38px;padding:0 var(--sdh-space-3);border:0;border-radius:var(--sdh-radius-full);background:transparent;cursor:pointer;font-size:.68rem;font-weight:800}.shared-design-viewer__toolbar button[aria-pressed=true]{background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.shared-design-viewer__canvas{height:clamp(440px,64vh,760px);padding:var(--sdh-space-3);background:var(--sdh-bg-subtle)}.shared-design-viewer__canvas .bookcase-viewport{height:100%;min-height:100%;border-radius:var(--sdh-radius-lg);box-shadow:none}.shared-design-viewer>footer{display:flex;min-height:52px;gap:var(--sdh-space-2);align-items:center;padding:var(--sdh-space-3) var(--sdh-space-5);color:var(--sdh-text-secondary);font-size:.68rem;line-height:1.4}.shared-design-viewer>footer span{color:var(--sdh-action-primary)}.shared-design-page__cta{display:flex;gap:var(--sdh-space-6);align-items:center;justify-content:space-between;margin-top:var(--sdh-space-8);padding:clamp(var(--sdh-space-5),5vw,var(--sdh-space-8));border-radius:var(--sdh-radius-xl);background:var(--sdh-action-primary-pressed);color:var(--sdh-text-on-brand)}.shared-design-page__cta h2,.shared-design-page__cta p{margin:0}.shared-design-page__cta p{color:rgb(255 255 255/68%)}.shared-design-page__cta h2{margin-top:var(--sdh-space-2);font-size:clamp(1.4rem,3vw,2.4rem);letter-spacing:-.035em}.shared-design-page--unavailable>a,.shared-design-page__cta>a{display:inline-flex;min-height:48px;flex:0 0 auto;align-items:center;justify-content:center;padding:0 var(--sdh-space-5);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-surface);color:var(--sdh-action-primary-pressed);font-size:.75rem;font-weight:850;text-decoration:none}.shared-design-page--unavailable{display:grid;max-width:760px;min-height:100vh;align-content:center;justify-items:start;gap:var(--sdh-space-4)}.shared-design-page--unavailable>h1,.shared-design-page--unavailable>p{margin:0}.shared-design-page--unavailable>p:first-child{color:var(--sdh-action-primary);font-size:.65rem;font-weight:850;letter-spacing:.1em}.shared-design-page--unavailable>h1{font-size:clamp(2rem,6vw,4rem);letter-spacing:-.045em;line-height:1}.shared-design-page--unavailable>p:not(:first-child){color:var(--sdh-text-secondary)}.configurator__workspace{display:grid;min-height:calc(100vh - 72px);grid-template-columns:minmax(360px,420px) minmax(0,1fr)}.configurator-mobile-dock{display:none}.configurator__panel{position:relative;z-index:2;display:flex;max-height:calc(100vh - 72px);flex-direction:column;overflow-y:auto;border-right:1px solid var(--sdh-border-default);background:var(--sdh-bg-surface);scrollbar-width:thin}.configurator__panel-intro h1,.configurator__panel-intro p{margin:0}.configurator__canvas-label,.configurator__eyebrow{color:var(--sdh-action-primary-hover);font-size:.65rem;font-weight:800;letter-spacing:.06em}.configurator__panel-intro h1{margin-top:var(--sdh-space-1);font-size:1.4rem;font-weight:800;letter-spacing:-.035em;line-height:1.2}.configurator__panel-intro>p:last-child{margin-top:var(--sdh-space-1);color:var(--sdh-text-secondary);font-size:.8rem;line-height:1.45}.configurator-form{display:flex;flex-direction:column;gap:var(--sdh-space-2)}.configurator-progress{position:sticky;z-index:4;top:calc(var(--sdh-space-4) * -1);display:grid;gap:var(--sdh-space-3);padding:var(--sdh-space-4) var(--sdh-space-2) var(--sdh-space-3);border-bottom:1px solid var(--sdh-border-default);background:rgb(255 255 255/96%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.configurator-progress__summary{display:flex;min-width:0;gap:var(--sdh-space-3);align-items:flex-start;justify-content:space-between}.configurator-progress__summary>span{display:grid;min-width:0;gap:2px}.configurator-progress__summary small{color:var(--sdh-action-primary);font-size:.58rem;font-weight:850;letter-spacing:.08em}.configurator-progress__summary strong{color:var(--sdh-text-primary);font-size:.9rem;line-height:1.25}.configurator-progress__summary em{overflow:hidden;color:var(--sdh-text-tertiary);font-size:.63rem;font-style:normal;font-weight:650;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.configurator-progress__summary output{min-width:48px;padding:6px var(--sdh-space-2);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary);font-size:.68rem;font-weight:850;text-align:center}.configurator-progress__bar{height:5px;overflow:hidden;border-radius:var(--sdh-radius-full);background:var(--sdh-bg-subtle);box-shadow:inset 0 0 0 1px rgb(25 102 78/8%)}.configurator-progress__bar>span{display:block;height:100%;border-radius:inherit;background:var(--sdh-action-primary);transition:width var(--sdh-motion-300) ease}.configurator-progress__steps{display:grid;margin:0;padding:0;grid-template-columns:repeat(6,minmax(0,1fr));list-style:none}.configurator-progress__steps li{position:relative;min-width:0}.configurator-progress__steps li:not(:last-child):after{position:absolute;z-index:0;top:15px;right:-50%;left:50%;height:1px;background:var(--sdh-border-default);content:""}.configurator-progress__steps li.is-complete:not(:last-child):after{background:var(--sdh-action-primary)}.configurator-progress__steps button{position:relative;z-index:1;display:grid;width:100%;min-width:0;gap:5px;justify-items:center;padding:0 2px;border:0;background:transparent;color:var(--sdh-text-tertiary);cursor:pointer;font:inherit;text-align:center}.configurator-progress__steps button>span{display:grid;width:30px;height:30px;border:1px solid var(--sdh-border-default);border-radius:50%;background:var(--sdh-bg-surface);color:inherit;font-size:.58rem;font-weight:850;place-items:center}.configurator-progress__steps button small{display:-webkit-box;min-height:28px;overflow:hidden;font-size:.52rem;font-weight:750;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}.configurator-progress__steps li.is-active button{color:var(--sdh-action-primary)}.configurator-progress__steps li.is-active button>span{border-color:var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);box-shadow:0 0 0 4px rgb(25 102 78/12%)}.configurator-progress__steps li.is-complete button{color:var(--sdh-action-primary-hover)}.configurator-progress__steps li.is-complete button>span{border-color:var(--sdh-action-primary);background:var(--sdh-bg-brand-subtle)}.configurator-progress__steps li.needs-attention button{color:var(--sdh-text-warning)}.configurator-progress__steps li.needs-attention button>span{border-color:var(--sdh-border-warning);background:var(--sdh-bg-warning-subtle);color:var(--sdh-text-warning)}.configurator-progress__steps li.is-locked button{color:var(--sdh-text-tertiary);cursor:not-allowed;opacity:.56}.configurator-issue-center{display:grid;flex:0 0 auto;overflow:hidden;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);box-shadow:0 8px 24px rgb(25 35 31/7%)}.configurator-issue-center.has-errors{border-color:var(--sdh-border-danger)}.configurator-issue-center.has-warnings{border-color:var(--sdh-border-warning)}.configurator-issue-center.is-ready{border-color:rgb(25 102 78/24%)}.configurator-issue-center__header{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:var(--sdh-space-2);align-items:center;padding:var(--sdh-space-3);background:var(--sdh-bg-brand-subtle)}.configurator-issue-center.has-errors .configurator-issue-center__header{background:var(--sdh-bg-danger-subtle)}.configurator-issue-center.has-warnings .configurator-issue-center__header{background:var(--sdh-bg-warning-subtle)}.configurator-issue-center__header>span:first-child{display:grid;width:32px;height:32px;border-radius:50%;background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);font-size:.76rem;font-weight:900;place-items:center}.configurator-issue-center.has-errors .configurator-issue-center__header>span:first-child{background:var(--sdh-text-danger)}.configurator-issue-center.has-warnings .configurator-issue-center__header>span:first-child{background:var(--sdh-text-warning)}.configurator-issue-center__header>div{display:grid;min-width:0;gap:2px}.configurator-issue-center__header small{color:var(--sdh-text-tertiary);font-size:.54rem;font-weight:850;letter-spacing:.08em}.configurator-issue-center__header strong{color:var(--sdh-text-primary);font-size:.78rem;line-height:1.25}.configurator-issue-center__header output{padding:5px 8px;border:1px solid rgb(25 102 78/18%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/72%);color:var(--sdh-action-primary);font-size:.58rem;font-weight:850;white-space:nowrap}.configurator-issue-center.has-errors .configurator-issue-center__header output{border-color:var(--sdh-border-danger);color:var(--sdh-text-danger)}.configurator-issue-center.has-warnings .configurator-issue-center__header output{border-color:var(--sdh-border-warning);color:var(--sdh-text-warning)}.configurator-issue-center__list{display:grid;max-height:300px;margin:0;padding:0;overflow-y:auto;list-style:none;scrollbar-width:thin}.configurator-issue-center__list li{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:var(--sdh-space-2);align-items:start;padding:var(--sdh-space-3);border-top:1px solid var(--sdh-border-default)}.configurator-issue-center__marker{display:grid;width:22px;height:22px;border:1px solid var(--sdh-border-warning);border-radius:50%;background:var(--sdh-bg-warning-subtle);color:var(--sdh-text-warning);font-size:.66rem;font-weight:900;place-items:center}.configurator-issue-center__list li[data-issue-severity=error] .configurator-issue-center__marker{border-color:var(--sdh-border-danger);background:var(--sdh-bg-danger-subtle);color:var(--sdh-text-danger)}.configurator-issue-center__copy{display:grid;min-width:0;gap:3px}.configurator-issue-center__copy strong{color:var(--sdh-text-primary);font-size:.7rem;line-height:1.35}.configurator-issue-center__copy small{color:var(--sdh-text-secondary);font-size:.62rem;line-height:1.42}.configurator-issue-center__copy em{color:var(--sdh-action-primary);font-size:.56rem;font-style:normal;font-weight:800}.configurator-issue-center__list button{display:inline-flex;min-height:32px;gap:5px;align-items:center;justify-content:center;padding:6px 9px;border:1px solid var(--sdh-action-primary);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-action-primary);cursor:pointer;font:inherit;font-size:.58rem;font-weight:850;white-space:nowrap}.configurator-issue-center__list button:hover{background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator-issue-center__ready-copy{margin:0;padding:var(--sdh-space-3);border-top:1px solid var(--sdh-border-default);color:var(--sdh-text-secondary);font-size:.66rem;line-height:1.45}.configurator-smart-focus{outline:3px solid rgb(25 102 78/32%)!important;outline-offset:4px;animation:configurator-smart-focus-pulse .9s ease-in-out 2}.configurator-room-gate{display:grid;gap:var(--sdh-space-4);overflow:hidden;border:1px solid var(--sdh-border-focus);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);box-shadow:0 14px 34px rgb(25 102 78/12%)}.configurator-room-gate__heading{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--sdh-space-3);align-items:center;padding:var(--sdh-space-4);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator-room-gate__heading>span{display:grid;width:44px;height:44px;border:1px solid rgb(255 255 255/24%);border-radius:var(--sdh-radius-sm);background:rgb(255 255 255/12%);font-size:1.25rem;place-items:center}.configurator-room-gate__heading div{display:grid;gap:3px}.configurator-room-gate__heading small{color:rgb(255 255 255/72%);font-size:.56rem;font-weight:850;letter-spacing:.08em}.configurator-room-gate__heading h2{margin:0;color:inherit;font-size:1rem}.configurator-room-gate>p{margin:0;padding-inline:var(--sdh-space-4);color:var(--sdh-text-secondary);font-size:.76rem;line-height:1.55}.configurator-room-gate__measurement{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sdh-space-2);padding-inline:var(--sdh-space-4)}.configurator-room-gate__measurement>span{display:grid;gap:3px;min-width:0;padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-subtle)}.configurator-room-gate__measurement small{color:var(--sdh-text-tertiary);font-size:.58rem;font-weight:750}.configurator-room-gate__measurement strong{overflow:hidden;color:var(--sdh-text-primary);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.configurator-room-gate__checklist{display:grid;gap:var(--sdh-space-2);padding-inline:var(--sdh-space-4)}.configurator-room-gate__checklist span{display:flex;min-height:38px;align-items:center;padding:var(--sdh-space-2) var(--sdh-space-3);border-left:3px solid var(--sdh-action-primary);border-radius:0 var(--sdh-radius-sm) var(--sdh-radius-sm) 0;background:var(--sdh-bg-brand-subtle);color:var(--sdh-text-secondary);font-size:.68rem;font-weight:700}.configurator-room-gate__notice{display:grid;gap:3px;margin-inline:var(--sdh-space-4);padding:var(--sdh-space-3);border:1px solid var(--sdh-border-warning);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-warning-subtle);color:var(--sdh-text-warning)}.configurator-room-gate__notice strong{font-size:.7rem}.configurator-room-gate__notice span{color:var(--sdh-text-secondary);font-size:.62rem;line-height:1.45}.configurator-room-gate__actions{display:grid;gap:var(--sdh-space-2);margin:0 var(--sdh-space-4) var(--sdh-space-4)}.configurator-room-gate__confirm,.configurator-room-gate__open-plan{display:flex;min-height:52px;align-items:center;justify-content:space-between;padding:0 var(--sdh-space-4);border-radius:var(--sdh-radius-sm);cursor:pointer;font:inherit;font-size:.72rem;font-weight:850;text-align:left}.configurator-room-gate__open-plan{border:1px solid var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary)}.configurator-room-gate__open-plan:hover{background:color-mix(in srgb,var(--sdh-bg-brand-subtle) 72%,white)}.configurator-room-gate__confirm{border:1px solid var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator-room-gate__confirm:hover{background:var(--sdh-action-primary-hover)}.room-workflow{display:grid;gap:var(--sdh-space-3)}.room-workflow__summary{display:flex;min-width:0;gap:var(--sdh-space-3);align-items:flex-start;justify-content:space-between;padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/18%);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-brand-subtle)}.room-workflow__summary>span{display:grid;min-width:0;gap:2px}.room-workflow__active-task small,.room-workflow__summary small{color:var(--sdh-action-primary);font-size:.56rem;font-weight:850;letter-spacing:.08em}.room-workflow__summary strong{color:var(--sdh-text-primary);font-size:.9rem;line-height:1.25}.room-workflow__summary em{overflow:hidden;color:var(--sdh-text-secondary);font-size:.62rem;font-style:normal;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.room-workflow__summary output{flex:0 0 auto;padding:6px 9px;border:1px solid rgb(25 102 78/18%);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-surface);color:var(--sdh-action-primary);font-size:.64rem;font-weight:850}.room-workflow__bar{height:4px;overflow:hidden;border-radius:var(--sdh-radius-full);background:var(--sdh-bg-subtle)}.room-workflow__bar span{display:block;height:100%;border-radius:inherit;background:var(--sdh-action-primary);transition:width var(--sdh-motion-300) ease}.room-workflow__tasks ol{display:grid;gap:var(--sdh-space-2);margin:0;padding:0;list-style:none}.room-workflow__tasks li{overflow:hidden;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);transition:border-color var(--sdh-motion-150) ease,box-shadow var(--sdh-motion-150) ease,transform var(--sdh-motion-150) ease}.room-workflow__tasks li.is-active{border-color:var(--sdh-action-primary);box-shadow:0 8px 20px rgb(25 102 78/10%);transform:translateX(3px)}.room-workflow__tasks li.is-visited{border-color:rgb(25 102 78/22%)}.room-workflow__tasks button{display:grid;width:100%;min-height:56px;grid-template-columns:32px minmax(0,1fr) auto;gap:var(--sdh-space-3);align-items:center;padding:var(--sdh-space-2) var(--sdh-space-3);border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.room-workflow__tasks li.is-active button{background:linear-gradient(90deg,var(--sdh-bg-brand-subtle),transparent)}.room-workflow__task-index{display:grid;width:32px;height:32px;border:1px solid var(--sdh-border-default);border-radius:50%;background:var(--sdh-bg-subtle);color:var(--sdh-text-secondary);font-size:.6rem;font-weight:850;place-items:center}.room-workflow__tasks li.is-active .room-workflow__task-index{border-color:var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.room-workflow__tasks li.is-visited .room-workflow__task-index{border-color:var(--sdh-action-primary);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary)}.room-workflow__task-copy{display:grid;min-width:0;gap:2px}.room-workflow__task-copy strong{color:var(--sdh-text-primary);font-size:.72rem;line-height:1.3}.room-workflow__task-copy small{overflow:hidden;color:var(--sdh-text-tertiary);font-size:.58rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.room-workflow__task-arrow{color:var(--sdh-text-tertiary);font-size:1rem}.room-workflow__tasks li.is-active .room-workflow__task-arrow{color:var(--sdh-action-primary)}.room-workflow__active-task{display:grid;grid-template-columns:38px minmax(0,1fr);gap:var(--sdh-space-3);padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-subtle)}.room-workflow__active-task>span{display:grid;width:38px;height:38px;border-radius:var(--sdh-radius-sm);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);font-size:.68rem;font-weight:850;place-items:center}.room-workflow__active-task h2,.room-workflow__active-task p{margin:0}.room-workflow__active-task h2{margin-top:2px;color:var(--sdh-text-primary);font-size:.84rem}.room-workflow__active-task p{margin-top:5px;color:var(--sdh-text-secondary);font-size:.64rem;line-height:1.5}.room-workflow__message{margin:0;padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/22%);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover);font-size:.64rem;font-weight:750;line-height:1.45}.room-workflow__navigation{display:grid;gap:var(--sdh-space-2);padding-top:var(--sdh-space-2);border-top:1px solid var(--sdh-border-default)}.room-workflow__navigation>div{display:flex;gap:var(--sdh-space-2);justify-content:flex-end}.room-workflow__navigation button{min-height:40px;padding:0 var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font:inherit;font-size:.66rem;font-weight:800}.room-workflow__navigation .room-workflow__next{display:inline-flex;gap:var(--sdh-space-2);align-items:center;border-color:var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.room-workflow__navigation .room-workflow__return{min-height:34px;border:0;background:transparent;color:var(--sdh-action-primary);justify-self:end}.room-workflow__navigation button:focus-visible,.room-workflow__tasks button:focus-visible{outline:2px solid var(--sdh-border-focus);outline-offset:2px}.configurator__view-switcher button:disabled{opacity:.38;cursor:not-allowed}@keyframes configurator-smart-focus-pulse{50%{outline-color:rgb(25 102 78/78%);filter:drop-shadow(0 0 8px rgb(25 102 78/24%))}}.configurator-step{min-width:0;overflow:hidden;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);transition:border-color var(--sdh-motion-150) ease,box-shadow var(--sdh-motion-150) ease}.configurator-step.is-active{border-color:var(--sdh-border-focus);box-shadow:0 10px 28px rgb(25 102 78/10%)}.configurator-form[data-step-transition-direction=forward] .configurator-step.is-active{animation:configurator-step-enter-forward var(--sdh-motion-300) ease both}.configurator-form[data-step-transition-direction=backward] .configurator-step.is-active{animation:configurator-step-enter-backward var(--sdh-motion-300) ease both}@keyframes configurator-step-enter-forward{0%{opacity:0;transform:translateX(14px)}}@keyframes configurator-step-enter-backward{0%{opacity:0;transform:translateX(-14px)}}.configurator-step.is-locked{background:var(--sdh-bg-subtle)}.configurator-step__active-heading{display:grid;grid-template-columns:36px minmax(0,1fr);gap:var(--sdh-space-3);align-items:center;padding:var(--sdh-space-3) var(--sdh-space-4);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator-step__active-heading>span:last-child{display:grid;gap:2px}.configurator-step__active-heading small{color:rgb(255 255 255/68%);font-size:.52rem;font-weight:850;letter-spacing:.08em}.configurator-step__active-heading h2{margin:0;color:inherit;font-size:.92rem;line-height:1.25}.configurator-step__active-heading .configurator-step__badge{border-color:rgb(255 255 255/22%);background:rgb(255 255 255/14%);color:var(--sdh-text-on-brand)}.configurator-step__heading{margin:0}.configurator-step__trigger{display:grid;width:100%;min-height:72px;grid-template-columns:32px minmax(0,1fr) auto 20px;gap:var(--sdh-space-3);align-items:center;padding:var(--sdh-space-3) var(--sdh-space-4);border:0;background:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font:inherit;text-align:left;transition:background var(--sdh-motion-150) ease,color var(--sdh-motion-150) ease}.configurator-step__trigger:hover:not(:disabled){background:var(--sdh-bg-brand-subtle)}.configurator-step.is-active .configurator-step__trigger{background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator-step.is-complete:not(.is-active) .configurator-step__trigger{background:var(--sdh-bg-brand-subtle)}.configurator-step__trigger:disabled{color:var(--sdh-text-tertiary);cursor:not-allowed}.configurator-step__copy{display:flex;min-width:0;flex-direction:column;gap:2px}.configurator-step__copy strong{color:inherit;font-size:.9rem;font-weight:800;line-height:1.25}.configurator-step__copy small{overflow:hidden;color:var(--sdh-text-secondary);font-size:.72rem;font-weight:600;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.configurator-step.is-active .configurator-step__copy small{color:rgb(255 255 255/72%)}.configurator-step.is-locked .configurator-step__copy small{color:var(--sdh-text-tertiary)}.configurator-step__badge{display:inline-flex;width:32px;height:32px;flex:0 0 32px;align-items:center;justify-content:center;border-radius:var(--sdh-radius-lg);border:1px solid var(--sdh-border-default);background:var(--sdh-bg-subtle);color:var(--sdh-text-secondary);font-size:.72rem;font-weight:800}.configurator-step.is-active .configurator-step__badge{border-color:rgb(255 255 255/22%);background:rgb(255 255 255/14%);color:var(--sdh-text-on-brand)}.configurator-step.is-complete:not(.is-active) .configurator-step__badge{border-color:var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator-step__state{min-width:34px;padding:5px var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-surface);color:var(--sdh-text-tertiary);font-size:.58rem;font-weight:800;text-align:center;text-transform:uppercase}.configurator-step.is-active .configurator-step__state{border-color:var(--sdh-bg-surface);background:var(--sdh-bg-surface);color:var(--sdh-action-primary-hover)}.configurator-step.is-complete:not(.is-active) .configurator-step__state{border-color:rgb(25 102 78/20%);color:var(--sdh-action-primary-hover)}.configurator-step__chevron{color:var(--sdh-text-tertiary);font-size:1.35rem;font-weight:800;line-height:1;text-align:center;transition:transform var(--sdh-motion-250) ease}.configurator-step.is-active .configurator-step__chevron{color:var(--sdh-text-on-brand);transform:rotate(180deg)}.configurator-step__content{display:grid;padding-block:var(--sdh-space-3) var(--sdh-space-4)}.configurator-step__content[hidden]{display:none}.configurator-step__description{margin:0;padding:0 var(--sdh-space-4) var(--sdh-space-3);color:var(--sdh-text-secondary);font-size:.75rem;line-height:1.5}.configurator-step__focus-card,.configurator-step__review-actions,.configurator-step__task-list{margin:var(--sdh-space-4) var(--sdh-space-4) 0}.configurator-step__shelf-selection-slot{min-width:0;margin:var(--sdh-space-3) var(--sdh-space-4) 0}.configurator-step__focus-card{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:var(--sdh-space-3);align-items:center;padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/18%);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-pressed)}.configurator-step__focus-card>span{display:grid;width:38px;height:38px;border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);font-size:1.15rem;place-items:center}.configurator-step__focus-card div{display:grid;gap:2px}.configurator-step__focus-card strong{font-size:.76rem;line-height:1.35}.configurator-step__focus-card small{color:var(--sdh-text-secondary);font-size:.66rem;line-height:1.4}.configurator-step__focus-card output{max-width:92px;padding:6px var(--sdh-space-2);overflow:hidden;border-radius:var(--sdh-radius-full);background:var(--sdh-bg-surface);font-size:.66rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.configurator-step__task-list{display:grid;gap:var(--sdh-space-2)}.configurator-step__task-list span{display:flex;min-height:40px;align-items:center;padding:var(--sdh-space-2) var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-subtle);color:var(--sdh-text-secondary);font-size:.72rem;font-weight:700}.configurator-step__review-actions{display:grid;gap:var(--sdh-space-2)}.configurator-step__review-actions>button{display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--sdh-space-3);align-items:center;min-height:62px;padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font:inherit;text-align:left}.configurator-step__review-actions>button:hover{border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle)}.configurator-step__review-actions>button>span:first-child{display:grid;width:40px;height:40px;border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-subtle);color:var(--sdh-action-primary);font-size:1.1rem;place-items:center}.configurator-step__review-actions>button>span:last-child{display:grid;gap:2px}.configurator-step__review-actions strong{font-size:.76rem}.configurator-step__review-actions small{color:var(--sdh-text-secondary);font-size:.66rem}.placement-suitability-report{display:grid;margin:var(--sdh-space-4) var(--sdh-space-4) 0;overflow:hidden;border:1px solid rgb(25 102 78/24%);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);box-shadow:0 10px 28px rgb(25 38 32/7%)}.placement-suitability-report--warning{border-color:var(--sdh-border-warning)}.placement-suitability-report--blocked{border-color:var(--sdh-border-danger)}.placement-suitability-report__header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:var(--sdh-space-3);align-items:center;padding:var(--sdh-space-3);background:var(--sdh-bg-brand-subtle)}.placement-suitability-report--warning .placement-suitability-report__header{background:var(--sdh-bg-warning-subtle)}.placement-suitability-report--blocked .placement-suitability-report__header{background:var(--sdh-bg-danger-subtle)}.placement-suitability-report__check-icon,.placement-suitability-report__status-icon{display:grid;border-radius:50%;background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);font-weight:900;place-items:center}.placement-suitability-report__status-icon{width:38px;height:38px;font-size:.82rem}.placement-suitability-report--warning .placement-suitability-report__status-icon{background:var(--sdh-text-warning)}.placement-suitability-report--blocked .placement-suitability-report__status-icon{background:var(--sdh-text-danger)}.placement-suitability-report__heading{display:grid;min-width:0;gap:2px}.placement-suitability-report__heading small{color:var(--sdh-action-primary);font-size:.52rem;font-weight:850;letter-spacing:.08em}.placement-suitability-report--warning .placement-suitability-report__heading small{color:var(--sdh-text-warning)}.placement-suitability-report--blocked .placement-suitability-report__heading small{color:var(--sdh-text-danger)}.placement-suitability-report__heading strong{color:var(--sdh-text-primary);font-size:.78rem;line-height:1.3}.placement-suitability-report__heading>span{color:var(--sdh-text-secondary);font-size:.62rem;line-height:1.4}.placement-suitability-report__header output{min-width:48px;padding:6px var(--sdh-space-2);border:1px solid rgb(25 102 78/18%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/72%);color:var(--sdh-action-primary);font-size:.66rem;font-weight:850;text-align:center}.placement-suitability-report__meter{height:4px;background:var(--sdh-bg-subtle)}.placement-suitability-report__meter>span{display:block;height:100%;background:var(--sdh-action-primary);transition:width var(--sdh-motion-300) ease}.placement-suitability-report details{min-width:0}.placement-suitability-report summary{display:flex;min-height:42px;gap:var(--sdh-space-2);align-items:center;justify-content:space-between;padding:var(--sdh-space-2) var(--sdh-space-3);color:var(--sdh-text-primary);cursor:pointer;font-size:.68rem;font-weight:800;list-style:none}.placement-suitability-report summary::-webkit-details-marker{display:none}.placement-suitability-report summary:after{color:var(--sdh-text-tertiary);content:"+";font-size:1rem}.placement-suitability-report details[open] summary:after{content:"−"}.placement-suitability-report summary small{margin-left:auto;color:var(--sdh-text-tertiary);font-size:.56rem;font-weight:700}.placement-suitability-report__checks{display:grid;margin:0;padding:0;border-top:1px solid var(--sdh-border-default);list-style:none}.placement-suitability-report__checks li{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:var(--sdh-space-2);align-items:start;padding:var(--sdh-space-3)}.placement-suitability-report__checks li+li{border-top:1px solid var(--sdh-border-default)}.placement-suitability-report__check-icon{width:22px;height:22px;font-size:.64rem}.placement-suitability-report__checks li[data-check-severity=warning] .placement-suitability-report__check-icon{background:var(--sdh-text-warning)}.placement-suitability-report__checks li[data-check-severity=error] .placement-suitability-report__check-icon{background:var(--sdh-text-danger)}.placement-suitability-report__check-copy{display:grid;min-width:0;gap:3px}.placement-suitability-report__check-copy strong{color:var(--sdh-text-primary);font-size:.68rem;line-height:1.35}.placement-suitability-report__check-copy small{color:var(--sdh-text-secondary);font-size:.6rem;line-height:1.45}.placement-suitability-report__checks button{display:inline-flex;min-height:34px;gap:5px;align-items:center;justify-content:center;padding:6px 9px;border:1px solid var(--sdh-action-primary);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-action-primary);cursor:pointer;font:inherit;font-size:.57rem;font-weight:850;white-space:nowrap}.placement-suitability-report__checks button:hover{background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.placement-suitability-report summary:focus-visible,.placement-suitability-report__checks button:focus-visible{outline:2px solid var(--sdh-border-focus);outline-offset:2px}.configurator-step__navigation{position:sticky;z-index:3;bottom:calc(var(--sdh-space-4) * -1);display:flex;gap:var(--sdh-space-3);align-items:center;justify-content:space-between;margin-top:var(--sdh-space-4);padding:var(--sdh-space-3) var(--sdh-space-4) var(--sdh-space-4);border-top:1px solid var(--sdh-border-default);background:rgb(255 255 255/96%);box-shadow:0 -12px 24px rgb(25 38 32/6%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.configurator-step__navigation>span{display:grid;gap:2px;color:var(--sdh-text-secondary);font-size:.68rem;font-weight:800}.configurator-step__navigation>span small{color:var(--sdh-text-tertiary);font-size:.58rem;font-weight:600}.configurator-step__navigation>div{display:flex;gap:var(--sdh-space-2)}.configurator-step__navigation button{min-height:42px;padding:0 var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font:inherit;font-size:.7rem;font-weight:800}.configurator-step__navigation button:hover:not(:disabled){border-color:var(--sdh-border-strong);background:var(--sdh-bg-subtle)}.configurator-step__navigation button:disabled{cursor:not-allowed;opacity:.5}.configurator-step__navigation .configurator-step__next{display:inline-flex;gap:var(--sdh-space-2);align-items:center;border-color:var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator-step__navigation .configurator-step__next:hover:not(:disabled){border-color:var(--sdh-action-primary-hover);background:var(--sdh-action-primary-hover)}.configurator-form__controls{display:grid;gap:var(--sdh-space-4);padding:0 var(--sdh-space-4)}.numeric-control{display:grid;min-width:0;gap:var(--sdh-space-2)}.numeric-control__topline{display:flex;min-width:0;gap:var(--sdh-space-3);align-items:center;justify-content:space-between}.numeric-control__label-group{display:grid;min-width:0}.numeric-control__label{font-size:.78rem;font-weight:750}.configurator-form__measurement-hint,.numeric-control__range{display:none}.numeric-control__slider-row{display:grid;min-width:0;grid-template-columns:44px minmax(0,1fr) 44px;gap:var(--sdh-space-3);align-items:center}.numeric-control__step{width:44px;height:44px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-surface);box-shadow:0 3px 10px rgb(25 24 22/8%);cursor:pointer;font-size:1.18rem;line-height:1}.numeric-control__step:hover:not(:disabled){border-color:var(--sdh-border-focus);color:var(--sdh-action-primary)}.numeric-control__step:disabled{cursor:not-allowed;opacity:.35}.numeric-control__input-wrap{position:relative;width:min(132px,52%);min-width:108px}.numeric-control__input{width:100%;min-height:44px;padding:0 38px 0 var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);font-size:var(--sdh-font-size-control);font-weight:750;text-align:right;appearance:textfield}.numeric-control__input::-webkit-inner-spin-button,.numeric-control__input::-webkit-outer-spin-button{margin:0;appearance:none}.numeric-control__unit{position:absolute;top:50%;right:var(--sdh-space-2);color:var(--sdh-text-tertiary);font-size:.7rem;pointer-events:none;transform:translateY(-50%)}.numeric-control__slider{touch-action:none;width:100%;min-width:0;height:6px;appearance:none;border:0;border-radius:var(--sdh-radius-full);cursor:ew-resize}.numeric-control__slider:focus-visible{outline:3px solid color-mix(in srgb,var(--sdh-border-focus) 28%,transparent);outline-offset:8px}.numeric-control__slider::-webkit-slider-thumb{width:24px;height:24px;appearance:none;border:3px solid var(--sdh-bg-surface);border-radius:50%;background:var(--sdh-action-primary);box-shadow:0 0 0 1px var(--sdh-border-focus),0 4px 12px rgb(25 24 22/22%)}.numeric-control__slider::-moz-range-thumb{width:18px;height:18px;border:3px solid var(--sdh-bg-surface);border-radius:50%;background:var(--sdh-action-primary);box-shadow:0 0 0 1px var(--sdh-border-focus),0 4px 12px rgb(25 24 22/22%)}.numeric-control__slider::-moz-range-track{height:6px;border-radius:var(--sdh-radius-full);background:transparent}.numeric-control__helper{margin:0;color:var(--sdh-text-secondary);font-size:var(--sdh-font-size-label);line-height:1.5}.numeric-control__input[aria-invalid=true]{border-color:var(--sdh-border-error)}.numeric-control__feedback:empty{display:none}.numeric-control__feedback p{margin:0;color:var(--sdh-text-secondary);font-size:var(--sdh-font-size-label);line-height:1.5}.numeric-control__feedback .numeric-control__error{color:var(--sdh-text-error)}.numeric-control__draft-actions{display:flex;flex-wrap:wrap;gap:var(--sdh-space-2);justify-content:flex-end;margin-top:var(--sdh-space-2)}.numeric-control__draft-actions button{min-height:44px;padding:var(--sdh-space-2) var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);cursor:pointer;font-size:var(--sdh-font-size-control);font-weight:650}.numeric-control__draft-actions button:last-child{border-color:var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.material-options{display:grid;gap:var(--sdh-space-2);padding:0 var(--sdh-space-4)}.material-option{display:grid;min-height:72px;grid-template-columns:56px minmax(0,1fr) 24px;gap:var(--sdh-space-3);align-items:center;padding:var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-lg);background:var(--sdh-bg-surface);cursor:pointer;text-align:left}.material-option[aria-pressed=true]{border:2px solid var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle)}.material-option__swatch{width:56px;height:56px;border-radius:var(--sdh-radius-md);background-position:50%;background-size:cover;box-shadow:inset 0 0 0 1px rgb(25 24 22/8%)}.material-option__copy{display:flex;min-width:0;flex-direction:column;gap:3px}.material-option__copy strong{font-size:.88rem}.material-option__copy small{color:var(--sdh-text-secondary);font-size:.7rem}.material-option__copy .material-option__quality{color:var(--sdh-action-primary);font-size:.62rem;font-weight:750}.material-option__copy .material-option__source{color:#7a5f20;font-size:.6rem;font-weight:750}.material-option__check{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;border-radius:50%;background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);font-size:.75rem;font-weight:800}.material-option:not([aria-pressed=true]) .material-option__check{background:transparent}.material-sample-notice{display:grid;gap:4px;margin:var(--sdh-space-3) var(--sdh-space-4) 0;padding:var(--sdh-space-3);border:1px solid #d5c28c;border-radius:var(--sdh-radius-md);background:#fff9e8;color:var(--sdh-text-secondary);font-size:.68rem;line-height:1.5}.material-sample-notice strong{color:var(--sdh-text-primary);font-size:.72rem}.material-sample-comparison{display:grid;gap:var(--sdh-space-3);margin:var(--sdh-space-3) var(--sdh-space-4) 0;padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-lg);background:var(--sdh-bg-surface)}.material-sample-comparison__header{display:flex;gap:var(--sdh-space-3);align-items:center;justify-content:space-between}.material-sample-comparison__header>span:first-child{display:grid;gap:2px}.material-sample-comparison__header small{color:var(--sdh-text-tertiary);font-size:.56rem;font-weight:850;letter-spacing:.08em}.material-sample-comparison__header strong{font-size:.78rem}.material-sample-comparison__status{flex:0 0 auto;padding:5px var(--sdh-space-2);border-radius:var(--sdh-radius-full);font-size:.58rem;font-weight:850}.material-sample-comparison__status[data-status=preview-only]{background:#fff1ca;color:#755411}.material-sample-comparison__status[data-status=supplier-ready]{background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover)}.material-sample-comparison__samples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sdh-space-2)}.material-sample-comparison__samples figure{display:grid;min-width:0;gap:var(--sdh-space-2);margin:0}.material-sample-comparison__digital,.material-sample-comparison__physical{display:grid;min-height:76px;place-items:center;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background-position:50%;background-size:cover;box-shadow:inset 0 0 0 1px rgb(255 255 255/36%)}.material-sample-comparison__physical{background-color:var(--sdh-bg-subtle);background-image:linear-gradient(45deg,rgb(25 24 22/4%) 25%,transparent 0),linear-gradient(-45deg,rgb(25 24 22/4%) 25%,transparent 0),linear-gradient(45deg,transparent 75%,rgb(25 24 22/4%) 0),linear-gradient(-45deg,transparent 75%,rgb(25 24 22/4%) 0);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;color:var(--sdh-text-tertiary);font-size:1.4rem}.material-sample-comparison__samples figcaption{display:grid;min-width:0;gap:2px}.material-sample-comparison__samples figcaption strong{font-size:.66rem}.material-sample-comparison__samples figcaption span{overflow:hidden;color:var(--sdh-text-tertiary);font-size:.58rem;text-overflow:ellipsis;white-space:nowrap}.material-sample-comparison__metadata{display:grid;gap:0;margin:0;border-top:1px solid var(--sdh-border-default)}.material-sample-comparison__metadata>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:var(--sdh-space-2);padding:7px 0;border-bottom:1px solid var(--sdh-border-default)}.material-sample-comparison__metadata dd,.material-sample-comparison__metadata dt{margin:0;font-size:.61rem;line-height:1.35}.material-sample-comparison__metadata dt{color:var(--sdh-text-tertiary);font-weight:750}.material-sample-comparison__metadata dd{color:var(--sdh-text-secondary);font-weight:700}.material-sample-comparison__readiness{border-radius:var(--sdh-radius-sm);background:#fff9e8;color:var(--sdh-text-secondary);font-size:.62rem;line-height:1.45}.material-sample-comparison__readiness summary{padding:var(--sdh-space-2);color:#755411;cursor:pointer;font-weight:800}.material-sample-comparison__readiness ul{display:grid;gap:4px;margin:0;padding:0 var(--sdh-space-4) var(--sdh-space-3) var(--sdh-space-6)}.material-sample-comparison__approval{margin:0;padding:var(--sdh-space-2);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover);font-size:.62rem;line-height:1.45}.construction-option{display:flex;min-height:64px;gap:var(--sdh-space-3);align-items:center;justify-content:space-between;padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);cursor:pointer;text-align:left}.construction-option[aria-pressed=true]{border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle)}.construction-option>span:first-child{display:flex;min-width:0;flex-direction:column;gap:3px}.construction-option strong{font-size:.78rem}.construction-option small{color:var(--sdh-text-secondary);font-size:.67rem;line-height:1.35}.construction-option__state{flex:0 0 auto;padding:5px var(--sdh-space-2);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-subtle);color:var(--sdh-text-secondary);font-size:.62rem;font-weight:800}.back-panel-finish{display:grid;gap:var(--sdh-space-3);padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface)}.back-panel-finish>span:first-child{display:flex;flex-direction:column;gap:3px}.back-panel-finish strong{font-size:.78rem}.back-panel-finish small{color:var(--sdh-text-secondary);font-size:.67rem;line-height:1.4}.panel-finish-palette{display:flex;min-width:0;gap:var(--sdh-space-2);align-items:center;flex-wrap:wrap}.panel-finish-palette button{cursor:pointer}.panel-finish-palette button:disabled{cursor:not-allowed;opacity:.45}.panel-finish-palette__default{min-height:34px;padding:0 var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-subtle);font-size:.64rem;font-weight:750}.panel-finish-palette__default[aria-pressed=true]{border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover)}.panel-finish-palette__swatch{width:34px;height:34px;padding:0;border:2px solid var(--sdh-bg-surface);border-radius:50%;box-shadow:0 0 0 1px var(--sdh-border-default)}.panel-finish-palette__swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--sdh-action-primary),0 0 0 4px var(--sdh-bg-surface)}.panel-finish-palette__current{min-width:0;overflow:hidden;color:var(--sdh-text-secondary);font-size:.63rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.construction-option[aria-pressed=true] .construction-option__state{background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator-summary{display:flex;flex-direction:column;gap:var(--sdh-space-3);padding:var(--sdh-space-4);border-radius:var(--sdh-radius-lg);background:var(--sdh-text-primary);color:var(--sdh-text-on-brand)}.configurator-summary__topline{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;font-weight:750}.configurator-summary__badge{padding:var(--sdh-space-1) var(--sdh-space-2);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary);font-size:.6rem;font-weight:800}.configurator-summary__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sdh-space-2);margin:0}.configurator-summary__facts div{min-width:0;padding:var(--sdh-space-2);border:1px solid rgb(255 255 255/14%);border-radius:var(--sdh-radius-sm)}.configurator-summary__facts dt{color:rgb(255 255 255/65%);font-size:.65rem}.configurator-summary__facts dd{overflow:hidden;margin:3px 0 0;font-size:.8rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.configurator-summary__note,.configurator-summary__price,.configurator-summary__price-label{margin:0}.configurator-summary__price-label{margin-bottom:calc(var(--sdh-space-2) * -1);color:rgb(255 255 255/65%);font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.configurator-summary__price{font-size:1.15rem;font-weight:800;letter-spacing:-.03em}.configurator-summary__note{color:rgb(255 255 255/68%);font-size:.68rem;line-height:1.45}.configurator-summary__error{margin:0;padding:var(--sdh-space-2);border:1px solid rgb(255 173 163/42%);border-radius:var(--sdh-radius-sm);background:rgb(146 51 44/34%);color:#fff;font-size:.66rem;line-height:1.45}.configurator-summary__breakdown{display:grid;gap:var(--sdh-space-1);margin:0;padding:var(--sdh-space-2) 0;border-top:1px solid rgb(255 255 255/14%);border-bottom:1px solid rgb(255 255 255/14%)}.configurator-summary__breakdown div{display:flex;align-items:center;justify-content:space-between}.configurator-summary__breakdown dd,.configurator-summary__breakdown dt{margin:0;font-size:.67rem}.configurator-summary__breakdown dt{color:rgb(255 255 255/65%)}.configurator-summary__breakdown dd{font-weight:750}.configurator-summary__bom{border:1px solid rgb(255 255 255/14%);border-radius:var(--sdh-radius-sm);background:rgb(255 255 255/4%)}.configurator-summary__bom summary{padding:var(--sdh-space-2);cursor:pointer;font-size:.7rem;font-weight:750}.configurator-summary__bom ul{display:grid;gap:var(--sdh-space-2);max-height:240px;margin:0;padding:0 var(--sdh-space-2) var(--sdh-space-2);overflow-y:auto;list-style:none}.configurator-summary__bom li{display:flex;gap:var(--sdh-space-2);align-items:flex-start;justify-content:space-between;padding-top:var(--sdh-space-2);border-top:1px solid rgb(255 255 255/10%)}.configurator-summary__bom li>span{display:flex;min-width:0;flex-direction:column;gap:2px}.configurator-summary__bom li strong{font-size:.67rem}.configurator-summary__bom li>strong{flex:0 0 auto}.configurator-summary__bom li small{color:rgb(255 255 255/62%);font-size:.61rem}.configurator-summary button{min-height:44px;border:0;border-radius:var(--sdh-radius-md);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);font-size:.82rem;font-weight:750;cursor:pointer;transition:background var(--sdh-motion-150) ease,opacity var(--sdh-motion-150) ease}.configurator-summary button:hover:not(:disabled){background:#2c8066}.configurator-summary button:focus-visible{outline:3px solid rgb(255 255 255/28%);outline-offset:2px}.configurator-summary button:disabled{cursor:not-allowed;opacity:.5}.configurator__viewport{display:grid;min-width:0;grid-template-rows:auto minmax(380px,1fr) auto auto;gap:var(--sdh-space-4);padding:var(--sdh-space-4) var(--sdh-space-6) var(--sdh-space-5);background:linear-gradient(rgb(247 245 239/60%),rgb(252 251 248/80%)),var(--sdh-bg-canvas)}.configurator__viewport-topline{display:flex;gap:var(--sdh-space-4);align-items:flex-start;justify-content:space-between}.configurator__viewport-topline>div:first-child{display:flex;flex-wrap:wrap;gap:var(--sdh-space-2);align-items:center}.configurator__viewport-topline p{flex-basis:100%;margin:0 0 var(--sdh-space-2)}.configurator__viewport-step{display:inline-flex;min-height:30px;gap:6px;align-items:center;padding:0 var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-surface);color:var(--sdh-text-secondary)}.configurator__viewport-step small{color:var(--sdh-action-primary);font-size:.56rem;font-weight:850;letter-spacing:.06em}.configurator__viewport-step strong{font-size:.66rem;font-weight:750}.configurator__manufacturing-status{display:inline-flex;min-height:30px;align-items:center;padding:0 var(--sdh-space-3);border:1px solid var(--sdh-border-focus);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover);font-size:.65rem;font-weight:800}.configurator__manufacturing-status--invalid{border-color:var(--sdh-border-error);background:var(--sdh-bg-error-subtle);color:var(--sdh-text-error)}.configurator__manufacturing-status--warning{border-color:var(--sdh-border-warning);background:var(--sdh-bg-warning-subtle);color:var(--sdh-text-warning)}.configurator__view-switcher{display:grid;width:min(100%,420px);min-height:52px;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sdh-space-1);padding:var(--sdh-space-1);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-subtle)}.configurator__view-switcher button{min-height:44px;padding:0 var(--sdh-space-3);border:0;border-radius:var(--sdh-radius-full);background:transparent;font-size:.78rem;font-weight:750}.configurator__view-switcher button[aria-pressed=true]{background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator__view-switcher button:disabled{opacity:.52}.configurator__preview-stage{position:relative;display:grid;min-height:380px;place-items:center;overflow:hidden}.configurator__view-transition{position:absolute;z-index:20;inset:0;pointer-events:none;background:linear-gradient(105deg,rgb(252 251 248/0) 10%,rgb(252 251 248/62%) 50%,rgb(252 251 248/0) 90%);animation:configurator-view-transition var(--sdh-motion-280) ease-out both}@keyframes configurator-view-transition{0%{opacity:1;transform:translateX(-8%)}to{opacity:0;transform:translateX(8%)}}.configurator__render-stage{display:grid;width:100%;height:100%;min-height:380px;place-items:stretch}.configurator__render-stage>*{grid-area:1/1}.configurator__render-stage--front{--front-editor-visual-height:min(62vh,640px);position:relative;width:100%;min-height:calc(var(--front-editor-visual-height) + 120px);align-self:center}.configurator__render-stage--front>.bookcase-viewport{position:absolute;z-index:1;top:var(--sdh-space-3);left:var(--sdh-space-3);width:calc(100% - var(--sdh-space-6));height:calc(var(--front-editor-visual-height) + 2px);min-height:400px}.configurator__render-stage--front>.front-editor{align-self:start}.selected-panel-editor{position:absolute;z-index:6;bottom:var(--sdh-space-3);display:grid;width:min(330px,calc(100% - var(--sdh-space-6)));gap:var(--sdh-space-2);padding:var(--sdh-space-3);border:1px solid rgb(255 255 255/76%);border-radius:var(--sdh-radius-lg);background:rgb(255 255 255/92%);box-shadow:0 16px 42px rgb(25 24 22/18%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.selected-panel-editor__header{display:flex;gap:var(--sdh-space-3);align-items:flex-start;justify-content:space-between}.selected-panel-editor__header>span{display:flex;min-width:0;flex-direction:column;gap:2px}.selected-panel-editor__header small{color:var(--sdh-action-primary);font-size:.57rem;font-weight:800;letter-spacing:.08em}.selected-panel-editor__header strong{font-size:.82rem}.selected-panel-editor__header>button{display:inline-grid;width:30px;height:30px;flex:0 0 30px;place-items:center;padding:0;border:1px solid var(--sdh-border-default);border-radius:50%;background:var(--sdh-bg-surface);cursor:pointer;font-size:1rem}.selected-panel-editor>p{margin:0;color:var(--sdh-text-secondary);font-size:.67rem}.configurator__hovered-panel{position:absolute;z-index:5;bottom:var(--sdh-space-3);left:var(--sdh-space-3);margin:0;padding:8px var(--sdh-space-3);border:1px solid rgb(255 255 255/70%);border-radius:var(--sdh-radius-full);background:rgb(25 24 22/82%);color:var(--sdh-text-on-brand);font-size:.65rem;font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.bookcase-viewport{position:relative;width:100%;height:100%;min-height:380px;overflow:hidden;border:1px solid rgb(157 149 136/32%);border-radius:var(--sdh-radius-xl);background:var(--sdh-bg-subtle);box-shadow:0 24px 70px rgb(25 24 22/8%);isolation:isolate}.bookcase-viewport--fallback{display:grid;place-items:center}.bookcase-three-canvas{width:100%!important;height:100%!important;outline:none;touch-action:none}.bookcase-viewport__fallback-status,.bookcase-viewport__hint,.bookcase-viewport__mode,.bookcase-viewport__quality{position:absolute;z-index:2;margin:0;border:1px solid rgb(255 255 255/60%);border-radius:var(--sdh-radius-full);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bookcase-viewport__mode{left:var(--sdh-space-3);background:rgb(25 102 78/90%);color:var(--sdh-text-on-brand);letter-spacing:.08em}.bookcase-viewport__mode,.bookcase-viewport__quality{top:var(--sdh-space-3);padding:7px var(--sdh-space-3);font-size:.62rem;font-weight:800}.bookcase-viewport__quality{position:absolute;z-index:2;left:104px;max-width:calc(100% - 220px);overflow:hidden;border:1px solid rgb(255 255 255/60%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/82%);color:var(--sdh-text-secondary);text-overflow:ellipsis;white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bookcase-viewport--front .bookcase-viewport__hint,.bookcase-viewport--front .bookcase-viewport__mode,.bookcase-viewport--front .bookcase-viewport__quality{opacity:0;pointer-events:none}.bookcase-viewport__visual-controls{position:absolute;z-index:12;top:52px;left:var(--sdh-space-3);display:flex;max-width:calc(100% - var(--sdh-space-6));min-height:38px;flex-wrap:wrap;gap:4px var(--sdh-space-2);align-items:center;padding:4px 5px;border:1px solid rgb(255 255 255/72%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/92%);box-shadow:0 10px 30px rgb(25 24 22/12%);color:var(--sdh-text-secondary);font-size:.62rem;font-weight:800;pointer-events:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bookcase-viewport--front .bookcase-viewport__visual-controls{top:var(--sdh-space-3);max-width:calc(100% - 205px)}.bookcase-viewport__visual-controls-toggle{display:none}.bookcase-viewport__visual-controls-fields{display:flex;flex-wrap:wrap;gap:4px var(--sdh-space-2);align-items:center}.bookcase-viewport__lighting-preset,.bookcase-viewport__quality-preference{display:inline-flex;gap:var(--sdh-space-2);align-items:center;padding-left:var(--sdh-space-2);white-space:nowrap}.bookcase-viewport__lighting-preset select,.bookcase-viewport__quality-preference select{min-height:28px;padding:3px 25px 3px 9px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-full);background-color:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font:inherit}.bookcase-viewport__lighting-preset select:hover,.bookcase-viewport__quality-preference select:hover{border-color:var(--sdh-border-strong)}.bookcase-viewport__lighting-preset select:focus-visible,.bookcase-viewport__quality-preference select:focus-visible{outline:2px solid var(--sdh-border-focus);outline-offset:2px}.bookcase-front-zoom{position:absolute;z-index:12;top:var(--sdh-space-3);right:var(--sdh-space-3);display:grid;min-height:42px;grid-template-columns:34px minmax(54px,auto) 34px 34px;gap:3px;align-items:center;padding:4px;border:1px solid rgb(255 255 255/72%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/92%);box-shadow:0 10px 30px rgb(25 24 22/14%);pointer-events:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bookcase-front-zoom button{display:inline-grid;width:34px;height:34px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:var(--sdh-text-primary);cursor:pointer;font-size:1rem;font-weight:800;line-height:1}.bookcase-front-zoom button:hover:not(:disabled){background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary)}.bookcase-front-zoom button:disabled{cursor:default;opacity:.35}.bookcase-front-zoom output{min-width:54px;color:var(--sdh-action-primary-hover);font-size:.7rem;font-weight:850;text-align:center;-webkit-user-select:none;user-select:none}.bookcase-front-zoom__reset{border-left:1px solid var(--sdh-border-default)!important;border-radius:0 var(--sdh-radius-full) var(--sdh-radius-full) 0!important}.bookcase-scale-control{position:absolute;z-index:10;top:var(--sdh-space-3);right:var(--sdh-space-3);display:grid;width:min(320px,calc(100% - var(--sdh-space-6)));justify-items:end}.bookcase-reference-height-label{display:grid;min-width:76px;padding:5px 7px;border:1px solid rgb(25 102 78/28%);border-radius:var(--sdh-radius-sm);background:rgb(255 255 255/94%);color:var(--sdh-text-primary);box-shadow:0 6px 18px rgb(25 24 22/14%);pointer-events:none;text-align:left;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bookcase-reference-height-label strong{color:var(--sdh-action-primary);font-size:.72rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.bookcase-reference-height-label small{margin-top:2px;color:var(--sdh-text-tertiary);font-size:.5rem;line-height:1.1}.bookcase-scale-control__trigger{display:inline-flex;gap:7px;align-items:center;padding:7px var(--sdh-space-3);border:1px solid rgb(255 255 255/68%);border-radius:var(--sdh-radius-full);background:rgb(25 24 22/72%);color:var(--sdh-text-on-brand);box-shadow:0 8px 22px rgb(25 24 22/10%);cursor:pointer;font-size:.62rem;font-weight:750;letter-spacing:.025em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bookcase-scale-control__trigger:hover,.bookcase-scale-control__trigger[aria-expanded=true]{background:rgb(25 102 78/92%)}.bookcase-scale-control__trigger span{display:inline-grid;width:18px;height:18px;place-items:center;border-radius:50%;background:rgb(255 255 255/16%);font-size:.78rem}.bookcase-scale-control__panel{display:flex;flex-direction:column;width:100%;max-height:min(560px,calc(100vh - 180px));margin-top:var(--sdh-space-2);padding:var(--sdh-space-3);overflow:auto;border:1px solid rgb(221 216 205/84%);border-radius:var(--sdh-radius-lg);background:rgb(255 255 255/94%);box-shadow:0 18px 48px rgb(25 24 22/18%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.bookcase-scale-control__panel[hidden]{display:none}.bookcase-scale-control__heading{display:flex;order:0;gap:var(--sdh-space-3);align-items:flex-start;justify-content:space-between;margin-bottom:var(--sdh-space-2)}.bookcase-scale-control__heading span{display:grid;gap:2px}.bookcase-scale-control__heading small{color:var(--sdh-action-primary);font-size:.58rem;font-weight:800;letter-spacing:.08em}.bookcase-scale-control__heading strong{font-size:.82rem}.bookcase-scale-control__heading button{width:30px;height:30px;border:1px solid var(--sdh-border-default);border-radius:50%;background:var(--sdh-bg-surface);cursor:pointer}.bookcase-scale-control__section{padding:var(--sdh-space-3) 0;border-top:1px solid var(--sdh-border-default)}.bookcase-scale-control__section--furniture{order:1}.bookcase-scale-control__section--baseboard{order:2}.bookcase-scale-control__section--person{order:3}.bookcase-scale-control__section h3{margin:0 0 var(--sdh-space-2);color:var(--sdh-text-primary);font-size:.76rem}.bookcase-scale-control__section-intro{display:flex;gap:var(--sdh-space-3);align-items:flex-start;justify-content:space-between}.bookcase-scale-control__section-intro>span{display:grid;gap:2px}.bookcase-scale-control__section-intro h3{margin:0}.bookcase-scale-control__section-intro small{color:var(--sdh-text-tertiary);font-size:.6rem;line-height:1.35}.bookcase-scale-control__section-intro output{flex:0 0 auto;padding:4px 7px;border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary);font-size:.64rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bookcase-scale-control__placement-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:var(--sdh-space-3)}.bookcase-scale-control__placement-modes button{display:grid;min-width:0;min-height:76px;padding:7px 5px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);color:var(--sdh-text-secondary);cursor:pointer;place-content:center;text-align:center}.bookcase-scale-control__placement-modes button>span{color:var(--sdh-action-primary);font-size:1rem;line-height:1}.bookcase-scale-control__placement-modes button strong{margin-top:5px;font-size:.6rem;line-height:1.2}.bookcase-scale-control__placement-modes button small{margin-top:2px;color:var(--sdh-text-tertiary);font-size:.52rem;line-height:1.2}.bookcase-scale-control__placement-modes button:hover,.bookcase-scale-control__placement-modes button[aria-pressed=true]{border-color:var(--sdh-action-primary);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary);box-shadow:inset 0 0 0 1px var(--sdh-action-primary)}.bookcase-scale-control__wall-placement{min-width:0;margin:var(--sdh-space-3) 0 0;padding:var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:color-mix(in srgb,var(--sdh-bg-subtle) 70%,transparent)}.bookcase-scale-control__wall-placement legend{padding:0 5px;color:var(--sdh-text-primary);font-size:.64rem;font-weight:800}.bookcase-scale-control__wall-placement>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.bookcase-scale-control__wall-placement>div button{min-height:32px;padding:4px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-secondary);font-size:.58rem;font-weight:750;cursor:pointer}.bookcase-scale-control__wall-placement>div button[aria-pressed=true]{border-color:var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.bookcase-scale-control__free-placement{display:grid;gap:2px;margin-top:var(--sdh-space-2);padding:var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-subtle)}.bookcase-scale-control__rotation-row{display:flex;gap:var(--sdh-space-2);align-items:center;justify-content:space-between;margin-top:var(--sdh-space-2);padding:7px var(--sdh-space-2);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-brand-subtle)}.bookcase-scale-control__rotation-row>span{display:grid;gap:1px}.bookcase-scale-control__rotation-row small{color:var(--sdh-text-tertiary);font-size:.5rem;font-weight:800;letter-spacing:.08em}.bookcase-scale-control__rotation-row strong{color:var(--sdh-action-primary);font-size:.72rem}.bookcase-scale-control__rotation-row button{min-height:32px;padding:0 var(--sdh-space-3);border:1px solid var(--sdh-action-primary);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-surface);color:var(--sdh-action-primary);font-size:.58rem;font-weight:800;cursor:pointer}.bookcase-scale-control__fit-status{display:grid;gap:3px;margin-top:var(--sdh-space-2);padding:var(--sdh-space-2);border:1px solid rgb(25 102 78/28%);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover)}.bookcase-scale-control__fit-status.is-blocked{border-color:var(--sdh-border-warning);background:var(--sdh-bg-warning-subtle);color:var(--sdh-text-warning)}.bookcase-scale-control__fit-status strong{font-size:.62rem}.bookcase-scale-control__fit-status small{color:var(--sdh-text-secondary);font-size:.54rem;line-height:1.4}.bookcase-scale-control__placement-note,.bookcase-scale-control__safety-note{margin:var(--sdh-space-2) 0 0;padding:var(--sdh-space-2);border-radius:var(--sdh-radius-sm);font-size:.58rem;line-height:1.4}.bookcase-scale-control__placement-note{background:var(--sdh-bg-subtle);color:var(--sdh-text-secondary)}.bookcase-scale-control__safety-note{border:1px solid #e3c98f;background:#fff8e8;color:#72531f}.bookcase-scale-control__installation-fields{display:grid;gap:var(--sdh-space-2);margin-top:var(--sdh-space-3)}.bookcase-scale-control__select-field{display:grid;gap:5px;color:var(--sdh-text-primary);font-size:.62rem;font-weight:750}.bookcase-scale-control__select-field select{width:100%;min-height:36px;padding:0 var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);font:inherit}.bookcase-scale-control__select-field select:focus-visible{border-color:var(--sdh-border-focus);outline:2px solid color-mix(in srgb,var(--sdh-border-focus) 24%,transparent);outline-offset:1px}.bookcase-scale-control__field{display:grid;gap:6px;padding:var(--sdh-space-2) 0}.bookcase-scale-control__field>span{display:flex;gap:var(--sdh-space-3);align-items:center;justify-content:space-between;color:var(--sdh-text-primary);font-size:.72rem;font-weight:750}.bookcase-scale-control__field output{color:var(--sdh-action-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bookcase-scale-control__field>input[type=range]{width:100%;accent-color:var(--sdh-action-primary);cursor:ew-resize}.bookcase-scale-control__field>input[type=range]:disabled{cursor:not-allowed}.bookcase-scale-control__value-input{display:grid;overflow:hidden;grid-template-columns:minmax(48px,68px) auto;align-items:center;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface)}.bookcase-scale-control__value-input input{width:100%;height:30px;padding:0 4px 0 var(--sdh-space-2);border:0;outline:0;background:transparent;color:var(--sdh-text-primary);font-size:.68rem;font-weight:750;text-align:right;appearance:textfield}.bookcase-scale-control__value-input input::-webkit-inner-spin-button,.bookcase-scale-control__value-input input::-webkit-outer-spin-button{margin:0;appearance:none}.bookcase-scale-control__value-input span{padding-right:var(--sdh-space-2);color:var(--sdh-text-tertiary);font-size:.58rem}.bookcase-scale-control__value-input:focus-within{border-color:var(--sdh-border-focus);box-shadow:0 0 0 3px rgb(25 102 78/12%)}.bookcase-scale-control__field small{color:var(--sdh-text-tertiary);font-size:.6rem;line-height:1.35}.bookcase-scale-control__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sdh-space-2);margin-top:var(--sdh-space-2)}.bookcase-scale-control__actions button{min-height:34px;padding:0 var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font-size:.64rem;font-weight:750}.bookcase-scale-control__actions button:last-child{grid-column:1/-1}.bookcase-scale-control__actions button:hover:not(:disabled){border-color:var(--sdh-action-primary);color:var(--sdh-action-primary)}.bookcase-scale-control__actions button:disabled{cursor:not-allowed;opacity:.45}.bookcase-scale-control__toggle-row{display:flex;gap:var(--sdh-space-3);align-items:center;justify-content:space-between}.bookcase-scale-control__toggle-row>span{display:grid;gap:2px}.bookcase-scale-control__toggle-row h3{margin:0}.bookcase-scale-control__toggle-row small{color:var(--sdh-text-tertiary);font-size:.6rem}.bookcase-scale-control__switch{position:relative;flex:0 0 auto;width:42px;height:24px}.bookcase-scale-control__switch input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.bookcase-scale-control__switch span{position:absolute;inset:0;border-radius:var(--sdh-radius-full);background:var(--sdh-border-strong);cursor:pointer;transition:background-color var(--sdh-motion-150) ease}.bookcase-scale-control__switch span:after{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--sdh-bg-surface);box-shadow:0 2px 5px rgb(25 24 22/20%);content:"";transition:transform var(--sdh-motion-150) ease}.bookcase-scale-control__switch input:checked+span{background:var(--sdh-action-primary)}.bookcase-scale-control__switch input:checked+span:after{transform:translateX(18px)}.bookcase-scale-control__switch input:focus-visible+span{outline:3px solid rgb(25 102 78/24%);outline-offset:2px}.bookcase-scale-control__baseboard-fields[aria-disabled=true]{opacity:.5}.bookcase-scale-control__baseboard-reset,.bookcase-scale-control__section-reset{width:100%;min-height:34px;margin-top:var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);color:var(--sdh-text-secondary);cursor:pointer;font-size:.64rem;font-weight:750}.bookcase-scale-control__baseboard-reset:hover,.bookcase-scale-control__section-reset:hover:not(:disabled){border-color:var(--sdh-action-primary);color:var(--sdh-action-primary)}.bookcase-scale-control__section-reset:disabled{cursor:not-allowed;opacity:.45}.bookcase-viewport__fallback-status,.bookcase-viewport__hint{right:50%;bottom:var(--sdh-space-3);padding:8px var(--sdh-space-3);background:rgb(255 255 255/78%);color:var(--sdh-text-secondary);font-size:.68rem;font-weight:700;text-align:center;transform:translateX(50%);white-space:nowrap}.bookcase-viewport__webgl-message{display:grid;min-height:100%;place-items:center;margin:0;padding:var(--sdh-space-6);color:var(--sdh-text-secondary);text-align:center}.bookcase-technical-drawing{position:relative;width:100%;height:100%;min-height:380px;margin:0;overflow:hidden;border:1px solid rgb(157 149 136/45%);border-radius:var(--sdh-radius-xl);background:var(--sdh-bg-surface);box-shadow:0 24px 70px rgb(25 24 22/7%)}.bookcase-technical-drawing--invalid{display:grid;place-items:center;padding:var(--sdh-space-6);color:var(--sdh-text-error);text-align:center}.bookcase-technical-drawing__sheet{display:block;width:100%;height:100%;color:var(--sdh-text-primary);font-family:var(--font-manrope),sans-serif}.bookcase-technical-drawing__sheet line,.bookcase-technical-drawing__sheet path,.bookcase-technical-drawing__sheet rect{vector-effect:non-scaling-stroke}.bookcase-technical-drawing__opening-label-box,.bookcase-technical-drawing__outline,.bookcase-technical-drawing__panel{stroke:var(--sdh-text-primary);stroke-width:1.35}.bookcase-technical-drawing__opening-label-box,.bookcase-technical-drawing__outline{fill:none}.bookcase-technical-drawing__height-envelope{fill:none;stroke:var(--sdh-action-primary);stroke-dasharray:7 7;stroke-width:1.1;opacity:.48}.bookcase-technical-drawing__panel{fill:url(#technical-hatch)}.bookcase-technical-drawing__material-fill{opacity:.3;stroke:none}.bookcase-technical-drawing__hatch-line{stroke:var(--sdh-border-default);stroke-width:1}.bookcase-technical-drawing__dimension-line,.bookcase-technical-drawing__extension-line{stroke:var(--sdh-text-primary);stroke-width:1.1}.bookcase-technical-drawing__extension-line{opacity:.68}.bookcase-technical-drawing marker path{fill:var(--sdh-text-primary)}.bookcase-technical-drawing__view-title{fill:var(--sdh-text-primary);font-size:14px;font-weight:800;letter-spacing:.08em;text-anchor:middle}.bookcase-technical-drawing__unit-note{fill:var(--sdh-text-tertiary);font-size:8px;font-weight:750;letter-spacing:.12em;text-anchor:middle}.bookcase-technical-drawing__dimension-text,.bookcase-technical-drawing__note,.bookcase-technical-drawing__opening-index{fill:var(--sdh-text-primary);font-size:12px}.bookcase-technical-drawing__dimension-text--strong{font-size:14px;font-weight:800}.bookcase-technical-drawing__dimension-text--column-height,.bookcase-technical-drawing__dimension-text--opening{font-weight:700;paint-order:stroke;stroke:var(--sdh-bg-surface);stroke-linejoin:round;stroke-width:3px}.bookcase-technical-drawing__dimension-label-background{fill:rgb(255 255 255/90%);stroke:none}.bookcase-technical-drawing__opening-label-box{fill:var(--sdh-bg-surface)}.bookcase-technical-drawing__opening-index{font-size:10px;font-weight:800;text-anchor:middle}.bookcase-technical-drawing__note{fill:var(--sdh-text-secondary);font-size:11px;font-weight:650;text-anchor:middle}.bookcase-technical-drawing__mode{position:absolute;top:var(--sdh-space-3);left:var(--sdh-space-3);padding:7px var(--sdh-space-3);border:1px solid rgb(255 255 255/60%);border-radius:var(--sdh-radius-full);background:rgb(25 24 22/88%);color:var(--sdh-text-on-brand);font-size:.62rem;font-weight:800;letter-spacing:.08em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bookcase-technical-drawing__details,.bookcase-technical-drawing__mobile-summary{display:none}@media (max-width:600px){.bookcase-technical-drawing__details{display:block}.bookcase-technical-drawing__details>summary{padding:12px;min-height:44px;cursor:pointer;font-size:14px}}.bookcase-preview{position:relative;display:flex;width:min(100%,620px);min-height:360px;align-items:center;justify-content:center;margin:0;padding:42px 56px 34px}.bookcase-viewport .bookcase-preview{height:100%}.bookcase-preview--invalid{min-height:260px;padding:var(--sdh-space-7);border:1px dashed var(--sdh-border-error);border-radius:var(--sdh-radius-xl);background:var(--sdh-bg-error-subtle);color:var(--sdh-text-error);text-align:center}.bookcase-preview__model{position:relative;height:clamp(280px,54vh,560px);max-width:100%;max-height:100%;filter:drop-shadow(0 18px 12px rgb(25 24 22/12%))}.bookcase-preview__part{position:absolute;min-width:2px;min-height:2px;border:1px solid rgb(87 82 76/42%);box-shadow:inset 0 0 0 1px rgb(255 255 255/42%);cursor:pointer;padding:0}.bookcase-preview__part--back{z-index:0}.bookcase-preview__part:not(.bookcase-preview__part--back){z-index:1}.bookcase-preview__part:hover,.bookcase-preview__part[aria-pressed=true]{border:3px solid var(--sdh-action-primary)}.bookcase-preview__part--shelf{z-index:2!important}.bookcase-preview__dimension{position:absolute;color:var(--sdh-text-secondary);font-size:.7rem;white-space:nowrap}.bookcase-preview__dimension:before{content:"";position:absolute;background:var(--sdh-border-strong)}.bookcase-preview__dimension--width{top:8px;left:50%;transform:translateX(-50%)}.bookcase-preview__dimension--width:before{top:20px;left:50%;width:220px;height:1px;transform:translateX(-50%)}.bookcase-preview__dimension--height{top:50%;left:4px;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg)}.bookcase-preview__dimension--height:before{top:50%;left:22px;width:1px;height:220px;transform:translateY(-50%)}.bookcase-preview__dimension--depth{right:0;bottom:6px}.bookcase-dimension-anchor{display:inline-flex;min-height:28px;align-items:center;justify-content:center;padding:5px 8px;border:1px solid rgb(190 207 198/96%);border-radius:8px;background:rgb(255 255 255/94%);color:#174d3e;font-family:var(--font-manrope),sans-serif;font-size:.64rem;font-weight:800;line-height:1;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;box-shadow:0 5px 14px rgb(23 60 50/12%);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.bookcase-dimension-anchor[data-axis=width]{border-color:rgb(111 151 137/90%)}.bookcase-dimension-anchor[data-axis=height]{border-color:rgb(132 162 151/90%)}.bookcase-dimension-anchor[data-axis=depth]{border-color:rgb(170 160 121/90%)}.configurator__validation{display:flex;width:min(100%,420px);gap:var(--sdh-space-3);align-items:flex-start;padding:var(--sdh-space-3);border:1px solid var(--sdh-border-focus);border-radius:var(--sdh-radius-lg);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover)}.configurator__validation--invalid{border-color:var(--sdh-border-error);background:var(--sdh-bg-error-subtle);color:var(--sdh-text-error)}.configurator__validation--warning{border-color:var(--sdh-border-warning);background:var(--sdh-bg-warning-subtle);color:var(--sdh-text-warning)}.configurator__validation-icon{display:inline-flex;width:28px;height:28px;flex:0 0 28px;align-items:center;justify-content:center;border-radius:50%;background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator__validation--invalid .configurator__validation-icon{background:var(--sdh-text-error)}.configurator__validation--warning .configurator__validation-icon{background:var(--sdh-border-warning)}.configurator__validation>span:last-child{display:flex;flex-direction:column;gap:3px}.configurator__validation strong{font-size:.82rem}.configurator__validation small{color:var(--sdh-text-secondary);font-size:.7rem;line-height:1.45}.configurator__validation .configurator__automatic-adjustment{margin-top:2px;color:var(--sdh-action-primary-hover);font-weight:750}.configurator__room-fit{display:flex;width:100%;min-width:0;gap:var(--sdh-space-3);align-items:flex-start;padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/30%);border-radius:var(--sdh-radius-lg);background:rgb(232 245 239/72%);color:var(--sdh-action-primary-hover)}.configurator__room-fit--blocked{border-color:var(--sdh-border-warning);background:var(--sdh-bg-warning-subtle);color:var(--sdh-text-warning)}.configurator__room-fit>span:first-child{display:grid;width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);font-size:.75rem;font-weight:850;place-items:center}.configurator__room-fit--blocked>span:first-child{background:var(--sdh-border-warning)}.configurator__room-fit>span:last-child{display:grid;min-width:0;gap:3px}.configurator__room-fit strong{font-size:.76rem}.configurator__room-fit small{color:var(--sdh-text-secondary);font-size:.66rem;line-height:1.45}.configurator__room-fit small.configurator__placement-stability{color:var(--sdh-text-warning);font-weight:750}.configurator__renderer-note{justify-self:end;margin:0;color:var(--sdh-text-tertiary);font-size:.68rem;line-height:1.45;text-align:right}[tabindex]:focus-visible,a:focus-visible,button:focus-visible,canvas:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgb(25 102 78/24%);outline-offset:2px}.configurator-step__trigger:focus-visible{outline-offset:-5px}.configurator-step.is-active .configurator-step__trigger:focus-visible{outline-color:rgb(255 255 255/72%)}.numeric-control__input:focus{border-color:var(--sdh-border-focus);outline:3px solid rgb(25 102 78/12%)}@media (max-width:1100px){.configurator__workspace{grid-template-columns:minmax(340px,380px) minmax(0,1fr)}.configurator__viewport{padding-inline:var(--sdh-space-4)}.configurator__viewport-topline{flex-direction:column}.configurator__view-switcher{width:100%}}@media (max-width:820px){.configurator{padding-bottom:calc(76px + env(safe-area-inset-bottom, 0px))}.configurator__header{position:sticky;top:0;min-height:56px;grid-template-columns:minmax(0,1fr) auto;padding:6px var(--sdh-space-4)}.configurator__brand{display:none}.configurator__save-state{overflow:hidden;max-width:190px;text-overflow:ellipsis;white-space:nowrap}.configurator__reset{min-height:40px;padding-inline:var(--sdh-space-3);font-size:.75rem}.configurator__header-actions{gap:6px}.saved-design-manager__trigger{min-height:40px;padding-inline:var(--sdh-space-3);font-size:.75rem}.saved-design-manager__trigger small{display:none}.saved-design-manager__dialog{position:fixed;top:64px;right:var(--sdh-space-3);left:var(--sdh-space-3);width:auto;max-height:calc(100vh - 76px)}.configurator__workspace{display:flex;min-height:calc(100vh - 56px);flex-direction:column}.configurator__viewport{order:1;min-height:410px;grid-template-rows:auto minmax(250px,1fr) auto;padding:var(--sdh-space-3) var(--sdh-space-4) var(--sdh-space-6);scroll-margin-top:56px}.configurator__viewport-topline{gap:var(--sdh-space-3)}.configurator__viewport-topline>div:first-child{width:100%;justify-content:space-between}.configurator__viewport-topline p{display:none}.configurator__view-switcher{order:-1}.configurator__view-switcher button{min-height:44px}.configurator__preview-stage{min-height:250px}.bookcase-technical-drawing,.bookcase-viewport{height:min(48vh,420px);min-height:300px;border-radius:var(--sdh-radius-lg)}.bookcase-technical-drawing{display:grid;grid-template-rows:minmax(0,1fr) auto}.bookcase-technical-drawing__sheet{height:auto;align-self:center}.bookcase-technical-drawing__mobile-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sdh-space-2);margin:0;padding:var(--sdh-space-3);border-top:1px solid var(--sdh-border-default);background:var(--sdh-bg-subtle)}.bookcase-technical-drawing__mobile-summary>div{min-width:0}.bookcase-technical-drawing__mobile-summary dd,.bookcase-technical-drawing__mobile-summary dt{margin:0}.bookcase-technical-drawing__mobile-summary dt{color:var(--sdh-text-tertiary);font-size:.58rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.bookcase-technical-drawing__mobile-summary dd{margin-top:2px;overflow:hidden;color:var(--sdh-text-primary);font-size:.68rem;font-weight:750;line-height:1.35;text-overflow:ellipsis}.bookcase-viewport__fallback-status,.bookcase-viewport__hint{bottom:var(--sdh-space-2);max-width:calc(100% - var(--sdh-space-4));overflow:hidden;font-size:.62rem;text-overflow:ellipsis}.bookcase-scale-control{top:var(--sdh-space-2);right:var(--sdh-space-2);width:min(300px,calc(100% - var(--sdh-space-4)))}.bookcase-scale-control__trigger{max-width:calc(100% - 92px);overflow:hidden;padding:6px var(--sdh-space-2);font-size:.58rem;text-overflow:ellipsis;white-space:nowrap}.bookcase-scale-control__panel{max-height:330px;padding:var(--sdh-space-2)}.bookcase-preview{width:100%;min-height:250px;padding:30px 42px 24px}.bookcase-preview__model{height:min(42vh,330px)}.bookcase-preview__dimension--width:before{width:150px}.bookcase-preview__dimension--height:before{height:150px}.configurator__validation{width:100%}.configurator__renderer-note{display:none}.configurator__panel{order:2;max-height:none;margin-top:-1px;padding:var(--sdh-space-4) var(--sdh-space-4) calc(104px + env(safe-area-inset-bottom, 0px));overflow:visible;border:1px solid var(--sdh-border-default);border-bottom:0;border-radius:var(--sdh-radius-2xl) var(--sdh-radius-2xl) 0 0;scroll-margin-top:56px}.configurator-progress{top:56px;margin-inline:calc(var(--sdh-space-1) * -1);padding-top:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-lg)}.configurator-issue-center__list{max-height:240px}.configurator-step__navigation{bottom:calc(70px + env(safe-area-inset-bottom, 0px))}.configurator-step__navigation button{min-height:48px}.configurator-mobile-dock{position:fixed;z-index:30;right:var(--sdh-space-3);bottom:calc(var(--sdh-space-3) + env(safe-area-inset-bottom, 0px));left:var(--sdh-space-3);display:grid;min-height:60px;grid-template-columns:minmax(0,1fr) auto;gap:var(--sdh-space-2);align-items:center;padding:6px;border:1px solid rgb(25 102 78/18%);border-radius:var(--sdh-radius-lg);background:rgb(255 255 255/94%);box-shadow:0 14px 40px rgb(25 38 32/22%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.configurator-mobile-dock__step{display:grid;min-width:0;gap:1px;padding-left:var(--sdh-space-2)}.configurator-mobile-dock__step small{color:var(--sdh-action-primary);font-size:.54rem;font-weight:850;letter-spacing:.07em}.configurator-mobile-dock__step strong{overflow:hidden;color:var(--sdh-text-primary);font-size:.68rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.configurator-mobile-dock>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.configurator-mobile-dock button{display:grid;min-width:74px;min-height:48px;grid-template-columns:auto 1fr;gap:5px;align-items:center;padding:0 var(--sdh-space-2);border:0;border-radius:var(--sdh-radius-md);background:transparent;color:var(--sdh-text-secondary);cursor:pointer;font:inherit;font-size:.62rem;font-weight:800}.configurator-mobile-dock button span{font-size:.78rem}.configurator-mobile-dock button[aria-pressed=true]{background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);box-shadow:0 4px 12px rgb(25 102 78/22%)}.configurator__panel:before{content:"";width:44px;height:4px;align-self:center;border-radius:var(--sdh-radius-full);background:var(--sdh-border-strong)}.configurator__panel-intro{padding-top:var(--sdh-space-1)}.shared-design-page__intro{grid-template-columns:minmax(0,1fr);gap:var(--sdh-space-5)}.shared-design-viewer__canvas{height:min(62vh,560px);min-height:380px}.shared-design-page__cta{align-items:flex-start;flex-direction:column}}@media (min-width:521px) and (max-width:820px){.configurator-form__controls,.material-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.site-home{padding:var(--sdh-space-4)}.configurator__viewport{min-height:390px}.configurator__view-switcher button{padding-inline:var(--sdh-space-2);font-size:.72rem}.configurator__manufacturing-status{font-size:.6rem}.configurator__panel{padding-inline:var(--sdh-space-4)}.configurator-mobile-dock__step strong{max-width:118px}.configurator-progress{gap:var(--sdh-space-2);margin-inline:0;padding-inline:var(--sdh-space-3)}.configurator-progress__summary em{max-width:220px}.configurator-progress__steps button small{display:none;min-height:0}.configurator-issue-center__header{grid-template-columns:30px minmax(0,1fr)}.configurator-issue-center__header output{display:none}.configurator-issue-center__list li{grid-template-columns:22px minmax(0,1fr)}.configurator-issue-center__list button{width:100%;grid-column:2}.configurator-form__controls,.configurator-step__description,.configurator-step__navigation,.configurator-step__trigger,.material-options{padding-inline:var(--sdh-space-3)}.configurator-step__focus-card,.configurator-step__review-actions,.configurator-step__shelf-selection-slot,.configurator-step__task-list,.placement-suitability-report{margin-inline:var(--sdh-space-3)}.configurator-step__focus-card{grid-template-columns:38px minmax(0,1fr)}.configurator-step__focus-card output{grid-column:2;justify-self:start}.placement-suitability-report__header{grid-template-columns:34px minmax(0,1fr)}.placement-suitability-report__status-icon{width:34px;height:34px}.placement-suitability-report__header output{grid-column:2;justify-self:start}.placement-suitability-report__checks li{grid-template-columns:22px minmax(0,1fr)}.placement-suitability-report__checks button{width:100%;grid-column:2}.configurator-step__navigation{align-items:flex-end}.configurator-step__navigation>span small{display:none}.configurator-summary__facts{grid-template-columns:repeat(2,minmax(0,1fr))}.configurator-summary__facts div:last-child{grid-column:1/-1}.saved-design-manager__share-create,.saved-design-manager__share-result>div{grid-template-columns:minmax(0,1fr)}.saved-design-manager__share-list li{grid-template-columns:minmax(0,1fr) auto}.saved-design-manager__share-list li>button{grid-column:1/-1}.shared-design-page{padding-inline:var(--sdh-space-3)}.shared-design-page__header{min-height:64px}.shared-design-page__intro{padding-top:var(--sdh-space-6)}.shared-design-viewer__toolbar{align-items:stretch;flex-direction:column;padding:var(--sdh-space-3)}.shared-design-viewer__toolbar>div:last-child{width:100%}.shared-design-viewer__canvas{height:460px;min-height:360px;padding:var(--sdh-space-2)}.shared-design-viewer>footer{align-items:flex-start;padding-inline:var(--sdh-space-3)}.shared-design-page__cta>a{width:100%}}.room-plan-editor{display:grid;width:100%;min-height:620px;align-self:stretch;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-xl);background:var(--sdh-bg-surface);box-shadow:0 20px 56px rgb(25 24 22/8%)}.room-plan-editor__header{display:flex;gap:var(--sdh-space-6);align-items:flex-start;justify-content:space-between;padding:var(--sdh-space-5) var(--sdh-space-6);border-bottom:1px solid var(--sdh-border-default)}.room-plan-editor__header h2,.room-plan-editor__header p,.room-plan-editor__header span{margin:0}.room-plan-editor__header p{color:var(--sdh-action-primary);font-size:.62rem;font-weight:850;letter-spacing:.08em}.room-plan-editor__header h2{margin-top:3px;color:var(--sdh-text-primary);font-size:1.12rem;letter-spacing:-.025em}.room-plan-editor__header>div:first-child>span{display:block;margin-top:4px;color:var(--sdh-text-secondary);font-size:.7rem;line-height:1.45}.room-plan-editor__status{display:grid;flex:0 0 auto;gap:2px;justify-items:end}.room-plan-editor__status span{color:var(--sdh-text-tertiary);font-size:.62rem}.room-plan-editor__status strong{display:inline-flex;min-height:28px;align-items:center;padding:0 var(--sdh-space-3);border-radius:var(--sdh-radius-full);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover);font-size:.64rem}.room-plan-editor__toolbar{display:flex;flex-wrap:wrap;gap:var(--sdh-space-3);align-items:center;justify-content:space-between;padding:var(--sdh-space-2) var(--sdh-space-4);border-bottom:1px solid var(--sdh-border-default);background:var(--sdh-bg-subtle)}.room-plan-editor__toolbar>div{display:flex;gap:6px;align-items:center}.room-plan-editor__view-switch{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface)}.room-plan-editor__view-switch button{min-height:30px;padding:0 var(--sdh-space-3);border:0;background:transparent}.room-plan-editor__view-switch button.is-active{background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.room-plan-editor__wall-mode-status{display:grid!important;gap:1px!important;justify-items:end}.room-plan-editor__wall-mode-status span{color:var(--sdh-action-primary);font-size:.5rem;font-weight:850;letter-spacing:.1em}.room-plan-editor__wall-mode-status strong{color:var(--sdh-text-primary);font-size:.68rem}.room-plan-editor__toolbar button,.room-plan-editor__zoom output{display:inline-flex;min-height:36px;align-items:center;justify-content:center;padding:0 var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-secondary);font:inherit;font-size:.66rem;font-weight:750}.room-plan-editor__toolbar button{gap:6px;cursor:pointer}.room-plan-editor__toolbar button:hover:not(:disabled){border-color:var(--sdh-border-focus);color:var(--sdh-action-primary-hover)}.room-plan-editor__toolbar button.is-active{border-color:rgb(25 102 78/24%);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover)}.room-plan-editor__toolbar button:disabled{cursor:not-allowed;opacity:.42}.room-plan-editor__zoom button:first-child,.room-plan-editor__zoom button:nth-child(3){width:36px;padding:0;font-size:1rem}.room-plan-editor__zoom output{min-width:56px;border-color:transparent;background:transparent}.room-plan-editor__workspace{position:relative;display:grid;min-height:0;grid-template-columns:minmax(0,1fr) minmax(260px,310px)}@media (min-width:1051px){.room-plan-editor__workspace{height:clamp(520px,68vh,760px)}.room-plan-editor__canvas,.room-plan-editor__canvas svg,.room-plan-editor__inspector{height:100%}}.room-plan-editor__canvas{position:relative;min-width:0;min-height:480px;overflow:hidden;background:#f3f1eb;cursor:grab;overscroll-behavior:contain}.room-plan-editor__canvas.is-panning,.room-plan-editor__canvas.is-panning *{cursor:grabbing!important}.configurator__panel[hidden]{display:none}.room-plan-editor__canvas svg{display:block;width:100%;height:100%;min-height:480px;touch-action:none;-webkit-user-select:none;user-select:none}.room-plan-editor__grid-line{stroke:#d8d3c8;stroke-width:4}.room-plan-editor__floor{fill:#e8e3d8;stroke:none}.room-plan-editor__selection-outline{pointer-events:none;fill:none;stroke:rgb(25 102 78/42%);stroke-dasharray:7 6;stroke-width:1.5px;vector-effect:non-scaling-stroke}.room-plan-editor__dimension-line{stroke:#57524c;stroke-width:10}.room-plan-editor__arrow{fill:#57524c}.room-plan-editor__dimension-label{fill:#191816;font-family:var(--sdh-font-family);font-size:112px;font-weight:800}.room-plan-editor__wall{outline:none}.room-plan-editor__wall--east,.room-plan-editor__wall--west{cursor:ew-resize}.room-plan-editor__wall--north,.room-plan-editor__wall--south{cursor:ns-resize}.room-plan-editor__wall-visible{stroke:#4f4a43;stroke-linecap:square;stroke-width:120;transition:stroke var(--sdh-motion-150) ease}.room-plan-editor__wall.is-dragging .room-plan-editor__wall-visible{stroke:var(--sdh-action-primary);transition:none}.room-plan-editor__wall.is-invalid .room-plan-editor__wall-visible{stroke:var(--sdh-text-danger)}.room-plan-editor__wall-hit{stroke:transparent;stroke-width:320}.room-plan-editor__wall.is-selected .room-plan-editor__wall-visible,.room-plan-editor__wall:focus .room-plan-editor__wall-visible,.room-plan-editor__wall:hover .room-plan-editor__wall-visible{stroke:var(--sdh-action-primary)}.room-plan-editor__wall:focus .room-plan-editor__wall-hit{stroke:rgb(25 102 78/10%)}.room-plan-editor__wall-handle{fill:var(--sdh-bg-surface);stroke:#9d9588;stroke-width:12;filter:drop-shadow(0 14px 18px rgb(25 24 22/18%))}.room-plan-editor__wall-handle-halo{pointer-events:none;fill:rgb(255 255 255/1%);stroke:transparent;stroke-width:2px;vector-effect:non-scaling-stroke}.room-plan-editor__wall.is-selected .room-plan-editor__wall-handle-halo,.room-plan-editor__wall:focus .room-plan-editor__wall-handle-halo,.room-plan-editor__wall:hover .room-plan-editor__wall-handle-halo{stroke:rgb(25 102 78/28%)}.room-plan-editor__wall.is-dragging .room-plan-editor__wall-handle-halo{fill:rgb(25 102 78/10%);stroke:var(--sdh-action-primary)}.room-plan-editor__wall.is-invalid .room-plan-editor__wall-handle-halo{fill:rgb(159 47 37/10%);stroke:var(--sdh-text-danger)}.room-plan-editor__wall.is-selected .room-plan-editor__wall-handle{fill:var(--sdh-action-primary);stroke:var(--sdh-bg-surface)}.room-plan-editor__wall-handle-icon{pointer-events:none;fill:var(--sdh-text-primary);font-family:var(--sdh-font-family);font-size:112px;font-weight:850}.room-plan-editor__wall-add-control{cursor:pointer;outline:none}.room-plan-editor__wall-add-control circle{fill:var(--sdh-action-primary);stroke:rgb(255 255 255/92%);stroke-width:18;vector-effect:non-scaling-stroke;filter:drop-shadow(0 8px 12px rgb(25 24 22/22%))}.room-plan-editor__wall-add-control text{fill:var(--sdh-text-on-brand);font-family:var(--sdh-font-family);font-size:125px;font-weight:650;pointer-events:none}.room-plan-editor__wall-add-control:focus circle,.room-plan-editor__wall-add-control:hover circle{fill:var(--sdh-action-primary-hover);stroke:var(--sdh-bg-brand-subtle);stroke-width:28}.room-plan-editor__wall-view-control{cursor:pointer;outline:none}.room-plan-editor__wall-view-control rect{fill:rgb(255 255 255/96%);stroke:var(--sdh-action-primary);stroke-width:12;vector-effect:non-scaling-stroke;filter:drop-shadow(0 8px 12px rgb(25 24 22/18%))}.room-plan-editor__wall-view-control text{pointer-events:none;fill:var(--sdh-action-primary-hover);font-family:var(--sdh-font-family);font-size:68px;font-weight:850;letter-spacing:.01em}.room-plan-editor__wall-view-control:focus rect,.room-plan-editor__wall-view-control:hover rect{fill:var(--sdh-bg-brand-subtle);stroke:var(--sdh-action-primary-hover);stroke-width:18}.room-plan-editor__wall-context-actions{isolation:isolate}.room-plan-editor__wall-context-connector{pointer-events:none;stroke:rgb(25 102 78/42%);stroke-dasharray:24 20;stroke-linecap:round;stroke-width:8}.room-plan-editor__wall.is-selected .room-plan-editor__wall-handle-icon{fill:var(--sdh-text-on-brand)}.room-plan-editor__wall-resize-overlay{pointer-events:none}.room-plan-editor__smart-guide{stroke:var(--sdh-action-primary);stroke-dasharray:7 6;stroke-width:1.5px;vector-effect:non-scaling-stroke}.room-plan-editor__fixed-anchor{fill:var(--sdh-bg-surface);stroke:var(--sdh-border-strong);stroke-width:2px;vector-effect:non-scaling-stroke}.room-plan-editor__active-anchor{fill:var(--sdh-action-primary);stroke:var(--sdh-bg-surface);stroke-width:3px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 8px 12px rgb(25 102 78/24%))}.room-plan-editor__wall-resize-bubble rect{fill:rgb(255 255 255/98%);stroke:var(--sdh-action-primary);stroke-width:2px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 12px 22px rgb(25 24 22/18%))}.room-plan-editor__wall-resize-bubble text{font-family:var(--sdh-font-family)}.room-plan-editor__wall-resize-value{fill:var(--sdh-text-primary);font-size:90px;font-weight:850}.room-plan-editor__wall-resize-delta{fill:var(--sdh-action-primary-hover);font-size:58px;font-weight:750}.room-plan-editor__wall-resize-overlay.is-invalid .room-plan-editor__smart-guide{stroke:var(--sdh-text-danger)}.room-plan-editor__wall-resize-overlay.is-invalid .room-plan-editor__active-anchor{fill:var(--sdh-text-danger)}.room-plan-editor__wall-resize-overlay.is-invalid .room-plan-editor__wall-resize-bubble rect{stroke:var(--sdh-text-danger)}.room-plan-editor__wall-resize-overlay.is-invalid .room-plan-editor__wall-resize-delta{fill:var(--sdh-text-danger)}.room-plan-editor__element{cursor:grab;outline:none}.room-plan-editor__element.is-dragging,.room-plan-editor__element:active{cursor:grabbing}.room-plan-editor__element rect{stroke-width:18;transition:fill var(--sdh-motion-150) ease,stroke var(--sdh-motion-150) ease}.room-plan-editor__element text{pointer-events:none;fill:var(--sdh-text-on-brand);font-family:var(--sdh-font-family);font-size:84px;font-weight:850}.room-plan-editor__plan-symbol{pointer-events:none;fill:none;stroke:var(--sdh-action-primary-hover);stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.room-plan-editor__plan-symbol line,.room-plan-editor__plan-symbol path{vector-effect:non-scaling-stroke}.room-plan-editor__plan-symbol--door path{stroke-dasharray:7 6}.room-plan-editor__plan-symbol--window{stroke:#f8fcfd;stroke-width:2.5}.room-plan-editor__plan-symbol--passage{stroke:#f8fcfd;stroke-width:3}.room-plan-editor__element-symbol-label{paint-order:stroke fill;stroke:rgb(25 24 22/48%);stroke-width:10}.room-plan-editor__element--opening rect{fill:#4f7f94;stroke:#e9f3f6}.room-plan-editor__element--feature rect{fill:#b9783f;stroke:#fff0df}.room-plan-editor__element--obstacle rect{fill:#9b4a43;stroke:#fbe9e7}.room-plan-editor__element.is-selected rect,.room-plan-editor__element:focus rect,.room-plan-editor__element:hover rect{stroke:var(--sdh-text-primary);stroke-width:32}.room-plan-editor__element.is-dragging rect{stroke:var(--sdh-action-primary);stroke-width:38;filter:drop-shadow(0 24px 32px rgb(25 102 78/24%))}.room-plan-editor__element.is-invalid rect{stroke:var(--sdh-text-danger);filter:drop-shadow(0 24px 32px rgb(159 47 37/22%))}.room-plan-editor__element-drag-measurements{pointer-events:none}.room-plan-editor__element-drag-dimension line{stroke:var(--sdh-action-primary);stroke-width:12}.room-plan-editor__element-drag-dimension rect{fill:rgb(255 255 255/96%);stroke:var(--sdh-action-primary);stroke-width:10;filter:drop-shadow(0 12px 18px rgb(25 24 22/16%))}.room-plan-editor__element-drag-dimension text{fill:var(--sdh-action-primary-hover);font-family:var(--sdh-font-family);font-size:72px;font-weight:850}.room-plan-editor__element-drag-measurements.is-invalid .room-plan-editor__element-drag-dimension line,.room-plan-editor__element-drag-measurements.is-invalid .room-plan-editor__element-drag-dimension rect{stroke:var(--sdh-text-danger)}.room-plan-editor__element-drag-measurements.is-invalid .room-plan-editor__element-drag-dimension text{fill:var(--sdh-text-danger)}.room-plan-editor__room-area,.room-plan-editor__room-label{pointer-events:none;fill:var(--sdh-text-secondary);font-family:var(--sdh-font-family);font-size:120px;font-weight:800}.room-plan-editor__room-area{fill:var(--sdh-text-tertiary);font-size:96px;font-weight:700}.room-plan-editor__furniture{cursor:grab;outline:none}.room-plan-editor__furniture.is-dragging,.room-plan-editor__furniture:active{cursor:grabbing}.room-plan-editor__furniture-shadow{pointer-events:none;fill:rgb(25 24 22/18%);filter:blur(14px)}.room-plan-editor__furniture-footprint{fill:#cbb99f;stroke:var(--sdh-action-primary);stroke-width:3px;vector-effect:non-scaling-stroke;transition:fill var(--sdh-motion-150) ease,stroke var(--sdh-motion-150) ease}.room-plan-editor__furniture.is-dragging .room-plan-editor__furniture-footprint,.room-plan-editor__furniture:focus .room-plan-editor__furniture-footprint,.room-plan-editor__furniture:hover .room-plan-editor__furniture-footprint{fill:#d8c7ae;stroke-width:5px;filter:drop-shadow(0 22px 28px rgb(25 102 78/22%))}.room-plan-editor__furniture.is-invalid .room-plan-editor__furniture-footprint{fill:rgb(159 47 37/22%);stroke:var(--sdh-text-danger)}.room-plan-editor__furniture-front{pointer-events:none;stroke:var(--sdh-action-primary-pressed);stroke-linecap:round;stroke-width:12}.room-plan-editor__furniture.is-invalid .room-plan-editor__furniture-front{stroke:var(--sdh-text-danger)}.room-plan-editor__furniture-label{pointer-events:none}.room-plan-editor__furniture-label rect{fill:rgb(255 255 255/96%);stroke:var(--sdh-action-primary);stroke-width:2px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 10px 18px rgb(25 24 22/18%))}.room-plan-editor__furniture-label text{fill:var(--sdh-action-primary-pressed);font-family:var(--sdh-font-family);font-size:76px;font-weight:850}.room-plan-editor__furniture-label .room-plan-editor__furniture-dimension-label{fill:var(--sdh-text-secondary);font-size:54px;font-weight:700}.room-plan-editor__furniture.is-invalid .room-plan-editor__furniture-label rect{stroke:var(--sdh-text-danger)}.room-plan-editor__furniture.is-invalid .room-plan-editor__furniture-label text{fill:var(--sdh-text-danger)}.room-plan-editor__furniture-guides{pointer-events:none}.room-plan-editor__furniture-guides line{stroke:rgb(25 102 78/55%);stroke-dasharray:8 7;stroke-width:1.5px;vector-effect:non-scaling-stroke}.room-plan-editor__furniture.is-invalid .room-plan-editor__furniture-guides line{stroke:rgb(159 47 37/65%)}.room-plan-editor__canvas-hint{position:absolute;right:var(--sdh-space-4);bottom:var(--sdh-space-3);left:var(--sdh-space-4);margin:0;padding:7px var(--sdh-space-3);border:1px solid rgb(255 255 255/70%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/84%);color:var(--sdh-text-secondary);font-size:.61rem;font-weight:650;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.room-plan-editor__inspector{display:flex;min-width:0;flex-direction:column;gap:var(--sdh-space-4);padding:var(--sdh-space-4);overflow-y:auto;border-left:1px solid var(--sdh-border-default);background:var(--sdh-bg-surface)}.room-plan-editor__context-heading{display:grid;grid-template-columns:38px minmax(0,1fr);gap:var(--sdh-space-3);align-items:center;padding-bottom:var(--sdh-space-3);border-bottom:1px solid var(--sdh-border-default)}.room-plan-editor__context-heading[data-room-context=element]>span{background:#4f7f94;box-shadow:0 8px 18px rgb(79 127 148/22%)}.room-plan-editor__context-heading[data-room-context=wall]>span{border:1px solid rgb(25 102 78/22%);background:var(--sdh-bg-brand-subtle);box-shadow:none;color:var(--sdh-action-primary)}.room-plan-editor__context-heading>span{display:grid;width:38px;height:38px;border-radius:12px;background:var(--sdh-action-primary);box-shadow:0 8px 18px rgb(25 102 78/18%);color:var(--sdh-text-on-brand);font-size:.67rem;font-weight:850;place-items:center}.room-plan-editor__context-heading>div{display:grid;min-width:0;gap:3px}.room-plan-editor__context-heading strong{color:var(--sdh-text-primary);font-size:.79rem}.room-plan-editor__context-heading small{color:var(--sdh-text-tertiary);font-size:.59rem;line-height:1.4}.room-plan-editor__context-empty{margin:0;padding:var(--sdh-space-4);border:1px dashed var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-subtle);color:var(--sdh-text-secondary);font-size:.65rem;line-height:1.5;text-align:center}.room-plan-editor__empty-selection{display:grid;gap:var(--sdh-space-2);justify-items:center;padding:var(--sdh-space-6) var(--sdh-space-4);border:1px dashed rgb(25 102 78/26%);border-radius:var(--sdh-radius-md);background:linear-gradient(145deg,var(--sdh-bg-surface),#f2f8f5);text-align:center}.room-plan-editor__empty-selection>span{display:grid;width:44px;height:44px;border-radius:50%;background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary);font-size:1.05rem;place-items:center}.room-plan-editor__empty-selection strong{font-size:.72rem}.room-plan-editor__empty-selection p{max-width:230px;margin:0;color:var(--sdh-text-secondary);font-size:.6rem;line-height:1.5}.room-plan-editor__inspector-heading{display:grid;grid-template-columns:34px minmax(0,1fr);gap:var(--sdh-space-3);align-items:center}.room-plan-editor__inspector-heading>span{display:grid;width:34px;height:34px;border-radius:var(--sdh-radius-sm);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);font-size:.65rem;font-weight:850;place-items:center}.room-plan-editor__inspector-heading>div{display:grid;gap:2px}.room-plan-editor__inspector-heading strong{font-size:.76rem}.room-plan-editor__inspector-heading small{color:var(--sdh-text-tertiary);font-size:.62rem}.room-plan-editor__fields{display:grid;gap:var(--sdh-space-3)}.room-plan-editor__field{display:grid;gap:var(--sdh-space-2)}.room-plan-editor__field>label{display:flex;gap:var(--sdh-space-2);align-items:baseline;justify-content:space-between}.room-plan-editor__field>label span,.room-plan-editor__field>label strong{color:var(--sdh-text-primary);font-size:.7rem;font-weight:800}.room-plan-editor__field>label small{color:var(--sdh-text-tertiary);font-size:.56rem}.room-plan-editor__field>div{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:6px}.room-plan-editor__field button{min-height:40px;padding:0;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-subtle);color:var(--sdh-text-primary);cursor:pointer;font:inherit;font-size:1rem}.room-plan-editor__field button:hover:not(:disabled){border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle)}.room-plan-editor__field button:disabled{opacity:.4}.room-plan-editor__field>div>span{position:relative;display:grid}.room-element-editor__field.is-scrubbing input,.room-measurement-control.is-scrubbing input,.room-plan-editor__field>div>span.is-scrubbing input{border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle);cursor:ew-resize;-webkit-user-select:none;user-select:none}.room-plan-editor__field input{width:100%;min-width:0;min-height:40px;padding:0 38px 0 var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);font:inherit;font-size:.75rem;font-weight:800}.room-plan-editor__field input[aria-invalid=true]{border-color:var(--sdh-border-error)}.room-plan-editor__field em{position:absolute;top:50%;right:var(--sdh-space-3);color:var(--sdh-text-tertiary);font-size:.58rem;font-style:normal;transform:translateY(-50%)}.room-plan-editor__error{margin:0;padding:var(--sdh-space-3);border:1px solid var(--sdh-border-error);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-error-subtle);color:var(--sdh-text-error);font-size:.64rem;line-height:1.45}.room-plan-editor__selected-wall{display:grid;gap:var(--sdh-space-2);padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/18%);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-brand-subtle)}.room-plan-editor__selected-wall>span{color:var(--sdh-action-primary);font-size:.55rem;font-weight:850;letter-spacing:.08em}.room-plan-editor__selected-wall>strong{color:var(--sdh-action-primary-pressed);font-size:.76rem}.room-plan-editor__selected-wall dl,.room-plan-editor__summary{display:grid;margin:0}.room-plan-editor__selected-wall dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sdh-space-2)}.room-plan-editor__selected-wall dl>div,.room-plan-editor__summary>div{display:grid;gap:2px}.room-plan-editor__selected-wall dt,.room-plan-editor__summary dt{color:var(--sdh-text-tertiary);font-size:.56rem}.room-plan-editor__selected-wall dd,.room-plan-editor__summary dd{margin:0;color:var(--sdh-text-primary);font-size:.67rem;font-weight:800}.room-plan-editor__selected-wall p{margin:0;padding-top:var(--sdh-space-2);border-top:1px solid rgb(25 102 78/14%);color:var(--sdh-text-secondary);font-size:.59rem;line-height:1.45}.room-plan-editor__furniture-inspector{display:grid;gap:var(--sdh-space-3);padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/20%);border-radius:var(--sdh-radius-md);background:linear-gradient(145deg,#f8fcfa,var(--sdh-bg-brand-subtle))}.room-plan-editor__furniture-inspector.is-invalid{border-color:rgb(159 47 37/35%);background:var(--sdh-bg-error-subtle)}.room-plan-editor__wall-furniture-inspector{display:grid;gap:var(--sdh-space-3);padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/24%);border-radius:var(--sdh-radius-md);background:linear-gradient(145deg,rgb(255 255 255/96%),#edf7f2)}.room-plan-editor__wall-furniture-inspector.is-invalid{border-color:rgb(159 47 37/35%);background:var(--sdh-bg-error-subtle)}.room-plan-editor__wall-furniture-inspector>header{display:grid;grid-template-columns:34px minmax(0,1fr);gap:var(--sdh-space-3);align-items:center}.room-plan-editor__wall-furniture-inspector>header>span{display:grid;width:34px;height:34px;border-radius:var(--sdh-radius-sm);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);font-size:.86rem;place-items:center}.room-plan-editor__wall-furniture-inspector>header>div{display:grid;gap:2px}.room-plan-editor__wall-furniture-inspector>header strong{color:var(--sdh-text-primary);font-size:.7rem}.room-plan-editor__wall-furniture-inspector>header small{color:var(--sdh-text-tertiary);font-size:.56rem;line-height:1.35}.room-plan-editor__wall-furniture-context{display:grid;gap:var(--sdh-space-2)}.room-plan-editor__wall-furniture-context p{margin:0;color:var(--sdh-text-secondary);font-size:.58rem;line-height:1.45}.room-plan-editor__wall-furniture-context button,.room-plan-editor__wall-furniture-nudge button{min-height:34px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-action-primary-hover);cursor:pointer;font:inherit;font-size:.59rem;font-weight:820}.room-plan-editor__wall-furniture-context button:hover,.room-plan-editor__wall-furniture-nudge button:hover{border-color:var(--sdh-border-focus);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.room-plan-editor__wall-furniture-nudge{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.room-plan-editor__wall-furniture-gaps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0}.room-plan-editor__wall-furniture-gaps>div{display:grid;gap:2px;padding:7px 8px;border:1px solid rgb(25 102 78/12%);border-radius:var(--sdh-radius-sm);background:rgb(255 255 255/72%)}.room-plan-editor__wall-furniture-gaps dt{color:var(--sdh-text-tertiary);font-size:.52rem;font-weight:760}.room-plan-editor__wall-furniture-gaps dd{margin:0;color:var(--sdh-text-primary);font-size:.62rem;font-weight:850}.room-plan-editor__furniture-inspector-heading{display:grid;grid-template-columns:34px minmax(0,1fr);gap:var(--sdh-space-3);align-items:center}.room-plan-editor__furniture-inspector-heading>span{display:grid;width:34px;height:34px;border-radius:var(--sdh-radius-sm);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);font-size:.65rem;font-weight:850;place-items:center}.room-plan-editor__furniture-inspector-heading>div{display:grid;gap:2px}.room-plan-editor__furniture-inspector-heading strong{color:var(--sdh-text-primary);font-size:.74rem}.room-plan-editor__furniture-inspector-heading small{color:var(--sdh-text-tertiary);font-size:.57rem;line-height:1.35}.room-plan-editor__furniture-wall-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.room-plan-editor__furniture-actions button,.room-plan-editor__furniture-nudge button,.room-plan-editor__furniture-wall-options button{min-height:34px;padding:0 var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-secondary);cursor:pointer;font:inherit;font-size:.6rem;font-weight:780}.room-plan-editor__furniture-wall-options button:last-child{grid-column:1/-1}.room-plan-editor__furniture-actions button:hover,.room-plan-editor__furniture-nudge button:hover,.room-plan-editor__furniture-wall-options button.is-active,.room-plan-editor__furniture-wall-options button:hover{border-color:var(--sdh-border-focus);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.room-plan-editor__furniture-actions{display:grid;gap:var(--sdh-space-2)}.room-plan-editor__furniture-actions span{color:var(--sdh-text-secondary);font-size:.56rem;line-height:1.45;text-align:center}.room-plan-editor__furniture-nudge{display:grid;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:6px}.room-plan-editor__furniture-nudge button{padding:0;font-size:1rem}.room-plan-editor__furniture-dimensions{display:grid;gap:var(--sdh-space-3);padding-top:var(--sdh-space-3);border-top:1px solid rgb(25 102 78/16%)}.room-plan-editor__furniture-dimensions>header{display:grid;gap:2px}.room-plan-editor__furniture-dimensions>header strong{color:var(--sdh-text-primary);font-size:.68rem}.room-plan-editor__furniture-dimensions>header small{color:var(--sdh-text-tertiary);font-size:.56rem;line-height:1.4}.room-plan-editor__furniture-dimensions>div{display:grid;gap:var(--sdh-space-3)}.room-plan-editor__furniture-validation{display:grid;gap:3px;padding-top:var(--sdh-space-2);border-top:1px solid rgb(25 102 78/16%)}.room-plan-editor__furniture-validation strong{color:var(--sdh-action-primary-pressed);font-size:.62rem}.room-plan-editor__furniture-validation span{color:var(--sdh-text-secondary);font-size:.56rem;line-height:1.45}.room-plan-editor__furniture-validation.is-invalid span,.room-plan-editor__furniture-validation.is-invalid strong{color:var(--sdh-text-danger)}.room-plan-editor__summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sdh-space-2);margin-top:auto;padding-top:var(--sdh-space-3);border-top:1px solid var(--sdh-border-default)}.room-plan-editor__review{display:grid;gap:var(--sdh-space-4)}.room-plan-editor__review-status{display:grid;grid-template-columns:38px minmax(0,1fr);gap:var(--sdh-space-3);align-items:center;padding:var(--sdh-space-4);border:1px solid rgb(25 102 78/20%);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-brand-subtle)}.room-plan-editor__review-status>span{display:grid;width:38px;height:38px;border-radius:50%;background:var(--sdh-action-primary);color:var(--sdh-text-on-brand);font-size:.85rem;font-weight:850;place-items:center}.room-plan-editor__review-status>div{display:grid;gap:3px}.room-plan-editor__review-status strong{color:var(--sdh-action-primary-pressed);font-size:.72rem}.room-plan-editor__review-status small{color:var(--sdh-text-secondary);font-size:.58rem;line-height:1.4}.room-element-editor{display:grid;padding-top:var(--sdh-space-4);border-top:1px solid var(--sdh-border-default)}.room-element-editor__heading{display:grid;grid-template-columns:34px minmax(0,1fr);gap:var(--sdh-space-3);align-items:center}.room-element-editor__heading>span{display:grid;width:34px;height:34px;border:1px solid rgb(25 102 78/22%);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary);font-size:.65rem;font-weight:850;place-items:center}.room-element-editor__heading>div{display:grid;gap:2px}.room-element-editor__heading strong{font-size:.72rem}.room-element-editor__heading small{color:var(--sdh-text-tertiary);font-size:.58rem}.room-element-editor__elevation{display:grid;gap:var(--sdh-space-2);padding:var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-subtle)}.room-wall-elevation-dock{position:absolute;z-index:12;right:326px;bottom:var(--sdh-space-4);left:var(--sdh-space-4);height:clamp(230px,34%,310px);gap:var(--sdh-space-2);padding:var(--sdh-space-3);border:1px solid rgb(255 255 255/80%);border-radius:var(--sdh-radius-xl);background:rgb(255 255 255/92%);box-shadow:0 18px 48px rgb(25 24 22/16%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.room-wall-elevation-canvas,.room-wall-elevation-dock{display:grid;min-width:0;grid-template-rows:auto minmax(0,1fr)}.room-wall-elevation-canvas{position:relative;min-height:480px;overflow:hidden;border-right:1px solid var(--sdh-border-default);background:#efede7}.room-wall-elevation-canvas .room-wall-elevation-dock__heading{z-index:3;min-height:62px;padding:var(--sdh-space-2) var(--sdh-space-4);border-bottom:1px solid var(--sdh-border-default);background:rgb(255 255 255/94%);box-shadow:0 8px 20px rgb(25 24 22/7%)}.room-wall-elevation-canvas__back{display:inline-flex;min-height:38px;gap:7px;align-items:center;padding:0 var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-action-primary-hover);cursor:pointer;font:inherit;font-size:.63rem;font-weight:850}.room-wall-elevation-canvas__back:focus-visible,.room-wall-elevation-canvas__back:hover{border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle);outline:none}.room-wall-elevation-canvas .room-wall-elevation-dock__viewport{border:0;border-radius:0;background:linear-gradient(rgb(255 255 255/28%) 1px,transparent 0),linear-gradient(90deg,rgb(255 255 255/28%) 1px,transparent 0),#ebe8e1;background-size:24px 24px}.room-wall-elevation-canvas .room-wall-elevation-dock__viewport svg{min-height:480px}.room-wall-elevation-canvas .room-element-editor__elevation-element{cursor:grab;outline:none}.room-wall-elevation-canvas .room-element-editor__elevation-element.is-dragging,.room-wall-elevation-canvas .room-element-editor__elevation-element:active{cursor:grabbing}.room-wall-elevation-canvas .room-element-editor__elevation-element:focus rect,.room-wall-elevation-canvas .room-element-editor__elevation-element:hover rect{stroke:var(--sdh-text-on-brand);stroke-width:30}.room-wall-elevation-canvas .room-element-editor__elevation-element.is-dragging rect{stroke:var(--sdh-action-primary);stroke-width:34;filter:drop-shadow(0 18px 24px rgb(25 102 78/24%))}.room-wall-elevation-canvas .room-element-editor__elevation-element.is-conflicting rect,.room-wall-elevation-canvas .room-element-editor__elevation-element.is-invalid rect{stroke:var(--sdh-text-danger);stroke-dasharray:9 7;stroke-width:38;filter:drop-shadow(0 16px 20px rgb(159 47 37/24%))}.room-wall-elevation-canvas .room-element-editor__elevation-wall.is-invalid{stroke:var(--sdh-text-danger);stroke-dasharray:12 8;stroke-width:30}.room-wall-elevation-canvas__furniture{outline:none}.room-wall-elevation-canvas__furniture.is-aligned{cursor:grab}.room-wall-elevation-canvas__furniture.is-aligned:active,.room-wall-elevation-canvas__furniture.is-dragging{cursor:grabbing}.room-wall-elevation-canvas__furniture-envelope{fill:#cfc3b0;fill-opacity:.76;stroke:#615a50;stroke-width:18}.room-wall-elevation-canvas__furniture.is-context .room-wall-elevation-canvas__furniture-envelope{fill-opacity:.24;stroke-dasharray:34 22}.room-wall-elevation-canvas__furniture-panel{fill:#d8cbb7;stroke:#756c60;stroke-width:12}.room-wall-elevation-canvas__furniture-panel--back{fill:#bcae99;fill-opacity:.5;stroke-opacity:.45}.room-wall-elevation-canvas__furniture.is-aligned:focus-visible .room-wall-elevation-canvas__furniture-envelope,.room-wall-elevation-canvas__furniture.is-aligned:hover .room-wall-elevation-canvas__furniture-envelope,.room-wall-elevation-canvas__furniture.is-dragging .room-wall-elevation-canvas__furniture-envelope{stroke:var(--sdh-action-primary);stroke-width:28;filter:drop-shadow(0 18px 20px rgb(25 102 78/22%))}.room-wall-elevation-canvas__furniture.is-invalid .room-wall-elevation-canvas__furniture-envelope{stroke:var(--sdh-text-danger);stroke-dasharray:22 14}.room-wall-elevation-canvas__furniture-label{pointer-events:none;fill:var(--sdh-action-primary-pressed);font-family:var(--sdh-font-family);font-size:78px;font-weight:900;letter-spacing:.08em;paint-order:stroke fill;stroke:#efede7;stroke-width:22}.room-wall-elevation-canvas__direct-dimensions{pointer-events:none}.room-wall-elevation-canvas__direct-dimensions line{fill:none;stroke:var(--sdh-action-primary);stroke-dasharray:18 12;stroke-width:10}.room-wall-elevation-canvas__direct-dimensions foreignObject{overflow:visible;pointer-events:auto}.room-wall-elevation-canvas__direct-dimension-input{box-sizing:border-box;display:grid;width:100%;height:100%;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:0 28px;border:8px solid rgb(25 102 78/22%);border-radius:38px;background:rgb(255 255 255/96%);box-shadow:0 24px 54px rgb(25 24 22/18%);color:var(--sdh-text-primary);font-family:var(--sdh-font-family)}.room-wall-elevation-canvas__direct-dimension-input:focus-within{border-color:var(--sdh-action-primary);box-shadow:0 24px 58px rgb(25 102 78/24%)}.room-wall-elevation-canvas__direct-dimension-input.is-invalid{border-color:var(--sdh-text-danger);background:#fff7f6}.room-wall-elevation-canvas__direct-dimension-input>span{color:var(--sdh-text-secondary);font-size:38px;font-weight:780;white-space:nowrap}.room-wall-elevation-canvas__direct-dimension-input input{box-sizing:border-box;width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--sdh-action-primary-pressed);font:inherit;font-size:58px;font-weight:900;line-height:1;text-align:right}.room-wall-elevation-canvas__direct-dimension-input small{color:var(--sdh-text-tertiary);font-size:34px;font-weight:750}.room-wall-elevation-canvas__dimension-line,.room-wall-elevation-canvas__selection-dimensions line{fill:none;stroke:var(--sdh-text-secondary);stroke-width:10}.room-wall-elevation-canvas marker path{fill:var(--sdh-text-secondary)}.room-wall-elevation-canvas__dimension-label,.room-wall-elevation-canvas__selection-dimensions text{fill:var(--sdh-text-primary);font-family:var(--sdh-font-family);font-size:92px;font-weight:850;paint-order:stroke fill;stroke:#efede7;stroke-width:24}.room-wall-elevation-canvas__selection-dimensions{pointer-events:none}.room-wall-elevation-canvas__selection-dimensions line{stroke:var(--sdh-action-primary);stroke-dasharray:7 5}.room-wall-elevation-canvas__selection-dimensions text{fill:var(--sdh-action-primary-hover);font-size:76px}.room-wall-elevation-canvas__status{position:absolute;z-index:3;right:50%;bottom:var(--sdh-space-3);max-width:calc(100% - 140px);margin:0;padding:8px var(--sdh-space-3);border:1px solid rgb(25 102 78/18%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/92%);box-shadow:0 10px 24px rgb(25 24 22/12%);color:var(--sdh-text-secondary);font-size:.58rem;font-weight:750;text-align:center;transform:translateX(50%)}.room-wall-elevation-canvas__status.is-invalid{border-color:rgb(159 47 37/30%);background:rgb(255 247 246/96%);color:var(--sdh-text-danger)}.room-wall-elevation-dock__heading{display:flex;min-width:0;gap:var(--sdh-space-4);align-items:center;justify-content:space-between}.room-wall-elevation-dock__heading>span{display:grid;min-width:0;gap:2px}.room-wall-elevation-dock__heading>span:last-child{text-align:right}.room-wall-elevation-dock__heading small{color:var(--sdh-text-tertiary);font-size:.56rem;font-weight:750;letter-spacing:.04em}.room-wall-elevation-dock__heading>span:first-child small,.room-wall-elevation-dock__identity small{color:var(--sdh-action-primary);font-weight:850;letter-spacing:.08em}.room-wall-elevation-dock__heading strong{overflow:hidden;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.room-wall-elevation-dock__viewport{position:relative;min-height:0;overflow:hidden;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-lg);background:#efede7}.room-wall-elevation-dock__viewport svg{display:block;width:100%;height:100%;min-height:160px}.room-element-editor__elevation-background{fill:#efede7}.room-wall-elevation-dock .room-element-editor__elevation-element{cursor:pointer;outline:none}.room-wall-elevation-dock .room-element-editor__elevation-element:focus rect,.room-wall-elevation-dock .room-element-editor__elevation-element:hover rect{stroke:var(--sdh-text-on-brand);stroke-width:32}.room-wall-elevation-dock__add-trigger{position:absolute;z-index:2;top:50%;right:var(--sdh-space-3);display:inline-flex;min-height:40px;gap:7px;align-items:center;padding:0 var(--sdh-space-3) 0 7px;border:1px solid rgb(255 255 255/88%);border-radius:var(--sdh-radius-full);background:var(--sdh-action-primary);box-shadow:0 10px 24px rgb(25 24 22/20%);color:var(--sdh-text-on-brand);cursor:pointer;font:inherit;font-size:.62rem;font-weight:850;transform:translateY(-50%)}.room-wall-elevation-dock__add-trigger>span{display:grid;width:26px;height:26px;border-radius:50%;background:rgb(255 255 255/18%);font-size:1rem;place-items:center}.room-wall-elevation-dock__add-trigger:hover,.room-wall-elevation-dock__add-trigger[aria-expanded=true]{background:var(--sdh-action-primary-hover)}.room-wall-elevation-dock__add-menu{position:absolute;z-index:4;top:var(--sdh-space-3);right:var(--sdh-space-3);display:grid;width:min(440px,calc(100% - var(--sdh-space-6)));gap:var(--sdh-space-2);padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/24%);border-radius:var(--sdh-radius-lg);background:rgb(255 255 255/97%);box-shadow:0 16px 36px rgb(25 24 22/18%)}.room-wall-elevation-dock__quick-add{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.room-wall-elevation-dock__quick-add button{display:flex;min-width:0;min-height:38px;gap:6px;align-items:center;justify-content:center;padding:0 var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font:inherit;font-size:.6rem;font-weight:800}.room-wall-elevation-dock__quick-add button:hover{border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle)}.room-wall-elevation-dock__quick-add button span{display:grid;width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:#4f7f94;color:var(--sdh-text-on-brand);font-size:.5rem;place-items:center}.room-wall-elevation-dock__advanced-add{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:6px;align-items:end}.room-wall-elevation-dock__advanced-add label{display:grid;min-width:0;gap:3px}.room-wall-elevation-dock__advanced-add label>span{color:var(--sdh-text-tertiary);font-size:.52rem;font-weight:750}.room-wall-elevation-dock__advanced-add select,.room-wall-elevation-dock__advanced-add>button{min-width:0;min-height:36px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);font:inherit;font-size:.57rem}.room-wall-elevation-dock__advanced-add select{width:100%;padding:0 var(--sdh-space-2)}.room-wall-elevation-dock__advanced-add>button{padding:0 var(--sdh-space-2);color:var(--sdh-action-primary);cursor:pointer;font-weight:850}.room-element-editor__elevation>div{display:flex;gap:var(--sdh-space-2);align-items:baseline;justify-content:space-between}.room-element-editor__elevation strong{font-size:.63rem}.room-element-editor__elevation small{color:var(--sdh-text-tertiary);font-size:.54rem}.room-element-editor__elevation svg{display:block;width:100%;min-height:120px;border-radius:var(--sdh-radius-sm);background:#efede7}.room-element-editor__elevation-wall{fill:#ded9ce;stroke:#8b847b;stroke-width:20}.room-element-editor__elevation-element rect{stroke:rgb(255 255 255/80%);stroke-width:18}.room-element-editor__elevation-element text{fill:var(--sdh-text-on-brand);font-family:var(--sdh-font-family);font-size:110px;font-weight:850}.room-element-editor__elevation-element--opening rect{fill:#4f7f94}.room-element-editor__elevation-element--feature rect{fill:#b9783f}.room-element-editor__elevation-element--obstacle rect{fill:#9b4a43}.room-element-editor__elevation-element.is-selected rect{stroke:var(--sdh-action-primary-pressed);stroke-width:34}.room-element-editor__floor-line{stroke:var(--sdh-text-primary);stroke-width:28}.room-element-editor__quick-add{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.room-element-editor__quick-add button{display:grid;min-width:0;min-height:52px;grid-template-columns:24px minmax(0,1fr);gap:5px;align-items:center;padding:6px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font:inherit;font-size:.58rem;font-weight:750;text-align:left}.room-element-editor__quick-add button:hover{border-color:#4f7f94;background:#eef5f7}.room-element-editor__quick-add button>span{display:grid;width:24px;height:24px;border-radius:50%;background:#4f7f94;color:var(--sdh-text-on-brand);font-size:.54rem;place-items:center}.room-element-editor__advanced-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.room-element-editor__advanced-add label{display:grid;gap:4px}.room-element-editor__advanced-add label>span{color:var(--sdh-text-secondary);font-size:.57rem;font-weight:750}.room-element-editor__advanced-add select{width:100%;min-width:0;padding:0 var(--sdh-space-2);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);font:inherit;font-size:.64rem}.room-element-editor__advanced-add select,.room-element-editor__advanced-add>button{min-height:38px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm)}.room-element-editor__advanced-add>button{align-self:end;padding:0 var(--sdh-space-3);background:var(--sdh-bg-subtle);color:var(--sdh-action-primary-hover);cursor:pointer;font:inherit;font-size:.62rem;font-weight:800}.room-element-editor__advanced-add>button:hover{border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle)}.room-element-editor__list{display:grid;gap:6px}.room-element-editor__list>button{display:grid;min-width:0;grid-template-columns:30px minmax(0,1fr);gap:var(--sdh-space-2);align-items:center;padding:7px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font:inherit;text-align:left}.room-element-editor__list>button.is-selected{border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle)}.room-element-editor__list>button>span:first-child{display:grid;width:30px;height:30px;border-radius:var(--sdh-radius-sm);background:#4f7f94;color:var(--sdh-text-on-brand);font-size:.54rem;font-weight:850;place-items:center}.room-element-editor__list>button>span:last-child{display:grid;min-width:0;gap:2px}.room-element-editor__list strong{font-size:.64rem}.room-element-editor__list small{overflow:hidden;color:var(--sdh-text-tertiary);font-size:.55rem;text-overflow:ellipsis;white-space:nowrap}.room-element-editor__empty{margin:0;padding:var(--sdh-space-3);border:1px dashed var(--sdh-border-default);border-radius:var(--sdh-radius-sm);color:var(--sdh-text-tertiary);font-size:.6rem;line-height:1.45;text-align:center}.room-element-editor__selection-hint{margin:0;padding:var(--sdh-space-3);border:1px dashed rgb(25 102 78/28%);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-brand-subtle);color:var(--sdh-text-secondary);font-size:.59rem;line-height:1.45}.room-element-editor__properties{display:grid;padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/20%);border-radius:var(--sdh-radius-md);background:#fbfcfa}.room-element-editor__properties-heading{display:flex;gap:var(--sdh-space-3);align-items:flex-start;justify-content:space-between}.room-element-editor__properties-heading>span{display:grid;gap:2px}.room-element-editor__properties-heading small{color:var(--sdh-action-primary);font-size:.53rem;font-weight:850;letter-spacing:.08em}.room-element-editor__properties-heading strong{font-size:.72rem}.room-element-editor__properties-heading button{min-height:30px;padding:0 var(--sdh-space-2);border:1px solid var(--sdh-border-error);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-error);cursor:pointer;font:inherit;font-size:.55rem;font-weight:800}.room-element-editor__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sdh-space-2)}.room-element-editor__field{display:grid;min-width:0;gap:4px}.room-element-editor__field>span:first-child{display:grid;gap:1px}.room-element-editor__field strong{font-size:.56rem}.room-element-editor__field small{color:var(--sdh-text-tertiary);font-size:.5rem}.room-element-editor__field>span:last-child{position:relative;display:grid}.room-element-editor__field input{width:100%;min-width:0;min-height:36px;padding:0 30px 0 var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);font:inherit;font-size:.65rem;font-weight:750}.room-element-editor__field input:disabled{background:var(--sdh-bg-subtle);color:var(--sdh-text-tertiary)}.room-element-editor__field input[aria-invalid=true]{border-color:var(--sdh-border-error)}.room-element-editor__field em{position:absolute;top:50%;right:var(--sdh-space-2);color:var(--sdh-text-tertiary);font-size:.52rem;font-style:normal;transform:translateY(-50%)}.room-element-editor__properties>p{margin:0;color:var(--sdh-text-tertiary);font-size:.55rem;line-height:1.45}.room-element-editor{gap:var(--sdh-space-3);padding-top:0;border-top:0}.room-element-editor__properties{gap:var(--sdh-space-3);padding:0;border:0;background:transparent}.room-element-editor__context-actions{display:flex;gap:var(--sdh-space-2);align-items:center;justify-content:space-between}.room-element-editor__context-actions button{min-height:34px;padding:0 var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);cursor:pointer;font:inherit;font-size:.57rem;font-weight:800}.room-element-editor__context-actions .room-element-editor__back{display:inline-flex;gap:6px;align-items:center;color:var(--sdh-action-primary-hover)}.room-element-editor__context-actions .room-element-editor__remove{border-color:var(--sdh-border-error);color:var(--sdh-text-error)}.room-element-editor__context-actions button:focus-visible,.room-element-editor__context-actions button:hover{border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle);outline:none}.room-element-editor__property-group{display:grid;gap:var(--sdh-space-3);padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:rgb(255 255 255/76%)}.room-element-editor__property-group>header{display:grid;grid-template-columns:28px minmax(0,1fr);gap:var(--sdh-space-2);align-items:center}.room-element-editor__property-group>header>span{display:grid;width:28px;height:28px;border-radius:9px;background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary);font-size:.54rem;font-weight:850;place-items:center}.room-element-editor__property-group>header>div{display:grid;gap:2px}.room-element-editor__property-group>header strong{font-size:.65rem}.room-element-editor__property-group>header small{color:var(--sdh-text-tertiary);font-size:.52rem}.room-element-editor__fields{grid-template-columns:minmax(0,1fr);gap:var(--sdh-space-3)}.room-element-editor__field>label{display:flex;gap:var(--sdh-space-2);align-items:baseline;justify-content:space-between}.room-element-editor__field>label strong{font-size:.59rem}.room-element-editor__field>label small{color:var(--sdh-text-tertiary);font-size:.5rem}.room-element-editor__field>.room-measurement-control__input-row{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;gap:6px}.room-element-editor__field>.room-measurement-control__input-row>button{min-height:38px;padding:0;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-subtle);color:var(--sdh-text-primary);cursor:pointer;font:inherit;font-size:.9rem}.room-element-editor__field>.room-measurement-control__input-row>button:hover:not(:disabled){border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle)}.room-element-editor__field>.room-measurement-control__input-row>button:disabled{opacity:.35}.room-element-editor__field>.room-measurement-control__input-row>span{position:relative;display:grid}.room-element-editor__field input{min-height:38px;padding-right:34px}.room-element-editor__context-add{display:grid;gap:var(--sdh-space-3);padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/18%);border-radius:var(--sdh-radius-md);background:linear-gradient(145deg,#f9fcfa,var(--sdh-bg-brand-subtle))}.room-element-editor__context-add>span{display:grid;gap:2px}.room-element-editor__context-add>span strong{font-size:.66rem}.room-element-editor__context-add>span small{color:var(--sdh-text-secondary);font-size:.53rem}.room-element-editor__context-add-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.room-element-editor__context-add-buttons button{display:grid;min-width:0;min-height:48px;grid-template-columns:22px minmax(0,1fr);gap:5px;align-items:center;padding:6px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);cursor:pointer;font:inherit;font-size:.54rem;font-weight:750;text-align:left}.room-element-editor__context-add-buttons button:hover{border-color:var(--sdh-border-focus)}.room-element-editor__context-add-buttons button>span{display:grid;width:22px;height:22px;border-radius:50%;background:#4f7f94;color:#fff;font-size:.5rem;place-items:center}.room-element-editor__type-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.room-element-editor__type-add button,.room-element-editor__type-add select{min-height:38px;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface);color:var(--sdh-text-primary);font:inherit;font-size:.58rem}.room-element-editor__type-add select{min-width:0;padding:0 var(--sdh-space-2)}.room-element-editor__type-add button{padding:0 var(--sdh-space-3);color:var(--sdh-action-primary-hover);cursor:pointer;font-weight:800}.room-plan-editor__shortcuts{position:relative}.room-plan-editor__shortcut-card{position:absolute;z-index:80;top:126px;left:var(--sdh-space-4);display:grid;width:min(310px,calc(100vw - 32px));gap:var(--sdh-space-3);padding:var(--sdh-space-3);border:1px solid rgb(25 102 78/22%);border-radius:var(--sdh-radius-lg);background:rgb(255 255 255/96%);box-shadow:0 18px 48px rgb(25 24 22/18%);color:var(--sdh-text-primary);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.room-plan-editor__shortcut-card>header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--sdh-space-2);border-bottom:1px solid var(--sdh-border-default)}.room-plan-editor__shortcut-card>header strong{font-size:.73rem}.room-plan-editor .room-plan-editor__shortcut-card>header button{width:30px;min-height:30px;padding:0;border-radius:50%;font-size:1rem}.room-plan-editor__shortcut-card dl{display:grid;gap:7px;margin:0}.room-plan-editor__shortcut-card dl>div{display:grid;grid-template-columns:minmax(98px,.72fr) minmax(0,1fr);gap:var(--sdh-space-3);align-items:center}.room-plan-editor__shortcut-card dt{justify-self:start;padding:4px 7px;border:1px solid var(--sdh-border-default);border-radius:6px;background:var(--sdh-bg-subtle);color:var(--sdh-text-primary);font-size:.54rem;font-weight:850;white-space:nowrap}.room-plan-editor__shortcut-card dd{margin:0;color:var(--sdh-text-secondary);font-size:.58rem;line-height:1.35}.room-plan-editor [role=button]:focus-visible,.room-plan-editor button:focus-visible,.room-plan-editor input:focus-visible,.room-plan-editor select:focus-visible{outline:2px solid var(--sdh-border-focus);outline-offset:2px}.room-wall-elevation-canvas .room-element-editor__elevation-element:focus-visible rect,.room-wall-elevation-dock .room-element-editor__elevation-element:focus-visible rect{filter:drop-shadow(0 0 6px rgb(25 102 78/42%));stroke:var(--sdh-border-focus);stroke-width:4px}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__shortcut-card{top:212px;left:clamp(438px,calc(27vw + 44px),454px)}.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-plan-editor__shortcut-card{left:var(--sdh-space-3)}@media (max-width:1050px){.room-plan-editor__workspace{grid-template-columns:minmax(0,1fr)}.room-plan-editor__inspector{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(280px,1.4fr);border-top:1px solid var(--sdh-border-default);border-left:0}.room-plan-editor__fields{grid-column:2;grid-row:1/span 3}.room-plan-editor__summary{margin-top:0}.room-wall-elevation-dock{right:var(--sdh-space-3);left:var(--sdh-space-3)}}@media (max-width:680px){.room-plan-editor{min-height:0;border-radius:var(--sdh-radius-lg)}.room-plan-editor__header{gap:var(--sdh-space-3);padding:var(--sdh-space-4)}.room-plan-editor__header>div:first-child>span,.room-plan-editor__status>span,.room-plan-editor__toolbar button span{display:none}.room-plan-editor__header h2{font-size:.96rem}.room-plan-editor__toolbar{align-items:stretch}.room-plan-editor__toolbar>div{justify-content:space-between}.room-plan-editor__canvas,.room-plan-editor__canvas svg{min-height:360px}.room-plan-editor__inspector{display:flex;padding:var(--sdh-space-3)}.room-plan-editor__fields{grid-column:auto;grid-row:auto}.room-plan-editor__canvas-hint{right:var(--sdh-space-2);left:var(--sdh-space-2);font-size:.56rem}.room-wall-elevation-dock{right:8px;bottom:8px;left:8px;height:min(230px,38dvh);padding:var(--sdh-space-2)}.room-wall-elevation-dock__heading>span:last-child small{display:none}.room-wall-elevation-dock__advanced-add{grid-template-columns:minmax(0,1fr) auto}}.front-editor{display:grid;width:min(100%,1100px);max-height:100%;gap:var(--sdh-space-3);align-self:center;padding:var(--sdh-space-3);overflow:auto;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-xl);background:var(--sdh-bg-surface);box-shadow:0 20px 60px rgb(25 24 22/8%)}.front-editor--three-overlay{position:relative;z-index:3;width:100%;max-height:none;border:0;background:transparent;box-shadow:none;pointer-events:none}.front-editor--three-overlay .front-editor__canvas{background:transparent}.front-editor--three-overlay .front-editor__canvas svg{pointer-events:none}.front-editor--three-overlay .front-editor__panel{fill-opacity:0;stroke-opacity:0}.configurator__render-stage--front:has(.bookcase-viewport--fallback) .front-editor--three-overlay .front-editor__panel{fill-opacity:1;stroke-opacity:1}.front-editor--three-overlay .front-editor__panel.is-selected{fill:rgb(25 102 78/8%);fill-opacity:1;stroke-opacity:1}.front-editor--three-overlay .front-editor__bay-input,.front-editor--three-overlay .front-editor__bay-shelf-badge,.front-editor--three-overlay .front-editor__cell,.front-editor--three-overlay .front-editor__cell-input,.front-editor--three-overlay .front-editor__controls,.front-editor--three-overlay .front-editor__drag-handle,.front-editor--three-overlay .front-editor__shelf-popover,.front-editor--three-overlay.front-editor--panel-editing .front-editor__panel{pointer-events:auto}.front-editor--invalid{min-height:300px;place-items:center;color:var(--sdh-text-secondary)}.front-editor__canvas{position:relative;isolation:isolate;min-height:0;overflow:hidden;border-radius:var(--sdh-radius-lg);background:radial-gradient(circle at 50% 45%,rgb(255 255 255/100%),transparent 58%),var(--sdh-bg-subtle)}.front-editor__canvas svg{display:block;width:100%;height:var(--front-editor-visual-height,min(62vh,640px));min-height:400px}.front-editor__bay-dimension-line,.front-editor__cell-dimension-line,.front-editor__overall-line{stroke:#77736d;stroke-width:1.3}.front-editor__height-envelope{fill:none;pointer-events:none;stroke:rgb(25 102 78/32%);stroke-dasharray:7 7;stroke-width:1.5}.front-editor__bay-selection{fill:rgb(25 102 78/9%);pointer-events:none;stroke:var(--sdh-action-primary);stroke-dasharray:8 6;stroke-width:2}.front-editor__overall-label{fill:var(--sdh-text-primary);font-size:13px;font-weight:750;text-anchor:middle}.front-editor__bay-height-label{fill:var(--sdh-action-primary-hover);font-size:11px;font-weight:800;pointer-events:none;text-anchor:middle}.front-editor__panel{cursor:default;stroke:rgb(87 82 76/72%);stroke-width:1.2;transition:filter var(--sdh-motion-150) ease,stroke var(--sdh-motion-150) ease,stroke-width var(--sdh-motion-150) ease}.front-editor__panel:not(.front-editor__panel--back){filter:drop-shadow(0 1.2px .8px rgb(25 24 22/18%))}.front-editor--panel-editing .front-editor__panel{cursor:pointer}.front-editor--panel-editing .front-editor__panel:hover,.front-editor__panel.is-selected{filter:brightness(1.06) saturate(1.04) drop-shadow(0 2px 1.2px rgb(25 24 22/22%));stroke:var(--sdh-action-primary);stroke-width:4}.front-editor__panel--back{opacity:.58}.front-editor__bay-shelf-badge{cursor:pointer;outline:none}.front-editor__bay-shelf-badge rect{fill:var(--sdh-action-primary);stroke:var(--sdh-bg-surface);stroke-width:2;transition:fill var(--sdh-motion-150) ease,stroke-width var(--sdh-motion-150) ease,transform var(--sdh-motion-150) ease;transform-box:fill-box;transform-origin:center}.front-editor__bay-shelf-badge text{fill:var(--sdh-text-on-brand);font-size:11px;font-weight:800;pointer-events:none;text-anchor:middle}.front-editor__bay-shelf-badge.is-selected rect,.front-editor__bay-shelf-badge:focus-visible rect,.front-editor__bay-shelf-badge:hover rect{fill:var(--sdh-action-primary-hover);stroke-width:3;transform:scale(1.06)}.front-editor__shelf-popover{position:absolute;z-index:8;top:var(--sdh-space-3);left:var(--front-editor-popover-anchor);display:grid;width:min(300px,calc(100% - 24px));gap:var(--sdh-space-3);padding:var(--sdh-space-3);border:1px solid rgb(255 255 255/20%);border-radius:var(--sdh-radius-lg);color:var(--sdh-text-on-brand);background:#24221f;box-shadow:0 18px 42px rgb(25 24 22/28%);transform:translateX(-50%)}.front-editor__shelf-popover:after{position:absolute;bottom:-9px;left:50%;width:18px;height:18px;content:"";background:#24221f;transform:translateX(-50%) rotate(45deg)}.front-editor__shelf-popover footer,.front-editor__shelf-popover-header,.front-editor__shelf-stepper{position:relative;z-index:1;display:flex;align-items:center}.front-editor__shelf-popover-header{justify-content:space-between}.front-editor__shelf-popover-header>span{display:grid;gap:2px}.front-editor__shelf-popover-header small{color:#a8d9c7;font-size:.58rem;font-weight:800;letter-spacing:.1em}.front-editor__shelf-popover-header strong{font-size:.82rem}.front-editor__shelf-popover-header button,.front-editor__shelf-stepper>button{display:grid;flex:0 0 auto;width:38px;height:38px;padding:0;border:1px solid rgb(255 255 255/18%);border-radius:var(--sdh-radius-full);color:var(--sdh-text-on-brand);background:rgb(255 255 255/9%);cursor:pointer;font:inherit;font-size:1.15rem;font-weight:800;place-items:center}.front-editor__shelf-popover-header button{width:32px;height:32px;font-size:1rem}.front-editor__shelf-popover-header button:focus-visible,.front-editor__shelf-popover-header button:hover,.front-editor__shelf-stepper>button:focus-visible,.front-editor__shelf-stepper>button:hover:not(:disabled){border-color:#a8d9c7;background:rgb(232 245 239/18%);outline:none}.front-editor__shelf-stepper{gap:var(--sdh-space-2)}.front-editor__shelf-stepper label{display:flex;overflow:hidden;flex:1 1 auto;min-width:0;height:42px;align-items:center;border:1px solid rgb(255 255 255/24%);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface)}.front-editor__shelf-stepper label:focus-within{border-color:#a8d9c7;box-shadow:0 0 0 3px rgb(168 217 199/18%)}.front-editor__shelf-stepper input{width:100%;min-width:0;height:40px;padding:0 var(--sdh-space-2);border:0;color:var(--sdh-text-primary);background:transparent;font:inherit;font-size:1rem;font-weight:800;outline:none;text-align:center}.front-editor__shelf-stepper input::-webkit-inner-spin-button,.front-editor__shelf-stepper input::-webkit-outer-spin-button{margin:0;appearance:none}.front-editor__shelf-stepper label>small{padding-right:var(--sdh-space-2);color:var(--sdh-text-tertiary);font-size:.65rem;font-weight:700}.front-editor__shelf-stepper label:has(input[aria-invalid=true]){border-color:#e17a70}.front-editor__shelf-stepper>button:disabled{cursor:not-allowed;opacity:.4}.front-editor__shelf-popover footer{justify-content:space-between;gap:var(--sdh-space-3)}.front-editor__shelf-popover footer>span{color:rgb(255 255 255/64%);font-size:.65rem}.front-editor__shelf-popover footer button{min-height:34px;padding:0 var(--sdh-space-3);border:0;border-radius:var(--sdh-radius-full);color:var(--sdh-action-primary-pressed);background:#c8eadc;cursor:pointer;font:inherit;font-size:.68rem;font-weight:800}.front-editor__shelf-popover footer button:focus-visible,.front-editor__shelf-popover footer button:hover:not(:disabled){background:#e8f5ef;outline:2px solid #a8d9c7;outline-offset:2px}.front-editor__shelf-popover footer button:disabled{cursor:not-allowed;opacity:.45}.front-editor__cell-hit-area{cursor:default;fill:transparent;stroke:transparent;transition:fill var(--sdh-motion-150) ease}.front-editor--panel-editing .front-editor__cell-hit-area,.front-editor--structure .front-editor__cell-hit-area{cursor:pointer}.front-editor--panel-editing .front-editor__cell:hover .front-editor__cell-hit-area,.front-editor--structure .front-editor__cell.is-bay-selected .front-editor__cell-hit-area,.front-editor--structure .front-editor__cell:hover .front-editor__cell-hit-area{fill:rgb(25 102 78/4%)}.front-editor__cell-dimension-line{opacity:0;pointer-events:none;transition:opacity var(--sdh-motion-150) ease}.front-editor__bay-input,.front-editor__cell-input{overflow:visible}.front-editor--dimensions .front-editor__cell-input{opacity:0;pointer-events:none;transform:translateY(3px) scale(.96);transform-box:fill-box;transform-origin:center;transition:opacity var(--sdh-motion-150) ease,transform var(--sdh-motion-150) ease}.front-editor--dimensions .front-editor__cell.is-active .front-editor__cell-input,.front-editor--dimensions .front-editor__cell:focus-within .front-editor__cell-input{opacity:1;pointer-events:auto;transform:none}.front-editor--dimensions .front-editor__cell.is-active .front-editor__cell-hit-area,.front-editor--dimensions .front-editor__cell:focus-within .front-editor__cell-hit-area{fill:rgb(25 102 78/3%)}.front-editor__inline-input-shell{display:flex;width:100%;height:30px;align-items:center;overflow:hidden;border:1px solid rgb(157 149 136/58%);border-radius:6px;background:rgb(255 255 255/94%);box-shadow:0 2px 5px rgb(25 24 22/12%);color:var(--sdh-text-tertiary);transition:border-color var(--sdh-motion-150) ease,box-shadow var(--sdh-motion-150) ease}.front-editor__inline-input-shell input{width:100%;min-width:0;height:28px;padding:0 2px 0 5px;appearance:textfield;border:0;outline:0;background:transparent;color:var(--sdh-text-primary);font:inherit;font-size:12px;font-weight:800;text-align:right}.front-editor__inline-input-shell input::-webkit-inner-spin-button,.front-editor__inline-input-shell input::-webkit-outer-spin-button{margin:0;appearance:none}.front-editor__inline-input-shell span{padding-right:5px;font-size:9px;font-weight:700;pointer-events:none}.front-editor__inline-input-shell:focus-within{border-color:var(--sdh-border-focus);box-shadow:0 0 0 3px rgb(25 102 78/16%),0 2px 5px rgb(25 24 22/12%)}.front-editor__cell.is-active .front-editor__cell-dimension-line{opacity:.72}.front-editor__bay-dimension-line{opacity:.7;pointer-events:none}.front-editor__cell.is-active .front-editor__inline-input-shell{border-color:var(--sdh-action-primary)}.front-editor__inline-input-shell:has(input[aria-invalid=true]){border-color:#a84137}.front-editor__drag-handle{cursor:grab;outline:none;touch-action:none}.front-editor--dimensions .front-editor__opening-handle{opacity:0;transition:opacity var(--sdh-motion-150) ease}.front-editor--dimensions .front-editor__opening-handle.is-contextual,.front-editor--dimensions .front-editor__opening-handle:focus-visible,.front-editor--dimensions .front-editor__opening-handle:hover{opacity:1}.front-editor__drag-handle:active{cursor:grabbing}.front-editor__drag-handle circle{fill:var(--sdh-bg-surface);stroke:rgb(87 82 76/28%);stroke-width:1.5;filter:drop-shadow(0 3px 7px rgb(25 24 22/22%));transition:fill var(--sdh-motion-150) ease,stroke var(--sdh-motion-150) ease}.front-editor__drag-handle text{fill:var(--sdh-text-primary);font-size:22px;font-weight:800;pointer-events:none;text-anchor:middle}.front-editor__height-handle text{font-size:18px}.front-editor__drag-handle:focus-visible circle,.front-editor__drag-handle:hover circle{fill:var(--sdh-bg-brand-subtle);stroke:var(--sdh-border-focus);stroke-width:2.5}.front-editor__controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sdh-space-3)}.front-editor__opening-controls{grid-column:1/-1;overflow:hidden}.front-editor__opening-groups{display:flex;gap:var(--sdh-space-3);overflow-x:auto;padding:2px 2px var(--sdh-space-2);scroll-snap-type:x proximity}.front-editor__opening-groups>section{min-width:min(100%,360px);padding:var(--sdh-space-2);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);scroll-snap-align:start}.front-editor__opening-groups>section>strong{display:block;margin-bottom:var(--sdh-space-2);color:var(--sdh-action-primary-hover);font-size:.68rem}.front-editor__controls>div{min-width:0;padding:var(--sdh-space-3);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-lg);background:var(--sdh-bg-subtle)}.front-editor__controls-heading{display:flex;gap:var(--sdh-space-2);align-items:baseline;justify-content:space-between;margin-bottom:var(--sdh-space-2)}.front-editor__controls-heading strong{font-size:.78rem}.front-editor__controls-heading small{color:var(--sdh-text-tertiary);font-size:.62rem}.front-editor__input-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:var(--sdh-space-2)}.front-editor__dimension-input{display:grid;min-width:0;gap:3px;color:var(--sdh-text-secondary);font-size:.62rem;font-weight:700}.front-editor__dimension-input>span:last-child{display:flex;min-height:38px;align-items:center;overflow:hidden;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-surface)}.front-editor__dimension-input:focus-within>span:last-child{border-color:var(--sdh-border-focus);box-shadow:0 0 0 3px rgb(25 102 78/12%)}.front-editor__dimension-input input{width:100%;min-width:0;height:36px;padding:0 0 0 var(--sdh-space-2);border:0;outline:0;background:transparent;color:var(--sdh-text-primary);font-size:.75rem;font-weight:800}.front-editor__dimension-input input:disabled{cursor:not-allowed;color:var(--sdh-text-tertiary)}.front-editor__dimension-input small{padding-right:var(--sdh-space-2);color:var(--sdh-text-tertiary)}.front-editor__help{margin:0;color:var(--sdh-text-tertiary);font-size:.68rem;line-height:1.45;text-align:center}@media (max-width:820px){.configurator__render-stage--front{--front-editor-visual-height:max(300px,calc((100vw - var(--sdh-space-8)) * 0.7976))}.configurator__render-stage--front>.bookcase-viewport{top:var(--sdh-space-2);left:var(--sdh-space-2);width:calc(100% - var(--sdh-space-4));min-height:300px}.bookcase-front-zoom{top:var(--sdh-space-2);right:var(--sdh-space-2);min-height:38px;grid-template-columns:30px minmax(46px,auto) 30px 30px}.bookcase-front-zoom button{width:30px;height:30px}.bookcase-front-zoom output{min-width:46px;font-size:.65rem}.bookcase-viewport--front .bookcase-viewport__visual-controls,.bookcase-viewport__visual-controls{top:auto;bottom:var(--sdh-space-2);left:var(--sdh-space-2);width:auto;max-width:calc(100% - var(--sdh-space-4));min-height:0;padding:0;border:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.bookcase-viewport__visual-controls-toggle{display:inline-flex;min-height:34px;align-items:center;justify-content:center;padding:0 var(--sdh-space-3);border:1px solid rgb(255 255 255/72%);border-radius:var(--sdh-radius-full);background:rgb(25 102 78/92%);box-shadow:0 8px 22px rgb(25 24 22/14%);color:var(--sdh-text-on-brand);cursor:pointer;font-size:.62rem;font-weight:800}.bookcase-viewport__visual-controls-toggle:focus-visible{outline:2px solid var(--sdh-bg-surface);outline-offset:2px}.bookcase-viewport__visual-controls-fields{display:none}.bookcase-viewport__visual-controls[data-open=true]{right:var(--sdh-space-2)}.bookcase-viewport__visual-controls[data-open=true] .bookcase-viewport__visual-controls-fields{display:flex;padding:4px 5px;border:1px solid rgb(255 255 255/72%);border-radius:var(--sdh-radius-lg);background:rgb(255 255 255/94%);box-shadow:0 10px 30px rgb(25 24 22/14%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bookcase-viewport--front .bookcase-viewport__lighting-preset,.bookcase-viewport--front .bookcase-viewport__quality-preference{min-width:0;flex:1 1 132px;justify-content:center}.bookcase-viewport--front .bookcase-viewport__lighting-preset select,.bookcase-viewport--front .bookcase-viewport__quality-preference select{max-width:116px}.front-editor{max-height:none;padding:var(--sdh-space-2);border-radius:var(--sdh-radius-lg)}.front-editor__canvas svg{height:var(--front-editor-visual-height,auto);min-height:300px}.front-editor__shelf-popover{top:auto;right:var(--sdh-space-2);bottom:var(--sdh-space-2);left:var(--sdh-space-2);width:auto;transform:none}.front-editor__shelf-popover:after{display:none}.front-editor__controls{grid-template-columns:minmax(0,1fr)}}@media (max-width:520px){.front-editor__canvas svg{min-height:270px}.front-editor__controls-heading{align-items:flex-start;flex-direction:column;gap:2px}.front-editor__input-grid{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-bottom:0}.front-editor__dimension-input{min-width:0}.front-editor__opening-groups .front-editor__input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:0;overflow:visible}.front-editor__opening-groups .front-editor__dimension-input{min-width:0}}@media (prefers-reduced-motion:reduce){.configurator-mobile-dock button,.configurator-progress__bar>span,.configurator-step,.configurator-step__trigger,.configurator__view-switcher button{transition-duration:1ms!important}.configurator-form .configurator-step.is-active,.configurator-smart-focus{animation:none!important}.configurator__view-transition{display:none}}body:has(.configurator){overflow:hidden}body:has(.configurator[data-product-page=true]){overflow:auto}.configurator{position:relative;height:100vh;height:100dvh;min-height:0;isolation:isolate;overflow:hidden}.configurator__header{position:absolute;z-index:50;top:var(--sdh-space-3);right:var(--sdh-space-3);left:var(--sdh-space-3);min-height:56px;grid-template-columns:176px minmax(0,1fr) auto;padding:6px var(--sdh-space-4);border:1px solid rgb(255 255 255/76%);border-radius:var(--sdh-radius-xl);background:rgb(255 255 255/88%);box-shadow:0 14px 42px rgb(25 24 22/12%);-webkit-backdrop-filter:blur(18px) saturate(1.12);backdrop-filter:blur(18px) saturate(1.12)}.configurator__panel-toggle{display:inline-flex;min-height:var(--sdh-control-size-compact);gap:7px;align-items:center;padding:0 var(--sdh-space-4);border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:rgb(255 255 255/82%);color:var(--sdh-text-secondary);cursor:pointer;font:inherit;font-size:.78rem;font-weight:800}.configurator__panel-toggle:hover,.configurator__panel-toggle[aria-expanded=true]{border-color:var(--sdh-border-focus);color:var(--sdh-action-primary-hover)}.configurator__workspace{position:absolute;inset:0;display:block;min-height:0}.configurator__panel{position:absolute;z-index:30;top:80px;bottom:var(--sdh-space-3);left:var(--sdh-space-3);width:clamp(350px,27vw,410px);max-height:none;padding:var(--sdh-space-4);border:1px solid rgb(255 255 255/78%);border-radius:var(--sdh-radius-xl);background:rgb(255 255 255/90%);box-shadow:0 20px 60px rgb(25 24 22/16%);-webkit-backdrop-filter:blur(20px) saturate(1.1);backdrop-filter:blur(20px) saturate(1.1);overscroll-behavior:contain}.configurator__viewport{position:absolute;z-index:1;inset:0;display:block;min-height:0;padding:0;overflow:hidden;background:var(--sdh-bg-canvas)}.configurator__viewport-topline{position:absolute;z-index:18;top:84px;right:var(--sdh-space-3);left:clamp(438px,calc(27vw + 44px),454px);align-items:center;pointer-events:none}.configurator[data-configuration-panel-open=false] .configurator__viewport-topline{left:var(--sdh-space-3)}.configurator__viewport-topline>*{pointer-events:auto}.configurator__viewport-topline>div:first-child{padding:7px;border:1px solid rgb(255 255 255/72%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/84%);box-shadow:0 10px 30px rgb(25 24 22/10%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.configurator__viewport-topline p{display:none}.configurator__viewport-actions{display:flex;width:min(100%,590px);gap:var(--sdh-space-2);align-items:center;justify-content:flex-end}.configurator__room-workspace-button{display:inline-flex;min-height:48px;flex:0 0 auto;gap:var(--sdh-space-2);align-items:center;justify-content:center;padding:0 var(--sdh-space-4);border:1px solid rgb(25 102 78/28%);border-radius:var(--sdh-radius-full);background:rgb(232 245 239/90%);color:var(--sdh-action-primary-hover);box-shadow:0 10px 30px rgb(25 24 22/10%);cursor:pointer;font:inherit;font-size:.76rem;font-weight:800;white-space:nowrap;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.configurator__room-workspace-button:focus-visible,.configurator__room-workspace-button:hover:not(:disabled){border-color:var(--sdh-action-primary);background:var(--sdh-bg-brand-subtle)}.configurator__room-workspace-button:disabled{cursor:default;opacity:.66}.configurator__view-switcher{flex:1 1 auto;width:min(440px,42vw);min-height:48px;border-color:rgb(255 255 255/76%);background:rgb(255 255 255/86%);box-shadow:0 12px 32px rgb(25 24 22/12%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.configurator__view-switcher button{min-height:40px}.configurator__fit-view,.configurator__measurements-toggle,.configurator__reference-toggle{display:inline-flex;min-height:48px;flex:0 0 auto;gap:6px;align-items:center;justify-content:center;padding:0 var(--sdh-space-3);border:1px solid rgb(255 255 255/76%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/90%);box-shadow:0 10px 28px rgb(25 24 22/10%);color:var(--sdh-text-secondary);cursor:pointer;font:inherit;font-size:.75rem;font-weight:800;white-space:nowrap;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.configurator__measurements-toggle[aria-pressed=true],.configurator__reference-toggle[aria-pressed=true]{border-color:var(--sdh-action-primary);background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.configurator__fit-view:hover:not(:disabled),.configurator__measurements-toggle:hover:not(:disabled),.configurator__reference-toggle:hover:not(:disabled){border-color:var(--sdh-border-focus);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover)}.configurator__fit-view:disabled,.configurator__measurements-toggle:disabled,.configurator__reference-toggle:disabled{cursor:default;opacity:.45}.configurator__preview-stage,.configurator__render-stage{position:absolute;inset:0;width:100%;height:100%;min-height:0}.configurator__render-stage--front{--front-editor-visual-height:calc(100dvh - 96px);min-height:0}.configurator__render-stage--front>.bookcase-viewport{inset:0;width:100%;height:100%;min-height:0;border-radius:0}.configurator__render-stage--front>.front-editor:not(.front-editor--three-overlay){align-self:stretch;padding:72px var(--sdh-space-3) var(--sdh-space-3)}.configurator__render-stage--front>.front-editor--three-overlay{position:absolute;inset:0;width:100%;height:100%;padding:0;overflow:visible}.front-editor--three-overlay .front-editor__canvas,.front-editor--three-overlay .front-editor__canvas svg{width:100%;height:100%;min-height:0;border-radius:0}.front-editor--three-overlay .front-editor__canvas{position:absolute;inset:0}.front-editor--three-overlay .front-editor__shelf-popover{top:96px}.front-editor__canvas svg{min-height:0}.bookcase-technical-drawing,.bookcase-viewport{width:100%;height:100%;min-height:0;border:0;border-radius:0}.configurator__preview-stage[data-view-mode=room] .room-plan-editor{position:relative;display:block;height:100%;min-height:0;padding-top:0;border:0;border-radius:0;box-shadow:none}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__header,.configurator__preview-stage[data-view-mode=room] .room-plan-editor__toolbar{position:absolute;z-index:16;right:var(--sdh-space-3);left:clamp(438px,calc(27vw + 44px),454px);border:1px solid rgb(255 255 255/72%);border-radius:var(--sdh-radius-lg);background:rgb(255 255 255/86%);box-shadow:0 10px 30px rgb(25 24 22/10%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-plan-editor__header,.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-plan-editor__toolbar{left:var(--sdh-space-3)}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__header{top:84px;padding:var(--sdh-space-3) var(--sdh-space-4)}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__toolbar{top:158px;padding:6px var(--sdh-space-3)}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__workspace{position:absolute;inset:0;display:block;height:100%}.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-canvas{position:absolute;z-index:13;top:224px;right:344px;bottom:var(--sdh-space-3);left:clamp(438px,calc(27vw + 44px),454px);width:auto;height:auto;min-height:0;border:1px solid rgb(255 255 255/74%);border-radius:var(--sdh-radius-xl);box-shadow:0 18px 52px rgb(25 24 22/14%)}.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-wall-elevation-canvas{left:var(--sdh-space-3)}.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-canvas .room-wall-elevation-dock__viewport,.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-canvas .room-wall-elevation-dock__viewport svg{height:100%;min-height:0}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__canvas,.configurator__preview-stage[data-view-mode=room] .room-plan-editor__canvas svg{width:100%;height:100%;min-height:0}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector{position:absolute;z-index:14;top:224px;right:var(--sdh-space-3);bottom:var(--sdh-space-3);display:flex;width:min(320px,calc(100vw - var(--sdh-space-6)));height:auto;padding:var(--sdh-space-4);overflow-y:auto;border:1px solid rgb(255 255 255/74%);border-radius:var(--sdh-radius-xl);background:rgb(255 255 255/90%);box-shadow:0 18px 52px rgb(25 24 22/16%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-task=dimensions],.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-task=placement],.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-task=review]{bottom:auto;max-height:calc(100dvh - 236px)}.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-dock{z-index:13;right:344px;bottom:var(--sdh-space-3);left:clamp(438px,calc(27vw + 44px),454px);height:min(340px,38dvh)}.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-wall-elevation-dock{left:var(--sdh-space-3)}.configurator__viewport:has(.configurator__preview-stage[data-view-mode=room])>.configurator__room-fit,.configurator__viewport:has(.configurator__preview-stage[data-view-mode=room])>.configurator__validation{display:none}.configurator__viewport:has(.configurator__preview-stage[data-view-mode=room]) .configurator__viewport-topline{display:none}.configurator__viewport:has(.configurator__preview-stage[data-view-mode=front]) .configurator__viewport-topline{justify-content:flex-end}.configurator__viewport:has(.configurator__preview-stage[data-view-mode=front])>.configurator__room-fit,.configurator__viewport:has(.configurator__preview-stage[data-view-mode=front])>.configurator__validation{display:none}.configurator__room-fit,.configurator__validation{position:absolute;z-index:22;right:var(--sdh-space-3);width:min(390px,calc(100vw - var(--sdh-space-6)));margin:0;border-color:rgb(255 255 255/72%);box-shadow:0 12px 34px rgb(25 24 22/12%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.configurator__validation{bottom:var(--sdh-space-3)}.configurator__room-fit{bottom:88px}.configurator__renderer-note{display:none}.selected-panel-editor{position:fixed;z-index:38;right:var(--sdh-space-3);bottom:168px}.bookcase-viewport__interaction-tools{position:absolute;z-index:14;bottom:var(--sdh-space-3);left:50%;display:flex;min-height:48px;gap:4px;align-items:center;max-width:min(700px,calc(100% - 440px));padding:5px;border:1px solid rgb(255 255 255/74%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/88%);box-shadow:0 14px 38px rgb(25 24 22/14%);transform:translateX(-50%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.configurator .bookcase-viewport__hint,.configurator .bookcase-viewport__mode,.configurator .bookcase-viewport__quality{display:none}.configurator .bookcase-scale-control{top:144px;right:var(--sdh-space-3)}.configurator .bookcase-front-zoom{z-index:20;top:144px;right:var(--sdh-space-3)}.configurator .bookcase-viewport--front .bookcase-viewport__visual-controls,.configurator .bookcase-viewport__visual-controls{top:190px;right:var(--sdh-space-3);left:auto;max-width:min(420px,calc(100% - var(--sdh-space-6)))}.bookcase-viewport__interaction-tools button{display:inline-flex;min-height:38px;gap:6px;align-items:center;padding:0 var(--sdh-space-3);border:0;border-radius:var(--sdh-radius-full);background:transparent;color:var(--sdh-text-secondary);cursor:pointer;font:inherit;font-size:.68rem;font-weight:800;white-space:nowrap}.bookcase-viewport__interaction-mode,.bookcase-viewport__interaction-tools button[aria-pressed=true]{background:var(--sdh-action-primary);color:var(--sdh-text-on-brand)}.bookcase-viewport__interaction-mode{display:inline-flex;min-height:38px;gap:6px;align-items:center;padding:0 var(--sdh-space-3);border-radius:var(--sdh-radius-full);font-size:.68rem;font-weight:800;white-space:nowrap}.bookcase-viewport__interaction-tools button:disabled{cursor:not-allowed;opacity:.45}.bookcase-viewport__interaction-status{max-width:250px;padding:0 var(--sdh-space-2);overflow:hidden;color:var(--sdh-text-tertiary);font-size:.61rem;text-overflow:ellipsis;white-space:nowrap}.bookcase-viewport[data-camera-view=front] canvas,.bookcase-viewport[data-interaction-tool=move-furniture] canvas,.bookcase-viewport[data-interaction-tool=navigate] canvas{cursor:grab}.bookcase-three-canvas.is-camera-interacting{cursor:grabbing!important}.bookcase-three-canvas.is-object-interacting{cursor:move!important}.bookcase-viewport[data-interaction-tool=move-furniture][data-interaction-active=true] canvas{cursor:grabbing}.bookcase-object-drag-label{display:inline-flex;min-height:30px;align-items:center;padding:0 var(--sdh-space-3);border:1px solid rgb(255 255 255/78%);border-radius:var(--sdh-radius-full);background:rgb(25 102 78/94%);box-shadow:0 8px 24px rgb(25 24 22/20%);color:#fff;font-size:.66rem;font-weight:850;white-space:nowrap}.bookcase-object-drag-label.is-invalid{background:rgb(151 54 45/94%)}@media (max-width:1100px) and (min-width:821px){.configurator__panel{width:350px}.configurator__viewport-topline{left:374px;flex-direction:row}.configurator__view-switcher{width:min(400px,46vw)}.bookcase-viewport__interaction-status{display:none}.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-canvas{left:374px}}@media (max-width:820px){.configurator{padding-bottom:0}.configurator__header{position:absolute;top:8px;right:8px;left:8px;min-height:52px;padding:5px 8px}.configurator__panel-toggle,.configurator__reset,.saved-design-manager__trigger{min-height:38px;padding-inline:10px}.configurator__panel-toggle{font-size:0}.configurator__panel-toggle span{font-size:1rem}.configurator__workspace{display:block;min-height:0}.configurator__viewport{min-height:0;padding:0}.configurator__panel{position:absolute;z-index:48;top:auto;right:8px;bottom:78px;left:8px;width:auto;max-height:min(68dvh,660px);margin:0;padding:var(--sdh-space-4);overflow-y:auto;border:1px solid rgb(255 255 255/78%);border-radius:var(--sdh-radius-xl);box-shadow:0 22px 64px rgb(25 24 22/24%)}.configurator__panel:before{flex:0 0 auto}.configurator[data-configuration-panel-open=false] .configurator__viewport-topline,.configurator__viewport-topline{top:68px;right:8px;left:8px;gap:6px}.configurator__viewport-topline>div:first-child{display:none}.configurator__viewport-actions{width:100%}.configurator__room-workspace-button{min-height:46px;padding-inline:var(--sdh-space-3)}.configurator__view-switcher{min-width:0;width:100%;min-height:46px}.configurator__preview-stage,.configurator__render-stage{min-height:0}.configurator__render-stage--front{--front-editor-visual-height:calc(100dvh - 76px)}.configurator__render-stage--front>.front-editor:not(.front-editor--three-overlay){padding:62px 0 70px}.front-editor--three-overlay .front-editor__shelf-popover{top:76px}.bookcase-technical-drawing,.bookcase-viewport{height:100%;min-height:0;border-radius:0}.configurator__preview-stage[data-view-mode=room] .room-plan-editor{border-radius:0}.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-plan-editor__header,.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-plan-editor__toolbar,.configurator__preview-stage[data-view-mode=room] .room-plan-editor__header,.configurator__preview-stage[data-view-mode=room] .room-plan-editor__toolbar{right:8px;left:8px}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__header{top:68px}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__toolbar{top:128px}.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-wall-elevation-canvas,.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-canvas{top:184px;right:8px;bottom:calc(min(30dvh, 300px) + 86px);left:8px}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector{top:auto;right:8px;bottom:78px;left:8px;width:auto;max-height:min(42dvh,430px)}.configurator[data-mobile-workspace-region=preview] .configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector{display:none}.configurator[data-mobile-workspace-region=preview] .configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-task=placement]{display:flex;max-height:min(48dvh,480px)}.configurator[data-mobile-workspace-region=preview] .configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-wall-furniture-controls=true]{display:flex;max-height:min(46dvh,460px)}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-task=obstacles],.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-task=openings]{top:auto;bottom:78px;max-height:min(30dvh,300px)}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-task=dimensions],.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-task=placement],.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-task=review]{top:auto;bottom:78px;max-height:min(42dvh,430px)}.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-wall-elevation-dock,.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-dock{top:184px;right:8px;bottom:auto;left:8px;height:min(220px,29dvh)}.configurator__room-fit{display:none}.configurator__validation{right:8px;bottom:78px;left:8px;width:auto;max-height:72px;overflow:hidden}.bookcase-viewport__interaction-tools{right:8px;bottom:78px;left:8px;width:auto;max-width:none;justify-content:center;transform:none}.configurator .bookcase-front-zoom{top:124px;right:8px}.bookcase-viewport__interaction-tools button{flex:1 1;justify-content:center}.bookcase-viewport__interaction-status{position:absolute;right:0;bottom:calc(100% + 6px);left:0;max-width:none;padding:6px 10px;border-radius:var(--sdh-radius-full);background:rgb(255 255 255/86%);text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bookcase-viewport--front .bookcase-viewport__visual-controls,.bookcase-viewport__visual-controls{top:auto;bottom:136px}.configurator .bookcase-scale-control{top:126px;right:8px}.configurator-mobile-dock{z-index:60;right:8px;bottom:calc(8px + env(safe-area-inset-bottom, 0px));left:8px}.selected-panel-editor{right:8px;bottom:144px;left:8px;width:auto}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__toolbar{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-width:none}}@media (max-width:820px){.configurator__preview-stage[data-view-mode=room] .room-plan-editor__toolbar::-webkit-scrollbar{display:none}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__toolbar>div{flex:0 0 auto}.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-wall-elevation-canvas,.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-wall-elevation-dock,.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-canvas,.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-dock{top:194px}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-context=element]{max-height:min(52dvh,520px)}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-context=wall]{max-height:min(36dvh,360px)}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__inspector[data-room-inspector-context=empty]{max-height:min(28dvh,270px)}.room-plan-editor__context-heading{position:sticky;z-index:5;top:calc(var(--sdh-space-4) * -1);margin:calc(var(--sdh-space-4) * -1) calc(var(--sdh-space-4) * -1) 0;padding:var(--sdh-space-3) var(--sdh-space-4);border-radius:var(--sdh-radius-lg) var(--sdh-radius-lg) 0 0;background:rgb(255 255 255/94%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.room-element-editor__context-actions{position:sticky;z-index:4;top:54px;padding-block:4px;background:rgb(255 255 255/92%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.room-element-editor__context-actions button,.room-element-editor__context-add-buttons button,.room-element-editor__type-add button,.room-element-editor__type-add select{min-height:44px}.configurator[data-configuration-panel-open=false] .configurator__preview-stage[data-view-mode=room] .room-plan-editor__shortcut-card,.configurator__preview-stage[data-view-mode=room] .room-plan-editor__shortcut-card{position:fixed;z-index:92;top:194px;right:8px;left:8px;width:auto;max-height:min(56dvh,460px);overflow-y:auto}}@media (max-width:680px){.room-plan-editor__shortcuts>button span:first-child{display:inline-flex}.room-plan-editor__shortcut-card dl>div{grid-template-columns:minmax(92px,.68fr) minmax(0,1fr)}.room-plan-editor__shortcut-card dt{font-size:.52rem}.room-plan-editor__shortcut-card dd{font-size:.56rem}}@media (prefers-reduced-motion:reduce){.room-plan-editor *,.room-plan-editor :after,.room-plan-editor :before{scroll-behavior:auto;transition-duration:.01ms!important}}.configurator__panel{bottom:94px;width:clamp(360px,26vw,400px);gap:var(--sdh-space-4);padding:var(--sdh-space-5)}.configurator__panel-intro{padding-inline:2px}.configurator__panel-intro h1{font-size:1.5rem}.configurator__panel-intro>p:last-child{max-width:38ch;font-size:.84rem;line-height:1.55}.configurator-progress{top:calc(var(--sdh-space-5) * -1);margin:calc(var(--sdh-space-2) * -1) calc(var(--sdh-space-2) * -1) 0;padding:var(--sdh-space-4) var(--sdh-space-3)}.configurator-progress__summary small,.configurator-step__active-heading small{font-size:.62rem}.configurator-progress__summary strong{font-size:1rem}.configurator-progress__summary em{font-size:.7rem}.configurator-progress__steps button>span{width:34px;height:34px;font-size:.64rem}.configurator-progress__steps li:not(:last-child):after{top:17px}.configurator-progress__steps button small{min-height:30px;font-size:.75rem;line-height:1.3}.configurator-step__active-heading{min-height:68px;grid-template-columns:40px minmax(0,1fr)}.configurator-step__active-heading h2{font-size:1rem}.configurator-step__description{font-size:.82rem;line-height:1.6}.configurator-form label,.numeric-control__label{font-size:.82rem}.configurator-step__navigation button{min-height:44px;font-size:.76rem}.configurator__preview-stage[data-view-mode=room] .room-plan-editor__header,.configurator__preview-stage[data-view-mode=room] .room-plan-editor__toolbar,.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-canvas,.configurator__preview-stage[data-view-mode=room] .room-wall-elevation-dock,.configurator__viewport-topline{left:clamp(428px,calc(26vw + 44px),444px)}.configurator-shell-bar{position:absolute;z-index:56;right:var(--sdh-space-3);bottom:var(--sdh-space-3);left:var(--sdh-space-3);display:grid;min-height:68px;grid-template-columns:minmax(320px,1fr) minmax(520px,auto);gap:var(--sdh-space-2);align-items:stretch;padding:5px;border:1px solid rgb(255 255 255/78%);border-radius:var(--sdh-radius-xl);background:rgb(255 255 255/90%);box-shadow:0 18px 54px rgb(25 24 22/16%);-webkit-backdrop-filter:blur(20px) saturate(1.12);backdrop-filter:blur(20px) saturate(1.12)}.configurator-shell-bar .configurator-issue-center{position:relative;display:block;min-width:0;overflow:visible;border:0;border-radius:var(--sdh-radius-lg);background:transparent;box-shadow:none}.configurator-shell-bar .configurator-issue-center__header{display:grid;min-height:58px;grid-template-columns:36px minmax(0,1fr) auto;gap:var(--sdh-space-3);align-items:center;padding:7px var(--sdh-space-3);border-radius:var(--sdh-radius-lg);cursor:pointer;list-style:none}.configurator-shell-bar .configurator-issue-center__header::-webkit-details-marker,.configurator-summary__details>summary::-webkit-details-marker{display:none}.configurator-shell-bar .configurator-issue-center__header>span:first-child{width:34px;height:34px}.configurator-shell-bar .configurator-issue-center__header>div{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr);column-gap:var(--sdh-space-2);align-items:baseline}.configurator-shell-bar .configurator-issue-center__header small{grid-column:1/-1;font-size:.58rem}.configurator-shell-bar .configurator-issue-center__header strong{font-size:.82rem}.configurator-shell-bar .configurator-issue-center__header em{min-width:0;overflow:hidden;color:var(--sdh-text-secondary);font-size:.68rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.configurator-shell-bar .configurator-issue-center__drawer{position:absolute;right:0;bottom:calc(100% + 12px);left:0;display:grid;max-height:min(62dvh,620px);overflow-y:auto;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-lg);background:rgb(255 255 255/97%);box-shadow:0 22px 64px rgb(25 24 22/20%);scrollbar-width:thin}.configurator-issue-center__context{display:grid;gap:5px;padding:var(--sdh-space-3) var(--sdh-space-4);border-bottom:1px solid var(--sdh-border-default);color:var(--sdh-text-secondary);font-size:.7rem;line-height:1.45}.configurator-issue-center__context strong{color:var(--sdh-action-primary-hover);font-size:.76rem}.configurator-shell-bar .configurator-issue-center__list{max-height:none}.configurator-shell-bar .configurator-summary{position:relative;display:block;min-width:0;padding:0;overflow:visible;border-radius:var(--sdh-radius-lg);background:var(--sdh-text-primary);color:var(--sdh-text-on-brand)}.configurator-summary__primary{display:grid;min-height:58px;grid-template-columns:minmax(156px,1fr) auto auto;gap:var(--sdh-space-2);align-items:center;padding:6px}.configurator-summary__primary>span:first-child{display:grid;min-width:0;gap:1px;padding-inline:var(--sdh-space-3)}.configurator-summary__primary>span:first-child small{color:rgb(255 255 255/64%);font-size:var(--sdh-font-size-caption);font-weight:750;letter-spacing:.04em;text-transform:uppercase}.configurator-summary__primary>span:first-child strong{overflow:hidden;font-size:1rem;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap}.configurator-summary__details{position:relative}.configurator-summary__details>summary{display:inline-flex;min-height:44px;gap:var(--sdh-space-2);align-items:center;padding:0 var(--sdh-space-3);border:1px solid rgb(255 255 255/18%);border-radius:var(--sdh-radius-md);color:var(--sdh-text-on-brand);cursor:pointer;font-size:.7rem;font-weight:750;list-style:none;white-space:nowrap}.configurator-summary__details>summary:hover,.configurator-summary__details[open]>summary{background:rgb(255 255 255/10%)}.configurator-summary__details>div{position:absolute;right:0;bottom:calc(100% + 18px);display:grid;width:min(390px,calc(100vw - var(--sdh-space-6)));max-height:min(70dvh,680px);gap:var(--sdh-space-3);padding:var(--sdh-space-4);overflow-y:auto;border:1px solid rgb(255 255 255/18%);border-radius:var(--sdh-radius-lg);background:rgb(25 24 22/97%);box-shadow:0 22px 64px rgb(25 24 22/24%);scrollbar-width:thin}.configurator-summary__primary>button{display:inline-flex;min-height:44px;gap:var(--sdh-space-2);align-items:center;padding-inline:var(--sdh-space-4);white-space:nowrap}.configurator-shell-bar .configurator-summary__error{position:absolute;right:0;bottom:calc(100% + 12px);width:min(390px,calc(100vw - var(--sdh-space-6)));box-shadow:0 14px 36px rgb(25 24 22/18%)}.configurator__room-fit,.configurator__validation{display:none}.bookcase-viewport__interaction-tools{bottom:94px}.selected-panel-editor{bottom:184px}@media (max-width:980px){.configurator-shell-bar{grid-template-columns:minmax(250px,.9fr) minmax(460px,1.1fr)}.configurator-shell-bar .configurator-issue-center__header output{display:none}}@media (max-width:820px){.configurator__reset{width:42px;min-width:42px;padding:0;font-size:0}.configurator__reset:before{font-size:1rem;content:"↺"}.configurator__panel{bottom:calc(86px + var(--configurator-footer-height, 64px) + env(safe-area-inset-bottom, 0px));padding:var(--sdh-space-4)}.configurator-shell-bar{right:8px;bottom:calc(78px + env(safe-area-inset-bottom, 0px));left:8px;min-height:62px;grid-template-columns:minmax(112px,.8fr) minmax(0,1.45fr);gap:4px;padding:4px;border-radius:var(--sdh-radius-lg)}.configurator-shell-bar .configurator-issue-center__header{min-height:52px;grid-template-columns:30px minmax(0,1fr);gap:7px;padding:5px 7px}.configurator-shell-bar .configurator-issue-center__header>span:first-child{width:28px;height:28px;font-size:.68rem}.configurator-shell-bar .configurator-issue-center__header>div{display:grid;grid-template-columns:minmax(0,1fr)}.configurator-shell-bar .configurator-issue-center__header em,.configurator-shell-bar .configurator-issue-center__header output,.configurator-shell-bar .configurator-issue-center__header small{display:none}.configurator-shell-bar .configurator-issue-center__header strong{overflow:hidden;font-size:.68rem;line-height:1.25;text-overflow:ellipsis}.configurator-shell-bar .configurator-issue-center__drawer{position:fixed;right:8px;bottom:calc(86px + var(--configurator-footer-height, 64px) + env(safe-area-inset-bottom, 0px));left:8px;max-height:min(58dvh,520px)}.configurator-shell-bar .configurator-summary{border-radius:var(--sdh-radius-md)}.configurator-summary__primary{min-height:52px;grid-template-columns:minmax(0,1fr) 44px;gap:4px;padding:4px}.configurator-summary__primary>span:first-child{padding-inline:6px}.configurator-summary__primary>span:first-child small{font-size:.75rem}.configurator-summary__primary>span:first-child strong{font-size:var(--sdh-font-size-control)}.configurator-summary__details>summary{width:44px;min-height:44px;justify-content:center;padding:0}.configurator-summary__details>summary>span:first-child{display:none}.configurator-summary__details>div{position:fixed;right:8px;bottom:calc(86px + var(--configurator-footer-height, 64px) + env(safe-area-inset-bottom, 0px));left:8px;width:auto;max-height:min(64dvh,600px)}.configurator-summary__primary>button{grid-column:1/-1;width:100%;min-height:44px;justify-content:center;padding:8px;white-space:normal;font-size:var(--sdh-font-size-control);line-height:1.4}.configurator-summary__primary>button>span:first-child{display:inline}.configurator-shell-bar .configurator-summary__error{position:fixed;right:8px;left:8px;width:auto}.bookcase-viewport__interaction-tools,.configurator-shell-bar .configurator-summary__error{bottom:calc(86px + var(--configurator-footer-height, 64px) + env(safe-area-inset-bottom, 0px))}.bookcase-viewport--front .bookcase-viewport__visual-controls,.bookcase-viewport__visual-controls{bottom:208px}.selected-panel-editor{bottom:216px}}@media (max-width:480px){.configurator__header{grid-template-columns:minmax(0,1fr) auto;gap:6px;overflow:visible}.configurator__product{min-width:0}.configurator__product-name{font-size:.86rem}.configurator__save-state{max-width:170px;font-size:.62rem}.configurator__header-actions{gap:4px}.saved-design-manager__trigger{width:42px;min-width:42px;padding:0;justify-content:center;font-size:0}.saved-design-manager__trigger>span:first-child{font-size:.92rem}}.configurator-advanced{margin:var(--sdh-space-4) var(--sdh-space-4) 0;overflow:clip;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:var(--sdh-bg-surface);transition:border-color var(--sdh-motion-150) ease,box-shadow var(--sdh-motion-150) ease}.configurator-advanced[open]{border-color:rgb(25 102 78/38%);box-shadow:0 10px 28px rgb(25 38 32/7%)}.configurator-advanced--technical[open]{border-color:rgb(122 95 32/34%)}.configurator-advanced>summary{display:grid;min-height:66px;grid-template-columns:38px minmax(0,1fr) auto 20px;gap:var(--sdh-space-3);align-items:center;padding:var(--sdh-space-3);color:var(--sdh-text-primary);cursor:pointer;list-style:none}.configurator-advanced>summary::-webkit-details-marker{display:none}.configurator-advanced>summary:hover{background:var(--sdh-bg-subtle)}.configurator-advanced>summary:focus-visible{border-radius:inherit;outline:2px solid var(--sdh-border-focus);outline-offset:-2px}.configurator-advanced__icon{display:grid;width:38px;height:38px;border-radius:var(--sdh-radius-sm);background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary);font-size:1rem;place-items:center}.configurator-advanced--technical .configurator-advanced__icon{background:var(--sdh-bg-warning-subtle);color:var(--sdh-text-warning)}.configurator-advanced__copy{display:grid;min-width:0;gap:2px}.configurator-advanced__copy small{color:var(--sdh-action-primary);font-size:.54rem;font-weight:850;letter-spacing:.08em}.configurator-advanced--technical .configurator-advanced__copy small{color:var(--sdh-text-warning)}.configurator-advanced__copy strong{font-size:.76rem;line-height:1.35}.configurator-advanced__copy em{font-size:.64rem;font-style:normal;line-height:1.35}.configurator-advanced__copy em,.configurator-advanced__summary{overflow:hidden;color:var(--sdh-text-secondary);text-overflow:ellipsis;white-space:nowrap}.configurator-advanced__summary{max-width:98px;padding:5px 8px;border-radius:var(--sdh-radius-full);background:var(--sdh-bg-subtle);font-size:.58rem;font-weight:800}.configurator-advanced__chevron{color:var(--sdh-text-tertiary);font-size:.9rem;transition:transform var(--sdh-motion-150) ease}.configurator-advanced[open] .configurator-advanced__chevron{transform:rotate(180deg)}.configurator-advanced__content{display:grid;padding:0 0 var(--sdh-space-4);border-top:1px solid var(--sdh-border-default);background:linear-gradient(180deg,var(--sdh-bg-subtle),var(--sdh-bg-surface) 72px)}.configurator-advanced__content>.configurator-form__controls{padding:var(--sdh-space-4) var(--sdh-space-3) 0}.configurator-advanced__content>.configurator-step__task-list,.configurator-advanced__content>.material-sample-comparison,.configurator-advanced__content>.material-sample-notice{margin-inline:var(--sdh-space-3)}.configurator-advanced__content>.placement-suitability-report{width:calc(100% + 2px);margin-inline:-1px}@media (max-width:520px){.configurator-advanced{margin-inline:var(--sdh-space-3)}.configurator-advanced>summary{grid-template-columns:34px minmax(0,1fr) 18px;gap:var(--sdh-space-2)}.configurator-advanced__icon{width:34px;height:34px}.configurator-advanced__summary{display:none}.configurator-advanced__copy em{white-space:normal}}@media (prefers-reduced-motion:reduce){.configurator-advanced,.configurator-advanced__chevron{transition-duration:.01ms!important}}.bookcase-scale-control__panel>.configurator-advanced{order:2;flex:0 0 auto;margin:var(--sdh-space-2) 0 0}.bookcase-scale-control__section>.configurator-advanced{margin:var(--sdh-space-3) 0 0}.bookcase-scale-control .configurator-advanced>summary{min-height:56px;grid-template-columns:32px minmax(0,1fr) auto 16px;gap:var(--sdh-space-2);padding:var(--sdh-space-2)}.bookcase-scale-control .configurator-advanced__icon{width:32px;height:32px;font-size:.8rem}.bookcase-scale-control .configurator-advanced__copy small{font-size:.48rem}.bookcase-scale-control .configurator-advanced__copy strong{font-size:.68rem}.bookcase-scale-control .configurator-advanced__copy em{font-size:.56rem}.bookcase-scale-control .configurator-advanced__summary{max-width:84px;font-size:.52rem}.bookcase-scale-control .configurator-advanced__content{padding-bottom:0}.bookcase-scale-control__disclosure-body{display:grid;gap:var(--sdh-space-2);min-width:0;margin:0;padding:var(--sdh-space-2);border:0}.bookcase-scale-control__disclosure-body.bookcase-scale-control__section{padding:var(--sdh-space-2);border-top:0}.bookcase-scale-control__disclosure-body .bookcase-scale-control__free-placement,.bookcase-scale-control__disclosure-body .bookcase-scale-control__installation-fields,.bookcase-scale-control__disclosure-body .bookcase-scale-control__wall-placement{margin-top:0}.configurator .bookcase-viewport--front .bookcase-viewport__visual-controls,.configurator .bookcase-viewport__visual-controls{width:auto;min-height:38px;flex-wrap:nowrap;padding:0;border:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.configurator .bookcase-viewport__visual-controls-toggle{display:inline-flex;min-height:38px;align-items:center;justify-content:center;padding:0 var(--sdh-space-3);border:1px solid rgb(255 255 255/76%);border-radius:var(--sdh-radius-full);background:rgb(255 255 255/94%);box-shadow:0 8px 24px rgb(25 24 22/12%);color:var(--sdh-action-primary);cursor:pointer;font-size:.62rem;font-weight:800;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.configurator .bookcase-viewport__visual-controls-toggle:hover,.configurator .bookcase-viewport__visual-controls-toggle[aria-expanded=true]{border-color:rgb(25 102 78/36%);background:var(--sdh-bg-brand-subtle)}.configurator .bookcase-viewport__visual-controls-toggle:focus-visible{outline:2px solid var(--sdh-border-focus);outline-offset:2px}.configurator .bookcase-viewport__visual-controls-fields{padding:4px 5px;border:1px solid rgb(255 255 255/76%);border-radius:var(--sdh-radius-lg);background:rgb(255 255 255/94%);box-shadow:0 10px 30px rgb(25 24 22/14%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.configurator .bookcase-viewport__visual-controls-fields[hidden]{display:none}@media (max-width:820px){.configurator[data-mobile-sheet-level=compact] .configurator__panel,.configurator[data-mobile-workspace-region=preview] .configurator__panel{display:none}.configurator[data-mobile-sheet-level=half] .configurator__panel{top:auto;bottom:calc(86px + var(--configurator-footer-height, 64px) + env(safe-area-inset-bottom, 0px));max-height:min(52dvh,560px)}.configurator[data-mobile-sheet-level=full] .configurator__panel{top:68px;bottom:calc(86px + var(--configurator-footer-height, 64px) + env(safe-area-inset-bottom, 0px));max-height:none}.configurator[data-mobile-sheet-level=full] .configurator__panel,.configurator[data-mobile-sheet-level=half] .configurator__panel{overscroll-behavior-y:contain;scrollbar-gutter:stable}.configurator-mobile-dock>div{grid-template-columns:repeat(3,minmax(0,1fr))}.configurator-mobile-dock button{min-width:60px}.configurator-mobile-dock__sheet-level{border-left:1px solid var(--sdh-border-default)!important;border-radius:0 var(--sdh-radius-md) var(--sdh-radius-md) 0!important}.configurator-mobile-dock__sheet-level[aria-pressed=true]{background:var(--sdh-bg-brand-subtle)!important;color:var(--sdh-action-primary-hover)!important;box-shadow:inset 0 0 0 1px rgb(25 102 78/18%)!important}.configurator__preview-stage[data-view-mode=dimensions]{position:fixed;inset:0}.selected-panel-editor{max-height:min(46dvh,440px);overflow-y:auto;overscroll-behavior-y:contain}}@media (max-width:360px){.configurator-mobile-dock{grid-template-columns:minmax(0,1fr)}.configurator-mobile-dock__step{display:none}.configurator-mobile-dock button{min-width:0;min-height:48px}}.configurator__save-state{display:flex;gap:5px;align-items:center}.configurator__save-state>span{display:grid;width:16px;height:16px;flex:0 0 auto;border-radius:var(--sdh-radius-full);background:var(--sdh-bg-subtle);color:var(--sdh-text-tertiary);font-size:.62rem;font-weight:900;place-items:center}.configurator__save-state[data-save-status=saved]>span{background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary)}.configurator__save-state[data-save-status=error]>span{background:var(--sdh-bg-error-subtle);color:var(--sdh-text-error)}.configurator-history{display:inline-grid;grid-template-columns:repeat(2,auto);overflow:hidden;border:1px solid var(--sdh-border-default);border-radius:var(--sdh-radius-md);background:rgb(255 255 255/78%)}.configurator-history button{display:inline-flex;min-width:42px;min-height:42px;gap:6px;align-items:center;justify-content:center;padding:0 10px;border:0;background:transparent;color:var(--sdh-text-secondary);cursor:pointer;font:inherit;font-size:.72rem;font-weight:800}.configurator-history button+button{border-left:1px solid var(--sdh-border-default)}.configurator-history button:hover:not(:disabled){background:var(--sdh-bg-brand-subtle);color:var(--sdh-action-primary-hover)}.configurator-history button:focus-visible{outline:2px solid var(--sdh-border-focus);outline-offset:-2px}.configurator-history button:disabled{cursor:default;opacity:.38}@media (max-width:1180px){.configurator-history button span:last-child{display:none}}@media (max-width:820px){.configurator-history button{width:38px;min-width:38px;min-height:38px;padding:0}}@media (max-width:420px){.configurator-history{position:fixed;z-index:61;right:12px;bottom:calc(84px + env(safe-area-inset-bottom, 0px));border-color:rgb(255 255 255/76%);border-radius:var(--sdh-radius-full);box-shadow:0 10px 28px rgb(25 24 22/14%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}}.configurator .configurator-step__navigation button,.configurator .configurator-summary__primary>button,.configurator .numeric-control__input,.configurator .room-measurement-control input{font-size:var(--sdh-font-size-control);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.configurator .configurator-advanced__copy small,.configurator .configurator-step__description,.configurator .configurator-step__focus-card small,.configurator .configurator-step__task-list,.configurator .configurator__panel-intro>p:last-child,.configurator .construction-option small,.configurator .material-option small,.configurator .numeric-control__helper,.configurator .numeric-control__label,.configurator .room-element-editor__field>label strong,.configurator .room-measurement-control>label strong,.configurator .room-plan-editor__toolbar button,.configurator .room-plan-editor__zoom output{font-size:var(--sdh-font-size-label);line-height:1.5}.configurator .configurator-advanced__copy small,.configurator .configurator-step__focus-card small,.configurator .numeric-control__helper,.configurator .room-measurement-control>label small{color:var(--sdh-text-secondary)}.configurator .configurator-step__active-heading h2,.configurator .room-plan-editor__header h2{font-size:1.25rem;line-height:1.35}.configurator .configurator-progress__summary em,.configurator .configurator-progress__summary small,.configurator .configurator-step__active-heading small,.configurator .configurator__save-state,.configurator .numeric-control__unit,.configurator .room-measurement-control em,.configurator .room-measurement-control>label small{font-size:var(--sdh-font-size-caption);line-height:1.5}.configurator .configurator__save-state{max-width:none;white-space:normal;color:var(--sdh-text-secondary)}.configurator .room-measurement-control input{min-height:44px}.configurator{text-size-adjust:100%}.configurator :where(button,input,select,textarea,summary,[tabindex]){scroll-margin:96px}.configurator :where(button,summary,[role=button],[role=slider]){touch-action:manipulation}.configurator :where(button,input,select,textarea,summary):focus-visible{outline:3px solid var(--sdh-border-focus);outline-offset:2px}@media (max-width:820px){.configurator__panel :where(button,input,select,summary),.configurator__viewport-topline :where(button,input,select,summary),.selected-panel-editor :where(button,input,select,summary){min-height:44px}.configurator-step__description,.configurator__panel-intro>p:last-child,.numeric-control__label{font-size:.875rem;line-height:1.55}.configurator__panel :where(.numeric-control__helper,.configurator-step__focus-card small,.configurator-step__task-list,.construction-option small,.material-option small){font-size:.75rem;line-height:1.5}.configurator-advanced__copy small,.configurator-progress__summary small,.configurator-step__active-heading small,.configurator__save-state{font-size:.75rem}.configurator-history button,.configurator-mobile-dock button{min-height:44px}}@media (max-width:390px){.configurator-mobile-dock,.configurator-shell-bar,.configurator__header,.configurator__panel,.configurator__viewport-topline{right:6px;left:6px}.configurator__header{padding-inline:8px}.configurator__save-state{max-width:132px}.configurator-mobile-dock button{padding-inline:6px;font-size:.68rem}.configurator-advanced>summary{grid-template-columns:38px minmax(0,1fr) 20px}.configurator-advanced__summary{display:none}}@media (max-width:330px){.configurator__product-name{font-size:.8rem}.configurator__save-state{max-width:96px}.configurator__panel-toggle,.configurator__reset,.saved-design-manager__trigger{width:44px;min-width:44px;padding:0}}@media (forced-colors:active){.configurator :where(button,input,select,textarea,summary):focus-visible{outline-color:Highlight}.configurator-mobile-dock button[aria-pressed=true],.configurator-progress__bar>span{forced-color-adjust:none}}@media (max-width:520px){.bookcase-scale-control .configurator-advanced>summary{grid-template-columns:32px minmax(0,1fr) 16px}.bookcase-scale-control .configurator-advanced__summary{display:none}.configurator .bookcase-viewport__visual-controls[data-open=true]{right:8px;left:8px;align-items:flex-end}.configurator .bookcase-viewport__visual-controls-fields{min-width:0;flex:1 1 auto}}.front-editor__back-action circle{fill:#fff;stroke:#176657;stroke-width:2}.front-editor__back-action text{fill:#176657;font:600 26px var(--font-manrope),sans-serif}.front-editor__back-action.is-filled circle{fill:#176657}.front-editor__back-action.is-filled text{fill:#fff}.front-editor__cell[role=button]{cursor:pointer}.front-editor__cell[role=button]:focus-visible .front-editor__cell-hit-area{stroke:#176657;stroke-width:3;fill:rgb(23 102 87/12%)}.customer-back-panel-tools{margin:8px 0 12px;font-size:12px;color:#5b6663}.customer-back-panel-tools p{margin:0 0 8px;line-height:1.5}.customer-back-panel-tools>div{display:flex;flex-wrap:wrap;gap:6px}.customer-back-panel-tools button{min-height:36px;padding:6px 10px;border:1px solid #d5dedb;border-radius:8px;background:white;font:inherit;color:#176657}.customer-back-panel-tools button:disabled{opacity:.45}