*{-webkit-user-select:none;user-select:none;border:0;margin:0;padding:0}a{text-decoration:none}p{text-indent:1.5rem;text-align:justify}:where(#room-select,#tiles-panel,#viewer-toolbar,#surface-panel,.drawer) p{text-indent:0;text-align:left}div{font-family:var(--basis-font)}html,body{width:100vw;height:100%;touch-action:manipulation;overscroll-behavior:contain;height:-webkit-fill-available;font-family:Verdana,sans-serif}#root{width:100%;height:100vh;position:fixed;top:0;left:0;overflow:hidden}#canvas{background:var(--scene-background);width:100%;height:100%;position:absolute;top:0;left:0}:root{--gray-1:#202020;--gray-3:#838383;--gray-4:#8d8d8d;--gray-6:#cfcfcf;--gray-2:#646464;--gray-5:#bbb;--gray-7:#d9d9d9;--gray-8:#e1e1e1;--gray-9:#e8e8e8;--gray-10:#f0f0f0;--gray-12:#fff;--link:#0d72ff;--brown-1:#4a3931;--brown-2:#5c4d46;--brown-4:#80746f;--brown-12:#fefcfb;--brown-6:#a59c98;--ui-text:var(--gray-1);--ui-text-muted:var(--gray-3);--ui-text-placeholder:var(--brown-6);--ui-text-inverse:var(--gray-12);--ui-surface:var(--gray-12);--ui-border:var(--gray-9);--ui-accent:var(--brown-4);--ui-accent-hover:var(--brown-2);--ui-accent-pressed:var(--brown-1);--ui-font:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--ui-font-chrome:"Poppins", var(--ui-font);--type-h2-size:48px;--type-h2-weight:500;--type-h3-size:36px;--type-h3-weight:500;--type-h5-size:24px;--type-h5-weight:500;--type-p1-size:18px;--type-p1-weight:400;--type-p1-tracking:.02em;--type-p1-semi-weight:600;--type-p2-size:16px;--type-p2-semi-weight:600;--type-line-height:1.2;--type-p1-bold-weight:700;--type-p1-med-weight:500;--type-p2-med-weight:500;--type-h6-size:20px;--type-h6-weight:600;--type-p2-reg-line-height:1.3;--type-p2-tracking:.02em;--type-small-size:13px;--type-chrome-size:14px;--type-chrome-tracking:.02em;--type-mob-p1-size:16px;--type-mob-line-height:1.4;--ui-text-placeholder-mob:var(--gray-4);--ui-border-mob:var(--gray-6);--radius-pill:100px;--radius-button:30px;--radius-card:20px;--shadow-field:0 0 2px #00000040;--shadow-card:0 0 2px #3f3f3f4d;--shadow-raised:0 4px 4px #cacaca33;--shadow-tab:0 4px 2px #a7a7a71a;--shadow-round:0 0 3px #00000029;--shadow-lang:0 0 6px #69696929;--ui-transition:.18s ease}.ui-btn{border-radius:var(--radius-button);font-family:var(--ui-font);font-size:var(--type-p2-size);font-weight:var(--type-p2-semi-weight);line-height:var(--type-line-height);white-space:nowrap;cursor:pointer;isolation:isolate;border:0;justify-content:center;align-items:center;gap:8px;padding:12px 20px;display:inline-flex;position:relative;overflow:hidden}.ui-btn:before{content:"";z-index:-1;aspect-ratio:1;width:130%;transition:transform var(--ui-transition);border-radius:50%;position:absolute;bottom:0;left:50%;transform:translate(-50%,100%)scale(0)}.ui-btn:hover:before,.ui-btn:focus-visible:before{transform:translate(-50%,35%)scale(1)}.ui-btn:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.ui-btn:disabled{cursor:not-allowed;opacity:.4}.ui-btn:disabled:before{transform:translate(-50%,100%)scale(0)}.ui-btn--primary{background:var(--ui-accent);color:var(--ui-text-inverse)}.ui-btn--primary:before{background:var(--ui-accent-hover)}.ui-btn--primary:active{background:var(--ui-accent-pressed)}.ui-btn--secondary{box-shadow:inset 0 0 0 1px var(--ui-accent);color:var(--ui-accent);background:0 0}.ui-btn--secondary:before{background:var(--ui-accent)}.ui-btn--secondary:hover,.ui-btn--secondary:focus-visible{color:var(--ui-text-inverse)}.ui-btn--secondary:active{background:var(--ui-accent-pressed);box-shadow:inset 0 0 0 1px var(--ui-accent-pressed);color:var(--ui-text-inverse)}.ui-btn__icon{flex:none;width:20px;height:20px;display:block}.ui-btn__icon svg{fill:currentColor;width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){.ui-btn:before{transition:none}}.ui-btn--large{width:100%;max-width:399px;min-height:80px;font-size:var(--type-p1-size);gap:12px;padding:20px 24px}.ui-btn--large .ui-btn__icon{width:30px;height:30px}.icon-btn{background:var(--ui-surface);width:50px;height:50px;color:var(--gray-1);cursor:pointer;transition:background var(--ui-transition), color var(--ui-transition);border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative;box-shadow:0 0 3px #00000029}.icon-btn:hover,.icon-btn:focus-visible{background:var(--ui-accent);color:var(--ui-text-inverse)}.icon-btn:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.icon-btn[aria-pressed=true]{background:var(--ui-accent);color:var(--ui-text-inverse)}.icon-btn__glyph{width:24px;height:24px;display:block}.icon-btn__glyph svg{fill:currentColor;width:100%;height:100%;display:block}.icon-btn__tip{z-index:2;background:var(--gray-2);font-family:var(--ui-font);color:#fffc;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--ui-transition);border-radius:4px;padding:4px 6px;font-size:10px;line-height:normal;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.icon-btn__tip:before{content:"";border:6px solid #0000;border-bottom-color:var(--gray-2);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.icon-btn:hover .icon-btn__tip,.icon-btn:focus-visible .icon-btn__tip{opacity:1}@media (prefers-reduced-motion:reduce){.icon-btn,.icon-btn__tip{transition:none}}.ui-chip{background:var(--ui-surface);border:1px solid var(--gray-7);border-radius:var(--radius-button);font-family:var(--ui-font-chrome);font-size:var(--type-chrome-size);letter-spacing:var(--type-chrome-tracking);color:var(--gray-4);cursor:pointer;white-space:nowrap;transition:background var(--ui-transition), color var(--ui-transition), border-color var(--ui-transition);justify-content:center;align-items:center;gap:8px;padding:10px 16px;line-height:1.3;display:inline-flex;position:relative}.ui-chip:hover,.ui-chip:focus-visible,.ui-chip[aria-pressed=true]{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-text-inverse)}.ui-chip:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.ui-chip__icon{flex:none;width:20px;height:20px;display:block}.ui-chip__icon svg{fill:currentColor;width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){.ui-chip{transition:none}}.ui-tabs{border:1px solid var(--gray-6);box-shadow:var(--shadow-raised);border-radius:50px;justify-content:center;align-items:center;gap:16px;padding:10px 17px;display:inline-flex}.ui-tab{width:150px;height:40px;font-family:var(--ui-font);font-size:var(--type-p1-size);line-height:var(--type-line-height);background:var(--gray-10);color:var(--gray-3);font-weight:var(--type-p1-med-weight);cursor:pointer;transition:background var(--ui-transition), color var(--ui-transition);border:0;border-radius:60px;padding:10px}.ui-tab[aria-selected=true]{background:var(--brown-2);color:var(--ui-text-inverse);font-weight:var(--type-p1-bold-weight);box-shadow:var(--shadow-tab)}.ui-tab:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}@media (prefers-reduced-motion:reduce){.ui-tab{transition:none}}.ui-search{box-sizing:border-box;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--radius-pill);width:100%;max-width:683px;box-shadow:var(--shadow-field);align-items:center;gap:8px;padding:8px 16px;display:flex}.ui-search__icon{width:30px;height:30px;color:var(--ui-text-placeholder);flex:none}.ui-search__icon svg{fill:currentColor;width:100%;height:100%;display:block}.ui-search__input{min-width:0;font-family:var(--ui-font);font-size:var(--type-p1-size);font-weight:var(--type-p1-weight);letter-spacing:var(--type-p1-tracking);line-height:var(--type-line-height);color:var(--ui-text);-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:none;flex:auto}.ui-search__input::placeholder{color:var(--ui-text-placeholder);opacity:1}.ui-search .ui-btn{flex:none}@media screen and (width<=920px){.ui-search{border-color:var(--ui-border-mob);max-width:none;height:52px;box-shadow:none;border-radius:60px;gap:11px;padding:0 5px 0 16px}.ui-search__input{font-size:var(--type-mob-p1-size);line-height:var(--type-mob-line-height);letter-spacing:0}.ui-search__input::placeholder{color:var(--ui-text-placeholder-mob)}}.panel-search{box-sizing:border-box;background:var(--ui-surface);border:1px solid var(--gray-7);border-radius:var(--radius-button);align-items:center;gap:8px;height:40px;padding:0 5px 0 16px;display:flex}.panel-search__input{min-width:0;font-family:var(--ui-font-chrome);font-size:var(--type-chrome-size);line-height:var(--type-line-height);color:var(--gray-1);-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:none;flex:auto}.panel-search__input::placeholder{color:var(--gray-5);opacity:1}.panel-search__btn{background:var(--ui-accent);width:30px;height:30px;color:var(--ui-text-inverse);cursor:pointer;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:flex}.panel-search__btn svg{fill:currentColor;width:20px;height:20px;display:block}.panel-search__btn:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.room-card{--room-card-motion:.42s cubic-bezier(.33, 0, .2, 1);background:var(--gray-9);border-radius:var(--radius-card);width:331px;height:203px;box-shadow:var(--shadow-card);cursor:pointer;text-align:left;border:0;padding:0;display:block;position:relative;overflow:hidden}.room-card__media{border-radius:var(--radius-card);position:absolute;inset:0;overflow:hidden}.room-card__image{object-fit:cover;width:100%;height:100%;transition:transform var(--room-card-motion);display:block;position:absolute;inset:0}.room-card:after{content:"";pointer-events:none;background:linear-gradient(#6666 0%,#0006 45.5% 100%);position:absolute;inset:0}.room-card__label{z-index:1;justify-content:space-between;align-items:center;gap:12px;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.room-card__name{font-family:var(--ui-font);font-size:var(--type-p1-size);font-weight:var(--type-p1-semi-weight);line-height:var(--type-line-height);color:var(--ui-text-inverse);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-card__arrow{width:30px;height:30px;color:var(--ui-text-inverse);opacity:.8;flex:none}.room-card__arrow svg{fill:currentColor;width:100%;height:100%;display:block}.room-card--overlay:hover .room-card__image,.room-card--overlay:focus-visible .room-card__image{transform:scale(1.19)}.room-card--overlay .room-card__label{display:block;position:absolute;inset:0}.room-card--overlay .room-card__name,.room-card--overlay .room-card__arrow{transition:left var(--room-card-motion), top var(--room-card-motion), transform var(--room-card-motion), font-size var(--room-card-motion), width var(--room-card-motion), height var(--room-card-motion), opacity var(--room-card-motion);position:absolute;top:84.73%}.room-card--overlay .room-card__name{max-width:calc(100% - 62px);left:16px;transform:translateY(-50%)}.room-card--overlay .room-card__arrow{left:calc(100% - 16px);transform:translate(-100%,-50%)}.room-card--overlay:hover .room-card__name,.room-card--overlay:focus-visible .room-card__name{font-size:var(--type-h5-size);font-weight:var(--type-h5-weight);text-transform:capitalize;text-align:center;max-width:283px;top:50%;left:50%;transform:translate(-50%,calc(-50% - 29px))}.room-card--overlay:hover .room-card__arrow,.room-card--overlay:focus-visible .room-card__arrow{opacity:1;width:50px;height:50px;top:50%;left:50%;transform:translate(-50%,calc(18.5px - 50%))}.room-card--overlay:hover:after,.room-card--overlay:focus-visible:after{background:linear-gradient(#6669 0%,#0009 45.5% 100%)}.room-card:after{transition:background var(--room-card-motion)}.room-card--caption{height:240px;box-shadow:none;background:0 0;overflow:visible}.room-card--caption .room-card__media{height:203px;box-shadow:var(--shadow-card);inset:0 0 auto}.room-card--caption:hover .room-card__image,.room-card--caption:focus-visible .room-card__image{transform:scale(1.06)}.room-card--caption:after{content:none}.room-card--caption .room-card__label{justify-content:center;position:absolute;inset:213px 0 auto}.room-card--caption .room-card__name{text-align:center;width:253px;color:var(--gray-2);white-space:normal}.room-card:focus-visible{outline:2px solid var(--brown-1);outline-offset:3px}@media (prefers-reduced-motion:reduce){.room-card__image,.room-card__name,.room-card__arrow,.room-card:after{transition:none}.room-card--overlay:hover .room-card__image,.room-card--overlay:focus-visible .room-card__image{transform:none}}@media screen and (width<=920px){.room-card{aspect-ratio:192/150;width:100%;height:auto}.room-card__label{gap:8px;bottom:12px;left:12px;right:12px}.room-card__name{font-size:var(--type-mob-p1-size);line-height:var(--type-mob-line-height)}.room-card__arrow{width:24px;height:24px}}.tile-card{cursor:pointer;flex-direction:column;gap:8px;width:100%;min-width:0;display:flex}.tile-card__frame{aspect-ratio:1;box-sizing:border-box;background:var(--ui-surface);border:1px solid var(--gray-6);width:100%;transition:border-color var(--ui-transition), box-shadow var(--ui-transition);border-radius:12px;padding:8px;position:relative;overflow:hidden;box-shadow:0 4px 2px #cacaca33}.tile-card[aria-selected=true] .tile-card__frame{border-color:var(--ui-accent);box-shadow:0 0 0 1px var(--ui-accent), 0 4px 2px 0 #cacaca33}.tile-card__swatch{object-fit:cover;background:var(--gray-10);border-radius:6px;width:100%;height:100%;display:block}.tile-card__fav{width:24px;height:24px;color:var(--gray-1);cursor:pointer;background:0 0;border:0;padding:0;position:absolute;top:15px;right:17px}.tile-card__fav svg{fill:none;stroke:currentColor;stroke-width:2px;width:100%;height:100%;display:block}.tile-card__fav[aria-pressed=true] svg{fill:currentColor;stroke:none}.tile-card__info{text-align:left;text-indent:0;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;padding-left:6px;display:flex}.tile-card__name{text-align:left;text-indent:0;font-family:var(--ui-font);font-size:var(--type-p2-size);font-weight:var(--type-p2-med-weight);line-height:var(--type-line-height);color:var(--gray-1);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tile-card__meta{text-align:left;text-indent:0;font-family:var(--ui-font);font-size:var(--type-small-size);line-height:var(--type-line-height);color:var(--gray-4);overflow-wrap:anywhere}.tile-card__unit{font-family:var(--ui-font-chrome);font-size:11px}.tile-card__details{text-align:left;text-indent:0;font-family:var(--ui-font);font-size:var(--type-small-size);line-height:var(--type-line-height);color:var(--link);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;text-decoration:underline}.tile-card__details:focus-visible,.tile-card__fav:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.ctrl-section{background:var(--ui-surface);border:1px solid var(--gray-6);border-radius:16px;flex-direction:column;gap:20px;padding:16px 20px;display:flex}.ctrl-section__head{cursor:default;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:0;display:flex}.ctrl-section__title{font-family:var(--ui-font);font-size:var(--type-p1-size);font-weight:var(--type-p1-semi-weight);line-height:var(--type-line-height);color:var(--gray-1)}.ctrl-section__chevron{width:24px;height:24px;color:var(--gray-4);transition:transform var(--ui-transition);display:none}.ctrl-section__chevron svg{fill:currentColor;width:100%;height:100%;display:block}.ctrl-section__body{flex-direction:column;gap:16px;display:flex}.ctrl-segmented{box-sizing:border-box;background:var(--ui-surface);border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;height:45px;padding:12px 16px;display:flex;box-shadow:0 0 2px #21212140}.ctrl-segmented__sep{background:var(--gray-6);width:1px;height:20px}.ctrl-modes{justify-content:space-between;align-items:center;display:flex}.ctrl-mode{box-sizing:border-box;background:var(--ui-surface);cursor:pointer;width:90px;transition:background var(--ui-transition), color var(--ui-transition), box-shadow var(--ui-transition);border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:12px 8px;display:flex;box-shadow:0 0 2px #21212133}.ctrl-mode__icon{width:24px;height:24px;color:var(--gray-2);display:block}.ctrl-mode__icon svg{fill:currentColor;width:100%;height:100%;display:block}.ctrl-mode__label{font-family:var(--ui-font-chrome);font-size:var(--type-chrome-size);line-height:var(--type-line-height);color:var(--gray-2);text-align:center}.ctrl-mode[aria-pressed=true]{background:var(--brown-4);box-shadow:0 4px 2px #cacaca33}.ctrl-mode[aria-pressed=true] .ctrl-mode__icon,.ctrl-mode[aria-pressed=true] .ctrl-mode__label{color:var(--ui-text-inverse)}.ctrl-row{align-items:center;gap:12px;display:flex}.ctrl-row__label{width:104px;font-family:var(--ui-font);font-size:var(--type-p2-size);font-weight:var(--type-p1-weight);line-height:var(--type-p2-reg-line-height);letter-spacing:var(--type-p2-tracking);color:var(--gray-2);flex:none}.ctrl-row input[type=range]{min-width:0;accent-color:var(--ui-accent);cursor:pointer;flex:auto}.ctrl-row__value{text-align:right;min-width:44px;font-family:var(--ui-font-chrome);font-size:var(--type-chrome-size);color:var(--gray-4);flex:none}.ctrl-swatches{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.ctrl-swatch{border:1px solid var(--gray-6);cursor:pointer;width:30px;height:30px;transition:box-shadow var(--ui-transition);border-radius:50%;padding:0}.ctrl-swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--ui-surface), 0 0 0 4px var(--ui-accent)}.ctrl-swatch:focus-visible,.ctrl-mode:focus-visible,.ctrl-segmented button:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.ctrl-swatch--custom{background:0 0;padding:0;overflow:hidden}@media (prefers-reduced-motion:reduce){.ctrl-mode,.ctrl-swatch{transition:none}}@media screen and (width<=920px){.ctrl-section{gap:10px;padding:12px 16px}.ctrl-section__head{cursor:pointer}.ctrl-section__chevron{display:block}.ctrl-section__head[aria-expanded=true] .ctrl-section__chevron{transform:rotate(180deg)}.ctrl-section__head[aria-expanded=false]+.ctrl-section__body{display:none}.ctrl-modes{justify-content:space-between}.ctrl-mode{flex:0 86px;width:86px;height:86px}.ctrl-row__label{width:92px;font-size:var(--type-mob-p1-size)}}@media (prefers-reduced-motion:reduce){.ctrl-section__chevron{transition:none}}.ctrl-row input[type=range],.toolbar__shadow-range{appearance:none;background:linear-gradient(to right, var(--ui-accent) 0, var(--ui-accent) var(--fill,50%), var(--gray-9) var(--fill,50%), var(--gray-9) 100%);border-radius:100px;height:6px}.ctrl-row input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--brown-2);cursor:pointer;border:0;border-radius:50%;width:16px;height:16px}.toolbar__shadow-range::-webkit-slider-thumb{appearance:none;background:var(--brown-2);cursor:pointer;border:0;border-radius:50%;width:16px;height:16px}.ctrl-row input[type=range]::-moz-range-thumb{background:var(--brown-2);cursor:pointer;border:0;border-radius:50%;width:16px;height:16px}.toolbar__shadow-range::-moz-range-thumb{background:var(--brown-2);cursor:pointer;border:0;border-radius:50%;width:16px;height:16px}.ctrl-row input[type=range]::-moz-range-track{background:0 0;border-radius:100px;height:6px}.toolbar__shadow-range::-moz-range-track{background:0 0;border-radius:100px;height:6px}.ctrl-swatch--custom{appearance:none;background:0 0;width:30px;height:30px}.ctrl-swatch--custom::-webkit-color-swatch-wrapper{padding:0}.ctrl-swatch--custom::-webkit-color-swatch{border:0;border-radius:50%}.ctrl-swatch--custom::-moz-color-swatch{border:0;border-radius:50%}.ui-check{cursor:pointer;align-items:center;gap:8px;display:flex}.ui-check input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ui-check__box{box-sizing:border-box;border:2px solid var(--gray-4);color:#0000;border-radius:3px;flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.ui-check__box svg{fill:currentColor;width:16px;height:16px;display:block}.ui-check input:checked+.ui-check__box{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-text-inverse)}.ui-check input:focus-visible+.ui-check__box{outline:2px solid var(--brown-1);outline-offset:2px}.ui-check__label{font-family:var(--ui-font);font-size:var(--type-p2-size);font-weight:var(--type-p1-weight);line-height:var(--type-p2-reg-line-height);letter-spacing:var(--type-p2-tracking);color:var(--gray-4)}.ui-check input:checked~.ui-check__label{color:var(--gray-1)}.ui-switch{cursor:pointer;align-items:center;gap:10px;display:inline-flex}.ui-switch input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ui-switch__label{font-family:var(--ui-font);font-size:var(--type-p2-size);font-weight:var(--type-p2-med-weight);line-height:var(--type-line-height);color:var(--gray-1);white-space:nowrap}.ui-switch__track{background:var(--gray-6);width:36px;height:20px;transition:background var(--ui-transition);border-radius:100px;flex:none;position:relative}.ui-switch__track:after{content:"";background:var(--ui-surface);width:16px;height:16px;transition:transform var(--ui-transition);border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.ui-switch input:checked+.ui-switch__track{background:var(--ui-accent)}.ui-switch input:checked+.ui-switch__track:after{transform:translate(16px)}.ui-switch input:focus-visible+.ui-switch__track{outline:2px solid var(--brown-1);outline-offset:2px}@media (prefers-reduced-motion:reduce){.ui-switch__track,.ui-switch__track:after{transition:none}}.drawer{z-index:70;box-sizing:border-box;background:var(--ui-surface);overscroll-behavior:contain;border-radius:30px 0 0 30px;flex-direction:column;gap:20px;width:480px;height:790px;max-height:100vh;padding:40px;display:flex;position:fixed;top:50%;right:0;overflow-y:auto;transform:translateY(-50%);box-shadow:0 0 10px #21212180}.drawer.hidden{display:none}.drawer__head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.drawer__title{font-family:var(--ui-font);font-size:var(--type-h5-size);font-weight:var(--type-h5-weight);line-height:var(--type-line-height);color:var(--brown-2);text-transform:capitalize}.drawer__close{width:30px;height:30px;color:var(--gray-2);cursor:pointer;background:0 0;border:0;flex:none;padding:0}.drawer__close svg{fill:currentColor;width:100%;height:100%;display:block}.drawer__body{flex-direction:column;flex:auto;gap:30px;display:flex}.drawer__section{flex-direction:column;gap:20px;display:flex}.drawer__section-title{font-family:var(--ui-font);font-size:var(--type-h6-size);font-weight:var(--type-h6-weight);line-height:var(--type-line-height);color:var(--gray-1);text-transform:capitalize}.drawer__options{flex-direction:column;gap:8px;display:flex}.drawer__foot{align-items:center;gap:16px;display:flex}.drawer__close:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.drawer__preview{box-sizing:border-box;background:var(--ui-surface);border:1px solid var(--gray-7);border-radius:12px;width:220px;height:220px;padding:8px;box-shadow:0 0 5px #21212129}.drawer__preview img{object-fit:cover;background:var(--gray-10);border-radius:6px;width:100%;height:100%;display:block}.drawer__name{font-family:var(--ui-font);font-size:var(--type-h6-size);font-weight:var(--type-h6-weight);line-height:var(--type-line-height);color:var(--brown-2);text-transform:capitalize}.drawer__lede{text-indent:0;text-align:left;font-family:var(--ui-font);font-size:var(--type-p2-size);font-weight:var(--type-p1-weight);line-height:var(--type-p2-reg-line-height);letter-spacing:var(--type-p2-tracking);color:var(--gray-2)}.drawer__specs{flex-direction:column;gap:8px;display:flex}.drawer__spec{font-family:var(--ui-font);font-size:var(--type-p2-size);line-height:var(--type-p2-reg-line-height);letter-spacing:var(--type-p2-tracking);color:var(--gray-4);padding-left:24px;position:relative}.drawer__spec:before{content:"";background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;top:.55em;left:8px}.drawer__spec b{font-weight:var(--type-p2-med-weight);color:var(--gray-1)}@media screen and (width<=920px){.drawer{width:100%;height:auto;max-height:85vh;padding:20px 20px calc(20px + env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0;gap:16px;inset:auto 0 0;transform:none;box-shadow:0 -4px 16px #00000026}.drawer__body{gap:20px}.drawer__preview{width:180px;height:180px}.drawer__foot .ui-btn{height:39px;padding:10px 20px}}#ui-notice{z-index:300;background:var(--gray-1);border-radius:var(--radius-button);max-width:min(90vw,420px);box-shadow:var(--shadow-raised);font-family:var(--ui-font);font-size:var(--type-p2-size);line-height:var(--type-line-height);color:var(--ui-text-inverse);text-align:center;opacity:0;pointer-events:none;transition:opacity var(--ui-transition), transform var(--ui-transition);padding:12px 20px;position:fixed;bottom:32px;left:50%;transform:translate(-50%,16px)}#ui-notice.is-visible{opacity:1;transform:translate(-50%)}@media screen and (width<=920px){#ui-notice{bottom:calc(90px + env(safe-area-inset-bottom,0px))}}@media (prefers-reduced-motion:reduce){#ui-notice{transition:none}}.share-dialog{z-index:400;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.share-dialog.hidden{display:none}.share-dialog__scrim{background:#0000008c;position:absolute;inset:0}.share-dialog__card{z-index:1;background:var(--ui-surface,#fff);border-radius:var(--radius-panel,16px);width:min(92vw,380px);box-shadow:var(--shadow-raised);font-family:var(--ui-font);text-align:center;flex-direction:column;align-items:center;gap:16px;padding:24px;display:flex;position:relative}.share-dialog__head{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.share-dialog__title{font-size:var(--type-h5-size);text-align:left;margin:0;font-weight:500}.share-dialog__close{cursor:pointer;width:32px;height:32px;color:inherit;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.share-dialog__close:hover{background:var(--gray-6,#0000000f)}.share-dialog__blurb{text-indent:0;text-align:center;font-size:var(--type-p2-size);color:var(--ui-text-muted,#666);margin:0}.share-dialog__note{text-indent:0;text-align:center;font-size:var(--type-p2-size);color:var(--ui-accent);margin:-8px 0 0}.share-dialog__note.hidden{display:none}.share-dialog__qr{border-radius:var(--radius-button,8px);background:#fff;width:180px;height:180px}.share-dialog__qr.hidden{display:none}.share-dialog__row{gap:8px;width:100%;display:flex}.share-dialog__link{border:1px solid var(--gray-5,#ddd);border-radius:var(--radius-button,8px);min-width:0;font-family:var(--ui-font);font-size:var(--type-p2-size);color:inherit;text-overflow:ellipsis;direction:ltr;background:0 0;flex:auto;padding:10px 12px}.share-dialog__copy{border-radius:var(--radius-button,8px);background:var(--gray-1,#111);color:var(--ui-text-inverse,#fff);font-family:var(--ui-font);font-size:var(--type-p2-size);cursor:pointer;border:0;flex:none;padding:10px 18px}.share-dialog__copy:hover{opacity:.88}.share-dialog__open{font-size:var(--type-p2-size);color:var(--ui-text-muted,#666);text-decoration:underline}@media screen and (width<=480px){.share-dialog__qr{width:150px;height:150px}}.compare{z-index:58;pointer-events:none;position:fixed;inset:0}.compare.hidden{display:none}.compare__line{background:var(--ui-surface);width:2px;position:absolute;top:0;bottom:0;transform:translate(-1px);box-shadow:0 0 0 1px #0000002e}.compare__handle{pointer-events:auto;background:var(--ui-surface);width:52px;height:52px;box-shadow:var(--shadow-raised);color:var(--gray-1);cursor:ew-resize;touch-action:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translate(-50%,-50%)}.compare__handle:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.compare__handle.is-dragging{background:var(--ui-accent);color:var(--ui-text-inverse)}.compare__handle svg{fill:currentColor;width:18px;height:18px;margin:0 -3px;display:block}.compare__sides{pointer-events:auto;background:var(--ui-surface);border-radius:var(--radius-pill);box-shadow:var(--shadow-raised);gap:4px;padding:4px;display:flex;position:absolute;top:98px;left:50%;transform:translate(-50%)}.compare__side{border-radius:var(--radius-pill);font-family:var(--ui-font);font-size:var(--type-p2-size);line-height:var(--type-line-height);color:var(--gray-2);white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:6px 16px}.compare__side.is-active{background:var(--ui-accent);color:var(--ui-text-inverse)}.compare__side:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}@media screen and (width<=920px){.compare__sides{top:calc(76px + env(safe-area-inset-top,0px))}.compare__handle{width:44px;height:44px}}.modal{z-index:420;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal.hidden{display:none}.modal__scrim{background:#0000008c;position:absolute;inset:0}.modal__card{z-index:1;background:var(--ui-surface,#fff);border-radius:var(--radius-panel,16px);width:min(92vw,460px);max-height:86vh;box-shadow:var(--shadow-raised);font-family:var(--ui-font);flex-direction:column;gap:16px;padding:24px;display:flex;position:relative}.modal__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.modal__title{font-size:var(--type-h5-size);margin:0;font-weight:500}.modal__close{width:32px;height:32px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.modal__close:hover{background:var(--gray-6,#0000000f)}.modal__body{overscroll-behavior:contain;min-height:0;overflow-y:auto}.modal__blurb,.modal__body p{text-indent:0;text-align:left;font-size:var(--type-p2-size);color:var(--ui-text-muted,#666);margin:0 0 12px;line-height:1.55}.modal__body p:last-child{margin-bottom:0}.modal__body h3{font-size:var(--type-p1-size);font-weight:var(--type-p1-med-weight);color:var(--gray-1);margin:18px 0 6px}.modal__body ul{font-size:var(--type-p2-size);color:var(--ui-text-muted,#666);margin:0 0 12px;padding-left:20px;line-height:1.55}.modal__body li{margin-bottom:4px}.modal__body a{color:var(--ui-accent);text-decoration:underline}.modal__foot{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.modal__btn{border:1px solid var(--gray-8,#ddd);border-radius:var(--radius-button,8px);font-family:var(--ui-font);font-size:var(--type-p2-size);color:var(--gray-1);cursor:pointer;white-space:nowrap;background:0 0;padding:10px 18px}.modal__btn:hover{background:var(--gray-10,#0000000a)}.modal__btn--primary{border-color:var(--gray-1,#111);background:var(--gray-1,#111);color:var(--ui-text-inverse,#fff)}.modal__btn--primary:hover{opacity:.88;background:var(--gray-1,#111)}.modal__btn:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.privacy-link{z-index:70;font-family:var(--ui-font);font-size:var(--type-chrome-size,12px);color:var(--ui-text-muted,#666);cursor:pointer;opacity:.75;background:0 0;border:0;padding:4px 6px;text-decoration:underline;position:fixed;bottom:14px;left:20px}.privacy-link:hover{opacity:1}.privacy-link.hidden{display:none}@media screen and (width<=920px){.privacy-link{left:12px;bottom:calc(6px + env(safe-area-inset-bottom,0px))}body.panel-open .privacy-link{display:none}.modal__foot{justify-content:stretch}.modal__btn{text-align:center;flex:auto}}.views-list{flex-direction:column;gap:6px;display:flex}.views-list__item{border:1px solid var(--gray-8,#ddd);border-radius:var(--radius-button,8px);width:100%;font-family:var(--ui-font);font-size:var(--type-p1-size);line-height:var(--type-line-height);color:var(--gray-1);text-align:left;cursor:pointer;background:0 0;padding:12px 16px;display:block}.views-list__item:hover,.views-list__item:focus-visible{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-text-inverse)}.views-list__item:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.views-list__item{justify-content:space-between;align-items:center;gap:10px;display:flex}.views-list__item.is-current{border-color:var(--ui-accent);font-weight:var(--type-p1-med-weight)}.views-list__item.is-current svg{width:18px;height:18px;fill:var(--ui-accent);flex:none}.views-list__item.is-current:hover svg,.views-list__item.is-current:focus-visible svg{fill:currentColor}.surface-hotspot{z-index:56;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);width:40px;height:40px;color:var(--gray-1);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--ui-transition), color var(--ui-transition), transform var(--ui-transition);background:#ffffffb8;border:1px solid #ffffffe6;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:fixed;transform:translate(-50%,-50%);box-shadow:0 2px 10px #0000002e}.surface-hotspot.hidden{display:none}.surface-hotspot:hover,.surface-hotspot:focus-visible{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-text-inverse);transform:translate(-50%,-50%)scale(1.08)}.surface-hotspot:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.surface-hotspot svg{fill:currentColor;width:20px;height:20px;display:block}.surface-hotspot:before{content:"";border-radius:50%;position:absolute;inset:-10px}@media screen and (width<=920px){.surface-hotspot{width:36px;height:36px}body.panel-open .surface-hotspot{display:none}}@media (prefers-reduced-motion:reduce){.surface-hotspot{transition:none}}#app-header{justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:59px;display:none}#app-header.hidden{display:none}.app-header__logo{font-family:var(--ui-font);font-size:24px;font-weight:var(--type-p2-semi-weight);line-height:var(--type-line-height);color:var(--gray-1)}.app-header__actions{align-items:center;gap:10px;display:flex}.app-header__actions .ui-btn{height:39px;padding:10px 20px}@media screen and (width<=920px){#app-header{display:flex}}#room-select{z-index:200;background:var(--ui-surface);overscroll-behavior:contain;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}#room-select.hidden{display:none}.room-select__inner{box-sizing:border-box;flex-direction:column;gap:20px;width:100%;max-width:1385px;padding:50px 24px 64px;display:flex}.room-select__header{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.room-select__title{font-family:var(--ui-font);font-size:var(--type-h2-size);font-weight:var(--type-h2-weight);line-height:var(--type-line-height);color:var(--ui-text);text-transform:capitalize}.room-select--rooms .room-select__title{font-size:var(--type-h3-size);font-weight:var(--type-h3-weight)}.room-select__subtitle{text-indent:0;text-align:center;font-family:var(--ui-font);font-size:var(--type-p1-size);font-weight:var(--type-p1-weight);letter-spacing:var(--type-p1-tracking);line-height:var(--type-line-height);color:var(--ui-text-muted)}.room-select__body{flex-direction:column;align-items:center;gap:40px;width:100%;display:flex}.room-select__grid{flex-wrap:wrap;justify-content:center;gap:18px 20px;width:100%;display:flex}.room-select__message{text-indent:0;text-align:center;font-family:var(--ui-font);font-size:var(--type-p1-size);font-weight:var(--type-p1-weight);line-height:var(--type-line-height);color:var(--ui-text-muted);padding:48px 0}@media screen and (width<=1440px){.room-select__inner{max-width:1060px}}@media screen and (width<=1100px){.room-select__inner{max-width:720px}}@media screen and (width<=920px){#room-select{align-items:stretch}.room-select__inner{gap:16px;max-width:none;padding:24px 20px 40px}.room-select__header{text-align:left;align-items:flex-start;gap:6px}.room-select__title{font-size:24px;line-height:var(--type-mob-line-height)}.room-select__subtitle{text-align:left;font-size:var(--type-mob-p1-size);line-height:var(--type-mob-line-height);letter-spacing:0}.room-select__body{align-items:stretch;gap:24px}.room-select__grid{grid-template-columns:repeat(2,1fr);justify-content:stretch;gap:19px 16px;display:grid}.room-select__message{grid-column:1/-1;padding:32px 0}}@media screen and (width<=380px){.room-select__grid{grid-template-columns:1fr}}.room-select__back{border:1px solid var(--brown-4);color:var(--brown-4);background:#ffffffe6;border-radius:30px;align-self:flex-start;padding:12px 20px;box-shadow:0 4px 4px #cacaca33}.room-select__back.hidden{display:none}@media screen and (width<=920px){#room-select{padding-top:calc(60px + env(safe-area-inset-top,0px))}}.room-select__upload{justify-content:center;width:100%;display:flex}#viewer-toolbar{z-index:60;pointer-events:none;background:0 0;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;display:grid;position:fixed;top:30px;left:30px;right:30px}#viewer-toolbar.hidden{display:none}#viewer-toolbar>*{pointer-events:auto}.toolbar__lead{justify-self:start;align-items:center;gap:12px;display:flex}.toolbar__trail{justify-self:end;align-items:center;gap:12px;display:flex}.toolbar__logo{font-family:var(--ui-font);font-size:24px;font-weight:var(--type-p1-med-weight);line-height:var(--type-line-height);color:var(--gray-1);text-transform:capitalize;white-space:nowrap;display:none}.toolbar__center{justify-self:center;align-items:center;gap:12px;display:flex}.toolbar__actions{align-items:center;gap:12px;display:flex}.toolbar__back{background:var(--ui-surface);border:1px solid var(--gray-8);border-radius:var(--radius-button);box-shadow:var(--shadow-round);font-family:var(--ui-font);font-size:var(--type-p2-size);font-weight:var(--type-p2-semi-weight);line-height:var(--type-line-height);color:var(--gray-1);cursor:pointer;white-space:nowrap;transition:background var(--ui-transition), color var(--ui-transition);justify-content:center;align-items:center;gap:8px;padding:10px 20px;display:inline-flex}.toolbar__back:hover,.toolbar__back:focus-visible{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-text-inverse)}.toolbar__back:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.toolbar__back svg{fill:currentColor;width:20px;height:20px;display:block}.toolbar__shadow{flex:none;position:relative}.toolbar__shadow-panel{z-index:3;background:var(--ui-surface);border-radius:12px;flex-direction:column;align-items:center;gap:6px;width:260px;padding:12px 16px;display:none;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0000001f}.toolbar__shadow[data-open=true] .toolbar__shadow-panel{display:flex}.toolbar__shadow-label{font-family:var(--ui-font-chrome);font-size:13px;line-height:var(--type-line-height);color:var(--gray-1);white-space:nowrap}.toolbar__shadow-range{cursor:pointer;width:100%;height:6px;margin:0}#viewer-toolbar .icon-btn{background:var(--ui-surface)}#viewer-toolbar .icon-btn:hover,#viewer-toolbar .icon-btn:focus-visible,#viewer-toolbar .icon-btn[aria-pressed=true]{background:var(--ui-accent);color:var(--ui-text-inverse)}#viewer-toolbar .icon-btn__tip{top:auto;bottom:calc(100% + 6px)}#viewer-toolbar .icon-btn__tip:before{border-bottom-color:#0000;border-top-color:var(--gray-2);top:100%;bottom:auto}.toolbar__lang{background:var(--ui-surface);border:1px solid var(--gray-8);border-radius:var(--radius-button);font-family:var(--ui-font-chrome);font-size:var(--type-chrome-size);letter-spacing:var(--type-chrome-tracking);color:var(--gray-2);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:10px 20px;line-height:1.3;display:inline-flex}.toolbar__lang svg{fill:currentColor;width:20px;height:20px;display:block}.toolbar__lang:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.toolbar__menu-wrap{position:relative}.toolbar__menu{z-index:3;background:var(--ui-surface);border-radius:12px;flex-direction:column;min-width:178px;padding:8px 0;display:flex;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 4px 16px #0000001f}.toolbar__menu.hidden{display:none}.toolbar__menu button{text-align:left;font-family:var(--ui-font);font-size:var(--type-p1-size);line-height:var(--type-line-height);color:var(--gray-1);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:10px 20px}.toolbar__menu button:hover,.toolbar__menu button:focus-visible{background:var(--gray-10)}.toolbar__shadow-toggle{background:var(--ui-surface);width:48px;height:48px;box-shadow:var(--shadow-round);color:var(--gray-1);cursor:pointer;transition:background var(--ui-transition), color var(--ui-transition);border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.toolbar__shadow-toggle:hover,.toolbar__shadow-toggle:focus-visible,.toolbar__shadow[data-open=true] .toolbar__shadow-toggle{background:var(--ui-accent);color:var(--ui-text-inverse)}.toolbar__shadow-toggle:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.toolbar__exit{background:var(--ui-surface);border:1px solid var(--gray-8);border-radius:var(--radius-button);box-shadow:var(--shadow-round);font-family:var(--ui-font);font-size:var(--type-p2-size);font-weight:var(--type-p2-semi-weight);line-height:var(--type-line-height);color:var(--gray-1);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:10px 20px;display:inline-flex}.toolbar__exit:hover,.toolbar__exit:focus-visible{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-text-inverse)}.toolbar__exit.hidden{display:none}.toolbar__exit svg{fill:currentColor;width:18px;height:18px;display:block}.toolbar__shadow-icon{width:20px;height:20px;display:block}.toolbar__shadow-icon svg{fill:currentColor;width:100%;height:100%;display:block}@media screen and (width<=920px){#viewer-toolbar{padding:10px 16px;padding-top:calc(10px + env(safe-area-inset-top,0px));background:var(--ui-surface);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;gap:12px;top:0;left:0;right:0}.toolbar__logo{display:block}.toolbar__back{width:40px;height:40px;box-shadow:var(--shadow-round);border:0;border-radius:50%;padding:0}.toolbar__back span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.toolbar__back svg{width:24px;height:24px}.toolbar__center{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));flex-direction:row;align-items:center;gap:10px;position:fixed}#viewer-toolbar .icon-btn{width:40px;height:40px;box-shadow:var(--shadow-round)}#viewer-toolbar .icon-btn__tip{top:calc(100% + 6px);bottom:auto}#viewer-toolbar .icon-btn__tip:before{border-top-color:#0000;border-bottom-color:var(--gray-2);top:auto;bottom:100%}.toolbar__menu{top:auto;bottom:calc(100% + 8px)}body.panel-open .toolbar__center{display:none}.toolbar__shadow-toggle{width:40px;height:40px}.toolbar__shadow-panel{width:min(70vw,260px);inset:auto 0 calc(100% + 10px) auto;transform:none}.toolbar__exit{font-size:var(--type-chrome-size);padding:8px 14px}}@media screen and (width<=380px){.toolbar__logo{font-size:18px}}@media (prefers-reduced-motion:reduce){.toolbar__back,.toolbar__shadow{transition:none}}#tiles-panel{z-index:55;box-sizing:border-box;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--gray-5);background:#ffffffe6;border-radius:30px;flex-direction:column;gap:14px;width:465px;padding:20px;display:flex;position:fixed;top:98px;bottom:20px;right:20px;overflow:hidden;box-shadow:0 0 10px #76767633}#tiles-panel.hidden{display:none}.tiles-panel__head,.tiles-panel__filters{flex:none}.tiles-panel__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.tiles-panel__tabs{flex:none}.tiles-panel__close{background:var(--brown-12);width:64px;height:64px;color:var(--gray-1);cursor:pointer;transition:background var(--ui-transition), color var(--ui-transition);border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:14px;display:flex}.tiles-panel__close svg{fill:currentColor;width:36px;height:36px;display:block}.tiles-panel__close:hover,.tiles-panel__close:focus-visible{background:var(--ui-accent);color:var(--ui-text-inverse)}.tiles-panel__close:focus-visible,.tiles-panel__reopen:focus-visible{outline:2px solid var(--brown-1);outline-offset:2px}.tiles-panel__reopen{z-index:56;background:var(--ui-surface);width:44px;height:66px;color:var(--gray-1);cursor:pointer;border:0;border-radius:14px 0 0 14px;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;top:114px;right:0;box-shadow:-2px 2px 10px #0000001f}.tiles-panel__reopen.hidden{display:none}.tiles-panel__reopen svg{fill:currentColor;width:26px;height:26px;display:block}.tiles-panel__reopen:hover{background:var(--ui-accent);color:var(--ui-text-inverse)}.tiles-panel__handle{background:var(--gray-6);border-radius:3px;align-self:center;width:98px;height:5px;margin-bottom:4px;display:none}.tiles-panel__filters{justify-content:center;align-items:center;gap:8px;display:flex}.tiles-panel__filters .panel-search{flex:none;width:208px;min-width:0}.tiles-panel__grid{overscroll-behavior:contain;flex:auto;grid-template-columns:repeat(3,124px);place-content:start center;gap:20px 16px;min-height:0;margin-right:-4px;padding-right:4px;display:grid;overflow-y:auto}.tiles-panel__message{text-indent:0;text-align:center;font-family:var(--ui-font);font-size:var(--type-p2-size);line-height:var(--type-line-height);color:var(--gray-4);grid-column:1/-1;padding:32px 0}.tiles-panel__pane.hidden,.tiles-panel__grid.hidden,.tiles-panel__filters.hidden{display:none}.tiles-panel__pane{overscroll-behavior:contain;flex-direction:column;flex:auto;gap:14px;min-height:0;display:flex;overflow-y:auto}@media screen and (width<=920px){#tiles-panel{width:100%;max-height:72vh;padding:12px 20px calc(20px + env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0;inset:auto 0 0;box-shadow:0 -4px 16px #00000026}.tiles-panel__handle{display:block}.tiles-panel__close{border-radius:12px;width:44px;height:44px}.tiles-panel__reopen{top:auto;bottom:calc(20px + env(safe-area-inset-bottom,0px));right:0}.tiles-panel__filters{gap:6px}.ui-chip{padding:10px 12px}#tiles-panel{overscroll-behavior:contain;overflow-y:auto}.tiles-panel__grid{overscroll-behavior-x:contain;scroll-snap-type:x proximity;flex:none;gap:10px;min-height:auto;margin-right:0;padding-bottom:4px;padding-right:0;display:flex;overflow:auto visible}.tiles-panel__pane{flex:none;min-height:auto;overflow-y:visible}.tiles-panel__grid .tile-card{scroll-snap-align:start;flex:none;width:124px}.tiles-panel__message{width:100%;padding:24px 0}}.block-events{pointer-events:none}body:before{content:"";-webkit-backdrop-filter:blur(10px);background-color:var(--blur-color);z-index:22;width:100%;height:100vh;transition:opacity .3s;display:block;position:fixed;top:0;left:0}body.hide-blur:before{opacity:0;pointer-events:none}#blur{z-index:-10;width:100%;height:100vh;position:fixed;top:0;left:0;overflow:hidden}#blur.active{z-index:1}#blur:before{content:"";-webkit-backdrop-filter:blur(10px);background-color:var(--blur-color);z-index:20;opacity:0;pointer-events:none;width:100%;height:100vh;transition:opacity .3s;display:block;position:fixed;top:0;left:0}#blur.active:before{opacity:1;pointer-events:all}#rooms-actions-bar{z-index:60;gap:.5rem;display:flex;position:fixed;bottom:1rem;left:1rem}#rooms-actions-bar.hidden{display:none}#rooms-actions-bar button{color:#fff;cursor:pointer;background:#1f2937d9;border:none;border-radius:.3rem;padding:.5rem .9rem;font-size:.9rem;box-shadow:0 2px 6px #00000040}#rooms-actions-bar button:hover{background:#374151f2}@media screen and (width<=920px){#rooms-actions-bar{bottom:.5rem;left:.5rem}#rooms-actions-bar button{padding:.4rem .7rem;font-size:.8rem}}#rooms-actions-bar{display:none}#app-version{color:var(--font-color-1);margin:1rem;font-family:monospace;font-size:.74rem;font-weight:500;position:absolute;bottom:0;right:0}.dev-text{background-color:var(--dev-bg-color-1);border-radius:1rem;flex-direction:column;margin:2rem 2rem 0 0;padding:2rem;display:flex;position:absolute;top:0;right:0}.dev-text-header{align-self:center;margin-bottom:.7rem;font-size:.89rem}.dev-text-block-header{margin-bottom:.3rem;font-size:.85rem}.dev-text-raw{margin-left:1rem;font-size:.83rem}.stats{opacity:.9;z-index:10;position:fixed;top:0;left:50%;transform:translate(-50%)}#pano-loader{width:var(--loading-spinner-size);height:var(--loading-spinner-size);border:var(--loading-spinner-thickness) solid var(--loading-spinner-color);box-sizing:border-box;z-index:10;opacity:0;pointer-events:none;transition:opacity var(--loading-spinner-opacity-time);border-bottom-color:#0000;border-radius:50%;position:absolute;top:44%;left:50%}#pano-loader.active{opacity:1;animation:rotation var(--loading-spinner-rotation-time) linear infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#room-name-wrapper{background-color:var(--room-name-bg-color);padding:var(--room-name-padding-height) var(--room-name-padding-width);border-radius:var(--room-name-border-radius);color:var(--font-name-font-color);top:var(--room-name-offset-top);right:var(--room-name-offset-right);-webkit-backdrop-filter:blur(var(--room-name-blur-radius));opacity:1;font-family:Siemens Sans Bold,arial,sans-serif;transition:transform .3s,color .2s,opacity .4s;position:fixed}#room-name-wrapper.hidden{opacity:0}#room-name-wrapper.active{color:#0000;transform:scale(.88)}#room-name{font-size:var(--room-name-font-size);font-weight:var(--room-name-font-weight)}#room-name-subtext{margin-left:auto;margin-top:var(--room-name-subtext-offset-top);margin-right:var(--room-name-subtext-offset-right);width:max-content;font-size:var(--room-name-subtext-font-size);font-weight:var(--room-name-subtext-font-weight);display:none}#room-name-subtext.active{display:block}.infos-text-wrapper{position:relative}.info-text-container{background:var(--annotation-bg-color);-webkit-backdrop-filter:blur(var(--annotation-blur-radius));padding:var(--annotation-padding-height) var(--annotation-padding-width);border-radius:var(--annotation-border-radius);white-space:nowrap;font-size:var(--annotation-font-size);font-weight:var(--annotation-font-weight);box-shadow:var(--annotation-shadow-x) var(--annotation-shadow-y) var(--annotation-shadow-blur) var(--annotation-shadow-color);opacity:0;transition:opacity .3s;position:fixed;top:0;left:0}.info-text-triangle{border-left:var(--annotation-triangle-width) solid transparent;border-right:.7rem solid #0000;border-top:var(--annotation-triangle-height) solid var(--annotation-bg-color);width:0;height:0;bottom:calc(var(--annotation-triangle-height) * -1);position:absolute;left:50%;transform:translate(-50%)}.info-text-triangle.reverse{border-top:#0000;border-bottom:var(--annotation-triangle-height) solid var(--annotation-bg-color);top:calc(var(--annotation-triangle-height) * -1);left:50%;transform:translate(-50%)}.info-text-container.active{opacity:1}.info-text{color:#fff}#screenshot-flash{opacity:0;pointer-events:none;z-index:9999;background:#fff;position:fixed;inset:0}#screenshot-flash.active{animation:flash var(--screenshot-duration) forwards}@keyframes flash{0%{opacity:0}40%{opacity:var(--screenshot-opacity-to)}60%{opacity:var(--screenshot-opacity-to)}to{opacity:0}}#screenshot{cursor:pointer;width:1.5rem;height:1.5rem;padding:1rem .6rem 1rem 1rem;transition:background-color .4s}#screenshot svg{stroke:#1e1e1e;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:1.6rem;transition:stroke .23s ease-in-out}#screenshot:hover svg{stroke:#099}.settings-input-wrapper{flex-direction:column;justify-content:space-between;align-items:center;height:4rem;margin-top:.7rem;margin-bottom:.7rem;display:flex}input[type=range]{appearance:none;cursor:ew-resize;background-color:#a9a9a9;width:100%;height:2px;box-shadow:1px 2px 2px #d3d3d3}input[type=range]::-webkit-slider-thumb{appearance:none;cursor:ew-resize;background-color:#ae7b0e;border-radius:2px;width:4px;height:14px}.UI-block-1{opacity:0;-webkit-backdrop-filter:blur(6px);background-color:#ffffffe6;border-radius:1.1rem;flex-direction:column;align-items:center;margin-right:2rem;padding:.8rem;transition:opacity .5s .5s;display:flex;position:fixed;top:40%;right:0;transform:translateY(-50%);box-shadow:0 0 10px #2e2d2d33}#UI.active .UI-block-1{opacity:1}.hint{pointer-events:none;color:#fff;white-space:nowrap;opacity:0;background:#191919e6;border-radius:.4rem;padding:.72rem .74rem;font-size:.9rem;font-weight:400;line-height:1;transition:opacity 40ms;position:absolute;transform:translate(-50%)}.show-hint .hint{opacity:1;transition-duration:.2s;transition-delay:.1s}.hint:after{content:"";pointer-events:none;border:.5rem solid #0000;border-top-color:#191919e6;width:0;height:0;position:absolute;bottom:0;left:50%;transform:translate(-50%,100%)}#full-screen{cursor:pointer;border-radius:50%;width:1.5rem;height:1.5rem;padding:.8rem;position:fixed;bottom:1.5rem;right:2rem}#full-screen.disable{display:none}#full-screen-svg{width:100%;height:100%}#full-screen .fs-a,#full-screen .fs-b,#full-screen .fs-c,#full-screen .fs-d{fill:#fffffffc;transition:transform 20ms ease-in-out,fill .1s linear}#full-screen:hover .fs-a,#full-screen:hover .fs-b,#full-screen:hover .fs-c,#full-screen:hover .fs-d{fill:#fffc}#full-screen .fs-a{transform:translate(-5%,5%)}#full-screen .fs-b{transform:translate(5%,5%)}#full-screen .fs-c{transform:translate(5%,-5%)}#full-screen .fs-d{transform:translate(-5%,-5%)}#full-screen.active .fs-a{transform:translate(-65%,65%)}#full-screen.active .fs-b{transform:translate(65%,65%)}#full-screen.active .fs-c{transform:translate(65%,-65%)}#full-screen.active .fs-d{transform:translate(-65%,-65%)}#full-screen:hover .fs-a,#full-screen:hover .fs-b,#full-screen:hover .fs-c,#full-screen:hover .fs-d{transform:translate(0%)}#full-screen:hover.active .fs-a{transform:translate(-65%,65%)}#full-screen:hover.active .fs-b{transform:translate(65%,65%)}#full-screen:hover.active .fs-c{transform:translate(65%,-65%)}#full-screen:hover.active .fs-d{transform:translate(-65%,-65%)}#surface-panel{color:#1f2937;z-index:50;opacity:0;pointer-events:none;background-color:#e5e7eb;flex-direction:column;gap:1.6rem;width:25vw;min-width:20rem;max-width:30rem;padding:2rem;transition:opacity .3s;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-4px 0 16px #0000001a}#UI.active #surface-panel{opacity:1;pointer-events:auto}#UI.active #surface-panel.hidden,#surface-panel.hidden{opacity:0;pointer-events:none}.surface-panel-header{justify-content:space-between;align-items:center;display:flex}#surface-panel-title{color:#1f2937;font-size:1.5rem}.surface-panel-close{color:#374151;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1.8rem;line-height:1;display:flex}.surface-section{flex-direction:column;gap:.25rem;display:flex}.surface-section-title{color:#1f2937;margin:0;font-size:1rem}.layout-buttons{gap:.5rem;height:2rem;display:flex}.layout-btn{cursor:pointer;width:2rem;height:2rem;position:relative;box-shadow:0 1px 3px #0000001f}.layout-btn img{object-fit:cover;width:100%;height:100%;display:block}.layout-btn.selected:after,.rotation-btn.selected:after,.material-item.selected:after{content:"";pointer-events:none;border:2px dotted #4b5563;position:absolute;inset:-1px}.rotation-buttons{gap:.5rem;display:flex}.rotation-btn{cursor:pointer;background:#fff;border:1px solid #d1d5db;justify-content:center;align-items:center;width:2.5rem;height:2rem;font-size:.8rem;display:flex;position:relative;box-shadow:0 1px 2px #0000000d}.grout-controls{align-items:center;gap:1rem;height:2rem;display:flex}.grout-color{cursor:pointer;background:0 0;border:1px solid #d1d5db;width:3rem;height:2rem;padding:0}.grout-size{flex:1;max-width:8rem}.grout-size-value{color:#1f2937;min-width:2.5rem;font-size:.85rem}.material-list{flex-wrap:wrap;gap:1rem;display:flex}.material-item{aspect-ratio:1;cursor:pointer;background:#f3f4f6;flex-direction:column;gap:.25rem;width:calc(50% - .5rem);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 8px #0000001a}.material-item-preview-wrap{flex:1;overflow:hidden}.material-item-preview{object-fit:cover;width:100%;height:100%;display:block}.material-item-info{flex-direction:column;justify-content:center;height:2.5rem;padding:0 0 .25rem .5rem;font-size:.8rem;line-height:1.1;display:flex}.material-item-name{color:#1f2937}.material-item-size{color:#6b7280;font-size:.75rem}@media screen and (width<=920px){#surface-panel{width:100%;min-width:unset;max-width:unset;box-sizing:border-box;border-radius:0;gap:1rem;height:16rem;padding:1rem 1rem 1.5rem;transition:transform .3s,opacity .3s;inset:auto 0 0;overflow:hidden scroll;transform:translateY(0);box-shadow:0 -4px 16px #00000026}#surface-panel *{box-sizing:border-box;max-width:100%}#surface-panel:not(.hidden){opacity:1;pointer-events:auto}#surface-panel.hidden{opacity:0;pointer-events:none;transform:translateY(100%)}.surface-panel-header{z-index:1;background-color:#e5e7eb;margin:-.5rem 0;padding:.5rem 0;position:sticky;top:-1rem}.surface-panel-close{display:flex}.material-list{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.material-item{aspect-ratio:1;width:auto}.material-item-info{height:2rem;padding:0 0 .15rem .4rem;font-size:.7rem}.material-item-name{font-size:.7rem}.material-item-size{font-size:.6rem}}#surface-panel,#UI.active #surface-panel{display:none}#UI{opacity:1;pointer-events:none;visibility:hidden;position:fixed;bottom:0}#UI.active{pointer-events:all;visibility:visible}#splash-screen-container{opacity:1;z-index:10;justify-content:space-around;width:100vw;height:100%;transition:opacity .2s ease-in;display:flex;position:absolute}#splash-screen-container.hidden{opacity:0;pointer-events:none}.text-logo{margin-bottom:2rem;font-size:1.8rem}#progress-bar-wrapper{z-index:12;flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}#progress-bar{opacity:1;pointer-events:none;background:#ffffff1a;border-radius:100px;justify-content:flex-start;align-items:center;width:max(50vw,580px);height:8px;padding:0 5px;transition:opacity .3s ease-in;display:flex}#progress-value{background-color:#b4b4b4;width:0;height:2px;transition:width .2s ease-in-out}@media screen and (width<=920px){#landscape-viewport{opacity:0;pointer-events:none;z-index:25;flex-direction:column;justify-content:center;align-items:center;width:max-content;margin-bottom:10rem;transition:opacity .2s ease-in;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}#landscape-viewport.active{opacity:1;pointer-events:all}#landscape-viewport #landscape-arrow{box-sizing:border-box;pointer-events:none;border-bottom:3px solid #fff;border-left:3px solid #fff;width:2rem;height:2rem;margin-top:-2rem;margin-bottom:1rem;animation:2s infinite paused move;transform:rotate(135deg)translate(0)}#landscape-viewport.active #landscape-arrow{animation-play-state:running}#landscape-text{color:#fff;font-size:1rem}@keyframes move{0%{transform:rotate(135deg)translate(0)}20%{transform:rotate(135deg)translate(-10px,10px)}40%{transform:rotate(135deg)translate(0)}}}:root{--main-bg-grad-1:#e6beaf;--main-bg-grad-1-1:#c96c55;--main-bg-color:#00000080;--start-btn-color:#b5472b;--start-btn-color-hover:#c86950cc;--foom-name-font-color:#000;--room-name-bg-color:#e8ebea99;--room-name-offset-top:2rem;--room-name-offset-right:2rem;--room-name-border-radius:.5rem;--room-name-font-size:1.5rem;--room-name-font-weight:700;--room-name-padding-height:.7rem;--room-name-padding-width:1.8rem;--room-name-blur-radius:1.4rem;--room-name-subtext-offset-top:.3rem;--room-name-subtext-offset-right:0rem;--room-name-subtext-font-size:1rem;--room-name-subtext-font-weight:700;--annotation-bg-color:#0a0a0ab3;--annotation-blur-radius:.4rem;--annotation-border-radius:.5rem;--annotation-font-size:1.2rem;--annotation-font-weight:300;--annotation-padding-width:1.5rem;--annotation-padding-height:.8rem;--annotation-shadow-color:#0a0a0a80;--annotation-shadow-x:0rem;--annotation-shadow-y:0rem;--annotation-shadow-blur:0rem;--annotation-triangle-width:.7rem;--annotation-triangle-height:1rem;--loading-spinner-color:#ffffffe6;--loading-spinner-size:1.5rem;--loading-spinner-thickness:3px;--loading-spinner-rotation-time:.8s;--loading-spinner-opacity-time:.5s;--scene-background:linear-gradient(0deg, #c4c5c7 0%, #dcdddf 50%, #c4c5c7);--toolbar-border-radius:8px;--toolbar-shadow:0px 0px 10px #0003;--toolbar-bg-color:#fffc;--toolbar-blur:6px;--blur-color:#00000080;--progress-value-color:#a48f57;--screenshot-duration:.24s;--screenshot-opacity-to:.6;--easing-base:cubic-bezier(.1, .7, 1, 1)}#dev-panel{color:red;z-index:100;font-size:1.2rem;position:absolute;top:20%;left:50%;transform:translate(-50%)}
