.card-title{
    margin-bottom: 20px;
}
.radio-list label{
    padding-right: 10px;
}
.card-block-input-item{
    margin-right: 5px;
}
.card-block-input-group input{
    min-height: 33px;
}

/**
 * jQuery toast plugin created by Kamran Ahmed copyright MIT license 2014
 */
.jq-toast-wrap { display: block; position: fixed; width: 250px;  pointer-events: none !important; margin: 0; padding: 0; letter-spacing: normal; z-index: 9000 !important; }
.jq-toast-wrap * { margin: 0; padding: 0; }

.jq-toast-wrap.bottom-left { bottom: 20px; left: 20px; }
.jq-toast-wrap.bottom-right { bottom: 20px; right: 40px; }
.jq-toast-wrap.top-left { top: 20px; left: 20px; }
.jq-toast-wrap.top-right { top: 20px; right: 40px; }

.jq-toast-single { display: block; box-shadow: 1px 0px 30px rgba(0, 0, 0, 0.1); width: 100%; padding: 15px; margin: 0px 0px 5px; font-size: 12px; font-family: arial, sans-serif; line-height: 17px; position: relative;  pointer-events: all !important; background-color: #fff; color: #2b2b2b; }

.jq-toast-single h2 { font-family: arial, sans-serif; font-size: 14px; margin: 0px 0px 7px; background: none; color: inherit; line-height: inherit; letter-spacing: normal; }
.jq-toast-single a { color: #eee; text-decoration: none; font-weight: bold; border-bottom: 1px solid white; padding-bottom: 3px; font-size: 12px; }

.jq-toast-single ul { margin: 0px 0px 0px 15px; background: none; padding:0px; }
.jq-toast-single ul li { list-style-type: disc !important; line-height: 17px; background: none; margin: 0; padding: 0; letter-spacing: normal; }

.close-jq-toast-single { position: absolute; top: 3px; right: 7px; font-size: 14px; cursor: pointer; }

.jq-toast-loader { display: block; position: absolute; bottom: -3px; height: 5px; width: 0%; left: 0; border-radius: 5px; background: red; }
.jq-toast-loaded { width: 100%; }
.jq-has-icon { padding: 10px 10px 10px 50px; background-repeat: no-repeat; background-position: 10px; }
.jq-icon-info { background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII='); background-color: #31708f; color: #000; border-color: #bce8f1; }
.jq-icon-warning { background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII='); background-color: #8a6d3b; color: #fcf8e3; border-color: #faebcc; }
.jq-icon-error { background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII='); background-color: #a94442; color: #f2dede; border-color: #ebccd1; }
.jq-icon-success { background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg=='); color: #dff0d8; background-color: #3c763d; border-color: #d6e9c6; }

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442;
}
.has-error .form-control {
  border-color: #f44336;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483;
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
  color: #a94442;
  background-color: #f2dede;
  border-color: #a94442;
}
.has-error .form-control-feedback {
  color: #a94442;
}


/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
#cboxWrapper {max-width:none;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}

/*
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:url(../images/overlay.png) repeat 0 0; opacity: 0.9; filter: alpha(opacity = 90);}
#colorbox{outline:0;}
    #cboxTopLeft{width:21px; height:21px; background:url(../images/controls.png) no-repeat -101px 0;}
    #cboxTopRight{width:21px; height:21px; background:url(../images/controls.png) no-repeat -130px 0;}
    #cboxBottomLeft{width:21px; height:21px; background:url(../images/controls.png) no-repeat -101px -29px;}
    #cboxBottomRight{width:21px; height:21px; background:url(../images/controls.png) no-repeat -130px -29px;}
    #cboxMiddleLeft{width:21px; background:url(../images/controls.png) left top repeat-y;}
    #cboxMiddleRight{width:21px; background:url(../images/controls.png) right top repeat-y;}
    #cboxTopCenter{height:21px; background:url(../images/border.png) 0 0 repeat-x;}
    #cboxBottomCenter{height:21px; background:url(../images/border.png) 0 -29px repeat-x;}
    #cboxContent{background:#fff; overflow:hidden;}
        .cboxIframe{background:#fff;}
        #cboxError{padding:50px; border:1px solid #ccc;}
        #cboxLoadedContent{margin-bottom:28px;}
        #cboxTitle{position:absolute; bottom:4px; left:0; text-align:center; width:100%; color:#949494;}
        #cboxCurrent{position:absolute; bottom:4px; left:58px; color:#949494;}
        #cboxLoadingOverlay{background:url(../images/loading_background.png) no-repeat center center;}
        #cboxLoadingGraphic{background:url(../images/loading.gif) no-repeat center center;}

        /* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
        #cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }

        /* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
        #cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}

        #cboxSlideshow{position:absolute; bottom:4px; right:30px; color:#0092ef;}
        #cboxPrevious{position:absolute; bottom:0; left:0; background:url(../images/controls.png) no-repeat -75px 0; width:25px; height:25px; text-indent:-9999px;}
        #cboxPrevious:hover{background-position:-75px -25px;}
        #cboxNext{position:absolute; bottom:0; left:27px; background:url(../images/controls.png) no-repeat -50px 0; width:25px; height:25px; text-indent:-9999px;}
        #cboxNext:hover{background-position:-50px -25px;}
        #cboxClose{position:absolute; bottom:0; right:0; background:url(../images/controls.png) no-repeat -25px 0; width:25px; height:25px; text-indent:-9999px;}
        #cboxClose:hover{background-position:-25px -25px;}

/*
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
  when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
  See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

/* do not group these rules */
*::-webkit-input-placeholder {
    color: #cecece !important;
}
*:-moz-placeholder {
    /* FF 4-18 */
    color: #cecece !important;
}
*::-moz-placeholder {
    /* FF 19+ */
    color: #cecece !important;
}
*:-ms-input-placeholder {
    /* IE 10+ */
    color: #cecece !important;
}

.logo-text-login{
    font-size: 30px !important;
}

.registerationForm .has-error input{
    border: 1px solid #ffa6a9;
}

.hidden {
  display: none !important;
  visibility: hidden !important;
}
.closeButt{
    color:white !important;
    cursor: pointer;
}
.ahref{
    cursor: pointer;
    color: blue !important;
}

.miniCal td{
    height: auto !important;
}

@media print
{
    .no-print, .no-print *
    {
        display: none !important;
    }
    .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
        float: left;
   }
   .col-sm-12 {
        width: 100%;
   }
   .col-sm-11 {
        width: 91.66666667%;
   }
   .col-sm-10 {
        width: 83.33333333%;
   }
   .col-sm-9 {
        width: 75%;
   }
   .col-sm-8 {
        width: 66.66666667%;
   }
   .col-sm-7 {
        width: 58.33333333%;
   }
   .col-sm-6 {
        width: 50%;
   }
   .col-sm-5 {
        width: 41.66666667%;
   }
   .col-sm-4 {
        width: 33.33333333%;
   }
   .col-sm-3 {
        width: 25%;
   }
   .col-sm-2 {
        width: 16.66666667%;
   }
   .col-sm-1 {
        width: 8.33333333%;
   }
}

/* SmartSys 2.0: sidebar active state theme-aware */
body {
  --ss-sidebar-text: #075e95;
  --ss-sidebar-text-muted: #3a82b0;
  --ss-sidebar-active: #009efb;
  --ss-sidebar-active-soft: rgba(0, 158, 251, 0.10);
  --ss-sidebar-active-tail: rgba(0, 158, 251, 0.03);
}

body.theme-default {
  --ss-sidebar-text: #536a85;
  --ss-sidebar-text-muted: #7b8ea6;
  --ss-sidebar-active: #7287a3;
  --ss-sidebar-active-soft: rgba(114, 135, 163, 0.11);
  --ss-sidebar-active-tail: rgba(114, 135, 163, 0.03);
}

body.theme-default-dark {
  --ss-sidebar-text: #c2d1e3;
  --ss-sidebar-text-muted: #d9e4f1;
  --ss-sidebar-active: #91a7c3;
  --ss-sidebar-active-soft: rgba(145, 167, 195, 0.12);
  --ss-sidebar-active-tail: rgba(255, 255, 255, 0.02);
}

body.theme-blue {
  --ss-sidebar-text: #075e95;
  --ss-sidebar-text-muted: #3a82b0;
  --ss-sidebar-active: #009efb;
  --ss-sidebar-active-soft: rgba(0, 158, 251, 0.10);
  --ss-sidebar-active-tail: rgba(0, 158, 251, 0.03);
}

body.theme-blue-dark {
  --ss-sidebar-text: #8fd6ff;
  --ss-sidebar-text-muted: #b7e8ff;
  --ss-sidebar-active: #009efb;
  --ss-sidebar-active-soft: rgba(0, 158, 251, 0.11);
  --ss-sidebar-active-tail: rgba(255, 255, 255, 0.02);
}

body.theme-green {
  --ss-sidebar-text: #247a33;
  --ss-sidebar-text-muted: #4b9c59;
  --ss-sidebar-active: #55ce63;
  --ss-sidebar-active-soft: rgba(85, 206, 99, 0.10);
  --ss-sidebar-active-tail: rgba(85, 206, 99, 0.03);
}

body.theme-green-dark {
  --ss-sidebar-text: #98e7a3;
  --ss-sidebar-text-muted: #bdefc3;
  --ss-sidebar-active: #55ce63;
  --ss-sidebar-active-soft: rgba(85, 206, 99, 0.11);
  --ss-sidebar-active-tail: rgba(255, 255, 255, 0.02);
}

body.theme-red {
  --ss-sidebar-text: #b1203f;
  --ss-sidebar-text-muted: #cc4d68;
  --ss-sidebar-active: #f62d51;
  --ss-sidebar-active-soft: rgba(246, 45, 81, 0.10);
  --ss-sidebar-active-tail: rgba(246, 45, 81, 0.03);
}

body.theme-red-dark {
  --ss-sidebar-text: #ff9cb0;
  --ss-sidebar-text-muted: #ffc0cc;
  --ss-sidebar-active: #f62d51;
  --ss-sidebar-active-soft: rgba(246, 45, 81, 0.11);
  --ss-sidebar-active-tail: rgba(255, 255, 255, 0.02);
}

body.theme-purple {
  --ss-sidebar-text: #4d3bc0;
  --ss-sidebar-text-muted: #7868d2;
  --ss-sidebar-active: #7460ee;
  --ss-sidebar-active-soft: rgba(116, 96, 238, 0.11);
  --ss-sidebar-active-tail: rgba(116, 96, 238, 0.03);
}

body.theme-purple-dark {
  --ss-sidebar-text: #c4b8ff;
  --ss-sidebar-text-muted: #ddd5ff;
  --ss-sidebar-active: #7460ee;
  --ss-sidebar-active-soft: rgba(116, 96, 238, 0.11);
  --ss-sidebar-active-tail: rgba(255, 255, 255, 0.02);
}

body.theme-megna {
  --ss-sidebar-text: #007a80;
  --ss-sidebar-text-muted: #2e9da2;
  --ss-sidebar-active: #01c0c8;
  --ss-sidebar-active-soft: rgba(1, 192, 200, 0.10);
  --ss-sidebar-active-tail: rgba(1, 192, 200, 0.03);
}

body.theme-megna-dark {
  --ss-sidebar-text: #7fe3e8;
  --ss-sidebar-text-muted: #a7f0f3;
  --ss-sidebar-active: #01c0c8;
  --ss-sidebar-active-soft: rgba(1, 192, 200, 0.11);
  --ss-sidebar-active-tail: rgba(255, 255, 255, 0.02);
}

.sidebar-nav #sidebarnav > li > a {
  color: var(--ss-sidebar-text) !important;
}

.sidebar-nav #sidebarnav > li > a i {
  color: var(--ss-sidebar-text-muted) !important;
}

.sidebar-nav #sidebarnav > li.active > a,
.sidebar-nav #sidebarnav > li > a.active {
  position: relative;
  background: linear-gradient(180deg, var(--ss-sidebar-active-soft) 0%, var(--ss-sidebar-active-tail) 100%);
  border: 1px solid var(--ss-sidebar-active-tail);
  border-left: 0 !important;
  border-radius: 12px;
  color: var(--ss-sidebar-text) !important;
  font-weight: 400 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.sidebar-nav #sidebarnav > li.active > a i,
.sidebar-nav #sidebarnav > li > a.active i {
  color: var(--ss-sidebar-active) !important;
}

.sidebar-nav #sidebarnav > li.active > a:before,
.sidebar-nav #sidebarnav > li > a.active:before {
  content: "";
  position: absolute;
  left: 10px;
  top: 12px;
  bottom: 12px;
  width: 3px;
  border-radius: 3px;
  background: var(--ss-sidebar-active);
  opacity: 0.95;
}

.sidebar-nav #sidebarnav > li.active > a .hide-menu,
.sidebar-nav #sidebarnav > li > a.active .hide-menu,
.sidebar-nav #sidebarnav > li > a .hide-menu {
  padding-left: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  max-width: calc(100% - 34px);
}


.theme-toggle-btn {
  border-radius: 18px;
  transition: all 0.2s ease;
}

.theme-toggle-btn i {
  width: 18px;
  text-align: center;
}

body.theme-dark .theme-toggle-btn {
  color: #f7f7f7 !important;
}

body.theme-light .theme-toggle-btn {
  color: #44576f !important;
}


/* SmartSys 2.0: global dark mode */
body.theme-dark {
  background: #0f1722 !important;
  color: #d6e0ef;
}

body.theme-dark #main-wrapper,
body.theme-dark .page-wrapper,
body.theme-dark .container-fluid,
body.theme-dark .content-wrapper,
body.theme-dark .content {
  background: #0f1722 !important;
}


body.theme-dark .left-sidebar,
body.theme-dark .scroll-sidebar,
body.theme-dark .sidebar-nav,
body.theme-dark .user-profile {
  background: #0f1722 !important;
  border-color: #24344b !important;
}

body.theme-dark .left-sidebar {
  box-shadow: none !important;
}

body.theme-dark .user-profile {
  border-bottom: 1px solid #24344b !important;
}

body.theme-dark .topbar,
body.theme-dark .top-navbar,
body.theme-dark .navbar-header {
  background: #121c2a !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.35);
}

body.theme-dark .topbar .navbar-brand .dark-logo,
body.theme-dark .topbar .navbar-brand .light-logo,
body.theme-dark .topbar .h1,
body.theme-dark .topbar .nav-link,
body.theme-dark .topbar .text-muted {
  color: #dbe7fb !important;
}

body.theme-dark .card,
body.theme-dark .white-box,
body.theme-dark .panel,
body.theme-dark .modal-content,
body.theme-dark .dropdown-menu,
body.theme-dark .right-sidebar,
body.theme-dark .r-panel-body,
body.theme-dark .rpanel-title {
  background: #182437 !important;
  color: #d6e0ef !important;
  border-color: #24344b !important;
}

body.theme-dark .card-title,
body.theme-dark .card-subtitle,
body.theme-dark .modal-title,
body.theme-dark h1,
body.theme-dark h2,
body.theme-dark h3,
body.theme-dark h4,
body.theme-dark h5,
body.theme-dark h6,
body.theme-dark p,
body.theme-dark label,
body.theme-dark span,
body.theme-dark small,
body.theme-dark .text-dark,
body.theme-dark .text-body {
  color: #d6e0ef !important;
}

body.theme-dark .table,
body.theme-dark .table td,
body.theme-dark .table th,
body.theme-dark .table-striped tbody tr:nth-of-type(odd),
body.theme-dark .table-hover tbody tr:hover {
  background-color: transparent !important;
  color: #d6e0ef !important;
  border-color: #2a3b54 !important;
}

body.theme-dark .table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.03) !important;
}

body.theme-dark .table-hover tbody tr:hover {
  background-color: rgba(255, 255, 255, 0.06) !important;
}

body.theme-dark .form-control,
body.theme-dark .custom-select,
body.theme-dark .select2-selection,
body.theme-dark input,
body.theme-dark textarea,
body.theme-dark select {
  background: #101a29 !important;
  color: #dbe7fb !important;
  border-color: #2a3b54 !important;
}

body.theme-dark .form-control:focus,
body.theme-dark .custom-select:focus,
body.theme-dark input:focus,
body.theme-dark textarea:focus,
body.theme-dark select:focus {
  border-color: #3b82f6 !important;
  box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.25) !important;
}

body.theme-dark .input-group-addon,
body.theme-dark .input-group-text,
body.theme-dark .dropdown-item,
body.theme-dark .list-group-item,
body.theme-dark .pagination li a,
body.theme-dark .breadcrumb,
body.theme-dark .nav-tabs .nav-link {
  background: #101a29 !important;
  color: #d6e0ef !important;
  border-color: #2a3b54 !important;
}

body.theme-dark .dropdown-item:hover,
body.theme-dark .dropdown-item:focus,
body.theme-dark .list-group-item:hover,
body.theme-dark .nav-tabs .nav-link.active {
  background: #1f2d43 !important;
  color: #ffffff !important;
}

body.theme-dark .footer {
  background: #121c2a !important;
  color: #c7d4e8 !important;
  border-top: 1px solid #24344b;
}

body.theme-dark .preloader {
  background: #0f1722 !important;
}

body.theme-dark .text-muted {
  color: #9db0c9 !important;
}

body.theme-dark .border,
body.theme-dark .border-top,
body.theme-dark .border-bottom,
body.theme-dark .border-left,
body.theme-dark .border-right,
body.theme-dark hr {
  border-color: #2a3b54 !important;
}

body.theme-dark .well,
body.theme-dark .jumbotron,
body.theme-dark .alert,
body.theme-dark .bg-white {
  background: #182437 !important;
  color: #d6e0ef !important;
  border-color: #2a3b54 !important;
}


body.theme-dark .left-sidebar {
  border-right: 1px solid #24344b !important;
  box-shadow: 10px 0 24px rgba(0, 0, 0, 0.20) !important;
}

body.theme-dark .page-wrapper {
  border-left: 1px solid rgba(255, 255, 255, 0.03);
}


/* Static nav colors (independent from selected theme) */
body.theme-light .topbar,
body.theme-light .top-navbar,
body.theme-light .navbar-header {
  background: #ffffff !important;
  border-bottom: 1px solid #d3deec !important;
  box-shadow: 0 3px 14px rgba(17, 34, 68, 0.12) !important;
}

