.ts-control{border:1px solid var(--bs-border-color);padding:.375rem .75rem;width:100%;overflow:hidden;position:relative;z-index:1;box-sizing:border-box;box-shadow:none;border-radius:var(--bs-border-radius);display:flex;flex-wrap:wrap}.ts-wrapper.multi.has-items .ts-control{padding:calc(.375rem - 1px) .75rem calc(.375rem - 4px)}.full .ts-control{background-color:var(--bs-body-bg)}.disabled .ts-control,.disabled .ts-control *{cursor:default!important}.focus .ts-control{box-shadow:none}.ts-control>*{vertical-align:baseline;display:inline-block}.ts-wrapper.multi .ts-control>div{cursor:pointer;margin:0 3px 3px 0;padding:1px 5px;background:#efefef;color:#343a40;border:0px solid #dee2e6;overflow:auto}.ts-wrapper.multi .ts-control>div.active{background:#0d6efd;color:#fff;border:0px solid rgba(0,0,0,0)}.ts-wrapper.multi.disabled .ts-control>div,.ts-wrapper.multi.disabled .ts-control>div.active{color:#878787;background:#fff;border:0px solid white}.ts-control>input{flex:1 1 auto;min-width:7rem;display:inline-block!important;padding:0!important;min-height:0!important;max-height:none!important;max-width:100%!important;margin:0!important;text-indent:0!important;border:0 none!important;background:none!important;line-height:inherit!important;-webkit-user-select:auto!important;-moz-user-select:auto!important;-ms-user-select:auto!important;user-select:auto!important;box-shadow:none!important}.ts-control>input::-ms-clear{display:none}.ts-control>input:focus{outline:none!important}.has-items .ts-control>input{margin:0 4px!important}.ts-control.rtl{text-align:right}.ts-control.rtl.single .ts-control:after{left:calc(.75rem + 5px);right:auto}.ts-control.rtl .ts-control>input{margin:0 4px 0 -2px!important}.disabled .ts-control{opacity:1;background-color:var(--bs-secondary-bg)}.input-hidden .ts-control>input{opacity:0;position:absolute;left:-10000px}.ts-dropdown{position:absolute;top:100%;left:0;width:100%;z-index:10;border:1px solid #d0d0d0;background:var(--bs-body-bg);margin:.25rem 0 0;border-top:0 none;box-sizing:border-box;box-shadow:0 1px 3px #0000001a;border-radius:0 0 var(--bs-border-radius) var(--bs-border-radius)}.ts-dropdown [data-selectable]{cursor:pointer;overflow:hidden}.ts-dropdown [data-selectable] .highlight{background:#ffed2866;border-radius:1px}.ts-dropdown .option,.ts-dropdown .optgroup-header,.ts-dropdown .no-results,.ts-dropdown .create{padding:3px .75rem}.ts-dropdown .option,.ts-dropdown [data-disabled],.ts-dropdown [data-disabled] [data-selectable].option{cursor:inherit;opacity:.5}.ts-dropdown [data-selectable].option{opacity:1;cursor:pointer}.ts-dropdown .optgroup:first-child .optgroup-header{border-top:0 none}.ts-dropdown .optgroup-header{color:#6c757d;background:var(--bs-body-bg);cursor:default}.ts-dropdown .active{background-color:var(--bs-tertiary-bg);color:var(--bs-body-color)}.ts-dropdown .active.create{color:var(--bs-body-color)}.ts-dropdown .create{color:#343a4080}.ts-dropdown .spinner{display:inline-block;width:30px;height:30px;margin:3px .75rem}.ts-dropdown .spinner:after{content:" ";display:block;width:24px;height:24px;margin:3px;border-radius:50%;border:5px solid #d0d0d0;border-color:#d0d0d0 transparent #d0d0d0 transparent;animation:lds-dual-ring 1.2s linear infinite}@keyframes lds-dual-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ts-dropdown-content{overflow:hidden auto;max-height:200px;scroll-behavior:smooth}.ts-wrapper.plugin-drag_drop .ts-dragging{color:transparent!important}.ts-wrapper.plugin-drag_drop .ts-dragging>*{visibility:hidden!important}.plugin-checkbox_options:not(.rtl) .option input{margin-right:.5rem}.plugin-checkbox_options.rtl .option input{margin-left:.5rem}.plugin-clear_button{--ts-pr-clear-button: 1em}.plugin-clear_button .clear-button{opacity:0;position:absolute;top:50%;transform:translateY(-50%);right:calc(.75rem - 5px);margin-right:0!important;background:transparent!important;transition:opacity .5s;cursor:pointer}.plugin-clear_button.form-select .clear-button,.plugin-clear_button.single .clear-button{right:max(var(--ts-pr-caret),.75rem)}.plugin-clear_button.focus.has-items .clear-button,.plugin-clear_button:not(.disabled):hover.has-items .clear-button{opacity:1}.ts-wrapper .dropdown-header{position:relative;padding:6px .75rem;border-bottom:1px solid #d0d0d0;background:color-mix(var(--bs-body-bg),#d0d0d0,85%);border-radius:var(--bs-border-radius) var(--bs-border-radius) 0 0}.ts-wrapper .dropdown-header-close{position:absolute;right:.75rem;top:50%;color:#343a40;opacity:.4;margin-top:-12px;line-height:20px;font-size:20px!important}.ts-wrapper .dropdown-header-close:hover{color:#000}.plugin-dropdown_input.focus.dropdown-active .ts-control{box-shadow:none;border:1px solid var(--bs-border-color);box-shadow:var(--bs-box-shadow-inset)}.plugin-dropdown_input .dropdown-input{border:1px solid #d0d0d0;border-width:0 0 1px;display:block;padding:.375rem .75rem;box-shadow:none;width:100%;background:transparent}.plugin-dropdown_input.focus .ts-dropdown .dropdown-input{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.plugin-dropdown_input .items-placeholder{border:0 none!important;box-shadow:none!important;width:100%}.plugin-dropdown_input.has-items .items-placeholder,.plugin-dropdown_input.dropdown-active .items-placeholder{display:none!important}.ts-wrapper.plugin-input_autogrow.has-items .ts-control>input{min-width:0}.ts-wrapper.plugin-input_autogrow.has-items.focus .ts-control>input{flex:none;min-width:4px}.ts-wrapper.plugin-input_autogrow.has-items.focus .ts-control>input::-ms-input-placeholder{color:transparent}.ts-wrapper.plugin-input_autogrow.has-items.focus .ts-control>input::placeholder{color:transparent}.ts-dropdown.plugin-optgroup_columns .ts-dropdown-content{display:flex}.ts-dropdown.plugin-optgroup_columns .optgroup{border-right:1px solid #f2f2f2;border-top:0 none;flex-grow:1;flex-basis:0;min-width:0}.ts-dropdown.plugin-optgroup_columns .optgroup:last-child{border-right:0 none}.ts-dropdown.plugin-optgroup_columns .optgroup:before{display:none}.ts-dropdown.plugin-optgroup_columns .optgroup-header{border-top:0 none}.ts-wrapper.plugin-remove_button .item{display:inline-flex;align-items:center}.ts-wrapper.plugin-remove_button .item .remove{color:inherit;text-decoration:none;vertical-align:middle;display:inline-block;padding:0 5px;border-radius:0 2px 2px 0;box-sizing:border-box}.ts-wrapper.plugin-remove_button .item .remove:hover{background:#0000000d}.ts-wrapper.plugin-remove_button.disabled .item .remove:hover{background:none}.ts-wrapper.plugin-remove_button .remove-single{position:absolute;right:0;top:0;font-size:23px}.ts-wrapper.plugin-remove_button:not(.rtl) .item{padding-right:0!important}.ts-wrapper.plugin-remove_button:not(.rtl) .item .remove{border-left:1px solid #dee2e6;margin-left:5px}.ts-wrapper.plugin-remove_button:not(.rtl) .item.active .remove{border-left-color:#0000}.ts-wrapper.plugin-remove_button:not(.rtl).disabled .item .remove{border-left-color:#fff}.ts-wrapper.plugin-remove_button.rtl .item{padding-left:0!important}.ts-wrapper.plugin-remove_button.rtl .item .remove{border-right:1px solid #dee2e6;margin-right:5px}.ts-wrapper.plugin-remove_button.rtl .item.active .remove{border-right-color:#0000}.ts-wrapper.plugin-remove_button.rtl.disabled .item .remove{border-right-color:#fff}:root{--ts-pr-clear-button: 0px;--ts-pr-caret: 0px;--ts-pr-min: .75rem}.ts-wrapper.single .ts-control,.ts-wrapper.single .ts-control input{cursor:pointer}.ts-control:not(.rtl){padding-right:max(var(--ts-pr-min),var(--ts-pr-clear-button) + var(--ts-pr-caret))!important}.ts-control.rtl{padding-left:max(var(--ts-pr-min),var(--ts-pr-clear-button) + var(--ts-pr-caret))!important}.ts-wrapper{position:relative}.ts-dropdown,.ts-control,.ts-control input{color:#343a40;font-family:inherit;font-size:inherit;line-height:1.5}.ts-control,.ts-wrapper.single.input-active .ts-control{background:var(--bs-body-bg);cursor:text}.ts-hidden-accessible{border:0!important;clip:rect(0 0 0 0)!important;-webkit-clip-path:inset(50%)!important;clip-path:inset(50%)!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;white-space:nowrap!important}.ts-dropdown,.ts-dropdown.form-control,.ts-dropdown.form-select{height:auto;padding:0;z-index:1000;background:var(--bs-body-bg);border:1px solid var(--bs-border-color-translucent);border-radius:.375rem;box-shadow:0 6px 12px #0000002d}.ts-dropdown .optgroup-header{font-size:.875rem;line-height:1.5}.ts-dropdown .optgroup:first-child:before{display:none}.ts-dropdown .optgroup:before{content:" ";display:block;height:0;overflow:hidden;border-top:1px solid var(--bs-border-color-translucent);margin:.5rem -.75rem}.ts-dropdown .create{padding-left:.75rem}.ts-dropdown-content{padding:5px 0}.ts-control{transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion:reduce){.ts-control{transition:none}}.ts-control{display:flex;align-items:center}.focus .ts-control{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.ts-control .item{display:flex;align-items:center}.ts-control input::-ms-input-placeholder{color:var(--bs-secondary-color, #a7aeb8);opacity:1}.ts-control input::placeholder{color:var(--bs-secondary-color, #a7aeb8);opacity:1}.ts-wrapper.is-invalid,.was-validated .invalid,.was-validated :invalid+.ts-wrapper{border-color:var(--bs-form-invalid-color)}.ts-wrapper.is-invalid:not(.single),.was-validated .invalid:not(.single),.was-validated :invalid+.ts-wrapper:not(.single){background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem);background-repeat:no-repeat}.ts-wrapper.is-invalid.single,.was-validated .invalid.single,.was-validated :invalid+.ts-wrapper.single{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem);background-repeat:no-repeat}.ts-wrapper.is-invalid.focus .ts-control,.was-validated .invalid.focus .ts-control,.was-validated :invalid+.ts-wrapper.focus .ts-control{border-color:var(--bs-form-invalid-color);box-shadow:0 0 0 .25rem rgba(var(--bs-form-invalid-color),.25)}.ts-wrapper.is-valid,.was-validated .valid,.was-validated :valid+.ts-wrapper{border-color:var(--bs-form-valid-color)}.ts-wrapper.is-valid:not(.single),.was-validated .valid:not(.single),.was-validated :valid+.ts-wrapper:not(.single){background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e");background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem);background-repeat:no-repeat}.ts-wrapper.is-valid.single,.was-validated .valid.single,.was-validated :valid+.ts-wrapper.single{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem);background-repeat:no-repeat}.ts-wrapper.is-valid.focus .ts-control,.was-validated .valid.focus .ts-control,.was-validated :valid+.ts-wrapper.focus .ts-control{border-color:var(--bs-form-valid-color);box-shadow:0 0 0 .25rem rgba(var(--bs-form-valid-color),.25)}.ts-wrapper{min-height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));display:flex}.input-group-sm>.ts-wrapper,.ts-wrapper.form-select-sm,.ts-wrapper.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}.input-group-sm>.ts-wrapper .ts-control,.ts-wrapper.form-select-sm .ts-control,.ts-wrapper.form-control-sm .ts-control{border-radius:var(--bs-border-radius-sm);font-size:.875rem}.input-group-sm>.ts-wrapper.has-items .ts-control,.ts-wrapper.form-select-sm.has-items .ts-control,.ts-wrapper.form-control-sm.has-items .ts-control{font-size:.875rem}.input-group-sm>.ts-wrapper.multi.has-items .ts-control,.ts-wrapper.form-select-sm.multi.has-items .ts-control,.ts-wrapper.form-control-sm.multi.has-items .ts-control{padding-top:calc((calc(1.5em + .5rem + calc(var(--bs-border-width) * 2)) - 1.5 * .875rem - calc((var(--bs-border-width) + 1px) * 2)) / 2)!important}.ts-wrapper.multi.has-items .ts-control{padding-left:calc(.75rem - 5px);--ts-pr-min: calc(.75rem - 5px) }.ts-wrapper.multi .ts-control>div{border-radius:calc(var(--bs-border-radius) - 1px)}.input-group-lg>.ts-wrapper,.ts-wrapper.form-control-lg,.ts-wrapper.form-select-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.input-group-lg>.ts-wrapper .ts-control,.ts-wrapper.form-control-lg .ts-control,.ts-wrapper.form-select-lg .ts-control{border-radius:var(--bs-border-radius-lg);font-size:1.25rem}.ts-wrapper:not(.form-control,.form-select){padding:0;border:none;height:auto;box-shadow:none;background:none}.ts-wrapper:not(.form-control,.form-select).single .ts-control{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px}.ts-wrapper.form-select,.ts-wrapper.single{--ts-pr-caret: 2.25rem}.ts-wrapper.form-control,.ts-wrapper.form-select{padding:0!important;height:auto;box-shadow:none;display:flex}.ts-wrapper.form-control .ts-control,.ts-wrapper.form-control.single.input-active .ts-control,.ts-wrapper.form-select .ts-control,.ts-wrapper.form-select.single.input-active .ts-control{border:none!important}.ts-wrapper.form-control:not(.disabled) .ts-control,.ts-wrapper.form-control:not(.disabled).single.input-active .ts-control,.ts-wrapper.form-select:not(.disabled) .ts-control,.ts-wrapper.form-select:not(.disabled).single.input-active .ts-control{background:transparent!important}.input-group>.ts-wrapper{flex-grow:1;width:1%}.input-group>.ts-wrapper:not(:nth-child(2))>.ts-control{border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.ts-wrapper:not(:last-child)>.ts-control{border-top-right-radius:0;border-bottom-right-radius:0}.form-select .ts-dropdown,.form-select .ts-control,.form-select .ts-control input{color:var(--bs-body-color)}:root{--app-primary: #f9a11b;--app-primary-strong: #ea9208;--app-canvas: #fcfbf8;--app-surface: #ffffff;--app-surface-muted: #f7f4ee;--app-surface-soft: #fff8ed;--app-border: #ece6da;--app-border-strong: #e4dac7;--app-text: #1f1f1c;--app-text-muted: #6e675c;--app-sidebar: #161a1f;--app-sidebar-active: linear-gradient(180deg, rgba(249, 161, 27, .28), rgba(161, 98, 7, .42));--app-success: #2fa25f;--app-warning: #f59e0b;--app-danger: #ef4444;--app-info: #3b82f6;--app-update: #8b5cf6;--app-shadow: 0 10px 34px rgba(20, 20, 20, .05);--app-radius-xl: 18px;--app-radius-lg: 14px;--app-radius-md: 12px;--app-shell-width: 208px}html,body,#root{min-height:100%}body,body[data-bs-theme=light],body[data-bs-theme=dark].app-body{margin:0;background:var(--app-canvas);color:var(--app-text);font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}a{color:inherit}button,input,select{font:inherit}svg{display:block}.app-shell{display:flex;min-height:100vh;background:var(--app-canvas)}.app-shell__main{flex:1;min-width:0;display:flex;flex-direction:column}.app-shell__content{flex:1;padding:18px 18px 0}.app-sidebar{width:var(--app-shell-width);min-width:var(--app-shell-width);background:radial-gradient(circle at top,rgba(249,161,27,.08),transparent 18%),var(--app-sidebar);color:#ffffffe0;padding:16px 12px;display:flex;flex-direction:column;gap:18px}.app-sidebar__brand-link{display:flex;align-items:center;gap:10px;text-decoration:none;padding:6px 8px 12px}.app-sidebar__brand-mark{width:32px;height:32px;border-radius:10px;object-fit:contain}.app-sidebar__brand-title{font-size:.98rem;font-weight:700;color:#fff}.app-sidebar__brand-subtitle{margin-top:3px;color:#ffffffb8;font-size:.78rem}.app-sidebar__nav,.app-sidebar__footer{display:flex;flex-direction:column}.app-sidebar__section{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.app-sidebar__section-label{color:#ffffff8f;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;padding:0 10px 6px}.app-sidebar__link{display:flex;align-items:center;gap:12px;min-height:42px;padding:0 12px;border-radius:10px;color:#ffffffdb;text-decoration:none;position:relative}.app-sidebar__link:hover,.app-sidebar__link.is-active{background:var(--app-sidebar-active);color:#fff}.app-sidebar__link.is-active:before{content:"";position:absolute;left:-12px;top:0;bottom:0;width:3px;background:var(--app-primary);border-radius:0 6px 6px 0}.app-sidebar__icon{width:18px;height:18px;display:inline-flex}.app-sidebar__icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.app-sidebar__support{margin-top:auto;padding:14px 10px 12px;border-top:1px solid rgba(255,255,255,.1)}.app-sidebar__support-copy{color:#ffffffc2;font-size:.85rem;line-height:1.5}.app-sidebar__footer{gap:8px;border-top:1px solid rgba(255,255,255,.1);padding-top:10px}.app-sidebar__account-card{margin-top:8px;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:#ffffff0d}.app-sidebar__account-avatar{width:32px;height:32px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--app-primary);color:var(--app-sidebar);font-size:.85rem;font-weight:700}.app-sidebar__account-name{font-size:.86rem;font-weight:600}.app-sidebar__account-email{font-size:.76rem;color:#ffffffa8}.app-footer{display:flex;justify-content:space-between;gap:16px;padding:0 22px 18px;color:var(--app-text-muted);font-size:.86rem}.top-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:0 0 14px;border-bottom:1px solid var(--app-border);margin-bottom:14px}.top-bar__title-row{display:flex;align-items:center;gap:12px}.top-bar__title{margin:0;font-size:1.08rem;line-height:1.2;font-weight:700;color:var(--app-text)}.top-bar__subtitle{margin:4px 0 0;color:var(--app-text-muted);font-size:.95rem}.top-bar__badge{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border-radius:10px;border:1px solid rgba(249,161,27,.3);background:#f9a11b14;color:var(--app-primary-strong);font-weight:600}.top-bar__aside{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.top-bar__filters,.top-bar__actions,.toolbar-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar-input{min-width:200px;display:flex;align-items:center;gap:8px;height:38px;padding:0 12px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface)}.toolbar-input svg{width:16px;height:16px;fill:none;stroke:var(--app-text-muted);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.toolbar-input input{border:0;outline:none;background:transparent;width:100%;color:var(--app-text)}.toolbar-button,.app-control{min-height:38px;border-radius:10px;border:1px solid var(--app-border);background:var(--app-surface);color:var(--app-text);padding:0 12px;box-shadow:none}.station-select-control,.inverter-select-control,.app-select-wrapper--station,.app-select-wrapper--inverter{width:var(--app-select-width, 24%);min-width:var(--app-select-min-width, 220px)}.app-select-wrapper .ts-control{display:flex;align-items:center;flex-wrap:nowrap;min-height:38px;height:38px;border-radius:10px;border:1px solid var(--app-border);background-color:var(--app-surface);color:var(--app-text);box-shadow:none;padding:7px 12px;opacity:1;overflow:hidden}.app-select-wrapper .ts-control input{min-width:0!important;color:var(--app-text);background:transparent}.app-select-wrapper.single .ts-control>.item,.app-select-wrapper .ts-control>[data-ts-item]{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-select-wrapper .ts-dropdown,.station-select-dropdown,.inverter-select-dropdown{background:#fff!important;background-color:#fff!important;border:1px solid var(--app-border)!important;border-radius:12px;box-shadow:var(--app-shadow);opacity:1!important}.app-select-wrapper .ts-dropdown .ts-dropdown-content,.app-select-wrapper .ts-dropdown .option,.app-select-wrapper .ts-dropdown .active,.station-select-dropdown .ts-dropdown-content,.station-select-dropdown .option,.station-select-dropdown .active,.inverter-select-dropdown .ts-dropdown-content,.inverter-select-dropdown .option,.inverter-select-dropdown .active{background:#fff!important;background-color:#fff!important;opacity:1!important}.app-select-wrapper .ts-dropdown .option:hover,.app-select-wrapper .ts-dropdown .option.active,.app-select-wrapper .ts-dropdown .option.selected,.app-select-wrapper .ts-dropdown .option[data-selectable].active,.station-select-dropdown .option:hover,.station-select-dropdown .option.active,.station-select-dropdown .option.selected,.station-select-dropdown .option[data-selectable].active,.inverter-select-dropdown .option:hover,.inverter-select-dropdown .option.active,.inverter-select-dropdown .option.selected,.inverter-select-dropdown .option[data-selectable].active{background:#f7f4ee!important;background-color:#f7f4ee!important}.toolbar-button{font-weight:600}.toolbar-button.is-primary{border-color:#f9a11b52;background:var(--app-primary);color:#fff}.toolbar-button.is-muted{background:var(--app-surface-muted)}.app-page-section{margin-bottom:14px}.page-tabs{display:flex;align-items:center;gap:14px;padding:0 2px 8px;border-bottom:1px solid var(--app-border);margin-bottom:18px;overflow-x:auto}.page-tabs__item{border:none;background:transparent;color:var(--app-text-muted);padding:12px 2px;font-weight:500;border-bottom:2px solid transparent;white-space:nowrap}.page-tabs__item.is-active{color:var(--app-primary-strong);border-bottom-color:var(--app-primary)}.app-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:14px}.app-kpi-grid.is-six{grid-template-columns:repeat(6,minmax(0,1fr))}.app-card,.kpi-card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius-xl);box-shadow:var(--app-shadow)}.app-card{padding:14px 16px}.app-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.app-card__title{margin:0;font-size:.98rem;font-weight:700;color:var(--app-text)}.app-card__subtitle{margin:4px 0 0;color:var(--app-text-muted);font-size:.87rem}.kpi-card{padding:14px;display:grid;grid-template-columns:54px 1fr;gap:12px;align-items:start}.kpi-card__icon{width:54px;height:54px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--app-surface-soft);color:var(--app-primary)}.kpi-card__icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.kpi-card--green .kpi-card__icon{background:#2fa25f1f;color:var(--app-success)}.kpi-card--blue .kpi-card__icon{background:#3b82f61f;color:var(--app-info)}.kpi-card--red .kpi-card__icon{background:#ef44441f;color:var(--app-danger)}.kpi-card--purple .kpi-card__icon{background:#8b5cf61f;color:var(--app-update)}.kpi-card__label{color:var(--app-text);font-size:.9rem}.kpi-card__value-row{display:flex;align-items:flex-end;gap:6px;margin-top:6px}.kpi-card__value{font-size:1.1rem;font-weight:700}.kpi-card__unit{color:var(--app-text-muted);font-size:.86rem;padding-bottom:2px}.kpi-card__meta-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;color:var(--app-text-muted);font-size:.82rem}.kpi-card__trend{color:var(--app-success);font-weight:600}.kpi-card__trend--green{color:var(--app-success)}.kpi-card__trend--red{color:var(--app-danger)}.app-grid{display:grid;gap:14px;margin-bottom:14px}.app-grid--dashboard-mid{grid-template-columns:minmax(0,1.35fr) minmax(0,1.05fr)}.app-grid--dashboard-bottom{grid-template-columns:minmax(0,1.45fr) minmax(0,1.15fr) 280px}.app-grid--plant-main{grid-template-columns:minmax(0,1.55fr) .95fr}.app-grid--plant-overview-bottom{grid-template-columns:minmax(0,1.1fr) minmax(0,1.1fr) .8fr}.app-grid--plant-bottom{grid-template-columns:.95fr 1.35fr .95fr}.app-grid--device-bottom{grid-template-columns:minmax(0,1.35fr) .72fr .92fr}.app-grid--device-main{grid-template-columns:minmax(0,1.65fr) .95fr}.app-grid--alerts-main{grid-template-columns:minmax(0,1.45fr) .9fr}.account-password-grid{display:grid;grid-template-columns:minmax(0,820px);justify-content:center;gap:14px;margin-bottom:14px}.account-password-form{display:grid;gap:16px}.account-password-field{display:grid;gap:8px}.account-password-field__label{font-size:.82rem;font-weight:600;color:var(--app-text-muted);text-transform:uppercase;letter-spacing:.04em}.account-password-input-wrap{display:flex;align-items:center;min-height:46px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);overflow:hidden}.account-password-input-wrap:focus-within{border-color:color-mix(in srgb,var(--app-primary) 52%,white);box-shadow:0 0 0 3px #f9a11b1f}.account-password-input{width:100%;border:none;outline:none;padding:0 14px;background:transparent;color:var(--app-text)}.account-password-toggle{width:42px;height:42px;border:none;border-left:1px solid var(--app-border);background:transparent;color:var(--app-text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.account-password-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.account-password-banner{padding:12px 14px;border-radius:12px;font-size:.9rem;font-weight:500}.account-password-banner.is-danger{background:#ef444414;border:1px solid rgba(239,68,68,.18);color:#b42318}.account-password-banner.is-success{background:#2fa25f1a;border:1px solid rgba(47,162,95,.18);color:#19703a}.account-password-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding-top:4px}.account-password-link{border:none;padding:0;background:transparent;color:var(--app-primary-strong);font-size:.84rem;font-weight:600;cursor:pointer}.app-empty-state{min-height:120px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;text-align:center;color:var(--app-text-muted)}.app-badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:0 10px;border-radius:8px;font-size:.78rem;font-weight:600;white-space:nowrap;text-transform:capitalize}.app-badge.is-success{background:#2fa25f1f;color:var(--app-success)}.app-badge.is-warning{background:#f59e0b1f;color:var(--app-warning)}.app-badge.is-danger{background:#ef44441f;color:var(--app-danger)}.app-badge.is-info{background:#3b82f61f;color:var(--app-info)}.app-badge.is-neutral{background:#f1f3f6;color:var(--app-text-muted)}.stack-list{display:flex;flex-direction:column}.stack-list__item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--app-border)}.stack-list__item:last-child{border-bottom:none}.table-primary{font-size:.92rem;font-weight:600}.table-secondary{margin-top:4px;color:var(--app-text-muted);font-size:.83rem;line-height:1.45}.app-table{overflow-x:auto}.app-table table{width:100%;border-collapse:collapse}.app-table th,.app-table td{padding:11px 10px;border-bottom:1px solid var(--app-border);vertical-align:top}.app-table th{color:var(--app-text-muted);font-size:.77rem;font-weight:600;text-align:left}.app-table tbody tr:last-child td{border-bottom:none}.app-table .is-right{text-align:right}.app-table__empty{color:var(--app-text-muted);text-align:center}.table-button{border:none;padding:0;background:transparent;text-align:left}.app-divider{border-top:1px solid var(--app-border);margin:12px 0}.app-page-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 14px}.app-page-meta__item{padding:12px 14px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface);box-shadow:var(--app-shadow)}.app-page-meta__label{color:var(--app-text-muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.05em}.app-page-meta__value{margin-top:6px;font-size:.95rem;font-weight:600}.detail-list{display:grid;gap:8px 16px}.detail-list__item{min-height:42px}.detail-list__label{color:var(--app-text-muted);font-size:.78rem;margin-bottom:5px}.detail-list__value{font-size:.9rem;font-weight:500}.app-chart{width:100%}.app-chart .recharts-surface{overflow:visible}.app-chart-tooltip{min-width:150px;border-radius:12px;background:#181815f0;color:#f8f7f3;padding:10px 12px;font-size:.78rem;line-height:1.45;box-shadow:0 12px 28px #1414142e}.app-chart-tooltip__label{font-weight:700;margin-bottom:6px}.app-chart-tooltip__body{display:grid;gap:6px}.app-chart-tooltip__row,.app-chart-tooltip__series,.app-chart-legend,.app-chart-legend__item{display:flex;align-items:center}.app-chart-tooltip__row,.app-chart-legend{justify-content:space-between;gap:12px}.app-chart-tooltip__series,.app-chart-legend__item{gap:8px}.app-chart-tooltip__dot,.app-chart-legend__dot{width:10px;height:10px;border-radius:999px;flex:0 0 auto}.app-chart-tooltip__value{font-weight:600}.app-chart-legend{flex-wrap:wrap;color:var(--app-text-muted);font-size:.82rem;padding:0 0 8px}.portfolio-map{display:grid;gap:12px}.portfolio-map__canvas{min-height:320px;border-radius:12px;overflow:hidden;background:#e8f0f8}.portfolio-map__viewport,.portfolio-map__canvas .jvm-container,.portfolio-map__canvas .jvm-map{width:100%;height:100%}.portfolio-map__legend{display:grid;gap:8px}.portfolio-map__legend-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px}.portfolio-map__legend-dot{width:10px;height:10px;border-radius:999px;background:var(--app-primary)}.portfolio-map__legend-label{font-size:.86rem;font-weight:500}.portfolio-map__legend-meta{color:var(--app-text-muted);font-size:.82rem}.topology-preview{display:grid;gap:14px}.topology-preview__device{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid var(--app-border);border-radius:14px;padding:12px;background:var(--app-surface-muted)}.topology-preview__nodes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.topology-preview__node{border:1px solid var(--app-border);border-radius:12px;padding:12px}.dd-hero-meta{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}.dd-hero-meta__item{position:relative;color:var(--app-text-muted);font-size:.92rem}.dd-hero-meta__item:not(:last-child):after{content:"•";margin-left:16px;color:var(--app-border-strong)}.dd-date-button{min-width:210px}.dd-layout-top,.dd-layout-bottom{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(330px,.98fr);gap:14px;margin-bottom:14px}.dd-topology-card .app-card__header{margin-bottom:12px}.dd-topology-shell{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(280px,.9fr);gap:14px;align-items:stretch}.dd-topology-main,.dd-topology-side{display:grid;gap:12px}.dd-topology-chart-wrap,.dd-topology-detail-wrap,.dd-topology-stat,.dd-topology-legend{border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface)}.dd-topology-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dd-topology-stat{padding:12px}.dd-topology-stat__label{color:var(--app-text-muted);font-size:.78rem}.dd-topology-stat__value{margin-top:6px;font-size:1.02rem;font-weight:700}.dd-topology-chart-wrap{min-height:584px;padding:14px;background:radial-gradient(circle at top left,rgba(249,161,27,.08),transparent 22%),linear-gradient(180deg,#fffdf8,#f7f4ee 92%)}.dd-topology-chart{width:100%;height:540px;min-height:540px}.dd-topology-chart .recharts-responsive-container,.dd-topology-chart .recharts-wrapper,.dd-topology-chart .recharts-surface{overflow:visible}.dd-topology-tooltip{border-radius:12px;background:#181815f0;color:#f8f7f3;padding:10px 12px;font-size:.78rem;line-height:1.45;text-align:center;box-shadow:0 12px 28px #1414142e}.dd-topology-tooltip.is-floating{position:absolute;z-index:3;pointer-events:none}.dd-topology-recharts-node__short{fill:#fffdf8;font-size:.76rem;font-weight:700;pointer-events:none}.dd-topology-chart--svg{position:relative}.dd-topology-d3-svg{display:block;overflow:visible}.dd-topology-d3-link{fill:none;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1;transition:opacity .16s ease,filter .16s ease}.dd-topology-d3-link:hover{opacity:.86}.dd-topology-d3-link.is-dimmed{opacity:.16}.dd-topology-d3-node{cursor:pointer;transition:opacity .16s ease,filter .16s ease}.dd-topology-d3-node.is-dimmed{opacity:.3}.dd-topology-d3-node rect{stroke:#1f1f1c14;stroke-width:.8px}.dd-topology-d3-node__short{fill:#191917f0;font-size:.74rem;font-weight:700;pointer-events:none}.dd-topology-caption{display:flex;gap:10px;flex-wrap:wrap;color:var(--app-text-muted);font-size:.82rem}.dd-topology-legend{padding:12px;display:grid;gap:8px}.dd-topology-legend__item{display:flex;align-items:center;gap:10px;font-size:.88rem}.dd-topology-legend__swatch{width:12px;height:12px;border-radius:999px;flex:0 0 auto}.dd-topology-legend__swatch.is-string{background:#f3b33d}.dd-topology-legend__swatch.is-mppt{background:#7f9a38}.dd-topology-legend__swatch.is-inverter{background:#c46c1d}.dd-topology-legend__swatch.is-output{background:#2f8b78}.dd-topology-detail-wrap{padding:12px}.dd-topology-detail{display:grid;gap:12px}.dd-topology-detail__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dd-topology-detail__grid.is-detail-list{grid-template-columns:1fr}.dd-topology-detail__item{border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-muted);padding:10px 12px}.dd-topology-detail__grid.is-detail-list .dd-topology-detail__item{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(0,1.6fr);gap:10px 14px;align-items:start}.dd-topology-detail__label{color:var(--app-text-muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.04em}.dd-topology-detail__grid.is-detail-list .dd-topology-detail__label{padding-top:2px}.dd-topology-detail__value{margin-top:6px;font-size:.93rem;font-weight:600;line-height:1.45;overflow-wrap:anywhere;word-break:break-word}.dd-topology-detail__grid.is-detail-list .dd-topology-detail__value{margin-top:0}.dd-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dd-info-column{display:grid;gap:12px}.dd-info-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dd-info-row__label{color:var(--app-text-muted);font-size:.84rem}.dd-info-row__value{font-size:.88rem;font-weight:500}.dd-performance-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dd-performance-footer{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:14px}.dd-performance-stat{border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);padding:12px 14px}.dd-performance-stat__label{color:var(--app-text-muted);font-size:.78rem}.dd-performance-stat__value{margin-top:10px;font-size:1.02rem;font-weight:700}.dd-performance-stat__value.is-warning{color:#ff6a00}.dd-performance-stat__value.is-success{color:var(--app-success)}.dd-performance-stat__meta{margin-top:6px;color:var(--app-text-muted);font-size:.82rem}.dd-module-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:12px}.dd-module-summary__item{text-align:center}.dd-module-summary__label{color:var(--app-text-muted);font-size:.8rem}.dd-module-summary__value{margin-top:6px;font-size:1rem;font-weight:700}.device-topology{display:grid;gap:14px}.device-topology__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.device-topology__stat{border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-muted);padding:12px 14px}.device-topology__stat-label{color:var(--app-text-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.device-topology__stat-value{margin-top:6px;font-size:1.05rem;font-weight:700}.device-topology__layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.9fr);gap:14px}.device-topology__chart,.device-topology__detail{border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface);overflow:hidden}.device-topology__chart{padding:12px}.device-topology__chart-canvas{min-height:520px}.device-topology__detail{padding:14px}.device-topology-detail{display:grid;gap:12px}.segmented-tabs{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.segmented-tabs__item{border:none;border-bottom:2px solid transparent;background:transparent;color:var(--app-text-muted);padding:8px 2px 10px;font-weight:500}.segmented-tabs__item.is-active{color:var(--app-primary-strong);border-bottom-color:var(--app-primary)}.metric-card-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:10px}.metric-card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:12px;padding:12px 14px}.metric-card__label-row{display:flex;justify-content:space-between;align-items:center}.metric-card__label{color:var(--app-text-muted);font-size:.82rem}.metric-card__value{margin-top:6px;font-size:1.6rem;font-weight:700}.metric-card__hint{margin-top:6px;color:var(--app-text-muted);font-size:.8rem}.app-inline-note{color:var(--app-text-muted);font-size:.84rem}.detail-copy-block h3{margin:0 0 6px;font-size:.9rem}.detail-copy-block ul,.detail-copy-block ol{margin:0 0 12px;padding-left:18px;color:var(--app-text-muted);font-size:.86rem}.panel-footer-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;padding-top:12px;border-top:1px solid var(--app-border);margin-top:12px}.panel-footer-stat{min-width:0}.panel-footer-stat__label{color:var(--app-text-muted);font-size:.76rem}.panel-footer-stat__value{margin-top:5px;font-size:1rem;font-weight:600}.side-stack{display:grid;gap:14px}.mini-actions{display:flex;gap:8px;flex-wrap:wrap}.alarm-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.alarm-summary-card{border:1px solid var(--app-border);border-radius:12px;padding:10px 12px}.alarm-summary-card__value{font-size:1.4rem;font-weight:700;margin-top:6px}.app-plant-layout{width:100%;height:320px;border-radius:12px;overflow:hidden;background:#e8f0f8}.app-plant-layout__map,.app-plant-layout .jvm-container,.app-plant-layout .jvm-map{width:100%;height:100%}.donut-center-note{text-align:center;margin-top:-175px;position:relative;z-index:1;pointer-events:none;font-weight:700}.po-header-actions{display:grid;gap:10px;justify-items:end}.po-header-actions .toolbar-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.po-table-card .app-card__header{display:none}.po-filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.po-button-inline{display:inline-flex;align-items:center;gap:8px}.po-button-inline svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.po-type-pill{display:inline-flex;align-items:center;gap:8px;min-height:28px;padding:0 10px;border-radius:999px;background:var(--app-surface-muted);color:var(--app-text-muted);font-size:.8rem;font-weight:600}.po-type-pill--solar-farm{background:#f9a11b1a;color:var(--app-primary-strong)}.po-type-pill--rooftop{background:#3b82f61a;color:var(--app-info)}.po-table-delta{font-weight:600}.po-table-delta.is-positive{color:var(--app-success)}.po-table-delta.is-negative{color:var(--app-danger)}.po-table-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:14px;margin-top:14px;border-top:1px solid var(--app-border)}.po-pagination{display:inline-flex;align-items:center;gap:6px}.po-page-button{min-width:30px;height:30px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text-muted);font:inherit}.po-page-button.is-active{background:var(--app-primary);border-color:var(--app-primary);color:#fff}.po-map-wrap .portfolio-map__canvas{min-height:300px}.po-side-type-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.po-donut-legend{display:grid;gap:10px;margin-top:5em}.po-donut-legend__item{display:grid;grid-template-columns:10px minmax(0,1fr);gap:10px;align-items:start}.po-donut-legend__dot{width:10px;height:10px;border-radius:999px;margin-top:6px}.po-type-summary{display:flex;flex-direction:column}.po-type-summary__item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--app-border)}.po-type-summary__icon{width:38px;height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700}.po-type-summary__icon--solar-farm{background:#f9a11b1f;color:var(--app-primary-strong)}.po-type-summary__icon--rooftop{background:#3b82f61f;color:var(--app-info)}.po-type-summary__total{display:flex;justify-content:space-between;align-items:center;padding-top:12px;font-weight:600}.do-header-actions{display:grid;gap:10px;justify-items:end}.do-header-actions .toolbar-button svg,.do-button-inline svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.do-table-card .app-card__header{display:none}.do-filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.do-button-inline{display:inline-flex;align-items:center;gap:8px}.do-device-cell{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:10px}.do-device-icon{color:#6b7280;font-size:1rem;line-height:1;margin-top:4px}.do-table-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:14px;margin-top:14px;border-top:1px solid var(--app-border)}.do-pagination{display:inline-flex;align-items:center;gap:6px}.do-page-button{min-width:30px;height:30px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text-muted);font:inherit}.do-page-button.is-active{background:var(--app-primary);border-color:var(--app-primary);color:#fff}.do-chart-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding-top:12px;border-top:1px solid var(--app-border);margin-top:12px}.do-chart-stats__item{min-width:0}.do-aux-list,.do-issues-list{display:flex;flex-direction:column;gap:10px}.do-aux-list__item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-muted)}.do-aux-list__lead{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:center}.do-aux-list__icon{width:24px;height:24px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--app-border);color:var(--app-text-muted);font-size:.9rem}.do-aux-list__meta{text-align:right}.do-aux-list__arrow{color:var(--app-text-muted);font-size:1rem}.do-issues-list__item{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:10px;padding:8px 0;border-bottom:1px solid var(--app-border)}.do-issues-list__item:last-child{border-bottom:none}.do-issues-list__icon{margin-top:2px;font-size:1rem;line-height:1}.do-issues-list__icon.is-critical,.do-issues-list__icon.is-fatal{color:var(--app-danger)}.do-issues-list__icon.is-warning{color:var(--app-warning)}.do-issues-list__icon.is-update{color:var(--app-info)}.do-issues-list__meta{display:grid;gap:8px;justify-items:end;text-align:right}.do-link-inline{display:inline-flex;align-items:center;gap:6px;margin-top:12px;color:var(--app-primary-strong);text-decoration:none;font-size:.84rem;font-weight:600}@media(max-width:1480px){.app-kpi-grid,.app-kpi-grid.is-six{grid-template-columns:repeat(3,minmax(0,1fr))}.app-grid--dashboard-bottom,.app-grid--plant-overview-bottom,.app-grid--plant-bottom,.app-grid--device-bottom,.po-side-type-grid{grid-template-columns:1fr}.do-chart-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1180px){.app-shell{flex-direction:column}.app-sidebar{width:auto;min-width:0}.app-grid--dashboard-mid,.app-grid--plant-main,.app-grid--device-main,.app-grid--alerts-main,.account-password-grid,.dd-layout-top,.dd-layout-bottom,.device-topology__layout,.dd-topology-shell{grid-template-columns:1fr}}@media(max-width:760px){.app-shell__content{padding:12px}.top-bar,.app-footer{flex-direction:column}.station-select-control,.inverter-select-control,.app-select-wrapper--station,.app-select-wrapper--inverter{width:var(--app-select-width-mobile, 100%)}.app-kpi-grid,.app-kpi-grid.is-six,.app-page-meta,.metric-card-list,.alarm-summary-grid,.dd-info-grid,.dd-module-summary,.dd-topology-stats,.dd-performance-footer,.dd-topology-detail__grid,.topology-preview__nodes,.device-topology__stats{grid-template-columns:1fr}.dd-topology-chart-wrap{min-height:460px;padding:10px}.dd-topology-chart{height:420px;min-height:420px}.dd-info-row{grid-template-columns:1fr;gap:4px}.po-table-footer,.po-side-type-grid{grid-template-columns:1fr}.account-password-actions{justify-content:stretch}.account-password-actions .toolbar-button{width:100%}.do-chart-stats{grid-template-columns:1fr}}
