@font-face{font-family:Noto Sans;src:url(../assets/fonts/NotoSans-Regular.ttf);font-weight:400;font-display:block}@font-face{font-family:Noto Sans;src:url(../assets/fonts/NotoSans-SemiBold.ttf);font-weight:600;font-display:block}@font-face{font-family:Noto Sans;src:url(../assets/fonts/NotoSans-Bold.ttf);font-weight:700;font-display:block}:root{font-family:Noto Sans,sans-serif;font-size:13px;color:#e7e9ee;background:#191919;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}button,input,select,textarea{outline:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:1px solid var(--selectionOutline, #72b8ff);outline-offset:1px}button{border:0;border-radius:5px;background:var(--controlBackground, #282828)}button:hover:not(:disabled){background:var(--hoverBackground, #303030)}button:active:not(:disabled){background:var(--pressedBackground, #222)}button.active{background:var(--activeBackground, #5f5f5f)}button:disabled{color:var(--disabled, #9a9a9a)}input,textarea,select{background:var(--fieldBackground, #282828);border:0;border-radius:4px;padding:7px 9px;min-width:0}input[type=checkbox]{flex-shrink:0;accent-color:var(--sliderHandle, #d0d0d0);width:16px;height:16px;padding:0;cursor:pointer;margin:0}input[type=range]{margin:0;padding:0;accent-color:var(--sliderHandle);height:18px;cursor:ew-resize}select{height:36px;cursor:pointer}textarea{resize:vertical;min-height:80px}fieldset{border:1px solid var(--border);border-radius:5px;margin:18px 0 4px;padding:10px}legend{padding:0 5px;color:var(--mutedText)}hr{height:1px;border:0;background:var(--border);margin:12px 0}.planner{--text: #e7e9ee;--mutedText: #b8b8b8;--windowBackground: #191919;--controlBackground: #282828;--border: #343434;--canvas: #0e0e0e;display:flex;padding:12px;gap:0;width:100%;height:100dvh;min-height:400px;background:var(--windowBackground);color:var(--text);overflow:hidden}.drawing-area{position:relative;flex:1;min-width:180px;min-height:0;overflow:hidden}.viewport-canvas{display:block;width:100%;height:100%;touch-action:none;outline:none;-webkit-user-select:none;user-select:none}.canvas-fullscreen{position:absolute;right:12px;top:40px}.canvas-fullscreen .icon-button{width:30px;height:30px;background:transparent}.canvas-fullscreen .icon{width:20px;height:20px}.sidebar{min-width:280px;max-width:calc(100vw - 228px);display:flex;flex-direction:column;gap:4px;flex-shrink:0;min-height:0}.main-divider{width:8px;cursor:col-resize;flex-shrink:0}.main-divider:hover{background:var(--border)}.sidebar-header{height:32px;display:flex;gap:6px;justify-content:flex-end;margin-bottom:0;flex-shrink:0}.project-title{margin-right:auto;align-self:center;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--mutedText);font-size:11px}.icon{flex-shrink:0;object-fit:contain;display:block;pointer-events:none;-webkit-user-select:none;user-select:none}button:disabled .icon{opacity:.28}.icon-button{height:40px;width:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0}.header-button{width:34px;height:32px;background:transparent}.sidebar-body{display:flex;gap:10px;min-height:0;flex:1}.vertical-tools{display:flex;flex-direction:column;width:40px;gap:6px;flex-shrink:0;overflow-y:auto;scrollbar-width:none}.vertical-tools hr{width:40px;margin:6px 0}.sidebar-content{container-type:inline-size;display:flex;flex-direction:column;min-width:0;min-height:0;flex:1}.tab-strip{display:flex;gap:2px;height:46px;flex-shrink:0}.tab-strip button{display:flex;align-items:center;justify-content:center;flex:1;border-radius:5px 5px 0 0}.tab-strip button.selected{background:var(--hoverBackground)}.tab-strip .export-tab{flex:0 0 44px;background:var(--activeBackground)}.tab-strip .export-tab.selected{background:var(--activeHoverBackground)}.panel-top{min-height:100px;overflow-y:auto;flex-shrink:0}.tab-page{padding:14px 14px 24px}.section-heading{display:flex;align-items:center;gap:8px;min-height:28px;flex-shrink:0;margin-bottom:12px;font-weight:700;letter-spacing:.4px}.section-heading>span:not(.icon){height:3px;background:var(--border);flex:1;min-width:0}.section-heading button,.section-heading strong{background:none;font-size:14px;font-weight:700;min-width:0;color:var(--text);padding:0}.section-heading button:disabled{color:var(--text)}.section-heading button:hover{background:none}.wall-tools{display:flex;gap:14px;margin:16px 0 24px;min-height:113px}.wall-shapes{display:flex;flex-direction:column;justify-content:space-between;padding-right:14px;border-right:3px solid var(--border)}.wall-shapes button{width:24px;height:28px;display:grid;place-items:center;padding:0}.wall-options{flex:1;min-width:0}.presets{display:flex;justify-content:space-between;gap:4px}.presets button{background:none;display:flex;flex-direction:column;align-items:center;padding:0;gap:4px}.presets small{font-size:11px;color:var(--mutedText)}.wall-width-icon{width:24px;height:28px;background:var(--controlBackground);border-radius:4px;display:grid;place-items:center}.wall-width-icon i{height:19px;border:1px solid var(--icon);display:block;background:var(--wallFill)}.chosen .wall-width-icon{background:var(--activeBackground)}.wall-slider{width:100%;margin:4px 0 8px}.field-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(96px,1fr);align-items:center;gap:16px;min-height:32px;margin:8px 0}.field-row>span:first-child{min-width:0;overflow-wrap:break-word}.number-label{display:inline-flex;align-items:center;gap:10px}.number-label>.icon,.number-label>.wall-width-icon{flex-shrink:0}.field-row input{width:100%}.number-wrap{display:flex;position:relative;align-items:center;background:var(--fieldBackground);border-radius:4px;min-width:0}.number-wrap input{flex:1;width:0;height:32px;cursor:ew-resize}.number-wrap input:focus{cursor:text}.suffix{flex-shrink:0;padding-right:8px;pointer-events:none;color:var(--mutedText);font-size:12px}.object-category{margin-top:18px}.object-category h3,.category-heading{font-size:13px;font-weight:700;letter-spacing:.5px;margin:0 0 10px;background:none;padding:0;text-align:left}.object-grid{display:grid;grid-template-columns:repeat(auto-fill,64px);gap:12px 8px;justify-content:start}.project-warning{display:flex;align-items:center;gap:20px;margin:20px 0}.project-warning>.icon{flex-shrink:0;--icon: var(--warning)}.object-tool{width:64px;display:flex;flex-direction:column;align-items:center;gap:4px}.object-tool button{width:48px;height:48px;padding:2px;cursor:grab;display:grid;place-items:center}.object-tool button:active{cursor:grabbing}.object-tool>span{font-size:11px;letter-spacing:.4px;color:var(--mutedText);text-align:center;max-width:64px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.properties-divider{height:8px;flex:0 0 8px;background:var(--controlBackground);cursor:row-resize}.properties-divider:hover{background:var(--scrollbarHandle)}.properties{display:flex;flex:1;flex-direction:column;min-height:0;padding-top:12px}.properties>.section-heading{margin:0 14px 8px}.properties-scroll{overflow-y:auto;padding:8px 14px 20px;min-height:0}.properties.collapsed{flex:0 0 48px}button.section-heading{background:none;padding:0;color:var(--text)}button.section-heading:hover{background:none;color:var(--activeText)}.selection-heading{font-size:18px;font-weight:600;margin:10px 0 20px}.flip-button{width:32px;height:32px;display:grid;place-items:center}.check-row{display:flex;align-items:center;gap:10px;min-height:32px;cursor:pointer}.text-field{display:flex;flex-direction:column;gap:8px;margin:14px 0}.muted{color:var(--mutedText)}.search-field{position:relative;display:flex;margin-bottom:20px}.search-field input{width:100%;padding-right:30px}.search-field button{position:absolute;right:4px;top:3px;background:transparent;font-size:18px}.visibility-tree{padding-top:6px}.visibility-tree label{display:flex;align-items:center;gap:8px;min-height:30px;font-size:13px;padding-block:4px}.export-action{padding:14px}.export-action>button{width:100%;display:flex;align-items:center;justify-content:center;height:48px;gap:10px;font-weight:600;background:var(--activeBackground)}details{border-bottom:1px solid var(--border);padding:10px 0}summary{font-weight:600;cursor:pointer;padding:4px 0 8px}.resolution{font-size:12px;color:var(--mutedText);margin:10px 0}.wide-button{width:100%;padding:9px}.popup-menu{position:fixed;z-index:20;min-width:280px;width:max-content;max-width:calc(100vw - 8px);max-height:calc(100dvh - 30px);overflow:auto;background:var(--controlBackground);border:1px solid var(--menuBorder);border-radius:5px;padding:5px;box-shadow:0 6px 24px #0006}.popup-menu>button{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 12px;width:100%;text-align:left}.popup-menu>button>span:first-child{flex:0 0 auto}.popup-menu>button>span:nth-child(2){flex:1;white-space:nowrap}.material-submenu{min-width:200px;z-index:21}.material-submenu>button{padding:5px 8px}.material-submenu>button[aria-checked=true]{background:var(--activeBackground)}.color-picker{position:fixed;width:420px;max-width:calc(100vw - 8px);z-index:30;padding:12px;background:var(--windowBackground);border:1px solid var(--menuBorder);box-shadow:0 6px 24px #0006}.color-planes{display:flex;gap:12px;height:220px}.sv-plane,.hue-plane{position:relative;border:1px solid var(--border);cursor:crosshair;touch-action:none}.sv-plane{flex:1}.hue-plane{width:32px;background:linear-gradient(to bottom,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.color-marker{position:absolute;pointer-events:none;border:1px solid white;box-shadow:0 0 0 2px #000}.sv-plane .color-marker{width:10px;height:10px;border-radius:50%;transform:translate(-50%,-50%)}.hue-plane .color-marker{left:0;width:100%;height:6px;transform:translateY(-50%)}.color-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:12px 0}.color-fields .field-row{gap:6px;grid-template-columns:minmax(60px,auto) minmax(0,1fr)}.color-fields>div{min-width:0}.color-control{grid-template-columns:auto minmax(0,1fr) 32px}.color-control>button{min-height:32px}.color-control>.icon-button{width:32px;height:32px}.color-hex{display:flex;align-items:center;gap:8px}.color-hex>span:first-child{width:32px;height:32px;border:1px solid var(--border)}.color-hex input{flex:1;min-width:0}.color-picker p{font-size:10px;color:var(--mutedText);margin:10px 0 0}.popup-menu kbd{flex-shrink:0;white-space:nowrap;font-family:inherit;font-size:11px;color:var(--mutedText)}.popup-menu hr{margin:5px}.popup-menu .check-row{padding:2px 12px}.modal{color:var(--text);background:var(--windowBackground);border:1px solid var(--border);border-radius:8px;width:520px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);padding:18px;box-shadow:0 15px 70px #0008}.modal::backdrop{background:#0005}.modal-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:16px}.modal-heading .icon-button{width:28px;height:28px;background:none}.modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px}.modal-actions button{min-width:90px;padding:9px 16px}.settings-tabs{display:flex;gap:3px;border-bottom:1px solid var(--border);padding-bottom:8px}.settings-tabs button{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 10px;flex:1}.settings-content{max-height:60dvh;overflow:auto;padding:14px 6px}.settings-content .section-heading{margin-top:12px}.settings-content .setting-number .field-row{grid-template-columns:180px minmax(80px,1fr)}.settings-content .number-label>.wall-width-icon{background:none}.settings-content .setting-number.with-slider{grid-template-columns:130px minmax(40px,1fr) 96px 32px}.settings-content .setting-number.with-slider .field-row{display:contents}.settings-content .setting-number.with-slider .number-label{grid-column:1;grid-row:1}.settings-content .setting-number.with-slider>input{grid-column:2;grid-row:1}.settings-content .setting-number.with-slider .number-wrap{grid-column:3;grid-row:1}.settings-content .setting-number.with-slider>.icon-button{grid-column:4;grid-row:1}.help{line-height:1.7}.canvas-error{position:absolute;bottom:44px;left:42px;right:20px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--errorFill);color:var(--errorText);border:1px solid var(--errorBorder);padding:12px;border-radius:4px}.canvas-error button{background:none;color:inherit;font-size:22px}.boot-error{margin:60px auto;max-width:600px;padding:20px}.boot-error button{padding:12px 20px}*{scrollbar-width:thin;scrollbar-color:var(--scrollbarHandle, #404040) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--scrollbarHandle, #404040);border-radius:4px}::selection{background:var(--activeBackground);color:var(--activeText)}@media(max-width:800px){.planner{padding:6px}.sidebar{max-width:calc(100vw - 168px);min-width:250px}.drawing-area{min-width:140px}.sidebar-body{gap:6px}.tab-page{padding:12px 8px}.object-grid{gap:10px 4px}.project-title{display:none}.vertical-tools{width:32px}.vertical-tools .icon-button{width:32px;height:36px}.vertical-tools hr{width:32px}.field-row,.wall-tools{gap:8px}.wall-shapes{padding-right:8px}.properties-scroll{padding:8px}.sidebar-header{gap:4px}}.performance-overlay{position:absolute;left:40px;bottom:16px;padding:5px 8px;background:var(--overlayFill);color:var(--activeText);font-size:12px;pointer-events:none}.material-field{grid-template-columns:auto minmax(0,1fr);gap:8px}.material-trigger{display:flex;align-items:center;gap:8px;width:100%;min-width:0;padding:3px 7px}.material-trigger>span:nth-child(2){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.material-swatch{display:inline-flex;flex:0 0 32px;width:32px;height:24px}.material-options{position:fixed;z-index:30;width:210px;max-width:calc(100vw - 8px);max-height:min(330px,calc(100dvh - 8px));overflow-y:auto;padding:4px;background:var(--windowBackground);border:1px solid var(--border);box-shadow:0 6px 18px #0005}.material-options button{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:4px;border:0}.material-options button[aria-selected=true]{background:var(--activeBackground)}.modal.modeless{position:fixed;inset:5vh auto auto 50%;transform:translate(-50%);z-index:50;width:900px}.modal.modeless .modal-actions{margin-top:12px}.modal.modeless .modal-actions button{min-width:60px;padding:6px 12px}.settings-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.setting-number{display:flex;align-items:center;gap:8px;margin:10px 0}.setting-number .field-row{flex:1;min-width:0;margin:0;grid-template-columns:minmax(0,1fr) minmax(80px,100px)}.setting-number>.icon-button{flex:0 0 32px;width:32px;height:32px}.setting-number.with-slider{display:grid;grid-template-columns:minmax(0,1fr) 32px}.setting-number.with-slider>input{grid-row:2;grid-column:1 / 3;width:100%}.measurement-mode{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:8px;margin:16px 0}.measurement-mode>strong,.measurement-mode>input{grid-column:1;width:100%}.measurement-mode>.icon-button{grid-column:2;grid-row:2;width:32px;height:32px}.measurement-mode-labels{display:flex;grid-column:1;justify-content:space-between;gap:4px}.measurement-mode-labels button{padding:4px;font-size:11px}@container (max-width: 300px){.material-field,.field-row:has(select){grid-template-columns:minmax(0,1fr);gap:4px}.setting-number.with-slider .field-row{display:contents}.setting-number.with-slider .number-label{grid-column:1 / 3;grid-row:1}.setting-number.with-slider .number-wrap{grid-column:1;grid-row:2}.setting-number.with-slider>.icon-button{grid-column:2;grid-row:2}.setting-number.with-slider>input{grid-row:3}}@media(max-width:720px){.settings-columns{grid-template-columns:minmax(0,1fr)}}