body.theme-light .navbar-header {
  border-right: 1px solid #d3deec !important;
  box-shadow: 6px 0 14px rgba(16, 38, 70, 0.09), 0 3px 14px rgba(17, 34, 68, 0.12) !important;
}

body.theme-light .topbar .navbar-brand .dark-logo,
body.theme-light .topbar .navbar-brand .light-logo,
body.theme-light .topbar .h1,
body.theme-light .topbar .nav-link,
body.theme-light .topbar .text-muted,
body.theme-light .topbar .text-white,
body.theme-light .topbar i {
  color: #2a3b54 !important;
}

body.theme-dark .topbar,
body.theme-dark .top-navbar,
body.theme-dark .navbar-header {
  background: #121c2a !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.35) !important;
}

body.theme-dark .topbar .navbar-brand .dark-logo,
body.theme-dark .topbar .navbar-brand .light-logo,
body.theme-dark .topbar .h1,
body.theme-dark .topbar .nav-link,
body.theme-dark .topbar .text-muted,
body.theme-dark .topbar i {
  color: #dbe7fb !important;
}


/* Brand logo in left header */
.brand-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
}

.company-brand-link {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.topbar .navbar-header {
  overflow: hidden;
}

.topbar .navbar-header .navbar-brand.company-brand-link {
  display: flex;
  align-items: center;
  width: 100%;
  min-width: 0;
  padding: 0 14px;
}

.brand-wrap-company {
  justify-content: flex-start;
  gap: 12px;
  width: 100%;
  min-width: 0;
  min-height: 40px;
  max-width: 100%;
  overflow: hidden;
}

.company-brand-logo-shell {
  flex: 0 0 40px !important;
  width: 40px !important;
  min-width: 40px;
  max-width: 40px;
  height: 40px !important;
  min-height: 40px;
  max-height: 40px;
  border-radius: 12px;
  background-color: rgba(112, 134, 164, 0.10);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: 1px solid rgba(112, 134, 164, 0.18);
  display: block;
  overflow: hidden;
}

.company-brand-copy {
  min-width: 0;
  flex: 1 1 auto;
}

.company-brand-name {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.brand-logo {
  height: 24px;
  width: auto;
  max-width: 130px;
}

.brand-logo-light {
  filter: none;
  opacity: 0.95;
}

.brand-logo-dark {
  opacity: 0.95;
}

body.theme-light .company-brand-name {
  color: #314766;
}

body.theme-dark .company-brand-name {
  color: #e2ebf8;
}

body.theme-dark .company-brand-logo-shell {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(144, 167, 195, 0.18);
}


.topbar-center-brand {
  min-width: 0;
  flex: 0 1 560px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 18px;
}

.topbar-center-brand-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  max-width: 100%;
}

.topbar-center-brand-logo {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.topbar-center-brand-logo-wide {
  flex: 0 0 200px;
  width: 200px;
  height: 60px;
}

.topbar-center-brand-name {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.1;
}

body.theme-light .topbar-center-brand-name {
  color: #314766;
}

body.theme-dark .topbar-center-brand-name {
  color: #e2ebf8;
}

@media (max-width: 991px) {
  .topbar-center-brand {
    flex-basis: 420px;
    padding: 0 12px;
  }

  .topbar-center-brand-logo-wide {
    width: 170px;
    height: 52px;
    flex-basis: 170px;
  }

  .topbar-center-brand-name {
    font-size: 1rem;
  }
}

@media (max-width: 767px) {
  .topbar-center-brand {
    flex-basis: auto;
    padding: 0 8px;
  }

  .topbar-center-brand-logo-wide {
    width: 120px;
    height: 40px;
    flex-basis: 120px;
  }

  .topbar-center-brand-name {
    font-size: 0.92rem;
  }
}

@media (max-width: 767px) {
  .brand-wrap-company {
    gap: 8px;
  }

  .company-brand-logo-shell {
    width: 34px !important;
    min-width: 34px;
    max-width: 34px;
    height: 34px !important;
    min-height: 34px;
    max-height: 34px;
    border-radius: 10px;
  }

  .company-brand-name {
    font-size: 0.82rem;
  }
}


/* Floating config button */
.fab-theme-config {
  position: fixed;
  right: 24px;
  bottom: 76px;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 0;
  z-index: 1040;
  cursor: pointer;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22);
  background: #2f4f7f;
  color: #ffffff;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.fab-theme-config:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.28);
}

.fab-theme-config i {
  font-size: 22px;
  line-height: 1;
}

.mode-toggle-box {
  padding: 12px;
  border-radius: 12px;
  background: rgba(60, 90, 132, 0.09);
  border: 1px solid rgba(60, 90, 132, 0.20);
}

.mode-toggle-title {
  font-size: 0.82rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  margin-bottom: 10px;
  opacity: 0.85;
}

.mode-switch {
  width: 100%;
  border: 0;
  border-radius: 10px;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(255, 255, 255, 0.08);
  color: inherit;
  cursor: pointer;
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

.mode-switch:hover {
  background: rgba(255, 255, 255, 0.14);
}

.mode-switch-track {
  position: relative;
  width: 46px;
  height: 24px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.25);
  border: 1px solid rgba(255, 255, 255, 0.25);
}

.mode-switch-thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
  transition: transform 0.2s ease;
}

.mode-switch.is-dark .mode-switch-thumb {
  transform: translateX(22px);
}

.mode-switch-text {
  font-weight: 600;
  min-width: 48px;
  text-align: right;
}

body.theme-light .mode-switch {
  background: rgba(42, 59, 84, 0.08);
  color: #2a3b54;
}

body.theme-light .mode-switch:hover {
  background: rgba(42, 59, 84, 0.14);
}

body.theme-light .mode-switch-track {
  background: rgba(42, 59, 84, 0.20);
  border-color: rgba(42, 59, 84, 0.22);
}

body.theme-dark .mode-switch {
  background: rgba(255, 255, 255, 0.08);
  color: #dbe7fb;
}

body.theme-dark .mode-switch:hover {
  background: rgba(255, 255, 255, 0.14);
}

body.theme-dark .fab-theme-config {
  background: #1f385d;
  color: #dbe7fb;
}

body.theme-light .fab-theme-config {
  background: #3f5f8e;
  color: #ffffff;
}


.theme-color-panel {
  padding: 10px;
  border-radius: 12px;
  background: rgba(60, 90, 132, 0.09);
  border: 1px solid rgba(60, 90, 132, 0.20);
}

.theme-color-title {
  font-size: 0.82rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  margin-bottom: 10px;
  opacity: 0.85;
}

.theme-palette-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.theme-swatch {
  border: 0;
  height: 36px;
  border-radius: 10px;
  cursor: pointer;
  position: relative;
  transition: transform 0.15s ease, box-shadow 0.2s ease;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
}

.theme-swatch:hover {
  transform: translateY(-1px);
}

.theme-swatch.active {
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.9), 0 5px 12px rgba(0, 0, 0, 0.22);
}

.theme-swatch.active:after {
  content: "\2713";
  position: absolute;
  right: 9px;
  top: 50%;
  transform: translateY(-50%);
  color: #ffffff;
  font-size: 15px;
  font-weight: 700;
}

