@import"https://fonts.googleapis.com/css2?family=Sansation:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap";.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.screen-network{overflow:hidden;display:flex;flex-direction:column;position:relative;z-index:1;flex:1;min-height:0;width:100%}.network-container{padding:24px;flex:1;display:flex;flex-direction:column;gap:24px;overflow-y:auto}.network-header{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.network-title{font-size:32px;font-weight:400;font-family:var(--font-heading);font-style:italic;color:var(--text-ink-1);margin:0;letter-spacing:-.3px}.network-subtitle{font-size:14px;color:var(--text-secondary);margin:0;font-weight:400}.network-view-toggle{display:inline-flex;align-self:flex-start;gap:4px;padding:4px;background:var(--glass-bg);border:.33px solid var(--glass-border);border-radius:10px;backdrop-filter:blur(var(--glass-blur)) saturate(145%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(145%)}.view-toggle-btn{min-width:112px;border:0;border-radius:8px;padding:9px 14px;background:transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;transition:background .25s ease,color .25s ease,transform .25s ease}.view-toggle-btn:hover,.view-toggle-btn:focus-visible{color:var(--text-ink-1)}.view-toggle-btn.active{background:rgba(var(--ar),var(--ag),var(--ab),.12);color:var(--text-ink-1);box-shadow:inset 0 0 0 .33px rgba(var(--ar),var(--ag),var(--ab),.18)}.filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(145%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(145%);border:.33px solid var(--glass-border);border-radius:22px;padding:16px}.search-wrapper{position:relative;flex:1;min-width:200px;display:flex;align-items:center}.search-icon{position:absolute;left:12px;width:18px;height:18px;color:var(--text-secondary);pointer-events:none;flex-shrink:0}.search-input{width:100%;background:rgba(var(--ar),var(--ag),var(--ab),.06);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.1);border-radius:14px;padding:10px 16px 10px 40px;color:var(--text-ink-1);font-size:14px;font-family:var(--font-body);transition:all .3s ease;outline:none}.search-input::placeholder{color:var(--text-ink-4)}.search-input:focus,.search-input:hover{background:rgba(var(--ar),var(--ag),var(--ab),.09);border-color:rgba(var(--ar),var(--ag),var(--ab),.15)}.filter-select{background:var(--glass-bg);border:.33px solid var(--glass-border);border-radius:14px;padding:10px 12px;color:var(--text-ink-1);font-size:13px;font-family:var(--font-body);cursor:pointer;color-scheme:dark;transition:all .3s ease;outline:none;min-width:140px}.filter-select:hover,.filter-select:focus{background:rgba(var(--ar),var(--ag),var(--ab),.09);border-color:rgba(var(--ar),var(--ag),var(--ab),.15)}.filter-select option{background:#162716;color:var(--text-primary)}[data-mode=light] .filter-select{background:#f5fae9b8;color:var(--brand-forest);color-scheme:light}[data-mode=light] .filter-select option{background:var(--brand-cream);color:var(--brand-forest)}.clear-filters-btn{background:#b482781a;border:.33px solid rgba(180,130,120,.2);border-radius:8px;padding:8px 14px;color:var(--text-ink-3);font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease;white-space:nowrap}.clear-filters-btn:hover{background:#b4827826;border-color:#b4827859}.network-map-shell{display:flex;flex-direction:column;gap:18px;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(145%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(145%);border:.33px solid var(--glass-border);border-radius:18px;padding:18px}.network-map-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.network-map-title{margin:0 0 4px;color:var(--text-ink-1);font-family:var(--font-heading);font-size:22px;font-style:italic;font-weight:400}.network-map-subtitle{margin:0;color:var(--text-secondary);font-size:13px}.map-reset-btn{flex-shrink:0;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.16);border-radius:8px;padding:8px 12px;background:rgba(var(--ar),var(--ag),var(--ab),.07);color:var(--text-ink-2);font-family:var(--font-body);font-size:12px;cursor:pointer;transition:background .25s ease,border-color .25s ease}.map-reset-btn:hover,.map-reset-btn:focus-visible{background:rgba(var(--ar),var(--ag),var(--ab),.12);border-color:rgba(var(--ar),var(--ag),var(--ab),.26)}.network-map-layout{display:grid;grid-template-columns:minmax(360px,1fr) minmax(280px,360px);gap:20px;align-items:stretch}.network-map-canvas{min-height:430px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:12px;background:rgba(var(--ar),var(--ag),var(--ab),.035);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.08)}.network-greece-map{width:min(100%,760px);height:auto;max-height:560px;filter:drop-shadow(0 20px 42px rgba(0,0,0,.22))}.network-map-region{fill:rgba(var(--ar),var(--ag),var(--ab),.64);stroke:#ffffff29;stroke-width:1;opacity:.82;cursor:pointer;transform-box:fill-box;transform-origin:center;transition:fill .25s ease,opacity .25s ease,filter .25s ease,transform .25s ease,stroke .25s ease}.network-map-region:hover,.network-map-region:focus-visible{fill:rgba(var(--ar),var(--ag),var(--ab),.92);opacity:1;filter:drop-shadow(0 0 14px rgba(var(--ar),var(--ag),var(--ab),.45));transform:scale(1.018);outline:none}.network-map-region[data-selected=true]{fill:rgba(var(--ar),var(--ag),var(--ab),1);opacity:1;stroke:#ffffffd1;stroke-width:1.5;filter:drop-shadow(0 0 18px rgba(var(--ar),var(--ag),var(--ab),.5))}.network-map-panel{display:flex;flex-direction:column;min-height:430px;padding:18px;border-radius:12px;background:rgba(var(--ar),var(--ag),var(--ab),.045);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.1)}.map-panel-heading{display:flex;flex-direction:column;gap:4px;padding-bottom:14px;margin-bottom:14px;border-bottom:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12)}.map-panel-kicker{color:var(--text-ink-4);font-size:11px;font-weight:600;letter-spacing:0;text-transform:uppercase}.map-panel-heading h3{margin:0;color:var(--text-ink-1);font-family:var(--font-heading);font-size:23px;font-style:italic;font-weight:400;line-height:1.15}.map-panel-heading p{margin:0;color:var(--text-secondary);font-size:13px}.map-city-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding-right:4px}.map-city-chip{width:100%;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.1);border-radius:8px;padding:9px 11px;background:rgba(var(--ar),var(--ag),var(--ab),.045);color:var(--text-ink-2);font-family:var(--font-body);font-size:13px;text-align:left;cursor:pointer;transition:background .22s ease,border-color .22s ease,transform .22s ease}.map-city-chip span{min-width:26px;border-radius:999px;padding:2px 7px;background:rgba(var(--ar),var(--ag),var(--ab),.1);color:var(--text-ink-4);font-size:11px;text-align:center}.map-city-chip:hover,.map-city-chip:focus-visible{transform:translate(3px);background:rgba(var(--ar),var(--ag),var(--ab),.08);border-color:rgba(var(--ar),var(--ag),var(--ab),.18)}.map-city-chip.active{background:rgba(var(--ar),var(--ag),var(--ab),.12);border-color:rgba(var(--ar),var(--ag),var(--ab),.28);color:var(--text-ink-1)}.map-empty-note,.map-panel-placeholder{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--text-secondary);font-size:13px;line-height:1.5}.map-panel-placeholder{flex-direction:column;gap:14px}.map-panel-placeholder svg{width:42px;height:42px;color:var(--text-ink-4);opacity:.7}.results-info{display:flex;justify-content:space-between;align-items:center;padding:0 4px;font-size:13px;color:var(--text-secondary)}.results-count{font-weight:500}.results-filter{color:var(--text-ink-4);font-size:12px}.companies-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));animation:fadeInGrid .5s ease-out}@keyframes fadeInGrid{0%{opacity:0}to{opacity:1}}.company-tile{display:flex;flex-direction:column;gap:12px;padding:20px;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:.33px solid var(--glass-border);border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);animation:tileEnter .5s ease-out backwards;outline:none;pointer-events:auto;-webkit-user-select:none;user-select:none}@keyframes tileEnter{0%{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.company-tile:hover,.company-tile:focus-visible{transform:scale(1.01);background:rgba(var(--ar),var(--ag),var(--ab),.08);border-color:rgba(var(--ar),var(--ag),var(--ab),.15)}.company-tile:focus-visible{outline:.5px solid rgba(var(--ar),var(--ag),var(--ab),.4);outline-offset:2px}.tile-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.company-logo{width:48px;height:48px;border-radius:50%;object-fit:cover;background:#ffffff1a}.connection-badge{background:rgba(var(--ar),var(--ag),var(--ab),.12);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.2);border-radius:6px;padding:4px 8px;font-size:11px;font-weight:500;color:var(--text-ink-2);white-space:nowrap}.tile-company-name{font-size:18px;font-weight:400;font-family:var(--font-heading);font-style:italic;color:var(--text-ink-1);margin:0;line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.tile-location{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary)}.location-icon{width:14px;height:14px;flex-shrink:0}.industry-tag{display:inline-flex;background:rgba(var(--ar),var(--ag),var(--ab),.08);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-radius:20px;padding:4px 10px;font-size:11px;font-weight:400;color:var(--text-ink-4);white-space:nowrap;font-family:var(--font-body)}.load-more-btn{margin:20px auto 0;padding:12px 32px;background:rgba(var(--ar),var(--ag),var(--ab),.08);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-radius:8px;color:var(--text-primary);font-size:14px;font-weight:400;cursor:pointer;transition:all .3s ease;display:block;font-family:var(--font-body)}.load-more-btn:hover{background:rgba(var(--ar),var(--ag),var(--ab),.12);border-color:rgba(var(--ar),var(--ag),var(--ab),.25)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 24px;text-align:center;min-height:400px}.empty-state svg{width:64px;height:64px;color:var(--text-secondary);opacity:.5}.empty-state h3{font-size:20px;font-weight:600;color:var(--text-primary);margin:0}.empty-state p{font-size:14px;color:var(--text-secondary);margin:0;max-width:400px}.reset-btn{padding:10px 24px;background:rgba(var(--ar),var(--ag),var(--ab),.08);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-radius:8px;color:var(--text-primary);font-size:14px;font-weight:400;cursor:pointer;transition:all .3s ease;font-family:var(--font-body)}.reset-btn:hover{background:rgba(var(--ar),var(--ag),var(--ab),.12);border-color:rgba(var(--ar),var(--ag),var(--ab),.25)}.network-company-backdrop{position:fixed;inset:0;z-index:9999;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease-out;pointer-events:auto;opacity:1}@keyframes fadeIn{0%{opacity:0;visibility:hidden}to{opacity:1;visibility:visible}}.company-modal{position:relative;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;background:#1e1e1ef2;backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-radius:24px;padding:32px;gap:24px;display:flex;flex-direction:column;animation:modalEnter .3s cubic-bezier(.34,1.56,.64,1);pointer-events:auto;z-index:10000}[data-mode=light] .network-company-backdrop{background:#2d4b2f38}[data-mode=light] .company-modal{background:#f5fae9f0;border-color:#2d4b2f38;box-shadow:0 24px 80px #2d4b2f38;color:var(--text-ink-1)}@keyframes modalEnter{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-close{position:absolute;top:16px;right:16px;width:36px;height:36px;background:rgba(var(--ar),var(--ag),var(--ab),.08);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.1);border-radius:8px;color:var(--text-primary);font-size:20px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.modal-close:hover{background:#ffffff1f;border-color:#ffffff40}.modal-content{display:flex;flex-direction:column;gap:24px}.modal-header{display:flex;align-items:flex-start;gap:20px}.modal-logo{width:80px;height:80px;border-radius:12px;object-fit:cover;flex-shrink:0}.modal-company-name{font-size:26px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.modal-industry{font-size:13px;color:rgba(var(--ar),var(--ag),var(--ab),1);margin:0;font-weight:500}.modal-description{font-size:14px;color:var(--text-secondary);line-height:1.6;margin:0}.modal-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-item label{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.info-item span,.info-item value{font-size:15px;font-weight:500;color:var(--text-primary)}.modal-contacts{display:flex;flex-direction:column;gap:16px}.modal-contacts h3{font-size:14px;font-weight:600;color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.5px;opacity:.8}.contact-details{display:flex;flex-direction:column;gap:10px}.contact-link{display:flex;align-items:center;gap:12px;padding:10px;background:rgba(var(--ar),var(--ag),var(--ab),.06);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12);border-radius:8px;color:var(--text-ink-4);font-size:13px;text-decoration:none;transition:all .3s ease;word-break:break-all;font-family:var(--font-body)}.contact-link svg{width:16px;height:16px;flex-shrink:0;color:rgba(var(--ar),var(--ag),var(--ab),.7)}.contact-link:hover{background:#ffffff14;border-color:#fff3;color:var(--text-primary)}.modal-socials{display:flex;flex-direction:column;gap:12px}.modal-socials h3{font-size:14px;font-weight:600;color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.5px;opacity:.8}.social-links{display:flex;gap:12px}.social-link{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(var(--ar),var(--ag),var(--ab),.08);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-radius:8px;color:var(--text-primary);font-size:16px;font-weight:400;text-decoration:none;transition:all .3s ease;cursor:pointer}.social-link:hover{background:rgba(var(--ar),var(--ag),var(--ab),.2);border-color:rgba(var(--ar),var(--ag),var(--ab),.4);transform:translateY(-2px)}.modal-actions{display:flex;gap:12px;margin-top:12px}.action-btn{flex:1;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;border:none;font-family:inherit;outline:none}.action-btn svg{width:16px;height:16px}.primary-action{background:rgba(var(--ar),var(--ag),var(--ab),.1);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.2);color:var(--text-primary)}.primary-action:hover{background:rgba(var(--ar),var(--ag),var(--ab),.15);border-color:rgba(var(--ar),var(--ag),var(--ab),.3)}.secondary-action{background:rgba(var(--ar),var(--ag),var(--ab),.06);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12);color:var(--text-ink-5);font-family:var(--font-body)}.secondary-action:hover{background:#ffffff1f;border-color:#ffffff40;color:var(--text-primary)}@media(min-width:768px)and (max-width:1023px){.companies-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.filter-bar{flex-wrap:wrap}.filter-select{flex:1;min-width:140px}.company-modal{max-width:90vw;padding:28px}}@media(min-width:1024px){.companies-grid{grid-template-columns:repeat(auto-fill,minmax(320px,350px));justify-content:center}.network-container{max-width:1600px;margin:0 auto;width:100%}.filter-bar{flex-wrap:nowrap}.search-wrapper{flex:1}.filter-select{flex:0 1 140px}.company-modal{max-width:650px}}@media(max-width:1023px){.network-map-layout{grid-template-columns:1fr}.network-map-canvas,.network-map-panel{min-height:auto}.network-map-canvas{min-height:360px}.network-map-panel{max-height:320px}}@media(max-width:768px){.network-container{padding:16px;gap:16px}.network-title{font-size:24px}.network-subtitle{font-size:13px}.companies-grid{grid-template-columns:1fr;gap:16px}.filter-bar{flex-direction:column;padding:12px;gap:10px}.search-wrapper{width:100%;min-width:auto}.search-input,.filter-select,.clear-filters-btn,.network-view-toggle{width:100%}.view-toggle-btn{flex:1;min-width:0}.network-map-shell{padding:12px;border-radius:14px}.network-map-toolbar{flex-direction:column}.map-reset-btn{width:100%}.network-map-canvas{min-height:300px;border-radius:10px}.network-greece-map{width:115%;max-height:390px}.network-map-panel{border-radius:10px;padding:14px}.company-tile{padding:16px;gap:10px}.tile-company-name{font-size:16px}.modal-backdrop{padding:12px}.company-modal{max-width:100%;padding:20px;border-radius:16px}.modal-header{gap:16px}.modal-logo{width:64px;height:64px}.modal-company-name{font-size:22px}.modal-info-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column}.action-btn{width:100%}.results-info{flex-direction:column;align-items:flex-start}}.network-container::-webkit-scrollbar{width:6px}.network-container::-webkit-scrollbar-track{background:transparent}.network-container::-webkit-scrollbar-thumb{background:rgba(var(--ar),var(--ag),var(--ab),.6);border-radius:3px;min-height:40px}.network-container::-webkit-scrollbar-thumb:hover{background:rgba(var(--ar),var(--ag),var(--ab),.8)}.company-modal::-webkit-scrollbar{width:6px}.company-modal::-webkit-scrollbar-track{background:transparent}.company-modal::-webkit-scrollbar-thumb{background:rgba(var(--ar),var(--ag),var(--ab),.3);border-radius:3px}.company-modal::-webkit-scrollbar-thumb:hover{background:rgba(var(--ar),var(--ag),var(--ab),.5)}:focus-visible{outline-offset:2px}@media(prefers-contrast:more){.company-tile,.filter-select,.search-input,.connection-badge{border-width:2px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.company-tile,.modal-backdrop,.company-modal{animation:none}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}:root{--brand-forest: #2d4b2f;--brand-eucalyptus: #5f8062;--brand-sage: #afd19a;--brand-cream: #f5fae9;--brand-olive: #7f966d;--glass-bg: rgba(24, 39, 25, .52);--glass-border: rgba(175, 209, 154, .2);--glass-blur: 24px;--glass-shadow: 0 18px 54px rgba(20, 38, 21, .24), inset 0 1px 0 rgba(245, 250, 233, .05);--text-ink-1: rgba(245, 242, 238, .98);--text-ink-2: rgba(200, 192, 180, .95);--text-ink-3: rgba(170, 160, 145, .88);--text-ink-4: rgba(140, 130, 115, .75);--text-ink-5: rgba(110, 100, 85, .65);--text-ink-6: rgba(85, 75, 60, .55);--text-ink-7: rgba(60, 50, 35, .45);--text-ink-8: rgba(40, 30, 15, .35);--text-primary: var(--text-ink-1);--text-secondary: var(--text-ink-2);--font-body: "Sansation", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading: "Sansation", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ar: 175;--ag: 209;--ab: 154;--bg-tint-1: rgba(95, 128, 98, .12);--bg-tint-2: rgba(45, 75, 47, .18);--bg-base: #162716;--bg-gradient-1: #0d1723;--bg-gradient-2: #162716;--accent-solid: var(--brand-sage)}[data-mode=light]{--glass-bg: rgba(245, 250, 233, .46);--glass-border: rgba(45, 75, 47, .2);--glass-blur: 28px;--glass-shadow: 0 18px 50px rgba(45, 75, 47, .14), inset 0 1px 0 rgba(245, 250, 233, .46);--text-ink-1: rgba(10, 15, 10, .9);--text-ink-2: rgba(45, 50, 45, .82);--text-ink-3: rgba(75, 80, 75, .72);--text-ink-4: rgba(105, 110, 105, .62);--text-ink-5: rgba(135, 140, 135, .52);--text-ink-6: rgba(165, 170, 165, .42);--text-ink-7: rgba(195, 200, 195, .32);--text-ink-8: rgba(215, 220, 215, .22);--ar: 45;--ag: 75;--ab: 47;--bg-tint-1: rgba(175, 209, 154, .24);--bg-tint-2: rgba(95, 128, 98, .22);--bg-base: var(--brand-cream);--bg-gradient-1: #d9e9f3;--bg-gradient-2: var(--brand-olive);--accent-solid: var(--brand-forest)}html,body,#root{width:100%;height:100%;overflow:hidden;background:var(--bg-base);font-family:var(--font-body);color:var(--text-primary);-webkit-font-smoothing:antialiased;transition:background .5s ease,color .5s ease}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-style:normal;font-weight:700;letter-spacing:0}.grain-bg{position:fixed;inset:-28px;z-index:0;background:linear-gradient(180deg,#d9e9f3,#e5ede8 22%,#f5fae9 46%,#d7e6c2 66%,#a9bf86 84%,#7f966d);transform:scale(1.02);transition:background .5s ease,opacity .5s ease;overflow:hidden}[data-mode=dark] .grain-bg{background:radial-gradient(ellipse at 24% 18%,rgba(95,128,98,.12) 0%,transparent 58%),radial-gradient(ellipse at 76% 82%,rgba(45,75,47,.16) 0%,transparent 64%),linear-gradient(180deg,#0d1723,#0a131c 24%,#07100f 52%,#101b12 78%,#162716)}.grain-bg:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 7% 7%,rgba(235,246,255,.82) 0 1.2px,transparent 2.4px),radial-gradient(circle at 15% 15%,rgba(210,230,255,.58) 0 1px,transparent 2.2px),radial-gradient(circle at 24% 8%,rgba(245,250,255,.74) 0 1.1px,transparent 2.3px),radial-gradient(circle at 33% 22%,rgba(200,224,255,.42) 0 .9px,transparent 2px),radial-gradient(circle at 43% 12%,rgba(240,248,255,.68) 0 1.1px,transparent 2.3px),radial-gradient(circle at 53% 5%,rgba(215,235,255,.5) 0 .9px,transparent 2px),radial-gradient(circle at 64% 18%,rgba(245,250,255,.62) 0 1.1px,transparent 2.3px),radial-gradient(circle at 74% 9%,rgba(205,228,255,.48) 0 .9px,transparent 2px),radial-gradient(circle at 86% 17%,rgba(235,246,255,.54) 0 1px,transparent 2.2px),radial-gradient(circle at 94% 6%,rgba(245,250,255,.7) 0 1.1px,transparent 2.3px),radial-gradient(circle at 19% 34%,rgba(220,238,255,.24) 0 .8px,transparent 1.8px),radial-gradient(circle at 47% 31%,rgba(235,246,255,.2) 0 .8px,transparent 1.8px),radial-gradient(circle at 79% 36%,rgba(215,235,255,.18) 0 .8px,transparent 1.8px),radial-gradient(circle at 11% 26%,rgba(245,250,255,.42) 0 .9px,transparent 2px),radial-gradient(circle at 29% 17%,rgba(215,235,255,.36) 0 .8px,transparent 1.9px),radial-gradient(circle at 39% 6%,rgba(235,246,255,.5) 0 .9px,transparent 2px),radial-gradient(circle at 58% 29%,rgba(210,230,255,.26) 0 .8px,transparent 1.9px),radial-gradient(circle at 69% 4%,rgba(245,250,255,.54) 0 .9px,transparent 2px),radial-gradient(circle at 83% 27%,rgba(220,238,255,.3) 0 .8px,transparent 1.9px),radial-gradient(circle at 97% 24%,rgba(235,246,255,.32) 0 .8px,transparent 1.9px);filter:blur(.25px);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 24%,rgba(0,0,0,.42) 44%,transparent 70%);mask-image:linear-gradient(180deg,#000 0%,#000 24%,rgba(0,0,0,.42) 44%,transparent 70%);mix-blend-mode:screen;opacity:0;pointer-events:none;transition:opacity .5s ease}[data-mode=dark] .grain-bg:before{opacity:.68}.grain-bg:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.08'/%3E%3C/svg%3E");background-size:128px 128px;opacity:.08;mix-blend-mode:overlay;pointer-events:none}[data-mode=light] .grain-bg:after{mix-blend-mode:multiply;opacity:0}.glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(140%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(140%);border:.33px solid var(--glass-border);border-radius:18px;box-shadow:var(--glass-shadow)}.page-dots{position:fixed;bottom:28px;left:50%;transform:translate(-50%);z-index:100;display:flex;gap:6px;align-items:center;pointer-events:none}.page-dot{width:6px;height:6px;border-radius:50%;background:rgba(var(--ar),var(--ag),var(--ab),.25);transition:all .3s ease}.page-dot.active{width:18px;border-radius:3px;background:rgba(var(--ar),var(--ag),var(--ab),.6)}.swipe-container{position:relative;z-index:1;width:100%;height:100%;display:flex;transition:transform .45s cubic-bezier(.4,0,.2,1);will-change:transform}.swipe-container.no-transition{transition:none}.screen{min-width:100vw;width:100vw;height:100dvh;overflow:hidden;position:relative;flex-shrink:0}.screen-home{position:relative;overflow:hidden}@media(min-width:900px){section:has(.split-copy):has(video),div:has(.split-copy):has(video){display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center;gap:clamp(28px,5vw,72px)}section:has(.split-copy):has(video) video,div:has(.split-copy):has(video) video{position:relative!important;inset:auto!important;grid-column:1;width:100%;height:auto;min-height:0;object-fit:cover;transform:none!important}section:has(.split-copy):has(video) .split-copy,div:has(.split-copy):has(video) .split-copy{position:relative!important;inset:auto!important;grid-column:2;z-index:1;transform:none!important;max-width:none}}@media(max-width:760px){section:has(.split-copy):has(video),div:has(.split-copy):has(video){position:relative;display:block;min-height:clamp(620px,100dvh,860px);overflow:hidden}section:has(.split-copy):has(video) video,div:has(.split-copy):has(video) video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}section:has(.split-copy):has(video):after,div:has(.split-copy):has(video):after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#0a120c3d,#0a120cb8),radial-gradient(circle at 50% 18%,rgba(175,209,154,.16),transparent 56%)}section:has(.split-copy):has(video) .split-copy,div:has(.split-copy):has(video) .split-copy{position:relative;z-index:2;min-height:inherit;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(26px,7vw,42px);color:#fbfff0;text-shadow:0 2px 20px rgba(0,0,0,.42)}section:has(.split-copy):has(video) .split-copy .stack-list,div:has(.split-copy):has(video) .split-copy .stack-list{display:grid;gap:12px;margin-top:22px}}.blob-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.input-mode-toggle{display:flex;gap:8px;background:rgba(var(--ar),var(--ag),var(--ab),.06);padding:6px;border-radius:20px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);margin-bottom:12px}.toggle-btn{width:40px;height:40px;border-radius:16px;border:none;background:transparent;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;color:var(--text-ink-5)}.toggle-btn:hover{background:rgba(var(--ar),var(--ag),var(--ab),.1);color:var(--text-ink-3)}.toggle-btn.active{background:rgba(var(--ar),var(--ag),var(--ab),.15);color:var(--accent-solid)}.text-input-btn{width:64px;height:64px;border-radius:50%;background:rgba(var(--ar),var(--ag),var(--ab),.08);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.text-input-btn:hover:not(:disabled){transform:scale(1.03);background:rgba(var(--ar),var(--ag),var(--ab),.12)}.text-input-btn:disabled{opacity:.6;cursor:not-allowed}.text-input-btn svg{width:24px;height:24px;fill:var(--accent-solid);stroke:var(--accent-solid)}.text-input-btn.busy{background:#b4827814}.text-input-btn.busy svg{fill:none;stroke:#b48278bf}.main-content{position:absolute;inset:0;width:100vw;height:100dvh}.login-screen{position:fixed;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:24px}.login-panel{width:min(100%,380px);display:grid;gap:22px;padding:28px;border-radius:8px}.login-logo{width:150px;max-width:70%;justify-self:center;filter:drop-shadow(0 10px 22px rgba(0,0,0,.18))}.login-fields{display:grid;gap:14px}.login-fields label{display:grid;gap:7px;color:var(--text-ink-2);font-size:.82rem;font-weight:700}.login-fields input{width:100%;min-height:46px;border-radius:8px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.22);background:#ffffff14;color:var(--text-primary);font:inherit;padding:0 13px;outline:none}[data-mode=light] .login-fields input{background:#ffffff6b}.login-fields input:focus{border-color:rgba(var(--ar),var(--ag),var(--ab),.58);box-shadow:0 0 0 3px rgba(var(--ar),var(--ag),var(--ab),.12)}.login-error{min-height:18px;color:#ffb4a8;font-size:.88rem}[data-mode=light] .login-error{color:#9f2f24}.login-submit{min-height:46px;border:none;border-radius:8px;background:var(--accent-solid);color:var(--bg-base);font:inherit;font-weight:700;cursor:pointer;transition:transform .2s ease,opacity .2s ease}.login-submit:hover:not(:disabled){transform:translateY(-1px)}.login-submit:disabled{cursor:default;opacity:.68}.floating-actions{position:fixed;top:20px;right:20px;display:flex;gap:10px;z-index:105}.settings-btn{width:44px;height:44px;border-radius:50%;background:rgba(var(--ar),var(--ag),var(--ab),.06);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;padding:0}.settings-btn svg{transition:transform .5s ease;stroke:var(--text-ink-3)}.network-main-modal-backdrop{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;animation:fadeIn .25s ease-out;display:flex;align-items:center;justify-content:center}.network-main-modal-content{position:relative;width:90vw;max-width:1200px;height:90vh;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(145%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(145%);border:.33px solid var(--glass-border);border-radius:24px;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease-out}.settings-btn:hover{background:rgba(var(--ar),var(--ag),var(--ab),.1);transform:scale(1.05);border-color:rgba(var(--ar),var(--ag),var(--ab),.15)}.settings-btn:hover svg{transform:rotate(90deg);stroke:var(--text-ink-1)}.dashboard-sign-out-btn:hover:not(:disabled){background:#c75e5229;border-color:#c75e527a}.dashboard-sign-out-btn:disabled{cursor:wait;opacity:.58}.dashboard-sign-out-btn svg,.dashboard-sign-out-btn:hover:not(:disabled) svg{transform:none}.dashboard-sign-out-btn:hover:not(:disabled) svg{stroke:#d98276}.settings-modal-backdrop{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;animation:fadeIn .25s ease-out}.settings-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:400px;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(145%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(145%);border:.33px solid var(--glass-border);border-radius:24px;padding:24px;z-index:201;animation:slideUp .3s ease-out;max-height:80vh;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,-40%)}to{opacity:1;transform:translate(-50%,-50%)}}.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:12px;border-bottom:.33px solid rgba(var(--ar),var(--ag),var(--ab),.08)}.settings-header h2{font-size:20px;font-weight:400;font-family:var(--font-heading);font-style:italic;margin:0;color:var(--text-ink-1)}.settings-close{width:32px;height:32px;background:rgba(var(--ar),var(--ag),var(--ab),.05);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.1);border-radius:50%;color:var(--text-ink-3);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.settings-close:hover{background:rgba(var(--ar),var(--ag),var(--ab),.1);transform:scale(1.05)}.settings-content{display:flex;flex-direction:column;gap:24px}.settings-section{display:flex;flex-direction:column;gap:10px}.settings-session-section{padding-top:18px;border-top:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12)}.settings-sign-out{width:100%;min-height:44px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid rgba(199,94,82,.42);border-radius:8px;background:#c75e521a;color:var(--text-ink-1);cursor:pointer;font:inherit;font-size:13px;font-weight:700;transition:background .2s ease,border-color .2s ease,opacity .2s ease}.settings-sign-out:hover:not(:disabled){background:#c75e522e;border-color:#c75e52ad}.settings-sign-out:disabled{cursor:wait;opacity:.6}.settings-sign-out svg{width:18px;height:18px;flex:0 0 18px}.settings-sign-out-error{color:#ffb4a8;font-size:12px;line-height:1.4}[data-mode=light] .settings-sign-out-error{color:#9f2f24}.settings-label{font-size:12px;font-weight:500;color:var(--text-ink-3);text-transform:uppercase;letter-spacing:.8px}.settings-select{padding:10px 12px;background:var(--glass-bg);border:.33px solid var(--glass-border);border-radius:14px;color:var(--text-ink-1);color-scheme:dark;font-size:13px;font-family:var(--font-body);cursor:pointer;transition:all .2s ease}.settings-select:hover{background:rgba(var(--ar),var(--ag),var(--ab),.08);border-color:rgba(var(--ar),var(--ag),var(--ab),.15)}.settings-select:focus{outline:none;background:rgba(var(--ar),var(--ag),var(--ab),.1);border-color:var(--accent-solid)}.settings-select option{background:#162716;color:var(--text-primary);font-family:var(--font-body)}.settings-token-panel{padding:12px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.12);border-radius:16px;background:rgba(var(--ar),var(--ag),var(--ab),.045)}.settings-token-grid{display:flex;flex-direction:column;gap:8px}.settings-token-grid label{display:flex;flex-direction:column;gap:5px}.settings-token-grid span{font-size:10px;color:var(--text-ink-4);letter-spacing:.7px;text-transform:uppercase}.settings-token-grid input,.settings-token-grid textarea{width:100%;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.16);border-radius:10px;background:#0000002e;color:var(--text-ink-1);font:12px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:8px 10px;outline:none}[data-mode=light] .settings-token-grid input,[data-mode=light] .settings-token-grid textarea{background:#ffffff75}.settings-token-grid textarea{min-height:74px;resize:vertical}.settings-token-actions{display:flex;gap:8px;margin-top:10px}.settings-token-actions button{border:1px solid rgba(var(--ar),var(--ag),var(--ab),.18);border-radius:10px;background:rgba(var(--ar),var(--ag),var(--ab),.12);color:var(--text-ink-1);cursor:pointer;font-size:12px;font-weight:700;padding:7px 11px}.settings-token-actions button:disabled{cursor:not-allowed;opacity:.45}.settings-token-status{margin-top:8px;color:var(--text-ink-3);font-size:11px;line-height:1.35}[data-mode=light] select{color-scheme:light}[data-mode=dark] select{color-scheme:dark}[data-mode=light] select option{background:var(--brand-cream);color:var(--brand-forest)}[data-mode=dark] select option{background:#162716;color:var(--text-primary)}.ui-mode-toggle{display:flex;gap:3px;padding:3px;border:1px solid var(--glass-border);border-radius:999px;background:#ffffff0f}.ui-mode-toggle button{min-width:54px;height:26px;border:0;border-radius:999px;background:transparent;color:var(--text-ink-4);cursor:pointer;font-family:var(--font-body);font-size:11px;transition:background .2s ease,color .2s ease}.ui-mode-toggle button:hover,.ui-mode-toggle button.active{background:rgba(var(--ar),var(--ag),var(--ab),.24);color:var(--text-primary)}.swipe-hint{position:absolute;bottom:52px;right:24px;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-secondary);display:flex;align-items:center;gap:6px;animation:pulseHint 2.5s ease-in-out infinite;pointer-events:none}@keyframes pulseHint{0%,to{opacity:.4;transform:translate(0)}50%{opacity:.8;transform:translate(-4px)}}.swipe-hint svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}.screen-weather{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:32px 32px 80px}.agent-input-form{position:relative;display:flex;align-items:center;flex:1}.agent-input{background:transparent;border:none;padding:12px 0;color:var(--text-primary);width:100%;font-size:20px;font-weight:300;transition:opacity .3s ease}.agent-input:focus{outline:none}.agent-send-btn{background:none;border:none;color:var(--text-primary);padding:0;margin-left:12px;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease;display:flex;align-items:center;z-index:2}.agent-send-btn.visible{opacity:.8;pointer-events:auto}.agent-send-btn svg{width:24px;height:24px}.agent-blob-wrap{width:120px;height:120px;padding:0;border:0;background:transparent;cursor:pointer;transition:transform .3s ease,filter .3s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.agent-blob-wrap.has-answer{filter:drop-shadow(0 0 16px rgba(var(--ar),var(--ag),var(--ab),.95));animation:agentUnreadGlow 1.8s ease-in-out infinite}.agent-blob-canvas{width:100%!important;height:100%!important}@keyframes agentUnreadGlow{0%,to{filter:drop-shadow(0 0 12px rgba(var(--ar),var(--ag),var(--ab),.7))}50%{filter:drop-shadow(0 0 24px rgba(var(--ar),var(--ag),var(--ab),1))}}.weather-header{text-align:left;padding:0;flex-shrink:0}.w-city{font-size:22px;font-weight:500;letter-spacing:0}.w-temp-row{display:flex;align-items:center;gap:12px;margin-top:2px}.w-temp{font-size:62px;font-weight:200;line-height:.95;letter-spacing:0;margin:2px 0}.w-hilow-stacked{display:flex;flex-direction:column;font-size:17px;font-weight:500;opacity:.82;line-height:1.15}.w-condition{font-size:17px;font-weight:400;color:var(--text-secondary);display:inline-block;margin-right:12px}.w-hilow{font-size:14px;font-weight:300;color:var(--text-secondary);display:inline-block}.w-hilow span{color:var(--text-primary)}.section-label{font-size:11px;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-ink-3);padding:12px 16px 8px;display:flex;align-items:center;gap:6px;border-bottom:.33px solid rgba(var(--ar),var(--ag),var(--ab),.1);font-family:var(--font-body)}.section-label svg{width:14px;height:14px;fill:currentColor;opacity:.5}.weather-card{margin-bottom:14px;overflow:hidden;border-radius:22px}.weather-card.tappable{cursor:pointer;transition:filter .15s ease;-webkit-tap-highlight-color:transparent}.weather-card.tappable:active{filter:brightness(1.08)}.hourly-scroll{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:14px 16px;display:flex;gap:20px;scrollbar-width:none}.hourly-scroll::-webkit-scrollbar{display:none}.hour-item{display:flex;flex-direction:column;align-items:center;gap:8px;scroll-snap-align:start;min-width:50px}.hour-time{font-size:13px;font-weight:400;color:var(--text-secondary)}.hour-icon{font-size:22px}.hour-temp{font-size:16px;font-weight:400}.day-row{display:flex;align-items:center;padding:12px 16px;border-bottom:.33px solid rgba(var(--ar),var(--ag),var(--ab),.08);cursor:pointer;transition:transform .15s ease,filter .15s ease;-webkit-tap-highlight-color:transparent}.day-row:last-child{border-bottom:none}.day-row:active{transform:scale(.98);filter:brightness(1.12)}.day-name{font-size:16px;font-weight:400;min-width:80px}.day-icon{font-size:20px;flex:1;text-align:center}.day-precip{font-size:13px;color:#7ecfff;min-width:40px;text-align:right}.day-range{display:flex;gap:8px;align-items:center;min-width:90px;justify-content:flex-end}.day-low{font-size:15px;font-weight:300;color:var(--text-secondary)}.day-high{font-size:15px;font-weight:400}.temp-bar{height:4px;border-radius:2px;flex:1;background:rgba(var(--ar),var(--ag),var(--ab),.1);position:relative;overflow:hidden;min-width:50px;margin:0 10px}.temp-bar-fill{position:absolute;top:0;height:100%;border-radius:2px;background:linear-gradient(90deg,#7ecfff,#ff9f40)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.detail-tile{padding:12px;position:relative;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;transition:transform .15s ease,filter .15s ease;-webkit-tap-highlight-color:transparent}.detail-tile:active{transform:scale(.97);filter:brightness(1.15)}.detail-tile:after{content:"›";position:absolute;top:12px;right:14px;font-size:16px;color:rgba(var(--ar),var(--ag),var(--ab),.15)}.detail-tile-label{font-size:clamp(9px,.75vw,12px);letter-spacing:1px;text-transform:uppercase;color:var(--text-ink-4);margin-bottom:0;display:flex;align-items:center;gap:4px}.detail-tile-value{font-size:clamp(24px,2vw,36px);font-weight:650;line-height:1}.detail-tile-unit{font-size:clamp(12px,.95vw,16px);color:var(--text-secondary)}.detail-tile-desc{font-size:clamp(11px,.85vw,14px);color:var(--text-secondary);margin-top:0}.uv-bar{height:6px;border-radius:3px;background:linear-gradient(90deg,#4ade80,#facc15,#f97316,#dc2626,#7c3aed);margin-top:8px;position:relative}.uv-needle{position:absolute;top:-4px;width:14px;height:14px;border-radius:50%;background:rgba(var(--ar),var(--ag),var(--ab),.6);transform:translate(-50%)}.data-loading,.data-state{width:100%;min-height:132px;display:flex;align-items:center;justify-content:center;gap:12px;padding:18px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.16);border-radius:8px;background:linear-gradient(135deg,#ffffff14,#ffffff05),rgba(var(--ar),var(--ag),var(--ab),.045);color:var(--text-ink-2)}.data-loading.is-compact,.data-state.is-compact{min-height:86px;padding:12px}.data-loading{flex-direction:column;font-size:13px;font-weight:700;text-align:center}.data-loading-ring{width:34px;height:34px;border-radius:50%;border:2px solid rgba(var(--ar),var(--ag),var(--ab),.16);border-top-color:rgba(var(--ar),var(--ag),var(--ab),.72);animation:spin .85s linear infinite}.data-loading-bars{display:flex;align-items:end;gap:4px;height:18px}.data-loading-bars i{display:block;width:5px;height:8px;border-radius:3px;background:rgba(var(--ar),var(--ag),var(--ab),.45);animation:loadingBars .9s ease-in-out infinite}.data-loading-bars i:nth-child(2){animation-delay:.12s}.data-loading-bars i:nth-child(3){animation-delay:.24s}.data-state{justify-content:flex-start;min-height:112px}.data-state-mark{flex:0 0 34px;width:34px;height:34px;border-radius:50%;position:relative;background:rgba(var(--ar),var(--ag),var(--ab),.12);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.3)}.data-state-mark:before,.data-state-mark:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:currentColor;border-radius:2px}.data-state--info .data-state-mark{color:#6aa4a5}.data-state--warning{border-color:#d6a85d57;background:linear-gradient(135deg,#d6a85d24,#ffffff05),rgba(var(--ar),var(--ag),var(--ab),.035)}.data-state--warning .data-state-mark{color:#d6a85d;background:#d6a85d24;border-color:#d6a85d57}.data-state--error{border-color:#c75d525c;background:linear-gradient(135deg,#c75d5224,#ffffff05),rgba(var(--ar),var(--ag),var(--ab),.035)}.data-state--error .data-state-mark{color:#c75d52;background:#c75d5224;border-color:#c75d525c}.data-state--info .data-state-mark:before{width:3px;height:14px;transform:translate(-50%,-38%)}.data-state--info .data-state-mark:after{width:4px;height:4px;top:27%}.data-state--warning .data-state-mark:before,.data-state--error .data-state-mark:before{width:3px;height:15px}.data-state--warning .data-state-mark:after{width:4px;height:4px;top:75%}.data-state--error .data-state-mark:before{transform:translate(-50%,-50%) rotate(45deg)}.data-state--error .data-state-mark:after{width:3px;height:15px;transform:translate(-50%,-50%) rotate(-45deg)}.data-state-copy{min-width:0;display:grid;gap:4px}.data-state-copy strong{color:var(--text-ink-1);font-size:14px;line-height:1.18}.data-state-copy span{color:var(--text-ink-3);font-size:12.5px;line-height:1.38;font-weight:700}.data-state-action{margin-left:auto;min-height:34px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.18);border-radius:8px;background:rgba(var(--ar),var(--ag),var(--ab),.08);color:var(--text-ink-2);font:inherit;font-size:12px;font-weight:700;padding:0 12px;cursor:pointer}@keyframes loadingBars{0%,to{height:7px;opacity:.45}50%{height:18px;opacity:1}}.loading-spinner{display:flex;flex-direction:column;align-items:center;padding:80px 20px;gap:14px;color:var(--text-secondary);font-size:14px}.spinner{width:28px;height:28px;border:2px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-top-color:rgba(var(--ar),var(--ag),var(--ab),.5);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-card{margin:16px;padding:20px}.error-msg{padding:4px 0 12px;color:#a06e6ecc;font-size:14px;line-height:1.5}.error-help{margin-top:14px;padding:14px;background:rgba(var(--ar),var(--ag),var(--ab),.06);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12);border-radius:12px;font-size:13px;line-height:1.7;color:var(--text-ink-4)}.error-help strong{color:var(--text-primary);font-size:14px;display:block;margin-bottom:8px}.error-help code{display:block;margin:8px 0;padding:8px 10px;background:rgba(var(--ar),var(--ag),var(--ab),.1);border-radius:8px;font-size:12px;color:#b8d8b8;font-family:var(--font-body)}.demo-btn{width:100%;padding:12px;margin-top:14px;background:rgba(var(--ar),var(--ag),var(--ab),.08);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-radius:18px;color:var(--text-ink-4);font-size:14px;font-family:var(--font-body);cursor:pointer;transition:all .2s}.demo-btn:hover{background:rgba(var(--ar),var(--ag),var(--ab),.12)}@keyframes skelShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skel{display:block;background:linear-gradient(90deg,rgba(var(--ar),var(--ag),var(--ab),.04) 25%,rgba(var(--ar),var(--ag),var(--ab),.1),rgba(var(--ar),var(--ag),var(--ab),.04) 75%);background-size:200% 100%;animation:skelShimmer 1.6s ease-in-out infinite;border-radius:6px}.weather-card .section-label{pointer-events:none}.modal-backdrop{position:fixed;inset:0;z-index:200;background:#0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;transition:opacity .3s ease;pointer-events:none}.modal-backdrop.visible{opacity:1;pointer-events:all}.modal-sheet{position:fixed;bottom:0;left:0;right:0;z-index:201;background:#09120fe0;backdrop-filter:blur(20px) saturate(130%);-webkit-backdrop-filter:blur(20px) saturate(130%);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-bottom:none;border-radius:24px 24px 0 0;padding:0 0 44px;transform:translateY(100%);transition:transform .4s cubic-bezier(.32,.72,0,1);max-height:84dvh;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-sheet.visible{transform:translateY(0)}[data-mode=light] .modal-sheet{background:#f6faf3eb}[data-mode=light] .modal-title,[data-mode=light] .modal-stat-value,[data-mode=light] .modal-data-row,[data-mode=light] .modal-data-value{color:var(--text-ink-1)}[data-mode=light] .modal-subtitle,[data-mode=light] .modal-stat-label,[data-mode=light] .modal-data-title,[data-mode=light] .modal-data-label{color:var(--text-ink-3)}[data-mode=light] .range-tab{background:rgba(var(--ar),var(--ag),var(--ab),.08);border-color:rgba(var(--ar),var(--ag),var(--ab),.16);color:var(--text-ink-2)}[data-mode=light] .range-tab.active{background:rgba(var(--ar),var(--ag),var(--ab),.16);border-color:rgba(var(--ar),var(--ag),var(--ab),.28);color:var(--text-ink-1)}.modal-handle{width:36px;height:4px;border-radius:2px;background:rgba(var(--ar),var(--ag),var(--ab),.15);margin:12px auto 0}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 20px 8px}.modal-title{font-size:21px;font-weight:400;font-family:var(--font-heading);font-style:italic;color:#fff}.modal-subtitle{font-size:13px;color:#ffffffb3;margin-top:3px;font-family:var(--font-body)}.modal-close{width:30px;height:30px;border-radius:50%;background:rgba(var(--ar),var(--ag),var(--ab),.08);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.1);color:var(--text-primary);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.modal-close:hover{background:rgba(var(--ar),var(--ag),var(--ab),.15)}.modal-range-tabs{display:flex;gap:6px;padding:0 20px 14px}.range-tab{padding:6px 14px;border-radius:20px;font-size:12px;background:rgba(var(--ar),var(--ag),var(--ab),.06);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12);color:#ffffffb3;cursor:pointer;transition:all .2s;font-family:var(--font-body)}.range-tab.active{background:rgba(var(--ar),var(--ag),var(--ab),.12);border-color:rgba(var(--ar),var(--ag),var(--ab),.25);color:var(--text-primary)}.modal-chart-wrap{padding:0 20px 10px;position:relative;-webkit-user-select:none;user-select:none}.modal-chart-canvas{width:100%;height:190px;display:block;border-radius:12px}.chart-tooltip{position:absolute;pointer-events:none;background:rgba(var(--ar),var(--ag),var(--ab),.92);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.25);border-radius:9px;padding:7px 11px;font-size:13px;font-weight:600;white-space:nowrap;font-family:var(--font-body);transform:translate(-50%,-110%);opacity:0;transition:opacity .12s;z-index:10;color:#fff}.chart-tooltip.visible{opacity:1}.modal-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:14px 20px 6px}.modal-stat{background:rgba(var(--ar),var(--ag),var(--ab),.06);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12);border-radius:12px;padding:10px 12px;text-align:center}.modal-stat-label{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#fff9;font-family:var(--font-body)}.modal-stat-value{font-size:18px;font-weight:400;margin-top:4px;font-family:var(--font-body);color:#fff}.modal-data-section{padding:14px 20px 0}.modal-data-title{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#fff9;margin-bottom:10px;font-family:var(--font-body)}.modal-data-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:.33px solid rgba(var(--ar),var(--ag),var(--ab),.08);font-size:14px;font-family:var(--font-body);color:#fff}.modal-data-row:last-child{border-bottom:none}.modal-data-label{color:#ffffffbf;font-family:var(--font-body)}.modal-data-value{font-weight:400;font-family:var(--font-body);color:#fff}.modal-spinner{display:flex;align-items:center;justify-content:center;height:190px}.mic-btn.active{background:#a064641f;border-color:#8c6e6e40}.mic-btn.active svg{fill:#966e64cc}.windy-card{margin-bottom:14px;overflow:hidden}.windy-iframe-wrap{position:relative;width:100%;padding-bottom:62.5%;height:0;overflow:hidden;border-radius:0 0 18px 18px}.windy-iframe{position:absolute;inset:0;width:100%;height:100%;border:none;display:block}.windy-missing-key{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 20px;text-align:center;color:var(--text-secondary)}.windy-missing-key span{font-size:24px}.windy-missing-key p{font-size:13px;line-height:1.6;color:var(--text-ink-4)}.windy-missing-key code{background:rgba(var(--ar),var(--ag),var(--ab),.08);border-radius:4px;padding:1px 5px;font-size:12px;color:#b8d8b8;font-family:var(--font-body)}.windy-missing-key a{font-size:13px;color:#7ecfff;text-decoration:none}.windy-missing-key a:hover{text-decoration:underline}.mic-btn.speaking{background:#788c961f;border-color:#788c9640;cursor:not-allowed;animation:speakPulse 1.2s ease-in-out infinite}.mic-btn.speaking svg{fill:#8296a0cc}@keyframes speakPulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.mic-btn.thinking{background:#8c78641f;border-color:#8c786440;cursor:not-allowed}.mic-btn.thinking svg{stroke:#96826ecc;fill:none;animation:spin 1s linear infinite}.stt-toggle{display:flex;gap:4px;margin-bottom:16px;background:rgba(var(--ar),var(--ag),var(--ab),.06);border-radius:20px;padding:3px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12)}.stt-btn{font-family:var(--font-body);font-size:.72rem;font-weight:400;letter-spacing:.04em;padding:4px 14px;border:none;border-radius:16px;background:transparent;color:var(--text-ink-5);cursor:pointer;transition:all .2s}.stt-btn.active{background:rgba(var(--ar),var(--ag),var(--ab),.12);color:var(--text-primary)}.stt-btn:disabled{opacity:.4;cursor:default}.interim-transcript{display:block;margin-top:12px;font-size:.85rem;color:var(--text-ink-5);font-style:italic;max-width:280px;text-align:center;min-height:1.2em;font-family:var(--font-body)}.reply-text{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));padding:24px;border-radius:22px;border:.33px solid var(--glass-border);color:var(--text-ink-1);max-width:90%;width:100%;font-size:1rem;line-height:1.6;text-align:center;animation:fadeIn .6s ease-out;font-family:var(--font-body)}.reply-line{color:var(--text-ink-2);font-size:13px;margin-bottom:4px}.reply-line-muted,.reply-line-list{color:var(--text-ink-3);margin-bottom:2px}.reply-line-list{padding-left:14px}.reply-line-heading{color:var(--text-ink-1);font-size:13px;font-weight:600;margin-top:10px;margin-bottom:4px}[data-mode=light] .reply-text{background:#f5fae9e0;color:var(--text-ink-1)}[data-mode=light] .user-query-card{background:rgba(var(--ar),var(--ag),var(--ab),.12);color:var(--text-ink-1)}.chat-input{flex:1;padding:18px 24px;border-radius:24px;border:.33px solid var(--glass-border);background:rgba(var(--ar),var(--ag),var(--ab),.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:1rem;line-height:1.4;outline:none;color:var(--text-ink-1);font-family:var(--font-body);transition:all .3s ease;resize:none}.chat-modal-sheet{inset:50% auto auto 50%;width:min(720px,calc(100vw - 32px));max-height:min(78dvh,760px);padding:0 0 20px;border-bottom:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-radius:28px;display:flex;flex-direction:column;overflow:hidden;opacity:0;pointer-events:none;transform:translate(-50%,-46%) scale(.98);transition:opacity .24s ease,transform .28s cubic-bezier(.22,1,.36,1)}.chat-modal-sheet.visible{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.chat-modal-sheet .modal-handle{display:none}.chat-modal-content{display:flex;flex-direction:column;gap:14px;min-height:0;padding:0 20px 18px;overflow-y:auto}.chat-compose-form{display:flex;align-items:flex-end;gap:12px;padding:0 20px}.chat-submit-btn svg{width:22px;height:22px}.user-query-card{max-width:80%;padding:14px 20px;border-radius:18px 18px 4px;background:rgba(var(--ar),var(--ag),var(--ab),.15);color:var(--text-ink-2);font-size:.95rem;line-height:1.5;margin-bottom:8px;align-self:flex-end;animation:fadeIn .4s ease-out;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.2)}.chat-input::placeholder{color:var(--text-ink-4)}.chat-input:focus{background:rgba(var(--ar),var(--ag),var(--ab),.12);border-color:rgba(var(--ar),var(--ag),var(--ab),.2)}.chat-input:disabled{opacity:.6;cursor:not-allowed}.chat-submit-btn{width:56px;height:56px;border-radius:12px;border:.33px solid var(--glass-border);background:rgba(var(--ar),var(--ag),var(--ab),.12);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-ink-1);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.chat-submit-btn:hover:not(:disabled){background:rgba(var(--ar),var(--ag),var(--ab),.18);transform:scale(1.03)}.chat-submit-btn:active:not(:disabled){transform:scale(.95)}.chat-submit-btn:disabled{opacity:.5;cursor:not-allowed;background:rgba(var(--ar),var(--ag),var(--ab),.08)}.chat-submit-btn.thinking{background:rgba(var(--ar),var(--ag),var(--ab),.08)}.spinner{width:20px;height:20px;border:2px solid rgba(var(--ar),var(--ag),var(--ab),.2);border-top-color:var(--text-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.network-modal-backdrop{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease-out;padding:1rem}.network-modal-content{position:relative;background:rgba(var(--ar),var(--ag),var(--ab),.06);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-radius:20px;max-width:600px;width:100%;max-height:85vh;overflow-y:auto;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.network-modal-inner{padding:2rem}.network-modal-close{position:absolute;top:1.5rem;right:1.5rem;width:36px;height:36px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.1);background:rgba(var(--ar),var(--ag),var(--ab),.08);border-radius:50%;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:all .3s ease;z-index:10000}.network-modal-close:hover{background:rgba(var(--ar),var(--ag),var(--ab),.15);transform:scale(1.05)}.network-modal-close:active{transform:scale(.95)}.network-modal-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem}.network-modal-logo{width:80px;height:80px;border-radius:12px;background:rgba(var(--ar),var(--ag),var(--ab),.08);display:flex;align-items:center;justify-content:center;font-size:2.5rem;flex-shrink:0;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12)}.network-modal-title{font-size:1.75rem;font-weight:400;font-family:var(--font-heading);font-style:italic;color:var(--text-primary);margin:0}.network-modal-industry{font-size:.9rem;color:var(--text-ink-5);margin-top:.25rem;text-transform:uppercase;letter-spacing:.5px;font-weight:400;font-family:var(--font-body)}.network-modal-description{font-size:.95rem;line-height:1.6;color:var(--text-ink-4);margin-bottom:2rem;padding:1rem;background:rgba(var(--ar),var(--ag),var(--ab),.06);border-radius:12px;border-left:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);font-family:var(--font-body)}.network-modal-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem;margin-bottom:2rem;padding:1.5rem;background:rgba(var(--ar),var(--ag),var(--ab),.06);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12);border-radius:12px}.network-modal-info-item{display:flex;flex-direction:column}.network-modal-info-item strong{font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-ink-6);margin-bottom:.5rem;font-weight:400;font-family:var(--font-body)}.network-modal-info-item span{font-size:1rem;color:var(--text-primary);font-weight:400;font-family:var(--font-body)}.network-modal-contacts{margin-top:2rem;padding-top:2rem;border-top:.33px solid rgba(var(--ar),var(--ag),var(--ab),.08)}.network-modal-contacts h4{font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-ink-6);margin:0 0 1rem;font-weight:400;font-family:var(--font-body)}.network-modal-contact-details{display:flex;flex-direction:column;gap:.5rem}.network-modal-contact-link{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:rgba(var(--ar),var(--ag),var(--ab),.08);border-radius:8px;text-decoration:none;color:var(--text-ink-4);font-size:.75rem;transition:all .3s ease;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12);word-break:break-all;font-family:var(--font-body)}.network-modal-contact-link:hover{background:rgba(var(--ar),var(--ag),var(--ab),.12);transform:translate(4px);border-color:rgba(var(--ar),var(--ag),var(--ab),.2)}.network-modal-contact-link svg{width:16px;height:16px;flex-shrink:0}@media(max-width:768px){.network-modal-content{max-width:95vw;max-height:90vh}.network-modal-inner{padding:1.5rem}.network-modal-header{flex-direction:column;text-align:center;gap:1rem}.network-modal-logo{width:64px;height:64px;font-size:2rem}.network-modal-title{font-size:1.5rem}.network-modal-info-grid{grid-template-columns:repeat(2,1fr);gap:1rem;padding:1rem}.network-modal-close{width:32px;height:32px;font-size:1.25rem}}@media(min-width:1024px){.weather-desktop-top-row{display:block;margin-bottom:24px}.facility-overview{width:100%;min-height:0;display:flex;flex-direction:column}.weather-desktop-layout{display:flex;gap:14px;align-items:stretch;margin-bottom:24px}.weather-desktop-layout>.windy-card{flex:1;margin-bottom:0;display:flex;flex-direction:column}.weather-side-column{flex:1.25;display:grid;grid-template-columns:minmax(330px,1fr) minmax(250px,1fr);gap:14px;min-width:0}.weather-desktop-layout .detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));margin-bottom:0;align-content:stretch}.weather-desktop-layout .detail-tile{aspect-ratio:1 / 1;padding:10px}.weather-desktop-layout .windy-iframe-wrap{flex:1;padding-bottom:0;height:auto}}.dashboard-primary-row{display:grid;grid-template-columns:minmax(250px,320px) minmax(620px,1fr);gap:16px;align-items:stretch;min-height:0;margin-bottom:18px}.dashboard-side-stack{display:grid;grid-template-rows:repeat(2,150px);gap:16px}.dashboard-primary-tile{min-height:0;border-radius:28px;overflow:hidden}.weather-summary-tile,.agent-dashboard-tile,.facility-chart-tile{position:relative;display:flex;flex-direction:column;padding:20px}.weather-summary-tile{justify-content:flex-end;padding:14px 16px}.weather-summary-actions{position:absolute;top:14px;right:14px;display:flex;justify-content:flex-end;gap:10px}.weather-summary-tile .settings-btn{color:var(--text-primary)}.weather-summary-tile .weather-header{padding-right:0}.weather-summary-tile .w-city{max-width:calc(100% - 216px);font-size:18px}.weather-summary-tile .w-temp{font-size:48px}.weather-summary-tile .w-hilow-stacked,.weather-summary-tile .w-condition{font-size:14px}.agent-dashboard-tile{justify-content:center;align-items:center;background:transparent;border:0;box-shadow:none}.agent-dashboard-tile .agent-blob-wrap{width:min(78%,148px);height:min(78%,148px);position:relative;overflow:hidden;--agent-blob-y-offset: .05}.agent-dashboard-tile .iflora-blob-root{width:100%!important;height:100%!important;max-width:100%;max-height:100%;margin:0 auto!important}.agent-dashboard-tile .iflora-blob-root .agent-blob-canvas{width:100%!important;height:100%!important;margin:0}.facility-chart-tile{min-width:0;height:calc(156px + (var(--chart-count, 1) * 160px))}.facility-chart-tile .modal-chart-wrap{flex:1;display:flex;min-height:0;padding:0 4px}.facility-chart-tile .modal-chart-canvas{flex:1;height:100%;min-height:0}.facility-overview{flex:1;display:flex;flex-direction:column;padding:20px;min-height:0;position:relative;overflow:hidden;font-size:1.04rem}.section-label.fo-overview-label{display:flex;justify-content:space-between;align-items:center;width:100%;gap:12px;padding:0 0 12px;pointer-events:auto}.fo-history-controls,.fo-source-controls,.fo-device-select-label,.fo-range-controls{display:flex;align-items:center}.fo-history-controls{flex:1;min-width:0;gap:8px;flex-wrap:wrap}.fo-device-select-label{min-width:0;gap:6px}.fo-device-select-label span{flex:0 0 auto}.fo-device-select{min-width:170px;max-width:min(340px,42vw);height:31px;padding:5px 30px 5px 11px;border:1px solid var(--glass-border);border-radius:14px;background:var(--glass-bg);color:var(--text-primary);color-scheme:dark;font:inherit;letter-spacing:0;text-transform:none;cursor:pointer}.fo-device-select option{background:#162716;color:var(--text-primary)}[data-mode=light] .fo-device-select{background:#f5fae9b8;color:var(--brand-forest);color-scheme:light}.fo-device-select:disabled{cursor:default;opacity:.65}.fo-range-controls{flex:0 0 auto;gap:4px;padding:2px;border:1px solid var(--glass-border);border-radius:16px;background:#ffffff08}.fo-range-controls button{min-width:58px;height:27px;padding:0 8px;border:0;border-radius:13px;background:transparent;color:var(--text-secondary);font-size:11px;letter-spacing:0;cursor:pointer;transition:background .2s,color .2s}.fo-range-controls button:hover,.fo-range-controls button.active{background:rgba(var(--ar),var(--ag),var(--ab),.18);color:var(--text-primary)}.fo-source-controls{flex:0 0 auto;gap:8px}.fo-source-controls .demo-btn{border:1px solid var(--glass-border);border-radius:12px;background:transparent;cursor:pointer;font-size:10px;padding:2px 8px}.fo-source-controls .demo-btn.active{background:#fff3}.fo-charts-row{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(var(--chart-count, 1),minmax(150px,1fr));gap:14px;flex:1;min-height:0;margin-top:12px}.fo-chart-col{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.fo-chart-placeholder{flex:1;width:100%;display:flex;align-items:center;justify-content:center;color:var(--text-ink-3);text-align:center}.fo-chart-header{display:flex;align-items:center;gap:10px;min-height:28px}.fo-chart-label{font-size:14px;color:var(--text-ink-2);margin-bottom:8px;text-transform:uppercase;letter-spacing:1px;font-weight:700}.prediction-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:5px;color:var(--text-ink-3);font-size:10px;font-weight:600}.prediction-pill{padding:3px 7px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.25);border-radius:999px;background:rgba(var(--ar),var(--ag),var(--ab),.1);color:var(--text-ink-2);letter-spacing:.02em}.prediction-accuracy-good{color:#70c58b}.prediction-accuracy-drift{color:#e78f3e}.prediction-storage-ok{color:var(--text-ink-3)}.prediction-storage-error{color:#e78f3e;cursor:help}.fo-groups-container{display:block;width:100%}.fo-devices-grid{position:relative;display:grid;grid-template-columns:repeat(auto-fill,170px);justify-content:start;gap:14px;width:100%;padding:10px}.forecast-card{margin-bottom:0}.fo-status-tiles{display:flex;flex-wrap:wrap;align-items:start;gap:16px;width:auto}.fo-tile{z-index:1;flex:0 0 170px;width:170px;background:radial-gradient(circle at 18% 14%,rgba(255,255,255,.24),transparent 38%),linear-gradient(145deg,#ffffff29,#ffffff0e 46%,#ffffff05),#ffffff0b;backdrop-filter:blur(calc(var(--glass-blur) + 5px)) saturate(150%);-webkit-backdrop-filter:blur(calc(var(--glass-blur) + 5px)) saturate(150%);border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:16px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:10px;aspect-ratio:1 / 1;cursor:pointer;transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease;container-type:inline-size;overflow:hidden;box-shadow:0 18px 34px #0000002e,0 7px 16px #0000001f,inset 0 1px #ffffff38,inset -1px -1px #ffffff09}.fo-tile-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%;min-width:0;overflow:visible}.fo-tile:hover{background:radial-gradient(circle at 18% 14%,rgba(255,255,255,.3),transparent 40%),linear-gradient(145deg,#ffffff38,#ffffff12 48%,#ffffff06),#ffffff0e;transform:translateY(-6px) scale(1.025);box-shadow:0 32px 64px #0000004d,0 12px 26px #0003,inset 0 1px #ffffff5c,inset -1px -1px #ffffff14}.fo-tile.selected{border-color:rgba(var(--ar),var(--ag),var(--ab),.48)}[data-mode=light] .fo-tile{background:radial-gradient(circle at 18% 14%,rgba(255,255,255,.72),transparent 40%),linear-gradient(145deg,#ffffff9e,#ffffff47 48%,#ffffff1f),#ffffff29;border-color:#ffffff75;box-shadow:0 20px 46px #1e442d2e,0 8px 18px #1e442d1f,inset 0 1px #ffffffb8,inset -1px -1px #ffffff38}.fo-tile-icon{order:2;flex:0 0 auto;width:40px;height:40px;padding:0;background:rgba(var(--ar),var(--ag),var(--ab),.05);border:1px solid rgba(var(--ar),var(--ag),var(--ab),.1);border-radius:15px;display:flex;align-items:center;justify-content:center;color:var(--text-ink-4);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.fo-tile-icon svg{width:22px;height:22px;fill:currentColor}.metric-dashboard-tile .fo-tile-icon,.plot-source-tile .fo-tile-icon{color:var(--text-ink-2);background:rgba(var(--ar),var(--ag),var(--ab),.09);border-color:rgba(var(--ar),var(--ag),var(--ab),.2)}.plot-source-tile.selected{border-color:rgba(var(--ar),var(--ag),var(--ab),.62);box-shadow:0 30px 58px #00000042,0 0 0 1px rgba(var(--ar),var(--ag),var(--ab),.24),inset 0 1px #ffffff57}.fo-plot-source-label{padding:0 10px 8px;color:var(--text-ink-2)}.fo-source-empty{font-size:clamp(15px,8cqw,22px);font-weight:800;color:var(--text-ink-3)}.fo-tile-power{cursor:pointer}.fo-tile-power:hover{background:rgba(var(--ar),var(--ag),var(--ab),.18);border-color:rgba(var(--ar),var(--ag),var(--ab),.32);box-shadow:0 8px 18px #0000002e;transform:scale(1.08)}.fo-tile-power:active{transform:scale(.96)}.fo-tile.is-on .fo-tile-icon svg{fill:var(--text-ink-1)}.fo-tile-label{order:1;flex:1 1 auto;min-width:0;font-size:clamp(13px,6.8cqw,17px);font-weight:650;line-height:1.15;color:var(--text-ink-2);text-transform:uppercase;letter-spacing:0;margin-bottom:5px;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.fo-tile-value{flex:1 1 auto;width:100%;max-width:100%;min-width:0;font-size:clamp(17px,10cqw,26px);font-weight:700;color:var(--text-ink-1);display:flex;flex-direction:column;align-items:flex-start;text-align:left;justify-content:flex-end;gap:4px;line-height:1.05;overflow:visible}.fo-tile-temp{margin-left:0;opacity:.92;max-width:100%;font-size:clamp(24px,15cqw,30px);font-weight:900;overflow-wrap:anywhere}.switch-tile.is-on .fo-tile-power{color:#51cf66;background:#51cf6624;border-color:#51cf665c}.switch-tile.is-off .fo-tile-power{color:#f29b9b;background:#f29b9b1f;border-color:#f29b9b52}.switch-tile.is-offline .fo-tile-power{color:#a0a6aa;background:#a0a6aa1f;border-color:#a0a6aa47}.door-tile,.camera-tile{cursor:default}.camera-tile .fo-tile-value{color:var(--text-ink-2)}.door-tile.warning{border-color:#ff6b6b66;background:#ff6b6b14}.door-tile.warning .fo-tile-value{color:#ff6b6b}.door-tile.safe .fo-tile-value{color:#51cf66}.fo-settings-overlay{position:absolute;inset:0;background:var(--bg-base);opacity:.98;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;padding:24px;display:flex;flex-direction:column;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.fo-settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;font-weight:600;font-size:1.1rem}.fo-settings-header button{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer;opacity:.5}@media(max-width:640px){.section-label.fo-overview-label{align-items:flex-start;flex-direction:column}.ui-mode-toggle{flex:0 0 auto}.fo-history-controls,.fo-device-select-label,.fo-device-select,.fo-source-controls{width:100%}.fo-device-select{flex:1;max-width:none}.fo-range-controls{width:100%}.fo-range-controls button{flex:1}}@media(max-width:1180px){.dashboard-primary-row{grid-template-columns:1fr}.dashboard-side-stack{grid-template-rows:none;grid-template-columns:1fr}.dashboard-primary-tile{min-height:280px}.facility-chart-tile{height:auto}.weather-summary-tile,.agent-dashboard-tile{width:min(100%,360px);justify-self:stretch;aspect-ratio:auto}.weather-side-column{display:flex;flex-direction:column}.fo-tile{flex-basis:min(170px,100%);width:min(170px,100%)}}.floating-logo-container{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:0;overflow:hidden}.floating-logo{width:60vw;max-width:600px;min-width:300px;opacity:.05;filter:blur(2px);animation:float-logo 20s ease-in-out infinite alternate}@keyframes float-logo{0%{transform:translate(0) scale(1) rotate(-2deg)}to{transform:translate(20px,-20px) scale(1.05) rotate(2deg)}}.metric-dashboard-value{gap:7px}.metric-dashboard-value span{font-size:clamp(22px,13cqw,30px);font-weight:900}.metric-dashboard-value small{width:100%;color:var(--text-ink-3);font-size:clamp(10px,5.4cqw,13px);font-weight:650;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ha-source-pill,.ha-schema-note{color:var(--text-ink-3);font-size:12px;font-weight:700}.fo-plot-source-label{gap:10px}.dashboard-primary-row{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start}.dashboard-side-stack{grid-template-rows:150px 150px auto;align-self:start}.dashboard-side-stack .facility-overview{max-height:620px;overflow-y:auto;margin:0}.dashboard-side-stack .fo-devices-grid{grid-template-columns:1fr;padding:8px 2px 2px}.dashboard-side-stack .fo-tile{width:100%;min-height:138px}.graphs-container{background:transparent;border:0;box-shadow:none;height:auto;min-height:640px;overflow:visible}.graphs-container .fo-overview-label{padding-inline:4px}.fo-charts-row{grid-template-columns:minmax(0,1fr);grid-template-rows:none;align-content:start;gap:18px;overflow:visible}.fo-plot-tile{min-height:330px;padding:16px;border-radius:26px}.fo-plot-tile .modal-chart-wrap{padding:0}.fo-plot-tile .modal-chart-canvas{min-height:240px}.fo-chart-header{align-items:flex-start;justify-content:space-between;gap:12px}.fo-chart-range-controls{flex-wrap:nowrap;transform:scale(.96);transform-origin:right top}.weather-summary-tile{cursor:pointer}.weather-metrics-modal{inset:50% auto auto 50%;width:min(980px,calc(100vw - 34px));max-height:min(86dvh,820px);padding-bottom:22px;border-radius:28px;border-bottom:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);transform:translate(-50%,-50%) scale(1)}.weather-modal-grid{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(360px,1.1fr);gap:16px;padding:0 20px 18px}.weather-modal-forecast{margin:0}.weather-modal-details{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.weather-map-analytics-layout{grid-template-columns:minmax(300px,.68fr) minmax(520px,1.32fr);align-items:stretch}.analytics-card{display:flex;flex-direction:column;gap:14px;min-height:420px}.analytics-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.analytics-range-controls{flex:0 0 auto}.analytics-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.analytics-mini-tile{border:1px solid var(--glass-border);border-radius:18px;padding:12px;background:#ffffff0e;display:flex;flex-direction:column;gap:6px}.analytics-mini-tile span{color:var(--text-ink-3);font-size:11px;font-weight:700}.analytics-mini-tile strong{color:var(--text-ink-1);font-size:22px}.analytics-chart-wrap{min-height:230px;flex:1}.analytics-chart-wrap .modal-chart-wrap{padding:0;height:210px}.analytics-chart-wrap .modal-chart-canvas{height:100%}.analytics-suggestions{display:flex;flex-wrap:wrap;gap:8px}.analytics-suggestions span{border:1px solid var(--glass-border);border-radius:999px;padding:6px 10px;color:var(--text-ink-3);font-size:11px;font-weight:700}@media(max-width:1180px){.dashboard-side-stack{grid-template-rows:none}.weather-map-analytics-layout,.weather-modal-grid{grid-template-columns:1fr}}.dashboard-primary-row{grid-template-columns:minmax(250px,310px) minmax(0,1fr)}.dashboard-side-stack{grid-template-rows:196px 132px auto;gap:12px}.compact-metrics-panel{padding:12px}.dashboard-side-stack .facility-overview{max-height:none;overflow:visible}.dashboard-side-stack .fo-groups-container{overflow:visible}.dashboard-side-stack .fo-devices-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:7px 0 0}.dashboard-side-stack .fo-tile.metric-dashboard-tile{min-height:82px;height:82px;padding:10px;border-radius:18px;text-align:left;border:1px solid var(--glass-border);appearance:none}.metric-dashboard-tile .fo-tile-top{align-items:center;gap:8px}.metric-dashboard-tile .fo-tile-label{font-size:12.5px;white-space:normal;line-height:1.05}.metric-category-icon{width:31px;height:31px;flex:0 0 31px}.metric-category-icon svg{width:18px;height:18px}.metric-dashboard-value{display:flex;align-items:baseline;gap:5px;margin-top:6px;color:var(--text-ink-2)}.metric-dashboard-value strong{color:var(--text-ink-1);font-size:22px;line-height:1}.metric-dashboard-value span{font-size:11px;font-weight:700}.graphs-container{min-height:430px}.fo-charts-row{grid-template-columns:repeat(2,minmax(280px,1fr));gap:12px}.fo-charts-row.is-bar-view{grid-template-columns:minmax(0,1fr)}.fo-plot-tile{min-height:226px;padding:12px;border-radius:20px}.fo-plot-tile .modal-chart-canvas{min-height:150px;height:158px}.fo-chart-header{gap:8px}.fo-chart-label{font-size:13px;line-height:1.2}.fo-chart-title-block{min-width:0;flex:1}.ha-history-status{margin-top:-4px;color:var(--text-ink-3);font-size:11px;line-height:1.25;font-weight:700;text-transform:none;letter-spacing:0}.ha-history-status.is-stale{color:#f2894beb}.fo-chart-range-controls{transform:none;gap:4px}.fo-chart-range-controls button,.metric-view-toggle{min-height:28px;padding:5px 8px;border-radius:999px;border:1px solid var(--glass-border);background:#ffffff14;color:var(--text-ink-2);font-size:11px;font-weight:800;cursor:pointer}.metric-view-toggle:hover,.fo-chart-range-controls button:hover{color:var(--text-ink-1);background:rgba(var(--ar),var(--ag),var(--ab),.14)}.metric-bar-tile{min-height:360px}.metric-bar-chart{display:flex;flex-direction:column;gap:10px;padding-top:8px}.metric-bar-row{display:grid;grid-template-columns:minmax(110px,.9fr) minmax(160px,2fr) minmax(74px,auto);align-items:center;gap:10px}.metric-bar-name{color:var(--text-ink-2);font-size:12px;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metric-bar-track{height:15px;border-radius:999px;background:#fff1;border:1px solid var(--glass-border);overflow:hidden}.metric-bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--bar-color) 48%,transparent),var(--bar-color));box-shadow:0 0 16px color-mix(in srgb,var(--bar-color) 44%,transparent)}.metric-bar-value{color:var(--text-ink-1);font-size:13px;font-weight:850;text-align:right}.analytics-card{min-height:430px}.analytics-mini-tile{min-height:72px}.analytics-mini-tile strong{font-size:20px;overflow-wrap:anywhere}@media(max-width:1380px){.fo-charts-row{grid-template-columns:minmax(0,1fr)}}@media(max-width:1180px){.dashboard-side-stack .fo-devices-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.metric-bar-chart-vertical{min-height:260px;display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));align-items:end;gap:12px;padding:14px 4px 2px}.metric-bar-column{min-width:0;display:grid;grid-template-rows:auto 180px auto;gap:8px;align-items:end;justify-items:center}.metric-bar-chart-vertical .metric-bar-track{width:100%;max-width:54px;height:180px;display:flex;align-items:flex-end}.metric-bar-chart-vertical .metric-bar-fill{width:100%;height:auto;min-height:5%;background:linear-gradient(180deg,var(--bar-color),color-mix(in srgb,var(--bar-color) 42%,transparent))}.metric-bar-chart-vertical .metric-bar-name{width:100%;text-align:center;white-space:normal;line-height:1.05;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.metric-bar-chart-vertical .metric-bar-value{text-align:center;font-size:12px}.is-empty-history{opacity:.76}.empty-history-note{min-height:150px;display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;text-align:center}.empty-history-note span{max-width:280px;color:var(--text-ink-3);font-size:12px;font-weight:650}.analytics-card{overflow:visible}.analytics-chart-wrap .fo-chart-placeholder{min-height:185px}.analytics-mini-tile strong{display:flex;align-items:baseline;gap:4px}.analytics-mini-tile strong small{color:var(--text-ink-3);font-size:11px;font-weight:800}.dashboard-side-stack .fo-devices-grid{grid-template-columns:1fr!important;gap:8px}.dashboard-side-stack .fo-tile.metric-dashboard-tile{height:64px;min-height:64px;background:#203421!important;background-image:none!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}[data-mode=light] .dashboard-side-stack .fo-tile.metric-dashboard-tile{background:#f5fae9!important}.dashboard-side-stack .fo-tile.metric-dashboard-tile.selected{border-color:rgba(var(--ar),var(--ag),var(--ab),.72);outline:2px solid rgba(var(--ar),var(--ag),var(--ab),.12)}.metric-dashboard-tile .fo-tile-top{min-width:0}.metric-dashboard-value{margin-top:2px}.metric-dashboard-value strong{font-size:18px}.analytics-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.analytics-correlation-select{min-height:30px;max-width:210px;border:1px solid var(--glass-border);border-radius:999px;padding:5px 30px 5px 10px;background:#ffffff14;color:var(--text-ink-1);font:800 11px var(--font-body),monospace;outline:none}[data-mode=light] .analytics-correlation-select{background:#f5fae9eb}.analytics-correlation-select option{background:var(--bg-base);color:var(--text-ink-1)}@media(max-width:1180px){.dashboard-side-stack .fo-devices-grid{grid-template-columns:1fr!important}}.graphs-container{height:640px;min-height:640px;max-height:640px;overflow:hidden}.graphs-container .fo-overview-label{min-height:42px}.graphs-container .fo-charts-row{height:calc(100% - 50px);grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));align-content:stretch;overflow:hidden}.graphs-container .fo-charts-row.is-bar-view{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.graphs-container .fo-plot-tile{min-height:0;height:100%;overflow:hidden}.graphs-container .fo-plot-tile .modal-chart-wrap{height:calc(100% - 46px);min-height:0}.graphs-container .fo-plot-tile .modal-chart-canvas{height:100%;min-height:0}.plot-slide-controls{display:inline-flex;align-items:center;gap:6px;padding:3px;border:1px solid var(--glass-border);border-radius:999px;background:#ffffff0e}.plot-slide-controls button{min-height:26px;padding:4px 8px;border:0;border-radius:999px;background:rgba(var(--ar),var(--ag),var(--ab),.13);color:var(--text-ink-1);font:800 10px var(--font-body),monospace;cursor:pointer}.plot-slide-controls button:disabled{cursor:default;opacity:.38}.plot-slide-controls span{min-width:30px;color:var(--text-ink-3);font-size:10px;font-weight:850;text-align:center}.dashboard-side-stack .fo-devices-grid{justify-items:center}.dashboard-side-stack .fo-tile.metric-dashboard-tile{width:92px;height:92px;min-height:92px;aspect-ratio:1 / 1;padding:9px;align-items:center;justify-content:center;gap:0;text-align:center}.dashboard-side-stack .fo-tile.metric-dashboard-tile:hover{transform:translateY(-2px);background:#203421!important;box-shadow:none!important}[data-mode=light] .dashboard-side-stack .fo-tile.metric-dashboard-tile:hover{background:#f5fae9!important}.metric-dashboard-tile .fo-tile-top{flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%}.metric-dashboard-tile .fo-tile-label{width:100%;text-align:center;font-size:11.5px;line-height:1.05}.metric-category-icon{width:36px;height:36px;flex-basis:36px}.metric-category-icon svg{width:21px;height:21px}@media(max-width:1380px){.graphs-container{height:720px;min-height:720px;max-height:720px}}@media(max-width:860px){.graphs-container{height:auto;min-height:0;max-height:none;overflow:visible}.graphs-container .fo-charts-row{height:auto;grid-template-columns:1fr;grid-template-rows:none;overflow:visible}.graphs-container .fo-plot-tile{height:260px}}.dashboard-primary-row{align-items:stretch}.dashboard-side-stack{height:640px;align-self:stretch;grid-template-rows:196px 132px minmax(0,1fr)}.dashboard-side-stack .facility-overview.compact-metrics-panel{height:100%;min-height:0;display:flex;flex-direction:column}.dashboard-side-stack .facility-overview.compact-metrics-panel .fo-groups-container{flex:1;min-height:0;display:flex}.dashboard-side-stack .facility-overview.compact-metrics-panel .fo-devices-grid{flex:1;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:1fr;align-content:stretch;justify-items:stretch;gap:10px}.dashboard-side-stack .facility-overview.compact-metrics-panel .metric-dashboard-tile{width:100%;height:auto;min-height:0;aspect-ratio:1 / 1;align-self:stretch;justify-self:stretch}@media(max-width:1380px){.dashboard-side-stack{height:720px}}@media(max-width:860px){.dashboard-side-stack{height:auto;grid-template-rows:none}.dashboard-side-stack .facility-overview.compact-metrics-panel .fo-devices-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}.dashboard-side-stack .facility-overview.compact-metrics-panel{background:transparent!important;border-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding-inline:0}.dashboard-side-stack .facility-overview.compact-metrics-panel .section-label{padding-inline:4px}.plot-slide-controls{gap:9px;padding:5px;border-width:1.5px;background:rgba(var(--ar),var(--ag),var(--ab),.14);box-shadow:0 10px 24px #0000002e}.plot-slide-controls button,.metric-view-toggle{min-height:36px;padding:8px 13px;font-size:12px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.28);background:rgba(var(--ar),var(--ag),var(--ab),.22)}.plot-slide-controls span{min-width:44px;font-size:12px;color:var(--text-ink-1)}.dashboard-side-stack .fo-tile.metric-dashboard-tile{border-color:rgba(var(--ar),var(--ag),var(--ab),.24)}.dashboard-side-stack .fo-tile.metric-dashboard-tile.selected{border-color:rgba(var(--ar),var(--ag),var(--ab),.78);outline:2px solid rgba(var(--ar),var(--ag),var(--ab),.18)}.metric-category-icon,.metric-dashboard-tile .fo-tile-icon.metric-category-icon{width:52px;height:52px;flex:0 0 52px;border:0!important;background:transparent!important;box-shadow:none!important}.metric-category-icon svg,.metric-dashboard-tile .fo-tile-icon.metric-category-icon svg{width:34px;height:34px}.metric-dashboard-tile .fo-tile-top{gap:6px}.metric-dashboard-tile .fo-tile-label{font-size:12px;font-weight:850}.weather-map-analytics-layout{grid-template-columns:minmax(520px,1.35fr) minmax(320px,.65fr);align-items:start}.weather-map-analytics-layout .analytics-card{min-height:0;height:auto}.weather-map-analytics-layout .analytics-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.weather-map-analytics-layout .analytics-mini-tile{aspect-ratio:1 / 1;min-height:0;justify-content:center;align-items:flex-start;border-radius:22px}.weather-map-analytics-layout .analytics-mini-tile span{line-height:1.15}.weather-map-analytics-layout .analytics-mini-tile strong{font-size:clamp(18px,1.4vw,24px);line-height:1}.weather-map-analytics-layout>.windy-card{width:100%;aspect-ratio:1 / 1;margin-bottom:0;border-radius:28px;display:flex;flex-direction:column}.weather-map-analytics-layout>.windy-card .section-label{flex:0 0 auto}.weather-map-analytics-layout>.windy-card .windy-iframe-wrap{flex:1;height:auto;min-height:0;padding-bottom:0;border-radius:0 0 24px 24px}@media(max-width:1180px){.weather-map-analytics-layout{grid-template-columns:1fr}.weather-map-analytics-layout .analytics-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-map-analytics-layout>.windy-card{max-width:620px;justify-self:center}}.weather-map-analytics-layout{grid-template-columns:minmax(620px,1.7fr) minmax(260px,.55fr);gap:14px;align-items:start}.weather-map-analytics-layout .analytics-card{width:100%;min-height:0;height:auto;align-self:start}.weather-map-analytics-layout .analytics-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:start}.weather-map-analytics-layout .analytics-mini-tile{width:100%;aspect-ratio:1 / 1;min-height:0!important;height:auto;border-radius:22px;justify-content:center}.weather-map-analytics-layout .analytics-chart-wrap{min-height:185px}.weather-map-analytics-layout .analytics-chart-wrap .modal-chart-wrap{height:180px}.weather-map-analytics-layout>.windy-card{width:min(100%,420px);justify-self:end;aspect-ratio:1 / 1;min-height:0}@media(max-width:1320px){.weather-map-analytics-layout{grid-template-columns:minmax(540px,1.5fr) minmax(250px,.6fr)}.weather-map-analytics-layout .analytics-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1180px){.weather-map-analytics-layout{grid-template-columns:1fr}.weather-map-analytics-layout>.windy-card{width:min(100%,520px);justify-self:center}}.weather-map-analytics-layout{grid-template-columns:minmax(420px,.95fr) minmax(520px,1.05fr);gap:16px;align-items:stretch}.weather-map-analytics-layout .analytics-card{min-height:430px;height:100%}.weather-map-analytics-layout .analytics-card-grid{grid-template-columns:repeat(4,108px);justify-content:start;align-items:start;gap:10px}.weather-map-analytics-layout .analytics-mini-tile{width:108px;height:108px;aspect-ratio:auto;min-height:0!important;padding:10px;border-radius:20px}.weather-map-analytics-layout .analytics-mini-tile strong{font-size:18px}.weather-map-analytics-layout>.windy-card{width:100%;max-width:none;min-height:430px;aspect-ratio:auto;justify-self:stretch;align-self:stretch}.weather-map-analytics-layout>.windy-card .windy-iframe-wrap{min-height:360px}@media(max-width:1320px){.weather-map-analytics-layout{grid-template-columns:1fr}.weather-map-analytics-layout .analytics-card-grid{grid-template-columns:repeat(4,108px)}}@media(max-width:680px){.weather-map-analytics-layout .analytics-card-grid{grid-template-columns:repeat(2,108px)}}.weather-desktop-layout.weather-map-analytics-layout{display:grid!important;grid-template-columns:minmax(420px,.95fr) minmax(520px,1.05fr);gap:16px;align-items:stretch}.weather-desktop-layout.weather-map-analytics-layout>.windy-card{display:flex!important;flex-direction:column;width:100%!important;min-width:0;min-height:430px;margin-bottom:0}.weather-desktop-layout.weather-map-analytics-layout>.windy-card .windy-iframe-wrap{position:relative;flex:1 1 auto;height:auto!important;min-height:360px;padding-bottom:0!important}.weather-desktop-layout.weather-map-analytics-layout>.windy-card .windy-iframe{position:absolute;inset:0;width:100%;height:100%}*,*:before,*:after{font-family:var(--font-body)}h1,h2,h3,h4,h5,h6,.modal-title{font-family:var(--font-heading);font-style:normal;letter-spacing:0}:root{--glass-bg: rgba(18, 20, 24, .46);--glass-border: rgba(255, 255, 255, .16);--glass-shadow: 0 18px 48px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .08)}[data-mode=light]{--glass-bg: rgba(255, 255, 255, .42);--glass-border: rgba(255, 255, 255, .48);--glass-shadow: 0 18px 44px rgba(26, 39, 52, .13), inset 0 1px 0 rgba(255, 255, 255, .58)}.glass,.weather-card,.dashboard-primary-tile,.fo-plot-tile,.analytics-card,.windy-card,.modal-sheet,.detail-tile,.forecast-card{background:var(--glass-bg)!important;border-color:var(--glass-border)!important;box-shadow:var(--glass-shadow)}.fo-tile,.dashboard-side-stack .fo-tile.metric-dashboard-tile,.dashboard-side-stack .fo-tile.metric-dashboard-tile:hover,.analytics-mini-tile,.metric-bar-track,.plot-slide-controls,.analytics-correlation-select,.fo-chart-range-controls button,.metric-view-toggle,.analytics-range-controls button{background:linear-gradient(145deg,#ffffff24,#ffffff0b),#ffffff0e!important;border-color:var(--glass-border)!important}[data-mode=light] .fo-tile,[data-mode=light] .dashboard-side-stack .fo-tile.metric-dashboard-tile,[data-mode=light] .dashboard-side-stack .fo-tile.metric-dashboard-tile:hover,[data-mode=light] .analytics-mini-tile,[data-mode=light] .metric-bar-track,[data-mode=light] .plot-slide-controls,[data-mode=light] .analytics-correlation-select,[data-mode=light] .fo-chart-range-controls button,[data-mode=light] .metric-view-toggle,[data-mode=light] .analytics-range-controls button{background:linear-gradient(145deg,#ffffffb8,#ffffff3d),#ffffff38!important}.fo-tile:hover{background:linear-gradient(145deg,#fff3,#ffffff0f),#ffffff13!important}.dashboard-side-stack .fo-tile.metric-dashboard-tile.selected,.fo-tile.selected{border-color:#ffffff52!important;outline-color:#ffffff1f!important}.fo-tile,.dashboard-side-stack .fo-tile.metric-dashboard-tile,.dashboard-side-stack .fo-tile.metric-dashboard-tile:hover,.analytics-mini-tile,.detail-tile,.forecast-card,.metric-bar-track,.plot-slide-controls,.analytics-correlation-select,.fo-chart-range-controls button,.metric-view-toggle,.analytics-range-controls button,.daily-tip-item{background:transparent!important}.dashboard-side-stack .fo-tile.metric-dashboard-tile.selected,.fo-tile.selected,.fo-chart-range-controls button.active,.analytics-range-controls button.active,.metric-view-toggle:hover,.plot-slide-controls button:hover{border-color:#afd19ac2!important;color:var(--brand-sage)}.metric-bar-fill{background:linear-gradient(180deg,var(--brand-sage),var(--brand-forest))!important}.agent-dashboard-tile,.agent-dashboard-tile.glass,.agent-dashboard-tile .agent-blob-wrap{background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.agent-dashboard-tile{padding:0!important}.agent-dashboard-tile .agent-blob-wrap{width:min(96%,176px);height:min(96%,176px)}.agent-blob-canvas,.blob-canvas{background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important}.weather-desktop-layout.weather-map-analytics-layout{grid-template-columns:minmax(360px,1fr) minmax(280px,.72fr) minmax(300px,.78fr);gap:14px}.weather-desktop-layout.weather-map-analytics-layout>.windy-card{min-height:340px}.weather-desktop-layout.weather-map-analytics-layout>.windy-card .windy-iframe-wrap{min-height:280px}.daily-tips-card{display:flex;flex-direction:column;gap:14px;min-height:340px}.daily-tips-card .section-label{display:flex;align-items:center;justify-content:space-between;gap:10px}.daily-tips-list{display:grid;gap:12px;flex:1}.daily-tip-item{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start;padding:12px;border:1px solid var(--glass-border);border-radius:18px}.daily-tip-item span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#afd19a29;color:var(--brand-sage);font-weight:900}.daily-tip-item p{margin:0;color:var(--text-ink-2);font-size:13px;line-height:1.45;font-weight:700}@media(max-width:1320px){.weather-desktop-layout.weather-map-analytics-layout{grid-template-columns:1fr}}.analytics-card,.daily-tips-card,.windy-card{background:transparent!important}.metric-dashboard-tile .fo-tile-icon,.settings-btn svg,.modal-close svg,.windy-card .section-label svg{color:var(--brand-sage)}.plot-slide-controls button,.metric-view-toggle,.analytics-range-controls button{background:transparent!important}:root{--plot-line-color: #bdeca3;--plot-icon-color: #afd19a}[data-mode=light]{--plot-line-color: #2d4b2f;--plot-icon-color: #2d4b2f}.metric-category-icon,.metric-category-icon svg,.metric-dashboard-tile .fo-tile-icon.metric-category-icon,.metric-dashboard-tile .fo-tile-icon.metric-category-icon svg,.settings-btn,.settings-btn svg,.windy-card .section-label,.windy-card .section-label svg{color:var(--plot-icon-color)!important;fill:currentColor!important;stroke:currentColor}.analytics-range-controls,.analytics-range-controls.fo-chart-range-controls{transform:none;transform-origin:right top;gap:4px}.analytics-range-controls button,.analytics-range-controls.fo-chart-range-controls button{min-height:28px;padding:6px 9px;border-radius:999px;font-size:11px;border:1px solid var(--glass-border);background:transparent!important}.analytics-range-controls button.active,.analytics-range-controls.fo-chart-range-controls button.active{color:var(--plot-line-color)!important;border-color:color-mix(in srgb,var(--plot-line-color) 70%,transparent)!important}.weather-desktop-layout.weather-map-analytics-layout{align-items:stretch}.weather-desktop-layout.weather-map-analytics-layout>.analytics-card,.weather-desktop-layout.weather-map-analytics-layout>.daily-tips-card,.weather-desktop-layout.weather-map-analytics-layout>.windy-card{height:420px;min-height:420px;max-height:420px;align-self:stretch}.weather-desktop-layout.weather-map-analytics-layout>.windy-card .windy-iframe-wrap{min-height:0;flex:1 1 auto}.daily-tips-list,.analytics-card-grid{min-height:0}.analytics-mini-tile span{text-transform:none}@media(max-width:1320px){.weather-desktop-layout.weather-map-analytics-layout>.analytics-card,.weather-desktop-layout.weather-map-analytics-layout>.daily-tips-card,.weather-desktop-layout.weather-map-analytics-layout>.windy-card{height:auto;min-height:340px;max-height:none}}.facility-insights-card{overflow:hidden}.facility-insights-list{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:10px;flex:1;min-height:0}.facility-insight-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.78fr);gap:8px;width:100%;min-height:0;padding:9px;border:1px solid var(--glass-border);border-radius:18px;background:transparent;overflow:hidden;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.facility-insight-item:hover{transform:translateY(-1px);border-color:rgba(var(--ar),var(--ag),var(--ab),.32)}.facility-insight-item:focus-visible{outline:2px solid rgba(var(--ar),var(--ag),var(--ab),.42);outline-offset:2px}.facility-insight-copy{min-width:0}.facility-insight-copy strong{display:block;color:var(--text-ink-1);font-size:12px;line-height:1.15;margin-bottom:4px}.facility-insight-copy p{margin:0;color:var(--text-ink-3);font-size:10.5px;line-height:1.28;font-weight:700}.facility-insight-item .recharts-tooltip-wrapper{z-index:5}.modal-sheet.insight-modal{inset:50% auto auto 50%;width:min(720px,calc(100vw - 28px));max-height:min(760px,calc(100dvh - 34px));border-radius:18px;border-bottom:.33px solid rgba(var(--ar),var(--ag),var(--ab),.15);padding:0 0 24px;transform:translate(-50%,calc(-50% + 24px)) scale(.98);opacity:0;transition:transform .26s ease,opacity .26s ease}.modal-sheet.insight-modal.visible{transform:translate(-50%,-50%) scale(1);opacity:1}.insight-modal-body{display:grid;gap:16px;min-height:0}.insight-modal-summary{margin:0;color:var(--text-ink-2);font-size:15px;line-height:1.5;font-weight:700}.insight-modal-chart{min-height:190px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12);border-radius:8px;padding:12px;background:rgba(var(--ar),var(--ag),var(--ab),.045)}.insight-modal-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.insight-modal-value{min-width:0;display:flex;align-items:baseline;justify-content:space-between;gap:10px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12);border-radius:8px;padding:10px 12px;background:#ffffff09}.insight-modal-value span{min-width:0;color:var(--text-ink-3);font-size:12px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.insight-modal-value strong{flex:0 0 auto;color:var(--text-ink-1);font-size:14px}@media(max-width:1320px){.facility-insight-item{grid-template-columns:1fr}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.metric-icon-img{display:block;width:34px;height:34px;object-fit:contain;pointer-events:none}.metric-icon-img-light{display:none}.metric-icon-img-dark,[data-mode=light] .metric-icon-img-light{display:block}[data-mode=light] .metric-icon-img-dark{display:none}.metric-category-icon,.metric-dashboard-tile .fo-tile-icon.metric-category-icon{width:64px;height:64px;flex-basis:64px}.metric-icon-img{width:48px;height:48px}.facility-insights-card{background:transparent!important;border-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding-inline:0}.facility-insight-item{padding:12px;border-color:var(--glass-border);background:linear-gradient(145deg,#ffffff1a,#ffffff06),#ffffff09}[data-mode=light] .facility-insight-item{background:linear-gradient(145deg,#ffffff94,#ffffff2e),#ffffff29}.facility-insight-copy strong{font-size:14px;line-height:1.2}.facility-insight-copy p{font-size:12.5px;line-height:1.38;color:var(--text-ink-2)}.analytics-card{padding-left:22px}.analytics-card-grid{padding-left:6px}.analytics-mini-tile{padding:14px 14px 14px 18px}.analytics-mini-tile span{font-size:13px;line-height:1.2;color:var(--text-ink-2)}.analytics-mini-tile strong{font-size:26px;line-height:1.05}.metric-dashboard-tile .fo-tile-top{flex-direction:column;align-items:center;justify-content:center;gap:4px}.metric-category-icon,.metric-dashboard-tile .fo-tile-icon.metric-category-icon{width:78px;height:70px;flex:0 0 70px}.metric-icon-img{width:62px;height:62px}.metric-dashboard-tile .fo-tile-label{display:block;width:100%;margin-top:2px;text-align:center;font-size:12.5px;line-height:1.08}.facility-insight-copy strong{font-size:16px;line-height:1.18;margin-bottom:6px}.facility-insight-copy p{font-size:14px;line-height:1.42}.analytics-card-grid{display:flex;flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:12px;padding-left:12px}.analytics-mini-tile{flex:0 1 auto;width:fit-content;min-width:150px;max-width:100%;padding:16px 18px 16px 22px}.analytics-mini-tile span{font-size:14px}.analytics-mini-tile strong{font-size:28px}.weather-metrics-modal,.weather-metrics-modal.visible{position:fixed!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%) scale(1)!important;margin:0!important}.dashboard-side-stack .fo-tile.metric-dashboard-tile{padding:13px 8px 2px}.metric-dashboard-tile .fo-tile-top{display:grid;grid-template-rows:minmax(0,1fr) min-content;place-items:center;gap:0;width:100%;height:100%}.metric-category-icon,.metric-dashboard-tile .fo-tile-icon.metric-category-icon{grid-row:1;align-self:end}.metric-dashboard-tile .fo-tile-label{grid-row:2;align-self:start;margin-bottom:0;padding-bottom:0}@media(max-width:760px){html,body,#root{min-height:100%;overflow:hidden}.screen.screen-weather{height:100dvh;padding:10px 10px 32px;overflow-y:auto;overflow-x:hidden;scroll-padding-block:10px 32px}.weather-desktop-top-row,.weather-desktop-layout,.dashboard-primary-row,.dashboard-side-stack,.weather-desktop-layout.weather-map-analytics-layout{display:flex!important;flex-direction:column!important;width:100%;height:auto!important;min-height:0!important;max-height:none!important;gap:12px;margin:0 0 12px;overflow:visible!important}.dashboard-primary-tile,.weather-card,.graphs-container,.facility-chart-tile,.compact-metrics-panel,.analytics-card,.daily-tips-card,.windy-card{width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;border-radius:22px}.agent-dashboard-tile{order:1;height:118px!important;min-height:118px!important;padding:0!important}.agent-dashboard-tile .agent-blob-wrap{width:118px;height:118px}.weather-summary-tile{order:2;height:148px!important;min-height:148px!important;padding:14px 16px!important}.weather-summary-actions{top:12px;right:12px;gap:8px}.weather-summary-tile .settings-btn{width:34px;height:34px;border-radius:14px}.weather-summary-tile .w-city{font-size:17px}.weather-summary-tile .w-temp{font-size:46px}.weather-summary-tile .w-condition,.weather-summary-tile .w-hilow-stacked{font-size:13px}.compact-metrics-panel{order:3;padding:0!important}.dashboard-side-stack .facility-overview.compact-metrics-panel .section-label{padding:0 4px 6px}.dashboard-side-stack .facility-overview.compact-metrics-panel .fo-groups-container{display:block;flex:none;min-height:0;overflow:visible!important}.dashboard-side-stack .facility-overview.compact-metrics-panel .fo-devices-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:auto!important;gap:8px;padding:0}.dashboard-side-stack .facility-overview.compact-metrics-panel .metric-dashboard-tile{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1 / 1;padding:9px 5px 4px;border-radius:18px}.metric-dashboard-tile .fo-tile-top{grid-template-rows:minmax(0,1fr) min-content;gap:0}.metric-category-icon,.metric-dashboard-tile .fo-tile-icon.metric-category-icon{width:56px;height:52px;flex:0 0 52px}.metric-icon-img{width:46px;height:46px}.metric-dashboard-tile .fo-tile-label{font-size:11px;line-height:1.05}.graphs-container{order:4;padding:0!important}.graphs-container .fo-overview-label{min-height:0;padding:0 2px 8px;gap:8px;align-items:flex-start;flex-wrap:wrap}.fo-history-controls,.fo-source-controls{width:100%;min-width:0;gap:6px;flex-wrap:wrap}.ha-source-pill{max-width:100%}.plot-slide-controls{gap:6px;padding:4px}.plot-slide-controls button,.metric-view-toggle,.fo-chart-range-controls button,.analytics-range-controls button{min-height:32px;padding:6px 10px;font-size:11px}.plot-slide-controls span{min-width:38px;font-size:11px}.graphs-container .fo-charts-row{display:grid;grid-template-columns:1fr!important;grid-template-rows:none!important;height:auto!important;gap:10px;overflow:visible!important}.graphs-container .fo-plot-tile{height:min(56svh,420px)!important;min-height:320px!important;max-height:420px!important;padding:12px;border-radius:22px;overflow:hidden!important}.fo-chart-header{flex-direction:column;gap:8px}.fo-chart-label{font-size:13px;line-height:1.18}.ha-history-status{font-size:10.5px;line-height:1.2;margin-top:2px}.fo-chart-range-controls{width:100%;justify-content:flex-start;flex-wrap:wrap;transform:none}.graphs-container .fo-plot-tile .modal-chart-wrap{height:calc(100% - 98px)!important;min-height:0!important;padding:0!important}.graphs-container .fo-plot-tile .modal-chart-canvas{width:100%!important;height:100%!important;min-height:0!important}.metric-bar-tile{min-height:320px!important}.metric-bar-chart-vertical{min-height:210px;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:8px;padding:8px 0 0}.metric-bar-column{grid-template-rows:auto 142px auto;gap:6px}.metric-bar-chart-vertical .metric-bar-track{max-width:42px;height:142px}.metric-bar-chart-vertical .metric-bar-name{font-size:9.5px}.metric-bar-chart-vertical .metric-bar-value{font-size:10px}.weather-desktop-layout.weather-map-analytics-layout>.analytics-card,.weather-desktop-layout.weather-map-analytics-layout>.daily-tips-card,.weather-desktop-layout.weather-map-analytics-layout>.windy-card{height:auto!important;min-height:0!important;max-height:none!important;align-self:stretch}.analytics-card,.daily-tips-card,.windy-card{padding:12px!important}.analytics-header{flex-direction:column;gap:10px}.analytics-controls{width:100%;display:grid;gap:8px}.analytics-correlation-select{width:100%;min-height:36px}.analytics-card-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px;padding-left:0!important}.analytics-mini-tile,.weather-map-analytics-layout .analytics-mini-tile{width:100%!important;height:auto!important;min-height:82px!important;aspect-ratio:auto!important;padding:12px!important;border-radius:18px}.analytics-mini-tile span{font-size:11px}.analytics-mini-tile strong{font-size:20px}.analytics-chart-wrap{min-height:218px!important}.analytics-chart-wrap .modal-chart-wrap{height:188px!important}.analytics-chart-wrap .modal-chart-canvas{height:188px!important;min-height:188px!important}.facility-insights-card{padding:0!important}.facility-insights-list{display:grid;grid-template-rows:none;gap:10px}.facility-insight-item{grid-template-columns:minmax(0,1fr) minmax(92px,.58fr);gap:8px;padding:10px;border-radius:18px}.facility-insight-copy strong{font-size:13.5px;line-height:1.15;margin-bottom:4px}.facility-insight-copy p{font-size:11.5px;line-height:1.28}.windy-card{min-height:292px!important}.weather-desktop-layout.weather-map-analytics-layout>.windy-card .windy-iframe-wrap{height:238px!important;min-height:238px!important;flex:none;border-radius:18px}.weather-metrics-modal,.weather-metrics-modal.visible{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;overflow-y:auto!important;border-radius:22px}.weather-modal-grid{grid-template-columns:1fr!important;gap:12px;padding:0 12px 14px}.weather-modal-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dashboard-side-stack{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"agent weather" "metrics metrics";align-items:stretch;gap:10px}.agent-dashboard-tile{grid-area:agent}.weather-summary-tile{grid-area:weather}.agent-dashboard-tile,.weather-summary-tile{aspect-ratio:1 / 1;height:auto!important;min-height:0!important;overflow:hidden!important}.agent-dashboard-tile .agent-blob-wrap{width:100%;height:100%;margin-top:0;--agent-blob-scale: .46;--agent-blob-y-offset: .07}.agent-dashboard-tile .iflora-blob-root{position:relative;width:100%!important;height:100%!important}.agent-dashboard-tile .iflora-blob-root .agent-blob-canvas{position:absolute;inset:0;margin:0}.agent-dashboard-tile .iflora-blob-root>div{display:none}.weather-summary-tile{justify-content:flex-end;padding:11px!important}.weather-summary-actions{top:9px;right:9px;gap:6px}.weather-summary-tile .settings-btn{width:30px;height:30px;border-radius:12px}.weather-summary-tile .settings-btn svg{width:17px;height:17px}.weather-summary-tile .w-city{max-width:calc(100% - 146px);font-size:13.5px;line-height:1.05}.weather-summary-tile .w-temp-row{gap:7px;margin-top:4px}.weather-summary-tile .w-temp{font-size:38px;line-height:.92}.weather-summary-tile .w-hilow-stacked{font-size:11.5px}.weather-summary-tile .w-condition{max-width:100%;margin-top:4px;font-size:10.5px;line-height:1.15}.compact-metrics-panel{grid-area:metrics}.dashboard-side-stack .facility-overview.compact-metrics-panel .metric-dashboard-tile{padding:7px 5px 3px}.metric-category-icon,.metric-dashboard-tile .fo-tile-icon.metric-category-icon{width:74px;height:68px;flex:0 0 68px}.metric-icon-img{width:62px;height:62px}.metric-dashboard-tile .fo-tile-label{font-size:11.5px}.fo-source-controls{justify-content:flex-end}.metric-view-toggle{margin-right:auto}.plot-slide-controls{margin-left:auto;order:3}.plot-slide-controls button{min-width:38px;min-height:34px;padding:4px 11px;font-size:18px;line-height:1}.graphs-container .fo-charts-row:not(.is-bar-view){display:flex!important;grid-template-columns:none!important;gap:10px;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain}.graphs-container .fo-charts-row:not(.is-bar-view) .fo-plot-tile{flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always}.graphs-container .fo-charts-row.is-bar-view{display:grid!important;overflow:visible!important}.analytics-controls{display:grid;grid-template-columns:1fr;width:100%}.analytics-correlation-select{width:100%}.analytics-range-controls,.analytics-range-controls.fo-chart-range-controls{width:100%;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch;gap:6px}.analytics-range-controls button,.analytics-range-controls.fo-chart-range-controls button{width:100%;justify-content:center}.weather-summary-tile{width:clamp(142px,42vw,162px)!important;justify-self:end;align-self:center;padding:10px!important}.weather-summary-tile .w-city{font-size:14.5px}.weather-summary-tile .w-temp{font-size:42px}.weather-summary-tile .w-hilow-stacked{font-size:12.5px}.weather-summary-tile .w-condition{font-size:11.5px}.dashboard-side-stack .facility-overview.compact-metrics-panel .fo-devices-grid{grid-template-columns:repeat(3,clamp(84px,26vw,96px))!important;justify-content:center;gap:9px;padding:2px 3px 0}.dashboard-side-stack .facility-overview.compact-metrics-panel .metric-dashboard-tile{padding:6px 4px 3px}}@media(min-width:1181px){.screen-weather{--dashboard-plot-height: clamp(640px, 62vh, 820px);--analytics-row-min-height: clamp(420px, 34vh, 560px)}.dashboard-primary-row{grid-template-columns:minmax(300px,clamp(320px,20vw,390px)) minmax(0,1fr);gap:clamp(14px,1vw,20px)}.dashboard-side-stack{height:var(--dashboard-plot-height);grid-template-rows:clamp(196px,18vh,220px) clamp(122px,12vh,154px) minmax(0,1fr)}.graphs-container{height:var(--dashboard-plot-height);min-height:var(--dashboard-plot-height);max-height:var(--dashboard-plot-height)}.weather-desktop-layout.weather-map-analytics-layout{display:grid!important;grid-template-columns:minmax(420px,1.08fr) minmax(280px,.72fr) minmax(360px,.92fr);gap:clamp(12px,1vw,18px);align-items:stretch}.weather-desktop-layout.weather-map-analytics-layout>.analytics-card,.weather-desktop-layout.weather-map-analytics-layout>.daily-tips-card,.weather-desktop-layout.weather-map-analytics-layout>.windy-card{height:auto;min-height:var(--analytics-row-min-height);max-height:none;align-self:stretch}.weather-desktop-layout.weather-map-analytics-layout>.windy-card .windy-iframe-wrap{min-height:clamp(300px,27vh,470px)}.analytics-card{display:grid;grid-template-rows:auto auto minmax(190px,1fr);align-content:start;gap:clamp(10px,.9vw,14px);overflow:visible}.analytics-card-grid,.weather-map-analytics-layout .analytics-card-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(clamp(112px,8vw,150px),1fr));align-items:stretch;gap:clamp(8px,.75vw,12px);padding-left:0}.analytics-mini-tile,.weather-map-analytics-layout .analytics-mini-tile{width:100%;min-width:0;max-width:none;height:auto;min-height:clamp(76px,8vh,108px)!important;aspect-ratio:auto;padding:clamp(10px,.9vw,16px)}.analytics-mini-tile span{font-size:clamp(11px,.78vw,14px);line-height:1.15}.analytics-mini-tile strong{font-size:clamp(18px,1.45vw,28px);line-height:1.02;overflow-wrap:anywhere}.analytics-chart-wrap{min-height:clamp(190px,18vh,270px)}.analytics-chart-wrap .modal-chart-wrap{height:clamp(170px,16vh,240px)}.analytics-chart-wrap .modal-chart-canvas{height:100%;min-height:0}}.metric-dashboard-tile{--metric-icon-box-size: clamp(60px, 56%, 82px);--metric-icon-img-size: clamp(52px, 50%, 72px)}.metric-dashboard-tile .fo-tile-top{grid-template-rows:minmax(0,1fr) auto!important;gap:2px!important;overflow:hidden}.metric-category-icon,.metric-dashboard-tile .fo-tile-icon.metric-category-icon{width:var(--metric-icon-box-size)!important;height:var(--metric-icon-box-size)!important;flex:0 0 var(--metric-icon-box-size)!important;max-width:100%;min-height:0;align-self:center!important;justify-self:center;overflow:visible}.metric-icon-img{width:var(--metric-icon-img-size)!important;height:var(--metric-icon-img-size)!important;max-width:100%;max-height:100%;object-fit:contain}@media(max-width:760px){.metric-dashboard-tile{--metric-icon-box-size: clamp(54px, 58%, 70px);--metric-icon-img-size: clamp(48px, 52%, 62px)}}.dashboard-side-stack .facility-overview.compact-metrics-panel .fo-devices-grid{grid-template-columns:repeat(2,minmax(0,146px))!important;justify-content:center;justify-items:center}.dashboard-side-stack .facility-overview.compact-metrics-panel .metric-dashboard-tile{width:100%!important;max-width:146px!important}@media(max-width:760px){.dashboard-side-stack .facility-overview.compact-metrics-panel .fo-devices-grid{grid-template-columns:repeat(3,clamp(92px,27vw,104px))!important}.dashboard-side-stack .facility-overview.compact-metrics-panel .metric-dashboard-tile{max-width:104px!important}}.weather-desktop-layout.weather-map-analytics-layout.has-device-panel{grid-template-columns:minmax(320px,.86fr) minmax(340px,.94fr) minmax(340px,.94fr)}.weather-desktop-layout.weather-map-analytics-layout.non-premium-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.premium-devices-panel{min-width:0;min-height:0;height:auto;display:flex;flex-direction:column;gap:12px;padding:16px;overflow:hidden}@media(min-width:761px){.weather-desktop-layout.weather-map-analytics-layout>.premium-devices-panel,.weather-desktop-layout.weather-map-analytics-layout>.daily-tips-card,.weather-desktop-layout.weather-map-analytics-layout>.windy-card{margin-bottom:0}.weather-desktop-layout.weather-map-analytics-layout.has-device-panel{grid-template-rows:var(--analytics-row-min-height, 420px)}.weather-desktop-layout.weather-map-analytics-layout.has-device-panel>.premium-devices-panel,.weather-desktop-layout.weather-map-analytics-layout.has-device-panel>.daily-tips-card,.weather-desktop-layout.weather-map-analytics-layout.has-device-panel>.windy-card{height:var(--analytics-row-min-height, 420px)!important;min-height:0!important;max-height:var(--analytics-row-min-height, 420px)!important;align-self:stretch}.weather-desktop-layout.weather-map-analytics-layout.has-device-panel>.premium-devices-panel{overflow:hidden}}.premium-devices-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.premium-devices-header .section-label{margin-bottom:5px}.premium-devices-hint{max-width:360px;color:var(--text-ink-3);font-size:11px;line-height:1.35;font-weight:650}.premium-device-category-select{min-width:152px;max-width:48%;min-height:34px;padding:6px 28px 6px 11px;border:1px solid var(--glass-border);border-radius:999px;background:transparent;color:var(--text-ink-1);color-scheme:dark;font:800 11px var(--font-body),sans-serif;outline:none}[data-mode=light] .premium-device-category-select{color-scheme:light}.premium-device-category-select option{background:var(--bg-base);color:var(--text-ink-1)}.premium-devices-summary{display:flex;flex-wrap:wrap;gap:7px;color:var(--text-ink-3);font-size:10px;font-weight:800}.premium-devices-summary span{padding:5px 8px;border:1px solid rgba(175,209,154,.18);border-radius:999px;background:#afd19a0f}.premium-devices-grid{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(175,209,154,.62) rgba(175,209,154,.08);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(184px,auto);align-content:start;gap:10px;padding:2px 2px 4px}.premium-devices-grid::-webkit-scrollbar{width:8px}.premium-devices-grid::-webkit-scrollbar-track{border-radius:999px;background:#afd19a14}.premium-devices-grid::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:#afd19a9e;background-clip:padding-box}.premium-device-tile{min-width:0;min-height:184px;display:flex;flex-direction:column;gap:7px;padding:12px;border:1px solid rgba(175,209,154,.18);border-radius:20px;background:#ffffff09;color:var(--text-ink-1);cursor:pointer;text-align:left;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;-webkit-user-select:none;user-select:none;touch-action:manipulation}.premium-device-tile:hover,.premium-device-tile:focus-visible,.premium-device-tile.selected{border-color:#afd19aa6;background:#afd19a14;box-shadow:0 10px 22px #0000001f;outline:none}.premium-device-tile:active{transform:scale(.985)}.premium-device-tile-top{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:8px}.premium-device-icon-wrap{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border-radius:12px;background:#afd19a1c}.premium-device-icon{width:24px;height:24px;object-fit:contain}.premium-device-status{min-width:0;display:inline-flex;align-items:center;gap:5px;color:var(--text-ink-3);font-size:10px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.premium-device-status.state-on{color:#8fd49b}.premium-device-status.state-unavailable,.premium-device-status.state-unknown{color:#eaa59b}.premium-device-status-dot{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--text-ink-4)}.state-on .premium-device-status-dot{background:#8fd49b;box-shadow:0 0 10px #8fd49bbf}.state-unavailable .premium-device-status-dot,.state-unknown .premium-device-status-dot{background:#eaa59b}.premium-device-name{flex:0 0 auto;min-width:0;color:var(--text-ink-1);font-size:13px;line-height:1.3;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.premium-device-meta{flex:0 0 auto;min-width:0;display:flex;gap:5px;color:var(--text-ink-4);font-size:9px;font-weight:750}.premium-device-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.premium-device-meta span+span:before{content:"·";margin-right:5px;color:var(--text-ink-5)}.premium-device-controls{flex:0 0 auto;margin-top:auto;min-height:28px}.premium-device-controls .device-controls{justify-content:flex-start;gap:6px}.premium-device-controls .device-control-empty{display:none}.premium-device-controls .device-toggle{width:44px;height:24px}.premium-device-controls .device-toggle span{width:18px;height:18px}.premium-device-controls .device-toggle.is-on span{transform:translate(20px)}.premium-device-controls .device-action-button,.premium-device-controls .device-inline-control button{min-height:28px;padding-inline:9px;border-radius:999px;font-size:10px}.premium-device-controls .device-inline-control,.premium-device-controls .device-select-control{gap:5px}.premium-device-controls .device-inline-control input,.premium-device-controls .device-select-control select{min-height:28px;max-width:88px;border-radius:8px;font-size:10px}.premium-devices-grid-switches{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto}.premium-device-tile-switches{min-height:0;aspect-ratio:1 / 1}.premium-device-tile-switches .premium-device-meta{display:none}.premium-device-tile-switches .premium-device-controls{display:flex;align-items:end;min-height:44px}.premium-device-tile-switches .device-controls-premium{width:100%}.premium-device-tile-switches .device-toggle{width:100%;height:34px;position:relative}.premium-device-tile-switches .device-toggle span{width:26px;height:26px;position:absolute;top:3px;left:3px}.premium-device-tile-switches .device-toggle.is-on span{left:calc(100% - 29px)}.premium-device-tile-climate{min-height:246px}.device-controls-premium{width:100%}.climate-gauge-control{display:grid;grid-template-columns:120px minmax(0,1fr);grid-template-areas:"gauge detail" "range apply";align-items:center;gap:5px 10px}.climate-gauge-meter{grid-area:gauge;position:relative;width:120px;height:96px}.climate-gauge-meter .recharts-wrapper{overflow:visible}.climate-gauge-reading{position:absolute;inset:40px 0 auto;display:flex;align-items:baseline;justify-content:center;gap:3px;pointer-events:none}.climate-gauge-reading strong{color:var(--text-ink-1);font-size:25px;line-height:1}.climate-gauge-reading span,.climate-gauge-detail,.climate-gauge-detail small{color:var(--text-ink-4);font-size:10px;font-weight:750}.climate-gauge-detail{grid-area:detail;display:grid;gap:3px}.climate-gauge-detail>span{color:var(--text-ink-3);font-size:11px;font-weight:850}.climate-gauge-detail small{font-size:9px}.climate-gauge-range{grid-area:range;width:100%;accent-color:#8fd49b}.climate-gauge-apply{grid-area:apply;min-height:28px;padding:0 9px;border-radius:999px;font-size:10px}.device-segmented-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;overflow:hidden;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.16);border-radius:14px}.device-segmented-options button{min-width:0;min-height:34px;padding:0 6px;border:0;border-right:1px solid rgba(var(--ar),var(--ag),var(--ab),.14);border-radius:0;background:transparent;color:var(--text-ink-3);font-size:10px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-segmented-options button:nth-child(3n){border-right:0}.device-segmented-options button.is-selected{background:#75cd6a42;color:var(--text-ink-1)}.device-segmented-options button:hover:not(:disabled){background:#afd19a1f}.premium-device-readonly{flex:0 0 auto;margin-top:auto;color:var(--text-ink-5);font-size:9px;line-height:1.2;font-weight:700}.premium-device-inline-error{flex:0 0 auto;padding:7px 9px;border:1px solid rgba(234,165,155,.24);border-radius:12px;color:#eaa59b;font-size:10px;font-weight:700}.premium-device-history-modal{inset:50% auto auto 50%;width:min(760px,calc(100vw - 28px));max-height:min(620px,calc(100dvh - 28px));transform:translate(-50%,calc(-50% + 16px));border-radius:26px;overflow:hidden}.premium-device-history-modal.visible{transform:translate(-50%,-50%)}.premium-device-history-body{min-height:260px;padding:0 20px 20px}.premium-device-history-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:12px 0 2px;color:var(--text-ink-3);font-size:12px;font-weight:700}.premium-device-history-meta strong{color:var(--text-ink-1);font-size:18px}.premium-device-history-chart{height:300px;margin-top:10px}.premium-device-history-chart .modal-chart-wrap{height:100%;padding:0}.premium-device-history-chart .modal-chart-canvas{width:100%;height:100%}@media(min-width:900px)and (max-width:1320px){.weather-desktop-layout.weather-map-analytics-layout.has-device-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-desktop-layout.weather-map-analytics-layout.has-device-panel>.premium-devices-panel{grid-column:1 / -1}.weather-desktop-layout.weather-map-analytics-layout.non-premium-layout{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.premium-devices-panel{padding:12px;max-height:min(68dvh,520px)!important}.premium-devices-header{flex-direction:column}.premium-device-category-select{width:100%;max-width:none}.premium-devices-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-device-tile{min-height:176px;padding:10px}.premium-device-history-modal{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.premium-device-history-body{padding:0 12px 14px}.premium-device-history-chart{height:230px}}.weather-desktop-layout.weather-map-analytics-layout>.analytics-card{display:grid;grid-template-rows:auto auto minmax(260px,1fr);align-content:stretch;gap:10px;padding-bottom:12px}.weather-map-analytics-layout .analytics-header{align-items:center;gap:10px}.weather-map-analytics-layout .analytics-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px}.weather-map-analytics-layout .analytics-mini-tile{min-height:88px!important;padding:12px;justify-content:center}.weather-map-analytics-layout .analytics-mini-tile span{font-size:12px}.weather-map-analytics-layout .analytics-mini-tile strong{font-size:clamp(20px,1.55vw,26px)}.weather-map-analytics-layout .analytics-chart-wrap{min-height:0!important;height:100%;display:flex;flex-direction:column}.weather-map-analytics-layout .analytics-chart-wrap .fo-chart-label{flex:0 0 auto;margin-bottom:8px}.weather-map-analytics-layout .analytics-chart-wrap .modal-chart-wrap{flex:1;height:auto!important;min-height:260px}.weather-map-analytics-layout .analytics-chart-wrap .modal-chart-canvas{height:100%!important;min-height:260px!important}@media(max-width:760px){.weather-desktop-layout.weather-map-analytics-layout>.analytics-card{grid-template-rows:auto auto minmax(220px,auto)}.weather-map-analytics-layout .analytics-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}.open-field-dashboard{position:relative;z-index:2;width:min(100%,1720px);min-width:1040px;margin:0 auto;display:grid;grid-template-rows:minmax(570px,clamp(620px,66vh,790px)) minmax(170px,22vh);gap:16px}.open-field-map-shell{position:relative;min-height:0;overflow:hidden;border:1px solid rgba(213,230,194,.4);border-radius:8px;background:#7e8a63;box-shadow:0 28px 72px #192d1940}.open-field-satellite-base{position:absolute;inset:0;background:linear-gradient(32deg,transparent 0 42%,rgba(215,195,150,.42) 42.4% 46.2%,transparent 46.7% 100%),linear-gradient(154deg,transparent 0 55%,rgba(226,206,164,.36) 55.5% 58.2%,transparent 58.8% 100%),radial-gradient(ellipse at 20% 36%,rgba(34,67,42,.68) 0 7%,transparent 8%),radial-gradient(ellipse at 82% 24%,rgba(31,72,43,.55) 0 11%,transparent 12%),radial-gradient(ellipse at 55% 72%,rgba(47,83,47,.45) 0 13%,transparent 14%),repeating-linear-gradient(13deg,rgba(38,74,43,.32) 0 3px,transparent 3px 18px),repeating-linear-gradient(96deg,rgba(72,96,55,.24) 0 2px,transparent 2px 22px),linear-gradient(135deg,#9f966b,#b0a26f,#8f8b62 52%,#a18e61 77%,#7c865c);filter:saturate(.9) contrast(1.04)}.open-field-coordinate-map,.open-field-map-content,.open-field-satellite-tiles,.open-field-coordinate-overlay,.open-field-sensor-layer{position:absolute;inset:0}.open-field-coordinate-map{overflow:hidden}.open-field-map-content{transform-origin:0 0;will-change:transform}.open-field-satellite-tiles{pointer-events:none;overflow:hidden}.open-field-satellite-tiles img{position:absolute;display:block;opacity:.96;-webkit-user-select:none;user-select:none}.open-field-coordinate-overlay{width:100%;height:100%;overflow:visible}.open-field-sensor-layer{z-index:5;pointer-events:none}.open-field-satellite-base:before,.open-field-satellite-base:after{content:"";position:absolute;inset:0;pointer-events:none}.open-field-satellite-base:before{background:radial-gradient(circle at 16% 54%,rgba(25,55,32,.58) 0 2px,transparent 3px),radial-gradient(circle at 18% 57%,rgba(25,55,32,.58) 0 2px,transparent 3px),radial-gradient(circle at 20% 60%,rgba(25,55,32,.58) 0 2px,transparent 3px),radial-gradient(circle at 72% 18%,rgba(28,64,35,.5) 0 3px,transparent 4px),radial-gradient(circle at 75% 22%,rgba(28,64,35,.5) 0 3px,transparent 4px),radial-gradient(circle at 78% 26%,rgba(28,64,35,.5) 0 3px,transparent 4px),radial-gradient(circle at 82% 31%,rgba(28,64,35,.5) 0 3px,transparent 4px);background-size:72px 72px,72px 72px,72px 72px,86px 86px,86px 86px,86px 86px,86px 86px;opacity:.66}.open-field-satellite-base:after{background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:48px 48px;mix-blend-mode:overlay;opacity:.35}.open-field-map-vignette{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(24,39,25,.16),transparent 20%,transparent 70%,rgba(24,39,25,.24)),linear-gradient(180deg,rgba(245,250,233,.08),transparent 24%,rgba(24,39,25,.12));pointer-events:none}.open-field-weather-station{position:absolute;z-index:7;top:22px;left:22px;width:300px;min-height:158px;padding:18px;border-radius:8px;cursor:pointer;color:var(--text-ink-1)}.open-field-weather-actions{position:absolute;top:16px;right:16px;display:flex;gap:9px}.open-field-weather-station .settings-btn{width:40px;height:40px;color:var(--text-ink-1);background:#f5fae96b}.open-field-station-kicker,.open-field-station-condition,.open-field-station-grid span{color:var(--text-ink-3)}.open-field-station-kicker{max-width:170px;font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase}.open-field-station-location{max-width:120px;margin-top:7px;font-size:17px;font-weight:700}.open-field-station-temp{display:flex;align-items:flex-start;gap:10px;margin-top:3px}.open-field-station-temp strong{font-size:56px;line-height:.95;font-weight:300}.open-field-station-temp span{padding-top:10px;font-size:13px;line-height:1.15;color:var(--text-ink-2)}.open-field-station-condition{margin-top:4px;font-size:13px;line-height:1.2}.open-field-station-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px}.open-field-station-grid span{min-width:0;padding:7px 8px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.16);border-radius:8px;background:#f5fae933;font-size:10px;line-height:1.1}.open-field-station-grid b{display:block;color:var(--text-ink-1);font-size:12px;line-height:1.2}.open-field-category-dock{position:absolute;z-index:8;top:18px;left:50%;width:min(690px,calc(100% - 720px));min-width:530px;transform:translate(-50%);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:8px;border-radius:8px}.open-field-category-dock button{min-width:0;height:54px;display:grid;grid-template-rows:23px min-content;place-items:center;gap:3px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.18);border-radius:7px;background:#f5fae900;color:var(--brand-forest);cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease}.open-field-category-dock button:hover,.open-field-category-dock button.active{transform:translateY(-1px);background:transparent;border-color:#2d4b2f6b}.open-field-category-dock svg{width:21px;height:21px}.open-field-category-dock span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase}.open-field-map-stage{position:absolute;inset:0;z-index:3;background:transparent!important;cursor:grab;touch-action:none;overscroll-behavior:contain;-webkit-user-select:none;user-select:none}.open-field-map-stage:active{cursor:grabbing}.open-field-map-svg{position:absolute;inset:0;width:calc(100% - min(430px,30vw));height:100%;overflow:visible}.open-field-boundary{opacity:1;fill-opacity:.3;stroke:#4aa7ff;stroke-width:5;vector-effect:non-scaling-stroke;cursor:pointer;filter:drop-shadow(0 0 5px rgba(74,167,255,.8));transition:fill-opacity .2s ease,stroke-width .2s ease}.open-field-heat-fill{opacity:.62;mix-blend-mode:screen}.open-field-boundary:hover,.open-field-boundary.selected{fill-opacity:.46;stroke-width:7;stroke:#d7f0ff}.open-field-sensor-node{position:absolute;width:22px;height:22px;padding:0;border:0;border-radius:999px;background:transparent;transform:translate(-50%,-50%);cursor:pointer;pointer-events:auto}.open-field-sensor-node .sensor-pulse{position:absolute;inset:0;border:1.25px solid rgba(232,255,223,.72);border-radius:999px;background:#71b4673d}.open-field-sensor-node .sensor-dot{position:absolute;left:50%;top:50%;width:9px;height:9px;border:1.8px solid #f9f5ea;border-radius:999px;background:#5fa35a;transform:translate(-50%,-50%);filter:drop-shadow(0 2px 4px rgba(0,0,0,.38))}.open-field-sensor-node:hover .sensor-pulse{border-width:1.8px;background:#71b46757}.open-field-sensor-popover{position:absolute;z-index:10;min-width:172px;padding:10px 12px;border-radius:8px;transform:translate(-50%,calc(-100% - 16px));pointer-events:none;color:var(--text-ink-1)}.open-field-sensor-popover strong,.open-field-sensor-popover b,.open-field-sensor-popover span,.open-field-sensor-popover small{display:block}.open-field-sensor-popover strong{font-size:13px}.open-field-sensor-popover span,.open-field-sensor-popover small{color:var(--text-ink-3);font-size:11px}.open-field-sensor-popover b{margin:5px 0 3px;font-size:19px;font-weight:800}.open-field-zone-chip{position:absolute;left:24px;bottom:24px;z-index:6;min-width:168px;padding:12px 14px;border-radius:8px}.open-field-zone-chip span,.open-field-zone-chip strong{display:block}.open-field-zone-chip span{font-size:11px;color:var(--text-ink-3);letter-spacing:1px;text-transform:uppercase}.open-field-zone-chip strong{margin-top:4px;font-size:22px}.open-field-map-attribution{position:absolute;right:calc(min(430px,30vw) + 28px);bottom:10px;z-index:8;padding:4px 7px;border-radius:999px;background:#f5fae9b8;color:var(--brand-forest);font-size:10px;font-weight:700;text-decoration:none}.open-field-graph-drawer{position:absolute;z-index:9;top:76px;right:18px;bottom:18px;width:min(420px,29vw);min-width:360px;display:flex;flex-direction:column;border-radius:8px;overflow:hidden}.open-field-graph-header{flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 14px 10px;border-bottom:1px solid rgba(var(--ar),var(--ag),var(--ab),.14)}.open-field-graph-header span{color:var(--text-ink-3);font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.open-field-graph-header strong{display:block;margin-top:4px;color:var(--text-ink-1);font-size:18px}.open-field-range-tabs{display:flex;gap:4px;padding:3px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.14);border-radius:999px;background:#ffffff0f}.open-field-range-tabs button{height:25px;min-width:54px;padding:0 8px;border:0;border-radius:999px;background:transparent;color:var(--text-ink-3);cursor:pointer;font-size:10px;font-weight:700}.open-field-range-tabs button.active{background:rgba(var(--ar),var(--ag),var(--ab),.22);color:var(--text-ink-1)}.open-field-graph-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px;scrollbar-width:thin;scrollbar-color:rgba(var(--ar),var(--ag),var(--ab),.4) transparent}.open-field-graph-list::-webkit-scrollbar{display:block;width:8px}.open-field-graph-list::-webkit-scrollbar-track{background:transparent}.open-field-graph-list::-webkit-scrollbar-thumb{background:rgba(var(--ar),var(--ag),var(--ab),.32);border-radius:999px}.open-field-chart-card{min-height:212px;padding:12px 10px 8px;margin-bottom:10px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.15);border-radius:8px;background:#f5fae91a}.open-field-chart-card header{display:flex;justify-content:space-between;gap:10px;margin-bottom:4px}.open-field-prediction-meta{padding:0 14px 4px}.open-field-chart-card header div{min-width:0}.open-field-chart-card header span,.open-field-chart-card header strong,.open-field-chart-card header b{display:block}.open-field-chart-card header span{color:var(--text-ink-4);font-size:9px;letter-spacing:1px;text-transform:uppercase}.open-field-chart-card header strong{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-ink-2);font-size:12px;line-height:1.2}.open-field-chart-card header b{flex:0 0 auto;color:var(--text-ink-1);font-size:14px}.open-field-chart-card .modal-chart-wrap{height:154px;padding:0}.open-field-chart-card .modal-chart-canvas{height:154px;border-radius:8px}.open-field-chart-empty,.open-field-loading{min-height:180px;display:flex;align-items:center;justify-content:center;padding:16px;color:var(--text-ink-3);text-align:center}.open-field-loading{position:absolute;left:50%;top:50%;z-index:4;transform:translate(-50%,-50%);border-radius:8px}[data-mode=light] .open-field-weather-station,[data-mode=light] .open-field-category-dock,[data-mode=light] .open-field-graph-drawer,[data-mode=light] .open-field-sensor-popover,[data-mode=light] .open-field-zone-chip{background:#f5fae900}.open-field-dashboard{display:block;min-width:0;margin-bottom:24px}.open-field-map-shell{height:var(--dashboard-plot-height, clamp(640px, 62vh, 820px));border-radius:22px;border-color:var(--glass-border)}.open-field-weather-station,.open-field-category-dock,.open-field-graph-drawer,.open-field-sensor-popover,.open-field-zone-chip{border-radius:22px}.open-field-weather-station{background:var(--glass-bg);border:.33px solid var(--glass-border);box-shadow:var(--glass-shadow)}.open-field-weather-station .settings-btn{background:rgba(var(--ar),var(--ag),var(--ab),.06)}.open-field-category-dock{width:clamp(520px,42vw,700px);min-width:0;column-gap:16px;row-gap:8px;padding:10px;border-radius:18px}.open-field-category-dock button{flex:initial!important;width:auto!important;min-width:0!important;max-width:100%;aspect-ratio:auto!important;box-sizing:border-box;height:58px;display:grid!important;grid-template-rows:35px minmax(12px,auto);place-items:center;gap:2px;margin:0!important;padding:5px 5px 4px!important;border-radius:13px;background:rgba(var(--ar),var(--ag),var(--ab),.08);color:var(--text-primary);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.14);overflow:hidden;transform:none!important;box-shadow:none}.open-field-category-dock button:hover,.open-field-category-dock button.active{background:rgba(var(--ar),var(--ag),var(--ab),.16);border-color:rgba(var(--ar),var(--ag),var(--ab),.32)}.open-field-category-dock .metric-icon-img{width:34px!important;height:34px!important;max-width:34px!important;max-height:34px!important}.open-field-category-dock span{display:block;width:100%;color:var(--text-ink-2);font-size:8.5px;line-height:1;letter-spacing:0;text-transform:none;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.open-field-map-svg{width:100%;height:100%;cursor:inherit;overflow:hidden}.open-field-map-content{transform-box:fill-box;transform-origin:0 0}.open-field-map-controls{position:absolute;top:232px;left:22px;right:auto;z-index:8;display:grid;grid-template-rows:34px 24px 34px;align-items:center;justify-items:center;width:42px;padding:4px;border-radius:18px}.open-field-map-controls button{width:34px;height:34px;border:0;border-radius:14px;background:rgba(var(--ar),var(--ag),var(--ab),.16);color:var(--text-primary);cursor:pointer;font-size:21px;font-weight:700;line-height:1}.open-field-map-controls button:disabled{cursor:default;opacity:.38}.open-field-map-controls span{color:var(--text-ink-3);font-size:9px;font-weight:800}.open-field-source-note{position:absolute;left:22px;bottom:184px;z-index:8;max-width:min(520px,calc(100% - 44px));padding:10px 12px;border-radius:8px;color:var(--text-ink-2);font-size:12px;line-height:1.35}.open-field-floating-agent{position:absolute;left:22px;bottom:22px;z-index:8;width:180px;height:150px}.open-field-floating-agent .agent-dashboard-tile{width:100%;height:100%;min-height:0;padding:0}.open-field-floating-agent .agent-dashboard-tile .agent-blob-wrap{width:150px;height:150px}.open-field-graph-drawer{top:88px;background:#161f186b!important;border:.33px solid rgba(255,255,255,.2);border-radius:22px;box-shadow:0 24px 72px #08120c3d,inset 0 1px #ffffff29;backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);transition:opacity .22s ease,transform .22s ease,visibility .22s ease}.open-field-graph-drawer.is-hidden{opacity:0;pointer-events:none;transform:translate(18px) scale(.985);visibility:hidden}.open-field-chart-card{background:#f5fae929!important;border-color:#fff3;border-radius:18px}[data-mode=light] .open-field-graph-drawer{background:#f5fae970!important;border-color:#ffffff6b;box-shadow:0 24px 72px #192d1929,inset 0 1px #ffffff6b}[data-mode=light] .open-field-chart-card{background:#f5fae93d!important;border-color:#ffffff61}@media(max-width:1320px){.open-field-category-dock{width:500px;column-gap:12px;row-gap:6px;padding:8px}.open-field-category-dock button{height:50px;padding:4px 2px}.open-field-category-dock .metric-icon-img{width:34px!important;height:34px!important}.open-field-category-dock span{display:none}}@media(min-width:1500px){.open-field-category-dock button{height:58px}.open-field-category-dock .metric-icon-img{width:36px!important;height:36px!important;max-width:36px!important;max-height:36px!important}.open-field-category-dock span{font-size:9.5px}}.devices-modal{width:min(1120px,calc(100vw - 32px));height:min(820px,calc(100dvh - 32px));inset:50% auto auto 50%;transform:translate(-50%,calc(-50% + 18px));display:grid;grid-template-rows:auto auto auto auto minmax(0,1fr) auto;gap:12px;padding:22px;border-radius:8px}.devices-modal.visible{transform:translate(-50%,-50%)}.devices-modal-header{align-items:flex-start;flex-shrink:0}.devices-toolbar{display:grid;gap:12px}.devices-kpis,.devices-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.devices-kpis span{min-height:30px;display:inline-flex;align-items:center;padding:0 11px;border-radius:999px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.16);background:rgba(var(--ar),var(--ag),var(--ab),.08);color:var(--text-ink-2);font-size:.78rem;font-weight:700}.devices-filters input,.devices-filters select,.devices-filters button,.device-inline-control input,.device-inline-control button,.device-select-control select,.device-action-button{min-height:36px;border-radius:8px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.18);background:#ffffff14;color:var(--text-primary);font:inherit;outline:none}[data-mode=light] .devices-filters input,[data-mode=light] .devices-filters select,[data-mode=light] .devices-filters button,[data-mode=light] .device-inline-control input,[data-mode=light] .device-inline-control button,[data-mode=light] .device-select-control select,[data-mode=light] .device-action-button{background:#ffffff9e}.devices-filters input{width:min(100%,330px);padding:0 12px}.devices-filters select{min-width:150px;padding:0 10px}.devices-filters button,.device-inline-control button,.device-action-button{padding:0 13px;cursor:pointer;font-weight:700;color:var(--accent-solid)}.devices-filters button:disabled,.device-inline-control button:disabled,.device-action-button:disabled,.device-toggle:disabled,.device-select-control select:disabled,.device-inline-control input:disabled{cursor:default;opacity:.58}.devices-note,.devices-action-ok,.devices-inline-error{border-radius:8px;padding:10px 12px;font-size:.8rem;line-height:1.35;text-align:left}.devices-note{color:var(--text-ink-3);background:rgba(var(--ar),var(--ag),var(--ab),.06);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.12)}.devices-action-ok{color:#bde7b2;background:#50965a29;border:.33px solid rgba(120,220,140,.22)}[data-mode=light] .devices-action-ok{color:#245d2c}.devices-inline-error{color:#ffb4a8;background:#963c3229;border:.33px solid rgba(255,140,120,.22)}[data-mode=light] .devices-inline-error{color:#8f2b20}.devices-list{min-height:0;overflow:auto;display:grid;align-content:start;gap:10px;padding-right:2px}.devices-empty-state{min-height:180px;display:grid;place-items:center;align-content:center;gap:8px;padding:22px;border-radius:8px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.14);background:rgba(var(--ar),var(--ag),var(--ab),.05);color:var(--text-ink-3);text-align:center}.devices-empty-state strong{color:var(--text-ink-1);font-size:.96rem}.devices-empty-state p{margin:0;color:var(--text-ink-4);font-size:.82rem}.devices-empty-state button{min-height:34px;padding:0 13px;border-radius:8px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.18);background:#ffffff14;color:var(--accent-solid);font:inherit;font-weight:700;cursor:pointer}.device-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,auto);gap:16px;align-items:center;min-height:96px;padding:14px;border-radius:8px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.14);background:#ffffff0d}[data-mode=light] .device-row{background:#ffffff75}.device-row.is-controllable{border-color:rgba(var(--ar),var(--ag),var(--ab),.26)}.device-main{min-width:0;display:grid;gap:7px;text-align:left}.device-title-row{display:flex;align-items:center;gap:10px;min-width:0}.device-title-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-ink-1);font-size:.96rem}.device-state-pill{flex:0 0 auto;min-height:28px;max-width:180px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;background:rgba(var(--ar),var(--ag),var(--ab),.08);border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.14);color:var(--text-ink-2);font-size:.75rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-state-pill.state-on{color:#c9f4b8;background:#5aaa5638;border-color:#82e67857}.device-state-pill.state-off{color:var(--text-ink-3)}.device-state-pill.state-unavailable,.device-state-pill.state-unknown{color:#ffb4a8;background:#963c3229}[data-mode=light] .device-state-pill.state-on{color:#245d2c}[data-mode=light] .device-state-pill.state-unavailable,[data-mode=light] .device-state-pill.state-unknown{color:#8f2b20}.device-meta{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.device-meta span,.device-last-seen,.device-control-empty,.device-select-control span,.device-inline-control span{color:var(--text-ink-4);font-size:.74rem;font-weight:700}.device-meta span{min-height:22px;max-width:280px;display:inline-flex;align-items:center;padding:0 8px;border-radius:6px;background:rgba(var(--ar),var(--ag),var(--ab),.06);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px}.device-toggle{width:58px;height:34px;border:.33px solid rgba(var(--ar),var(--ag),var(--ab),.2);border-radius:999px;background:rgba(var(--ar),var(--ag),var(--ab),.08);padding:3px;cursor:pointer}.device-toggle span{display:block;width:26px;height:26px;border-radius:50%;background:var(--text-ink-3);transition:transform .2s ease,background .2s ease}.device-toggle.is-on{background:#75cd6a3d;border-color:#82e67861}.device-toggle.is-on span{transform:translate(24px);background:#bde7b2}[data-mode=light] .device-toggle.is-on span{background:#2d6d35}.device-inline-control,.device-select-control,.device-inline-control label{display:flex;align-items:center;gap:6px}.device-inline-control input{width:78px;padding:0 8px}.device-select-control select{max-width:150px;padding:0 8px}.device-control-empty{justify-self:end;text-transform:uppercase;letter-spacing:.06em}@media(max-width:760px){.devices-modal{width:calc(100vw - 16px);height:calc(100dvh - 16px);padding:16px;gap:10px}.devices-filters,.devices-kpis{display:grid;grid-template-columns:1fr 1fr}.devices-filters input{grid-column:1 / -1;width:100%}.device-row{grid-template-columns:1fr;gap:12px}.device-controls{justify-content:flex-start}.device-title-row{align-items:flex-start;flex-direction:column}.device-state-pill{max-width:100%}}.greenhouse-dashboard-primary{align-items:start}.greenhouse-compact-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:12px;height:auto;align-self:start}.greenhouse-compact-stack>.agent-dashboard-tile,.greenhouse-compact-stack>.weather-summary-tile{width:100%;height:auto;min-height:0;aspect-ratio:1 / 1;overflow:hidden}.greenhouse-compact-stack>.agent-dashboard-tile{padding:0}.greenhouse-compact-stack .agent-blob-wrap{width:100%;height:100%;max-width:none;max-height:none;--agent-blob-scale: .52;--agent-blob-y-offset: .06}.greenhouse-compact-stack .weather-summary-tile{justify-content:flex-end;padding:14px 42px 14px 14px}.greenhouse-compact-stack .weather-summary-actions{top:50%;right:10px;flex-direction:column;justify-content:center;gap:6px;transform:translateY(-50%)}.greenhouse-compact-stack .weather-summary-tile .settings-btn{width:27px;height:27px;border-radius:9px;color:var(--text-ink-2);background:transparent;border-color:rgba(var(--ar),var(--ag),var(--ab),.16);-webkit-backdrop-filter:none;backdrop-filter:none}.greenhouse-compact-stack .weather-summary-tile .settings-btn:hover{background:rgba(var(--ar),var(--ag),var(--ab),.08);transform:none}.greenhouse-compact-stack .weather-summary-tile .settings-btn svg,.greenhouse-compact-stack .weather-summary-tile .settings-btn:hover svg{width:15px;height:15px;fill:none;stroke:currentColor;transform:none}.greenhouse-compact-stack .weather-summary-tile .weather-header{min-width:0;padding-right:0}.greenhouse-compact-stack .weather-summary-tile .w-city{max-width:100%;font-size:16px;line-height:1.05}.greenhouse-compact-stack .weather-summary-tile .w-temp-row{gap:7px;margin-top:4px}.greenhouse-compact-stack .weather-summary-tile .w-temp{font-size:44px;line-height:.92}.greenhouse-compact-stack .weather-summary-tile .w-hilow-stacked{font-size:12px}.greenhouse-compact-stack .weather-summary-tile .w-condition{display:-webkit-box;max-width:100%;margin-top:5px;overflow:hidden;font-size:11.5px;line-height:1.15;-webkit-box-orient:vertical;-webkit-line-clamp:2}.greenhouse-graphs-container{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:10px;padding:14px 16px 16px;overflow:hidden}.greenhouse-graphs-container>.greenhouse-metric-dock{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;width:100%;min-width:0;margin:0;padding:0 0 10px;overflow:visible;border:0;border-bottom:1px solid rgba(var(--ar),var(--ag),var(--ab),.11);border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.greenhouse-metric-dock .fo-plot-source-label{margin:0;padding:0;white-space:nowrap}.greenhouse-metric-dock .fo-groups-container{display:block;min-width:0;overflow:visible}.greenhouse-metric-dock .fo-devices-grid{display:grid;grid-template-columns:repeat(6,minmax(72px,1fr));gap:8px;padding:0}.greenhouse-metric-dock .fo-tile.metric-dashboard-tile,.greenhouse-metric-dock .fo-tile{width:100%;min-width:0;max-width:none;height:82px;min-height:82px;aspect-ratio:auto;padding:7px 6px 4px;border-radius:18px}.greenhouse-metric-dock .metric-dashboard-tile{--metric-icon-box-size: 54px;--metric-icon-img-size: 48px}.greenhouse-metric-dock .fo-tile-top{justify-content:center;gap:2px}.greenhouse-metric-dock .fo-tile-label{font-size:11px;line-height:1;text-align:center}.greenhouse-graphs-container>.fo-overview-label{min-height:42px;margin:0}.greenhouse-graphs-container>.fo-charts-row{min-height:0;height:auto;overflow:hidden}.greenhouse-graphs-container>.fo-charts-row.is-loading-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:12px}@keyframes facility-skeleton-blink{0%,to{opacity:.42}50%{opacity:.88}}.facility-chart-skeleton{display:flex;min-height:0;padding:16px;gap:15px;pointer-events:none;animation:facility-skeleton-blink 2.8s ease-in-out infinite}.facility-chart-skeleton:nth-child(2),.facility-chart-skeleton:nth-child(4){animation-delay:.3s}.facility-chart-skeleton .skel{animation:none}.facility-chart-skeleton-header{display:flex;align-items:center;justify-content:space-between;gap:18px}.facility-chart-skeleton-header .skel:first-child{width:min(44%,220px);height:16px;border-radius:6px}.facility-chart-skeleton-header .skel:last-child{width:min(26%,130px);height:28px;border-radius:999px}.facility-chart-skeleton-canvas{display:grid;flex:1;grid-template-rows:repeat(4,1fr);align-items:end;gap:14px;min-height:0;padding:18px 14px;border-radius:18px;background:rgba(var(--ar),var(--ag),var(--ab),.025)}.facility-chart-skeleton-canvas .skel{height:7px;border-radius:999px}.facility-chart-skeleton-canvas .skel:nth-child(1){width:72%}.facility-chart-skeleton-canvas .skel:nth-child(2){width:90%}.facility-chart-skeleton-canvas .skel:nth-child(3){width:58%}.facility-chart-skeleton-canvas .skel:nth-child(4){width:82%}@media(max-width:1180px){.greenhouse-metric-dock .fo-devices-grid{grid-template-columns:repeat(3,minmax(74px,1fr))}}@media(max-width:760px){.greenhouse-compact-stack{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-areas:none!important;gap:10px}.greenhouse-compact-stack>.agent-dashboard-tile,.greenhouse-compact-stack>.weather-summary-tile{width:100%!important;justify-self:stretch}.greenhouse-compact-stack .weather-summary-tile{padding:10px 36px 10px 10px!important}.greenhouse-compact-stack .weather-summary-actions{top:50%;right:7px;gap:5px}.greenhouse-compact-stack .weather-summary-tile .settings-btn{width:25px;height:25px;border-radius:8px}.greenhouse-compact-stack .weather-summary-tile .settings-btn svg{width:14px;height:14px}.greenhouse-graphs-container{display:grid!important;grid-template-rows:auto auto minmax(420px,1fr);padding:12px!important;overflow:hidden!important}.greenhouse-graphs-container>.greenhouse-metric-dock{display:block;padding-bottom:10px!important}.greenhouse-metric-dock .fo-plot-source-label{padding:0 2px 8px}.greenhouse-metric-dock .fo-devices-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px}.greenhouse-metric-dock .fo-tile.metric-dashboard-tile,.greenhouse-metric-dock .fo-tile{height:74px!important;min-height:74px!important}.greenhouse-graphs-container>.fo-charts-row.is-loading-charts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;overflow:hidden!important}.greenhouse-graphs-container .is-loading-charts .facility-chart-skeleton{flex:none;width:100%;min-width:0;min-height:0;padding:10px}}.greenhouse-compact-stack .weather-summary-tile .settings-btn svg,.greenhouse-compact-stack .weather-summary-tile .settings-btn:hover svg,.greenhouse-compact-stack .weather-summary-tile .settings-btn svg *,.greenhouse-compact-stack .weather-summary-tile .settings-btn:hover svg *{fill:none!important;stroke:currentColor!important}.greenhouse-graphs-container>.fo-charts-row.is-data-state-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:12px}.greenhouse-graphs-container>.fo-charts-row.is-data-state-grid>.data-state{width:100%;height:100%;min-height:0;border-radius:20px}.facility-data-state-skeleton{pointer-events:none;animation:facility-skeleton-blink 2.8s ease-in-out infinite}.facility-data-state-skeleton:nth-child(3){animation-delay:.24s}.facility-data-state-skeleton:nth-child(4){animation-delay:.48s}.facility-data-state-skeleton .skel{animation:none}.facility-data-state-skeleton .data-state-mark{border:0;border-radius:12px}.facility-data-state-skeleton .data-state-mark:before,.facility-data-state-skeleton .data-state-mark:after{display:none}.facility-data-state-skeleton .data-state-copy{width:min(72%,280px);gap:10px}.facility-data-state-skeleton .facility-data-state-title,.facility-data-state-skeleton .facility-data-state-line{display:block;border-radius:999px}.facility-data-state-skeleton .facility-data-state-title{width:72%;height:15px}.facility-data-state-skeleton .facility-data-state-line{width:100%;height:10px}@media(min-width:761px){.greenhouse-compact-stack.has-primary-devices{height:var(--dashboard-plot-height, 640px);grid-template-rows:auto minmax(0,1fr);align-self:stretch}.greenhouse-compact-stack.has-primary-devices>.premium-devices-panel{grid-column:1 / -1;width:100%;height:100%!important;min-height:0!important;max-height:none!important;margin:0;padding:14px;border-radius:28px;align-self:stretch}.greenhouse-compact-stack.has-primary-devices .premium-devices-header{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.greenhouse-compact-stack.has-primary-devices .premium-devices-hint{max-width:none}.greenhouse-compact-stack.has-primary-devices .premium-device-category-select{width:100%;max-width:none}.greenhouse-compact-stack.has-primary-devices .premium-devices-grid{grid-template-columns:minmax(0,1fr);grid-auto-rows:minmax(156px,auto)}.greenhouse-compact-stack.has-primary-devices .premium-device-tile{min-height:156px}.greenhouse-compact-stack.has-primary-devices>.premium-devices-panel>.data-loading,.greenhouse-compact-stack.has-primary-devices>.premium-devices-panel>.data-state{flex:1 1 auto;min-height:0}.greenhouse-compact-stack.has-primary-devices>.premium-devices-panel>.data-state{display:grid;grid-template-columns:auto minmax(0,1fr);align-content:center;justify-content:stretch}.greenhouse-compact-stack.has-primary-devices>.premium-devices-panel>.data-state .data-state-action{grid-column:2;justify-self:start;margin:8px 0 0}}@media(max-width:760px){.greenhouse-compact-stack.has-primary-devices>.premium-devices-panel{grid-column:1 / -1;width:100%;margin:0}.greenhouse-graphs-container>.fo-charts-row.is-data-state-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;overflow:hidden!important}.greenhouse-graphs-container>.fo-charts-row.is-data-state-grid>.data-state{flex:none;min-width:0;padding:10px}.greenhouse-graphs-container>.fo-charts-row.is-data-state-grid>.data-state:first-child{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){.facility-chart-skeleton,.facility-data-state-skeleton{animation:none}}@media(max-width:760px){.greenhouse-dashboard-primary{display:flex!important;flex-direction:column!important;width:100%;gap:12px}.greenhouse-dashboard-primary>.greenhouse-compact-stack{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:auto auto!important;grid-template-areas:none!important;align-items:start;width:100%!important;height:auto!important;margin:0;gap:10px;overflow:visible!important}.greenhouse-compact-stack>.agent-dashboard-tile{grid-area:auto!important;grid-column:1!important;grid-row:1!important;order:initial!important}.greenhouse-compact-stack>.weather-summary-tile{grid-area:auto!important;grid-column:2!important;grid-row:1!important;order:initial!important}.greenhouse-compact-stack.has-primary-devices>.premium-devices-panel{grid-area:auto!important;grid-column:1 / -1!important;grid-row:2!important;order:initial!important;width:100%!important;min-width:0!important;height:auto!important;min-height:420px!important;max-height:min(72dvh,620px)!important;align-self:stretch;overflow:hidden!important}.greenhouse-dashboard-primary>.greenhouse-graphs-container{width:100%!important;margin:0}}@media(max-width:520px){.greenhouse-compact-stack.has-primary-devices .premium-devices-grid{grid-template-columns:minmax(0,1fr)}.greenhouse-compact-stack.has-primary-devices .premium-device-tile{min-height:156px}}.greenhouse-compact-stack.has-primary-devices .premium-devices-grid-switches{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:auto}.greenhouse-compact-stack.has-primary-devices .premium-device-tile-switches{min-height:0!important;aspect-ratio:1 / 1}.premium-device-controls .device-controls-premium{display:block}@media(max-width:420px){.climate-gauge-control{grid-template-columns:1fr auto}.climate-gauge-meter{transform:scale(.88);transform-origin:left center;margin-right:-14px}}.greenhouse-mobile-metric-select{display:none}@media(max-width:760px){.greenhouse-dashboard-primary>.greenhouse-graphs-container{grid-template-rows:auto auto auto!important}.greenhouse-graphs-container>.greenhouse-metric-dock{display:grid!important;grid-template-columns:minmax(0,1fr)!important;order:0!important;grid-area:auto!important;padding:0 0 10px!important}.greenhouse-graphs-container>.greenhouse-metric-dock .fo-plot-source-label,.greenhouse-graphs-container>.greenhouse-metric-dock .fo-groups-container{display:none!important}.greenhouse-mobile-metric-select{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;width:100%}.greenhouse-mobile-metric-select>span{color:var(--text-ink-4);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.greenhouse-mobile-metric-select select{width:100%;min-height:42px;padding:0 38px 0 13px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.2);border-radius:14px;background:rgba(var(--ar),var(--ag),var(--ab),.06);color:var(--text-ink-1);color-scheme:dark;font:800 13px var(--font-body),sans-serif}[data-mode=light] .greenhouse-mobile-metric-select select{color-scheme:light}.greenhouse-graphs-container>.fo-overview-label{order:1}.greenhouse-graphs-container>.fo-charts-row{order:2}}@media(max-width:760px){.greenhouse-compact-stack.has-primary-devices>.premium-devices-panel{height:min(68svh,620px)!important;min-height:0!important;max-height:min(68svh,620px)!important}.greenhouse-compact-stack.has-primary-devices .premium-devices-grid{min-height:0;align-content:start;grid-auto-rows:minmax(184px,max-content)}.greenhouse-compact-stack.has-primary-devices .premium-devices-grid-switches{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:calc((100vw - 80px)/2)!important}.greenhouse-compact-stack.has-primary-devices .premium-device-tile-switches{height:100%;min-height:0!important;aspect-ratio:auto;overflow:hidden}.greenhouse-compact-stack.has-primary-devices .premium-devices-grid-climate{grid-template-columns:minmax(0,1fr)!important;grid-auto-rows:minmax(326px,max-content)!important}.greenhouse-compact-stack.has-primary-devices .premium-device-tile-climate{min-height:326px!important;height:auto}.greenhouse-compact-stack.has-primary-devices .premium-devices-grid-selects{grid-template-columns:minmax(0,1fr)!important;grid-auto-rows:minmax(210px,max-content)!important}.greenhouse-compact-stack.has-primary-devices .premium-device-tile-selects{min-height:210px!important;height:auto}}.greenhouse-graphs-container>.greenhouse-metric-dock{background:transparent!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;min-height:0;padding:0 0 12px!important}.fo-metric-dock-header{display:flex;align-items:center;gap:10px;min-height:42px}.greenhouse-metric-dock .fo-plot-source-label{display:block;margin:0;flex:0 0 auto}.metric-profile-button,.calendar-icon-button{display:inline-grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.26);border-radius:50%;background:rgba(var(--ar),var(--ag),var(--ab),.05);color:var(--text-ink-1);transition:transform .16s ease,background .16s ease,border-color .16s ease}.metric-profile-button:hover,.metric-profile-button:focus-visible,.calendar-icon-button:hover,.calendar-icon-button:focus-visible{transform:translateY(-2px);border-color:#8fd49bd9;background:#8fd49b21}.metric-profile-button svg,.calendar-icon-button svg{width:18px;height:18px}.greenhouse-metric-dock .fo-groups-container{overflow:visible;min-width:0}.greenhouse-metric-dock .fo-devices-grid{display:grid;grid-template-columns:repeat(6,minmax(48px,1fr));gap:9px;width:min(100%,520px)}.greenhouse-metric-dock .fo-tile.metric-dashboard-tile{position:relative;display:grid;place-items:center;min-width:0;min-height:0;aspect-ratio:1;overflow:visible;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.19);border-radius:14px;background:rgba(var(--ar),var(--ag),var(--ab),.04);box-shadow:none}.greenhouse-metric-dock .fo-tile.metric-dashboard-tile.selected{border-color:#8fd49beb;background:#8fd49b1f;box-shadow:0 0 0 3px #8fd49b14}.greenhouse-metric-dock .metric-dashboard-tile .fo-tile-icon.metric-category-icon{width:32px;height:32px;margin:0;border:0;background:transparent}.greenhouse-metric-dock .metric-dashboard-tile .metric-icon-img{width:28px;height:28px;object-fit:contain}.metric-hover-blanket{position:absolute;z-index:12;left:50%;bottom:calc(100% + 8px);width:max-content;max-width:172px;padding:8px 11px;border:1px solid rgba(143,212,155,.5);border-radius:10px;background:#c2efb9f0;box-shadow:0 12px 24px #0a1d112b;color:#23482b;font:800 11px/1.1 var(--font-body),sans-serif;letter-spacing:.02em;text-align:center;opacity:0;pointer-events:none;transform:translate(-50%,7px);transition:opacity .16s ease,transform .16s ease}.metric-dashboard-tile:hover .metric-hover-blanket,.metric-dashboard-tile:focus-visible .metric-hover-blanket{opacity:1;transform:translate(-50%)}.climate-gauge-control{display:grid!important;grid-template-columns:142px minmax(0,1fr)!important;grid-template-areas:"meter copy" "meter stepper" "apply apply"!important;align-items:center;gap:8px 14px;width:100%;padding:4px 0 0}.climate-gauge-meter{grid-area:meter!important;width:142px;height:112px}.climate-gauge-copy{grid-area:copy;display:grid;gap:3px;color:var(--text-ink-3);font:800 11px/1.1 var(--font-body),sans-serif;letter-spacing:.05em;text-transform:uppercase}.climate-gauge-copy small{color:var(--text-ink-4);font-size:11px;letter-spacing:0;text-transform:none}.climate-temperature-stepper{grid-area:stepper;display:grid;grid-template-columns:34px minmax(64px,1fr) 34px;align-items:center;gap:6px;min-width:0}.climate-temperature-stepper button,.climate-mode-control button{display:grid;place-items:center;min-width:34px;min-height:34px;padding:0;border:1px solid rgba(143,212,155,.34);border-radius:10px;background:#8fd49b14;color:var(--text-ink-1)}.climate-temperature-stepper button:hover:not(:disabled),.climate-mode-control button:hover:not(:disabled){background:#8fd49b38}.climate-temperature-stepper button svg,.climate-mode-control button svg{width:16px;height:16px}.climate-temperature-stepper output,.climate-mode-control output{min-width:0;color:var(--text-ink-1);font:900 17px/1 var(--font-body),sans-serif;text-align:center}.climate-gauge-apply{grid-area:apply!important;min-height:34px!important;border-radius:10px!important}.climate-mode-control{display:grid;grid-template-columns:auto 34px minmax(64px,1fr) 34px;align-items:center;gap:7px;width:100%;margin-top:8px}.climate-mode-control>span{color:var(--text-ink-4);font:800 10px/1 var(--font-body),sans-serif;letter-spacing:.06em;text-transform:uppercase}.climate-mode-control output{font-size:13px;text-transform:capitalize}.calendar-panel-backdrop{position:fixed;z-index:10020;inset:0;display:grid;place-items:center;padding:24px;background:#040d088c;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.calendar-panel{width:min(1120px,100%);max-height:min(820px,calc(100svh - 48px));overflow:auto;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.28);border-radius:28px;background:color-mix(in srgb,var(--glass) 92%,#102119);box-shadow:0 30px 80px #00000052;padding:clamp(20px,3vw,34px)}.calendar-panel-header,.calendar-toolbar,.alert-preferences-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.calendar-panel-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--text-ink-4);font:800 11px/1 var(--font-body),sans-serif;letter-spacing:.14em;text-transform:uppercase}.calendar-panel-kicker svg{width:16px;height:16px}.calendar-panel h2{margin:8px 0 4px;color:var(--text-ink-1);font-size:clamp(23px,3vw,32px)}.calendar-panel-header p,.alert-preferences-heading p{margin:0;color:var(--text-ink-4);font-size:13px}.calendar-toolbar{margin:24px 0 15px;padding-top:16px;border-top:1px solid rgba(var(--ar),var(--ag),var(--ab),.15)}.calendar-filter-tabs,.calendar-range-tabs{display:flex;flex-wrap:wrap;gap:7px}.calendar-filter-tabs button,.calendar-range-tabs>button{min-height:34px;padding:0 12px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.19);border-radius:10px;background:transparent;color:var(--text-ink-3);font:800 12px var(--font-body),sans-serif}.calendar-filter-tabs button.is-active,.calendar-range-tabs>button.is-active,.calendar-add-task{border-color:#8fd49b94!important;background:#8fd49b24!important;color:var(--text-ink-1)!important}.calendar-add-task{display:inline-flex;align-items:center;gap:6px}.calendar-add-task svg{width:15px;height:15px}.calendar-task-form{display:grid;grid-template-columns:minmax(180px,1.7fr) minmax(120px,.8fr) minmax(170px,1fr) auto;gap:9px;margin-bottom:16px;padding:12px;border-radius:14px;background:rgba(var(--ar),var(--ag),var(--ab),.05)}.calendar-task-form input,.calendar-task-form select,.alert-preference-field select,.alert-quiet-hours input{min-width:0;min-height:37px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.2);border-radius:10px;background:rgba(var(--ar),var(--ag),var(--ab),.08);color:var(--text-ink-1);padding:0 10px;font:700 12px var(--font-body),sans-serif}.calendar-task-form button,.alert-preference-actions button,.alert-preferences-retry{min-height:37px;padding:0 13px;border:1px solid rgba(143,212,155,.55);border-radius:10px;background:#8fd49b29;color:var(--text-ink-1);font:800 12px var(--font-body),sans-serif}.calendar-split-view{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.82fr);min-height:410px;border:1px solid rgba(var(--ar),var(--ag),var(--ab),.17);border-radius:18px;overflow:hidden}.calendar-agenda{display:grid;align-content:start;padding:10px;background:rgba(var(--ar),var(--ag),var(--ab),.025)}.calendar-event{display:grid;grid-template-columns:104px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:14px 12px;border:0;border-bottom:1px solid rgba(var(--ar),var(--ag),var(--ab),.12);background:transparent;color:var(--text-ink-1);text-align:left}.calendar-event:hover,.calendar-event.is-selected{background:#8fd49b1a}.calendar-event-date,.calendar-event-copy{display:grid;gap:4px}.calendar-event-date{color:var(--text-ink-3);font-size:12px}.calendar-event-date small,.calendar-event-copy small{color:var(--text-ink-4);font-size:11px}.calendar-event-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.calendar-event-status{padding:5px 7px;border-radius:999px;color:var(--text-ink-3);background:rgba(var(--ar),var(--ag),var(--ab),.08);font:800 10px var(--font-body),sans-serif;text-transform:capitalize}.calendar-event-status.status-completed{color:#28693b;background:#6fca8733}.calendar-empty,.calendar-loading,.calendar-detail-placeholder{display:grid;place-items:center;align-content:center;gap:9px;min-height:250px;color:var(--text-ink-4);text-align:center;font-size:13px}.calendar-empty svg,.calendar-detail-placeholder svg{width:30px;height:30px;opacity:.58}.calendar-empty strong,.calendar-detail-placeholder strong{color:var(--text-ink-2)}.calendar-detail{display:grid;align-content:start;gap:13px;padding:24px;border-left:1px solid rgba(var(--ar),var(--ag),var(--ab),.17);background:rgba(var(--ar),var(--ag),var(--ab),.055)}.calendar-detail-type{color:var(--text-ink-4);font:800 10px var(--font-body),sans-serif;letter-spacing:.12em;text-transform:uppercase}.calendar-detail h3{margin:0;color:var(--text-ink-1);font-size:21px}.calendar-detail p{margin:0;color:var(--text-ink-3);font-size:13px;line-height:1.55}.calendar-why{display:grid;gap:5px;padding:11px;border-radius:11px;background:#8fd49b1c;color:var(--text-ink-3);font-size:12px;line-height:1.45}.calendar-detail-meta{display:grid;gap:5px;color:var(--text-ink-4);font-size:11px}.calendar-event-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:3px}.calendar-event-actions button{display:inline-flex;align-items:center;gap:5px;min-height:33px;border:1px solid rgba(143,212,155,.4);border-radius:9px;background:#8fd49b1c;color:var(--text-ink-1);padding:0 9px;font:800 11px var(--font-body),sans-serif}.calendar-event-actions svg{width:14px;height:14px}.calendar-event-actions button.is-danger{border-color:#ed7e6f73;background:#ed7e6f1a}.calendar-error{margin:0 0 12px;color:#e88e83;font-size:12px}.alert-preferences-panel{display:grid;gap:13px}.alert-master-toggle,.alert-toggle-group label{display:inline-flex;align-items:center;gap:8px;color:var(--text-ink-3);font-size:12px}.alert-master-toggle input,.alert-toggle-group input{accent-color:#8fd49b}.alert-preference-field{display:grid;gap:6px;color:var(--text-ink-4);font:800 11px var(--font-body),sans-serif;letter-spacing:.05em;text-transform:uppercase}.alert-preference-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.alert-quiet-hours{display:flex;align-items:center;gap:7px;color:var(--text-ink-4);font-size:12px}.alert-quiet-hours span{margin-right:auto}.alert-quiet-hours input{min-height:32px;width:82px}.alert-quiet-hours i{font-style:normal}.alert-toggle-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px;padding-top:4px}.alert-toggle-group b{grid-column:1 / -1;color:var(--text-ink-2);font-size:12px}.alert-preference-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.alert-preference-actions .is-secondary{border-color:rgba(var(--ar),var(--ag),var(--ab),.22);background:transparent;color:var(--text-ink-3)}.alert-preference-actions span{color:#8fd49b;font-size:11px}@media(max-width:760px){.greenhouse-metric-dock .fo-metric-dock-header{min-height:34px}.greenhouse-metric-dock .fo-devices-grid{grid-template-columns:repeat(3,minmax(42px,1fr))}.greenhouse-metric-dock .fo-tile.metric-dashboard-tile{min-height:52px}.greenhouse-graphs-container>.greenhouse-metric-dock .fo-plot-source-label,.greenhouse-graphs-container>.greenhouse-metric-dock .fo-groups-container{display:none!important}.metric-hover-blanket{display:none}.climate-gauge-control{grid-template-columns:132px minmax(0,1fr)!important}.climate-gauge-meter{width:132px;transform:scale(.93);transform-origin:left center}.calendar-panel-backdrop{align-items:end;padding:0}.calendar-panel{max-height:92svh;border-radius:25px 25px 0 0;padding:20px}.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-task-form{grid-template-columns:1fr}.calendar-split-view{grid-template-columns:1fr;min-height:0}.calendar-detail{min-height:250px;border-top:1px solid rgba(var(--ar),var(--ag),var(--ab),.17);border-left:0}.calendar-event{grid-template-columns:82px minmax(0,1fr)}.calendar-event-status{display:none}.alert-toggle-group{grid-template-columns:1fr}}@media(max-width:420px){.climate-gauge-control{grid-template-columns:118px minmax(0,1fr)!important;gap:6px}.climate-gauge-meter{width:118px;transform:scale(.84)}.climate-temperature-stepper{grid-template-columns:31px minmax(50px,1fr) 31px}.climate-temperature-stepper button,.climate-mode-control button{min-width:31px;min-height:31px}.climate-mode-control{grid-template-columns:auto 31px minmax(50px,1fr) 31px;gap:4px}}.daily-insights-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.daily-calendar-link{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 9px;border:1px solid rgba(143,212,155,.38);border-radius:9px;background:#8fd49b17;color:var(--text-ink-2);font:800 10px var(--font-body),sans-serif}.daily-calendar-link svg{width:14px;height:14px}@media(max-width:480px){.daily-insights-heading{align-items:flex-start;flex-direction:column}}@media(min-width:761px){.greenhouse-compact-stack.has-primary-devices.is-devices-only{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.greenhouse-compact-stack.has-primary-devices.is-devices-only>.premium-devices-panel{grid-column:1;height:100%!important}.greenhouse-metric-dock:not(.has-embedded-primary-panels){grid-template-columns:minmax(0,1fr) 42px!important}.greenhouse-metric-dock.has-embedded-primary-panels{grid-template-columns:minmax(300px,1fr) auto 42px!important;align-items:center!important;gap:12px!important;padding-bottom:12px!important}.greenhouse-metric-dock.has-embedded-primary-panels .fo-groups-container{min-width:0}.greenhouse-metric-dock.has-embedded-primary-panels .fo-devices-grid{width:100%;grid-template-columns:repeat(6,minmax(48px,1fr))}.greenhouse-metric-dock-extras{display:grid;grid-template-columns:92px minmax(170px,200px);align-items:stretch;gap:10px}.greenhouse-metric-dock-extras>.agent-dashboard-tile,.greenhouse-metric-dock-extras>.weather-summary-tile{width:100%;height:92px;min-height:92px;padding:0;border-radius:20px;overflow:hidden}.greenhouse-metric-dock-extras>.agent-dashboard-tile{aspect-ratio:1}.greenhouse-metric-dock-extras .agent-blob-wrap{width:100%;height:100%;max-width:none;max-height:none;--agent-blob-scale: .48;--agent-blob-y-offset: .05}.greenhouse-metric-dock-extras>.weather-summary-tile{justify-content:flex-end;padding:10px 33px 10px 11px}.greenhouse-metric-dock-extras .weather-summary-actions{top:50%;right:6px;flex-direction:column;gap:3px;transform:translateY(-50%)}.greenhouse-metric-dock-extras .weather-summary-tile .settings-btn{width:22px;height:22px;padding:0;border-radius:7px;background:transparent}.greenhouse-metric-dock-extras .weather-summary-tile .settings-btn svg,.greenhouse-metric-dock-extras .weather-summary-tile .settings-btn svg *{width:12px;height:12px;fill:none!important;stroke:currentColor!important}.greenhouse-metric-dock-extras .weather-summary-tile .weather-header{min-width:0}.greenhouse-metric-dock-extras .weather-summary-tile .w-city{max-width:100%;font-size:12px;line-height:1}.greenhouse-metric-dock-extras .weather-summary-tile .w-temp-row{gap:5px;margin-top:3px}.greenhouse-metric-dock-extras .weather-summary-tile .w-temp{font-size:31px;line-height:.9}.greenhouse-metric-dock-extras .weather-summary-tile .w-hilow-stacked{font-size:9px}.greenhouse-metric-dock-extras .weather-summary-tile .w-condition{display:-webkit-box;max-width:100%;margin-top:3px;overflow:hidden;font-size:8.5px;line-height:1.12;-webkit-box-orient:vertical;-webkit-line-clamp:2}.greenhouse-metric-dock>.metric-profile-button{justify-self:end}}@media(min-width:761px)and (max-width:1180px){.greenhouse-metric-dock.has-embedded-primary-panels{grid-template-columns:minmax(0,1fr) auto!important}.greenhouse-metric-dock.has-embedded-primary-panels .fo-devices-grid{grid-template-columns:repeat(6,minmax(48px,1fr))!important}.greenhouse-metric-dock.has-embedded-primary-panels .greenhouse-metric-dock-extras{grid-column:1;grid-row:2;justify-self:start}.greenhouse-metric-dock.has-embedded-primary-panels>.metric-profile-button{grid-column:2;grid-row:1 / span 2}}.greenhouse-metric-dock .fo-tile.metric-dashboard-tile{isolation:isolate;overflow:hidden}.greenhouse-metric-dock .metric-dashboard-tile .fo-tile-icon{position:relative;z-index:1;transition:transform .22s ease,opacity .22s ease}.metric-hover-blanket{z-index:2;inset:3px!important;display:grid;width:auto;max-width:none;padding:9px 6px;place-items:center;border-radius:11px;background:#c2efb9f5;color:#23482b;opacity:1;transform:translateY(calc(100% + 4px));transition:transform .24s cubic-bezier(.22,.75,.24,1)}.greenhouse-metric-dock .metric-dashboard-tile:hover .metric-hover-blanket,.greenhouse-metric-dock .metric-dashboard-tile:focus-visible .metric-hover-blanket{transform:translateY(0)}.greenhouse-metric-dock .metric-dashboard-tile:hover .fo-tile-icon,.greenhouse-metric-dock .metric-dashboard-tile:focus-visible .fo-tile-icon{transform:translateY(-8px);opacity:.2}.premium-devices-grid-all .premium-device-tile-climate{grid-column:1 / -1}.premium-device-tile-climate{min-height:264px!important;height:auto!important}.premium-device-tile-climate .premium-device-controls{width:100%;min-width:0;margin-top:4px}.premium-device-tile-climate .device-controls-climate{display:grid!important;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px}.premium-device-tile-climate .climate-gauge-control{grid-template-columns:132px minmax(0,1fr)!important;grid-template-areas:"meter copy" "meter stepper" "apply apply"!important;gap:7px 12px;min-width:0}.premium-device-tile-climate .climate-gauge-meter{width:132px!important;height:104px!important;margin:0!important;transform:none!important}.premium-device-tile-climate .climate-mode-control{margin-top:0}@media(max-width:760px){.greenhouse-graphs-container>.greenhouse-metric-dock{grid-template-columns:minmax(0,1fr) auto!important}.greenhouse-mobile-metric-select{grid-column:1}.greenhouse-metric-dock>.metric-profile-button{grid-column:2;align-self:end;justify-self:end}.metric-hover-blanket{display:none}.premium-devices-grid-all .premium-device-tile-climate{grid-column:1 / -1}}@media(max-width:360px){.premium-device-tile-climate .climate-gauge-control{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"meter" "copy" "stepper" "apply"!important;justify-items:center}.premium-device-tile-climate .climate-gauge-copy,.premium-device-tile-climate .climate-temperature-stepper,.premium-device-tile-climate .climate-gauge-apply{width:100%}}.premium-devices-panel .premium-devices-scroll{flex:1 1 0;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding:3px 4px 12px 1px;scrollbar-width:thin;scrollbar-color:#92b58b transparent}.premium-devices-scroll::-webkit-scrollbar{display:block;width:7px}.premium-devices-scroll::-webkit-scrollbar-thumb{background:#92b58b;border-radius:12px}.premium-devices-panel .premium-devices-scroll>.premium-devices-grid{display:grid;flex:none;height:auto!important;max-height:none!important;min-height:min-content;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-rows:max-content!important;align-items:start;align-content:start;overflow:visible!important;gap:12px;padding:0}.premium-devices-panel .premium-devices-scroll .premium-device-tile{position:relative;width:100%;min-width:0;max-width:100%;margin:0;box-sizing:border-box}.premium-devices-panel .premium-devices-scroll .premium-device-tile-climate,.premium-devices-panel .premium-devices-scroll .premium-device-tile-selects{grid-column:1 / -1;display:flex;flex-direction:column;height:max-content!important;min-height:min-content!important;max-height:none!important;aspect-ratio:auto!important;padding:16px;gap:8px;overflow:hidden}.premium-devices-panel .premium-devices-scroll .premium-device-tile-switches{display:flex;flex-direction:column;height:auto!important;min-height:0!important;aspect-ratio:1;padding:clamp(9px,1vw,14px);gap:7px;overflow:hidden}.premium-devices-scroll .premium-device-name{flex:none;min-height:1.35em;height:auto;line-height:1.35}.premium-devices-scroll .premium-device-tile-climate .premium-device-name{white-space:normal;overflow-wrap:anywhere}.premium-devices-scroll .premium-device-tile-climate .premium-device-meta{flex:none}.premium-devices-scroll .premium-device-tile-top{flex:none;min-width:0}.premium-devices-scroll .premium-device-status{min-width:0;font-size:11px}.premium-devices-scroll .premium-device-icon-wrap{flex-shrink:0;width:34px;height:34px}.premium-devices-scroll .premium-device-icon-wrap .metric-category-icon{--metric-icon-box-size: 26px;--metric-icon-img-size: 24px}.premium-devices-scroll .premium-device-controls{flex:none;min-width:0;margin-top:auto}.premium-devices-scroll .premium-device-tile-switches .premium-device-meta{font-size:10px}.premium-devices-scroll .premium-device-tile-switches .premium-device-name{font-size:13px}.premium-device-tile-climate .device-controls-climate{gap:12px}.thermostat-form{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:10px;width:100%;min-width:0;margin:0}.thermostat-dial{position:relative;width:160px;height:120px;flex:none}.thermostat-reading{position:absolute;inset:52px 0 auto;display:flex;align-items:baseline;justify-content:center;gap:3px}.thermostat-reading strong{font-size:32px;line-height:1.2;color:var(--text-ink-1)}.thermostat-reading span{font-size:13px;color:var(--text-ink-3)}.thermostat-caption{display:grid;text-align:center;gap:4px;font-size:11px;color:var(--text-ink-3);margin-top:-14px}.thermostat-caption>span{letter-spacing:.04em}.thermostat-caption small{font-size:11px}.thermostat-stepper{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:8px;width:100%;max-width:260px}.thermostat-stepper output{text-align:center;font-size:20px;font-weight:650}.thermostat-stepper button,.thermostat-mode button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid rgba(143,190,139,.35);border-radius:50%;background:#8fbe8b17;color:var(--text-ink-1);cursor:pointer}.thermostat-stepper svg,.thermostat-mode svg{width:18px;height:18px}.thermostat-form .thermostat-apply{width:100%;min-height:38px;border-radius:13px;border:1px solid rgba(143,190,139,.4);background:#8fbe8b2e;color:var(--text-ink-1);font:inherit;font-size:12px;cursor:pointer}.thermostat-form button:disabled,.thermostat-mode button:disabled{opacity:.4;cursor:default}.thermostat-form button:focus-visible,.thermostat-mode button:focus-visible{outline:2px solid #92c899;outline-offset:2px}.thermostat-mode{display:grid;width:100%;min-width:0;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:6px 8px;padding-top:10px;border-top:1px solid rgba(143,190,139,.16)}.thermostat-mode>span{grid-column:1 / -1;text-align:center;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-ink-3)}.thermostat-mode output{min-width:0;text-align:center;font-size:13px;overflow-wrap:anywhere}.greenhouse-metric-dock .fo-tile.metric-dashboard-tile{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:row;padding:0!important;aspect-ratio:1;height:auto!important}.greenhouse-metric-dock .metric-dashboard-tile .fo-tile-icon{position:absolute;inset:0;margin:auto!important;align-self:center;justify-self:center;display:grid;place-items:center;width:64%;height:64%}.greenhouse-metric-dock .metric-dashboard-tile .metric-category-icon img{position:absolute;inset:0;margin:auto;width:100%;height:100%;object-fit:contain}.greenhouse-metric-dock .metric-dashboard-tile .metric-hover-blanket{font-size:clamp(10px,.9vw,14px);overflow-wrap:anywhere}.action-wheel{position:relative;isolation:isolate;width:126px;height:126px;flex:none;justify-self:end;overflow:visible}.action-wheel-orbit{position:absolute;inset:25px;border:1px solid rgba(155,211,181,.24);border-radius:50%;box-shadow:inset 0 0 15px #9cddc00d;pointer-events:none}.action-wheel-slot{position:absolute;top:50%;left:50%;width:44px;height:44px;margin:-22px;transform:rotate(var(--orbit-angle)) translateY(-37px);transition:transform .36s cubic-bezier(.22,.7,.3,1)}.action-bubble{position:relative;display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid rgba(178,228,200,.4);background:radial-gradient(ellipse at 30% 12%,rgba(255,255,255,.44),transparent 55%),linear-gradient(150deg,#99dabb4d,#5496ac21);box-shadow:inset 0 1px 2px #fff6,inset 0 -4px 10px #63ac9d21,0 5px 12px #00000014;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-ink-1);cursor:pointer;transform:rotate(var(--counter-angle)) scale(1);transition:transform .36s cubic-bezier(.22,.7,.3,1),background .22s,box-shadow .22s}.action-bubble svg,.action-bubble svg *{fill:none!important;stroke:currentColor}.action-bubble svg{width:21px;height:21px}.action-wheel.is-exploring .action-bubble{transform:rotate(var(--counter-angle)) scale(.82)}.action-wheel .action-bubble.is-hovered{transform:rotate(var(--counter-angle)) scale(1.2);box-shadow:inset 0 1px 3px #e9fff0,0 0 18px #8dd3b140}.action-bubble.is-selected{border-color:#a7d5a3}.action-bubble:focus-visible{outline:2px solid #a7d5a3;outline-offset:3px}.action-bubble:disabled{cursor:default}.action-wheel-label{position:absolute;top:calc(100% - 1px);left:50%;transform:translate(-50%);white-space:nowrap;font-size:10px;color:var(--text-ink-3);pointer-events:none}.action-wheel-error{position:absolute;top:100%;right:0;width:230px;background:var(--calendar-surface, #183129);border:1px solid #ce8178;padding:10px;border-radius:12px;font-size:12px}.greenhouse-metric-dock>.action-wheel{grid-column:-2 / -1;grid-row:1}@media(min-width:1181px){.greenhouse-metric-dock.has-embedded-primary-panels{grid-template-columns:minmax(0,1fr) auto 126px!important}.greenhouse-metric-dock.has-embedded-primary-panels .fo-devices-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(min-width:761px){.greenhouse-compact-stack.has-primary-devices.is-devices-only{height:auto!important;min-height:0;align-self:stretch;contain:size}.greenhouse-metric-dock:not(.has-embedded-primary-panels){grid-template-columns:minmax(0,1fr) 126px!important}.greenhouse-metric-dock-extras{grid-template-columns:78px minmax(130px,164px);gap:8px}.greenhouse-metric-dock-extras>.weather-summary-tile{padding:10px 12px}.greenhouse-metric-dock-extras .weather-summary-tile .w-condition{font-size:10px}.greenhouse-metric-dock-extras .weather-summary-tile .w-city{line-height:1.25}}@media(min-width:761px)and (max-width:1180px){.greenhouse-metric-dock.has-embedded-primary-panels>.action-wheel{grid-column:2;grid-row:1 / span 2}}@media(max-width:760px){.greenhouse-graphs-container>.greenhouse-metric-dock{grid-template-columns:minmax(0,1fr) 126px!important;align-items:center}.greenhouse-compact-stack.has-primary-devices>.premium-devices-panel{height:min(76dvh,700px)!important;max-height:none!important}.greenhouse-compact-stack .weather-summary-tile{padding:12px!important}}.open-field-weather-actions:has(.action-wheel){position:absolute;top:6px;right:8px;width:126px;height:126px}.open-field-weather-station:has(.action-wheel){padding-right:148px}.insight-calendar{--calendar-surface: var(--bg-card, #183129);display:flex;flex-direction:column;min-width:0;width:100%;height:clamp(580px,68vh,740px);padding:22px;gap:14px;overflow:hidden}.insight-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.insight-calendar-kicker{display:flex;align-items:center;gap:7px;color:var(--text-ink-3);font-size:10px;letter-spacing:.07em}.insight-calendar-kicker svg{width:15px;height:15px}.insight-calendar h2{font-size:clamp(17px,1.5vw,23px);margin:7px 0 0;line-height:1.2;color:var(--text-ink-1)}.insight-calendar button,.insight-calendar input{font:inherit;color:var(--text-ink-1)}.insight-calendar button{cursor:pointer}.insight-calendar button:focus-visible,.insight-calendar input:focus-visible{outline:2px solid #92c899;outline-offset:2px}.insight-calendar-add{display:flex;align-items:center;gap:4px;padding:9px 11px;border:1px solid rgba(155,193,143,.3);border-radius:13px;background:#9bc18f1a;font-size:11px!important}.insight-calendar-add svg{width:15px;height:15px}.insight-calendar-navigation{display:flex;align-items:center;gap:5px}.insight-calendar-navigation button{display:grid;place-items:center;min-width:34px;height:34px;border:0;border-radius:10px;background:#8fbe8b0f}.insight-calendar-navigation svg{width:18px;height:18px}.insight-calendar-navigation label{min-width:0}.insight-calendar-navigation input{min-width:0;width:132px;border:none;padding:5px;background:transparent;font-size:12px}.insight-calendar-navigation .calendar-today{margin-left:auto;padding:0 10px;font-size:11px}.insight-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.insight-calendar-week button{display:grid;justify-items:center;gap:7px;min-width:0;border-radius:15px;padding:9px 2px;border:1px solid transparent;background:#9bc18f0d}.insight-calendar-week button.is-selected{background:#9bc18f38;border-color:#9bc18fa6}.insight-calendar-week span{font-size:10px;color:var(--text-ink-3)}.insight-calendar-week strong{font-size:18px;line-height:1;font-weight:550}.insight-calendar-week i{width:4px;height:4px;border-radius:50%;background:transparent}.insight-calendar-week i.has-items{background:#91bd87}.insight-calendar-filters{display:flex;flex-wrap:wrap;gap:6px}.insight-calendar-filters button{border:1px solid transparent;border-radius:20px;padding:6px 12px;background:transparent;font-size:11px}.insight-calendar-filters button.is-selected{background:#9bc18f1f;border-color:#9bc18f4d}.insight-calendar-day-label{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px;color:var(--text-ink-3);padding-top:2px}.insight-calendar-day-label strong{color:var(--text-ink-2);font-size:12px;font-weight:600}.insight-calendar-feed{flex:1 1 0;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;padding-right:4px}.insight-calendar-feed::-webkit-scrollbar{display:block;width:6px}.insight-calendar-feed::-webkit-scrollbar-thumb{background:#76956d;border-radius:8px}.insight-calendar-entry{border:1px solid rgba(155,193,143,.18);border-radius:18px;padding:15px;margin-bottom:10px;background:#9bc18f0a}.insight-calendar-entry.is-forecast{border-style:dashed}.insight-calendar-entry-meta{display:flex;justify-content:space-between;gap:10px;color:var(--text-ink-3);font-size:10px}.insight-calendar-entry h3{margin:10px 0 7px;font-size:15px;line-height:1.4;color:var(--text-ink-1)}.insight-calendar-entry p,.insight-calendar-entry details{font-size:12px;line-height:1.65;color:var(--text-ink-2);margin:0}.insight-calendar-entry summary{cursor:pointer;color:var(--text-ink-3);font-size:11px}.insight-calendar-entry details p{margin:6px 0}.insight-calendar-chart{width:100%;min-width:0;height:175px;margin:10px 0}.insight-calendar-empty{display:grid;justify-items:center;align-content:center;text-align:center;gap:12px;min-height:190px;padding:20px;color:var(--text-ink-3)}.insight-calendar-empty svg{width:28px;height:28px;opacity:.65}.insight-calendar-empty p{margin:0;max-width:340px;font-size:12px;line-height:1.7}.insight-calendar-empty strong{color:var(--text-ink-2);font-size:14px}.insight-calendar-warning{padding:10px 12px;border:1px solid rgba(210,168,90,.3);border-radius:12px;font-size:11px;color:var(--text-ink-2);margin-bottom:10px}.insight-calendar-warning p{margin:0 0 5px}.insight-calendar-warning button,.insight-calendar-manage{padding:5px 0;border:none;background:transparent;text-decoration:underline;font-size:11px}.insight-calendar-loading>.skel{height:130px;border-radius:18px;margin-bottom:12px}@media(max-width:520px){.insight-calendar{padding:16px;gap:12px;height:660px}.insight-calendar-week{gap:3px}.insight-calendar-filters button{padding:6px 10px}}@media(prefers-reduced-motion:reduce){.action-wheel *,.greenhouse-metric-dock .metric-dashboard-tile *{transition:none!important;animation:none!important}}:root{--glass: rgba(16, 34, 25, .9);--glass-bg: color-mix(in srgb, var(--glass) 92%, #102119);--glass-border: rgba(var(--ar), var(--ag), var(--ab), .28);--glass-shadow: 0 30px 80px rgba(0, 0, 0, .32);--glass-inner-bg: rgba(var(--ar), var(--ag), var(--ab), .055);--glass-inner-border: rgba(var(--ar), var(--ag), var(--ab), .17);--glass-scrim: rgba(4, 13, 8, .55)}[data-mode=light]{--glass: rgba(242, 248, 234, .9);--glass-bg: color-mix(in srgb, var(--glass) 94%, #dce9d8);--glass-border: rgba(var(--ar), var(--ag), var(--ab), .28);--glass-shadow: 0 30px 80px rgba(25, 55, 35, .18);--glass-inner-bg: rgba(var(--ar), var(--ag), var(--ab), .055);--glass-inner-border: rgba(var(--ar), var(--ag), var(--ab), .17);--glass-scrim: rgba(12, 26, 17, .35)}.glass,.weather-card,.dashboard-primary-tile,.fo-plot-tile,.analytics-card,.windy-card,.modal-sheet,.detail-tile,.forecast-card,.calendar-panel{background:var(--glass-bg)!important;border:1px solid var(--glass-border)!important;box-shadow:var(--glass-shadow)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.fo-tile,.dashboard-side-stack .fo-tile.metric-dashboard-tile,.dashboard-side-stack .fo-tile.metric-dashboard-tile:hover,.analytics-mini-tile,.metric-bar-track,.plot-slide-controls,.analytics-correlation-select,.fo-chart-range-controls button,.metric-view-toggle,.analytics-range-controls button,.calendar-task-form,.calendar-agenda,.calendar-detail,.insight-calendar-entry{background:var(--glass-inner-bg)!important;border-color:var(--glass-inner-border)!important;box-shadow:none!important}.calendar-panel-backdrop{background:var(--glass-scrim)}.agent-dashboard-tile,.agent-dashboard-tile.dashboard-primary-tile,.agent-dashboard-tile .agent-blob-wrap,.agent-dashboard-tile .iflora-blob-root,.agent-dashboard-tile .agent-blob-canvas{background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.calendar-panel,.calendar-agenda,.calendar-detail,.insight-calendar-feed{scrollbar-width:thin;scrollbar-color:#92b58b transparent;scrollbar-gutter:stable}.calendar-panel::-webkit-scrollbar,.calendar-agenda::-webkit-scrollbar,.calendar-detail::-webkit-scrollbar,.insight-calendar-feed::-webkit-scrollbar{display:block;width:7px;height:7px}.calendar-panel::-webkit-scrollbar-thumb,.calendar-agenda::-webkit-scrollbar-thumb,.calendar-detail::-webkit-scrollbar-thumb,.insight-calendar-feed::-webkit-scrollbar-thumb{background:#92b58b;border-radius:12px}@media(min-width:1400px){.screen-weather{--dashboard-plot-height: clamp(760px, 72vh, 960px)}.greenhouse-metric-dock.has-embedded-primary-panels{grid-template-columns:minmax(0,1fr) auto 126px!important;gap:12px!important}.greenhouse-metric-dock.has-embedded-primary-panels .fo-groups-container{width:100%;max-width:720px;justify-self:start}.greenhouse-metric-dock.has-embedded-primary-panels .fo-devices-grid{width:100%;grid-template-columns:repeat(6,minmax(84px,112px))!important;justify-content:start;gap:10px}.greenhouse-metric-dock .fo-tile.metric-dashboard-tile{width:100%!important;height:76px!important;min-height:76px!important;aspect-ratio:auto!important;border-radius:16px}.greenhouse-metric-dock .metric-dashboard-tile .fo-tile-icon.metric-category-icon{position:relative;inset:auto;width:42px!important;height:42px!important;flex-basis:42px!important}.greenhouse-metric-dock .metric-dashboard-tile .metric-icon-img{width:38px!important;height:38px!important}.greenhouse-metric-dock-extras{grid-template-columns:118px minmax(156px,176px);align-items:center;gap:10px}.greenhouse-metric-dock-extras>.agent-dashboard-tile{width:118px;height:108px;min-height:108px;aspect-ratio:auto;overflow:visible}.greenhouse-metric-dock-extras .agent-blob-wrap{width:108px;height:108px;--agent-blob-scale: .5;--agent-blob-y-offset: 0}.greenhouse-metric-dock-extras .iflora-blob-root>div{display:none}.greenhouse-metric-dock-extras>.weather-summary-tile{height:92px;min-height:92px;align-self:center}.greenhouse-graphs-container>.fo-charts-row:not(.is-bar-view){grid-template-rows:repeat(2,minmax(250px,1fr))}}.premium-device-tile-switches .device-toggle span,.premium-device-tile-switches .device-toggle.is-on span{transform:none}@media(min-width:1600px){.greenhouse-metric-dock-extras{grid-template-columns:clamp(164px,9.5vw,188px) minmax(156px,176px)}.greenhouse-metric-dock-extras>.agent-dashboard-tile{width:100%;height:136px;min-height:136px}.greenhouse-metric-dock-extras .agent-blob-wrap{width:160px;height:136px;--agent-blob-scale: .52}}.premium-device-filter-controls{display:flex;align-items:center;gap:8px;width:min(100%,340px);min-width:0}.premium-device-filter-controls .premium-device-category-select{flex:1 1 auto;width:auto;min-width:0;max-width:none}.premium-device-active-filter{min-height:34px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:6px 12px;border:1px solid var(--glass-border);border-radius:999px;background:transparent;color:var(--text-ink-2);font:800 11px var(--font-body),sans-serif;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.premium-device-active-filter:hover,.premium-device-active-filter:focus-visible{border-color:#afd19a94;outline:none}.premium-device-active-filter:active{transform:scale(.97)}.premium-device-active-filter-dot{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.52}.premium-device-active-filter.is-active{border-color:#afd19ab3;background:#afd19a29;color:var(--brand-sage);box-shadow:inset 0 1px #ffffff14,0 5px 16px #2a4d2e1a}.greenhouse-compact-stack.has-primary-devices .premium-device-filter-controls{width:100%}@media(max-width:420px){.premium-device-active-filter{padding-inline:10px}}.fo-tile.metric-dashboard-tile{background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.025) 48%,transparent 74%),color-mix(in srgb,var(--glass-bg) 58%,transparent)!important;border:1px solid var(--glass-border)!important;box-shadow:0 12px 30px #00000029,inset 0 1px #ffffff29!important;backdrop-filter:blur(18px) saturate(138%)!important;-webkit-backdrop-filter:blur(18px) saturate(138%)!important}.fo-tile.metric-dashboard-tile:hover,.fo-tile.metric-dashboard-tile:focus-visible{background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.035) 52%,transparent 76%),color-mix(in srgb,var(--glass-bg) 68%,transparent)!important;border-color:color-mix(in srgb,var(--brand-sage) 55%,var(--glass-border))!important;box-shadow:0 16px 34px #0003,inset 0 1px #fff3!important}.fo-tile.metric-dashboard-tile.selected{background:linear-gradient(145deg,rgba(255,255,255,.18),transparent 62%),color-mix(in srgb,var(--brand-sage) 18%,var(--glass-bg) 82%)!important;border-color:color-mix(in srgb,var(--brand-sage) 72%,transparent)!important;box-shadow:0 14px 32px #0000002e,0 0 0 3px color-mix(in srgb,var(--brand-sage) 11%,transparent),inset 0 1px #fff3!important}.action-wheel-orbit{background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.12),transparent 45%),color-mix(in srgb,var(--glass-bg) 44%,transparent);border-color:var(--glass-border);box-shadow:0 14px 34px #00000026,inset 0 1px #ffffff21,inset 0 -8px 18px #07180f1a;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}.action-bubble{background:radial-gradient(circle at 30% 18%,rgba(255,255,255,.34),transparent 42%),color-mix(in srgb,var(--glass-bg) 64%,transparent);border-color:color-mix(in srgb,var(--glass-border) 82%,rgba(255,255,255,.28));box-shadow:0 10px 24px #0000002e,inset 0 1px #ffffff3d,inset 0 -5px 12px #1f523a1f;backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%)}.action-wheel .action-bubble.is-hovered,.action-bubble.is-selected{background:radial-gradient(circle at 30% 16%,rgba(255,255,255,.42),transparent 44%),color-mix(in srgb,var(--brand-sage) 17%,var(--glass-bg) 83%);border-color:color-mix(in srgb,var(--brand-sage) 70%,rgba(255,255,255,.2));box-shadow:0 14px 30px #0003,0 0 18px color-mix(in srgb,var(--brand-sage) 18%,transparent),inset 0 1px #ffffff4d}[data-mode=light] .fo-tile.metric-dashboard-tile,[data-mode=light] .action-bubble,[data-mode=light] .action-wheel-orbit{--glass-bg: rgba(242, 248, 234, .82)}:root{--deviation-orange: #e78f3e}.prediction-accuracy-drift,.prediction-storage-error{color:var(--deviation-orange)}.alert-quiet-hours i,.thermostat-caption,.thermostat-caption>span,.thermostat-caption small{color:var(--deviation-orange)!important}.alert-quiet-hours input[type=time],.insight-calendar-navigation input[type=date]{accent-color:var(--deviation-orange)}.alert-quiet-hours input[type=time]::-webkit-calendar-picker-indicator,.insight-calendar-navigation input[type=date]::-webkit-calendar-picker-indicator{opacity:1;filter:invert(59%) sepia(89%) saturate(604%) hue-rotate(342deg) brightness(95%) contrast(90%)}.settings-modal.field-profile-modal{max-width:720px;width:calc(100% - 24px);max-height:90dvh}.open-field-zones{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:24px;align-items:stretch;width:100%;min-width:0}.open-field-zones *{box-sizing:border-box}.zone-data,.zone-list{min-width:0;border-radius:30px;padding:24px;height:clamp(600px,60vh,820px)}.zone-data{overflow:auto;scrollbar-gutter:stable}.zone-list{display:flex;flex-direction:column;overflow:hidden}.zone-list>header,.zone-chart>header,.field-manager>header,.zone-selection-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.zone-list h2,.zone-data h1{font-size:clamp(19px,1.5vw,26px);margin:8px 0}.zone-data h2{font-size:30px;margin:5px 0}.zone-kicker{font-size:10px;letter-spacing:.14em;color:var(--text-ink-3)}.zone-plan{font-size:11px;color:var(--text-ink-2);text-transform:capitalize}.zone-overview{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--glass-border);padding-bottom:18px;margin-bottom:20px}.zone-overview-spacer{flex:1;min-width:0}.zone-overview .agent-dashboard-tile{order:-1;width:180px!important;height:180px!important;flex:0 0 180px!important;min-height:0!important;background:none!important;border:0!important;box-shadow:none!important;padding:0!important}.zone-overview .agent-blob-wrap{width:100%!important;height:100%!important;min-height:0!important}.zone-overview .agent-blob-canvas{--agent-blob-scale:.49;--agent-blob-y-offset:-.01}.zone-overview .action-wheel{flex-shrink:0;transform:scale(.82);margin:-10px}.zone-selection-title p{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:12px;color:var(--text-ink-3)}.open-field-zones button svg,.zone-weather svg,.zone-selection-title svg,.zone-chart-empty svg,.field-manager button svg{width:19px;height:19px;flex-shrink:0}.open-field-zones button:not(.action-bubble),.open-field-zones select,.field-manager button,.field-manager input{font:inherit;color:var(--text-ink-1);border:1px solid var(--glass-border);border-radius:14px;background:var(--glass-inner-bg);padding:9px 12px}.open-field-zones button,.field-manager button{cursor:pointer}.open-field-zones button:focus-visible,.field-manager button:focus-visible,.field-manager input:focus-visible{outline:2px solid #efa04d;outline-offset:3px}.open-field-zones button:disabled,.field-manager button:disabled{opacity:.5;cursor:wait}.zone-list>header>button,.field-manager>header>button{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:12px}.zone-weather{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.zone-weather>div{display:flex;align-items:center;gap:8px;background:var(--glass-inner-bg);border:1px solid var(--glass-inner-border);padding:14px 10px;border-radius:18px}.zone-weather span{font-size:11px;color:var(--text-ink-3)}.zone-weather strong{font-weight:500;font-size:clamp(18px,1.8vw,30px);color:var(--text-ink-1);display:block;margin-top:7px}.zone-weather>small{grid-column:1/-1;color:var(--text-ink-3);font-size:10px;line-height:1.6}.zone-metric-tabs{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}.zone-metric-tabs button{font-size:12px!important}.zone-metric-tabs button[aria-pressed=true]{background:#98c0833b!important;border-color:#91b777!important}.zone-chart{border:1px solid var(--glass-inner-border);border-radius:22px;padding:18px;background:var(--glass-inner-bg)}.zone-chart h3{font-size:30px;margin:8px 0}.zone-chart small{font-size:11px;line-height:1.6;color:var(--text-ink-3)}.zone-chart select{max-width:120px;font-size:12px}.zone-timeseries{height:260px;width:100%;margin-top:18px}.zone-timeseries>div{height:100%!important;width:100%!important}.zone-chart-empty{min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;padding:18px}.zone-chart-empty>svg{width:30px;height:30px;opacity:.65}.zone-chart-empty strong{font-size:14px;font-weight:500}.zone-chart-empty p{font-size:12px;line-height:1.6;color:var(--text-ink-3)}.zone-status,.field-notice{border-left:3px solid #e6953a;padding:10px 12px;font-size:12px;line-height:1.6;background:#df993512;border-radius:0 10px 10px 0}.zone-outlook h3{font-size:15px;font-weight:500}.zone-outlook>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.zone-outlook article{display:flex;flex-direction:column;gap:10px;background:var(--glass-inner-bg);border-radius:14px;padding:12px;font-size:13px}.zone-outlook small{font-size:10px;color:var(--text-ink-3)}.field-hint{font-size:12px;color:var(--text-ink-3);line-height:1.65}.zone-list-scroll{min-height:0;flex:1;overflow:auto;scrollbar-gutter:stable;padding:4px 8px 4px 0}.zone-card{border:1px solid var(--glass-border);border-radius:22px;overflow:hidden;margin-bottom:16px;background:var(--glass-inner-bg)}.zone-card.is-selected{border-color:#a1c584;box-shadow:0 0 0 2px #a2c7862e}.zone-card-select{display:flex;align-items:center;gap:14px;border:0!important;border-radius:0!important;width:100%;text-align:left;padding:15px!important}.zone-card-select>span:nth-child(2){flex:1;min-width:0}.zone-card-select strong,.zone-card-select small{display:block}.zone-card-select strong{font-size:17px;margin-bottom:5px;overflow-wrap:anywhere}.zone-card-select small{font-size:11px;color:var(--text-ink-3)}.zone-number{font-size:23px;font-weight:300;opacity:.55}.zone-selected-mark{font-size:10px;white-space:nowrap;color:var(--text-ink-3)}.field-map-shell{position:relative;isolation:isolate;height:240px;background:#273a30}.field-map{height:100%;width:100%;z-index:0}.field-map-shell.is-drawing .leaflet-container{cursor:crosshair}.field-map-caption{position:absolute;bottom:21px;left:8px;padding:4px 7px;max-width:calc(100% - 16px);background:#0c1a16cc;color:#edf5e6;border-radius:7px;font-size:9px;pointer-events:none}.field-map-note{position:absolute;top:12px;left:50px;right:10px;padding:8px;background:#263c2e;color:#fff;font-size:11px;z-index:2}.field-map .leaflet-control-zoom a{background:#f2f6eb;color:#233227}.zone-windy,.zone-calendar{min-width:0;height:clamp(360px,33vh,560px)}.zone-windy>.windy-card,.zone-calendar>.insight-calendar{height:100%!important;min-height:0!important;width:100%;margin:0!important;border-radius:30px!important}.zone-windy .windy-iframe-wrap{height:calc(100% - 45px)!important;min-height:0!important}.zone-data,.zone-list-scroll,.field-manager-list,.zone-calendar .insight-calendar-feed{scrollbar-width:thin;scrollbar-color:#96b78b transparent}.zone-data::-webkit-scrollbar,.zone-list-scroll::-webkit-scrollbar,.field-manager-list::-webkit-scrollbar{width:7px}.zone-data::-webkit-scrollbar-thumb,.zone-list-scroll::-webkit-scrollbar-thumb,.field-manager-list::-webkit-scrollbar-thumb{background:#96b78b;border-radius:8px}.zone-empty{padding:30px;line-height:1.7}.field-manager h3{font-size:20px;margin:8px 0}.field-manager-list{max-height:330px;overflow:auto;margin-top:16px}.field-manager-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;border-top:1px solid var(--glass-border)}.field-manager-list small{display:block;color:var(--text-ink-3);margin-top:7px;line-height:1.5;font-size:11px}.field-manager-list button{font-size:12px}.field-manager-list article>div{min-width:0}.field-editor{border:1px solid var(--glass-border);padding:16px;border-radius:20px;margin-top:15px}.field-editor label{display:flex;flex-direction:column;gap:8px;font-size:13px}.field-editor input{width:100%;min-width:0}.field-editor form{display:flex;align-items:end;gap:8px;margin:16px 0}.field-editor form label{flex:1;min-width:0}.field-editor form button{display:flex;gap:5px;align-items:center;font-size:12px}.field-search-results{display:flex;flex-direction:column;gap:6px}.field-draw-toolbar{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.field-draw-toolbar button{font-size:11px;display:flex;align-items:center;gap:4px}.field-draw-toolbar button[aria-pressed=true]{background:#98c08333}.field-editor .field-map-shell{height:350px;border-radius:15px;overflow:hidden}.field-editor p{font-size:12px;line-height:1.6}.field-submit{width:100%;background:#98c08333!important}.field-error{color:#e79278;font-size:13px;line-height:1.5}@media(min-width:1500px){.zone-data,.zone-list{padding:30px}.field-map-shell{height:290px}}@media(max-width:1000px){.open-field-zones{grid-template-columns:minmax(0,1fr);gap:16px}.zone-list{grid-row:1;height:520px}.zone-data{height:auto;max-height:none;overflow:visible}.zone-list>header h2{font-size:20px}.zone-windy,.zone-calendar{height:570px}.zone-calendar{grid-row:3}}@media(max-width:540px){.zone-data,.zone-list{padding:15px;border-radius:23px}.zone-overview{gap:5px}.zone-overview .agent-dashboard-tile{display:none}.zone-overview .action-wheel{transform:scale(.7);margin:-18px}.zone-overview h1{font-size:20px}.zone-weather{gap:6px}.zone-weather>div{padding:10px 7px}.zone-weather svg{display:none}.zone-weather strong{font-size:20px}.zone-list h2{font-size:17px!important}.zone-card-select{gap:9px!important}.zone-selected-mark{font-size:9px}.zone-chart{padding:12px}.zone-chart-empty{padding:10px}.zone-outlook article{padding:9px}.field-editor{padding:9px}.field-editor form{flex-wrap:wrap}.zone-timeseries{height:230px}.field-map-shell{height:225px}.zone-weather>small{font-size:9px}}
