@charset "UTF-8";.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container:not(.ql-disabled) li[data-list=checked]>.ql-ui,.ql-container:not(.ql-disabled) li[data-list=unchecked]>.ql-ui{cursor:pointer}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0}@supports (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-set:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor table{border-collapse:collapse}.ql-editor td{border:1px solid #000;padding:2px 5px}.ql-editor ol{padding-left:1.5em}.ql-editor li{list-style-type:none;padding-left:1.5em;position:relative}.ql-editor li>.ql-ui:before{display:inline-block;margin-left:-1.5em;margin-right:.3em;text-align:right;white-space:nowrap;width:1.2em}.ql-editor li[data-list=checked]>.ql-ui,.ql-editor li[data-list=unchecked]>.ql-ui{color:#777}.ql-editor li[data-list=bullet]>.ql-ui:before{content:"\2022"}.ql-editor li[data-list=checked]>.ql-ui:before{content:"\2611"}.ql-editor li[data-list=unchecked]>.ql-ui:before{content:"\2610"}@supports (counter-set:none){.ql-editor li[data-list]{counter-set:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list]{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered]{counter-increment:list-0}.ql-editor li[data-list=ordered]>.ql-ui:before{content:counter(list-0,decimal) ". "}.ql-editor li[data-list=ordered].ql-indent-1{counter-increment:list-1}.ql-editor li[data-list=ordered].ql-indent-1>.ql-ui:before{content:counter(list-1,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-set:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-2{counter-increment:list-2}.ql-editor li[data-list=ordered].ql-indent-2>.ql-ui:before{content:counter(list-2,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-set:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-3{counter-increment:list-3}.ql-editor li[data-list=ordered].ql-indent-3>.ql-ui:before{content:counter(list-3,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-set:list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-4{counter-increment:list-4}.ql-editor li[data-list=ordered].ql-indent-4>.ql-ui:before{content:counter(list-4,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-set:list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-5{counter-increment:list-5}.ql-editor li[data-list=ordered].ql-indent-5>.ql-ui:before{content:counter(list-5,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-set:list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-6{counter-increment:list-6}.ql-editor li[data-list=ordered].ql-indent-6>.ql-ui:before{content:counter(list-6,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-set:list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-reset:list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-7{counter-increment:list-7}.ql-editor li[data-list=ordered].ql-indent-7>.ql-ui:before{content:counter(list-7,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-set:list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-reset:list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-8{counter-increment:list-8}.ql-editor li[data-list=ordered].ql-indent-8>.ql-ui:before{content:counter(list-8,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-set:list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-reset:list-9}}.ql-editor li[data-list=ordered].ql-indent-9{counter-increment:list-9}.ql-editor li[data-list=ordered].ql-indent-9>.ql-ui:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor li.ql-direction-rtl{padding-right:1.5em}.ql-editor li.ql-direction-rtl>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:left}.ql-editor table{table-layout:fixed;width:100%}.ql-editor table td{outline:none}.ql-editor .ql-code-block-container{font-family:monospace}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor .ql-ui{position:absolute}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media(pointer:coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor .ql-code-block-container{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor .ql-code-block-container{margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor .ql-code-block-container{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-code-block-container{position:relative}.ql-code-block-container .ql-ui{right:5px;top:5px}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{position:absolute;left:0;top:0}.mapboxgl-map:-webkit-full-screen{width:100%;height:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{position:absolute;pointer-events:none;z-index:2}.mapboxgl-ctrl-top-left{top:0;left:0}.mapboxgl-ctrl-top{top:0;left:50%;transform:translate(-50%)}.mapboxgl-ctrl-top-right{top:0;right:0}.mapboxgl-ctrl-right{top:50%;transform:translateY(-50%);right:0}.mapboxgl-ctrl-bottom-right{right:0;bottom:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translate(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{top:50%;transform:translateY(-50%);left:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{margin:10px 0 0 10px;float:left}.mapboxgl-ctrl-top .mapboxgl-ctrl{margin:10px 0;float:left}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{margin:10px 10px 0 0;float:right}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{margin:0 10px 10px 0;float:right}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{margin:10px 0;float:left}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{margin:0 0 10px 10px;float:left}.mapboxgl-ctrl-group{border-radius:4px;background:#fff}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media(-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{width:32px;height:32px;display:block;padding:0;outline:none;border:0;box-sizing:border-box;background-color:initial;cursor:pointer;overflow:hidden}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{display:block;width:100%;height:100%;background-repeat:no-repeat;background-position:50%}@media(-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#eee}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-up .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.29289 11.7071C4.68342 12.0976 5.31658 12.0976 5.70711 11.7071L9 8.41421L12.2929 11.7071C12.6834 12.0976 13.3166 12.0976 13.7071 11.7071C14.0976 11.3166 14.0976 10.6834 13.7071 10.2929L9.70711 6.29289C9.31658 5.90237 8.68342 5.90237 8.29289 6.29289L4.29289 10.2929C3.90237 10.6834 3.90237 11.3166 4.29289 11.7071Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-down .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.29289 6.29289C4.68342 5.90237 5.31658 5.90237 5.70711 6.29289L9 9.58579L12.2929 6.29289C12.6834 5.90237 13.3166 5.90237 13.7071 6.29289C14.0976 6.68342 14.0976 7.31658 13.7071 7.70711L9.70711 11.7071C9.31658 12.0976 8.68342 12.0976 8.29289 11.7071L4.29289 7.70711C3.90237 7.31658 3.90237 6.68342 4.29289 6.29289Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E");background-size:18px 18px}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23fff' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23000' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{width:88px;height:23px;margin:0 0 -4px -4px;display:block;background-repeat:no-repeat;cursor:pointer;overflow:hidden;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media(-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{padding:0 5px;background-color:#ffffff80;margin:0}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{min-height:20px;padding:2px 24px 2px 0;margin:10px;position:relative;background-color:#fff;border-radius:12px;box-sizing:initial}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}:is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-left,.mapboxgl-ctrl-top-left)>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 8px 2px 28px;border-radius:12px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{display:none;cursor:pointer;position:absolute;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");background-color:#ffffff80;width:24px;height:24px;box-sizing:border-box;border-radius:12px;outline:none;top:0;right:0;border:0}:is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-left,.mapboxgl-ctrl-top-left) .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;right:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;left:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;font-size:10px;border:2px solid #333;border-top:#333;padding:0 5px;color:#333;box-sizing:border-box;white-space:nowrap}.mapboxgl-popup{position:absolute;top:0;left:0;display:flex;will-change:transform;pointer-events:none}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{width:0;height:0;border:10px solid #0000;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-top:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-top:none;border-left:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-top:none;border-right:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-right:none;border-left-color:#fff}.mapboxgl-popup-close-button{position:absolute;right:0;top:0;border:0;border-radius:0 3px 0 0;cursor:pointer;background-color:initial}.mapboxgl-popup-close-button:hover{background-color:#eee}.mapboxgl-popup-content{position:relative;background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{position:absolute;top:0;left:0;will-change:transform;opacity:1;transition:opacity .2s}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;width:15px;height:15px;border-radius:50%}.mapboxgl-user-location-dot:before{content:"";position:absolute;animation:mapboxgl-user-location-dot-pulse 2s infinite}.mapboxgl-user-location-dot:after{border-radius:50%;border:2px solid #fff;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px;box-sizing:border-box;box-shadow:0 0 3px #00000059}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{width:0;height:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{content:"";border-bottom:7.5px solid #4aa1eb;position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{transform:scale(1);opacity:1}70%{transform:scale(3);opacity:0}to{transform:scale(1);opacity:0}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;width:1px;height:1px;border-radius:100%}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{position:absolute;top:0;left:0;width:0;height:0;background:#fff;border:2px dotted #202020;opacity:.5}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;justify-content:center;text-align:center;position:absolute;display:flex;align-items:center;top:0;left:0;width:100%;height:100%;background:#000000b3;opacity:0;pointer-events:none;transition:opacity .75s ease-in-out;transition-delay:1s}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button{font-weight:600;font-size:14px;text-align:center}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{background-color:#bccbd7;color:#000}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#ccc}:root,html[data-theme=dark]{color-scheme:dark;--iot-font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Palatino, serif;--iot-font-ui: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--iot-bg: #12100e;--iot-bg-soft: #1a1714;--iot-surface: #1c1916;--iot-surface-subtle: rgba(243, 238, 230, .04);--iot-surface-strong: #221e1a;--iot-control-bg: #241f1b;--iot-control-bg-hover: #2c2722;--iot-select-bg: #1c1916;--iot-select-text: #f3eee6;--iot-border: rgba(243, 238, 230, .1);--iot-border-strong: rgba(212, 180, 131, .28);--iot-text: #f3eee6;--iot-muted: #a3988a;--iot-accent: #d4b483;--iot-on-accent: #1c1916;--iot-success: #8aa57a;--iot-success-soft: #c5d4b8;--iot-accent-2: #c4a574;--iot-warn: #d4a05a;--iot-danger: #c45c4a;--iot-danger-soft: #e7b2a8;--iot-shadow: 0 1px 0 rgba(243, 238, 230, .04), 0 24px 48px rgba(0, 0, 0, .38);--iot-card-shadow: 0 1px 0 rgba(243, 238, 230, .05);--iot-inner-shadow: inset 0 1px 0 rgba(243, 238, 230, .05);--iot-radius-lg: 8px;--iot-radius: 6px;--iot-radius-pill: 999px;--iot-topbar-height: 48px;font-family:var(--iot-font-ui)}html[data-theme=light]{color-scheme:light;--iot-bg: #f4efe6;--iot-bg-soft: #fbf7f0;--iot-surface: #fffcf7;--iot-surface-subtle: rgba(28, 25, 22, .04);--iot-surface-strong: #fffdf9;--iot-control-bg: #fffdf9;--iot-control-bg-hover: #f3ebe0;--iot-select-bg: #fffcf7;--iot-select-text: #1c1916;--iot-border: rgba(28, 25, 22, .1);--iot-border-strong: rgba(154, 112, 64, .32);--iot-text: #1c1916;--iot-muted: #6f675c;--iot-accent: #9a7040;--iot-on-accent: #fffdf9;--iot-success: #4f6a45;--iot-success-soft: #2f3f2a;--iot-accent-2: #8a6238;--iot-warn: #8a5a18;--iot-danger: #a33b2c;--iot-danger-soft: #6d241c;--iot-shadow: 0 1px 0 rgba(28, 25, 22, .04), 0 18px 40px rgba(56, 42, 28, .1);--iot-card-shadow: 0 1px 0 rgba(28, 25, 22, .06);--iot-inner-shadow: inset 0 1px 0 rgba(255, 255, 255, .7)}:root{--iot-surface-0: var(--iot-bg);--iot-surface-1: var(--iot-surface);--iot-surface-2: color-mix(in srgb, var(--iot-surface) 93%, var(--iot-text));--iot-surface-3: color-mix(in srgb, var(--iot-surface) 86%, var(--iot-text));--iot-surface-muted: var(--iot-surface-subtle);--iot-surface-hover: var(--iot-control-bg-hover);--iot-surface-selected: color-mix(in srgb, var(--iot-accent) 16%, var(--iot-surface));--iot-surface-warning: color-mix(in srgb, var(--iot-warn) 14%, var(--iot-surface));--iot-panel: var(--iot-surface);--iot-panel-bg: var(--iot-surface);--iot-panel-strong: var(--iot-surface-strong);--iot-panel-shadow: var(--iot-shadow);--iot-page-bg: var(--iot-bg);--iot-background: var(--iot-bg);--iot-workspace-bg: var(--iot-bg);--iot-input-bg: var(--iot-control-bg);--iot-bg-accent: color-mix(in srgb, var(--iot-accent) 14%, var(--iot-surface));--iot-accent-soft: color-mix(in srgb, var(--iot-accent) 14%, transparent);--iot-text-muted: var(--iot-muted);--iot-text-2: var(--iot-muted);--iot-ink: var(--iot-text);--iot-line: var(--iot-border);--iot-primary: var(--iot-accent);--iot-info: var(--iot-accent-2);--iot-warning: var(--iot-warn);--iot-warning-soft: color-mix(in srgb, var(--iot-warn) 70%, var(--iot-text));--iot-border-warning: color-mix(in srgb, var(--iot-warn) 45%, transparent);--iot-critical: var(--iot-danger);--iot-radius-md: var(--iot-radius);--iot-mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--iot-font-mono: var(--iot-mono)}*{box-sizing:border-box}html,body{height:100%;margin:0}html{overflow:hidden}html.report-render{overflow:visible;height:auto}html.report-render body{height:auto;background:#fff}body{min-height:100%;color:var(--iot-text);background:var(--iot-bg);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-feature-settings:"ss01" 1,"kern" 1}button,input,select,textarea{font:inherit}.logo,.brand-lockup strong,.hero-copy h1,.nav-title,.eyebrow{font-family:var(--iot-font-display);font-weight:500;letter-spacing:-.02em}select,select option,select optgroup{color:var(--iot-select-text)!important;background-color:var(--iot-select-bg)!important}a{color:inherit}.iot-panel{background:var(--iot-surface);border:1px solid var(--iot-border);box-shadow:var(--iot-card-shadow);backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:var(--iot-radius-lg)}.iot-button{border:1px solid var(--iot-border-strong);background:var(--iot-control-bg);color:var(--iot-text);border-radius:var(--iot-radius);padding:.62rem .95rem;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease;box-shadow:none;letter-spacing:.01em}.iot-button:hover{background:var(--iot-control-bg-hover);border-color:var(--iot-accent)}.iot-button.primary{background:var(--iot-accent);color:var(--iot-on-accent);border-color:var(--iot-accent);font-weight:600}.iot-button.primary:hover{background:var(--iot-accent-2);border-color:var(--iot-accent-2)}.iot-button:disabled{opacity:.45;cursor:not-allowed}.tl-ico{width:1rem;height:1rem;fill:none;stroke-linecap:round;stroke-linejoin:round}.tl-ico.small{width:.85rem;height:.85rem}.tl-a{stroke:currentColor;stroke-width:1.7;fill:none}.tl-b{stroke:color-mix(in srgb,currentColor 38%,transparent);stroke-width:1.7;fill:none}.tl-c{stroke:currentColor;stroke-width:1.7;fill:currentColor;opacity:.85}:root[data-look-icons=tinted] .tl-a,:root[data-look-icons=tinted] .tl-c{stroke:var(--iot-accent);fill:none}:root[data-look-icons=tinted] .tl-c{fill:var(--iot-accent)}:root[data-look-icons=tricolour] .tl-a{stroke:var(--iot-accent)}:root[data-look-icons=tricolour] .tl-b{stroke:var(--iot-muted)}:root[data-look-icons=tricolour] .tl-c{stroke:var(--iot-accent-2, var(--iot-accent));fill:var(--iot-accent-2, var(--iot-accent));opacity:1}.iot-input{width:100%;border:1px solid var(--iot-border);background:var(--iot-control-bg);color:var(--iot-text);border-radius:var(--iot-radius);padding:.72rem .85rem;outline:none;box-shadow:none}.iot-input:focus{border-color:var(--iot-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--iot-accent),transparent 78%)}.iot-input::placeholder{color:color-mix(in srgb,var(--iot-muted),transparent 10%)}select.iot-input option{color:var(--iot-select-text);background-color:var(--iot-select-bg)}.status-dot{display:inline-block;width:.45rem;height:.45rem;border-radius:999px;background:var(--iot-accent);box-shadow:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--iot-muted),transparent 55%);border-radius:0;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}@media(max-width:860px){:root{--iot-topbar-height: 118px}html{overflow:auto}}@media(max-width:520px){:root{--iot-topbar-height: 126px}}iot-utilities-page{display:block;min-height:100%}.utilities-page{display:grid;gap:18px;padding:18px}.utilities-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px}.utilities-toolbar h1,.placement-header h2,.icon-catalog h2,.placement-form-card h2,.definition-card h2,.users-card h2{margin:7px 0 0}.eyebrow{display:inline-flex;color:var(--iot-accent);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.utility-summary-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px}.utility-summary-chips span{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid var(--iot-border);border-radius:999px;color:var(--iot-muted);background:color-mix(in srgb,var(--iot-control-bg),transparent 8%);font-weight:800}.utility-summary-chips .saved-chip{color:var(--iot-accent);border-color:color-mix(in srgb,var(--iot-accent),transparent 55%)}.utility-tabs{display:flex;gap:8px;padding:8px;border-radius:999px;width:max-content;max-width:100%;overflow:auto}.utility-tabs button{border:1px solid var(--iot-border);border-radius:999px;background:var(--iot-control-bg);color:var(--iot-muted);cursor:pointer;padding:.72rem 1rem;font-weight:800;white-space:nowrap}.utility-tabs button.active,.segmented .iot-button.active{color:#fff;border-color:color-mix(in srgb,var(--iot-accent),transparent 35%);background:linear-gradient(135deg,color-mix(in srgb,var(--iot-accent),transparent 36%),color-mix(in srgb,var(--iot-accent-2),transparent 58%))}.utility-section.hidden,.map-drop-zone.hidden,.floor-drop-zone.hidden{display:none!important}.icon-catalog,.placement-card,.placement-form-card,.definition-card,.users-card{padding:16px}.icon-catalog{display:grid;gap:16px}.icon-catalog>header,.placement-header,.definition-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.category-list{display:grid;gap:20px}.icon-category h3{margin:0 0 10px;color:var(--iot-muted);font-size:.84rem;text-transform:uppercase;letter-spacing:.06em}.icon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.icon-grid-wide{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.flat-icon-grid{margin-top:2px}.icon-card,.device-type-row{--utility-icon-color: var(--iot-accent)}.icon-card{position:relative;display:grid;gap:8px;min-height:134px;border:1px solid var(--iot-border);border-radius:20px;background:radial-gradient(circle at 24% 17%,color-mix(in srgb,var(--utility-icon-color),transparent 72%),transparent 58px),var(--iot-control-bg);color:var(--iot-text);cursor:grab;padding:14px;overflow:hidden;text-align:start;transition:transform .15s ease,border-color .15s ease,background .15s ease}.icon-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--utility-icon-color),transparent 35%);background:radial-gradient(circle at 24% 17%,color-mix(in srgb,var(--utility-icon-color),transparent 58%),transparent 68px),var(--iot-control-bg-hover)}.icon-card.saved{border-color:color-mix(in srgb,var(--iot-accent),transparent 35%)}.icon-card:active{cursor:grabbing}.saved-check{position:absolute;inset-block-start:10px;inset-inline-start:10px;z-index:3;width:26px;height:26px;display:grid;place-items:center;border-radius:999px;background:var(--iot-accent);color:#fff;font-weight:950;box-shadow:0 0 0 5px color-mix(in srgb,var(--iot-accent),transparent 82%)}.icon-menu-trigger{position:absolute;inset-block-start:10px;inset-inline-end:10px;z-index:4;width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--iot-border);border-radius:999px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 12%);color:var(--iot-text);cursor:pointer}.icon-radial-menu{position:absolute;inset-block-start:44px;inset-inline-end:10px;z-index:5;width:124px;height:82px;pointer-events:none}.icon-radial-menu button{position:absolute;min-width:70px;border:1px solid var(--iot-border);border-radius:999px;color:#fff;cursor:pointer;font-size:.72rem;font-weight:900;padding:7px 10px;pointer-events:auto;box-shadow:0 12px 28px #00000038}.icon-radial-menu .save{inset-block-start:0;inset-inline-end:34px;background:var(--iot-accent)}.icon-radial-menu .remove{inset-block-start:38px;inset-inline-end:0;background:var(--iot-danger)}.icon-glyph{width:46px;height:46px;display:grid;place-items:center;border-radius:999px;background:var(--utility-icon-color);color:#fff;font-weight:950;box-shadow:0 0 22px color-mix(in srgb,var(--utility-icon-color),transparent 35%)}.icon-card strong,.device-type-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-card small,.device-type-row small,.definition-card p,.users-card p{color:var(--iot-muted)}.placement-workbench{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,430px);gap:18px;align-items:start;margin-top:18px}.surface-stack{margin-top:14px}.map-drop-zone,.floor-drop-zone{position:relative;height:min(62vh,650px);min-height:460px;border:1px solid var(--iot-border);border-radius:22px;overflow:hidden;background:color-mix(in srgb,var(--iot-surface),#0c1424 16%)}.utility-map{position:absolute;inset:0}.floor-drop-zone{display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,rgba(80,255,176,.08),transparent 22rem),radial-gradient(circle at 80% 70%,rgba(96,125,255,.12),transparent 22rem),color-mix(in srgb,var(--iot-surface),#07101f 25%)}.floor-drop-zone img{width:min(92%,900px);max-height:92%;opacity:.78;filter:drop-shadow(0 24px 70px rgba(0,0,0,.34))}.floor-grid-overlay{position:absolute;inset:0;background-image:linear-gradient(color-mix(in srgb,var(--iot-border),transparent 45%) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--iot-border),transparent 45%) 1px,transparent 1px);background-size:42px 42px;opacity:.22;pointer-events:none}.surface-hint{position:absolute;inset-inline-start:14px;inset-block-start:14px;z-index:2;padding:9px 12px;border:1px solid var(--iot-border);border-radius:999px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 16%);color:var(--iot-muted);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-weight:800;max-width:min(520px,100% - 28px)}.floor-marker{position:absolute;z-index:3;width:38px;height:38px;transform:translate(-50%,-50%);display:grid;place-items:center;border:2px solid rgba(255,255,255,.86);border-radius:999px;background:var(--utility-icon-color);color:#fff;font-weight:950;box-shadow:0 0 22px color-mix(in srgb,var(--utility-icon-color),transparent 30%),0 14px 32px #00000040;pointer-events:none}.placement-form-card{position:sticky;top:18px}.placement-form{display:grid;gap:12px;margin-top:12px}.placement-form label{display:grid;gap:6px;color:var(--iot-muted);font-size:.84rem}.placement-form input,.placement-form select{width:100%;border-radius:13px;border:1px solid var(--iot-border);background:var(--iot-control-bg);color:var(--iot-text);padding:.72rem .82rem;outline:none}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.definition-layout,.users-layout{display:grid;grid-template-columns:minmax(0,1fr)}.device-type-grid,.user-management-grid{display:grid;gap:10px;margin-top:16px}.device-type-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--iot-border);border-radius:18px;background:var(--iot-control-bg)}.user-management-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-status{padding:10px 12px;border-radius:14px;border:1px solid var(--iot-border);font-weight:800}.form-status.ok{color:var(--iot-accent);border-color:color-mix(in srgb,var(--iot-accent),transparent 60%);background:color-mix(in srgb,var(--iot-accent),transparent 90%)}.form-status.error{color:var(--iot-danger);border-color:color-mix(in srgb,var(--iot-danger),transparent 60%);background:color-mix(in srgb,var(--iot-danger),transparent 90%)}iot-utilities-page .utilities-staged-map-marker{--utility-icon-color: var(--iot-accent);width:46px;height:46px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.9);border-radius:999px;background:var(--utility-icon-color);color:#fff;font-weight:950;box-shadow:0 0 0 9px color-mix(in srgb,var(--utility-icon-color),transparent 82%),0 18px 38px #00000047}@media(min-width:1320px){.icon-grid-wide{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1250px){.placement-workbench{grid-template-columns:1fr}.placement-form-card{position:static}}@media(max-width:760px){.utilities-page{padding:12px}.utilities-toolbar,.icon-catalog>header,.placement-header,.definition-card>header{flex-direction:column;align-items:stretch}.utility-summary-chips{justify-content:flex-start}.icon-grid,.two-cols,.user-management-grid{grid-template-columns:1fr}.map-drop-zone,.floor-drop-zone{min-height:360px}}.utilities-page{gap:12px;padding:14px}.utilities-toolbar.compact{position:relative;min-height:94px;padding:12px 16px;border-radius:26px}.toolbar-title{position:relative;display:flex;align-items:center;gap:12px;min-width:0}.utilities-toolbar h1{margin:4px 0 0;font-size:clamp(1.8rem,3vw,2.6rem);line-height:.98}.bulk-menu-trigger{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--iot-border);border-radius:16px;background:var(--iot-control-bg);color:var(--iot-text);cursor:pointer;font-size:1.1rem;font-weight:900}.bulk-menu-trigger:hover,.icon-menu-trigger:hover{border-color:color-mix(in srgb,var(--iot-accent),transparent 36%);background:var(--iot-control-bg-hover)}.bulk-actions-menu{position:absolute;z-index:30;inset-block-start:50px;inset-inline-start:0;width:min(320px,100vw - 36px);display:grid;gap:6px;padding:10px;border:1px solid var(--iot-border);border-radius:18px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 3%);box-shadow:0 22px 60px #00000047;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.bulk-actions-menu button{border:1px solid transparent;border-radius:13px;background:transparent;color:var(--iot-text);cursor:pointer;padding:.7rem .75rem;text-align:start;font-weight:800}.bulk-actions-menu button:hover:not(:disabled){border-color:var(--iot-border);background:var(--iot-control-bg-hover)}.bulk-actions-menu button:disabled{cursor:wait;opacity:.55}.utility-summary-chips span{min-height:32px;padding:0 11px;font-size:.88rem}.icon-catalog{padding:18px}.icon-catalog>header{margin-bottom:2px}.icon-catalog h2{font-size:clamp(1.55rem,2.6vw,2.25rem)}.category-list{gap:18px}.icon-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.icon-card{min-height:118px;padding:12px;border-radius:18px;gap:7px}.icon-glyph{width:50px;height:50px;font-size:1rem}.icon-card strong,.device-type-row strong{font-size:.98rem}.icon-card small{font-size:.78rem}.icon-radial-menu{inset-block-start:36px;inset-inline-end:8px;width:94px;height:82px}.icon-radial-menu button{width:36px;height:36px;min-width:36px;display:grid;place-items:center;border-radius:999px;padding:0;font-size:1rem;line-height:1}.icon-radial-menu .save{inset-block-start:0;inset-inline-end:28px;background:var(--iot-accent)}.icon-radial-menu .type{inset-block-start:36px;inset-inline-end:54px;background:color-mix(in srgb,var(--iot-accent-2),#4f46e5 35%)}.icon-radial-menu .type:disabled{opacity:.42;cursor:not-allowed}.icon-radial-menu .remove{inset-block-start:36px;inset-inline-end:0;background:var(--iot-danger)}@media(min-width:1020px){.icon-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1480px){.icon-grid-wide{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:760px){.utilities-toolbar.compact{min-height:0}.toolbar-title{align-items:flex-start}}.utilities-page{height:100%;min-height:0}.utilities-toolbar.compact{padding:10px 14px}.utilities-toolbar.compact h1{margin:2px 0 0;font-size:clamp(1.35rem,2.4vw,2.1rem)}.icon-utility-section{min-height:0}.icon-catalog{min-height:0;max-height:calc(100dvh - 210px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:14px}.catalog-header{position:sticky;top:-14px;z-index:8;margin:-14px -14px 14px;padding:12px 14px;border-bottom:1px solid var(--iot-border);background:color-mix(in srgb,var(--iot-surface),transparent 5%);-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08)}.catalog-header h2{margin-top:4px;font-size:clamp(1.35rem,2.4vw,2rem)}.catalog-header-actions{position:relative;display:flex;align-items:center;gap:8px}.panel-menu-trigger{width:44px;height:44px;border-radius:999px;font-size:1.45rem;line-height:1}.panel-actions-menu{inset-block-start:calc(100% + 8px);inset-inline-end:0;min-width:280px}.bulk-menu-field{display:grid;gap:6px;padding:8px 10px 10px;color:var(--iot-muted);font-size:.78rem;font-weight:800}.bulk-menu-field select{min-height:38px;border:1px solid var(--iot-border);border-radius:12px;background:var(--iot-control-bg);color:var(--iot-text);padding:0 10px;font-weight:800}.category-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-block-end:10px}.category-title-row h3{margin:0}.category-title-row span{display:inline-grid;place-items:center;min-width:30px;height:30px;padding:0 9px;border:1px solid var(--iot-border);border-radius:999px;color:var(--iot-muted);font-weight:900}.icon-row-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,570px),1fr));gap:12px;align-items:stretch}.icon-row-card{--utility-icon-color: var(--iot-accent);position:relative;display:grid;grid-template-columns:minmax(220px,.9fr) minmax(320px,1.45fr);gap:12px;align-items:stretch;min-height:126px;padding:12px;border:1px solid var(--iot-border);border-radius:22px;background:radial-gradient(circle at 10% 18%,color-mix(in srgb,var(--utility-icon-color),transparent 76%),transparent 72px),var(--iot-control-bg);cursor:grab;transition:transform .15s ease,border-color .15s ease,background .15s ease}.icon-row-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--utility-icon-color),transparent 36%);background:radial-gradient(circle at 10% 18%,color-mix(in srgb,var(--utility-icon-color),transparent 64%),transparent 78px),var(--iot-control-bg-hover)}.icon-row-card.saved{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--iot-accent),transparent 70%)}.icon-row-card.associated .icon-server-state:after{content:" \b7  linked"}.icon-main-cell{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;min-width:0}.icon-radial-trigger{position:relative;z-index:4;border:0;border-radius:999px;background:transparent;padding:0;cursor:pointer}.icon-radial-trigger:hover .icon-glyph{transform:scale(1.08);box-shadow:0 0 30px color-mix(in srgb,var(--utility-icon-color),transparent 20%),0 0 0 5px color-mix(in srgb,var(--utility-icon-color),transparent 84%)}.icon-glyph{width:58px;height:58px;font-size:1.05rem;transition:transform .14s ease,box-shadow .14s ease}.icon-main-copy{display:grid;gap:3px;min-width:0}.icon-main-copy strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem}.icon-main-copy small{color:var(--iot-muted)}.icon-server-state{justify-self:start;display:inline-flex;align-items:center;gap:5px;margin-top:3px;padding:3px 7px;border-radius:999px;background:color-mix(in srgb,var(--iot-warning, #f59e0b),transparent 88%);color:color-mix(in srgb,var(--iot-warning, #f59e0b),var(--iot-text) 22%);font-size:.72rem;font-weight:900}.icon-server-state.saved-state{background:color-mix(in srgb,var(--iot-accent),transparent 86%);color:var(--iot-accent)}.saved-check{inset-block-start:-6px;inset-inline-start:-6px}.icon-status-columns{display:grid;grid-template-columns:repeat(4,minmax(72px,1fr));gap:8px;min-width:0}.status-cell{display:grid;place-items:center;gap:6px;min-width:0;border:1px solid color-mix(in srgb,var(--iot-border),transparent 18%);border-radius:16px;padding:9px 6px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 12%)}.status-cell small{max-width:100%;overflow:hidden;color:var(--iot-muted);font-size:.68rem;font-weight:900;text-align:center;text-overflow:ellipsis;white-space:nowrap}.status-preview{position:relative;display:grid;place-items:center;width:38px;height:38px;border-radius:999px;background:var(--utility-icon-color);color:#fff;font-size:.74rem;font-weight:950;box-shadow:0 0 16px color-mix(in srgb,var(--utility-icon-color),transparent 45%)}.status-preview:after{content:"";position:absolute;inset-inline-end:-2px;inset-block-end:-2px;width:12px;height:12px;border:2px solid var(--iot-control-bg);border-radius:999px;background:var(--iot-accent)}.status-preview.offline{filter:grayscale(1);opacity:.64}.status-preview.offline:after{background:var(--iot-muted)}.status-preview.error:after{background:var(--iot-danger)}.status-preview.maintenance:after{background:var(--iot-warning, #f59e0b)}.status-preview.maintenance{box-shadow:0 0 0 4px color-mix(in srgb,var(--iot-warning, #f59e0b),transparent 84%),0 0 16px color-mix(in srgb,var(--utility-icon-color),transparent 45%)}.status-preview.error{box-shadow:0 0 0 4px color-mix(in srgb,var(--iot-danger),transparent 84%),0 0 16px color-mix(in srgb,var(--utility-icon-color),transparent 45%)}.catalog-radial-menu{pointer-events:none;position:absolute;z-index:12;inset-inline-start:29px;inset-block-start:50%;width:168px;height:168px;transform:translate(-50%,-50%);border:1px solid color-mix(in srgb,var(--iot-border-strong),transparent 48%);border-radius:999px;background:radial-gradient(circle at center,transparent 0 28px,color-mix(in srgb,var(--iot-surface-strong),transparent 70%) 29px 100%);box-shadow:inset 0 1px #ffffff2e,0 18px 48px #0003;-webkit-backdrop-filter:blur(10px) saturate(1.08);backdrop-filter:blur(10px) saturate(1.08);animation:radial-orbit-in .13s ease-out}.catalog-radial-menu .radial-center-close,.catalog-radial-menu .radial-action{pointer-events:auto;position:absolute;width:46px;height:46px;transform:translate(-50%,-50%);display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--iot-border-strong),transparent 40%);border-radius:999px;cursor:pointer;background:color-mix(in srgb,var(--iot-surface-strong),transparent 18%);color:var(--iot-text);box-shadow:0 14px 30px #00000038,inset 0 1px #ffffff38;-webkit-backdrop-filter:blur(12px) saturate(1.16);backdrop-filter:blur(12px) saturate(1.16);font-weight:950;transition:transform .14s ease,border-color .14s ease,background .14s ease,opacity .14s ease}.catalog-radial-menu .radial-center-close{left:50%;top:50%;color:var(--iot-muted)}.catalog-radial-menu .radial-action.sync{left:50%;top:9%;color:var(--iot-accent)}.catalog-radial-menu .radial-action.associate{left:86%;top:68%;color:var(--iot-info, #60a5fa)}.catalog-radial-menu .radial-action.danger{left:14%;top:68%;color:var(--iot-danger)}.catalog-radial-menu .radial-action:hover,.catalog-radial-menu .radial-center-close:hover{transform:translate(-50%,-50%) scale(1.1);border-color:color-mix(in srgb,var(--iot-accent),transparent 26%);background:color-mix(in srgb,var(--iot-surface-strong),var(--iot-accent) 18%)}.catalog-radial-menu .radial-action:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(1)}.catalog-radial-menu .radial-action:after{content:attr(data-tooltip);position:absolute;left:calc(100% - 4px);bottom:calc(100% + 4px);width:max-content;max-width:190px;padding:7px 9px;border:1px solid rgba(255,255,255,.14);border-radius:10px 10px 10px 2px;background:#080d1aeb;color:#fff;box-shadow:0 12px 30px #00000047;font-size:.72rem;white-space:nowrap;opacity:0;pointer-events:none;transform:translate(-3px,4px);transition:opacity .12s ease,transform .12s ease}.catalog-radial-menu .radial-action:hover:after{opacity:1;transform:translate(0)}@media(max-width:840px){.icon-catalog{max-height:none;overflow:visible}.icon-row-card{grid-template-columns:1fr}.icon-status-columns{grid-template-columns:repeat(2,minmax(92px,1fr))}}.catalog-header-actions{order:-1}.device-type-designer-backdrop{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:22px;background:#0206178a;-webkit-backdrop-filter:blur(12px) saturate(1.08);backdrop-filter:blur(12px) saturate(1.08)}.device-type-designer{width:min(1280px,100vw - 32px);max-height:min(92dvh,980px);overflow:auto;padding:18px;border-radius:28px;box-shadow:0 34px 100px #00000061}.designer-header,.schema-builder-header,.designer-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}.designer-title{--utility-icon-color: var(--iot-accent);display:flex;align-items:center;gap:14px;min-width:0}.designer-title h2,.designer-card h3{margin:4px 0 0}.designer-title p,.schema-builder-header p{margin:5px 0 0;color:var(--iot-muted)}.designer-title .designer-subtitle{max-width:42ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.designer-close{width:42px;height:42px;border:1px solid var(--iot-border);border-radius:999px;background:var(--iot-control-bg);color:var(--iot-text);cursor:pointer;font-size:1.45rem}.schema-json-action{white-space:nowrap}.schema-json-dialog-backdrop{position:fixed;inset:0;z-index:150;display:grid;place-items:center;padding:24px;background:#02061794}.schema-json-dialog{width:min(980px,100vw - 36px);height:min(82dvh,760px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;padding:18px;border-radius:24px;box-shadow:0 28px 90px #0000006b}.schema-json-dialog header,.schema-json-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.schema-json-dialog header p{margin:5px 0 0;color:var(--iot-muted)}.schema-json-dialog footer{justify-content:flex-end;flex-wrap:wrap}.schema-json-output{width:100%;min-height:0;resize:none;overflow:auto;border:1px solid var(--iot-border);border-radius:18px;background:color-mix(in srgb,var(--iot-surface-strong),#000 10%);color:var(--iot-text);padding:14px;font:.82rem/1.55 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;tab-size:2;direction:ltr;text-align:left}.device-type-designer-grid{display:grid;grid-template-columns:minmax(270px,.85fr) minmax(520px,1.55fr);gap:14px;margin-top:16px}.designer-card{display:grid;gap:12px;padding:14px;border:1px solid var(--iot-border);border-radius:22px;background:color-mix(in srgb,var(--iot-control-bg),transparent 12%)}.designer-card label{display:grid;gap:6px;color:var(--iot-muted);font-size:.82rem;font-weight:800}.designer-card input,.designer-card select,.designer-card textarea{width:100%;border:1px solid var(--iot-border);border-radius:13px;background:var(--iot-control-bg);color:var(--iot-text);padding:.66rem .75rem;outline:none;font:inherit}.designer-card textarea{resize:vertical;min-height:92px}.designer-switch-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.8fr);gap:10px;align-items:end}.checkbox-line{display:flex!important;grid-template-columns:none!important;flex-direction:row;align-items:center;gap:8px!important;min-height:42px}.checkbox-line input{width:auto}.checkbox-line.compact{justify-content:center;color:var(--iot-muted);font-size:.76rem}.existing-schema-list{display:grid;gap:6px;padding:10px;border:1px dashed var(--iot-border);border-radius:16px;color:var(--iot-muted);font-size:.8rem}.existing-schema-list strong{color:var(--iot-text)}.schema-builder-card{min-width:0}.schema-property-table{display:grid;gap:8px;min-width:0}.schema-property-head,.schema-property-row{display:grid;grid-template-columns:minmax(170px,1.05fr) minmax(130px,.65fr) minmax(180px,.9fr) minmax(110px,.48fr) 38px;gap:8px;align-items:center}.schema-property-head{color:var(--iot-muted);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.schema-property-row{padding:8px;border:1px solid var(--iot-border);border-radius:16px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 18%)}.schema-property-row label{gap:4px}.schema-property-row small input{font-size:.78rem;opacity:.86}.range-cells{display:grid;grid-template-columns:1fr 1fr;gap:6px}.range-cells input:last-child{grid-column:1/-1}.row-delete{width:34px;height:34px;display:grid;place-items:center;padding:0;line-height:1;border:1px solid color-mix(in srgb,var(--iot-danger),transparent 48%);border-radius:999px;background:color-mix(in srgb,var(--iot-danger),transparent 88%);color:var(--iot-danger);cursor:pointer;font-size:1.1rem;font-weight:950}.schema-json-card{grid-column:1/-1}.schema-json-card textarea{min-height:260px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;line-height:1.45}.designer-actions{grid-column:1/-1;justify-content:flex-end;padding-top:2px}.catalog-radial-menu .radial-action.create{left:86%;top:32%;color:var(--iot-accent-2)}.catalog-radial-menu .radial-action.sync{left:50%;top:8%;color:var(--iot-accent)}.catalog-radial-menu .radial-action.associate{left:86%;top:74%;color:var(--iot-info, #60a5fa)}.catalog-radial-menu .radial-action.danger{left:14%;top:74%;color:var(--iot-danger)}@media(max-width:980px){.device-type-designer-grid,.designer-switch-row,.schema-property-head,.schema-property-row{grid-template-columns:1fr}.schema-property-head{display:none}.range-cells{grid-template-columns:1fr}}.catalog-radial-menu{position:fixed;inset:auto;width:184px;height:184px;transform:translate(-50%,-50%);z-index:260}.catalog-radial-menu .radial-action.sync{left:50%;top:8%}.catalog-radial-menu .radial-action.create{left:87%;top:34%}.catalog-radial-menu .radial-action.associate{left:80%;top:78%}.catalog-radial-menu .radial-action.danger{left:20%;top:78%}.device-type-designer{overflow:hidden;display:flex;flex-direction:column}.device-type-designer-grid{min-height:0;overflow:auto;padding-inline-end:4px}.schema-builder-card:has(.schema-locked-banner){grid-template-rows:auto auto minmax(0,1fr)}.schema-builder-card{grid-template-rows:auto minmax(0,1fr);max-height:min(58dvh,650px);overflow:hidden}.schema-builder-header{position:sticky;top:0;z-index:3;margin:-14px -14px 0;padding:14px;border-bottom:1px solid var(--iot-border);background:color-mix(in srgb,var(--iot-control-bg),transparent 5%);-webkit-backdrop-filter:blur(12px) saturate(1.08);backdrop-filter:blur(12px) saturate(1.08)}.schema-property-table{overflow:auto;max-height:min(44dvh,510px);padding-inline-end:5px;overscroll-behavior:contain;scrollbar-gutter:stable}.schema-property-head{position:sticky;top:0;z-index:2;padding-block:6px;background:color-mix(in srgb,var(--iot-control-bg),transparent 4%);-webkit-backdrop-filter:blur(10px) saturate(1.06);backdrop-filter:blur(10px) saturate(1.06)}.status-cell{position:relative}.status-cell.saved{border-color:color-mix(in srgb,var(--iot-accent),transparent 42%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--iot-accent),transparent 68%)}.status-saved-check{position:absolute;inset-inline-end:7px;inset-block-start:7px;display:grid;place-items:center;width:18px;height:18px;border-radius:999px;background:var(--iot-accent);color:#fff;font-size:.68rem;font-weight:950;box-shadow:0 0 0 3px color-mix(in srgb,var(--iot-accent),transparent 82%)}.icon-row-card.menu-open,.icon-row-card.menu-open:hover{transform:none}.catalog-header-actions{gap:10px}.icon-search{display:grid;gap:4px;min-width:min(34vw,310px);color:var(--iot-muted);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.icon-search input{min-height:42px;border:1px solid var(--iot-border);border-radius:999px;background:var(--iot-control-bg);color:var(--iot-text);padding:0 14px;font:inherit;font-size:.92rem;font-weight:700;text-transform:none;letter-spacing:normal;outline:none}.icon-search input:focus{border-color:color-mix(in srgb,var(--iot-accent),transparent 38%);box-shadow:0 0 0 4px color-mix(in srgb,var(--iot-accent),transparent 86%)}.icon-row-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr))}.icon-row-card{grid-template-columns:minmax(160px,.62fr) minmax(310px,1.58fr);gap:7px;overflow:visible}.icon-main-cell{gap:8px}.catalog-radial-menu{position:absolute!important;inset:50% auto auto 29px!important;width:146px!important;height:146px!important;transform:translate(-50%,-50%)!important;z-index:40}.catalog-radial-menu .radial-center-close,.catalog-radial-menu .radial-action{width:40px;height:40px}.catalog-radial-menu .radial-action.sync{left:50%;top:7%}.catalog-radial-menu .radial-action.create{left:91%;top:34%}.catalog-radial-menu .radial-action.associate{left:80%;top:83%}.catalog-radial-menu .radial-action.danger{left:20%;top:83%}.left-collapsed iot-utilities-page .utilities-page{padding-inline-start:54px}.definition-card{display:grid;grid-template-rows:auto minmax(0,1fr);max-height:calc(100dvh - 170px);overflow:hidden}.device-type-grid{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-inline-end:5px}@media(min-width:1540px){.icon-row-grid{grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}}@media(max-width:920px){.catalog-header{align-items:stretch;flex-direction:column}.catalog-header-actions{width:100%}.icon-search{flex:1;min-width:0}.icon-row-card{grid-template-columns:1fr}.catalog-radial-menu{left:29px!important;top:29px!important}}.icon-row-grid{padding-inline-start:38px}[dir=rtl] iot-utilities-page .icon-row-grid{padding-inline-start:0;padding-inline-end:38px}.left-collapsed iot-utilities-page .icon-row-grid{padding-inline-start:54px}.catalog-header{display:grid;align-items:start;gap:10px}.catalog-header-actions{order:0;justify-content:flex-start;width:100%}.catalog-heading-copy{min-width:0}.catalog-heading-copy h2{margin-top:4px}.icon-search{flex:0 1 min(52vw,360px);min-width:min(42vw,240px)}.panel-actions-menu{left:0;right:auto;inset-inline-start:auto;inset-inline-end:auto}[dir=rtl] iot-utilities-page .catalog-header-actions{direction:ltr}[dir=rtl] iot-utilities-page .catalog-header-actions .icon-search{direction:rtl}@media(max-width:680px){.catalog-header-actions{align-items:stretch}.icon-search{flex:1 1 auto;min-width:0}}.building-studio-shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:min(760px,100vh - 190px);padding:0;overflow:hidden}.building-studio-rail{display:grid;grid-template-rows:auto 1fr;gap:14px;padding:16px;border-inline-end:1px solid var(--iot-border);background:radial-gradient(circle at 20% 12%,color-mix(in srgb,var(--iot-accent),transparent 76%),transparent 92px),color-mix(in srgb,var(--iot-surface-strong),transparent 8%)}.building-studio-brand{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--iot-border);border-radius:18px;background:var(--iot-control-bg)}.building-studio-brand .brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--iot-accent),var(--iot-accent-2));color:#fff;font-weight:950}.building-studio-brand small,.building-studio-panel small,.building-bundle-row small{color:var(--iot-muted)}.building-studio-rail nav{display:grid;align-content:start;gap:8px}.building-studio-rail button{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:10px;border:1px solid transparent;border-radius:16px;padding:10px;background:transparent;color:var(--iot-muted);text-align:start;cursor:pointer}.building-studio-rail button.active,.building-studio-rail button:hover{color:var(--iot-text);border-color:var(--iot-border);background:var(--iot-control-bg-hover)}.building-studio-rail button span{width:34px;height:34px;display:grid;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--iot-accent),transparent 82%);color:var(--iot-accent)}.building-studio-main{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;min-width:0;padding:16px}.building-studio-header,.building-bundle-list>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.building-studio-header h2,.building-studio-header p{margin:4px 0 0}.building-studio-header p{color:var(--iot-muted)}.building-studio-workspace{display:grid;grid-template-columns:minmax(360px,1fr) minmax(320px,420px);gap:14px;min-height:430px;min-width:0}.building-studio-canvas{position:relative;display:grid;place-items:center;overflow:hidden;border:1px solid var(--iot-border);border-radius:24px;background:color-mix(in srgb,var(--iot-surface),transparent 16%)}.studio-canvas-card{position:relative;z-index:1;width:min(430px,76%);padding:28px;border:1px solid var(--iot-border);border-radius:26px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 8%);box-shadow:var(--iot-panel-shadow);text-align:center}.studio-canvas-card>span{width:72px;height:72px;display:grid;place-items:center;margin:0 auto 14px;border-radius:24px;color:var(--iot-accent);background:color-mix(in srgb,var(--iot-accent),transparent 84%);font-size:2.1rem}.building-studio-panel,.building-studio-form,.building-studio-step-card{display:grid;gap:12px;min-width:0}.building-studio-panel{padding:16px;overflow:auto;border:1px solid var(--iot-border);border-radius:24px;background:var(--iot-control-bg)}.building-studio-form label{display:grid;gap:6px;color:var(--iot-muted);font-weight:800}.building-studio-form input,.building-studio-form textarea{width:100%;border:1px solid var(--iot-border);border-radius:14px;background:var(--iot-surface);color:var(--iot-text);padding:.75rem .85rem}.studio-checks{display:flex;flex-wrap:wrap;align-content:center;gap:8px}.building-bundle-list{display:grid;gap:10px;min-height:0}.building-bundle-list>header span{min-width:34px;min-height:34px;display:grid;place-items:center;border:1px solid var(--iot-border);border-radius:999px;color:var(--iot-accent);font-weight:950}.building-bundle-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--iot-border);border-radius:18px;background:var(--iot-control-bg)}.bundle-artifacts{display:flex;flex-wrap:wrap;gap:6px}.bundle-artifacts span{min-width:44px;text-align:center;padding:.35rem .55rem;border:1px solid var(--iot-border);border-radius:999px;color:var(--iot-muted);font-weight:900}.bundle-artifacts span.ready{color:var(--iot-accent);border-color:color-mix(in srgb,var(--iot-accent),transparent 45%);background:color-mix(in srgb,var(--iot-accent),transparent 88%)}@media(max-width:1180px){.building-studio-shell{grid-template-columns:1fr}.building-studio-rail{grid-template-rows:auto auto;border-inline-end:0;border-block-end:1px solid var(--iot-border)}.building-studio-rail nav{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.building-studio-workspace{grid-template-columns:1fr}}@media(max-width:720px){.building-bundle-row{grid-template-columns:1fr}}.demo-chip,.demo-mode-pill{color:var(--iot-accent);border-color:color-mix(in srgb,var(--iot-accent),transparent 50%)!important;background:color-mix(in srgb,var(--iot-accent),transparent 88%)!important}.building-studio-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.demo-mode-pill{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border:1px solid var(--iot-border);border-radius:999px;font-weight:950;white-space:nowrap}.studio-canvas-card.rich{width:min(620px,86%);max-height:calc(100% - 36px);overflow:hidden}.studio-svg-preview{margin:16px 0 0;padding:10px;border:1px solid var(--iot-border);border-radius:18px;background:color-mix(in srgb,var(--iot-surface),transparent 8%)}.studio-svg-preview img{display:block;width:100%;height:min(240px,30vh);object-fit:contain;border-radius:12px;background:#f8fafc}.studio-svg-preview figcaption{margin-top:8px;color:var(--iot-muted);font-size:.82rem;font-weight:800}.studio-viewer-preview{position:relative;width:min(420px,100%);height:230px;margin:18px auto 0;border:1px solid var(--iot-border);border-radius:22px;overflow:hidden;background:radial-gradient(circle at 70% 18%,color-mix(in srgb,var(--iot-accent),transparent 70%),transparent 100px),linear-gradient(145deg,color-mix(in srgb,var(--iot-surface),transparent 8%),color-mix(in srgb,var(--iot-surface-strong),transparent 6%));perspective:900px}.viewer-cube{position:absolute;display:block;border:1px solid color-mix(in srgb,var(--iot-accent),transparent 35%);border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--iot-accent),transparent 62%),color-mix(in srgb,var(--iot-accent-2),transparent 72%));box-shadow:0 22px 55px #00000038;transform:rotateX(62deg) rotate(-34deg)}.viewer-cube.one{width:150px;height:85px;left:70px;top:78px}.viewer-cube.two{width:110px;height:68px;right:74px;top:55px}.viewer-cube.three{width:88px;height:54px;left:190px;bottom:34px}.studio-export-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.studio-export-preview span{display:grid;place-items:center;min-height:72px;border:1px solid color-mix(in srgb,var(--iot-accent),transparent 55%);border-radius:18px;color:var(--iot-accent);background:color-mix(in srgb,var(--iot-accent),transparent 88%);font-weight:950}.building-studio-form em{color:var(--iot-accent);font-style:normal;font-size:.78rem;font-weight:850}.schema-designer-v2{width:min(1560px,100vw - 26px);max-height:min(94dvh,1040px)}.schema-designer-v2 .designer-header{flex:0 0 auto}.schema-summary-pills{display:flex;flex-wrap:wrap;gap:8px;margin-inline-start:auto}.schema-summary-pills span{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border:1px solid var(--iot-border);border-radius:999px;color:var(--iot-muted);background:var(--iot-control-bg);font-size:.76rem;font-weight:900}.enhanced-schema-grid{grid-template-columns:minmax(260px,.8fr) minmax(260px,.8fr) minmax(680px,2fr);grid-auto-rows:min-content;align-items:stretch;overflow:auto}.v2-builder-card,.v2-json-card,.schema-validation-card,.enhanced-schema-grid .designer-actions{grid-column:1/-1}.schema-version-list{display:grid;gap:8px;max-height:206px;overflow:auto;padding-inline-end:4px}.schema-version-list article{display:grid;gap:3px;padding:10px;border:1px solid var(--iot-border);border-radius:14px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 20%)}.schema-version-list article span,.schema-version-list article small,.schema-version-advice span,.inline-header p{color:var(--iot-muted)}.schema-version-advice{display:grid;gap:5px;padding:10px;border-radius:16px;background:color-mix(in srgb,var(--iot-accent),transparent 90%);border:1px solid color-mix(in srgb,var(--iot-accent),transparent 70%);font-size:.82rem}.v2-builder-card{max-height:min(62dvh,680px);min-height:460px}.schema-designer-layout{display:grid;grid-template-columns:minmax(160px,.42fr) minmax(330px,.95fr) minmax(420px,1.18fr);gap:12px;min-height:0;overflow:hidden}.schema-category-rail,.schema-field-list,.schema-field-settings,.field-settings-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.schema-category-rail{display:grid;align-content:start;gap:8px;padding-inline-end:4px}.schema-category-rail button{display:flex;justify-content:space-between;align-items:baseline;gap:8px;width:100%;border:1px solid var(--iot-border);border-radius:15px;background:var(--iot-control-bg);color:var(--iot-text);cursor:pointer;padding:.6rem .62rem;text-align:start;font-weight:850}.schema-category-rail button>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schema-category-rail button>b{flex:none;font-variant-numeric:tabular-nums}.schema-category-rail button.active{border-color:color-mix(in srgb,var(--iot-accent),transparent 38%);background:linear-gradient(135deg,color-mix(in srgb,var(--iot-accent),transparent 82%),color-mix(in srgb,var(--iot-accent-2),transparent 88%))}.schema-category-rail b{color:var(--iot-accent)}.schema-field-list{display:grid;align-content:start;gap:8px;padding-inline-end:4px}.schema-field-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto 34px;align-items:center;gap:8px;border:1px solid var(--iot-border);border-radius:16px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 20%);color:var(--iot-text);cursor:pointer;padding:10px}.schema-field-card.active{border-color:color-mix(in srgb,var(--iot-accent),transparent 35%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--iot-accent),transparent 72%)}.schema-field-card strong,.schema-field-card small{display:block}.schema-field-card small,.schema-field-category{color:var(--iot-muted);font-size:.76rem}.schema-field-mode{border-radius:999px;padding:.32rem .5rem;background:color-mix(in srgb,var(--iot-accent),transparent 84%);color:var(--iot-accent);font-size:.72rem;font-weight:900;white-space:nowrap}.schema-field-mode.readonly{background:color-mix(in srgb,#94a3b8,transparent 84%);color:var(--iot-muted)}.schema-field-settings{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--iot-border);border-radius:18px;background:color-mix(in srgb,var(--iot-control-bg),transparent 10%)}.schema-field-settings>header,.inline-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.schema-field-settings h3,.inline-header h3,.schema-version-card h3{margin:4px 0 0}.field-settings-scroll{display:grid;align-content:start;gap:12px;padding-inline-end:4px}.type-settings-block{display:grid;gap:10px;padding:10px;border:1px dashed var(--iot-border);border-radius:16px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 24%)}.type-settings-block p{margin:0;color:var(--iot-muted);font-size:.84rem}.schema-flags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.schema-flags .checkbox-line{justify-content:flex-start;min-height:36px;padding:0 8px;border:1px solid var(--iot-border);border-radius:999px;background:var(--iot-control-bg)}.v2-json-card textarea,.schema-validation-card textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;line-height:1.45;min-height:220px}.schema-validation-result{display:grid;gap:5px;border:1px solid color-mix(in srgb,var(--iot-danger),transparent 60%);border-radius:16px;padding:10px;color:var(--iot-danger);background:color-mix(in srgb,var(--iot-danger),transparent 91%);font-size:.82rem;font-weight:800}.schema-validation-result.ok{color:var(--iot-accent);border-color:color-mix(in srgb,var(--iot-accent),transparent 56%);background:color-mix(in srgb,var(--iot-accent),transparent 91%)}@media(max-width:1180px){.enhanced-schema-grid,.schema-designer-layout{grid-template-columns:1fr}.schema-designer-v2{overflow:auto}.v2-builder-card{max-height:none}.schema-category-rail{display:flex;overflow:auto}.schema-category-rail button{width:auto;min-width:150px}}.device-type-designer,.device-type-designer-grid,.enhanced-schema-grid,.definition-card,.device-type-grid,.schema-builder-card,.v2-builder-card,.schema-designer-layout,.schema-category-rail,.schema-field-list,.schema-field-settings,.field-settings-scroll,.schema-version-list{min-height:0;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}.device-type-designer-grid,.enhanced-schema-grid,.device-type-grid,.schema-designer-layout,.schema-category-rail,.schema-field-list,.schema-field-settings,.field-settings-scroll,.schema-version-list{contain:layout paint style}.schema-field-list{display:block;overflow-y:auto;overflow-x:hidden;padding-inline-end:6px;will-change:scroll-position;transform:translateZ(0)}.schema-field-card{min-height:68px;margin-block-end:8px;contain:layout paint style;content-visibility:auto;contain-intrinsic-size:68px}.schema-virtual-spacer{display:block;width:1px;min-height:0;pointer-events:none}.field-settings-scroll{overflow-y:auto;overflow-x:hidden;will-change:scroll-position;transform:translateZ(0)}.field-settings-scroll>*,.schema-category-rail button,.schema-version-list article,.device-type-row,.icon-row-card{contain:layout paint style}.schema-version-list article,.device-type-row,.icon-row-card{content-visibility:auto;contain-intrinsic-size:92px}.schema-field-card,.schema-field-card.active,.status-cell.saved,.status-saved-check{transition:none}.schema-field-card.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--iot-accent),transparent 80%)}@media(prefers-reduced-motion:no-preference){.schema-field-list,.field-settings-scroll,.device-type-grid{scroll-behavior:auto}}.device-type-designer-backdrop{background:#0206176b;-webkit-backdrop-filter:none;backdrop-filter:none}.device-type-designer.schema-designer-v2{display:grid;grid-template-rows:auto minmax(0,1fr);max-height:min(94dvh,980px);overflow:hidden;box-shadow:0 18px 54px #00000042}.enhanced-schema-grid{overflow-y:auto;overflow-x:hidden;padding-inline-end:4px;contain:layout paint}.schema-builder-actions,.device-type-catalog-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;min-width:min(100%,520px)}.inline-search{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 10px;border:1px solid var(--iot-border);border-radius:999px;background:var(--iot-control-bg);color:var(--iot-muted);font-size:.78rem;font-weight:850}.inline-search input{width:min(28vw,240px);min-width:160px;border:0;outline:0;padding:0;background:transparent;color:var(--iot-text);font:inherit}.schema-field-search input{width:min(22vw,220px)}.v2-builder-card{max-height:none;min-height:0;height:min(62dvh,650px);grid-template-rows:auto minmax(0,1fr);overflow:hidden}.schema-designer-layout{height:100%;min-height:0}.schema-field-list,.field-settings-scroll,.schema-category-rail,.schema-version-list,.device-type-grid{transform:none;will-change:auto;scroll-behavior:auto}.schema-field-list{display:grid;align-content:start;gap:8px;overflow-y:auto;padding-inline-end:6px}.schema-field-card{min-height:0;margin-block-end:0;content-visibility:visible;contain-intrinsic-size:auto;box-shadow:none}.schema-field-card.active{box-shadow:none;background:color-mix(in srgb,var(--iot-accent),transparent 90%)}.schema-field-settings{overflow:hidden}.field-settings-scroll{overflow-y:auto;overflow-x:hidden;padding-inline-end:8px}.field-settings-scroll>*,.schema-field-card,.schema-category-rail button,.schema-version-list article{contain:layout paint}.empty-list-message{align-self:start;margin:8px;padding:14px;border:1px dashed var(--iot-border);border-radius:16px}@media(max-width:1180px){.device-type-designer.schema-designer-v2{overflow:auto}.v2-builder-card{height:auto;min-height:620px}.schema-builder-actions,.device-type-catalog-actions{justify-content:flex-start}}.schema-scroll-profile{display:inline-flex;align-items:center;min-height:34px;max-width:min(42vw,520px);padding:0 10px;border:1px solid var(--iot-border);border-radius:999px;background:var(--iot-control-bg);color:var(--iot-muted);font-size:.72rem;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schema-scroll-profile.active{color:var(--iot-accent);border-color:var(--iot-accent)}.perf-button{white-space:nowrap}.device-type-designer.schema-designer-v2,.schema-designer-v2 .designer-card,.schema-field-settings,.schema-field-list,.schema-category-rail,.field-settings-scroll{backface-visibility:hidden}.schema-designer-v2,.schema-designer-v2 .designer-card,.v2-builder-card,.schema-field-settings{background:var(--iot-surface-strong)}.v2-builder-card{contain:layout paint style}.schema-designer-layout{grid-template-columns:156px minmax(340px,.95fr) minmax(440px,1.25fr);contain:strict}.schema-field-virtual-list{display:block!important;overflow-y:auto;overflow-x:hidden;contain:strict;padding-inline-end:6px;background:var(--iot-surface-strong)}.schema-field-virtual-spacer{display:block;height:0;min-height:0;pointer-events:none}.schema-field-virtual-list .schema-field-card{height:68px;min-height:68px;max-height:68px;margin-block-end:8px;box-sizing:border-box;overflow:hidden;background:var(--iot-control-bg);border-radius:12px;contain:strict;content-visibility:visible}.schema-field-virtual-list .schema-field-card.active{outline:2px solid var(--iot-accent);outline-offset:-2px;background:var(--iot-control-bg-hover)}.schema-field-virtual-list .schema-field-mode,.schema-field-virtual-list .schema-field-category{contain:layout paint style}.schema-field-settings{contain:strict;background:var(--iot-surface-strong);box-shadow:none}.field-settings-scroll{contain:strict;background:var(--iot-surface-strong);padding-inline-end:8px}.field-settings-scroll label,.field-settings-scroll .two-cols,.field-settings-scroll .type-settings-block,.field-settings-scroll .schema-flags{contain:layout paint style;box-shadow:none}.field-settings-scroll input,.field-settings-scroll select,.field-settings-scroll textarea{box-shadow:none;transition:none}.schema-header-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:0}.schema-header-actions .iot-button{white-space:nowrap}.device-type-server-card{display:grid;grid-template-rows:auto auto auto minmax(0,1fr);min-height:min(78dvh,860px);overflow:hidden}.device-type-catalog-actions.server-actions{min-width:min(100%,620px);justify-content:flex-end}.create-device-type-button{width:40px;height:40px;border-radius:14px;font-size:1.35rem;line-height:1}.device-type-template-picker{margin-block:12px;padding:14px;border:1px solid var(--iot-border);border-radius:18px;background:var(--iot-control-bg);display:grid;gap:12px}.device-type-template-picker>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.device-type-template-picker>header div{display:grid;gap:4px}.device-type-template-picker>header span{color:var(--iot-muted);font-size:.82rem}.device-type-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;max-height:280px;overflow:auto;padding-inline-end:4px;contain:layout paint}.device-type-template-card{position:relative;display:grid;gap:8px;min-width:0;padding:8px;border:1px solid var(--iot-border);border-radius:18px;background:var(--iot-surface-strong);color:var(--iot-text)}.device-type-template-main{width:100%;min-width:0;min-height:86px;display:grid;grid-template-columns:68px minmax(0,1fr);align-items:center;gap:12px;padding:8px 42px 8px 8px;border:0;border-radius:14px;background:transparent;color:inherit;text-align:start;cursor:pointer}.device-type-template-main:hover{background:color-mix(in srgb,var(--iot-accent),transparent 92%)}.device-type-template-card .icon-glyph{width:58px;height:58px;font-size:1.08rem;flex:none}.template-copy{min-width:0;display:grid;gap:4px}.device-type-template-card strong,.server-device-type-main strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-info-button{position:absolute;inset-block-start:12px;inset-inline-end:12px;width:30px;height:30px;border:1px solid var(--iot-border);border-radius:999px;background:var(--iot-control-bg);color:var(--iot-accent);font-weight:950;cursor:pointer}.template-info-button:hover{border-color:color-mix(in srgb,var(--iot-accent),transparent 35%);background:color-mix(in srgb,var(--iot-accent),transparent 88%)}.template-info-text{margin:0;padding:8px 10px;border-radius:12px;background:color-mix(in srgb,var(--iot-accent),transparent 92%);color:var(--iot-muted);font-size:.78rem;font-weight:800;line-height:1.35}.device-type-template-card small,.server-device-type-main small,.server-device-type-main span,.server-device-type-meta span{color:var(--iot-muted);font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-device-type-list{min-height:0;overflow:auto;display:grid;align-content:start;gap:8px;padding:2px 4px 10px 0;contain:layout paint}.server-device-type-row{position:relative;display:grid;grid-template-columns:30px 44px minmax(220px,1fr) minmax(170px,.35fr);align-items:center;gap:12px;min-height:68px;padding:10px 12px;border:1px solid var(--iot-border);border-radius:16px;background:var(--iot-control-bg);contain:layout style}.server-device-type-main,.server-device-type-meta{min-width:0;display:grid;gap:3px}.device-type-row-actions{position:relative;display:flex;justify-content:flex-end}.device-type-more{width:36px;height:36px;border:1px solid var(--iot-border);border-radius:12px;background:var(--iot-surface-strong);color:var(--iot-text);cursor:pointer;font-size:1.1rem;font-weight:900}.device-type-row-menu{position:absolute;z-index:20;inset-inline-end:0;top:42px;min-width:180px;display:grid;gap:4px;padding:8px;border:1px solid var(--iot-border);border-radius:14px;background:var(--iot-surface-strong);box-shadow:0 18px 42px #00000038}.device-type-row-menu button{border:0;border-radius:10px;background:transparent;color:var(--iot-text);text-align:start;padding:8px 10px;font-weight:800;cursor:pointer}.device-type-row-menu button:hover{background:var(--iot-control-bg-hover)}.device-type-row-menu .danger{color:#fb7185}.loading-list-message{margin:8px 0}.header-profile{max-width:min(38vw,460px)}@media(max-width:900px){.server-device-type-row{grid-template-columns:30px 44px minmax(0,1fr)}.server-device-type-meta{display:none}}.device-type-catalog-header{align-items:center}.device-type-title-block h2{margin-block-end:0}.device-type-catalog-toolbar{display:grid;grid-template-columns:minmax(220px,360px) minmax(150px,1fr) minmax(220px,360px);align-items:center;gap:16px;margin:16px 0 14px}.device-type-catalog-toolbar .device-type-search{grid-column:1;justify-self:stretch}.device-type-catalog-toolbar .create-device-type-button{grid-column:2;justify-self:center}.inline-search.material-search{position:relative;min-height:46px;padding:0 16px;border-radius:14px;border-color:color-mix(in srgb,var(--iot-border),var(--iot-accent) 20%);background:var(--iot-surface-strong)}.inline-search.material-search>span{position:absolute;inset-inline-start:14px;top:-9px;padding:0 6px;background:var(--iot-surface-strong);color:var(--iot-muted);font-size:.68rem;line-height:1;pointer-events:none}.inline-search.material-search input{width:100%;min-width:0;padding-block:2px 0;font-size:.92rem}.inline-search.material-search input::placeholder{color:color-mix(in srgb,var(--iot-muted),transparent 25%)}.device-type-catalog-toolbar .create-device-type-button{min-width:190px;height:54px;padding:0 22px;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:10px;color:#fff;background:linear-gradient(135deg,var(--iot-accent),color-mix(in srgb,var(--iot-accent),#22c55e 45%));box-shadow:0 16px 34px color-mix(in srgb,var(--iot-accent),transparent 70%);font-weight:900;cursor:pointer}.device-type-catalog-toolbar .create-device-type-button span{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#ffffff38;font-size:1.45rem;line-height:1}.device-type-catalog-toolbar .create-device-type-button strong{font-size:.92rem;letter-spacing:.01em}.device-type-catalog-toolbar .create-device-type-button:hover{transform:translateY(-1px);filter:brightness(1.04)}@media(max-width:860px){.device-type-catalog-toolbar{grid-template-columns:1fr}.device-type-catalog-toolbar .device-type-search,.device-type-catalog-toolbar .create-device-type-button{grid-column:1;justify-self:stretch}}.device-type-catalog-toolbar .create-device-type-button{width:auto}.utilities-page{gap:10px;padding:10px 12px}.utilities-toolbar.compact{min-height:66px;padding:10px 14px;border-radius:22px}.utilities-toolbar h1{margin:2px 0 0;font-size:clamp(1.55rem,2.3vw,2.15rem);line-height:1}.utilities-toolbar .eyebrow{font-size:.68rem;letter-spacing:.07em}.utility-summary-chips{gap:6px}.utility-summary-chips span{min-height:30px;padding:0 10px;font-size:.78rem}.icon-catalog,.placement-card,.placement-form-card,.definition-card,.users-card{padding:12px}.definition-card.device-type-server-card{grid-template-rows:auto auto auto minmax(0,1fr);max-height:calc(100dvh - 108px);min-height:min(84dvh,900px)}.compact-device-type-actions{min-height:0;justify-content:flex-end;margin:0}.compact-device-type-actions .device-type-catalog-actions.server-actions{min-width:0}.compact-device-type-actions .iot-button{min-height:36px;padding:0 14px}.device-type-catalog-toolbar.compact-device-type-toolbar{margin:8px 0 10px;grid-template-columns:minmax(220px,340px) minmax(170px,1fr) minmax(120px,220px)}.inline-search.material-search{min-height:40px;border-radius:12px}.device-type-catalog-toolbar .create-device-type-button{height:46px;min-width:210px;padding:0 18px;box-shadow:0 10px 24px color-mix(in srgb,var(--iot-accent),transparent 76%)}.device-type-catalog-toolbar .create-device-type-button span{width:28px;height:28px;font-size:1.35rem}.device-type-template-picker.compact-template-picker{margin-block:8px 10px;padding:10px;border-radius:16px;gap:8px}.device-type-template-picker.compact-template-picker>header{align-items:center;min-height:34px}.device-type-template-picker.compact-template-picker>header strong{font-size:.92rem}.device-type-template-picker.compact-template-picker .designer-close{width:34px;height:34px}.device-type-template-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:8px;max-height:min(46dvh,420px)}.device-type-template-card{padding:6px;border-radius:16px;overflow:visible}.device-type-template-main{min-height:70px;grid-template-columns:58px minmax(0,1fr);gap:10px;padding:6px 38px 6px 6px}.device-type-template-card .icon-glyph{width:50px;height:50px;font-size:.98rem}.device-type-template-card strong{font-size:.92rem}.device-type-template-card small{font-size:.68rem}.template-info-button{inset-block-start:10px;inset-inline-end:10px;width:26px;height:26px;font-size:.8rem}.template-info-text{position:absolute;z-index:30;inset-inline:8px;top:calc(100% - 6px);margin:0;box-shadow:0 18px 44px #0000002e;border:1px solid var(--iot-border)}.server-device-type-list{gap:6px}.server-device-type-row{min-height:58px;padding:8px 10px;border-radius:14px}.server-device-type-row .icon-glyph{width:40px;height:40px;font-size:.9rem}@media(max-width:860px){.device-type-catalog-toolbar.compact-device-type-toolbar{grid-template-columns:1fr}}.device-type-template-card .template-info-text{max-width:calc(100% - 16px);padding:12px 14px;border:1px solid color-mix(in srgb,var(--iot-accent),var(--iot-border) 58%);border-radius:14px;background:var(--iot-surface-strong);color:var(--iot-text);box-shadow:0 22px 52px #0f172a3d;font-size:.78rem;font-weight:750;line-height:1.45;-webkit-backdrop-filter:none;backdrop-filter:none}.device-type-template-card .template-info-text:before{content:"";position:absolute;inset-block-start:-6px;inset-inline-end:24px;width:10px;height:10px;transform:rotate(45deg);border-inline-start:1px solid color-mix(in srgb,var(--iot-accent),var(--iot-border) 58%);border-block-start:1px solid color-mix(in srgb,var(--iot-accent),var(--iot-border) 58%);background:var(--iot-surface-strong)}.device-type-template-card:has(.template-info-text){z-index:35}.schema-scroll-profile.header-profile{white-space:normal;line-height:1.25}.no-main-scroll-device-type{display:grid!important;grid-template-columns:minmax(270px,350px) minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto auto;grid-template-areas:"side builder" "validation builder" "actions actions";gap:12px;height:calc(min(94dvh,980px) - 118px);min-height:0;margin-top:12px;overflow:hidden!important;padding:0;contain:layout paint style}.no-main-scroll-device-type .device-type-side-stack{grid-area:side;display:grid;gap:10px;align-content:start;min-height:0;overflow-y:auto;overflow-x:hidden;padding-inline-end:4px;overscroll-behavior:contain;scrollbar-gutter:stable;contain:layout paint style;background:var(--iot-surface-strong)}.no-main-scroll-device-type .device-type-basic-card,.no-main-scroll-device-type .schema-version-card,.no-main-scroll-device-type .schema-validation-card{padding:10px;gap:8px;border-radius:16px;box-shadow:none;background:var(--iot-surface-strong);contain:layout paint style}.no-main-scroll-device-type .device-type-basic-card h3,.no-main-scroll-device-type .schema-version-card h3,.no-main-scroll-device-type .schema-validation-card h3{margin:0;font-size:.96rem}.no-main-scroll-device-type .device-type-basic-card label,.no-main-scroll-device-type .schema-validation-card label{gap:4px}.no-main-scroll-device-type .device-type-basic-card input,.no-main-scroll-device-type .device-type-basic-card select,.no-main-scroll-device-type .device-type-basic-card textarea,.no-main-scroll-device-type .schema-validation-card textarea{min-height:34px;padding:.48rem .58rem;border-radius:10px}.no-main-scroll-device-type .device-type-basic-card textarea{min-height:56px;max-height:82px}.no-main-scroll-device-type .schema-version-list{max-height:112px;overflow-y:auto}.no-main-scroll-device-type .v2-builder-card{grid-area:builder;height:auto!important;max-height:none!important;min-height:0;overflow:hidden;border-radius:18px;padding:10px;box-shadow:none;background:var(--iot-surface-strong);contain:layout paint style}.no-main-scroll-device-type .schema-validation-card{grid-area:validation;min-height:0}.no-main-scroll-device-type .schema-validation-card .schema-builder-header,.no-main-scroll-device-type .schema-builder-card .schema-builder-header{position:static!important;margin:0 0 8px!important;padding:0 0 8px!important;border-bottom:1px solid var(--iot-border);background:var(--iot-surface-strong)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important}.no-main-scroll-device-type .schema-validation-card textarea{min-height:70px;max-height:92px;resize:none}.no-main-scroll-device-type .designer-actions{grid-area:actions;min-height:48px;padding:8px 2px 0;border-top:1px solid var(--iot-border);background:var(--iot-surface-strong);contain:layout paint style}.no-main-scroll-device-type .schema-designer-layout{height:100%;min-height:0;grid-template-columns:132px minmax(260px,.82fr) minmax(360px,1.18fr);gap:8px;contain:layout paint style}.no-main-scroll-device-type .schema-field-virtual-list,.no-main-scroll-device-type .field-settings-scroll,.no-main-scroll-device-type .schema-category-rail{background:var(--iot-surface-strong);box-shadow:none;transform:none;will-change:auto}.no-main-scroll-device-type .schema-field-virtual-list .schema-field-card{height:60px;min-height:60px;max-height:60px;margin-block-end:6px;border-radius:10px}@media(max-width:1180px){.no-main-scroll-device-type{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(560px,1fr) auto auto;grid-template-areas:"side" "builder" "validation" "actions";overflow-y:auto!important;height:min(86dvh,900px)}.no-main-scroll-device-type .device-type-side-stack{max-height:280px}}.device-type-designer.schema-designer-v2{width:min(1680px,100vw - 24px);height:min(94dvh,980px);max-height:none;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.device-type-designer.schema-designer-v2 .designer-header{min-height:0;padding-bottom:10px;border-bottom:1px solid var(--iot-border)}.device-type-designer.schema-designer-v2 .designer-title p{max-width:760px}.device-type-designer.schema-designer-v2 .schema-header-actions{max-width:min(42vw,560px)}.no-main-scroll-device-type{height:100%!important;max-height:none;min-height:0;margin-top:10px;padding:0 4px 0 0;grid-template-rows:minmax(0,1fr) auto auto;overflow:hidden!important}.no-main-scroll-device-type .designer-actions{position:relative;z-index:5;min-height:56px;padding:10px 2px 2px;align-self:end;background:var(--iot-surface-strong)}.no-main-scroll-device-type .designer-actions .iot-button{min-height:42px}.no-main-scroll-device-type .v2-builder-card,.no-main-scroll-device-type .device-type-side-stack,.no-main-scroll-device-type .schema-validation-card,.no-main-scroll-device-type .schema-designer-layout,.no-main-scroll-device-type .schema-field-settings,.no-main-scroll-device-type .schema-field-virtual-list,.no-main-scroll-device-type .field-settings-scroll{min-height:0}.no-main-scroll-device-type .v2-builder-card{display:grid;grid-template-rows:auto minmax(0,1fr)}.no-main-scroll-device-type .schema-validation-card{max-height:230px;overflow:hidden}.no-main-scroll-device-type .schema-validation-card textarea{min-height:68px;max-height:96px}@media(max-width:1180px){.device-type-designer.schema-designer-v2{width:calc(100vw - 18px);height:calc(100dvh - 18px)}.device-type-designer.schema-designer-v2 .designer-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.device-type-designer.schema-designer-v2 .designer-title p,.device-type-designer.schema-designer-v2 .schema-summary-pills,.device-type-designer.schema-designer-v2 .schema-header-actions{max-width:100%}.device-type-designer.schema-designer-v2 .schema-summary-pills,.device-type-designer.schema-designer-v2 .schema-header-actions{grid-column:1/-1;margin-inline-start:0;justify-content:flex-start}.no-main-scroll-device-type{height:100%!important;overflow-y:auto!important;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(580px,1fr) auto auto;grid-template-areas:"side" "builder" "validation" "actions";padding-inline-end:4px}.no-main-scroll-device-type .device-type-side-stack{max-height:34dvh}.no-main-scroll-device-type .designer-actions{position:sticky;bottom:0;border-radius:14px 14px 0 0;box-shadow:0 -12px 24px #0f172a14}}@media(max-width:720px){.device-type-designer-backdrop{padding:0;place-items:stretch}.device-type-designer.schema-designer-v2{width:100vw;height:100dvh;border-radius:0;padding:10px}.device-type-designer.schema-designer-v2 .designer-header{grid-template-columns:minmax(0,1fr) 38px;gap:8px;padding-bottom:8px}.device-type-designer.schema-designer-v2 .designer-title{gap:8px}.device-type-designer.schema-designer-v2 .designer-title .icon-glyph{width:44px;height:44px;font-size:.9rem}.device-type-designer.schema-designer-v2 .designer-title h2{font-size:1.05rem;line-height:1.1}.device-type-designer.schema-designer-v2 .designer-title p,.schema-summary-pills{display:none}.schema-header-actions{gap:6px}.schema-header-actions .iot-button{min-height:34px;padding:0 10px;font-size:.78rem}.no-main-scroll-device-type{margin-top:8px;gap:8px;grid-template-rows:auto minmax(520px,1fr) auto auto}.no-main-scroll-device-type .device-type-side-stack{max-height:38dvh}.no-main-scroll-device-type .schema-builder-header{display:grid;grid-template-columns:minmax(0,1fr);align-items:start}.no-main-scroll-device-type .schema-builder-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:0;width:100%}.no-main-scroll-device-type .schema-builder-actions .schema-field-search,.no-main-scroll-device-type .schema-builder-actions .schema-scroll-profile{grid-column:1/-1;width:100%;max-width:none}.no-main-scroll-device-type .schema-designer-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(220px,.9fr) minmax(260px,1.1fr);gap:8px}.no-main-scroll-device-type .schema-category-rail{display:flex;overflow-x:auto;overflow-y:hidden;padding-bottom:4px}.no-main-scroll-device-type .schema-category-rail button{min-width:132px;width:auto;flex:0 0 auto}.no-main-scroll-device-type .schema-field-virtual-list{max-height:260px}.no-main-scroll-device-type .schema-field-settings{min-height:280px}.no-main-scroll-device-type .field-settings-scroll{max-height:260px}.no-main-scroll-device-type .two-cols{grid-template-columns:1fr}.no-main-scroll-device-type .designer-actions{display:grid;grid-template-columns:1fr;gap:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}}.map-shell{position:relative;height:100%;width:100%;overflow:hidden;border-radius:var(--iot-radius-lg);background:#101827}.map-container{position:absolute;inset:0;background:radial-gradient(circle at 18% 20%,rgba(80,255,176,.09),transparent 24rem),radial-gradient(circle at 80% 78%,rgba(96,125,255,.1),transparent 28rem),#08111f}.map-container.loading{filter:saturate(.8) brightness(.82)}.map-status{position:absolute;z-index:6;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:14px;padding:16px 18px;min-width:min(420px,100% - 36px)}[dir=rtl] iot-map-dashboard .map-status{transform:translate(50%,-50%)}.map-status small{color:var(--iot-muted);display:block;margin-top:3px}.map-status.error{border-color:color-mix(in srgb,var(--iot-danger),transparent 42%)}.spinner{width:24px;height:24px;border-radius:999px;border:3px solid color-mix(in srgb,var(--iot-accent),transparent 70%);border-top-color:var(--iot-accent);animation:spin .9s linear infinite}@keyframes spin{to{rotate:360deg}}.map-floating-dock{position:absolute;z-index:4;display:flex;align-items:center;gap:2px;padding:4px;border-radius:999px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 55%);-webkit-backdrop-filter:blur(8px) saturate(1.1);backdrop-filter:blur(8px) saturate(1.1);box-shadow:0 4px 12px #0000001f;opacity:.7;transition:opacity .14s ease,background .14s ease,box-shadow .14s ease;-webkit-user-select:none;user-select:none;touch-action:none}.map-floating-dock:hover,.map-floating-dock:focus-within,.map-floating-dock.dragging{opacity:1;background:color-mix(in srgb,var(--iot-surface-strong),transparent 12%);box-shadow:0 14px 40px #00000047}.map-floating-dock.dragging{cursor:grabbing;box-shadow:0 24px 80px #0000007a,0 0 0 1px color-mix(in srgb,var(--iot-accent),transparent 45%)}iot-map-dashboard .dock-handle{width:18px;min-height:30px;display:grid;place-items:center;border-radius:999px;color:var(--iot-muted);cursor:grab}iot-map-dashboard .dock-handle:hover{color:var(--iot-text);background:var(--iot-control-bg)}.drag-grip{font-weight:900;letter-spacing:-5px;transform:rotate(90deg)}iot-map-dashboard .dock-actions{display:flex;align-items:center;gap:4px}iot-map-dashboard .dock-close{width:26px;height:26px;font-size:.92rem}iot-map-dashboard .dock-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;color:var(--iot-muted);background:transparent;border-radius:999px;padding:.32rem .55rem;font-size:.76rem;line-height:1.15;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease;white-space:nowrap}iot-map-dashboard .dock-btn:hover{color:var(--iot-text);background:var(--iot-control-bg-hover)}iot-map-dashboard .dock-btn.active{border-color:color-mix(in srgb,var(--iot-accent),transparent 45%);background:color-mix(in srgb,var(--iot-accent),transparent 86%);color:var(--iot-accent)}iot-map-dashboard .dock-icon{font-weight:600;font-size:.9rem;opacity:.75}iot-map-dashboard .dock-btn:hover .dock-icon,iot-map-dashboard .dock-btn.active .dock-icon{opacity:1}iot-map-dashboard .floating-panel.over-building{z-index:130}iot-map-dashboard .floating-panel.map-tools.moved{left:var(--tools-panel-left, 12px)!important;top:var(--tools-panel-top, 72px)!important;right:auto!important;bottom:auto!important;transform:none!important}iot-map-dashboard .floating-panel.map-tools .floating-panel-header.is-drag-handle{cursor:grab;-webkit-user-select:none;user-select:none}iot-map-dashboard .floating-panel.map-tools.dragging .floating-panel-header.is-drag-handle{cursor:grabbing}iot-map-dashboard .map-floating-dock.over-building{z-index:130}.floating-panel{position:absolute;z-index:5;border-radius:22px;box-shadow:0 22px 70px #00000070,inset 0 1px #ffffff14;background:color-mix(in srgb,var(--iot-surface-strong),transparent 10%);-webkit-backdrop-filter:blur(20px) saturate(1.25);backdrop-filter:blur(20px) saturate(1.25)}.layers-panel{inset-block-start:84px;inset-inline-start:18px;width:min(330px,100% - 36px);max-height:calc(100% - 110px);display:flex;flex-direction:column;overflow:hidden}.floating-panel-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 15px;border-bottom:1px solid var(--iot-border)}.icon-btn{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;color:var(--iot-text);background:var(--iot-control-bg);border:1px solid var(--iot-border);cursor:pointer;font-size:1.22rem;line-height:1}.icon-btn:hover{border-color:color-mix(in srgb,var(--iot-accent),transparent 35%);background:var(--iot-control-bg-hover)}.layer-list{padding:10px;overflow:auto;display:grid;gap:8px}.layer-row{text-align:start;color:var(--iot-muted);border:1px solid var(--iot-border);background:var(--iot-control-bg);border-radius:15px;padding:11px 12px;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;cursor:pointer;transition:.15s ease}.layer-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--iot-accent),transparent 35%);background:var(--iot-control-bg-hover)}.layer-row.active{color:var(--iot-text);border-color:color-mix(in srgb,var(--iot-accent),transparent 42%);background:color-mix(in srgb,var(--iot-accent),transparent 88%)}.layer-check{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;border:1px solid var(--iot-border-strong);color:var(--iot-accent);font-weight:900}.map-tools{inset-block-start:84px;inset-inline-end:18px;width:min(430px,100% - 36px);overflow:hidden}.map-tools-content{display:grid;gap:12px;padding:12px}.segmented{display:flex;gap:6px;padding:4px;border:1px solid var(--iot-border);border-radius:16px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 10%)}.segmented .iot-button{flex:1;padding:.58rem .72rem;border-radius:12px;white-space:nowrap}.segmented .iot-button.active{background:linear-gradient(135deg,color-mix(in srgb,var(--iot-accent),transparent 44%),color-mix(in srgb,var(--iot-accent-2),transparent 66%));border-color:color-mix(in srgb,var(--iot-accent),transparent 32%);color:#fff}.map-style-label{display:grid;gap:7px;color:var(--iot-muted);font-size:.82rem}.map-tools select{width:100%;padding:.72rem 2.1rem .72rem .8rem;background-color:var(--iot-control-bg)}[dir=rtl] iot-map-dashboard .map-tools select{padding:.72rem .8rem .72rem 2.1rem}.map-facet-toggle{position:absolute;z-index:8;inset-block-start:14px;inset-inline-end:14px;width:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--iot-border-strong),transparent 24%);border-radius:12px;color:color-mix(in srgb,var(--iot-text),transparent 28%);background:color-mix(in srgb,var(--iot-surface-strong),transparent 22%);box-shadow:0 10px 28px #00000038,inset 0 1px #ffffff12;-webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15);cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease,transform .15s ease}.map-facet-toggle:hover,.map-facet-toggle.active{color:#fff;border-color:color-mix(in srgb,var(--iot-accent),transparent 38%);background:color-mix(in srgb,var(--iot-accent),transparent 66%);transform:translateY(-1px)}.map-facet-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}.map-fit-filtered{color:var(--iot-accent)}.map-fit-filtered svg{stroke-linecap:round}.map-fit-filtered.working svg{animation:map-fit-filtered-pulse .9s ease-in-out infinite}.map-fit-within-view:not(.active){color:color-mix(in srgb,var(--iot-text),transparent 45%)}.map-fit-filtered:disabled{cursor:progress;transform:none}@keyframes map-fit-filtered-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.82);opacity:.55}}@media(prefers-reduced-motion:reduce){.map-fit-filtered.working svg{animation:none}}.map-facet-badge{position:absolute;inset-block-start:-6px;inset-inline-end:-6px;min-width:18px;height:18px;display:grid;place-items:center;padding-inline:4px;border:2px solid var(--iot-surface-strong);border-radius:999px;color:#fff;background:var(--iot-accent);font-size:.65rem;font-weight:900}.map-facet-panel{position:absolute;z-index:7;inset-block:62px 14px;inset-inline-end:14px;width:min(390px,100% - 28px);display:flex;flex-direction:column;overflow:hidden;border-radius:22px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 5%);box-shadow:0 26px 80px #0000007a,inset 0 1px #ffffff14;-webkit-backdrop-filter:blur(22px) saturate(1.22);backdrop-filter:blur(22px) saturate(1.22);animation:map-facet-enter .18s cubic-bezier(.2,.8,.2,1)}@keyframes map-facet-enter{0%{opacity:0;transform:translate(14px) scale(.985)}to{opacity:1;transform:translate(0) scale(1)}}[dir=rtl] iot-map-dashboard .map-facet-panel{animation-name:map-facet-enter-rtl}@keyframes map-facet-enter-rtl{0%{opacity:0;transform:translate(-14px) scale(.985)}to{opacity:1;transform:translate(0) scale(1)}}.map-facet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:17px 17px 14px;border-bottom:1px solid var(--iot-border)}.map-facet-header small{color:var(--iot-accent);font-size:.67rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.map-facet-header h2{margin:3px 0 2px;font-size:1.12rem}.map-facet-header p{margin:0;color:var(--iot-muted);font-size:.76rem}.map-facet-toolbar{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 14px;border-bottom:1px solid var(--iot-border);color:var(--iot-muted);font-size:.75rem}.map-facet-toolbar button,.map-facet-clear{border:0;color:var(--iot-accent);background:transparent;cursor:pointer;font:inherit;font-weight:750}.map-facet-toolbar button:disabled{color:var(--iot-muted);opacity:.5;cursor:default}.map-facet-content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:8px}.map-facet-message{min-height:90px;display:flex;align-items:center;justify-content:center;gap:10px;padding:16px;color:var(--iot-muted);text-align:center;font-size:.8rem}.map-facet-message.error{min-height:auto;margin:4px;border:1px solid color-mix(in srgb,var(--iot-danger),transparent 58%);border-radius:13px;color:color-mix(in srgb,var(--iot-danger),white 22%);background:color-mix(in srgb,var(--iot-danger),transparent 90%)}.map-facet-message .spinner{width:18px;height:18px;border-width:2px}.map-facet-group{border-bottom:1px solid color-mix(in srgb,var(--iot-border),transparent 24%)}.map-facet-group:last-child{border-bottom:0}.map-facet-group>summary{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 8px;color:var(--iot-text);cursor:pointer;list-style:none;font-size:.82rem;font-weight:760}.map-facet-group>summary::-webkit-details-marker{display:none}.map-facet-summary-meta{display:flex;align-items:center;gap:7px;color:var(--iot-muted)}.map-facet-group[open] .map-facet-summary-meta>span:last-child{transform:rotate(180deg)}.map-facet-selection-count{min-width:20px;height:20px;display:grid;place-items:center;padding-inline:5px;border-radius:999px;color:#fff;background:var(--iot-accent);font-size:.65rem}.map-facet-group-body{display:grid;gap:7px;padding:0 6px 12px}.map-facet-options{display:grid;gap:5px}.map-facet-option{min-height:38px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 9px;border:1px solid transparent;border-radius:11px;color:var(--iot-muted);cursor:pointer;font-size:.77rem;transition:color .13s ease,background .13s ease,border-color .13s ease}.map-facet-option:hover{color:var(--iot-text);background:var(--iot-control-bg)}.map-facet-option.selected{color:var(--iot-text);border-color:color-mix(in srgb,var(--iot-accent),transparent 62%);background:color-mix(in srgb,var(--iot-accent),transparent 88%)}.map-facet-option input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}.map-facet-checkbox{width:18px;height:18px;display:grid;place-items:center;border:1px solid var(--iot-border-strong);border-radius:6px;color:var(--iot-accent);font-size:.68rem;font-weight:900}.map-facet-option.selected .map-facet-checkbox{border-color:color-mix(in srgb,var(--iot-accent),transparent 28%);background:color-mix(in srgb,var(--iot-accent),transparent 82%)}.map-facet-option-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-facet-option-count{min-width:25px;padding:3px 6px;border-radius:999px;color:var(--iot-muted);background:var(--iot-control-bg);text-align:center;font-size:.66rem;font-variant-numeric:tabular-nums}.map-facet-option.missing{margin-top:2px;border-top:1px dashed var(--iot-border);border-radius:0 0 11px 11px}.map-facet-range{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8px}.map-facet-range label{display:grid;gap:4px;color:var(--iot-muted);font-size:.68rem}.map-facet-range input{width:100%;min-width:0;padding:.55rem .62rem}.map-facet-unit{grid-column:1/-1;color:var(--iot-muted);font-size:.68rem}.map-facet-clear{justify-self:start;padding:4px 2px;font-size:.7rem}.map-facet-footer{flex:none;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-top:1px solid var(--iot-border);color:var(--iot-muted);font-size:.74rem}.map-facet-footer>span{display:inline-flex;align-items:center;gap:7px}.map-facet-footer .iot-button{min-width:118px;padding:.6rem .8rem}.map-facet-inline-spinner{width:12px;height:12px;border:2px solid color-mix(in srgb,var(--iot-accent),transparent 72%);border-top-color:var(--iot-accent);border-radius:999px;animation:spin .9s linear infinite}.selected-card{position:absolute;z-index:4;inset-inline-end:18px;inset-block-end:18px;width:min(340px,100% - 36px);padding:18px}.selected-card small{color:var(--iot-muted)}.selected-card h2{margin:6px 42px 8px 0}[dir=rtl] iot-map-dashboard .selected-card h2{margin:6px 0 8px 42px}.selected-card p{color:var(--iot-muted);display:flex;align-items:center;gap:8px}.close-selection{position:absolute;inset-block-start:12px;inset-inline-end:12px}.selected-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.selected-actions .iot-button{padding-inline:.55rem}iot-map-dashboard .mapboxgl-marker{position:absolute;top:0;left:0;will-change:transform}iot-map-dashboard .mapboxgl-marker.asset-marker{pointer-events:auto}iot-map-dashboard .asset-marker{--marker-color: #4caf50;--marker-scale: 1;width:calc(48px * var(--marker-scale));height:calc(48px * var(--marker-scale));display:block;padding:0;border:0;border-radius:999px;color:#fff;background:transparent;cursor:pointer;position:absolute;top:0;left:0;line-height:1;will-change:transform;overflow:visible;transition:opacity .18s ease,filter .18s ease}iot-map-dashboard .asset-marker .marker-core{position:absolute;left:50%;top:50%;width:42px;height:42px;display:grid;place-items:center;border-radius:999px;border:2px solid rgba(255,255,255,.88);background:var(--marker-color);box-shadow:0 0 20px color-mix(in srgb,var(--marker-color),transparent 24%);transform:translate(-50%,-50%) scale(var(--marker-scale));transform-origin:center center;will-change:transform;transition:transform .13s ease,box-shadow .13s ease,opacity .18s ease,filter .18s ease}iot-map-dashboard .asset-marker:hover .marker-core{transform:translate(-50%,-50%) scale(calc(var(--marker-scale) + .12))}iot-map-dashboard .asset-marker.badges-hidden .marker-badges{display:none}iot-map-dashboard .asset-marker .marker-badges,iot-map-dashboard .indoor-remote-core .marker-badges{position:absolute;left:50%;top:50%;display:flex;gap:max(1px,var(--badge-size, 14px) * var(--badge-scale, 1) / 10);transform:translate(-50%,calc(-50% - 26px * var(--marker-scale, 1))) scale(var(--marker-scale, 1));transform-origin:center bottom;pointer-events:none}iot-map-dashboard .asset-marker .marker-badges .marker-badge,iot-map-dashboard .indoor-remote-core .marker-badges .marker-badge{pointer-events:auto}iot-map-dashboard .asset-marker .marker-badge.quiet,iot-map-dashboard .indoor-remote-core .marker-badge.quiet{background:#ffffff8c;border-color:var(--badge-color, var(--marker-color));box-shadow:inset 0 0 0 1.5px #fffc,0 1px 3px #00000040;opacity:.85}iot-map-dashboard .asset-marker .marker-badge.has-image,iot-map-dashboard .indoor-remote-core .marker-badge.has-image{border-color:#fffffff2;background:#ffffffeb}iot-map-dashboard .asset-marker .marker-badge,iot-map-dashboard .indoor-remote-core .marker-badge{position:relative;cursor:pointer;transition:transform 90ms ease-out}iot-map-dashboard .asset-marker .marker-badge:hover,iot-map-dashboard .indoor-remote-core .marker-badge:hover{transform:scale(1.9);z-index:3}iot-map-dashboard .asset-marker .marker-badge-name,iot-map-dashboard .indoor-remote-core .marker-badge-name{position:absolute;left:50%;bottom:calc(100% + 5px);visibility:hidden;opacity:0;transition:visibility 0s linear 1s,opacity .12s ease-out 1s;max-width:150px;padding:2px 7px;transform:translate(-50%) scale(.62);transform-origin:center bottom;border-radius:999px;background:#111827eb;color:#fff;font-size:.72rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}iot-map-dashboard .asset-marker .marker-badge:hover .marker-badge-name,iot-map-dashboard .indoor-remote-core .marker-badge:hover .marker-badge-name{visibility:visible;opacity:1}iot-map-dashboard .asset-marker .marker-badge:not(:hover) .marker-badge-name,iot-map-dashboard .indoor-remote-core .marker-badge:not(:hover) .marker-badge-name{transition:visibility 0s linear 0s,opacity 80ms ease-out 0s}iot-map-dashboard .asset-marker .marker-badge.tinted,iot-map-dashboard .indoor-remote-core .marker-badge.tinted{background:var(--badge-tint);-webkit-mask-image:var(--badge-mask);mask-image:var(--badge-mask);-webkit-mask-size:78% 78%;mask-size:78% 78%;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;border-color:transparent}iot-map-dashboard .asset-marker .marker-badge.tinted img,iot-map-dashboard .indoor-remote-core .marker-badge.tinted img{visibility:hidden}iot-map-dashboard .asset-marker .marker-badge img,iot-map-dashboard .indoor-remote-core .marker-badge img{display:block;width:100%;height:100%;object-fit:contain}iot-map-dashboard .asset-marker .marker-core .marker-wave,iot-map-dashboard .indoor-remote-core .marker-wave{position:absolute;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border:2px solid var(--wave-color, var(--marker-color));border-radius:999px;pointer-events:none;opacity:0;animation:marker-wave-out var(--wave-duration, .7s) ease-out forwards}@keyframes marker-wave-out{0%{opacity:.85;transform:scale(.5)}to{opacity:0;transform:scale(3.4)}}@media(prefers-reduced-motion:reduce){iot-map-dashboard .asset-marker .marker-core .marker-wave,iot-map-dashboard .indoor-remote-core .marker-wave{animation-duration:1ms}}iot-map-dashboard .asset-marker .marker-badge,iot-map-dashboard .indoor-remote-core .marker-badge{width:calc(var(--badge-size, 14px) * var(--badge-scale, 1));height:calc(var(--badge-size, 14px) * var(--badge-scale, 1));border-radius:999px;border:1.5px solid rgba(255,255,255,.9);background:var(--badge-color, var(--marker-color));box-shadow:0 1px 4px #00000059}iot-map-dashboard .asset-marker .marker-badge img,iot-map-dashboard .indoor-remote-core .marker-badge img{border-radius:999px}iot-map-dashboard .asset-marker .marker-badge.has-image:not(.tinted),iot-map-dashboard .indoor-remote-core .marker-badge.has-image:not(.tinted){border:none;background:transparent;box-shadow:none}iot-map-dashboard .asset-marker .marker-badge.has-image:not(.tinted) img,iot-map-dashboard .indoor-remote-core .marker-badge.has-image:not(.tinted) img{width:119.6%;height:119.6%;margin:-9.8%}iot-map-dashboard .asset-marker.status-critical .marker-core{animation:pulse-critical 1.2s infinite}iot-map-dashboard .asset-marker.status-offline .marker-core{filter:grayscale(.92) brightness(.82);border-style:dashed;border-color:#ffffffb3;box-shadow:0 2px 8px #00000059}iot-map-dashboard .asset-marker.status-offline .glyph{opacity:.72}iot-map-dashboard .asset-marker.status-offline.label-visible .marker-label{opacity:.72;color:#45505c}iot-map-dashboard .asset-marker.status-warning .marker-core{border-color:var(--iot-warning, #f9a825);box-shadow:0 0 0 3px color-mix(in srgb,var(--iot-warning, #f9a825),transparent 62%),0 0 20px color-mix(in srgb,var(--marker-color),transparent 24%)}iot-map-dashboard .asset-marker .glyph{font-weight:900;line-height:1;pointer-events:none}iot-map-dashboard .asset-marker .marker-label{position:absolute;left:50%;top:calc(50% + 28px);transform:translate(-50%) translateY(-3px);max-width:148px;padding:3px 7px;border:1px solid rgba(15,23,32,.07);border-radius:7px;background:#ffffffbd;color:#16202b;box-shadow:0 1px 1.5px #0f172029,0 3px 10px #0f172014;-webkit-backdrop-filter:blur(6px) saturate(1.1);backdrop-filter:blur(6px) saturate(1.1);font-size:.7rem;font-weight:600;line-height:1.05;letter-spacing:.01em;text-align:center;direction:auto;unicode-bidi:plaintext;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;opacity:0;transition:opacity .13s ease,transform .13s ease}iot-map-dashboard .asset-marker.label-visible .marker-label{opacity:.94;transform:translate(-50%) translateY(0)}iot-map-dashboard .asset-marker:hover .marker-label,iot-map-dashboard .asset-marker.asset-selected .marker-label{opacity:1;background:#ffffffe6}iot-map-dashboard .asset-marker:has(.marker-badge:hover) .marker-label{opacity:0}iot-map-dashboard .asset-marker.asset-dimmed{opacity:.12;filter:grayscale(1) saturate(.25);transition:opacity .18s ease,filter .18s ease}iot-map-dashboard .asset-marker.asset-dimmed .marker-core{box-shadow:none}iot-map-dashboard .asset-marker.asset-dimmed .marker-label{opacity:0}iot-map-dashboard .asset-marker.asset-selected{opacity:1;z-index:10}iot-map-dashboard .asset-marker.asset-selected .marker-core{transform:translate(-50%,-50%) scale(calc(var(--marker-scale) + .14));box-shadow:0 0 0 7px color-mix(in srgb,var(--marker-color),transparent 76%),0 0 30px color-mix(in srgb,var(--marker-color),transparent 18%)}iot-map-dashboard .asset-marker.asset-locating{--locate-size: max(64px, calc(58px * var(--marker-scale)));opacity:1;filter:none;z-index:12}iot-map-dashboard .asset-marker.asset-locating .marker-label{opacity:1}iot-map-dashboard .asset-marker.asset-locating:before,iot-map-dashboard .asset-marker.asset-locating:after,iot-map-dashboard .indoor-remote-wrap.locating .indoor-remote-core:before,iot-map-dashboard .indoor-remote-wrap.locating .indoor-remote-core:after{content:"";position:absolute;left:50%;top:50%;z-index:-1;width:var(--locate-size, 64px);height:var(--locate-size, 64px);border:3px solid var(--iot-accent);border-radius:999px;pointer-events:none;transform:translate(-50%,-50%)}iot-map-dashboard .asset-marker.asset-locating:before,iot-map-dashboard .indoor-remote-wrap.locating .indoor-remote-core:before{background:radial-gradient(circle,color-mix(in srgb,var(--iot-accent),transparent 40%) 0%,color-mix(in srgb,var(--iot-accent),transparent 82%) 62%,transparent 72%);box-shadow:0 0 0 2px #ffffffeb,0 0 0 4px #0000004d,0 0 34px 10px color-mix(in srgb,var(--iot-accent),transparent 22%);animation:iot-locate-breathe 1.6s ease-in-out infinite}iot-map-dashboard .asset-marker.asset-locating:after,iot-map-dashboard .indoor-remote-wrap.locating .indoor-remote-core:after{animation:iot-locate-ripple 1.6s ease-out infinite}iot-map-dashboard .indoor-remote-wrap.locating{z-index:9}iot-map-dashboard .indoor-remote-wrap.locating .indoor-remote-core{border-color:var(--iot-accent);background:color-mix(in srgb,var(--iot-accent),transparent 70%)}@keyframes iot-locate-breathe{0%,to{transform:translate(-50%,-50%) scale(.85);opacity:1}50%{transform:translate(-50%,-50%) scale(1.5);opacity:.6}}@keyframes iot-locate-ripple{0%{transform:translate(-50%,-50%) scale(.9);opacity:.95}to{transform:translate(-50%,-50%) scale(2.8);opacity:0}}@keyframes pulse-critical{0%,to{box-shadow:0 0 14px #f443368c}50%{box-shadow:0 0 30px #f44336}}@media(max-width:760px){.map-floating-dock{max-width:calc(100% - 20px);border-radius:18px}.dock-handle{width:24px;min-height:38px}.dock-actions{min-width:0}iot-map-dashboard .dock-btn{justify-content:center;padding-inline:.4rem}.dock-btn span:last-child{display:none}.layers-panel,.map-tools{inset-inline:12px;inset-block-start:76px;width:auto;max-height:44%}.segmented{flex-direction:column}.selected-card{inset-inline:12px;inset-block-end:12px;width:auto}.selected-actions{grid-template-columns:1fr}.map-facet-toggle{inset-block-start:10px;inset-inline-end:10px}.map-facet-panel{inset-block:56px 10px;inset-inline:10px;width:auto;border-radius:18px}.map-facet-header{padding:14px}.map-facet-range{grid-template-columns:1fr}.map-facet-unit{grid-column:1}}.floating-panel-footer{border-top:1px solid var(--iot-border);padding:10px;display:flex;justify-content:flex-end}.close-panel-btn{min-width:128px}.device-radial-menu{position:absolute;inset:0;z-index:7;pointer-events:none}.device-radial-menu.over-building{z-index:130}.device-radial-menu.over-form{z-index:100}.radial-orbit{pointer-events:none;position:absolute;border-radius:999px;background:radial-gradient(circle at center,transparent 0 32px,color-mix(in srgb,var(--iot-surface-strong),transparent 74%) 33px 100%);border:1px solid color-mix(in srgb,var(--iot-border-strong),transparent 50%);box-shadow:inset 0 1px #ffffff2e,0 18px 48px #0003;-webkit-backdrop-filter:blur(8px) saturate(1.05);backdrop-filter:blur(8px) saturate(1.05);animation:radial-orbit-in .13s ease-out}.radial-center-close{pointer-events:auto;position:absolute;left:0;top:0;width:54px;height:54px;transform:translate(-50%,-50%);display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--iot-border-strong),transparent 48%);border-radius:999px;cursor:pointer;background:color-mix(in srgb,var(--iot-surface-strong),transparent 16%);color:var(--iot-muted);box-shadow:0 12px 30px #00000038,inset 0 1px #ffffff2e;-webkit-backdrop-filter:blur(14px) saturate(1.12);backdrop-filter:blur(14px) saturate(1.12);font-size:1.18rem;font-weight:900;transition:transform .14s ease,color .14s ease,border-color .14s ease,background .14s ease}.radial-center-close:hover{transform:translate(-50%,-50%) scale(1.08);color:var(--iot-text);border-color:color-mix(in srgb,var(--iot-accent),transparent 34%);background:color-mix(in srgb,var(--iot-surface-strong),var(--iot-accent) 16%)}.radial-center-close>span{pointer-events:none}.radial-action{pointer-events:auto;position:absolute;width:54px;height:54px;transform:translate(-50%,-50%);display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--iot-border-strong),transparent 38%);border-radius:999px;cursor:pointer;background:color-mix(in srgb,var(--iot-surface-strong),transparent 22%);-webkit-backdrop-filter:blur(14px) saturate(1.18);backdrop-filter:blur(14px) saturate(1.18);color:var(--iot-text);box-shadow:0 16px 34px #00000038,inset 0 1px #ffffff38;font-size:1.08rem;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease,opacity .14s ease;animation:radial-action-in .13s ease-out}.radial-action:hover{transform:translate(-50%,-50%) scale(1.12);border-color:color-mix(in srgb,var(--iot-accent),transparent 28%);background:color-mix(in srgb,var(--iot-surface-strong),var(--iot-accent) 20%);box-shadow:0 20px 46px #00000057,0 0 0 5px color-mix(in srgb,var(--iot-accent),transparent 86%)}.radial-action>span{pointer-events:none}.radial-action:after{content:attr(data-tooltip);position:absolute;left:calc(100% - 12px);bottom:calc(100% + 8px);z-index:2;width:max-content;max-width:170px;padding:7px 10px;border-radius:10px 10px 10px 2px;background:#080d1ae6;color:#fff;box-shadow:0 12px 30px #00000047;border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.75rem;font-weight:800;white-space:nowrap;opacity:0;transform:translate(-3px,4px);pointer-events:none;transition:opacity .12s ease,transform .12s ease}.radial-action:hover:after{opacity:1;transform:translate(0)}.radial-action.danger{color:var(--iot-danger)}.radial-action.danger:hover{border-color:color-mix(in srgb,var(--iot-danger),transparent 30%);background:color-mix(in srgb,var(--iot-surface-strong),var(--iot-danger) 18%);box-shadow:0 20px 46px #00000057,0 0 0 5px color-mix(in srgb,var(--iot-danger),transparent 86%)}@keyframes radial-action-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.72)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes radial-orbit-in{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}.device-properties-card{width:min(390px,100% - 36px)}.property-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 14px}.property-type-pill,.property-status{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--iot-border);background:var(--iot-control-bg);border-radius:999px;padding:.38rem .65rem;color:var(--iot-muted);font-size:.8rem}.property-grid{display:grid;gap:7px;margin-bottom:14px;max-height:230px;overflow:auto;padding-inline-end:3px}.property-row{display:grid;grid-template-columns:minmax(86px,.8fr) minmax(0,1.2fr);gap:8px;align-items:center;border:1px solid var(--iot-border);background:color-mix(in srgb,var(--iot-control-bg),transparent 12%);border-radius:13px;padding:9px 10px}.property-row span{color:var(--iot-muted);font-size:.78rem}.property-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem}.property-empty{color:var(--iot-muted);border:1px dashed var(--iot-border);border-radius:14px;padding:14px;text-align:center}@media(max-width:760px){.radial-action,.radial-center-close{width:48px;height:48px;font-size:1rem}.radial-action:after{display:none}.radial-orbit{background:radial-gradient(circle at center,transparent 0 30px,color-mix(in srgb,var(--iot-surface-strong),transparent 76%) 31px 100%)}}.map-source-pill{position:absolute;z-index:4;inset-inline-start:18px;inset-block-end:18px;display:inline-flex;align-items:center;gap:10px;padding:10px 12px;border-radius:999px;pointer-events:none}.map-source-pill strong{font-size:.8rem}.map-source-pill small{color:var(--iot-muted)}iot-map-dashboard .geohash-marker{width:58px;height:58px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.86);border-radius:999px;cursor:pointer;color:#fff;background:linear-gradient(135deg,#2637ff,#00a7ff);box-shadow:0 0 0 9px #2076ff2e,0 18px 42px #00000047;-webkit-backdrop-filter:blur(8px) saturate(1.1);backdrop-filter:blur(8px) saturate(1.1)}iot-map-dashboard .geohash-marker.super{width:66px;height:66px;background:linear-gradient(135deg,#1a2bd8,#0088d8);box-shadow:0 0 0 5px #ffffff8c,0 0 0 9px #2076ff59,0 0 0 16px #2076ff24,0 18px 42px #00000047}iot-map-dashboard .geohash-marker .geohash-count{min-width:32px;height:32px;display:grid;place-items:center;border-radius:999px;background:#080d1a57;font-weight:950;font-size:.85rem}.building-demo-pane{position:absolute;inset:18px;z-index:8;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border-radius:26px;background:radial-gradient(circle at 8% 12%,color-mix(in srgb,var(--iot-accent),transparent 84%),transparent 26rem),color-mix(in srgb,var(--iot-surface-strong),transparent 5%);box-shadow:0 30px 110px #00000094,inset 0 1px #ffffff1a;-webkit-backdrop-filter:blur(22px) saturate(1.2);backdrop-filter:blur(22px) saturate(1.2)}.building-demo-header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;border-bottom:1px solid var(--iot-border)}.building-demo-header small,.floor-toolbar small{color:var(--iot-muted);display:block;margin-bottom:3px}.building-demo-header h2{margin:0;font-size:clamp(1.05rem,1.6vw,1.45rem)}.building-demo-actions{display:flex;align-items:center;gap:8px}.building-demo-body{min-height:0;display:grid;grid-template-columns:minmax(120px,160px) minmax(0,1fr);gap:14px;padding:14px}.floor-selector{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--iot-border);border-radius:20px;background:color-mix(in srgb,var(--iot-control-bg),transparent 8%);overflow:hidden}.floor-grid{min-height:0;overflow:auto;display:grid;gap:8px;align-content:start}.floor-btn{min-height:58px;display:grid;place-items:center;border:1px solid var(--iot-border);border-radius:16px;background:var(--iot-control-bg);color:var(--iot-text);cursor:pointer;transition:transform .14s ease,border-color .14s ease,background .14s ease}.floor-btn:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--iot-accent),transparent 34%);background:var(--iot-control-bg-hover)}.floor-btn.active{border-color:color-mix(in srgb,var(--iot-accent),transparent 22%);background:linear-gradient(135deg,color-mix(in srgb,var(--iot-accent),transparent 58%),color-mix(in srgb,var(--iot-accent-2),transparent 78%))}.floor-btn span{font-weight:950;font-size:1.2rem;line-height:1}.floor-btn small{color:var(--iot-muted)}.floor-main{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid var(--iot-border);border-radius:22px;background:color-mix(in srgb,var(--iot-control-bg),transparent 18%)}.floor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--iot-border)}.zoom-controls{display:inline-flex;align-items:center;gap:8px;padding:4px;border:1px solid var(--iot-border);border-radius:999px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 24%)}.zoom-controls span{min-width:58px;text-align:center;color:var(--iot-muted);font-weight:850;font-size:.84rem}.floor-plan-viewport{position:relative;min-height:0;overflow:auto;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.035) 1px,transparent 1px),#101827;background-size:28px 28px;cursor:grab;overscroll-behavior:contain}.floor-plan-viewport.moving{cursor:crosshair;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--iot-accent),transparent 35%)}.floor-plan-content{position:relative;min-width:100%;min-height:100%}.floor-plan-canvas{position:absolute;left:0;top:0;transform-origin:top left;border-radius:14px}.floor-svg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 24px 46px rgba(0,0,0,.34))}.floor-icon{--floor-icon-color: #4caf50;position:absolute;z-index:2;width:44px;height:44px;transform:translate(-50%,-50%);border:0;border-radius:999px;background:transparent;color:#fff;cursor:pointer;overflow:visible}.floor-icon-core{width:40px;height:40px;display:grid;place-items:center;border-radius:999px;border:2px solid rgba(255,255,255,.88);background:var(--floor-icon-color);box-shadow:0 0 0 6px color-mix(in srgb,var(--floor-icon-color),transparent 82%),0 0 22px color-mix(in srgb,var(--floor-icon-color),transparent 22%);font-weight:950;line-height:1}.floor-icon:hover .floor-icon-core,.floor-icon.moving-target .floor-icon-core{box-shadow:0 0 0 9px color-mix(in srgb,var(--floor-icon-color),transparent 76%),0 0 32px color-mix(in srgb,var(--floor-icon-color),transparent 10%)}.floor-icon-label{position:absolute;left:50%;top:calc(100% + 4px);transform:translate(-50%);width:max-content;max-width:150px;padding:4px 8px;border-radius:999px;background:#080d1ac2;color:#fff;border:1px solid rgba(255,255,255,.16);font-size:.7rem;font-weight:800;white-space:nowrap;opacity:0;transition:opacity .12s ease;pointer-events:none}.floor-icon:hover .floor-icon-label,.floor-icon.moving-target .floor-icon-label{opacity:1}.floor-icon.status-offline .floor-icon-core{filter:grayscale(.95) brightness(.78)}.floor-icon.status-error .floor-icon-core{animation:pulse-critical 1.2s infinite}.floor-icon.status-maintenance .floor-icon-core{box-shadow:0 0 0 7px #ffc10738,0 0 24px #ffc10785}.floor-icon-radial-menu{position:absolute;inset:0;z-index:4;pointer-events:none}.floor-radial-orbit,.floor-radial-action,.floor-radial-center{position:absolute}.floor-radial-action,.floor-radial-center{width:46px;height:46px;font-size:.96rem}@media(max-width:840px){.building-demo-pane{inset:10px}.building-demo-body{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.floor-selector{grid-template-rows:auto auto}.floor-grid{grid-template-columns:repeat(9,minmax(54px,1fr));overflow-x:auto}.floor-btn{min-height:52px}.floor-toolbar{align-items:stretch;flex-direction:column}.zoom-controls{justify-content:center}}.map-container.map-hidden{opacity:0;pointer-events:none}.map-shell.building-mode{background:var(--iot-bg)}.map-shell.building-mode .map-container{visibility:hidden}.map-shell.building-mode .building-demo-pane{position:absolute;inset:0;z-index:9;border-radius:0;border:0;background:radial-gradient(circle at 10% 8%,color-mix(in srgb,var(--iot-accent),transparent 86%),transparent 28rem),radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--iot-accent-2),transparent 88%),transparent 26rem),var(--iot-bg);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.back-to-map{display:inline-flex;align-items:center;gap:8px;min-width:126px;justify-content:center}.floor-tool-groups{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.floor-mode-controls{display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--iot-border);border-radius:999px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 24%)}.tool-pill{min-height:34px;border:1px solid transparent;border-radius:999px;padding:0 12px;color:var(--iot-muted);background:transparent;cursor:pointer;font-weight:850;font-size:.78rem;transition:background .14s ease,color .14s ease,border-color .14s ease}.tool-pill:hover{color:var(--iot-text);background:var(--iot-control-bg-hover)}.tool-pill.active{color:#fff;border-color:color-mix(in srgb,var(--iot-accent),transparent 34%);background:linear-gradient(135deg,color-mix(in srgb,var(--iot-accent),transparent 42%),color-mix(in srgb,var(--iot-accent-2),transparent 58%))}.building-demo-pane.floor-fullscreen{position:fixed!important;inset:0!important;z-index:1000;border-radius:0!important;border:0!important;min-height:100dvh}.fullscreen-floor.active{color:#fff;border-color:color-mix(in srgb,var(--iot-accent),transparent 32%);background:linear-gradient(135deg,color-mix(in srgb,var(--iot-accent),transparent 35%),color-mix(in srgb,var(--iot-accent-2),transparent 48%))}.floor-plan-viewport.pan-mode{cursor:grab}.floor-plan-viewport.pan-mode.dragging{cursor:grabbing}.floor-plan-viewport.zoom-box-mode,.floor-plan-viewport.zoom-box-mode.dragging,.floor-plan-viewport.moving{cursor:crosshair}.floor-zoom-selection{position:absolute;z-index:5;pointer-events:none;border:2px solid color-mix(in srgb,var(--iot-accent),white 18%);border-radius:10px;background:color-mix(in srgb,var(--iot-accent),transparent 78%);box-shadow:0 0 0 1px #ffffff47,0 12px 32px #0000003d}@media(max-width:980px){.floor-toolbar{align-items:stretch;flex-direction:column}.floor-tool-groups{justify-content:flex-start}}@media(max-width:860px){:root{--iot-topbar-height: 58px;--iot-mobile-nav-height: 58px;--iot-mobile-tools-height: 54px;--iot-radius-lg: 18px}html,body{height:100%;overflow:hidden}body{touch-action:manipulation}.iot-panel{backdrop-filter:blur(10px) saturate(1.08);-webkit-backdrop-filter:blur(10px) saturate(1.08)}iot-dashboard-page,iot-vms-page,iot-devices-page,iot-utilities-page,iot-rules-page,iot-placeholder-page{display:block;min-height:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.utilities-page{height:100%;min-height:0;overflow:auto;padding:6px;gap:8px}.utilities-toolbar.compact,.utilities-toolbar{min-height:0;padding:8px 10px;border-radius:16px}.utilities-toolbar h1{font-size:1.25rem;line-height:1.05}.utilities-toolbar .eyebrow,.utility-summary-chips,.toolbar-title p,.icon-catalog>header p,.definition-card>header p,.placement-header p{display:none!important}.icon-catalog,.placement-card,.placement-form-card,.definition-card,.users-card{padding:8px;border-radius:16px}.icon-catalog{max-height:none;min-height:0}.catalog-header{top:-8px;margin:-8px -8px 8px;padding:8px;-webkit-backdrop-filter:none;backdrop-filter:none}.catalog-header h2,.icon-catalog h2,.definition-card h2{font-size:1.15rem}.category-list{gap:10px}.icon-row-grid,.icon-grid-wide,.device-type-template-grid{grid-template-columns:1fr!important}.device-type-catalog-toolbar.compact-device-type-toolbar{display:grid;grid-template-columns:1fr;gap:8px;margin:6px 0 8px}.device-type-catalog-toolbar .create-device-type-button{justify-self:stretch;width:100%;min-width:0;height:44px}.definition-card.device-type-server-card{max-height:none;min-height:0}.device-type-template-picker.compact-template-picker{max-height:62dvh;overflow:auto}.device-type-template-main{grid-template-columns:48px minmax(0,1fr)}.device-type-template-card .icon-glyph{width:44px;height:44px}.server-device-type-list,.device-type-catalog-scroll,.device-type-catalog-body{max-height:none}.map-shell,.map-container,.mapboxgl-map{min-height:100%;height:100%}.map-source-pill,.map-status{inset-inline:10px;max-width:calc(100vw - 32px)}.map-floating-dock{transform:scale(.86);transform-origin:top left}.floating-panel{max-width:calc(100vw - 28px);max-height:min(54dvh,430px);overflow:auto}.building-demo-pane{border-radius:16px}.building-demo-header,.floor-toolbar,.building-studio-header-actions{gap:6px}.floor-toolbar button,.building-demo-header button{min-height:36px;padding:0 10px}}@media(max-width:460px){:root{--iot-topbar-height: 54px;--iot-mobile-nav-height: 56px;--iot-mobile-tools-height: 52px}.utilities-toolbar.compact,.utilities-toolbar{display:none}.floating-panel{max-height:min(50dvh,360px)}}.iot-pointer-tooltip{position:fixed;z-index:100000;pointer-events:none;max-width:min(280px,100vw - 24px);padding:8px 11px;border:1px solid color-mix(in srgb,var(--iot-border, rgba(148, 163, 184, .35)),transparent 8%);border-radius:12px;background:color-mix(in srgb,var(--iot-surface-strong, #0f172a),transparent 4%);color:var(--iot-text, #f8fafc);box-shadow:0 16px 38px #0f172a38;font:700 .78rem/1.25 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:.01em;backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2)}.device-type-designer.schema-designer-v2 .schema-field-virtual-list .compact-tree-row{min-height:42px;height:42px;grid-template-columns:auto auto minmax(0,1fr) auto auto;gap:6px;padding:4px 7px;margin:0;border-radius:8px}.device-type-designer.schema-designer-v2 .schema-tree-indent{width:calc(var(--schema-depth, 0) * 18px);align-self:stretch;border-inline-end:calc(min(var(--schema-depth, 0),1)*1px) solid color-mix(in srgb,var(--iot-border),transparent 15%)}.device-type-designer.schema-designer-v2 .schema-tree-toggle,.device-type-designer.schema-designer-v2 .schema-tree-leaf{width:22px;height:22px;display:grid;place-items:center;flex:0 0 22px;padding:0;border:0;border-radius:5px;background:transparent;color:var(--iot-muted);font-size:14px}.device-type-designer.schema-designer-v2 .schema-tree-toggle:hover{background:var(--iot-control-bg);color:var(--iot-text)}.device-type-designer.schema-designer-v2 .compact-tree-row.object-row .schema-field-card-content strong{font-weight:700}.device-type-designer.schema-designer-v2 .compact-tree-row .schema-field-card-content{padding-inline-start:0;line-height:1.05}.device-type-designer.schema-designer-v2 .compact-tree-row .schema-field-card-content:before{display:none}.device-type-designer.schema-designer-v2 .compact-tree-row strong{font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.device-type-designer.schema-designer-v2 .compact-tree-row small{font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.device-type-designer.schema-designer-v2 .compact-tree-row .schema-field-mode{padding:2px 6px;font-size:.64rem}.device-type-designer.schema-designer-v2 .compact-tree-row .row-delete{width:24px;height:24px}.schema-json-dialog{grid-template-rows:auto auto minmax(0,1fr) auto}.schema-json-editor-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.schema-json-validation{margin-inline-start:auto;color:var(--iot-danger, #dc2626);font-size:.82rem;font-weight:600}.schema-json-validation.ok{color:var(--iot-success, #16a34a)}.schema-json-output.invalid{border-color:var(--iot-danger, #dc2626);box-shadow:0 0 0 2px color-mix(in srgb,var(--iot-danger, #dc2626),transparent 82%);background:color-mix(in srgb,var(--iot-danger, #dc2626),transparent 97%)}.schema-json-validation button{margin-inline-start:8px;padding:2px 7px;border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;font:inherit;cursor:pointer}.schema-json-validation button:hover,.schema-json-validation button:focus-visible{background:color-mix(in srgb,currentColor,transparent 90%)}.device-type-designer.schema-designer-v2{backdrop-filter:none;-webkit-backdrop-filter:none;contain:layout paint}.device-type-designer.schema-designer-v2 .schema-field-list,.device-type-designer.schema-designer-v2 .field-settings-scroll{contain:strict;overscroll-behavior:contain;will-change:scroll-position}.device-type-designer.schema-designer-v2 .schema-field-card{contain:layout paint style}.device-type-designer.schema-designer-v2 .schema-field-card-content{min-width:0;padding-inline-start:calc(var(--schema-depth, 0) * 18px)}.device-type-designer.schema-designer-v2 .schema-field-card-content:before{content:"";display:inline-block;width:calc(var(--schema-depth, 0) * 10px)}.device-type-designer.schema-designer-v2 .nested-object-editor{display:flex;align-items:center;gap:12px}.device-type-designer.schema-designer-v2 .nested-object-editor p{margin:0}.device-type-designer.schema-designer-v2 .designer-header{padding:8px 4px 12px}.device-type-designer.schema-designer-v2 .designer-title{min-width:0}.device-type-designer.schema-designer-v2 .designer-title h2{margin:0}.device-type-designer.schema-designer-v2 .compact-editor-card{padding:14px}.device-type-designer.schema-designer-v2 .schema-version-list{margin-top:0}.device-type-designer.schema-designer-v2 .compact-builder-toolbar{display:block;padding-bottom:10px}.device-type-designer.schema-designer-v2 .compact-builder-toolbar .schema-builder-actions{width:100%;justify-content:flex-end}.device-type-designer.schema-designer-v2 .compact-field-settings-header{min-height:42px;padding-bottom:8px}.device-type-designer.schema-designer-v2 .compact-field-settings-header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:720px){.device-type-designer.schema-designer-v2 .designer-header{display:flex;align-items:center}.device-type-designer.schema-designer-v2 .designer-close{margin-inline-start:auto}}.no-main-scroll-device-type{grid-template-columns:minmax(270px,340px) minmax(520px,1fr) minmax(360px,440px);grid-template-areas:"side builder profile" "validation builder profile" "actions actions actions"}.no-main-scroll-device-type .advanced-health-profile-card{grid-area:profile;min-height:0;overflow:auto;padding:12px;border-radius:18px;background:var(--iot-surface-strong);box-shadow:none;overscroll-behavior:contain;scrollbar-gutter:stable}.advanced-health-property-card{display:grid;gap:10px;margin-top:14px;padding:12px;border:1px solid color-mix(in srgb,var(--iot-accent),var(--iot-border) 58%);border-radius:14px;background:color-mix(in srgb,var(--iot-accent),transparent 95%)}.advanced-health-property-card>header,.health-rule-toolbar,.health-condition-toolbar,.health-rule-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.advanced-health-property-card header p,.health-rule-toolbar p,.advanced-health-owner-note,.mapping-formula{margin:3px 0 0;color:var(--iot-muted);font-size:.76rem;line-height:1.35}.health-mapping-state,.canonical-signal-summary span,.mapped-health-signals span{display:inline-flex;align-items:center;min-height:26px;padding:3px 8px;border:1px solid var(--iot-border);border-radius:999px;background:var(--iot-control-bg);color:var(--iot-muted);font-size:.7rem;font-weight:800}.health-mapping-state{border-color:color-mix(in srgb,var(--iot-success, #16a34a),var(--iot-border) 45%);color:var(--iot-success, #16a34a)}.canonical-signal-summary,.mapped-health-signals>div{display:flex;flex-wrap:wrap;gap:6px}.advanced-health-profile-card{display:grid;align-content:start;gap:14px}.advanced-health-profile-card .schema-builder-header{position:static!important;margin:0!important;padding:0 0 10px!important;border-bottom:1px solid var(--iot-border);background:transparent!important}.health-profile-grid,.health-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.health-profile-grid label,.health-rule-grid label,.health-condition-row label{min-width:0}.mapped-health-signals,.health-rule-toolbar{display:grid;gap:8px;padding:10px;border:1px solid var(--iot-border);border-radius:13px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 8%)}.health-rule-toolbar{display:flex}.health-rule-list,.health-condition-list{display:grid;gap:10px}.health-rule-card{display:grid;gap:12px;padding:12px;border:1px solid var(--iot-border);border-radius:15px;background:var(--iot-control-bg)}.health-rule-card>header span{display:block;margin-top:2px;color:var(--iot-muted);font-size:.73rem}.health-condition-toolbar{padding-top:10px;border-top:1px solid var(--iot-border)}.health-condition-row{display:grid;grid-template-columns:minmax(150px,1.3fr) minmax(90px,.7fr) minmax(110px,1fr) minmax(135px,1fr) 72px auto;gap:8px;align-items:end;padding:9px;border:1px solid var(--iot-border);border-radius:12px;background:var(--iot-surface-strong)}.condition-boolean{min-height:38px}.danger-link{border:0;background:transparent;color:var(--iot-danger, #dc2626);font:inherit;font-size:.76rem;font-weight:800;cursor:pointer}.condition-delete{align-self:center}@media(max-width:1450px){.no-main-scroll-device-type{grid-template-columns:minmax(260px,330px) minmax(0,1fr);grid-template-rows:minmax(560px,1fr) minmax(320px,auto) auto auto;grid-template-areas:"side builder" "profile profile" "validation validation" "actions actions";overflow-y:auto!important}.no-main-scroll-device-type .advanced-health-profile-card{overflow:visible}}@media(max-width:900px){.no-main-scroll-device-type{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(560px,1fr) auto auto auto;grid-template-areas:"side" "builder" "profile" "validation" "actions"}.health-profile-grid,.health-rule-grid,.health-condition-row{grid-template-columns:minmax(0,1fr)}}.device-type-designer.schema-designer-v2 .designer-header{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px}.device-type-workspace-switcher{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--iot-border);border-radius:12px;background:var(--iot-control-bg)}.device-type-workspace-switcher button{min-height:32px;padding:0 11px;border:0;border-radius:9px;color:var(--iot-muted);background:transparent;font:inherit;font-size:.72rem;font-weight:800;cursor:pointer;white-space:nowrap}.device-type-workspace-switcher button:hover,.device-type-workspace-switcher button.active{color:var(--iot-text);background:color-mix(in srgb,var(--iot-accent),transparent 88%)}.no-main-scroll-device-type{grid-template-columns:minmax(230px,var(--device-type-metadata-width, 300px)) 7px minmax(520px,1fr) 7px minmax(320px,var(--device-type-health-width, 420px));grid-template-areas:"side metadata-resizer builder health-resizer profile" "validation metadata-resizer builder health-resizer profile" "actions actions actions actions actions"}.no-main-scroll-device-type .metadata-pane-resizer{grid-area:metadata-resizer}.no-main-scroll-device-type .health-pane-resizer{grid-area:health-resizer}.no-main-scroll-device-type.workspace-properties{grid-template-columns:minmax(230px,var(--device-type-metadata-width, 300px)) 7px minmax(0,1fr);grid-template-areas:"side metadata-resizer builder" "validation metadata-resizer builder" "actions actions actions"}.no-main-scroll-device-type.workspace-properties .advanced-health-profile-card,.no-main-scroll-device-type.workspace-properties .health-pane-resizer{display:none}.no-main-scroll-device-type.workspace-health{grid-template-columns:minmax(230px,var(--device-type-metadata-width, 300px)) 7px minmax(0,1fr);grid-template-areas:"side metadata-resizer profile" "validation metadata-resizer profile" "actions actions actions"}.no-main-scroll-device-type.workspace-health .schema-builder-card,.no-main-scroll-device-type.workspace-health .health-pane-resizer{display:none}.no-main-scroll-device-type.workspace-health .advanced-health-profile-card{overflow:auto}.pane-resizer{position:relative;min-width:7px;min-height:0;display:grid;place-items:center;cursor:col-resize;touch-action:none;-webkit-user-select:none;user-select:none;outline:none}.pane-resizer:before{content:"";position:absolute;inset-block:0;inset-inline:-4px}.pane-resizer span{width:2px;height:54px;max-height:38%;border-radius:999px;background:color-mix(in srgb,var(--iot-muted),transparent 68%);transition:width .13s ease,background .13s ease}.pane-resizer:hover span,.pane-resizer:focus-visible span,.iot-pane-resizing .pane-resizer span{width:4px;background:color-mix(in srgb,var(--iot-accent),transparent 22%)}.iot-pane-resizing,.iot-pane-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.no-main-scroll-device-type .schema-designer-layout{grid-template-columns:minmax(110px,var(--schema-category-width, 150px)) 7px minmax(220px,var(--schema-field-width, 330px)) 7px minmax(380px,1fr);grid-template-areas:"categories category-resizer fields fields-resizer settings"}.no-main-scroll-device-type .schema-category-rail{grid-area:categories}.no-main-scroll-device-type .category-pane-resizer{grid-area:category-resizer}.no-main-scroll-device-type .schema-field-list{grid-area:fields}.no-main-scroll-device-type .fields-pane-resizer{grid-area:fields-resizer}.no-main-scroll-device-type .schema-field-settings{grid-area:settings}.no-main-scroll-device-type .schema-field-settings{min-width:0}.no-main-scroll-device-type .advanced-health-property-card .two-cols{grid-template-columns:repeat(2,minmax(220px,1fr))}.no-main-scroll-device-type .advanced-health-property-card label,.no-main-scroll-device-type .advanced-health-property-card input,.no-main-scroll-device-type .advanced-health-property-card select{min-width:0}.no-main-scroll-device-type .advanced-health-property-card{overflow:visible}.no-main-scroll-device-type .field-settings-scroll{overflow-x:hidden}@media(max-width:1450px){.device-type-workspace-switcher{order:3;grid-column:1/-1;justify-self:stretch}.device-type-workspace-switcher button{flex:1 1 0}.no-main-scroll-device-type,.no-main-scroll-device-type.workspace-properties,.no-main-scroll-device-type.workspace-health{grid-template-columns:minmax(0,1fr);grid-template-areas:"side" "builder" "profile" "validation" "actions"}.no-main-scroll-device-type.workspace-properties .advanced-health-profile-card,.no-main-scroll-device-type.workspace-health .schema-builder-card,.no-main-scroll-device-type .outer-pane-resizer{display:none}}@media(max-width:900px){.no-main-scroll-device-type .schema-designer-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(220px,.9fr) minmax(300px,1.1fr);grid-template-areas:"categories" "fields" "settings"}.no-main-scroll-device-type .inner-pane-resizer{display:none}.device-type-workspace-switcher{overflow-x:auto}}.schema-pane-caption{display:flex;align-items:center;min-height:30px;margin-bottom:5px;padding:4px 7px;color:var(--iot-muted);font-size:.68rem;font-weight:850;letter-spacing:.025em}@media(max-width:1450px){.no-main-scroll-device-type{grid-template-rows:auto minmax(560px,1fr) auto auto auto}.no-main-scroll-device-type.workspace-properties{grid-template-rows:auto minmax(560px,1fr) auto auto;grid-template-areas:"side" "builder" "validation" "actions"}.no-main-scroll-device-type.workspace-health{grid-template-rows:auto minmax(560px,1fr) auto auto;grid-template-areas:"side" "profile" "validation" "actions"}}.map-filter-controls{position:absolute;z-index:8;inset-block-start:14px;inset-inline-end:14px;display:flex;align-items:center;gap:8px}.map-filter-controls .map-facet-toggle{position:relative;inset:auto;flex:0 0 auto}.map-demo-icons-toggle{min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:0 11px 0 9px;border:1px solid color-mix(in srgb,var(--iot-border-strong),transparent 24%);border-radius:12px;color:color-mix(in srgb,var(--iot-text),transparent 25%);background:color-mix(in srgb,var(--iot-surface-strong),transparent 22%);box-shadow:0 10px 28px #00000038,inset 0 1px #ffffff12;-webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.72rem;font-weight:750}.map-demo-icons-toggle input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.map-demo-icons-track{width:30px;height:17px;display:inline-flex;align-items:center;padding:2px;border:1px solid var(--iot-border-strong);border-radius:999px;background:var(--iot-control-bg);transition:background .15s ease,border-color .15s ease}.map-demo-icons-track>span{width:11px;height:11px;border-radius:50%;background:var(--iot-muted);transform:translate(0);transition:transform .15s ease,background .15s ease}.map-demo-icons-toggle:has(input:checked){color:var(--iot-text);border-color:color-mix(in srgb,var(--iot-accent),transparent 38%);background:color-mix(in srgb,var(--iot-accent),transparent 82%)}.map-demo-icons-toggle:has(input:checked) .map-demo-icons-track{border-color:color-mix(in srgb,var(--iot-accent),transparent 25%);background:color-mix(in srgb,var(--iot-accent),transparent 52%)}.map-demo-icons-toggle:has(input:checked) .map-demo-icons-track>span{background:#fff;transform:translate(13px)}[dir=rtl] iot-map-dashboard .map-demo-icons-toggle:has(input:checked) .map-demo-icons-track>span{transform:translate(-13px)}@media(max-width:760px){.map-filter-controls{inset-block-start:10px;inset-inline-end:10px}.map-demo-icons-toggle>span:last-child{display:none}.map-demo-icons-toggle{padding-inline:8px}}.map-facet-toggle.filtering:after{content:"";position:absolute;inset-block-end:5px;inset-inline-end:5px;width:7px;height:7px;border:2px solid var(--iot-surface-strong);border-radius:999px;background:var(--iot-success)}.map-facet-panel{width:min(430px,100% - 28px);grid-template-rows:auto auto auto minmax(0,1fr) auto;border:1px solid color-mix(in srgb,var(--iot-border-strong),transparent 22%)}.map-facet-activation{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;padding:12px 14px;border-bottom:1px solid var(--iot-border);background:color-mix(in srgb,var(--iot-control-bg),transparent 18%);transition:background .16s ease}.map-facet-activation.active{background:color-mix(in srgb,var(--iot-success),transparent 91%)}.map-facet-activation-switch{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;cursor:pointer}.map-facet-activation-switch>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.map-facet-switch-track{width:38px;height:22px;display:inline-flex;align-items:center;padding:3px;border:1px solid var(--iot-border-strong);border-radius:999px;background:var(--iot-control-bg);transition:background .15s ease,border-color .15s ease}.map-facet-switch-track>span{width:14px;height:14px;border-radius:50%;background:var(--iot-muted);transform:translate(16px);transition:transform .15s ease,background .15s ease}.map-facet-activation-switch>input:checked+.map-facet-switch-track{border-color:color-mix(in srgb,var(--iot-success),transparent 8%);background:var(--iot-success);box-shadow:0 0 0 3px color-mix(in srgb,var(--iot-success),transparent 82%)}.map-facet-activation-switch>input:checked+.map-facet-switch-track>span{background:#fff;transform:translate(0)}[dir=rtl] iot-map-dashboard .map-facet-activation-switch>input:checked+.map-facet-switch-track>span{transform:translate(0)}.map-facet-activation.active .map-facet-activation-copy strong,.map-facet-live-state.active{color:var(--iot-success)}.map-facet-activation-switch>input:disabled+.map-facet-switch-track{opacity:.55}.map-facet-activation-copy{min-width:0;display:grid;gap:2px}.map-facet-activation-copy strong{color:var(--iot-text);font-size:.82rem}.map-facet-activation-copy small{color:var(--iot-muted);font-size:.69rem;line-height:1.35}.map-facet-live-state{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:999px;color:var(--iot-muted);background:var(--iot-control-bg);font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.map-facet-live-state>span,.map-facet-footer-live>span{width:7px;height:7px;border-radius:999px;background:var(--iot-muted)}.map-facet-live-state.active{color:var(--iot-success-soft);background:color-mix(in srgb,var(--iot-success),transparent 88%)}.map-facet-live-state.active>span,.map-facet-footer-live>span{background:var(--iot-success);box-shadow:0 0 0 4px color-mix(in srgb,var(--iot-success),transparent 84%)}.map-facet-toolbar.disabled{opacity:.68}.map-facet-content.inactive .map-facet-group{opacity:.62}.map-facet-content.inactive .map-facet-group>summary{cursor:pointer}.map-facet-group{margin:5px 2px;border:1px solid color-mix(in srgb,var(--iot-border),transparent 20%);border-radius:13px;background:color-mix(in srgb,var(--iot-control-bg),transparent 48%);overflow:hidden}.map-facet-group:last-child{border-bottom:1px solid color-mix(in srgb,var(--iot-border),transparent 20%)}.map-facet-group.restricted{border-color:color-mix(in srgb,var(--iot-accent),transparent 48%)}.map-facet-group>summary{padding-inline:11px}.map-facet-group[open]>summary{border-bottom:1px solid color-mix(in srgb,var(--iot-border),transparent 30%);background:color-mix(in srgb,var(--iot-surface-strong),transparent 54%)}.map-facet-group-body{padding:10px}.map-facet-chevron{display:inline-block;transition:transform .15s ease}.map-facet-group[open] .map-facet-chevron{transform:rotate(180deg)}.map-facet-all-chip{padding:3px 7px;border-radius:999px;color:var(--iot-muted);background:var(--iot-control-bg);font-size:.62rem;font-weight:750}.map-facet-selection-count{width:auto;min-width:0;padding-inline:7px;color:var(--iot-accent);background:color-mix(in srgb,var(--iot-accent),transparent 85%)}.map-facet-option.disabled{cursor:default}.map-facet-footer strong{color:var(--iot-text);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.map-facet-footer-live{color:var(--iot-success-soft)}@media(max-width:760px){.map-facet-activation-switch{grid-template-columns:auto minmax(0,1fr)}.map-facet-live-state{grid-column:2;justify-self:start}}.dashboard-widget-drag-ghost{position:fixed;left:-1000px;top:-1000px;z-index:99999;min-width:128px;display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid color-mix(in srgb,var(--iot-accent),transparent 25%);border-radius:12px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 2%);color:var(--iot-text);box-shadow:0 12px 32px #00000059;font:700 .78rem/1.2 system-ui,sans-serif}.dashboard-widget-drag-ghost strong{color:var(--iot-accent);font-size:1.45rem}.map-facet-invert{grid-column:1/-1;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--iot-border);border-radius:11px;background:color-mix(in srgb,var(--iot-control-bg),transparent 22%);cursor:pointer;transition:border-color .15s ease,background .15s ease}.map-facet-invert.active{border-color:color-mix(in srgb,var(--iot-warning, #f59e0b),transparent 35%);background:color-mix(in srgb,var(--iot-warning, #f59e0b),transparent 88%)}.map-facet-invert>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.map-facet-invert-track{width:34px;height:20px;display:inline-flex;align-items:center;padding:3px;border:1px solid var(--iot-border-strong);border-radius:999px;background:var(--iot-control-bg);transition:border-color .15s ease,background .15s ease}.map-facet-invert-track>span{width:12px;height:12px;border-radius:50%;background:var(--iot-muted);transition:transform .15s ease,background .15s ease}.map-facet-invert>input:checked+.map-facet-invert-track{border-color:color-mix(in srgb,var(--iot-warning, #f59e0b),transparent 25%);background:color-mix(in srgb,var(--iot-warning, #f59e0b),transparent 56%)}.map-facet-invert>input:checked+.map-facet-invert-track>span{background:#fff;transform:translate(14px)}[dir=rtl] iot-map-dashboard .map-facet-invert>input:checked+.map-facet-invert-track>span{transform:translate(-14px)}.map-facet-invert-icon{color:var(--iot-accent);font-size:1.05rem;font-weight:900}.map-facet-invert-copy{min-width:0;display:grid;gap:2px}.map-facet-invert strong{color:var(--iot-text);font-size:.75rem}.map-facet-invert small{color:var(--iot-muted);font-size:.65rem;line-height:1.35}iot-map-dashboard .map-facet-panel{position:fixed!important;z-index:1200!important;inset:auto!important;width:min(430px,100vw - 28px);height:min(760px,100vh - 90px);max-height:calc(100vh - 16px);margin:0!important;touch-action:auto;will-change:transform;animation:none!important}iot-map-dashboard .map-facet-panel.dragging{-webkit-user-select:none;user-select:none;cursor:grabbing}.map-facet-drag-handle{width:100%;min-height:30px;display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-bottom:1px solid var(--iot-border);color:var(--iot-muted);background:color-mix(in srgb,var(--iot-control-bg),transparent 18%);font:inherit;font-size:.64rem;font-weight:800;letter-spacing:.04em;cursor:grab;touch-action:none}.map-facet-drag-handle:hover{color:var(--iot-text);background:color-mix(in srgb,var(--iot-accent),transparent 93%)}iot-map-dashboard .map-facet-panel.dragging .map-facet-drag-handle{cursor:grabbing;color:var(--iot-accent)}.map-facet-drag-handle span:first-child{font-size:1rem;letter-spacing:-.22em}iot-map-dashboard .map-facet-header{position:relative;cursor:default}.map-count-verification{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center;padding:9px 14px;border-bottom:1px solid var(--iot-border);color:var(--iot-muted);background:color-mix(in srgb,var(--iot-control-bg),transparent 18%)}.map-count-verification.ok{color:var(--iot-success-soft);background:color-mix(in srgb,var(--iot-success),transparent 92%)}.map-count-verification.error{color:var(--iot-danger-soft);background:color-mix(in srgb,var(--iot-danger),transparent 92%)}.map-count-verification-icon{width:22px;height:22px;display:grid;place-items:center;border:1px solid currentColor;border-radius:999px;font-weight:900}.map-count-verification span:last-child{display:grid;gap:2px;min-width:0}.map-count-verification strong{font-size:.7rem}.map-count-verification small{color:var(--iot-muted);font-size:.61rem;line-height:1.25}@media(max-width:760px){iot-map-dashboard .map-facet-panel{position:absolute!important;left:10px!important;right:10px!important;top:56px!important;width:auto;height:calc(100% - 66px);transform:none!important}.map-facet-drag-handle{display:none}}.map-facet-universe{padding:2px 6px;border:1px solid var(--iot-border);border-radius:999px;color:var(--iot-muted);font-size:.58rem;font-variant-numeric:tabular-nums;white-space:nowrap}iot-map-dashboard .map-facet-panel{left:var(--facet-panel-left, 12px)!important;top:var(--facet-panel-top, 72px)!important;right:auto!important;bottom:auto!important;grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto!important;transform:none!important;max-width:calc(100vw - 16px)!important;max-height:calc(100% - var(--facet-panel-top, 72px) - 12px)!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;pointer-events:auto!important;isolation:isolate}iot-map-dashboard .map-facet-drag-handle,iot-map-dashboard .map-facet-header,iot-map-dashboard .map-count-verification,iot-map-dashboard .map-facet-activation,iot-map-dashboard .map-facet-toolbar,iot-map-dashboard .map-facet-footer{position:relative;z-index:2;flex:none}iot-map-dashboard .map-facet-content{position:relative;z-index:1;width:100%;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;pointer-events:auto;scrollbar-gutter:stable}iot-map-dashboard .map-facet-content details,iot-map-dashboard .map-facet-content summary,iot-map-dashboard .map-facet-content label,iot-map-dashboard .map-facet-content button,iot-map-dashboard .map-facet-content input,iot-map-dashboard .map-facet-activation label,iot-map-dashboard .map-facet-activation input,iot-map-dashboard .map-facet-toolbar button{pointer-events:auto}@media(max-width:760px){iot-map-dashboard .map-facet-panel{grid-template-rows:auto auto auto auto minmax(0,1fr) auto!important;max-width:none!important;max-height:none!important}}.iot-map-element-drag-ghost{position:fixed;z-index:2147483647;left:-10000px;top:-10000px;display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--iot-accent);border-radius:12px;color:var(--iot-text);background:var(--iot-surface-strong);box-shadow:0 10px 28px #0000004d;font:700 12px/1.2 system-ui,sans-serif}.iot-map-element-drag-ghost span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;color:var(--iot-accent);background:color-mix(in srgb,var(--iot-accent),transparent 84%);font-size:18px}.catalog-radial-menu .radial-action:after,.radial-action:after{display:none!important;content:none!important}.iot-pointer-tooltip{text-align:start;white-space:normal;overflow-wrap:anywhere}.iot-pointer-tooltip.rich{max-width:min(420px,100vw - 24px);padding:12px 14px;font-weight:500;line-height:1.5;letter-spacing:0}.iot-pointer-tooltip.rich p{margin:0}.iot-pointer-tooltip.rich p+p{margin-top:.6em}.iot-pointer-tooltip.pinned{pointer-events:auto;-webkit-user-select:text;user-select:text;cursor:text}.iot-global-tooltip{animation:iot-tooltip-in .11s ease-out}@keyframes iot-tooltip-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}body.iot-dashboard-startup-fullscreen-active,body.iot-dashboard-preview-fullscreen-active,body.iot-rule-editor-fullscreen-active{overflow:hidden}.iot-scroll-transparent{scrollbar-width:thin;scrollbar-color:transparent transparent;overflow:auto;overscroll-behavior:contain}.iot-scroll-transparent:hover,.iot-scroll-transparent:focus-within{scrollbar-color:rgba(20,40,60,.28) transparent}.iot-scroll-transparent::-webkit-scrollbar{width:10px;height:10px}.iot-scroll-transparent::-webkit-scrollbar-track{background:transparent}.iot-scroll-transparent::-webkit-scrollbar-thumb{background:transparent;border-radius:999px;border:3px solid transparent;background-clip:content-box}.iot-scroll-transparent:hover::-webkit-scrollbar-thumb,.iot-scroll-transparent:focus-within::-webkit-scrollbar-thumb{background-color:#14283c47;background-clip:content-box}.iot-scroll-transparent::-webkit-scrollbar-thumb:hover{background-color:#14283c73;background-clip:content-box}.no-main-scroll-device-type.step-details,.no-main-scroll-device-type.step-schema,.no-main-scroll-device-type.step-health{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;overflow:hidden!important}.no-main-scroll-device-type.step-details{grid-template-areas:"side" "actions"}.no-main-scroll-device-type.step-schema{grid-template-columns:minmax(0,1fr);grid-template-areas:"builder" "actions"}.no-main-scroll-device-type.step-health{grid-template-areas:"profile" "actions"}.no-main-scroll-device-type.step-details .schema-builder-card,.no-main-scroll-device-type.step-details .advanced-health-profile-card,.no-main-scroll-device-type.step-schema .advanced-health-profile-card,.no-main-scroll-device-type.step-health .device-type-side-stack,.no-main-scroll-device-type.step-health .schema-builder-card,.no-main-scroll-device-type.step-details .pane-resizer,.no-main-scroll-device-type.step-schema .pane-resizer.outer-pane-resizer,.no-main-scroll-device-type.step-health .pane-resizer{display:none}.no-main-scroll-device-type.step-details .device-type-side-stack{width:min(100%,940px);margin-inline:auto;padding-inline-end:0}.no-main-scroll-device-type.step-details .device-type-basic-card{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px;padding:16px}.no-main-scroll-device-type.step-details .device-type-icon-field,.no-main-scroll-device-type.step-details .device-type-basic-card>.two-cols,.no-main-scroll-device-type.step-details .device-type-basic-card>.designer-switch-row,.no-main-scroll-device-type.step-details .device-type-basic-card>.checkbox-line,.no-main-scroll-device-type.step-details .device-type-basic-card>label:has(textarea){grid-column:1/-1}.no-main-scroll-device-type.step-details .device-type-basic-card>.checkbox-line{align-items:center;gap:10px;padding:11px 13px;border:1px solid var(--iot-border);border-radius:12px;background:var(--iot-control-bg)}.no-main-scroll-device-type.step-schema .device-type-side-stack{display:none}.device-type-designer.schema-designer-v2 .device-type-presentation-panes,.device-type-designer.schema-designer-v2 .no-main-scroll-device-type.step-summary,.device-type-designer.schema-designer-v2 .no-main-scroll-device-type.step-map,.device-type-designer.schema-designer-v2 .no-main-scroll-device-type.step-forms,.device-type-designer.schema-designer-v2 .no-main-scroll-device-type.step-capabilities{grid-row:2}.device-type-presentation-panes{position:relative;z-index:2;display:flex;flex:1 1 auto;flex-direction:column;min-height:min(58vh,460px);margin-top:12px;overflow:hidden}.device-type-presentation-panes .presentation-card{display:flex;flex:1 1 auto;flex-direction:column;gap:12px;min-height:0;overflow:auto}.no-main-scroll-device-type.step-summary,.no-main-scroll-device-type.step-map,.no-main-scroll-device-type.step-forms,.no-main-scroll-device-type.step-capabilities{height:auto!important;min-height:0!important;margin-top:0;align-self:end;pointer-events:none}.no-main-scroll-device-type.step-summary .designer-actions,.no-main-scroll-device-type.step-map .designer-actions,.no-main-scroll-device-type.step-forms .designer-actions,.no-main-scroll-device-type.step-capabilities .designer-actions{display:none!important}.no-main-scroll-device-type.step-summary>*:not(.designer-actions),.no-main-scroll-device-type.step-map>*:not(.designer-actions),.no-main-scroll-device-type.step-forms>*:not(.designer-actions),.no-main-scroll-device-type.step-capabilities>*:not(.designer-actions){display:none!important}.device-type-presentation-panes .device-forms-card{min-height:min(70vh,720px)}.device-type-presentation-panes .device-forms-card iot-device-type-forms{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.presentation-header h3{margin:0}.presentation-header p,.presentation-hint{margin:4px 0 0;color:var(--iot-muted);font-size:.8rem}.presentation-rows{display:grid;gap:6px;margin:0;padding:0;list-style:none}.presentation-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) auto auto auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--iot-border);border-radius:12px}.presentation-empty{padding:10px;color:var(--iot-muted);list-style:none}.presentation-path{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--iot-muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.74rem}.presentation-actions{display:flex;gap:4px}.presentation-actions button,.badge-row button,.badge-property-head button{padding:2px 8px;border:1px solid var(--iot-border);border-radius:8px;background:var(--iot-control-bg);color:var(--iot-text);cursor:pointer}.presentation-actions button.danger,.badge-row button.danger,.badge-property-head button.danger{color:#ef6b6b}.presentation-candidates{display:flex;flex-wrap:wrap;gap:6px;padding:6px 2px 10px}.presentation-search input{width:100%;max-width:420px}.presentation-group{border-top:1px solid color-mix(in srgb,var(--iot-border),transparent 40%)}.presentation-group-title{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:9px 2px;border:0;background:transparent;color:var(--iot-text);cursor:pointer;font-weight:800;text-align:start}.presentation-group-title .count{flex:none;padding:1px 8px;border-radius:999px;background:var(--iot-control-bg);color:var(--iot-muted);font-size:.74rem;font-variant-numeric:tabular-nums}.presentation-chip{padding:4px 10px;border:1px dashed var(--iot-border);border-radius:999px;background:transparent;color:var(--iot-text);cursor:pointer;font-size:.8rem}.badge-split{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:14px;align-items:stretch;min-height:0}.badge-picker-pane{display:flex;flex-direction:column;gap:8px;min-height:0;max-height:min(62vh,520px);padding-inline-end:4px;overflow:auto}.badge-picker-pane h4{margin:6px 0 0}.badge-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.badge-list li{position:relative;z-index:1;display:flex;gap:6px;align-items:center}.badge-list-item{position:relative;z-index:1;pointer-events:auto;display:flex;flex:1;gap:10px;align-items:center;min-width:0;padding:9px 10px;border:1px solid var(--iot-border);border-radius:12px;background:var(--iot-control-bg);color:var(--iot-text);cursor:pointer;text-align:start}.badge-list-item.selected{border-color:var(--iot-accent);background:color-mix(in srgb,var(--iot-accent),transparent 88%);box-shadow:inset 3px 0 0 0 var(--iot-accent);font-weight:700}.badge-list-name{display:grid;min-width:0}.badge-list-name code{font-size:.7rem}.badge-list-swatches{display:flex;gap:3px;margin-inline-start:auto}.badge-table{width:100%;border-collapse:collapse}.badge-table th{padding:4px 6px;color:var(--iot-muted);font-size:.72rem;text-align:start;text-transform:uppercase}.badge-table td{padding:6px;border-top:1px solid color-mix(in srgb,var(--iot-border),transparent 45%);vertical-align:middle}.badge-position{display:inline-flex;justify-content:center;align-items:center;width:22px;height:22px;border-radius:999px;background:color-mix(in srgb,var(--iot-accent),transparent 82%);color:var(--iot-accent);font-size:.76rem;font-weight:800}.badge-icon-cell{min-width:76px}.badge-icon-cell .badge-icon-button{display:inline-flex;gap:6px;align-items:center;width:auto;min-width:58px;padding:4px 8px;border:1px solid var(--iot-border);border-radius:10px;background:var(--iot-control-bg);cursor:pointer}.badge-icon-cell .badge-icon-button.open{border-color:var(--iot-accent)}.badge-icon-glyph{font-size:1.05rem;line-height:1;color:var(--icon-color, var(--iot-text))}.badge-icon-caret{color:var(--iot-muted);font-size:.7rem}.badge-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:4px;width:236px;max-height:190px;margin-top:6px;padding:6px;border:1px solid var(--iot-border);border-radius:12px;background:var(--iot-surface-strong);overflow:auto}.badge-icon-grid .badge-icon-choice{display:flex;justify-content:center;align-items:center;width:auto;height:32px;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;cursor:pointer}.badge-icon-grid .badge-icon-choice:hover{background:color-mix(in srgb,var(--iot-accent),transparent 92%)}.badge-icon-grid .badge-icon-choice.selected{border-color:var(--iot-accent);background:color-mix(in srgb,var(--iot-accent),transparent 86%)}.badge-icon-image{display:block;width:22px;height:22px;object-fit:contain}.badge-icon-cell .badge-icon-button .badge-icon-image{width:20px;height:20px}.badge-icon-grid-wrap{display:grid;gap:6px;justify-items:start}.badge-icon-toolbar{display:flex;gap:6px;align-items:center}.badge-icon-cell input.badge-icon-search{width:150px;padding:3px 8px;border:1px solid var(--iot-border);border-radius:999px;font-size:.74rem}.badge-icon-choice{position:relative}.badge-icon-preview{position:fixed;z-index:1200;display:flex;flex-direction:column;gap:4px;align-items:center;min-width:84px;padding:8px;transform:translate(-50%);border:1px solid var(--iot-border);border-radius:12px;background:var(--iot-surface-strong);box-shadow:0 12px 30px #00000038;pointer-events:none}.badge-icon-preview img{width:66px;height:66px;object-fit:contain}.badge-icon-preview em{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--iot-muted);font-size:.72rem;font-style:normal}.badge-icon-empty{grid-column:1/-1;margin:4px 0}.badge-icon-fallback{color:var(--iot-muted);font-size:.68rem;text-transform:uppercase}.badge-paint{display:flex;gap:8px;align-items:center;margin-top:6px}.badge-paint-toggle{display:inline-flex;gap:4px;align-items:center;color:var(--iot-muted);font-size:.72rem;font-weight:700}.badge-icon-cell input[type=color].badge-paint-color{width:34px;height:26px;padding:0;border:1px solid var(--iot-border);border-radius:7px;background:transparent;cursor:pointer}.badge-paint-sample{position:relative;flex:none;width:calc(var(--badge-size, 14px) * var(--badge-scale, 1));height:calc(var(--badge-size, 14px) * var(--badge-scale, 1));border-radius:999px;border:1.5px solid rgba(255,255,255,.9);background:#ffffffeb}.badge-paint-sample:has(img){border-color:transparent;background:transparent}.badge-paint-sample:has(img) img{width:119.6%;height:119.6%;margin:-9.8%}.badge-paint-sample img{display:block;width:100%;height:100%;object-fit:contain}.badge-paint-sample.tinted{background:var(--badge-tint);border-color:transparent;-webkit-mask-image:var(--badge-mask);mask-image:var(--badge-mask);-webkit-mask-size:78% 78%;mask-size:78% 78%;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.badge-wave-cell{min-width:340px}.badge-wave-editor{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.badge-wave-dial{flex:none;width:76px}.badge-wave-swatch-wrap{display:inline-flex;flex-direction:column;gap:6px;align-items:stretch}.badge-wave-cell input[type=color].badge-wave-color{width:46px;height:30px;padding:0;border:1px solid var(--iot-border);border-radius:8px;background:transparent;cursor:pointer}.badge-wave-test{width:auto;padding:4px 10px;border:1px solid var(--iot-accent);border-radius:999px;background:color-mix(in srgb,var(--iot-accent),transparent 88%);color:var(--iot-accent);cursor:pointer;font-size:.74rem;font-weight:700;white-space:nowrap}.badge-wave-test:hover{background:color-mix(in srgb,var(--iot-accent),transparent 78%)}.badge-wave-stage{position:relative;display:inline-flex;justify-content:center;align-items:center;width:64px;height:46px;border:1px dashed var(--iot-border);border-radius:12px;background:color-mix(in srgb,var(--iot-surface-strong),transparent 30%)}.badge-wave-stage.running{border-style:solid;border-color:color-mix(in srgb,var(--iot-accent),transparent 55%)}.badge-wave-origin{width:9px;height:9px;border-radius:999px;background:var(--badge-color, var(--iot-muted))}.badge-wave-ring{position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border:2px solid var(--wave-color, var(--iot-accent));border-radius:999px;pointer-events:none;opacity:0;animation:badge-wave-out var(--wave-duration, .7s) ease-out forwards}@keyframes badge-wave-out{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(2.8)}}@media(prefers-reduced-motion:reduce){.badge-wave-ring{animation:none;opacity:.35}}.badge-swatch.small{width:9px;height:9px;border-width:1px}.badge-detail{min-width:0;min-height:0;max-height:min(62vh,520px);overflow:auto;padding:12px;border:1px solid var(--iot-border);border-radius:14px;background:color-mix(in srgb,var(--iot-control-bg),transparent 40%)}.badge-detail-body{display:grid;gap:10px;animation:badge-detail-in .18s ease-out}@keyframes badge-detail-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.badge-detail-body{animation:none}}.badge-detail-head{display:flex;gap:10px;align-items:baseline}.badge-detail-idle{margin:0;padding:18px 4px;text-align:center}@media(max-width:1100px){.badge-split{grid-template-columns:minmax(0,1fr)}}.badge-property{display:grid;gap:8px;padding:10px;border:1px solid var(--iot-border);border-radius:14px}.badge-property-head{display:flex;gap:10px;align-items:baseline}.badge-rows{display:grid;gap:6px;margin:0;padding:0;list-style:none}.badge-row{display:grid;grid-template-columns:16px minmax(120px,1fr) minmax(140px,1fr) auto;gap:8px;align-items:center}.badge-swatch{width:12px;height:12px;border-radius:999px;border:1.5px solid rgba(255,255,255,.9);background:var(--badge-color, #8892a6);box-shadow:0 1px 4px #00000059}.badge-match{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.badge-match input{width:84px}.badge-match-mode{flex:1 0 100%}.badge-match-mode select{width:100%;font-weight:700}.badge-match input.badge-match-value{width:100%}.badge-match input.badge-match-bound{flex:1 1 0;width:auto;min-width:0}.badge-detail-head{display:flex;gap:10px;align-items:baseline;justify-content:space-between;flex-wrap:wrap}.badge-detail-name{display:flex;gap:8px;align-items:baseline;min-width:0}.badge-detail-tools{display:flex;gap:4px;align-items:center}.badge-row-count{display:inline-flex;align-items:center;height:26px;margin-right:4px;padding:0 4px;color:var(--iot-muted);font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums}.badge-tool-glyph{width:12px;height:12px;flex:none;display:block;transition:transform .14s ease}.badge-tool,.badge-tool-add,.badge-fold{display:inline-flex;align-items:center;justify-content:center;height:26px;border:1px solid var(--iot-border);border-radius:8px;background:transparent;color:var(--iot-muted);cursor:pointer;font:inherit;line-height:1;transition:color .14s ease,border-color .14s ease,background .14s ease}.badge-tool{width:26px;padding:0}.badge-tool:hover,.badge-fold:hover{color:var(--iot-text);border-color:var(--iot-border-strong);background:var(--iot-control-bg)}.badge-tool.folded .badge-tool-glyph,.badge-fold.folded .badge-tool-glyph{transform:rotate(180deg)}.badge-tool-add{gap:5px;padding:0 10px 0 8px;color:var(--iot-accent);border-color:color-mix(in srgb,var(--iot-accent),transparent 62%);font-size:.7rem;font-weight:700;letter-spacing:.01em}.badge-tool-add:hover{border-color:var(--iot-accent);background:color-mix(in srgb,var(--iot-accent),transparent 90%)}.badge-tool-add:active,.badge-tool:active,.badge-fold:active{transform:translateY(1px)}.badge-tool:focus-visible,.badge-tool-add:focus-visible,.badge-fold:focus-visible{outline:none;border-color:var(--iot-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--iot-accent),transparent 76%)}.badge-fold{width:22px;height:22px;margin-right:4px;padding:0;border-color:transparent;vertical-align:middle}.badge-table tr.folded>td{padding-top:4px;padding-bottom:4px;vertical-align:middle}.badge-signal-summary{color:var(--iot-muted);font-size:.74rem;font-weight:700;font-variant-numeric:tabular-nums}.badge-label-folded{display:block;overflow:hidden;color:var(--iot-muted);font-size:.74rem;white-space:nowrap;text-overflow:ellipsis}.no-main-scroll-device-type .schema-builder-card .schema-builder-header{align-self:start;min-height:0;flex-wrap:wrap;row-gap:6px}.compact-builder-toolbar .schema-builder-lead{display:flex;align-items:center;gap:8px;min-width:0}.compact-builder-toolbar .schema-field-search{display:flex;align-items:center;gap:8px}.compact-builder-toolbar .schema-field-search>span{white-space:nowrap}@media(max-width:1100px){.no-main-scroll-device-type.step-schema{grid-template-columns:minmax(0,1fr);grid-template-areas:"builder" "actions"}.no-main-scroll-device-type.step-schema .device-type-side-stack{display:none}}.device-type-step-rail{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--iot-border);border-radius:12px;background:var(--iot-control-bg)}.device-type-step{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 11px;border:0;border-radius:9px;color:var(--iot-muted);background:transparent;font:inherit;font-size:.72rem;font-weight:800;cursor:pointer;white-space:nowrap}.device-type-step b{display:grid;place-items:center;width:18px;height:18px;border-radius:999px;background:color-mix(in srgb,var(--iot-border),transparent 30%);color:var(--iot-muted);font-size:.66rem}.device-type-step:hover,.device-type-step.active{color:var(--iot-text);background:color-mix(in srgb,var(--iot-accent),transparent 88%)}.device-type-step.active b{background:var(--iot-accent);color:var(--iot-surface-strong)}.designer-back{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--iot-border);border-radius:999px;background:transparent;color:var(--iot-muted);font-size:1.2rem;line-height:1;cursor:pointer}.designer-back:hover{color:var(--iot-text);border-color:color-mix(in srgb,var(--iot-accent),transparent 45%)}.server-device-type-row.returned-to{border-color:color-mix(in srgb,var(--iot-accent),transparent 40%);background:color-mix(in srgb,var(--iot-accent),transparent 92%)}.server-device-type-list{transition:padding-inline-start .16s ease}.server-device-type-list.dial-open{padding-inline-start:240px}@media(max-width:900px){.server-device-type-list.dial-open{padding-inline-start:0}}.device-type-filters{display:inline-flex;flex-wrap:wrap;gap:10px;align-items:center}.device-type-filters .segmented{flex:none}.device-type-origin .iot-button{padding:.36rem .62rem;font-size:.76rem}.type-kind-tag{display:inline-flex;gap:4px;align-items:center;margin-inline-start:8px;padding:1px 8px 1px 6px;border:1px solid color-mix(in srgb,var(--iot-accent),transparent 60%);border-radius:999px;background:color-mix(in srgb,var(--iot-accent),transparent 90%);color:var(--iot-accent);font-size:.66rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;vertical-align:middle}.type-kind-tag svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.badge-paint-mode select{font-size:.75rem;padding:2px 4px;border-radius:6px;border:1px solid var(--iot-border, rgba(0, 0, 0, .15));background:var(--iot-surface, #fff);color:var(--iot-text)}.iot-clearable{position:relative;display:block;flex:1 1 auto;min-width:0}.iot-clearable>input,.iot-clearable>textarea{width:100%;padding-inline-end:26px}.iot-clearable-clear{position:absolute;inset-inline-end:4px;top:50%;transform:translateY(-50%);width:18px;height:18px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:var(--iot-muted, #6b7280);font-size:.95rem;line-height:1;cursor:pointer}.iot-clearable-clear:hover{background:var(--iot-control-bg-hover, rgba(148, 163, 184, .22));color:var(--iot-text)}.iot-clearable>textarea+.iot-clearable-clear{top:6px;transform:none}:root,html[data-theme=dark]{--d3-hi: rgba(255, 255, 255, .1);--d3-lo: rgba(0, 0, 0, .35);--d3-face: linear-gradient(180deg, color-mix(in srgb, var(--iot-surface) 90%, #fff) 0%, var(--iot-surface) 38%, color-mix(in srgb, var(--iot-surface) 92%, #000) 100%);--d3-raised: inset 0 1px 0 var(--d3-hi), inset 0 -1px 0 var(--d3-lo), 0 1px 2px rgba(0, 0, 0, .28), 0 4px 10px -4px rgba(0, 0, 0, .35);--d3-raised-hover: inset 0 1px 0 var(--d3-hi), inset 0 -1px 0 var(--d3-lo), 0 2px 4px rgba(0, 0, 0, .3), 0 8px 16px -6px rgba(0, 0, 0, .4);--d3-sunk: inset 0 2px 5px rgba(0, 0, 0, .38), inset 0 -1px 0 var(--d3-hi);--d3-pressed: inset 0 2px 6px rgba(0, 0, 0, .42), inset 0 -1px 0 var(--d3-hi), 0 0 0 1px color-mix(in srgb, var(--iot-accent) 55%, transparent), 0 0 14px -2px color-mix(in srgb, var(--iot-accent) 45%, transparent);--d3-well: color-mix(in srgb, var(--iot-surface) 82%, #000);--d3-sheet: inset 0 1px 0 rgba(255, 255, 255, .1), inset 0 -2px 0 rgba(0, 0, 0, .22), 0 2px 0 color-mix(in srgb, var(--iot-surface) 70%, #000), 0 14px 30px -14px rgba(0, 0, 0, .55);--d3-float: inset 0 1px 0 rgba(255, 255, 255, .14), inset 0 -2px 0 rgba(0, 0, 0, .25), 0 2px 0 color-mix(in srgb, var(--iot-surface) 70%, #000), 0 30px 60px -18px rgba(0, 0, 0, .6), 0 12px 24px -10px rgba(0, 0, 0, .4)}html[data-theme=light]{--d3-ink: var(--iot-text);--d3-hi: rgba(255, 255, 255, .95);--d3-lo: color-mix(in srgb, var(--d3-ink) 16%, transparent);--d3-face: linear-gradient(180deg, color-mix(in srgb, var(--iot-surface) 70%, #fff) 0%, var(--iot-surface) 40%, color-mix(in srgb, var(--iot-surface) 95%, var(--d3-ink)) 100%);--d3-raised: inset 0 1px 0 var(--d3-hi), inset 0 -1px 0 var(--d3-lo), 0 1px 2px color-mix(in srgb, var(--d3-ink) 14%, transparent), 0 4px 10px -4px color-mix(in srgb, var(--d3-ink) 22%, transparent);--d3-raised-hover: inset 0 1px 0 var(--d3-hi), inset 0 -1px 0 var(--d3-lo), 0 2px 4px color-mix(in srgb, var(--d3-ink) 16%, transparent), 0 8px 16px -6px color-mix(in srgb, var(--d3-ink) 28%, transparent);--d3-sunk: inset 0 2px 4px color-mix(in srgb, var(--d3-ink) 18%, transparent), inset 0 -1px 0 var(--d3-hi);--d3-pressed: inset 0 2px 5px color-mix(in srgb, var(--d3-ink) 22%, transparent), inset 0 -1px 0 var(--d3-hi), 0 0 0 1px color-mix(in srgb, var(--iot-accent) 55%, transparent), 0 0 12px -2px color-mix(in srgb, var(--iot-accent) 35%, transparent);--d3-well: color-mix(in srgb, var(--iot-surface) 94%, var(--d3-ink));--d3-sheet: inset 0 1px 0 #fff, inset 0 -2px 0 color-mix(in srgb, var(--d3-ink) 7%, transparent), 0 2px 0 color-mix(in srgb, var(--iot-surface) 88%, var(--d3-ink)), 0 14px 30px -16px color-mix(in srgb, var(--d3-ink) 28%, transparent);--d3-float: inset 0 1px 0 #fff, inset 0 -2px 0 color-mix(in srgb, var(--d3-ink) 8%, transparent), 0 2px 0 color-mix(in srgb, var(--iot-surface) 85%, var(--d3-ink)), 0 30px 60px -20px color-mix(in srgb, var(--d3-ink) 35%, transparent), 0 12px 24px -10px color-mix(in srgb, var(--d3-ink) 20%, transparent)}html[data-look-skin=S08]{--d3-hi: transparent;--d3-lo: var(--iot-text);--d3-face: var(--iot-surface);--d3-well: var(--iot-surface);--d3-raised: none;--d3-raised-hover: 0 0 0 1px var(--iot-text);--d3-sunk: none;--d3-pressed: 0 0 0 2px var(--iot-accent);--d3-sheet: none;--d3-float: 0 0 0 2px var(--iot-text)}.iot-panel{background:var(--d3-face);border-color:color-mix(in srgb,var(--iot-border-strong, var(--iot-border)) 70%,transparent);box-shadow:var(--d3-sheet)}html :is([role=dialog],[role=alertdialog]):not(.clip-stage,.appearance-screen,.palette){background:var(--d3-face);border:1px solid color-mix(in srgb,var(--iot-border-strong, var(--iot-border)) 70%,transparent);border-radius:max(var(--iot-radius-lg, 8px),12px);box-shadow:var(--d3-float);color:var(--iot-text)}html :is([role=menu],[role=listbox][class*=option],[role=listbox][class*=popover],.filter-popover){background:var(--d3-face);border-color:color-mix(in srgb,var(--iot-border-strong, var(--iot-border)) 70%,transparent);box-shadow:var(--d3-float)}.iot-button,.iot-btn,.secondary-button,.compact-button,.panel-button,.table-action{background:var(--d3-face);border:1px solid color-mix(in srgb,var(--iot-border) 80%,transparent);border-radius:10px;box-shadow:var(--d3-raised);transition:box-shadow .15s ease,transform .15s ease,background .15s ease}.iot-button:hover:not(:disabled),.iot-btn:hover:not(:disabled),.secondary-button:hover:not(:disabled),.compact-button:hover:not(:disabled),.panel-button:hover:not(:disabled),.table-action:hover:not(:disabled){box-shadow:var(--d3-raised-hover);transform:translateY(-1px)}.iot-button:active:not(:disabled),.iot-btn:active:not(:disabled),.secondary-button:active:not(:disabled),.compact-button:active:not(:disabled),.panel-button:active:not(:disabled),.table-action:active:not(:disabled){box-shadow:var(--d3-sunk);transform:translateY(1px)}.iot-button,.iot-btn,.secondary-button,.compact-button,.panel-button,.table-action{border-radius:var(--iot-radius);color:var(--iot-text)}.iot-button.primary,.iot-btn.primary,.primary-button{color:var(--iot-on-accent);border-color:color-mix(in srgb,var(--iot-accent) 70%,#000);background:linear-gradient(180deg,color-mix(in srgb,var(--iot-accent) 80%,#fff) 0%,var(--iot-accent) 55%,color-mix(in srgb,var(--iot-accent) 82%,#000) 100%);text-shadow:0 1px 0 rgba(255,255,255,.25);font-weight:600}.iot-button.danger,.iot-btn.danger,.danger-button{color:var(--iot-danger);border-color:color-mix(in srgb,var(--iot-danger) 55%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--iot-danger) 14%,var(--iot-surface)),color-mix(in srgb,var(--iot-danger) 9%,var(--iot-surface)));font-weight:600}.iot-button.ghost{background:transparent;border-color:transparent;box-shadow:none}.iot-button.ghost:hover:not(:disabled){background:var(--d3-face);border-color:color-mix(in srgb,var(--iot-border) 80%,transparent);box-shadow:var(--d3-raised)}.iot-button:disabled,.iot-btn:disabled{box-shadow:none;transform:none}.segmented{background:var(--d3-well);border:1px solid color-mix(in srgb,var(--iot-border) 85%,transparent);box-shadow:var(--d3-sunk);border-radius:16px}.segmented .iot-button.active,.segmented .iot-button[aria-pressed=true]{background:color-mix(in srgb,var(--iot-accent) 12%,var(--d3-well));border-color:color-mix(in srgb,var(--iot-accent) 60%,transparent);box-shadow:var(--d3-pressed);color:var(--iot-text)}.iot-input,textarea,input:not([type]),input:is([type=text],[type=search],[type=number],[type=email],[type=password],[type=url],[type=tel],[type=date],[type=time],[type=datetime-local],[type=month],[type=week]){background-color:var(--d3-well);border:1px solid color-mix(in srgb,var(--iot-border) 90%,transparent);border-radius:8px;box-shadow:var(--d3-sunk)}.iot-input:focus,textarea:focus,input:not([type]):focus,input:is([type=text],[type=search],[type=number],[type=email],[type=password],[type=url],[type=tel],[type=date],[type=time],[type=datetime-local],[type=month],[type=week]):focus{outline:none;border-color:color-mix(in srgb,var(--iot-accent) 70%,transparent);box-shadow:var(--d3-sunk),0 0 0 2px color-mix(in srgb,var(--iot-accent) 30%,transparent)}.iot-input,textarea,input:not([type]),input:is([type=text],[type=search],[type=number],[type=email],[type=password],[type=url],[type=tel],[type=date],[type=time],[type=datetime-local],[type=month],[type=week]){border-radius:var(--iot-radius)}:is(.module-search,.selector-search,.operation-search,.search-box,.lookup-search,.palette-search,.search-field){box-shadow:var(--d3-sunk)}:is(.module-search,.selector-search,.operation-search,.search-box,.lookup-search,.palette-search,.search-field,.dial-readout,.theme-swatches) input{box-shadow:none}select{border:1px solid color-mix(in srgb,var(--iot-border) 90%,transparent);box-shadow:var(--d3-sunk)}select:focus{outline:none;border-color:color-mix(in srgb,var(--iot-accent) 70%,transparent);box-shadow:var(--d3-sunk),0 0 0 2px color-mix(in srgb,var(--iot-accent) 30%,transparent)}input[type=checkbox]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only){appearance:none;-webkit-appearance:none;display:inline-grid;place-content:center;flex:none;width:1.05rem;height:1.05rem;min-width:1.05rem;min-height:0;max-height:1.05rem;margin:0;padding:0;vertical-align:middle;background-color:var(--d3-well);border:1px solid color-mix(in srgb,var(--iot-border) 95%,var(--iot-text));border-radius:5px;box-shadow:var(--d3-sunk);cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease,border-color .12s ease}input[type=checkbox]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):after{content:"";width:.55rem;height:.3rem;border:solid var(--iot-on-accent, #fff);border-width:0 0 2px 2px;transform:translateY(-15%) rotate(-45deg) scale(0);transition:transform .12s ease}input[type=checkbox]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):checked,input[type=checkbox]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):indeterminate{background:linear-gradient(180deg,color-mix(in srgb,var(--iot-accent) 80%,#fff) 0%,var(--iot-accent) 55%,color-mix(in srgb,var(--iot-accent) 82%,#000) 100%);border-color:color-mix(in srgb,var(--iot-accent) 70%,#000);box-shadow:inset 0 1px #ffffff4d,0 0 8px -2px color-mix(in srgb,var(--iot-accent) 60%,transparent)}input[type=checkbox]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):checked:after{transform:translateY(-15%) rotate(-45deg) scale(1)}input[type=checkbox]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):indeterminate:after{height:0;border-width:0 0 2px;transform:none}input[type=checkbox]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):focus-visible{outline:2px solid color-mix(in srgb,var(--iot-accent) 60%,transparent);outline-offset:2px}input[type=checkbox]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):disabled{opacity:.5;cursor:default}@media(prefers-reduced-motion:reduce){input[type=checkbox]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only){transition:none}input[type=checkbox]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):after{transition:none}}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only){appearance:none;-webkit-appearance:none;display:inline-grid;place-content:center;flex:none;width:1.05rem;height:1.05rem;min-width:1.05rem;min-height:0;max-height:1.05rem;margin:0;padding:0;vertical-align:middle;background-color:var(--d3-well);border:1px solid color-mix(in srgb,var(--iot-border) 95%,var(--iot-text));border-radius:5px;box-shadow:var(--d3-sunk);cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease,border-color .12s ease}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):after{content:"";width:.55rem;height:.3rem;border:solid var(--iot-on-accent, #fff);border-width:0 0 2px 2px;transform:translateY(-15%) rotate(-45deg) scale(0);transition:transform .12s ease}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):checked,input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):indeterminate{background:linear-gradient(180deg,color-mix(in srgb,var(--iot-accent) 80%,#fff) 0%,var(--iot-accent) 55%,color-mix(in srgb,var(--iot-accent) 82%,#000) 100%);border-color:color-mix(in srgb,var(--iot-accent) 70%,#000);box-shadow:inset 0 1px #ffffff4d,0 0 8px -2px color-mix(in srgb,var(--iot-accent) 60%,transparent)}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):checked:after{transform:translateY(-15%) rotate(-45deg) scale(1)}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):indeterminate:after{height:0;border-width:0 0 2px;transform:none}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):focus-visible{outline:2px solid color-mix(in srgb,var(--iot-accent) 60%,transparent);outline-offset:2px}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):disabled{opacity:.5;cursor:default}@media(prefers-reduced-motion:reduce){input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only){transition:none}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):after{transition:none}}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only){border-radius:50%}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):after{width:.42rem;height:.42rem;border:0;border-radius:50%;background:var(--iot-on-accent, #fff);transform:scale(0)}input[type=radio]:not(:has(+[class*=track],+[class*=slider],+[class*=knob],+[class*=toggle],+[class*=switch]),[hidden],.visually-hidden,.sr-only):checked:after{transform:scale(1)}input[type=range]{appearance:none;-webkit-appearance:none;height:1.3rem;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:6px;background:var(--d3-well);border:1px solid color-mix(in srgb,var(--iot-border) 90%,transparent);border-radius:999px;box-shadow:var(--d3-sunk)}input[type=range]::-moz-range-track{height:6px;background:var(--d3-well);border:1px solid color-mix(in srgb,var(--iot-border) 90%,transparent);border-radius:999px;box-shadow:var(--d3-sunk)}input[type=range]::-moz-range-progress{height:6px;border-radius:999px;background:color-mix(in srgb,var(--iot-accent) 70%,transparent)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;margin-top:-6px;background:var(--d3-face);border:1px solid color-mix(in srgb,var(--iot-accent) 55%,var(--iot-border));border-radius:50%;box-shadow:var(--d3-raised)}input[type=range]::-moz-range-thumb{width:16px;height:16px;background:var(--d3-face);border:1px solid color-mix(in srgb,var(--iot-accent) 55%,var(--iot-border));border-radius:50%;box-shadow:var(--d3-raised)}input[type=range]:focus-visible{outline:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:var(--d3-raised),0 0 0 3px color-mix(in srgb,var(--iot-accent) 35%,transparent)}input[type=range]:disabled{opacity:.5;cursor:default}thead th{box-shadow:inset 0 1px 0 var(--d3-hi),inset 0 -1px 0 var(--d3-lo)}.chip,.status-pill,.option-chip,.pick-chip,.range-chip,.context-chip,.preview-chip,.notification-chip,.tool-pill,.film-chip{box-shadow:var(--d3-raised)}:root[data-look-icons=tinted] :is(button,.iot-button,a[role=button]):not(.danger,.primary,.danger-button,.primary-button,:disabled)>svg:not(.tl-ico),:root[data-look-icons=tricolour] :is(button,.iot-button,a[role=button]):not(.danger,.primary,.danger-button,.primary-button,:disabled)>svg:not(.tl-ico){color:var(--iot-accent)}:root[data-look-icons=tricolour] :is(button,.iot-button,a[role=button]):not(.danger,.primary,.danger-button,.primary-button,:disabled)>svg:not(.tl-ico) :is(circle,ellipse){stroke:var(--iot-accent-2, var(--iot-accent))}@media(prefers-reduced-motion:reduce){.iot-button,.iot-btn,.secondary-button,.compact-button,.panel-button,.table-action{transition:none;transform:none!important}}html.iot-busy,html.iot-busy *{cursor:progress!important}