.swatch-default { background: #90a4ae; }
.swatch-green { background: #3f7f3f; }
.swatch-red { background: #f62d51; }
.swatch-blue { background: #1f97e0; }
.swatch-purple { background: #6f5ed7; }
.swatch-megna { background: #1cb5bd; }


/* Sidebar icon/text alignment */
.sidebar-nav #sidebarnav > li > a,
.sidebar-nav #sidebarnav > li > a.active,
.sidebar-nav #sidebarnav > li.active > a {
  display: flex !important;
  align-items: center !important;
  gap: 10px;
}

.sidebar-nav #sidebarnav > li > a i {
  width: 18px;
  min-width: 18px;
  text-align: center;
  line-height: 1;
  font-size: 16px;
}

.sidebar-nav #sidebarnav > li > a .hide-menu {
  line-height: 1.2;
  margin: 0;
  padding: 0;
  vertical-align: middle;
}


/* Preserve alert severity colors in dark mode */
body.theme-dark .table td.text-danger,
body.theme-dark .table td.text-danger strong,
body.theme-dark td.text-danger,
body.theme-dark td.text-danger strong,
body.theme-dark .text-danger {
  color: #ff4f73 !important;
}

body.theme-dark .table td.text-warning,
body.theme-dark .table td.text-warning strong,
body.theme-dark td.text-warning,
body.theme-dark td.text-warning strong,
body.theme-dark .text-warning {
  color: #ffbe3d !important;
}

body.theme-dark .table td.text-success,
body.theme-dark .table td.text-success strong,
body.theme-dark td.text-success,
body.theme-dark td.text-success strong,
body.theme-dark .text-success {
  color: #58d77a !important;
}

body.theme-dark .table td.text-info,
body.theme-dark .table td.text-info strong,
body.theme-dark td.text-info,
body.theme-dark td.text-info strong,
body.theme-dark .text-info {
  color: #40b6ff !important;
}


/* Subtle themed section headers (e.g. "SOLUCIONES DE MONITOREO IOT") */
body {
  --ss-accent-rgb: 0, 158, 251;
}

body.theme-default,
body.theme-default-dark {
  --ss-accent-rgb: 114, 135, 163;
}

body.theme-blue,
body.theme-blue-dark {
  --ss-accent-rgb: 0, 158, 251;
}

body.theme-green,
body.theme-green-dark {
  --ss-accent-rgb: 85, 206, 99;
}

body.theme-red,
body.theme-red-dark {
  --ss-accent-rgb: 246, 45, 81;
}

body.theme-purple,
body.theme-purple-dark {
  --ss-accent-rgb: 116, 96, 238;
}

body.theme-megna,
body.theme-megna-dark {
  --ss-accent-rgb: 1, 192, 200;
}

/* Keep it tasteful: low-opacity tint, not full color bars */
.view.view-cascade.gradient-card-header.mdb-color,
.view.view-cascade.gradient-card-header.blue-gradient {
  border-radius: 8px;
}

body.theme-light .view.view-cascade.gradient-card-header.mdb-color,
body.theme-light .view.view-cascade.gradient-card-header.blue-gradient {
  background: linear-gradient(90deg,
    rgba(var(--ss-accent-rgb), 0.15) 0%,
    rgba(73, 90, 120, 0.12) 100%) !important;
  border: 1px solid rgba(var(--ss-accent-rgb), 0.16);
  box-shadow: 0 4px 10px rgba(16, 38, 70, 0.08);
}

body.theme-dark .view.view-cascade.gradient-card-header.mdb-color,
body.theme-dark .view.view-cascade.gradient-card-header.blue-gradient {
  background: linear-gradient(90deg,
    rgba(var(--ss-accent-rgb), 0.16) 0%,
    rgba(255, 255, 255, 0.05) 100%) !important;
  border: 1px solid rgba(var(--ss-accent-rgb), 0.20);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.20);
}

body.theme-light .view.view-cascade.gradient-card-header.mdb-color .white-text,
body.theme-light .view.view-cascade.gradient-card-header.blue-gradient .white-text {
  color: #35506f !important;
  text-shadow: none !important;
}

body.theme-dark .view.view-cascade.gradient-card-header.mdb-color .white-text,
body.theme-dark .view.view-cascade.gradient-card-header.blue-gradient .white-text {
  color: #f3f7ff !important;
}


/* Toast border-line style */
.jq-toast-single {
  background: #ffffff !important;
  color: #2a3b54 !important;
  border: 1px solid #d8e2ef !important;
  border-left: 4px solid #7f93ad !important;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(16, 38, 70, 0.14) !important;
  padding: 12px 14px !important;
}

body.theme-dark .jq-toast-single {
  background: #17253a !important;
  color: #dbe7fb !important;
  border: 1px solid #2a3b54 !important;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.30) !important;
}

.jq-icon-info,
.jq-icon-success,
.jq-icon-warning,
.jq-icon-error {
  background-image: none !important;
  padding-left: 14px !important;
}

.jq-icon-info {
  border-left-color: #1f97e0 !important;
  color: #1f97e0 !important;
  background-color: transparent !important;
}

.jq-icon-success {
  border-left-color: #34b56a !important;
  color: #34b56a !important;
  background-color: transparent !important;
}

.jq-icon-warning {
  border-left-color: #e3a320 !important;
  color: #e3a320 !important;
  background-color: transparent !important;
}

.jq-icon-error {
  border-left-color: #e54862 !important;
  color: #e54862 !important;
  background-color: transparent !important;
}

body.theme-dark .jq-icon-info { color: #8fd6ff !important; border-left-color: #3ab2ff !important; }
body.theme-dark .jq-icon-success { color: #9be7b0 !important; border-left-color: #58d77a !important; }
body.theme-dark .jq-icon-warning { color: #ffd27a !important; border-left-color: #ffbe3d !important; }
body.theme-dark .jq-icon-error { color: #ff9bb0 !important; border-left-color: #ff4f73 !important; }



body.theme-light .jq-toast-single.jq-icon-info,
body.theme-light .jq-toast-single.jq-icon-success,
body.theme-light .jq-toast-single.jq-icon-warning,
body.theme-light .jq-toast-single.jq-icon-error {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

body.theme-light .jq-toast-single.jq-icon-info h2,
body.theme-light .jq-toast-single.jq-icon-info,
body.theme-light .jq-toast-single.jq-icon-info div,
body.theme-light .jq-toast-single.jq-icon-info span {
  color: #1f97e0 !important;
}

body.theme-light .jq-toast-single.jq-icon-success h2,
body.theme-light .jq-toast-single.jq-icon-success,
body.theme-light .jq-toast-single.jq-icon-success div,
body.theme-light .jq-toast-single.jq-icon-success span {
  color: #34b56a !important;
}

body.theme-light .jq-toast-single.jq-icon-warning h2,
body.theme-light .jq-toast-single.jq-icon-warning,
body.theme-light .jq-toast-single.jq-icon-warning div,
body.theme-light .jq-toast-single.jq-icon-warning span {
  color: #d79216 !important;
}

body.theme-light .jq-toast-single.jq-icon-error h2,
body.theme-light .jq-toast-single.jq-icon-error,
body.theme-light .jq-toast-single.jq-icon-error div,
body.theme-light .jq-toast-single.jq-icon-error span {
  color: #d9415b !important;
}

.dashboard-zone-icon {
  width: 11.5em;
  height: 11.5em;
  object-fit: contain;
}



/* Header action buttons */
.ss-header-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border-radius: 12px !important;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  transition: transform 0.15s ease, box-shadow 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.ss-header-btn:hover {
  transform: translateY(-1px);
}

.ss-header-btn-back {
  padding: 0.58rem 1.1rem !important;
  background: linear-gradient(135deg, #ff5a6b 0%, #ff2d51 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(190, 25, 59, 0.22) !important;
  box-shadow: 0 8px 18px rgba(255, 45, 81, 0.24) !important;
}

.ss-header-btn-back:hover,
.ss-header-btn-back:focus {
  color: #ffffff !important;
  box-shadow: 0 10px 22px rgba(255, 45, 81, 0.28) !important;
}

.ss-header-btn-add {
  width: 42px;
  min-width: 42px;
  height: 42px;
  padding: 0 !important;
  border: 1px solid rgba(60, 103, 160, 0.18) !important;
  box-shadow: 0 8px 18px rgba(44, 67, 103, 0.18) !important;
}

.ss-header-btn-add i {
  font-size: 16px;
  line-height: 1;
}

body.theme-light .ss-header-btn-add {
  background: linear-gradient(135deg, #ffffff 0%, #eef4fb 100%) !important;
  color: #31527a !important;
}

body.theme-light .ss-header-btn-add:hover,
body.theme-light .ss-header-btn-add:focus {
  background: linear-gradient(135deg, #ffffff 0%, #e7f0fb 100%) !important;
  color: #1e3d63 !important;
}

body.theme-dark .ss-header-btn-add {
  background: linear-gradient(135deg, #2a3b54 0%, #1b2940 100%) !important;
  color: #f5f9ff !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

body.theme-dark .ss-header-btn-add:hover,
body.theme-dark .ss-header-btn-add:focus {
  background: linear-gradient(135deg, #334866 0%, #22324d 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.28) !important;
}

/* Zone cards */
.zone-alert-trigger-wrap {
  position: absolute;
  top: 12px;
  right: 14px;
  z-index: 3;
}

.zone-alert-trigger {
  width: 38px;
  min-width: 38px;
  height: 38px;
  padding: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(59, 86, 122, 0.16) !important;
  box-shadow: 0 8px 18px rgba(24, 46, 79, 0.18) !important;
  transition: transform 0.15s ease, box-shadow 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.zone-alert-trigger:hover,
.zone-alert-trigger:focus {
  transform: translateY(-1px);
}

.zone-alert-trigger i {
  font-size: 15px;
  line-height: 1;
}

body.theme-light .zone-alert-trigger {
  background: linear-gradient(135deg, #ffffff 0%, #edf4fc 100%) !important;
}

body.theme-dark .zone-alert-trigger {
  background: linear-gradient(135deg, #273953 0%, #18263c 100%) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

body.theme-light .zone-alert-trigger .fa-red,
body.theme-dark .zone-alert-trigger .fa-red {
  color: #ff4f73 !important;
}

body.theme-light .zone-alert-trigger .fa-yellow,
body.theme-dark .zone-alert-trigger .fa-yellow {
  color: #ffbe3d !important;
}

body.theme-light .zone-alert-trigger .fa-green,
body.theme-dark .zone-alert-trigger .fa-green {
  color: #40c772 !important;
}

.zone-card-actions {
  display: flex !important;
  width: calc(100% - 28px);
  margin: 0 14px 14px;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 12px 28px rgba(18, 38, 66, 0.18);
}

.zone-action-btn {
  flex: 1 1 50%;
  min-height: 44px;
  border: 0 !important;
  border-radius: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: 700;
  letter-spacing: 0.03em;
  transition: filter 0.2s ease, transform 0.15s ease;
}

.zone-action-btn:hover,
.zone-action-btn:focus {
  transform: translateY(-1px);
  filter: brightness(1.03);
}

.zone-action-btn i {
  font-size: 14px;
}

.zone-action-btn-edit {
  background: linear-gradient(135deg, #18c85b 0%, #0fbf64 100%) !important;
  color: #ffffff !important;
}

.zone-action-btn-delete {
  background: linear-gradient(135deg, #ff5b66 0%, #ff3650 100%) !important;
  color: #ffffff !important;
}

body.theme-dark .zone-card-actions {
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.28);
}

.tooltip .tooltip-inner {
  max-width: 240px;
  padding: 10px 12px;
  border-radius: 12px;
  font-size: 0.84rem;
  line-height: 1.45;
  text-align: left;
  box-shadow: 0 12px 28px rgba(18, 38, 66, 0.18);
}

body.theme-light .tooltip .tooltip-inner {
  background: #ffffff;
  color: #314762;
  border: 1px solid #dbe6f2;
}

body.theme-light .tooltip.top .tooltip-arrow,
body.theme-light .tooltip.bs-tooltip-top .arrow:before,
body.theme-light .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow:before {
  border-top-color: #ffffff !important;
}

body.theme-dark .tooltip .tooltip-inner {
  background: #17253a;
  color: #e5eefc;
  border: 1px solid #2b3d59;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.30);
}

body.theme-dark .tooltip.top .tooltip-arrow,
body.theme-dark .tooltip.bs-tooltip-top .arrow:before,
body.theme-dark .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow:before {
  border-top-color: #17253a !important;
}

.tooltip .border {
  border-color: rgba(110, 132, 164, 0.32) !important;
}

.jq-toast-single {
  width: 290px;
  border-radius: 14px;
  padding: 14px 16px 16px !important;
  line-height: 1.45;
}

.jq-toast-single h2 {
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 6px;
}

.close-jq-toast-single {
  top: 8px;
  right: 10px;
  font-size: 16px;
  opacity: 0.68;
  transition: opacity 0.2s ease;
}

.close-jq-toast-single:hover {
  opacity: 1;
}

.jq-toast-loader {
  left: 12px;
  right: 12px;
  bottom: 8px;
  width: auto;
  height: 4px;
  border-radius: 999px;
  opacity: 0.95;
}

body.theme-light .jq-toast-single {
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(8px);
}

body.theme-dark .jq-toast-single {
  background: rgba(23, 37, 58, 0.96) !important;
  backdrop-filter: blur(10px);
}

/* Dashboard solution badges */
.dashboard-solution-card {
  position: relative;
}

.dashboard-solution-badge {
  position: absolute;
  top: -10px;
  right: 14px;
  z-index: 3;
  min-width: 34px;
  height: 34px;
  padding: 0 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.01em;
  box-shadow: 0 10px 24px rgba(19, 37, 65, 0.22);
  border: 2px solid rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(8px);
}

body.theme-light .dashboard-solution-badge {
  background: linear-gradient(135deg, #ff6f7d 0%, #ff415e 100%);
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.96);
}

body.theme-dark .dashboard-solution-badge {
  background: linear-gradient(135deg, #ff6574 0%, #ff3d5b 100%);
  color: #ffffff;
  border-color: rgba(24, 37, 58, 0.96);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.34);
}

.dashboard-solution-badge:empty {
  display: none;
}

body.theme-dark .jq-toast-single.jq-icon-info,
body.theme-dark .jq-toast-single.jq-icon-info h2,
body.theme-dark .jq-toast-single.jq-icon-info div,
body.theme-dark .jq-toast-single.jq-icon-info span {
  color: #8fd6ff !important;
}

body.theme-dark .jq-toast-single.jq-icon-success,
body.theme-dark .jq-toast-single.jq-icon-success h2,
body.theme-dark .jq-toast-single.jq-icon-success div,
body.theme-dark .jq-toast-single.jq-icon-success span {
  color: #9be7b0 !important;
}

body.theme-dark .jq-toast-single.jq-icon-warning,
body.theme-dark .jq-toast-single.jq-icon-warning h2,
body.theme-dark .jq-toast-single.jq-icon-warning div,
body.theme-dark .jq-toast-single.jq-icon-warning span {
  color: #ffd27a !important;
}

body.theme-dark .jq-toast-single.jq-icon-error,
body.theme-dark .jq-toast-single.jq-icon-error h2,
body.theme-dark .jq-toast-single.jq-icon-error div,
body.theme-dark .jq-toast-single.jq-icon-error span {
  color: #ff9bb0 !important;
}

body.theme-dark .jq-toast-single.jq-icon-success {
  border-left-color: #58d77a !important;
}

body.theme-dark .jq-toast-single.jq-icon-error {
  border-left-color: #ff4f73 !important;
}

body.theme-dark .jq-toast-single.jq-icon-warning {
  border-left-color: #ffbe3d !important;
}

body.theme-dark .jq-toast-single.jq-icon-info {
  border-left-color: #3ab2ff !important;
}




.zone-tooltip-list {
  min-width: 210px;
}

.zone-tooltip-item {
  display: grid;
  grid-template-columns: 10px 1fr auto;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
}

.zone-tooltip-item + .zone-tooltip-item {
  border-top: 1px solid rgba(110, 132, 164, 0.22);
}

.zone-tooltip-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  display: inline-block;
}

.zone-tooltip-label {
  font-weight: 600;
}

.zone-tooltip-value {
  font-weight: 700;
}

.zone-tooltip-low .zone-tooltip-dot,
.zone-tooltip-low .zone-tooltip-value {
  color: #40c772;
  background: #40c772;
}

.zone-tooltip-medium .zone-tooltip-dot,
.zone-tooltip-medium .zone-tooltip-value {
  color: #ffbe3d;
  background: #ffbe3d;
}

.zone-tooltip-high .zone-tooltip-dot,
.zone-tooltip-high .zone-tooltip-value {
  color: #ff4f73;
  background: #ff4f73;
}

.zone-tooltip-low .zone-tooltip-value,
.zone-tooltip-medium .zone-tooltip-value,
.zone-tooltip-high .zone-tooltip-value {
  background: transparent;
}

.zone-alert-trigger,
.zone-alert-trigger i {
  cursor: pointer !important;
}

.tooltip {
  pointer-events: none !important;
  user-select: none;
}

.tooltip .tooltip-inner,
.zone-tooltip-list,
.zone-tooltip-item,
.zone-tooltip-label,
.zone-tooltip-value {
  cursor: default !important;
  user-select: none;
}

/* Section header */
.ss-section-header {
  position: relative;
  padding: 18px 22px 16px;
  border-radius: 16px;
  background: transparent;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.ss-section-header:after {
  content: '';
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 0;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(var(--ss-accent-rgb), 0.42) 0%, rgba(var(--ss-accent-rgb), 0.08) 100%);
}

.ss-section-header-copy {
  min-width: 0;
}

.ss-section-title {
  margin: 0;
  font-size: 2.45rem;
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: 0.01em;
}

.ss-section-subtitle {
  margin-top: 6px;
  font-size: 0.92rem;
  opacity: 0.78;
}

.ss-section-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 12px;
  margin-left: 20px;
}

.ss-section-actions .ss-section-actions {
  margin-left: 0;
}

body.theme-light .ss-section-header {
  border-bottom-color: rgba(51, 79, 112, 0.12);
}

body.theme-light .ss-section-title {
  color: #243a57;
}

body.theme-light .ss-section-subtitle {
  color: #587190;
}

body.theme-dark .ss-section-title {
  color: #edf4ff;
}

body.theme-dark .ss-section-subtitle {
  color: #92a7c2;
}

.ss-section-search {
  width: 280px !important;
  min-width: 280px;
  max-width: 280px;
  flex: 0 0 280px;
  height: 42px;
  border-radius: 12px;
  padding: 0 14px;
  box-shadow: none !important;
}

body.theme-light .ss-section-search {
  background: #f7fbff;
  border: 1px solid #d6e2ef;
  color: #243a57;
}

body.theme-light .ss-section-search:focus {
  border-color: rgba(var(--ss-accent-rgb), 0.35);
  box-shadow: 0 0 0 3px rgba(var(--ss-accent-rgb), 0.10) !important;
}

body.theme-dark .ss-section-search {
  background: #1a2840;
  border: 1px solid #30415d;
  color: #edf4ff;
}

body.theme-dark .ss-section-search:focus {
  border-color: rgba(var(--ss-accent-rgb), 0.40);
  box-shadow: 0 0 0 3px rgba(var(--ss-accent-rgb), 0.12) !important;
}

body.theme-dark .ss-section-search::placeholder {
  color: #88a0bc;
}

@media (max-width: 767px) {
  .ss-section-search {
    width: 100% !important;
    min-width: 100%;
    max-width: 100%;
    flex: 1 0 100%;
  }

  .ss-section-actions {
    width: 100%;
    margin-left: 0;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}



/* Active alerts panel */
.ss-alerts-panel {
  border-radius: 18px;
}

.ss-alerts-panel-body {
  padding: 20px 20px 18px;
}

.ss-alerts-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

.ss-alerts-panel-title {
  font-size: 1.25rem;
  font-weight: 800;
}

.ss-alerts-panel-subtitle {
  margin-top: 4px;
  font-size: 0.88rem;
  opacity: 0.72;
}

.ss-alerts-panel-count {
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  box-shadow: inset 0 0 0 1px rgba(var(--ss-accent-rgb), 0.18);
}

.ss-alerts-list {
  display: grid;
  gap: 12px;
}

.ss-alert-item {
  border-radius: 14px;
  padding: 14px 14px 12px;
  border: 1px solid rgba(122, 142, 172, 0.16);
  box-shadow: 0 8px 20px rgba(20, 40, 69, 0.08);
}

.ss-alert-item-top {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 10px;
  padding-right: 34px;
}

.ss-alert-badge {
  min-width: 58px;
  height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.73rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.ss-alert-sensor {
  min-width: 0;
  flex: 1 1 auto;
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none !important;
  word-break: break-word;
}

.ss-alert-meta {
  display: grid;
  gap: 6px;
  margin-bottom: 8px;
  font-size: 0.9rem;
}

.ss-alert-reading-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-top: 10px;
  border-top: 1px solid rgba(122, 142, 172, 0.16);
}

.ss-alert-reading-label {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  opacity: 0.68;
}

.ss-alert-reading-action {
  border: 0;
  background: transparent;
  padding: 0;
  line-height: 1;
}

.ss-alert-reading-action strong {
  font-size: 1.02rem;
}

.ss-alert-reading-action:hover strong {
  text-decoration: underline;
}

.ss-alerts-empty {
  min-height: 180px;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 18px;
  border: 1px dashed rgba(122, 142, 172, 0.28);
}

.ss-alerts-empty-title {
  font-weight: 800;
  margin-bottom: 6px;
}

.ss-alerts-empty-copy {
  max-width: 220px;
  font-size: 0.9rem;
  opacity: 0.72;
}

.ss-alert-badge.is-low {
  background: rgba(64, 199, 114, 0.12);
  color: #1fa756;
}

.ss-alert-badge.is-medium {
  background: rgba(255, 190, 61, 0.14);
  color: #c98910;
}

.ss-alert-badge.is-high {
  background: rgba(255, 79, 115, 0.14);
  color: #d93a5d;
}

body.theme-light .ss-alerts-panel-title,
body.theme-light .ss-alert-sensor {
  color: #243a57;
}

body.theme-light .ss-alerts-panel-subtitle,
body.theme-light .ss-alert-meta,
body.theme-light .ss-alerts-empty-copy {
  color: #607792;
}

body.theme-light .ss-alerts-panel-count {
  background: rgba(var(--ss-accent-rgb), 0.10);
  color: rgb(var(--ss-accent-rgb));
}

body.theme-light .ss-alert-item {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

body.theme-dark .ss-alerts-panel-title,
body.theme-dark .ss-alert-sensor {
  color: #edf4ff;
}

body.theme-dark .ss-alerts-panel-subtitle,
body.theme-dark .ss-alert-meta,
body.theme-dark .ss-alerts-empty-copy {
  color: #93a9c4;
}

body.theme-dark .ss-alerts-panel-count {
  background: rgba(var(--ss-accent-rgb), 0.16);
  color: #eaf3ff;
  box-shadow: inset 0 0 0 1px rgba(var(--ss-accent-rgb), 0.26);
}

body.theme-dark .ss-alert-item {
  background: linear-gradient(180deg, #1d2b42 0%, #17253a 100%);
  border-color: rgba(86, 108, 140, 0.20);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.24);
}

body.theme-dark .ss-alert-reading-row {
  border-top-color: rgba(86, 108, 140, 0.20);
}

body.theme-dark .ss-alerts-empty {
  border-color: rgba(86, 108, 140, 0.28);
  background: rgba(255, 255, 255, 0.02);
}
.ss-sensor-card {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.ss-sensor-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  opacity: 0.95;
}

.ss-sensor-card-generic::before {
  background: linear-gradient(90deg, #4e8ef7 0%, #7a5af8 100%);
}

.ss-sensor-card-water::before {
  background: linear-gradient(90deg, #11b6c7 0%, #41c3ff 100%);
}

.ss-sensor-card-actuator::before {
  background: linear-gradient(90deg, #ff6b6b 0%, #ff9f43 100%);
}

.ss-sensor-card:hover {
  transform: translateY(-3px);
}

.ss-sensor-card-body {
  padding: 1.35rem 1.5rem 1.2rem;
}

.ss-sensor-card-main {
  display: flex;
  align-items: center;
  gap: 1.15rem;
}

.ss-sensor-visual {
  flex: 0 0 112px;
}

.ss-sensor-icon-shell {
  width: 104px;
  height: 104px;
  border-radius: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ss-sensor-copy {
  flex: 1 1 auto;
  min-width: 0;
}

.ss-sensor-copy-top {
  margin-bottom: 0.7rem;
}

.ss-sensor-chip-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-bottom: 0.55rem;
}

.ss-sensor-chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0.28rem 0.72rem;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ss-sensor-name {
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  line-height: 1.35;
}

.ss-sensor-timestamp {
  margin-top: 0.2rem;
  font-size: 0.96rem;
  font-weight: 500;
  opacity: 0.78;
}

.ss-sensor-reading-label {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.68;
}

.ss-sensor-reading-value {
  margin-top: 0.25rem;
  font-size: 1.55rem;
  font-weight: 800;
  line-height: 1.15;
  word-break: break-word;
}

.ss-sensor-reading-unit {
  margin-left: 0.2rem;
  font-size: 0.92rem;
  font-weight: 700;
  opacity: 0.72;
}

.ss-sensor-card-footer {
  margin-top: 0.95rem;
  padding-top: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  border-top: 1px solid transparent;
}

.ss-sensor-toggle {
  display: flex;
  align-items: center;
  gap: 0.35rem;
}

.ss-sensor-toggle-label {
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  opacity: 0.64;
}

.ss-sensor-toggle-button {
  padding: 0 !important;
  min-width: 0;
  width: 60px;
  height: 34px;
  border: 0;
  background: transparent !important;
  box-shadow: none !important;
}

.ss-sensor-toggle-track {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: 60px;
  height: 34px;
  border-radius: 999px;
  transition: background-color 0.22s ease, box-shadow 0.22s ease;
}

.ss-sensor-toggle-thumb {
  position: absolute;
  top: 4px;
  left: 4px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  transition: transform 0.22s ease, background-color 0.22s ease, box-shadow 0.22s ease;
}

.ss-sensor-toggle-button.is-on .ss-sensor-toggle-thumb {
  transform: translateX(26px);
}

.ss-sensor-status-note {
  font-size: 0.85rem;
  font-weight: 700;
  opacity: 0.72;
}

.ss-sensor-dashboard-icon {
  width: 96px;
  height: 96px;
  object-fit: contain;
}

.ss-sensor-dashboard-fallback {
  display: none;
  padding-right: 0 !important;
  font-size: 5.2rem !important;
}

body.theme-light .ss-sensor-card {
  background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%);
  box-shadow: 0 14px 28px rgba(17, 39, 68, 0.16);
}

body.theme-light .ss-sensor-icon-shell {
  background: linear-gradient(180deg, rgba(222, 232, 246, 0.78) 0%, rgba(240, 245, 252, 0.96) 100%);
  box-shadow: inset 0 0 0 1px rgba(186, 204, 228, 0.72);
}

body.theme-light .ss-sensor-chip-type {
  background: rgba(78, 142, 247, 0.12);
  color: #2d5ea8;
}

body.theme-light .ss-sensor-chip-state.is-on {
  background: rgba(39, 190, 117, 0.16);
  color: #198f52;
}

body.theme-light .ss-sensor-chip-state.is-off {
  background: rgba(255, 109, 109, 0.14);
  color: #c44747;
}

body.theme-light .ss-sensor-chip-water {
  background: rgba(17, 182, 199, 0.14);
  color: #117c89;
}

body.theme-light .ss-sensor-name,
body.theme-light .ss-sensor-reading-value {
  color: #2a3f5d;
}

body.theme-light .ss-sensor-timestamp,
body.theme-light .ss-sensor-reading-label,
body.theme-light .ss-sensor-reading-unit,
body.theme-light .ss-sensor-toggle-label,
body.theme-light .ss-sensor-status-note {
  color: #6d819d;
}

body.theme-light .ss-sensor-card-footer {
  border-top-color: rgba(198, 213, 233, 0.72);
}

body.theme-dark .ss-sensor-card {
  background: linear-gradient(180deg, #1f2d43 0%, #1a2638 100%);
  box-shadow: 0 16px 30px rgba(0, 0, 0, 0.24);
}

body.theme-dark .ss-sensor-icon-shell {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.03) 100%);
  box-shadow: inset 0 0 0 1px rgba(125, 149, 184, 0.14);
}

body.theme-dark .ss-sensor-chip-type {
  background: rgba(121, 165, 255, 0.16);
  color: #d8e7ff;
}

body.theme-dark .ss-sensor-chip-state.is-on {
  background: rgba(39, 190, 117, 0.18);
  color: #8ce6b3;
}

body.theme-dark .ss-sensor-chip-state.is-off {
  background: rgba(255, 109, 109, 0.18);
  color: #ffb2b2;
}

body.theme-dark .ss-sensor-chip-water {
  background: rgba(17, 182, 199, 0.18);
  color: #8ce5ef;
}

body.theme-dark .ss-sensor-name,
body.theme-dark .ss-sensor-reading-value {
  color: #edf4ff;
}

body.theme-dark .ss-sensor-timestamp,
body.theme-dark .ss-sensor-reading-label,
body.theme-dark .ss-sensor-reading-unit,
body.theme-dark .ss-sensor-toggle-label,
body.theme-dark .ss-sensor-status-note {
  color: #8fa7c4;
}

body.theme-dark .ss-sensor-card-footer {
  border-top-color: rgba(86, 108, 140, 0.22);
}

@media (max-width: 767.98px) {
  .ss-sensor-card-body {
    padding: 1rem 1rem 0.95rem;
  }

  .ss-sensor-card-main {
    gap: 0.85rem;
  }

  .ss-sensor-visual {
    flex-basis: 86px;
  }

  .ss-sensor-icon-shell {
    width: 82px;
    height: 82px;
    border-radius: 20px;
  }

  .ss-sensor-dashboard-icon {
    width: 74px;
    height: 74px;
  }

  .ss-sensor-dashboard-fallback {
    font-size: 4.1rem !important;
  }

  .ss-sensor-reading-value {
    font-size: 1.22rem;
  }

  .ss-sensor-chip {
    min-height: 24px;
    padding: 0.22rem 0.6rem;
    font-size: 0.66rem;
  }
}




.ss-pagination-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 1.25rem 0 0.5rem;
}

.ss-pagination {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.55rem 0.7rem;
  border-radius: 999px;
}

.ss-pagination-pages {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}

.ss-pagination-btn {
  min-width: 40px;
  height: 40px;
  padding: 0 0.8rem;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none !important;
  cursor: pointer;
  user-select: none;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

.ss-pagination-btn:hover:not(.disabled):not(.current) {
  transform: translateY(-1px);
}

.ss-pagination-btn.disabled {
  pointer-events: none;
  opacity: 0.42;
}

.ss-pagination-btn.current {
  cursor: default;
}

body.theme-light .ss-pagination {
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 14px 28px rgba(17, 39, 68, 0.10);
  border: 1px solid rgba(203, 217, 236, 0.82);
}

body.theme-light .ss-pagination-btn {
  background: #f4f8fd;
  color: #506784;
  border: 1px solid rgba(203, 217, 236, 0.9);
}

body.theme-light .ss-pagination-btn:hover:not(.disabled):not(.current) {
  background: #ffffff;
  color: #2c4564;
  box-shadow: 0 10px 20px rgba(17, 39, 68, 0.10);
}

body.theme-light .ss-pagination-btn.current {
  background: rgba(var(--ss-accent-rgb), 0.14);
  color: rgb(var(--ss-accent-rgb));
  border-color: rgba(var(--ss-accent-rgb), 0.32);
  box-shadow: inset 0 0 0 1px rgba(var(--ss-accent-rgb), 0.10);
}

body.theme-dark .ss-pagination {
  background: rgba(22, 34, 51, 0.92);
  box-shadow: 0 18px 30px rgba(0, 0, 0, 0.24);
  border: 1px solid rgba(80, 105, 139, 0.22);
}

body.theme-dark .ss-pagination-btn {
  background: #182538;
  color: #9fb6d3;
  border: 1px solid rgba(80, 105, 139, 0.24);
}

body.theme-dark .ss-pagination-btn:hover:not(.disabled):not(.current) {
  background: #1f3047;
  color: #edf4ff;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.20);
}

body.theme-dark .ss-pagination-btn.current {
  background: rgba(var(--ss-accent-rgb), 0.18);
  color: #eaf3ff;
  border-color: rgba(var(--ss-accent-rgb), 0.34);
  box-shadow: inset 0 0 0 1px rgba(var(--ss-accent-rgb), 0.12);
}

@media (max-width: 767.98px) {
  .ss-pagination-wrap {
    margin-top: 1rem;
  }

  .ss-pagination {
    gap: 0.3rem;
    padding: 0.45rem 0.5rem;
    max-width: 100%;
    overflow-x: auto;
  }

  .ss-pagination-pages {
    gap: 0.3rem;
  }

  .ss-pagination-btn {
    min-width: 36px;
    height: 36px;
    padding: 0 0.65rem;
    font-size: 0.88rem;
  }
}

dir-pagination-controls.pull-right {
  float: none !important;
  display: block;
  width: 100%;
}

dir-pagination-controls.pull-right.pb-3 {
  padding-bottom: 0 !important;
}


.ss-alert-item {
  position: relative;
}

.ss-alert-dismiss {
  position: absolute;
  top: 0.9rem;
  right: 0.9rem;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1;
  background: transparent;
  transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.ss-alert-dismiss:hover {
  transform: scale(1.04);
}

.ss-alert-reading-value {
  font-size: 1.7rem;
  font-weight: 800;
  line-height: 1;
}

body.theme-light .ss-alert-dismiss {
  color: #ffffff;
  background: linear-gradient(180deg, #ff5c70 0%, #ef3d57 100%);
  box-shadow: 0 10px 24px rgba(239, 61, 87, 0.18);
}

body.theme-light .ss-alert-dismiss:hover {
  color: #ffffff;
  background: linear-gradient(180deg, #ff6d7f 0%, #f14660 100%);
}

body.theme-dark .ss-alert-dismiss {
  color: #ffffff;
  background: linear-gradient(180deg, #ff5c70 0%, #ef3d57 100%);
  box-shadow: 0 10px 24px rgba(239, 61, 87, 0.22);
}

body.theme-dark .ss-alert-dismiss:hover {
  color: #ffffff;
  background: linear-gradient(180deg, #ff6d7f 0%, #f14660 100%);
}
@media (min-width: 1600px) {
  .ss-alerts-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
  }
}

.ss-alert-dismiss::after {
  content: attr(data-label);
  position: absolute;
  top: -46px;
  right: -2px;
  max-width: 240px;
  padding: 10px 12px;
  border-radius: 12px;
  font-size: 0.84rem;
  font-weight: 500;
  line-height: 1.45;
  text-align: left;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transform: translateY(4px);
  transition: opacity 0.16s ease, transform 0.16s ease;
  z-index: 4;
}

.ss-alert-dismiss::before {
  content: "";
  position: absolute;
  top: -12px;
  right: 11px;
  width: 10px;
  height: 10px;
  transform: rotate(45deg) translateY(4px);
  opacity: 0;
  transition: opacity 0.16s ease, transform 0.16s ease;
  pointer-events: none;
  z-index: 3;
}

.ss-alert-dismiss:hover::after,
.ss-alert-dismiss:hover::before,
.ss-alert-dismiss:focus::after,
.ss-alert-dismiss:focus::before {
  opacity: 1;
  transform: translateY(0);
}

body.theme-light .ss-alert-dismiss::after {
  background: #ffffff;
  color: #314762;
  border: 1px solid #dbe6f2;
  box-shadow: 0 12px 28px rgba(18, 38, 66, 0.18);
}

body.theme-light .ss-alert-dismiss::before {
  background: #ffffff;
  border-right: 1px solid #dbe6f2;
  border-bottom: 1px solid #dbe6f2;
}

body.theme-dark .ss-alert-dismiss::after {
  background: #17253a;
  color: #e5eefc;
  border: 1px solid #2b3d59;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.30);
}

body.theme-dark .ss-alert-dismiss::before {
  background: #17253a;
  border-right: 1px solid #2b3d59;
  border-bottom: 1px solid #2b3d59;
}
body.theme-light .ss-sensor-toggle-button.is-off .ss-sensor-toggle-track {
  background: linear-gradient(180deg, #d7dde8 0%, #c8d2e0 100%);
  box-shadow: inset 0 0 0 1px rgba(112, 132, 164, 0.26);
}

body.theme-light .ss-sensor-toggle-button.is-off .ss-sensor-toggle-thumb {
  background: #ffffff;
  box-shadow: 0 4px 10px rgba(22, 37, 58, 0.18);
}

body.theme-light .ss-sensor-toggle-button.is-on .ss-sensor-toggle-track {
  background: linear-gradient(180deg, #34d186 0%, #20b96f 100%);
  box-shadow: inset 0 0 0 1px rgba(19, 139, 82, 0.25);
}

body.theme-light .ss-sensor-toggle-button.is-on .ss-sensor-toggle-thumb {
  background: #ffffff;
  box-shadow: 0 4px 10px rgba(22, 37, 58, 0.16);
}

body.theme-dark .ss-sensor-toggle-button.is-off .ss-sensor-toggle-track {
  background: linear-gradient(180deg, #334258 0%, #27374d 100%);
  box-shadow: inset 0 0 0 1px rgba(124, 146, 175, 0.18);
}

body.theme-dark .ss-sensor-toggle-button.is-off .ss-sensor-toggle-thumb {
  background: #eef4ff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.26);
}

body.theme-dark .ss-sensor-toggle-button.is-on .ss-sensor-toggle-track {
  background: linear-gradient(180deg, #2fc57b 0%, #1ea764 100%);
  box-shadow: inset 0 0 0 1px rgba(30, 167, 100, 0.22);
}

body.theme-dark .ss-sensor-toggle-button.is-on .ss-sensor-toggle-thumb {
  background: #ffffff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.32);
}



.ss-chart-modal-dialog {
  max-width: min(1120px, calc(100vw - 2rem));
}

.ss-chart-modal-content {
  border: 0;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 28px 80px rgba(15, 23, 42, 0.35);
}

.ss-chart-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.1rem 1.5rem 0.75rem;
  border-bottom: 0;
  background: transparent;
}

.ss-chart-modal-header .close,
.ss-chart-modal-close {
  margin: 0;
  padding: 0;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #ff5c70 0%, #ef3d57 100%) !important;
  box-shadow: 0 12px 24px rgba(239, 61, 87, 0.28);
  opacity: 1;
}

.ss-chart-modal-header .close span,
.ss-chart-modal-close span {
  color: #ffffff !important;
}

.ss-chart-modal-title-wrap {
  display: flex;
  flex-direction: column;
  gap: 0.32rem;
  padding-top: 0.12rem;
  margin-bottom: 1rem;
  max-width: calc(100% - 4rem);
}

.ss-chart-modal-heading {
  font-size: 1.32rem;
  font-weight: 800;
  letter-spacing: 0.01em;
}

.ss-chart-modal-subtitle {
  font-size: 0.93rem;
  font-weight: 500;
  opacity: 0.82;
}

.ss-chart-modal-close {
  position: absolute;
  top: 1.1rem;
  right: 1.1rem;
  z-index: 2;
}

.ss-chart-modal-body {
  padding: 1.1rem 1.5rem 1.5rem;
}

.ss-chart-surface {
  border-radius: 22px;
  padding: 1rem;
}

.ss-chart-surface-time {
  margin-top: 1rem;
}

.ss-chart-canvas {
  width: 100% !important;
  height: 420px;
}

body.theme-light .ss-chart-modal-content {
  background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}

body.theme-light .ss-chart-modal-header {
  background: transparent;
}

body.theme-light .ss-chart-modal-heading {
  color: #27415f !important;
}

body.theme-light .ss-chart-modal-subtitle {
  color: #607690;
}

body.theme-light .ss-chart-modal-header .close:hover,
body.theme-light .ss-chart-modal-close:hover {
  background: linear-gradient(180deg, #ff6d7f 0%, #f14660 100%) !important;
}

body.theme-light .ss-chart-surface {
  background: linear-gradient(180deg, #ffffff 0%, #f7faff 100%);
  border: 1px solid rgba(199, 216, 236, 0.72);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.8);
}

body.theme-dark .ss-chart-modal-content {
  background: linear-gradient(180deg, #182335 0%, #121b2a 100%);
}

body.theme-dark .ss-chart-modal-header {
  background: transparent;
}

body.theme-dark .ss-chart-modal-heading {
  color: #edf4ff;
}

body.theme-dark .ss-chart-modal-subtitle {
  color: #91a7c4;
}

body.theme-dark .ss-chart-modal-header .close:hover,
body.theme-dark .ss-chart-modal-close:hover {
  background: linear-gradient(180deg, #ff6d7f 0%, #f14660 100%) !important;
}

body.theme-dark .ss-chart-surface {
  background: linear-gradient(180deg, #1d2a3f 0%, #162236 100%);
  border: 1px solid rgba(84, 108, 141, 0.26);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.02);
}

@media (max-width: 767.98px) {
  .ss-chart-modal-dialog {
    max-width: calc(100vw - 1rem);
    margin: 0.5rem auto;
  }

  .ss-chart-modal-header {
    padding: 0.95rem 1rem 0.7rem;
  }

  .ss-chart-modal-close {
    top: 0.9rem;
    right: 0.9rem;
  }

  .ss-chart-modal-body {
    padding: 0.95rem 1rem 1rem;
  }

  .ss-chart-canvas {
    height: 320px;
  }
}


.ss-zone-editor {
  padding-bottom: 1.5rem;
}

.ss-zone-editor-hero {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 1.25rem;
  margin-bottom: 1.25rem;
}

.ss-zone-editor-hero-copy,
.ss-zone-selector {
  border-radius: 22px;
}

.ss-zone-editor-hero-copy {
  flex: 1 1 auto;
  padding: 1.35rem 1.5rem 0.6rem;
}

.ss-zone-editor-kicker {
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0.78;
}

.ss-zone-name-field {
  margin-bottom: 0;
}

.ss-zone-editor-stats {
  width: min(320px, 100%);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

.ss-zone-editor-stat {
  padding: 1.2rem 1rem;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 126px;
}

.ss-zone-editor-stat-label {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.74;
}

.ss-zone-editor-stat-value {
  font-size: 2.45rem;
  line-height: 1;
  font-weight: 800;
}

.ss-zone-selector {
  padding: 1.1rem 1.1rem 0.6rem;
}

.ss-zone-selector-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.ss-zone-selector-copy {
  min-width: 0;
}

.ss-zone-selector-title {
  font-size: 1.12rem;
  font-weight: 800;
}

.ss-zone-selector-subtitle {
  font-size: 0.92rem;
  line-height: 1.45;
}

.ss-zone-selector-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.9rem;
  flex-wrap: wrap;
}

.ss-zone-selector-search {
  width: min(320px, 100%);
}

.ss-zone-card-board {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.8rem;
}

.ss-zone-card-group {
  grid-column: 1 / -1;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.8rem;
  padding: 0.75rem 0.9rem;
  border-radius: 16px;
}

.ss-zone-empty-state {
  grid-column: 1 / -1;
  padding: 2.5rem 1.25rem;
  text-align: center;
  border-radius: 18px;
  font-weight: 600;
}

.ss-zone-sensor-card {
  position: relative;
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 0.8rem;
  min-height: 108px;
  padding: 0.8rem 0.9rem;
  border-radius: 18px;
  margin: 0;
  cursor: pointer;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.ss-zone-sensor-card:hover {
  transform: translateY(-1px);
}

.ss-zone-card-check {
  position: static;
  justify-self: end;
  align-self: center;
  pointer-events: none;
}

.ss-zone-sensor-card-body {
  min-width: 0;
  padding-left: 0.15rem;
  display: flex;
  flex-direction: column;
  gap: 0.22rem;
}

.ss-zone-sensor-card-topline {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  flex-wrap: wrap;
}

.ss-zone-sensor-id,
.ss-zone-sensor-type {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0.18rem 0.54rem;
  border-radius: 999px;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.ss-zone-select-all {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0.7rem 1rem;
  border-radius: 999px;
  margin: 0;
  cursor: pointer;
  user-select: none;
  font-size: 0.92rem;
  font-weight: 700;
}

.ss-zone-select-all input {
  appearance: none;
  -webkit-appearance: none;
  width: 18px;
  height: 18px;
  border-radius: 6px;
  margin: 0;
  position: relative;
  transition: all 0.2s ease;
}

.ss-zone-select-all input:checked::after {
  content: '';
  position: absolute;
  top: 1px;
  left: 5px;
  width: 5px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
}

.ss-zone-table-wrap {
  border-radius: 18px;
  overflow: auto;
  max-height: 540px;
}

.ss-zone-table {
  margin-bottom: 0;
}

.ss-zone-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  border-top: 0;
  text-transform: uppercase;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
}

.ss-zone-group-row {
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.8rem;
}

.ss-zone-sensor-row td {
  vertical-align: middle;
}


.ss-zone-sensor-copy {
  display: flex;
  align-items: center;
  gap: 0.9rem;
}

.ss-zone-sensor-visual {
  width: 80px;
  height: 80px;
  flex: 0 0 60px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.ss-zone-sensor-icon {
  width: 80px;
  height: 80px;
  object-fit: contain;
}

.ss-zone-sensor-icon-fallback {
  display: none;
  width: 80px;
  height: 80px;
  border-radius: 16px;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  font-weight: 800;
}

.ss-zone-sensor-copy-text {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.18rem;
}

.ss-zone-sensor-name {
  font-weight: 700;
  font-size: 0.88rem;
  line-height: 1.2;
}

.ss-zone-sensor-meta {
  font-size: 0.72rem;
  line-height: 1.25;
}

.ss-zone-checkbox {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin: 0;
  cursor: pointer;
}

.ss-zone-checkbox input {
  position: absolute;
  opacity: 0;
  inset: 0;
  margin: 0;
}

.ss-zone-checkbox-ui {
  width: 18px;
  height: 18px;
  border-radius: 6px;
  position: relative;
  transition: all 0.2s ease;
}

.ss-zone-checkbox-ui.is-active::after,
.ss-zone-checkbox input:checked + .ss-zone-checkbox-ui::after {
  content: '';
  position: absolute;
  top: 1px;
  left: 5px;
  width: 5px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
}

.ss-zone-editor-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 1.15rem;
}

.ss-zone-save-btn {
  min-width: 168px;
  padding: 0.9rem 1.5rem;
  border-radius: 999px;
  border: 0;
  font-size: 0.92rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.ss-zone-save-btn[disabled] {
  opacity: 0.55;
  cursor: not-allowed;
}

body.theme-light .ss-zone-editor-hero-copy,
body.theme-light .ss-zone-editor-stat,
body.theme-light .ss-zone-selector {
  background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
  border: 1px solid rgba(201, 217, 236, 0.72);
  box-shadow: 0 18px 38px rgba(62, 84, 121, 0.08);
}

body.theme-light .ss-zone-editor-kicker,
body.theme-light .ss-zone-editor-stat-label,
body.theme-light .ss-zone-selector-subtitle {
  color: #68809f;
}

body.theme-light .ss-zone-editor-stat-value,
body.theme-light .ss-zone-selector-title {
  color: #27415f;
}

body.theme-light .ss-zone-select-all {
  background: linear-gradient(180deg, rgba(233, 242, 252, 0.96) 0%, rgba(221, 235, 250, 0.96) 100%);
  border: 1px solid rgba(147, 174, 206, 0.78);
  box-shadow: 0 12px 24px rgba(79, 110, 148, 0.08);
  color: #21466f;
}

body.theme-light .ss-zone-select-all input,
body.theme-light .ss-zone-checkbox-ui {
  border: 1px solid rgba(96, 126, 163, 0.88);
  background: #ffffff;
  box-shadow: 0 6px 14px rgba(88, 113, 145, 0.12);
}

body.theme-light .ss-zone-select-all input:checked,
body.theme-light .ss-zone-checkbox-ui.is-active,
body.theme-light .ss-zone-checkbox input:checked + .ss-zone-checkbox-ui,
body.theme-light .ss-zone-save-btn {
  background: linear-gradient(135deg, #30c98b 0%, #149a62 100%);
  box-shadow: 0 16px 30px rgba(20, 154, 98, 0.22);
  color: #ffffff;
}

body.theme-light .ss-zone-empty-state {
  background: rgba(244, 248, 253, 0.98);
  border: 1px dashed rgba(188, 205, 227, 0.92);
  color: #5f7897;
}

body.theme-light .ss-zone-card-group {
  background: rgba(76, 131, 194, 0.08);
  color: #305071;
}

body.theme-light .ss-zone-sensor-card {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border: 1px solid rgba(208, 222, 239, 0.84);
  box-shadow: 0 18px 34px rgba(62, 84, 121, 0.08);
}

body.theme-light .ss-zone-sensor-card:hover {
  border-color: rgba(132, 165, 205, 0.9);
  box-shadow: 0 22px 36px rgba(62, 84, 121, 0.12);
}

body.theme-light .ss-zone-sensor-card.is-selected {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border-color: rgba(208, 222, 239, 0.84);
  box-shadow: 0 18px 34px rgba(62, 84, 121, 0.08);
}

body.theme-light .ss-zone-sensor-id,
body.theme-light .ss-zone-sensor-type {
  background: rgba(86, 120, 162, 0.1);
  color: #446280;
}

body.theme-light .ss-zone-sensor-visual {
  background: linear-gradient(180deg, rgba(236, 243, 252, 0.96) 0%, rgba(226, 237, 251, 0.96) 100%);
  border: 1px solid rgba(191, 208, 230, 0.72);
}

body.theme-light .ss-zone-sensor-icon-fallback {
  background: rgba(81, 114, 156, 0.12);
  color: #2d4f74;
}

body.theme-light .ss-zone-sensor-name {
  color: #29415f;
}

body.theme-light .ss-zone-sensor-meta {
  color: #6e84a0;
}

body.theme-light .ss-zone-table thead th {
  background: rgba(244, 248, 253, 0.98);
  color: #6a819d;
}


body.theme-dark .ss-zone-editor-hero-copy,
body.theme-dark .ss-zone-editor-stat,
body.theme-dark .ss-zone-selector {
  background: linear-gradient(180deg, #1d2a3f 0%, #162235 100%);
  border: 1px solid rgba(84, 108, 141, 0.28);
  box-shadow: 0 22px 44px rgba(5, 10, 18, 0.24);
}

body.theme-dark .ss-zone-editor-kicker,
body.theme-dark .ss-zone-editor-stat-label,
body.theme-dark .ss-zone-selector-subtitle {
  color: #8fa7c4;
}

body.theme-dark .ss-zone-editor-stat-value,
body.theme-dark .ss-zone-selector-title {
  color: #edf4ff;
}

body.theme-dark .ss-zone-select-all {
  background: rgba(255, 255, 255, 0.04);
  color: #d9e7fb;
}

body.theme-dark .ss-zone-select-all input,
body.theme-dark .ss-zone-checkbox-ui {
  border: 1px solid rgba(115, 141, 176, 0.68);
  background: rgba(13, 21, 33, 0.82);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
}

body.theme-dark .ss-zone-select-all input:checked,
body.theme-dark .ss-zone-checkbox-ui.is-active,
body.theme-dark .ss-zone-checkbox input:checked + .ss-zone-checkbox-ui,
body.theme-dark .ss-zone-save-btn {
  background: linear-gradient(135deg, #38d996 0%, #1a9b67 100%);
  box-shadow: 0 16px 30px rgba(26, 155, 103, 0.2);
  color: #ffffff;
}

body.theme-dark .ss-zone-empty-state {
  background: rgba(18, 28, 43, 0.58);
  border: 1px dashed rgba(86, 110, 141, 0.44);
  color: #8fa7c4;
}

body.theme-dark .ss-zone-card-group {
  background: rgba(88, 132, 206, 0.12);
  color: #d8e8ff;
}

body.theme-dark .ss-zone-sensor-card {
  background: linear-gradient(180deg, rgba(25, 37, 57, 0.96) 0%, rgba(19, 29, 44, 0.96) 100%);
  border: 1px solid rgba(83, 106, 137, 0.34);
  box-shadow: 0 22px 42px rgba(5, 10, 18, 0.24);
}

body.theme-dark .ss-zone-sensor-card:hover {
  border-color: rgba(117, 149, 194, 0.44);
  box-shadow: 0 26px 46px rgba(5, 10, 18, 0.28);
}

body.theme-dark .ss-zone-sensor-card.is-selected {
  background: linear-gradient(180deg, rgba(25, 37, 57, 0.96) 0%, rgba(19, 29, 44, 0.96) 100%);
  border-color: rgba(83, 106, 137, 0.34);
}

body.theme-dark .ss-zone-sensor-id,
body.theme-dark .ss-zone-sensor-type {
  background: rgba(255, 255, 255, 0.08);
  color: #cfe0f7;
}

body.theme-dark .ss-zone-sensor-visual {
  background: linear-gradient(180deg, rgba(22, 34, 53, 0.94) 0%, rgba(17, 27, 42, 0.94) 100%);
  border: 1px solid rgba(84, 108, 141, 0.36);
}

body.theme-dark .ss-zone-sensor-icon-fallback {
  background: rgba(255, 255, 255, 0.08);
  color: #edf4ff;
}

body.theme-dark .ss-zone-sensor-name {
  color: #edf4ff;
}

body.theme-dark .ss-zone-sensor-meta {
  color: #91a7c4;
}

body.theme-dark .ss-zone-table thead th {
  background: rgba(18, 28, 43, 0.98);
  color: #8fa7c4;
}


@media (max-width: 991.98px) {
  .ss-zone-card-board {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ss-zone-editor-hero,
  .ss-zone-selector-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .ss-zone-editor-stats {
    width: 100%;
  }

  .ss-zone-selector-actions {
    justify-content: flex-start;
  }

  .ss-zone-selector-search {
    width: 100%;
  }
}


@media (max-width: 1399.98px) {
  .ss-zone-card-board {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .ss-zone-card-board {
    grid-template-columns: 1fr;
  }
}


.smartsys-swal {
  border-radius: 24px !important;
  border: 1px solid rgba(126, 152, 190, 0.22) !important;
  box-shadow: 0 28px 60px rgba(8, 16, 30, 0.26) !important;
  padding: 1.75rem 1.75rem 1.35rem !important;
}

.smartsys-swal h2 {
  font-size: 1.65rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  margin: 0 0 0.65rem !important;
}

.smartsys-swal p {
  font-size: 1rem !important;
  line-height: 1.55 !important;
  margin: 0 auto 1.3rem !important;
  max-width: 27rem !important;
}

.smartsys-swal .sa-icon.sa-warning {
  border-color: rgba(255, 168, 79, 0.9) !important;
}

.smartsys-swal .sa-icon.sa-warning .sa-body,
.smartsys-swal .sa-icon.sa-warning .sa-dot {
  background-color: #ff9f43 !important;
}

.smartsys-swal .sa-button-container {
  display: flex !important;
  justify-content: center !important;
  gap: 0.8rem !important;
}

.smartsys-swal button {
  border-radius: 999px !important;
  padding: 0.8rem 1.4rem !important;
  font-size: 0.9rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

.smartsys-swal button.cancel {
  background: transparent !important;
  border: 1px solid rgba(138, 163, 196, 0.4) !important;
}

.smartsys-swal .sa-confirm-button-container button.confirm {
  background: linear-gradient(135deg, #ff5c74 0%, #ff3457 100%) !important;
}

body.theme-light .smartsys-swal {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
}

body.theme-light .smartsys-swal h2 {
  color: #233a59 !important;
}

body.theme-light .smartsys-swal p {
  color: #5d7697 !important;
}

body.theme-light .smartsys-swal button.cancel {
  color: #35506f !important;
}

body.theme-dark .smartsys-swal {
  background: linear-gradient(180deg, #1d2a3f 0%, #162235 100%) !important;
  border-color: rgba(84, 108, 141, 0.34) !important;
}

body.theme-dark .smartsys-swal h2 {
  color: #edf4ff !important;
}

body.theme-dark .smartsys-swal p {
  color: #9ab1cd !important;
}

body.theme-dark .smartsys-swal button.cancel {
  color: #dce8fb !important;
  background: rgba(255, 255, 255, 0.04) !important;
}


.ss-sensors-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.ss-sensors-header-actions {
  margin-left: auto;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.ss-sensors-header-search {
  width: 260px;
  min-width: 260px;
}

.ss-section-filter-select {
  width: 220px;
  min-width: 220px;
}

.ss-section-filter-select-company {
  width: 240px;
  min-width: 240px;
}

.ss-sensors-manager {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.ss-sensors-manager-hero,
.ss-sensors-table-panel {
  border-radius: 24px;
  border: 1px solid rgba(120, 150, 190, 0.16);
}

.ss-sensors-manager-hero {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 18px;
  padding: 20px 22px;
}

.ss-sensors-manager-hero-copy {
  flex: 1 1 auto;
}

.ss-sensors-manager-kicker {
  font-size: 0.8rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 800;
}

.ss-sensors-manager-summary {
  max-width: 680px;
  font-size: 0.98rem;
  line-height: 1.6;
}

.ss-sensors-manager-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(160px, 220px));
  gap: 14px;
  min-width: 0;
  width: fit-content;
  max-width: 100%;
  align-self: flex-start;
  justify-content: flex-start;
  justify-items: stretch;
}

.ss-sensors-manager-stat {
  border-radius: 18px;
  padding: 16px 18px;
  border: 1px solid rgba(120, 150, 190, 0.14);
}

.ss-sensors-manager-stat-label {
  display: block;
  font-size: 0.76rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 8px;
  font-weight: 700;
}

.ss-sensors-manager-stat-value {
  display: block;
  font-size: 2.45rem;
  line-height: 1;
  font-weight: 800;
}

.ss-sensors-table-panel {
  padding: 18px 18px 10px;
}

.ss-sensors-table-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.ss-sensors-table-copy {
  min-width: 0;
}

.ss-sensors-table-title {
  font-size: 1.2rem;
  font-weight: 800;
  letter-spacing: -0.01em;
}

.ss-sensors-table-subtitle {
  font-size: 0.95rem;
}

.ss-sensors-table-wrap {
  border-radius: 18px;
  overflow: hidden;
}

.ss-sensors-table-wrap .table {
  margin-bottom: 8px;
}

body.theme-light .ss-sensors-manager-hero,
body.theme-light .ss-sensors-table-panel {
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,250,255,0.96));
  box-shadow: 0 14px 34px rgba(24, 43, 77, 0.08);
}

body.theme-light .ss-sensors-manager-kicker,
body.theme-light .ss-sensors-manager-stat-label,
body.theme-light .ss-sensors-table-subtitle {
  color: #7c91b0;
}

body.theme-light .ss-sensors-manager-summary,
body.theme-light .ss-sensors-table-title,
body.theme-light .ss-sensors-manager-stat-value {
  color: #26415f;
}

body.theme-light .ss-sensors-manager-stat {
  background: rgba(245, 249, 255, 0.92);
}

body.theme-dark .ss-sensors-manager-hero,
body.theme-dark .ss-sensors-table-panel {
  background: linear-gradient(180deg, rgba(25, 37, 58, 0.96), rgba(27, 41, 66, 0.94));
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.22);
}

body.theme-dark .ss-sensors-manager-kicker,
body.theme-dark .ss-sensors-manager-stat-label,
body.theme-dark .ss-sensors-table-subtitle {
  color: #93a9c5;
}

body.theme-dark .ss-sensors-manager-summary,
body.theme-dark .ss-sensors-table-title,
body.theme-dark .ss-sensors-manager-stat-value {
  color: #e3ecfb;
}

body.theme-dark .ss-sensors-manager-stat {
  background: rgba(17, 27, 44, 0.44);
}

@media (max-width: 1199px) {
  .ss-sensors-manager-hero {
    flex-direction: column;
  }

  .ss-sensors-manager-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .ss-sensors-header {
    flex-direction: column;
    align-items: stretch;
  }

  .ss-sensors-header-actions {
    margin-left: 0;
    justify-content: flex-start;
  }

  .ss-sensors-header-search,
  .ss-section-filter-select,
  .ss-section-filter-select-company {
    width: 100%;
    min-width: 0;
  }

  .ss-sensors-manager-stats {
    grid-template-columns: 1fr;
  }
}


.ss-sensor-catalog-wrap {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.ss-sensor-catalog-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.ss-sensor-catalog-card {
  position: relative;
  min-width: 0;
  z-index: 1;
}

.ss-sensor-catalog-card:hover,
.ss-sensor-catalog-card:focus-within {
  z-index: 24;
}

.ss-sensor-catalog-card-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-height: 100%;
  border-radius: 22px;
  padding: 18px 18px 16px;
  overflow: visible;
  border: 1px solid rgba(120, 150, 190, 0.16);
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.ss-sensor-catalog-card-inner:hover {
  transform: translateY(-2px);
}

.ss-sensor-catalog-top {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}

.ss-sensor-catalog-visual {
  width: 96px;
  height: 96px;
  border-radius: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex-shrink: 0;
}

.ss-sensor-catalog-icon {
  width: 80px;
  height: 80px;
  object-fit: contain;
}

.ss-sensor-catalog-icon-fallback {
  display: none;
  font-size: 2.45rem;
}

.ss-sensor-catalog-head {
  min-width: 0;
}

.ss-sensor-catalog-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
}

.ss-sensor-catalog-chip {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 0.28rem 0.65rem;
  font-size: 0.72rem;
  line-height: 1;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.ss-sensor-catalog-chip-id {
  background: rgba(110, 132, 165, 0.16);
}

.ss-sensor-catalog-chip-company {
  max-width: 180px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background: rgba(82, 211, 216, 0.14);
}

.ss-sensor-catalog-chip-status.is-active {
  background: rgba(34, 197, 94, 0.16);
  color: #19a65b;
}

.ss-sensor-catalog-chip-status.is-inactive {
  background: rgba(255, 92, 116, 0.14);
  color: #dd5066;
}

.ss-sensor-catalog-name {
  font-size: 1.02rem;
  font-weight: 800;
  line-height: 1.25;
  margin-bottom: 6px;
}

.ss-sensor-catalog-type {
  font-size: 0.9rem;
  line-height: 1.5;
}

.ss-sensor-catalog-actions {
  align-self: start;
  position: relative;
}

.ss-sensor-catalog-action-btn {
  width: 46px;
  height: 46px;
  border-radius: 16px;
  border: 1px solid rgba(120, 150, 190, 0.18);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  box-shadow: 0 10px 24px rgba(18, 32, 56, 0.14);
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, background-color 0.18s ease;
}

.ss-sensor-catalog-action-btn:hover,
.ss-sensor-catalog-action-btn:focus {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(18, 32, 56, 0.2);
}

.ss-sensor-catalog-action-btn i {
  font-size: 1rem;
}

.ss-sensor-catalog-dropdown {
  z-index: 40;
  min-width: 220px;
  padding: 0.45rem;
  margin-top: 10px;
  border-radius: 18px;
  border: 1px solid rgba(120, 150, 190, 0.18);
  box-shadow: 0 18px 44px rgba(11, 22, 40, 0.2);
}

.ss-sensor-catalog-dropdown .dropdown-item {
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 12px;
  padding: 0.72rem 0.85rem;
  font-size: 0.92rem;
  font-weight: 700;
  transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.ss-sensor-catalog-dropdown .dropdown-item + .dropdown-item {
  margin-top: 4px;
  border-top: 1px solid rgba(120, 150, 190, 0.14);
  padding-top: 0.86rem;
}

.ss-sensor-catalog-dropdown .dropdown-item:hover,
.ss-sensor-catalog-dropdown .dropdown-item:focus {
  transform: translateX(2px);
}

.ss-sensor-catalog-dropdown .dropdown-item i {
  width: 16px;
  text-align: center;
}

.ss-sensor-catalog-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.ss-sensor-catalog-meta-item {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.ss-sensor-catalog-meta-label {
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ss-sensor-catalog-meta-value {
  font-size: 0.95rem;
  line-height: 1.45;
  word-break: break-word;
}

.ss-sensor-catalog-empty {
  padding: 28px;
  text-align: center;
  border-radius: 20px;
  border: 1px dashed rgba(120, 150, 190, 0.22);
}

body.theme-light .ss-sensor-catalog-card-inner {
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,250,255,0.96));
  box-shadow: 0 14px 34px rgba(24, 43, 77, 0.08);
}

body.theme-light .ss-sensor-catalog-card-inner:hover {
  box-shadow: 0 18px 38px rgba(24, 43, 77, 0.12);
  border-color: rgba(74, 113, 164, 0.22);
}

body.theme-light .ss-sensor-catalog-visual,
body.theme-light .ss-sensor-catalog-action-btn {
  background: rgba(241, 246, 255, 0.92);
}

body.theme-light .ss-sensor-catalog-dropdown {
  background: rgba(255, 255, 255, 0.98);
}

body.theme-light .ss-sensor-catalog-dropdown .dropdown-item {
  color: #284260;
}

body.theme-light .ss-sensor-catalog-dropdown .dropdown-item:hover,
body.theme-light .ss-sensor-catalog-dropdown .dropdown-item:focus,
body.theme-light .ss-sensor-catalog-dropdown .dropdown-item:active {
  background: rgba(233, 241, 252, 0.92);
  color: #284260 !important;
}

body.theme-light .ss-sensor-catalog-dropdown .dropdown-item:hover i,
body.theme-light .ss-sensor-catalog-dropdown .dropdown-item:focus i,
body.theme-light .ss-sensor-catalog-dropdown .dropdown-item:active i,
body.theme-light .ss-sensor-catalog-dropdown .dropdown-item:hover span,
body.theme-light .ss-sensor-catalog-dropdown .dropdown-item:focus span,
body.theme-light .ss-sensor-catalog-dropdown .dropdown-item:active span {
  color: #284260 !important;
}

body.theme-light .ss-sensor-catalog-name,
body.theme-light .ss-sensor-catalog-meta-value,
body.theme-light .ss-sensor-catalog-action-btn {
  color: #26415f;
}

body.theme-light .ss-sensor-catalog-type,
body.theme-light .ss-sensor-catalog-meta-label,
body.theme-light .ss-sensor-catalog-empty,
body.theme-light .ss-sensor-catalog-chip-id,
body.theme-light .ss-sensor-catalog-chip-company {
  color: #7c91b0;
}

body.theme-dark .ss-sensor-catalog-card-inner {
  background: linear-gradient(180deg, rgba(25, 37, 58, 0.96), rgba(27, 41, 66, 0.94));
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.22);
}

body.theme-dark .ss-sensor-catalog-card-inner:hover {
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.28);
  border-color: rgba(109, 140, 181, 0.24);
}

body.theme-dark .ss-sensor-catalog-visual,
body.theme-dark .ss-sensor-catalog-action-btn {
  background: rgba(17, 27, 44, 0.44);
}

body.theme-dark .ss-sensor-catalog-dropdown {
  background: rgba(20, 31, 49, 0.98);
  border-color: rgba(115, 144, 184, 0.16);
}

body.theme-dark .ss-sensor-catalog-dropdown .dropdown-item {
  color: #dde7f7;
}

body.theme-dark .ss-sensor-catalog-dropdown .dropdown-item:hover,
body.theme-dark .ss-sensor-catalog-dropdown .dropdown-item:focus {
  background: rgba(49, 67, 98, 0.42);
}

body.theme-dark .ss-sensor-catalog-name,
body.theme-dark .ss-sensor-catalog-meta-value,
body.theme-dark .ss-sensor-catalog-action-btn,
body.theme-dark .ss-sensor-catalog-icon-fallback {
  color: #e3ecfb;
}

body.theme-dark .ss-sensor-catalog-type,
body.theme-dark .ss-sensor-catalog-meta-label,
body.theme-dark .ss-sensor-catalog-empty,
body.theme-dark .ss-sensor-catalog-chip-id,
body.theme-dark .ss-sensor-catalog-chip-company {
  color: #93a9c5;
}

@media (max-width: 1599px) {
  .ss-sensor-catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1199px) {
  .ss-sensor-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .ss-sensor-catalog-grid {
    grid-template-columns: 1fr;
  }

  .ss-sensor-catalog-top {
    grid-template-columns: 64px minmax(0, 1fr) auto;
  }

  .ss-sensor-catalog-visual {
    width: 72px;
    height: 72px;
  }

  .ss-sensor-catalog-icon {
    width: 58px;
    height: 58px;
  }

  .ss-sensor-catalog-meta-grid {
    grid-template-columns: 1fr;
  }
}

.ss-sensor-editor {
  padding-bottom: 1.5rem;
}

.ss-sensor-editor-hero {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 1.25rem;
  margin-bottom: 1.25rem;
}

.ss-sensor-editor-hero-copy,
.ss-sensor-form-panel {
  border-radius: 22px;
}

.ss-sensor-editor-hero-copy {
  flex: 1 1 auto;
  padding: 1.35rem 1.5rem 0.7rem;
}

.ss-sensor-editor-kicker {
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0.78;
}

.ss-sensor-editor-stats {
  width: min(380px, 100%);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

.ss-sensor-editor-stat {
  padding: 1.2rem 1rem;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 126px;
}

.ss-sensor-editor-stat-label {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.74;
}

.ss-sensor-editor-stat-value {
  font-size: 2rem;
  line-height: 1.05;
  font-weight: 800;
}

.ss-sensor-editor-stat-value-sm {
  font-size: 1.4rem;
}

.ss-sensor-editor-stat-value-md {
  font-size: 1.2rem;
  line-height: 1.2;
}

.ss-sensor-form-grid {
  display: grid;
  gap: 1rem;
}

.ss-sensor-form-panel {
  padding: 1.2rem 1.3rem 0.85rem;
}

.ss-sensor-form-panel-head {
  margin-bottom: 0.7rem;
}

.ss-sensor-form-panel-title {
  font-size: 1.08rem;
  font-weight: 800;
}

.ss-sensor-form-panel-subtitle {
  font-size: 0.9rem;
  line-height: 1.45;
}

.ss-sensor-form-panel md-input-container {
  margin-bottom: 0.15rem;
}

.ss-sensor-form-panel md-input-container .md-errors-spacer {
  min-height: 0;
}

.ss-sensor-form-panel .md-block {
  margin-right: 0.85rem;
}

.ss-sensor-form-panel .md-block:last-child {
  margin-right: 0;
}

.ss-sensor-form-panel .md-input,
.ss-sensor-form-panel md-select .md-select-value,
.ss-sensor-form-panel md-select .md-select-value > span:not(.md-select-icon) {
  font-weight: 600;
}

.ss-sensor-energy-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.8rem;
}

.ss-sensor-energy-input {
  min-height: 46px;
  border-radius: 14px;
}

.ss-sensor-editor-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 1.15rem;
}

.ss-sensor-save-btn {
  min-width: 180px;
  padding: 0.95rem 1.5rem;
  border-radius: 999px;
  border: 0;
  font-size: 0.92rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.ss-sensor-save-btn[disabled] {
  opacity: 0.55;
  cursor: not-allowed;
}

body.theme-light .ss-sensor-editor-hero-copy,
body.theme-light .ss-sensor-editor-stat,
body.theme-light .ss-sensor-form-panel {
  background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
  border: 1px solid rgba(201, 217, 236, 0.72);
  box-shadow: 0 18px 38px rgba(62, 84, 121, 0.08);
}

body.theme-light .ss-sensor-editor-kicker,
body.theme-light .ss-sensor-editor-stat-label,
body.theme-light .ss-sensor-form-panel-subtitle {
  color: #68809f;
}

body.theme-light .ss-sensor-editor-stat-value,
body.theme-light .ss-sensor-form-panel-title {
  color: #27415f;
}

body.theme-light .ss-sensor-form-panel .md-input,
body.theme-light .ss-sensor-form-panel input,
body.theme-light .ss-sensor-form-panel textarea,
body.theme-light .ss-sensor-form-panel md-select .md-select-value {
  color: #27415f;
}

body.theme-light .ss-sensor-form-panel label,
body.theme-light .ss-sensor-form-panel md-input-container label,
body.theme-light .ss-sensor-form-panel .md-placeholder {
  color: #6c819d !important;
}

body.theme-light .ss-sensor-form-panel md-input-container .md-input,
body.theme-light .ss-sensor-form-panel md-select .md-select-value {
  border-color: rgba(191, 208, 230, 0.92);
}

body.theme-light .ss-sensor-energy-input,
body.theme-light .ss-sensor-save-btn {
  background: #ffffff;
  border: 1px solid rgba(191, 208, 230, 0.92);
  color: #27415f;
}

body.theme-light .ss-sensor-save-btn {
  background: linear-gradient(135deg, #30c98b 0%, #149a62 100%);
  box-shadow: 0 16px 30px rgba(20, 154, 98, 0.22);
  color: #ffffff;
}

body.theme-dark .ss-sensor-editor-hero-copy,
body.theme-dark .ss-sensor-editor-stat,
body.theme-dark .ss-sensor-form-panel {
  background: linear-gradient(180deg, #1d2a3f 0%, #162235 100%);
  border: 1px solid rgba(84, 108, 141, 0.28);
  box-shadow: 0 22px 44px rgba(5, 10, 18, 0.24);
}

body.theme-dark .ss-sensor-editor-kicker,
body.theme-dark .ss-sensor-editor-stat-label,
body.theme-dark .ss-sensor-form-panel-subtitle {
  color: #8fa7c4;
}

body.theme-dark .ss-sensor-editor-stat-value,
body.theme-dark .ss-sensor-form-panel-title {
  color: #edf4ff;
}

body.theme-dark .ss-sensor-form-panel .md-input,
body.theme-dark .ss-sensor-form-panel input,
body.theme-dark .ss-sensor-form-panel textarea,
body.theme-dark .ss-sensor-form-panel md-select .md-select-value {
  color: #edf4ff;
}

body.theme-dark .ss-sensor-form-panel label,
body.theme-dark .ss-sensor-form-panel md-input-container label,
body.theme-dark .ss-sensor-form-panel .md-placeholder {
  color: #8fa7c4 !important;
}

body.theme-dark .ss-sensor-form-panel md-input-container .md-input,
body.theme-dark .ss-sensor-form-panel md-select .md-select-value {
  border-color: rgba(94, 120, 155, 0.62);
}

body.theme-dark .ss-sensor-energy-input {
  background: rgba(13, 21, 33, 0.82);
  border: 1px solid rgba(94, 120, 155, 0.62);
  color: #edf4ff;
}

body.theme-dark .ss-sensor-save-btn {
  background: linear-gradient(135deg, #38d996 0%, #1a9b67 100%);
  box-shadow: 0 16px 30px rgba(26, 155, 103, 0.2);
  color: #ffffff;
}

@media (max-width: 991.98px) {
  .ss-sensor-editor-hero {
    flex-direction: column;
    align-items: stretch;
  }

  .ss-sensor-editor-stats {
    width: 100%;
  }

  .ss-sensor-energy-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .ss-sensor-energy-grid {
    grid-template-columns: 1fr;
  }

  .ss-sensor-save-btn {
    width: 100%;
  }
}

.ss-form-input-field {
  position: relative;
}

.ss-form-input-field::before,
.ss-form-input-field::after,
.ss-form-input-field .md-errors-spacer {
  display: none !important;
}

.ss-form-input-field label,
.ss-form-input-field.md-input-focused label,
.ss-form-input-field.md-input-has-value label {
  transform: none !important;
  position: static !important;
  margin-bottom: 0.45rem;
  display: block;
  width: 100%;
  font-size: 0.86rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em;
}

.ss-form-input-field .ss-form-input,
.ss-form-input-field input.ss-form-input,
.ss-sensor-form-panel .ss-form-input-field .ss-form-input {
  min-height: 56px;
  width: 100%;
  border-radius: 16px;
  padding: 0 1rem;
  font-size: .98rem;
  font-weight: 700;
  border-bottom: 1px solid transparent !important;
  box-sizing: border-box;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.ss-form-input-field.md-input-focused .ss-form-input,
.ss-form-input-field .ss-form-input:focus {
  box-shadow: 0 0 0 4px rgba(47, 166, 227, 0.12);
}

body.theme-light .ss-form-input-field label,
body.theme-light .ss-form-input-field.md-input-focused label,
body.theme-light .ss-form-input-field.md-input-has-value label {
  color: #6c819d !important;
}

body.theme-light .ss-form-input-field .ss-form-input {
  background: #f8fbff;
  border: 1px solid rgba(150, 178, 211, 0.55);
  color: #244264;
}

body.theme-light .ss-form-input-field .ss-form-input:focus,
body.theme-light .ss-form-input-field.md-input-focused .ss-form-input {
  background: #ffffff;
  border-color: rgba(47, 166, 227, 0.7);
}

body.theme-dark .ss-form-input-field label,
body.theme-dark .ss-form-input-field.md-input-focused label,
body.theme-dark .ss-form-input-field.md-input-has-value label {
  color: #8fa7c4 !important;
}

body.theme-dark .ss-form-input-field .ss-form-input {
  background: rgba(16, 24, 38, 0.9);
  border: 1px solid rgba(89, 110, 145, 0.55);
  color: #eef4ff;
}

body.theme-dark .ss-form-input-field .ss-form-input:focus,
body.theme-dark .ss-form-input-field.md-input-focused .ss-form-input {
  background: rgba(20, 30, 49, 0.98);
  border-color: rgba(82, 192, 255, 0.75);
}
.ss-form-select-field {
  position: relative;
}

.ss-form-select-field .ss-md-select .md-select-value {
  min-height: 56px;
  padding: 0 1rem;
  border-radius: 16px;
  border-bottom: 0;
  display: flex;
  align-items: center;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.ss-form-select-field .ss-md-select .md-select-value > span:not(.md-select-icon) {
  display: flex;
  align-items: center;
  min-height: 56px;
  font-size: .98rem;
  font-weight: 700;
}

.ss-form-select-field .ss-md-select .md-select-icon {
  width: 20px;
  color: inherit;
  margin-top: 0;
  transform: translateY(1px);
}

.ss-form-select-field .ss-md-select[disabled] .md-select-value,
.ss-form-select-field .ss-md-select[disabled] .md-select-value > span {
  opacity: .72;
}

.ss-form-select-field.md-input-focused .ss-md-select .md-select-value,
.ss-form-select-field .ss-md-select:focus .md-select-value {
  box-shadow: 0 0 0 4px rgba(47, 166, 227, 0.12);
}

.ss-md-select-menu-container md-select-menu {
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.22);
  padding: .5rem;
}

.ss-md-select-menu-container md-content {
  padding: 0;
}

.ss-md-select-menu-container md-option {
  border-radius: 12px;
  min-height: 44px;
  padding: 0 .85rem;
}

.ss-md-select-menu-container md-option .md-text {
  font-size: .95rem;
  font-weight: 600;
}

.ss-md-select-menu-container md-option[selected] .md-text {
  font-weight: 800;
}

.ss-md-select-menu-container md-option:not([disabled]):focus,
.ss-md-select-menu-container md-option:not([disabled]):hover {
  background: rgba(47, 166, 227, 0.08);
}

body.theme-light .ss-form-select-field .ss-md-select .md-select-value {
  background: #f8fbff;
  border: 1px solid rgba(150, 178, 211, 0.55);
  color: #244264;
}

body.theme-light .ss-form-select-field .ss-md-select .md-select-value .md-select-icon,
body.theme-light .ss-form-select-field .ss-md-select .md-select-value > span {
  color: #244264;
}

body.theme-light .ss-form-select-field.md-input-focused .ss-md-select .md-select-value {
  border-color: rgba(47, 166, 227, 0.7);
  background: #ffffff;
}

body.theme-light .ss-md-select-menu-container md-select-menu {
  background: #ffffff;
  border: 1px solid rgba(186, 205, 229, 0.9);
}

body.theme-light .ss-md-select-menu-container md-option .md-text {
  color: #26415f;
}

body.theme-light .ss-md-select-menu-container md-option[selected] {
  background: rgba(47, 166, 227, 0.12);
}

body.theme-dark .ss-form-select-field .ss-md-select .md-select-value {
  background: rgba(16, 24, 38, 0.9);
  border: 1px solid rgba(89, 110, 145, 0.55);
  color: #eef4ff;
}

body.theme-dark .ss-form-select-field .ss-md-select .md-select-value .md-select-icon,
body.theme-dark .ss-form-select-field .ss-md-select .md-select-value > span {
  color: #eef4ff;
}

body.theme-dark .ss-form-select-field.md-input-focused .ss-md-select .md-select-value {
  border-color: rgba(82, 192, 255, 0.75);
  background: rgba(20, 30, 49, 0.98);
}

body.theme-dark .ss-md-select-menu-container md-select-menu {
  background: #152136;
  border: 1px solid rgba(76, 96, 132, 0.6);
}

body.theme-dark .ss-md-select-menu-container md-option .md-text {
  color: #edf3ff;
}

body.theme-dark .ss-md-select-menu-container md-option[selected] {
  background: rgba(82, 192, 255, 0.14);
}

.ss-form-date-field {
  position: relative;
}

.ss-form-date-field .ss-form-date-input {
  min-height: 56px;
  width: 100%;
  border-radius: 16px;
  padding: 0 3rem 0 1rem;
  font-size: .98rem;
  font-weight: 700;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.ss-form-date-field .ss-form-date-icon {
  position: absolute;
  right: 14px;
  top: 38px;
  font-size: 1.2rem;
  pointer-events: none;
  opacity: .8;
}

.ss-form-date-field.md-input-focused .ss-form-date-input,
.ss-form-date-field .ss-form-date-input:focus {
  box-shadow: 0 0 0 4px rgba(47, 166, 227, 0.12);
}

body.theme-light .ss-form-date-field .ss-form-date-input {
  background: #f8fbff;
  border: 1px solid rgba(150, 178, 211, 0.55);
  color: #244264;
}

body.theme-light .ss-form-date-field .ss-form-date-icon {
  color: #244264;
}

body.theme-light .ss-form-date-field .ss-form-date-input:focus,
body.theme-light .ss-form-date-field.md-input-focused .ss-form-date-input {
  background: #ffffff;
  border-color: rgba(47, 166, 227, 0.7);
}

body.theme-dark .ss-form-date-field .ss-form-date-input {
  background: rgba(16, 24, 38, 0.9);
  border: 1px solid rgba(89, 110, 145, 0.55);
  color: #eef4ff;
}

body.theme-dark .ss-form-date-field .ss-form-date-icon {
  color: #eef4ff;
}

body.theme-dark .ss-form-date-field .ss-form-date-input:focus,
body.theme-dark .ss-form-date-field.md-input-focused .ss-form-date-input {
  background: rgba(20, 30, 49, 0.98);
  border-color: rgba(82, 192, 255, 0.75);
}

.datepicker.dropdown-menu,
.datepicker-dropdown {
  border: 0;
  border-radius: 18px;
  padding: 12px;
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.22);
}

.datepicker table {
  width: 100%;
}

.datepicker table tr td,
.datepicker table tr th {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  font-weight: 600;
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.datepicker table tr th {
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.datepicker .datepicker-switch,
.datepicker .prev,
.datepicker .next {
  border-radius: 12px;
  font-weight: 800;
}

.datepicker table tr td.day:hover,
.datepicker table tr td.day.focused,
.datepicker .datepicker-switch:hover,
.datepicker .prev:hover,
.datepicker .next:hover,
.datepicker tfoot tr th:hover {
  transform: translateY(-1px);
}

body.theme-light .datepicker.dropdown-menu,
body.theme-light .datepicker-dropdown {
  background: #ffffff;
  border: 1px solid rgba(186, 205, 229, 0.92);
}

body.theme-light .datepicker table tr td,
body.theme-light .datepicker table tr th,
body.theme-light .datepicker .datepicker-switch,
body.theme-light .datepicker .prev,
body.theme-light .datepicker .next,
body.theme-light .datepicker tfoot tr th {
  color: #274361;
}

body.theme-light .datepicker table tr td.day:hover,
body.theme-light .datepicker table tr td.day.focused,
body.theme-light .datepicker .datepicker-switch:hover,
body.theme-light .datepicker .prev:hover,
body.theme-light .datepicker .next:hover,
body.theme-light .datepicker tfoot tr th:hover {
  background: rgba(47, 166, 227, 0.08);
}

body.theme-light .datepicker table tr td.today,
body.theme-light .datepicker table tr td.today:hover {
  background: rgba(255, 188, 52, 0.18);
  color: #9a5e00;
}

body.theme-light .datepicker table tr td.active,
body.theme-light .datepicker table tr td.active:hover {
  background: linear-gradient(135deg, #2fa6e3, #4f73d9);
  color: #ffffff;
}

body.theme-dark .datepicker.dropdown-menu,
body.theme-dark .datepicker-dropdown {
  background: #152136;
  border: 1px solid rgba(76, 96, 132, 0.6);
}

body.theme-dark .datepicker table tr td,
body.theme-dark .datepicker table tr th,
body.theme-dark .datepicker .datepicker-switch,
body.theme-dark .datepicker .prev,
body.theme-dark .datepicker .next,
body.theme-dark .datepicker tfoot tr th {
  color: #edf3ff;
}

body.theme-dark .datepicker table tr td.day:hover,
body.theme-dark .datepicker table tr td.day.focused,
body.theme-dark .datepicker .datepicker-switch:hover,
body.theme-dark .datepicker .prev:hover,
body.theme-dark .datepicker .next:hover,
body.theme-dark .datepicker tfoot tr th:hover {
  background: rgba(82, 192, 255, 0.12);
}

body.theme-dark .datepicker table tr td.today,
body.theme-dark .datepicker table tr td.today:hover {
  background: rgba(255, 188, 52, 0.2);
  color: #ffd57a;
}

body.theme-dark .datepicker table tr td.active,
body.theme-dark .datepicker table tr td.active:hover {
  background: linear-gradient(135deg, #2fa6e3, #4f73d9);
  color: #ffffff;
}

/* Date Field And Pickadate Overrides */
.ss-form-date-field::before,
.ss-form-date-field::after,
.ss-form-date-field .md-errors-spacer {
  display: none !important;
}

.ss-form-date-field label,
.ss-form-date-field.md-input-focused label,
.ss-form-date-field.md-input-has-value label {
  transform: none !important;
  position: static !important;
  margin-bottom: 0.45rem;
  display: block;
  width: 100%;
  font-size: 0.86rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em;
}

.ss-form-date-field .ss-form-date-input,
.ss-form-date-field input.ss-form-date-input,
.ss-sensor-form-panel .ss-form-date-field .ss-form-date-input {
  min-height: 56px;
  width: 100%;
  border-radius: 16px;
  padding: 0 3rem 0 1rem;
  font-size: .98rem;
  font-weight: 700;
  border-bottom: 1px solid transparent !important;
  box-sizing: border-box;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.ss-form-date-field .ss-form-date-icon {
  position: absolute;
  right: 14px;
  top: 38px;
  font-size: 1.2rem;
  pointer-events: none;
  opacity: .8;
}

.ss-form-date-field.md-input-focused .ss-form-date-input,
.ss-form-date-field .ss-form-date-input:focus {
  box-shadow: 0 0 0 4px rgba(47, 166, 227, 0.12);
}

body.theme-light .ss-form-date-field label,
body.theme-light .ss-form-date-field.md-input-focused label,
body.theme-light .ss-form-date-field.md-input-has-value label {
  color: #6c819d !important;
}

body.theme-light .ss-form-date-field .ss-form-date-input {
  background: #f8fbff;
  border: 1px solid rgba(150, 178, 211, 0.55);
  color: #244264;
}

body.theme-light .ss-form-date-field .ss-form-date-icon {
  color: #244264;
}

body.theme-light .ss-form-date-field .ss-form-date-input:focus,
body.theme-light .ss-form-date-field.md-input-focused .ss-form-date-input {
  background: #ffffff;
  border-color: rgba(47, 166, 227, 0.7);
}

body.theme-dark .ss-form-date-field label,
body.theme-dark .ss-form-date-field.md-input-focused label,
body.theme-dark .ss-form-date-field.md-input-has-value label {
  color: #8fa7c4 !important;
}

body.theme-dark .ss-form-date-field .ss-form-date-input {
  background: rgba(16, 24, 38, 0.9);
  border: 1px solid rgba(89, 110, 145, 0.55);
  color: #eef4ff;
}

body.theme-dark .ss-form-date-field .ss-form-date-icon {
  color: #eef4ff;
}

body.theme-dark .ss-form-date-field .ss-form-date-input:focus,
body.theme-dark .ss-form-date-field.md-input-focused .ss-form-date-input {
  background: rgba(20, 30, 49, 0.98);
  border-color: rgba(82, 192, 255, 0.75);
}

.picker {
  font-size: 14px;
}

.picker__holder {
  border: 0 !important;
  border-radius: 22px !important;
  box-shadow: 0 24px 56px rgba(15, 23, 42, 0.26) !important;
}

.picker__frame {
  min-width: 320px;
}

.picker__wrap,
.picker__box {
  border-radius: 22px !important;
}

.picker__box {
  padding: 0 !important;
  overflow: hidden;
}

.picker__header {
  padding: 1rem 1.1rem 0.85rem !important;
}

.picker__month,
.picker__year {
  font-weight: 800 !important;
  letter-spacing: 0.02em;
}

.picker__nav--prev,
.picker__nav--next {
  width: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
  transition: background-color .2s ease, transform .2s ease;
}

.picker__nav--prev:hover,
.picker__nav--next:hover {
  transform: translateY(-1px);
}

.picker__table {
  margin: 0 0 .35rem !important;
}

.picker__weekday {
  font-size: 0.74rem !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.picker__day,
.picker__year,
.picker__month {
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.picker__day {
  border-radius: 12px !important;
  font-weight: 700 !important;
}

.picker__day:hover,
.picker__year:hover,
.picker__month:hover {
  transform: translateY(-1px);
}

.picker__day--selected,
.picker__day--selected:hover,
.picker--focused .picker__day--selected {
  background: linear-gradient(135deg, #2fa6e3, #4f73d9) !important;
  color: #ffffff !important;
}

.picker__day--today {
  position: relative;
}

.picker__day--today:before {
  display: none !important;
}

.picker__footer {
  display: flex !important;
  justify-content: flex-end;
  gap: 0.45rem;
  padding: 0.8rem 1rem 1rem !important;
}

.picker__button--today,
.picker__button--clear,
.picker__button--close {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0.7rem 0.95rem !important;
  border-radius: 12px !important;
  font-size: 0.82rem !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.picker__button--today:hover,
.picker__button--clear:hover,
.picker__button--close:hover {
  transform: translateY(-1px);
}

body.theme-light .picker__holder,
body.theme-light .picker__wrap,
body.theme-light .picker__box {
  background: #ffffff !important;
}

body.theme-light .picker__holder {
  border: 1px solid rgba(186, 205, 229, 0.92) !important;
}

body.theme-light .picker__month,
body.theme-light .picker__year,
body.theme-light .picker__weekday,
body.theme-light .picker__day,
body.theme-light .picker__nav--prev,
body.theme-light .picker__nav--next {
  color: #274361 !important;
}

body.theme-light .picker__nav--prev:hover,
body.theme-light .picker__nav--next:hover,
body.theme-light .picker__day:hover,
body.theme-light .picker__day--highlighted,
body.theme-light .picker--focused .picker__day--highlighted {
  background: rgba(47, 166, 227, 0.08) !important;
}

body.theme-light .picker__day--today,
body.theme-light .picker__day--today:hover {
  background: rgba(255, 188, 52, 0.18) !important;
  color: #9a5e00 !important;
}

body.theme-light .picker__footer {
  border-top: 1px solid rgba(208, 222, 239, 0.78);
}

body.theme-light .picker__button--today,
body.theme-light .picker__button--clear,
body.theme-light .picker__button--close {
  background: #f4f8fd !important;
  color: #274361 !important;
}

body.theme-light .picker__button--today:hover,
body.theme-light .picker__button--clear:hover,
body.theme-light .picker__button--close:hover {
  background: rgba(47, 166, 227, 0.1) !important;
}

body.theme-dark .picker__holder,
body.theme-dark .picker__wrap,
body.theme-dark .picker__box {
  background: #152136 !important;
}

body.theme-dark .picker__holder {
  border: 1px solid rgba(76, 96, 132, 0.6) !important;
}

body.theme-dark .picker__month,
body.theme-dark .picker__year,
body.theme-dark .picker__weekday,
body.theme-dark .picker__day,
body.theme-dark .picker__nav--prev,
body.theme-dark .picker__nav--next {
  color: #edf3ff !important;
}

body.theme-dark .picker__nav--prev:hover,
body.theme-dark .picker__nav--next:hover,
body.theme-dark .picker__day:hover,
body.theme-dark .picker__day--highlighted,
body.theme-dark .picker--focused .picker__day--highlighted {
  background: rgba(82, 192, 255, 0.12) !important;
}

body.theme-dark .picker__day--today,
body.theme-dark .picker__day--today:hover {
  background: rgba(255, 188, 52, 0.2) !important;
  color: #ffd57a !important;
}

body.theme-dark .picker__footer {
  border-top: 1px solid rgba(69, 92, 127, 0.62);
}

body.theme-dark .picker__button--today,
body.theme-dark .picker__button--clear,
body.theme-dark .picker__button--close {
  background: rgba(18, 28, 44, 0.88) !important;
  color: #edf3ff !important;
}

body.theme-dark .picker__button--today:hover,
body.theme-dark .picker__button--clear:hover,
body.theme-dark .picker__button--close:hover {
  background: rgba(82, 192, 255, 0.12) !important;
}
/* Sensor Energy Input Overrides */
.ss-sensor-energy-input {
  min-height: 56px !important;
  border-radius: 16px !important;
  padding: 0 1rem !important;
  font-size: .96rem;
  font-weight: 700;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

body.theme-light .ss-sensor-energy-input {
  background: #f8fbff;
  border: 1px solid rgba(150, 178, 211, 0.55);
  color: #244264;
}

body.theme-light .ss-sensor-energy-input:focus {
  background: #ffffff;
  border-color: rgba(47, 166, 227, 0.7);
  box-shadow: 0 0 0 4px rgba(47, 166, 227, 0.12);
}

body.theme-dark .ss-sensor-energy-input {
  background: rgba(16, 24, 38, 0.9);
  border: 1px solid rgba(89, 110, 145, 0.55);
  color: #eef4ff;
}

body.theme-dark .ss-sensor-energy-input:focus {
  background: rgba(20, 30, 49, 0.98);
  border-color: rgba(82, 192, 255, 0.75);
  box-shadow: 0 0 0 4px rgba(47, 166, 227, 0.12);
}
/* Sensor Form Alignment And Picker Overlay Fixes */
.ss-sensor-form-panel [layout-gt-xs="row"] {
  align-items: flex-start;
}

.ss-form-select-field,
.ss-form-input-field,
.ss-form-date-field {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.ss-form-select-field::before,
.ss-form-select-field::after,
.ss-form-select-field .md-errors-spacer {
  display: none !important;
}

.ss-form-select-field label,
.ss-form-select-field.md-input-focused label,
.ss-form-select-field.md-input-has-value label {
  transform: none !important;
  position: static !important;
  margin-bottom: 0.45rem;
  display: block;
  width: 100%;
  font-size: 0.86rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em;
}

.ss-form-select-field .ss-md-select .md-select-value,
.ss-form-input-field .ss-form-input,
.ss-form-date-field .ss-form-date-input {
  box-shadow: inset 0 0 0 1px transparent;
}

body.theme-light .ss-form-select-field label,
body.theme-light .ss-form-select-field.md-input-focused label,
body.theme-light .ss-form-select-field.md-input-has-value label {
  color: #6c819d !important;
}

body.theme-light .ss-form-select-field .ss-md-select .md-select-value,
body.theme-light .ss-form-input-field .ss-form-input,
body.theme-light .ss-form-date-field .ss-form-date-input {
  border-color: rgba(150, 178, 211, 0.72) !important;
  box-shadow: inset 0 0 0 1px rgba(150, 178, 211, 0.72);
}

body.theme-light .ss-form-select-field.md-input-focused .ss-md-select .md-select-value,
body.theme-light .ss-form-input-field.md-input-focused .ss-form-input,
body.theme-light .ss-form-input-field .ss-form-input:focus,
body.theme-light .ss-form-date-field.md-input-focused .ss-form-date-input,
body.theme-light .ss-form-date-field .ss-form-date-input:focus {
  border-color: rgba(47, 166, 227, 0.82) !important;
  box-shadow: inset 0 0 0 1px rgba(47, 166, 227, 0.82), 0 0 0 4px rgba(47, 166, 227, 0.12);
}

body.theme-dark .ss-form-select-field label,
body.theme-dark .ss-form-select-field.md-input-focused label,
body.theme-dark .ss-form-select-field.md-input-has-value label {
  color: #8fa7c4 !important;
}

body.theme-dark .ss-form-select-field .ss-md-select .md-select-value,
body.theme-dark .ss-form-input-field .ss-form-input,
body.theme-dark .ss-form-date-field .ss-form-date-input {
  border-color: rgba(89, 110, 145, 0.72) !important;
  box-shadow: inset 0 0 0 1px rgba(89, 110, 145, 0.72);
}

body.theme-dark .ss-form-select-field.md-input-focused .ss-md-select .md-select-value,
body.theme-dark .ss-form-input-field.md-input-focused .ss-form-input,
body.theme-dark .ss-form-input-field .ss-form-input:focus,
body.theme-dark .ss-form-date-field.md-input-focused .ss-form-date-input,
body.theme-dark .ss-form-date-field .ss-form-date-input:focus {
  border-color: rgba(82, 192, 255, 0.82) !important;
  box-shadow: inset 0 0 0 1px rgba(82, 192, 255, 0.82), 0 0 0 4px rgba(47, 166, 227, 0.12);
}

.picker,
.picker__holder,
.picker__frame,
.picker__wrap {
  background: transparent !important;
}

body.theme-light .picker__holder,
body.theme-light .picker__wrap,
body.theme-dark .picker__holder,
body.theme-dark .picker__wrap {
  border: 0 !important;
}

body.theme-light .picker__box {
  background: #ffffff !important;
}

body.theme-dark .picker__box {
  background: #152136 !important;
}/* Sensor Form Final Consistency Fixes */
.ss-sensor-form-panel [layout-gt-xs="row"] {
  align-items: flex-start !important;
}
.ss-sensor-form-panel md-input-container.ss-form-select-field,
.ss-sensor-form-panel md-input-container.ss-form-input-field,
.ss-sensor-form-panel md-input-container.ss-form-date-field {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin: 0 0 1rem !important;
  padding-top: 0 !important;
}
.ss-form-select-field label,
.ss-form-input-field label,
.ss-form-date-field label,
.ss-form-select-field.md-input-focused label,
.ss-form-input-field.md-input-focused label,
.ss-form-date-field.md-input-focused label,
.ss-form-select-field.md-input-has-value label,
.ss-form-input-field.md-input-has-value label,
.ss-form-date-field.md-input-has-value label {
  line-height: 1.25;
}
.ss-form-select-field .ss-md-select .md-select-value,
.ss-form-input-field .ss-form-input,
.ss-form-date-field .ss-form-date-input {
  min-height: 56px !important;
  height: 56px !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-radius: 16px !important;
  background-clip: padding-box;
}
.ss-form-input-field .ss-form-input,
.ss-form-date-field .ss-form-date-input {
  display: block;
}
.ss-form-date-field .ss-form-date-input {
  padding-right: 3rem !important;
}
body.theme-light .ss-form-select-field .ss-md-select .md-select-value,
body.theme-light .ss-form-input-field .ss-form-input,
body.theme-light .ss-form-date-field .ss-form-date-input {
  background: #f8fbff !important;
  border-color: rgba(150, 178, 211, 0.82) !important;
  box-shadow: inset 0 0 0 1px rgba(150, 178, 211, 0.3) !important;
}
body.theme-light .ss-form-select-field.md-input-focused .ss-md-select .md-select-value,
body.theme-light .ss-form-input-field.md-input-focused .ss-form-input,
body.theme-light .ss-form-input-field .ss-form-input:focus,
body.theme-light .ss-form-date-field.md-input-focused .ss-form-date-input,
body.theme-light .ss-form-date-field .ss-form-date-input:focus {
  background: #ffffff !important;
  border-color: rgba(47, 166, 227, 0.84) !important;
  box-shadow: inset 0 0 0 1px rgba(47, 166, 227, 0.24), 0 0 0 4px rgba(47, 166, 227, 0.12) !important;
}
body.theme-dark .ss-form-select-field .ss-md-select .md-select-value,
body.theme-dark .ss-form-input-field .ss-form-input,
body.theme-dark .ss-form-date-field .ss-form-date-input {
  background: rgba(16, 24, 38, 0.94) !important;
  border-color: rgba(89, 110, 145, 0.82) !important;
  box-shadow: inset 0 0 0 1px rgba(89, 110, 145, 0.28) !important;
}
body.theme-dark .ss-form-select-field.md-input-focused .ss-md-select .md-select-value,
body.theme-dark .ss-form-input-field.md-input-focused .ss-form-input,
body.theme-dark .ss-form-input-field .ss-form-input:focus,
body.theme-dark .ss-form-date-field.md-input-focused .ss-form-date-input,
body.theme-dark .ss-form-date-field .ss-form-date-input:focus {
  background: rgba(20, 30, 49, 0.98) !important;
  border-color: rgba(82, 192, 255, 0.84) !important;
  box-shadow: inset 0 0 0 1px rgba(82, 192, 255, 0.24), 0 0 0 4px rgba(47, 166, 227, 0.12) !important;
}
.picker,
.picker__holder,
.picker__frame,
.picker__wrap {
  background: transparent !important;
}
.picker__holder,
.picker__frame,
.picker__wrap {
  border: 0 !important;
  box-shadow: none !important;
}
body.theme-light .picker__holder,
body.theme-light .picker__frame,
body.theme-light .picker__wrap,
body.theme-dark .picker__holder,
body.theme-dark .picker__frame,
body.theme-dark .picker__wrap {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
body.theme-light .picker__box {
  background: #ffffff !important;
  border: 1px solid rgba(186, 205, 229, 0.92) !important;
  box-shadow: 0 24px 56px rgba(15, 23, 42, 0.2) !important;
}
body.theme-dark .picker__box {
  background: #152136 !important;
  border: 1px solid rgba(76, 96, 132, 0.6) !important;
  box-shadow: 0 24px 56px rgba(4, 9, 18, 0.42) !important;
}
/* Light Picker Selected Day Contrast Fix */
body.theme-light .picker__day--selected,
body.theme-light .picker__day--selected:hover,
body.theme-light .picker--focused .picker__day--selected,
body.theme-light .picker__day--infocus.picker__day--selected,
body.theme-light .picker__day--outfocus.picker__day--selected {
  background: linear-gradient(135deg, #2f6fdb, #4f73d9) !important;
  color: #ffffff !important;
  font-weight: 800 !important;
}

body.theme-light .picker__day--today.picker__day--selected,
body.theme-light .picker__day--today.picker__day--selected:hover,
body.theme-light .picker--focused .picker__day--today.picker__day--selected {
  background: linear-gradient(135deg, #d79a1d, #f0b548) !important;
  color: #ffffff !important;
  font-weight: 800 !important;
}

/* Picker Footer Contrast And Width Fix */
.picker__frame {
  min-width: 380px !important;
  max-width: 380px !important;
}

.picker__box {
  min-width: 380px !important;
}

.picker__footer {
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  gap: 0.65rem !important;
}

.picker__button--today,
.picker__button--clear,
.picker__button--close {
  flex: 1 1 0;
  min-width: 108px !important;
  white-space: nowrap !important;
  line-height: 1.1 !important;
  text-align: center !important;
}

body.theme-light .picker__button--today,
body.theme-light .picker__button--clear,
body.theme-light .picker__button--close {
  background: #eef5ff !important;
  color: #1f3f66 !important;
  border: 1px solid rgba(120, 157, 201, 0.72) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.65), 0 6px 16px rgba(47, 84, 124, 0.08) !important;
}

body.theme-light .picker__button--today:hover,
body.theme-light .picker__button--clear:hover,
body.theme-light .picker__button--close:hover {
  background: #e3f0ff !important;
  color: #173655 !important;
  border-color: rgba(64, 127, 199, 0.82) !important;
}

body.theme-light .picker__button--today:before {
  color: #2a6cc6 !important;
}

body.theme-light .picker__button--clear:before {
  color: #d23b2a !important;
}

body.theme-light .picker__button--close:before {
  color: #6f7f93 !important;
}

/* Dark Select Overlay Readability Fix */
body.theme-dark .ss-md-select-menu-container,
body.theme-dark .ss-md-select-menu-container.md-active,
body.theme-dark .ss-md-select-menu-container md-select-menu,
body.theme-dark .ss-md-select-menu-container md-content {
  background: #152136 !important;
  border-color: rgba(76, 96, 132, 0.72) !important;
  color: #edf3ff !important;
}

body.theme-dark .ss-md-select-menu-container md-select-menu {
  box-shadow: 0 22px 56px rgba(4, 9, 18, 0.48) !important;
}

body.theme-dark .ss-md-select-menu-container md-option {
  background: transparent !important;
  color: #edf3ff !important;
}

body.theme-dark .ss-md-select-menu-container md-option .md-text,
body.theme-dark .ss-md-select-menu-container md-option[selected] .md-text,
body.theme-dark .ss-md-select-menu-container md-option[aria-selected="true"] .md-text,
body.theme-dark .ss-md-select-menu-container md-option[selected] span,
body.theme-dark .ss-md-select-menu-container md-option span {
  color: #edf3ff !important;
}

body.theme-dark .ss-md-select-menu-container md-option[selected],
body.theme-dark .ss-md-select-menu-container md-option[aria-selected="true"] {
  background: rgba(82, 192, 255, 0.16) !important;
}

body.theme-dark .ss-md-select-menu-container md-option:not([disabled]):hover,
body.theme-dark .ss-md-select-menu-container md-option:not([disabled]):focus,
body.theme-dark .ss-md-select-menu-container md-option.md-focused {
  background: rgba(82, 192, 255, 0.12) !important;
}

body.theme-dark .ss-md-select-menu-container md-option[disabled],
body.theme-dark .ss-md-select-menu-container md-option[disabled] .md-text {
  color: rgba(177, 195, 221, 0.42) !important;
}

/* Select Overlay Inner Padding Fix */
.ss-md-select-menu-container {
  padding: 0 !important;
}

.ss-md-select-menu-container md-select-menu {
  padding: 0.55rem !important;
  border-radius: 18px !important;
  overflow: visible !important;
  box-sizing: border-box;
}

.ss-md-select-menu-container md-content {
  padding: 0 !important;
  border-radius: 14px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  max-height: 320px !important;
  -webkit-overflow-scrolling: touch;
}

.ss-md-select-menu-container md-option {
  margin: 0 0 0.35rem 0 !important;
}

.ss-md-select-menu-container md-option:last-child {
  margin-bottom: 0 !important;
}


.ss-estations-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.ss-estations-header-actions {
  margin-left: auto;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.ss-estations-header-search {
  width: 280px;
  min-width: 280px;
}

.ss-estations-manager {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.ss-estations-manager-hero,
.ss-estations-table-panel {
  border-radius: 24px;
  border: 1px solid rgba(120, 150, 190, 0.16);
}

.ss-estations-manager-hero {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 18px;
  padding: 20px 22px;
}

.ss-estations-manager-hero-copy {
  flex: 1 1 auto;
}

.ss-estations-manager-kicker {
  font-size: 0.8rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 800;
}

.ss-estations-manager-summary {
  max-width: 680px;
  font-size: 0.98rem;
  line-height: 1.6;
}

.ss-estations-manager-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(160px, 220px));
  gap: 14px;
  min-width: 0;
  width: fit-content;
  max-width: 100%;
  align-self: flex-start;
  justify-content: flex-start;
  justify-items: stretch;
}

.ss-estations-manager-stat {
  border-radius: 18px;
  padding: 16px 18px;
  border: 1px solid rgba(120, 150, 190, 0.14);
}

.ss-estations-manager-stat-label {
  display: block;
  font-size: 0.76rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 8px;
  font-weight: 700;
}

.ss-estations-manager-stat-value {
  display: block;
  font-size: 2.45rem;
  line-height: 1;
  font-weight: 800;
}

body .ss-sensors-manager .ss-sensors-manager-hero,
body .ss-estations-manager .ss-estations-manager-hero {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  justify-items: start;
}

body .ss-sensors-manager .ss-sensors-manager-stats,
body .ss-estations-manager .ss-estations-manager-stats {
  width: fit-content;
  max-width: 100%;
  align-self: start;
  justify-self: start;
  justify-content: start;
  margin-left: 0 !important;
}

.ss-estations-table-panel {
  padding: 18px 18px 10px;
}

.ss-estations-table-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.ss-estations-table-title {
  font-size: 1.2rem;
  font-weight: 800;
}

.ss-estations-table-subtitle {
  font-size: 0.94rem;
  line-height: 1.55;
}

.ss-estation-catalog-wrap {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.ss-estation-catalog-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.ss-estation-catalog-card {
  min-width: 0;
}

.ss-estation-catalog-card-inner {
  border-radius: 26px;
  border: 1px solid rgba(120, 150, 190, 0.16);
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-height: 100%;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.ss-estation-catalog-card:hover .ss-estation-catalog-card-inner {
  transform: translateY(-2px);
}

.ss-estation-catalog-top {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

.ss-estation-catalog-visual {
  width: 92px;
  min-width: 92px;
  height: 92px;
  border-radius: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
}

.ss-estation-catalog-image {
  width: 80px;
  height: 80px;
  object-fit: contain;
  display: block;
}

.ss-estation-catalog-visual.has-station-image .ss-estation-catalog-icon {
  display: none;
}

.ss-estation-catalog-icon {
  font-size: 3rem;
  line-height: 1;
}

.ss-estation-catalog-head {
  flex: 1 1 auto;
  min-width: 0;
}

.ss-estation-catalog-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
}

.ss-estation-catalog-chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.ss-estation-catalog-name {
  font-size: 1.2rem;
  line-height: 1.25;
  font-weight: 800;
  margin-bottom: 6px;
  word-break: break-word;
}

.ss-estation-catalog-type {
  font-size: 0.94rem;
  line-height: 1.5;
  word-break: break-word;
}

.ss-estation-catalog-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}

.ss-estation-catalog-meta-item {
  min-width: 0;
}

.ss-estation-catalog-meta-label {
  display: block;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 6px;
}

.ss-estation-catalog-meta-value {
  display: block;
  font-size: 0.98rem;
  line-height: 1.5;
  word-break: break-word;
}

.ss-estation-catalog-empty {
  border-radius: 20px;
  padding: 28px 24px;
  text-align: center;
  font-size: 0.98rem;
  font-weight: 700;
}

body.theme-light .ss-estations-manager-hero,
body.theme-light .ss-estations-table-panel,
body.theme-light .ss-estation-catalog-card-inner {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border-color: rgba(120, 150, 190, 0.18);
  box-shadow: 0 18px 40px rgba(22, 46, 77, 0.08);
}

body.theme-light .ss-estations-manager-kicker,
body.theme-light .ss-estations-manager-stat-label,
body.theme-light .ss-estation-catalog-meta-label {
  color: #7d94b1;
}

body.theme-light .ss-estations-manager-summary,
body.theme-light .ss-estations-table-subtitle,
body.theme-light .ss-estation-catalog-type,
body.theme-light .ss-estation-catalog-meta-value,
body.theme-light .ss-estation-catalog-empty {
  color: #5e7695;
}

body.theme-light .ss-estations-table-title,
body.theme-light .ss-estations-manager-stat-value,
body.theme-light .ss-estation-catalog-name {
  color: #26415f;
}

body.theme-light .ss-estation-catalog-visual {
  background: linear-gradient(180deg, #eef5ff 0%, #e1edfb 100%);
  border: 1px solid rgba(168, 191, 223, 0.68);
}

body.theme-light .ss-estation-catalog-icon {
  color: #4a6fa5;
}

body.theme-light .ss-estation-catalog-chip {
  background: #e9f1fb;
  color: #4f6d91;
}

body.theme-light .ss-estation-catalog-chip-status.is-active {
  background: rgba(45, 181, 114, 0.14);
  color: #1f8b58;
}

body.theme-light .ss-estation-catalog-chip-status.is-inactive {
  background: rgba(255, 107, 107, 0.14);
  color: #d84f5f;
}

body.theme-light .ss-estation-catalog-empty {
  background: #f8fbff;
  border: 1px dashed rgba(148, 175, 207, 0.5);
}

body.theme-dark .ss-estations-manager-hero,
body.theme-dark .ss-estations-table-panel,
body.theme-dark .ss-estation-catalog-card-inner {
  background: linear-gradient(180deg, #202d42 0%, #1b273b 100%);
  border-color: rgba(92, 118, 156, 0.22);
  box-shadow: 0 20px 42px rgba(5, 11, 20, 0.34);
}

body.theme-dark .ss-estations-manager-kicker,
body.theme-dark .ss-estations-manager-stat-label,
body.theme-dark .ss-estation-catalog-meta-label {
  color: #91a8c6;
}

body.theme-dark .ss-estations-manager-summary,
body.theme-dark .ss-estations-table-subtitle,
body.theme-dark .ss-estation-catalog-type,
body.theme-dark .ss-estation-catalog-meta-value,
body.theme-dark .ss-estation-catalog-empty {
  color: #a2b7d4;
}

body.theme-dark .ss-estations-table-title,
body.theme-dark .ss-estations-manager-stat-value,
body.theme-dark .ss-estation-catalog-name {
  color: #eef4ff;
}

body.theme-dark .ss-estation-catalog-visual {
  background: linear-gradient(180deg, rgba(22, 34, 52, 0.95) 0%, rgba(16, 25, 39, 0.95) 100%);
  border: 1px solid rgba(79, 101, 137, 0.54);
}

body.theme-dark .ss-estation-catalog-icon {
  color: #76b8ff;
}

body.theme-dark .ss-estation-catalog-chip {
  background: rgba(255, 255, 255, 0.08);
  color: #d7e4f8;
}

body.theme-dark .ss-estation-catalog-chip-status.is-active {
  background: rgba(61, 204, 140, 0.14);
  color: #6de5ae;
}

body.theme-dark .ss-estation-catalog-chip-status.is-inactive {
  background: rgba(255, 107, 107, 0.16);
  color: #ff8d9c;
}

body.theme-dark .ss-estation-catalog-empty {
  background: rgba(18, 28, 44, 0.9);
  border: 1px dashed rgba(92, 118, 156, 0.42);
}

@media (max-width: 1599.98px) {
  .ss-estation-catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1199.98px) {
  .ss-estations-manager-hero {
    flex-direction: column;
  }

  .ss-estations-manager-stats {
    width: fit-content;
    max-width: 100%;
  }

  .ss-estation-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .ss-estations-header,
  .ss-estations-header-actions,
  .ss-estations-table-panel-head {
    flex-direction: column;
    align-items: stretch;
  }

  .ss-estations-header-search {
    width: 100%;
    min-width: 0;
  }

  .ss-estations-manager-stats,
  .ss-estation-catalog-meta-grid,
  .ss-estation-catalog-grid {
    grid-template-columns: 1fr;
  }
}


.ss-station-gateway-toolbar {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 22px;
    border-radius: 18px;
    margin-bottom: 18px;
}

.ss-station-gateway-title {
    display: block;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0.02em;
    margin-bottom: 4px;
}

.ss-station-gateway-subtitle {
    font-size: 13px;
    line-height: 1.6;
}

.ss-station-gateway-btn {
    min-width: 46px;
    width: 46px;
    height: 46px;
    padding: 0;
}

.ss-station-gateway-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 14px;
}

.ss-station-gateway-card {
    border-radius: 18px;
    padding: 18px 20px;
    border: 1px solid transparent;
}

.ss-station-gateway-name {
    font-size: 15px;
    font-weight: 800;
    margin-bottom: 10px;
}

.ss-station-gateway-meta {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 13px;
    line-height: 1.5;
}

.ss-station-gateway-empty {
    border-radius: 18px;
    padding: 18px 20px;
    font-size: 14px;
    line-height: 1.6;
}

body.theme-light .ss-station-gateway-toolbar,
body.theme-light .ss-station-gateway-card,
body.theme-light .ss-station-gateway-empty {
    background: #f6faff;
    border-color: rgba(103, 139, 191, 0.22);
    color: #35506f;
    box-shadow: 0 18px 34px rgba(56, 88, 128, 0.08);
}

body.theme-light .ss-station-gateway-subtitle,
body.theme-light .ss-station-gateway-meta,
body.theme-light .ss-station-gateway-empty {
    color: #6f86a7;
}

body.theme-dark .ss-station-gateway-toolbar,
body.theme-dark .ss-station-gateway-card,
body.theme-dark .ss-station-gateway-empty {
    background: rgba(15, 23, 34, 0.72);
    border-color: rgba(120, 156, 207, 0.18);
    color: #e6eef8;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.02);
}

body.theme-dark .ss-station-gateway-subtitle,
body.theme-dark .ss-station-gateway-meta,
body.theme-dark .ss-station-gateway-empty {
    color: #9fb2d0;
}

@media (max-width: 991px) {
    .ss-station-gateway-toolbar {
        flex-direction: column;
    }

    .ss-station-gateway-toolbar .ss-section-actions {
        width: 100%;
        justify-content: flex-start;
    }
}


.ss-station-lorawan-toggle-wrap {
  margin-top: 18px;
}

.ss-station-lorawan-toggle {
  position: relative;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 14px;
  width: 100% !important;
  max-width: 720px;
  min-height: auto !important;
  height: auto !important;
  padding: 14px 16px;
  margin: 0;
  border-radius: 18px;
  border: 1px solid rgba(120, 150, 190, 0.16);
  cursor: pointer;
}


.ss-station-lorawan-toggle.ss-zone-checkbox {
  width: 100% !important;
  height: auto !important;
}

.ss-station-lorawan-toggle input {
  inset: 0;
  width: 100%;
  height: 100%;
}

.ss-station-lorawan-toggle .ss-zone-checkbox-ui {
  margin-top: 2px;
  flex: 0 0 auto;
}

.ss-station-lorawan-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.ss-station-lorawan-copy strong {
  display: block;
  font-size: 0.98rem;
  line-height: 1.2;
}

.ss-station-lorawan-copy small {
  display: block;
  font-size: 0.9rem;
  line-height: 1.5;
}

body.theme-light .ss-station-lorawan-toggle {
  background: linear-gradient(180deg, #fbfdff 0%, #f4f8fe 100%);
}

body.theme-light .ss-station-lorawan-copy strong {
  color: #28466a;
}

body.theme-light .ss-station-lorawan-copy small {
  color: #6882a1;
}

body.theme-dark .ss-station-lorawan-toggle {
  background: linear-gradient(180deg, rgba(18, 30, 48, 0.92) 0%, rgba(15, 26, 42, 0.98) 100%);
  border-color: rgba(86, 113, 149, 0.24);
}

body.theme-dark .ss-station-lorawan-copy strong {
  color: #edf4ff;
}

body.theme-dark .ss-station-lorawan-copy small {
  color: #9ab1cd;
}

@media (max-width: 767px) {
  .ss-station-lorawan-toggle {
    max-width: 100%;
    padding: 12px 14px;
  }
}
