body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.MuiTypography-h4{font-weight:600!important;line-height:1.2!important}.MuiTypography-h5{font-weight:600!important;line-height:1.3!important}.MuiTypography-h6{font-weight:600!important;line-height:1.4!important}.MuiCard-root{border-radius:12px!important}.MuiCardContent-root{padding:24px!important}.MuiButton-root{border-radius:8px!important;text-transform:none!important}.MuiButton-root,.MuiChip-root{font-weight:600!important}.leaflet-container{height:100%;width:100%}.custom-device-marker{background:#0000!important;border:none!important}.leaflet-popup-content-wrapper{border-radius:8px}.leaflet-popup-content{line-height:1.5;margin:0}.MuiDataGrid-root{border:1px solid #e5e8ec!important;border-radius:12px!important;font-family:Roboto,Helvetica,Arial,sans-serif;overflow:auto}.MuiDataGrid-columnHeaders{background-color:#c7263414!important;border-bottom:2px solid #c7263433!important;color:#2c3e50!important;font-weight:600!important}.MuiDataGrid-columnHeader:focus{outline:none!important}.MuiDataGrid-columnHeaderTitle{color:#2c3e50!important;font-weight:600!important}.MuiDataGrid-row:hover{background-color:#c726340d!important}.MuiDataGrid-row.Mui-selected{background-color:#c726341a!important}.MuiDataGrid-row.Mui-selected:hover{background-color:#c7263426!important}.MuiDataGrid-cell:focus{outline:2px solid #c72634!important;outline-offset:-2px}.MuiDataGrid-columnSeparator{color:#c726344d!important}.MuiDataGrid-filterIcon,.MuiDataGrid-menuIcon,.MuiDataGrid-sortIcon{color:#c72634!important}.MuiDataGrid-footerContainer{background-color:#f8f9fa!important;border-top:1px solid #e5e8ec!important}.MuiDataGrid-selectedRowCount{color:#c72634!important}.MuiTablePagination-root{color:#2c3e50!important}.MuiTablePagination-actions button,.MuiTablePagination-selectIcon{color:#c72634!important}.MuiTablePagination-actions button:hover{background-color:#c7263414!important}.MuiTablePagination-actions button.Mui-disabled{color:#bdc3c7!important}.MuiDataGrid-toolbarContainer{background-color:#fafbfc!important;border-bottom:1px solid #e5e8ec!important;padding:16px!important}.MuiDataGrid-toolbarContainer .MuiButton-root{color:#c72634!important}.MuiDataGrid-toolbarContainer .MuiButton-root:hover{background-color:#c7263414!important}.MuiTableContainer-root{border-radius:12px!important;box-shadow:0 2px 8px #0000001a!important}.MuiTableHead-root{background:linear-gradient(135deg,#f8f9fa,#e9ecef)!important}.MuiTableHead-root .MuiTableCell-root{border-bottom:2px solid #dee2e6!important;color:#495057!important;font-size:.875rem!important;font-weight:600!important;letter-spacing:.5px!important;padding:16px 12px!important;text-transform:uppercase!important}.MuiTableRow-root:hover{background-color:#f8f9fa!important;transition:background-color .2s ease!important}.MuiTableRow-root:nth-of-type(2n){background-color:#fdfdfd!important}.MuiTableCell-root{border-bottom:1px solid #e9ecef!important;font-size:.875rem!important;line-height:1.5!important;padding:12px!important}.MuiChip-root{border-radius:6px!important;font-size:.75rem!important;font-weight:500!important}.MuiChip-colorSuccess{background-color:#d4edda!important;border:1px solid #c3e6cb!important;color:#155724!important}.MuiChip-colorWarning{background-color:#fff3cd!important;border:1px solid #ffeaa7!important;color:#856404!important}.MuiChip-colorError{background-color:#f8d7da!important;border:1px solid #f5c6cb!important;color:#721c24!important}.MuiChip-colorInfo{background-color:#d1ecf1!important;border:1px solid #bee5eb!important;color:#0c5460!important}.MuiChip-colorPrimary{background-color:#cce7ff!important;border:1px solid #99d6ff!important;color:#06c!important}.MuiIconButton-root{border-radius:6px!important;transition:all .2s ease!important}.MuiIconButton-root:hover{background-color:#00000014!important;transform:scale(1.05)!important}.device-name{color:#212529!important;font-weight:600!important;margin-bottom:4px!important}.device-id{color:#6c757d!important;font-size:.75rem!important}.device-id,.serial-number{font-family:Roboto Mono,monospace!important}.serial-number{background-color:#f8f9fa!important;border-radius:4px!important;color:#495057!important;font-size:.8125rem!important;padding:2px 6px!important}.consumption-value{color:#1976d2!important;font-size:.9375rem!important;font-weight:600!important}.timestamp{color:#6c757d!important;font-size:.8125rem!important}.gateway-ip,.location-text,.owner-text{color:#495057!important}.gateway-ip{background-color:#e9ecef!important;border-radius:4px!important;font-family:Roboto Mono,monospace!important;font-size:.8125rem!important;padding:2px 6px!important}.stat-card{border-radius:12px!important;box-shadow:0 2px 8px #0000001a!important;display:flex!important;flex-direction:column!important;height:100%!important;transition:all .3s ease!important}.stat-card:hover{box-shadow:0 8px 25px #00000026!important;transform:translateY(-4px)!important}.stat-card-content{display:flex!important;flex:1 1!important;flex-direction:column!important;justify-content:space-between!important;padding:24px!important}.stat-icon{align-items:center!important;background-color:#0000000d!important;border-radius:50%!important;display:flex!important;flex-shrink:0!important;justify-content:center!important;padding:12px!important}.loading-skeleton{animation:loading 1.5s infinite!important;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%)!important;background-size:200% 100%!important}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{color:#6c757d!important;padding:48px 24px!important;text-align:center!important}.empty-state-icon{color:#dee2e6!important;font-size:4rem!important;margin-bottom:16px!important}@media (max-width:768px){.MuiTableCell-root{font-size:.8125rem!important;padding:8px 6px!important}.MuiTableHead-root .MuiTableCell-root{font-size:.8125rem!important;padding:12px 6px!important}.device-name{font-size:.875rem!important}.gateway-ip,.serial-number{font-size:.75rem!important;padding:1px 4px!important}}.MuiTableRow-root:focus-within{outline:2px solid #1976d2!important;outline-offset:-2px!important}.MuiIconButton-root:focus{outline:2px solid #1976d2!important;outline-offset:2px!important}@media (prefers-contrast:high){.MuiTableHead-root{background:#000!important;color:#fff!important}.MuiTableCell-root{border-bottom:2px solid #000!important}.MuiChip-root{border-width:2px!important}}.MuiTableContainer-root{max-height:calc(100vh - 320px)!important;min-height:300px!important;overflow:auto!important}@media (max-width:768px){.MuiTableContainer-root{max-height:calc(100vh - 400px)!important;min-height:250px!important}}@media (max-width:480px){.MuiTableContainer-root{max-height:calc(100vh - 450px)!important;min-height:200px!important}}.MuiPaper-root{overflow:visible!important}.MuiCard-root .MuiTableContainer-root{border-radius:8px!important;overflow:auto!important}.list-container{max-height:calc(100vh - 320px)!important;min-height:300px!important;overflow-y:auto!important}@media (max-width:768px){.list-container{max-height:calc(100vh - 400px)!important;min-height:250px!important}}.MuiDialog-paper .MuiTableContainer-root{max-height:70vh!important;min-height:200px!important}.MuiDataGrid-root{max-height:calc(100vh - 320px)!important;min-height:300px!important;overflow:auto!important}@media (max-width:768px){.MuiDataGrid-root{max-height:calc(100vh - 400px)!important;min-height:250px!important}}.tab-content-container{max-height:calc(100vh - 320px)!important;min-height:400px!important;overflow:auto!important}@media (max-width:768px){.tab-content-container{max-height:calc(100vh - 400px)!important;min-height:300px!important}}.device-cards-container{max-height:calc(100vh - 320px)!important;min-height:400px!important;overflow-y:auto!important}@media (max-width:768px){.device-cards-container{max-height:calc(100vh - 400px)!important;min-height:300px!important}}.billing-table-container{max-height:calc(100vh - 350px)!important;min-height:400px!important;overflow:auto!important}@media (max-width:768px){.billing-table-container{max-height:calc(100vh - 450px)!important;min-height:300px!important}}.MuiTableCell-root{overflow:visible!important;text-overflow:ellipsis;white-space:nowrap}.MuiTableCell-root.wrap-content{word-wrap:break-word!important;overflow-wrap:break-word!important;white-space:normal!important}.wide-table-container{max-width:100%!important;overflow-x:auto!important;overflow-y:auto!important}.nested-scroll-container{max-height:inherit!important;overflow:auto!important}@media (max-width:480px){.MuiTableCell-root.hide-mobile{display:none!important}.MuiTableContainer-root{overflow-x:auto!important}}@media (max-width:768px) and (min-width:481px){.MuiTableCell-root.hide-tablet{display:none!important}}.MuiDialog-root .MuiDialog-paper.full-screen-dialog{height:95vh!important;max-height:95vh!important}.MuiDialog-root .MuiDialog-paper.full-screen-dialog .MuiTableContainer-root{max-height:calc(95vh - 200px)!important;min-height:300px!important}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{left:0;position:absolute;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.leaflet-tile::selection{background:#0000}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{height:1600px;-webkit-transform-origin:0 0;width:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-height:none!important;max-width:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-height:none!important;max-width:none!important;padding:0;width:auto}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{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{box-sizing:border-box;height:0;width:0;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{height:1px;width:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{pointer-events:visiblePainted;pointer-events:auto;position:relative;z-index:800}.leaflet-bottom,.leaflet-top{pointer-events:none;position:absolute;z-index:1000}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{clear:both;float:left}.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;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.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{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;color:#000;display:block;height:26px;line-height:26px;text-align:center;text-decoration:none;width:26px}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{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:none;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.leaflet-bar a.leaflet-disabled{background-color:#f4f4f4;color:#bbb;cursor:default}.leaflet-touch .leaflet-bar a{height:30px;line-height:30px;width: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{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(/static/media/layers.416d91365b44e4b4f477.png);height:36px;width:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(/static/media/layers-2x.8f2c4d11474275fbc161.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{height:44px;width: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{background:#fff;color:#333;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{overflow-x:hidden;overflow-y:scroll;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{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(/static/media/marker-icon.2b3e1faf89f94a483539.png)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;line-height:1.4;padding:0 5px}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;height:.6669em;vertical-align:initial!important;width:1em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{background:#fffc;border:2px solid #777;border-top:none;box-sizing:border-box;line-height:1.1;padding:2px 5px 1px;text-shadow:1px 1px #fff;white-space:nowrap}.leaflet-control-scale-line:not(:first-child){border-bottom:none;border-top:2px solid #777;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{margin-bottom:20px;position:absolute;text-align:center}.leaflet-popup-content-wrapper{border-radius:12px;padding:1px;text-align:left}.leaflet-popup-content{font-size:13px;font-size:1.08333em;line-height:1.3;margin:13px 24px 13px 20px;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{height:20px;left:50%;margin-left:-20px;margin-top:-1px;overflow:hidden;pointer-events:none;position:absolute;width:40px}.leaflet-popup-tip{height:17px;margin:-10px auto 0;padding:1px;pointer-events:auto;transform:rotate(45deg);width:17px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;box-shadow:0 3px 14px #0006;color:#333}.leaflet-container a.leaflet-popup-close-button{background:#0000;border:none;color:#757575;font:16px/24px Tahoma,Verdana,sans-serif;height:24px;position:absolute;right:0;text-align:center;text-decoration:none;top:0;width:24px}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678);margin:0 auto;width:24px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.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{background-color:#fff;border:1px solid #fff;border-radius:3px;box-shadow:0 1px 3px #0006;color:#222;padding:6px;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;white-space:nowrap}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{background:#0000;border:6px solid #0000;content:"";pointer-events:none;position:absolute}.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{border-top-color:#fff;bottom:0;margin-bottom:-12px}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-left:-6px;margin-top:-12px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;left:0;margin-left:-12px}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}