:root{color:#18201e;font-synthesis:none;text-rendering:optimizelegibility;--bg:#f4f5f2;--surface:#fff;--surface-soft:#f7f8f6;--surface-deep:#edf0ec;--text:#17201d;--text-soft:#63706b;--text-faint:#8b9692;--line:#e2e6e2;--line-strong:#d4dbd6;--sidebar:#111d19;--sidebar-soft:#1a2924;--sidebar-text:#eef3ef;--accent:#ed6b3b;--accent-dark:#c94e24;--accent-soft:#fff0e9;--green:#26836f;--green-soft:#e6f4f0;--gold:#c18a24;--gold-soft:#fff7df;--blue:#457fa2;--blue-soft:#ebf4f8;--violet:#7c68a2;--violet-soft:#f1eef8;--red:#c94c43;--red-soft:#fff0ef;--shadow:0 10px 30px #1c29230e;--shadow-high:0 24px 70px #111d192e;--radius:16px;background:#f4f5f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{background:var(--bg);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #ed6b3b38}.app{background:var(--bg);min-height:100vh;color:var(--text);transition:background .18s,color .18s}.theme-dark{--bg:#101714;--surface:#17201d;--surface-soft:#1c2824;--surface-deep:#24312c;--text:#edf2ef;--text-soft:#a5b1ac;--text-faint:#7f8e88;--line:#2a3933;--line-strong:#374841;--accent-soft:#3b241b;--green-soft:#18352e;--gold-soft:#372f1a;--blue-soft:#1b303b;--violet-soft:#2b2638;--red-soft:#3a201f;--shadow:0 10px 30px #0000002e}.sidebar{z-index:30;width:252px;color:var(--sidebar-text);background:radial-gradient(circle at 20% 0%, #ed6b3b26, transparent 26%), var(--sidebar);border-right:1px solid #ffffff0f;flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid #ffffff14;align-items:center;gap:11px;min-height:82px;padding:0 22px;display:flex}.brand-logo-wrap{background:#fff;border:1px solid #ffffff73;border-radius:10px;justify-content:center;align-items:center;padding:4px 8px;display:flex;box-shadow:0 7px 18px #00000029}.brand-logo{object-fit:contain;width:120px;height:60px;display:block}.nav{flex:1;padding:24px 14px;overflow-y:auto}.nav-caption{color:#6f8079;letter-spacing:.18em;margin:0 12px 9px;font-size:9px;font-weight:800;display:block}.nav-caption-spaced{margin-top:27px}.nav-item{color:#abb7b2;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;min-height:43px;margin:3px 0;padding:0 12px;font-size:13px;font-weight:580;transition:all .16s;display:flex;position:relative}.nav-item:hover{color:#fff;background:#ffffff0e}.nav-item.active{color:#fff;background:var(--sidebar-soft)}.nav-item.active:before{content:"";background:var(--accent);border-radius:0 4px 4px 0;width:3px;height:22px;position:absolute;left:0}.nav-item.disabled{color:#607069;cursor:not-allowed}.nav-item.disabled:hover{background:0 0}.nav-badge{color:#fff;text-align:center;background:var(--accent);border-radius:12px;min-width:20px;margin-left:auto;padding:3px 6px;font-size:10px;font-weight:800}.nav-badge.muted{color:#82928b;background:#ffffff0d;font-size:8px}.sidebar-footer{border-top:1px solid #ffffff14;align-items:center;gap:10px;min-height:73px;padding:12px 18px;display:flex}.user-avatar{color:#fff;background:linear-gradient(145deg, var(--accent), #b44322);border-radius:50%;flex:none;place-items:center;width:35px;height:35px;font-size:11px;font-weight:800;display:grid}.user-copy{flex-direction:column;flex:1;min-width:0;display:flex}.user-copy strong{color:#e9efeb;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.user-copy span{color:#7f9088;margin-top:3px;font-size:9px}.main{min-height:100vh;margin-left:252px}.topbar{z-index:20;background:color-mix(in srgb, var(--surface) 92%, transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);justify-content:space-between;align-items:center;min-height:74px;padding:0 30px;display:flex;position:sticky;top:0}.topbar-left,.topbar-actions{align-items:center;gap:10px;display:flex}.installation-select{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;align-items:center;gap:9px;min-width:235px;height:42px;padding:0 12px;display:flex;position:relative}.installation-select select{min-width:0;color:var(--text);appearance:none;background:0 0;border:0;outline:0;flex:1;font-size:12px;font-weight:650}.installation-select>svg:last-child{color:var(--text-faint)}.live-status{height:34px;color:var(--green);background:var(--green-soft);border-radius:10px;align-items:center;gap:7px;padding:0 11px;font-size:10px;font-weight:700;display:flex}.live-dot{background:#35a787;border-radius:50%;width:7px;height:7px;position:relative}.live-dot:after{content:"";border:1px solid #35a787;border-radius:50%;animation:1.7s infinite pulse;position:absolute;inset:-4px}.live-status.origin-simulator{color:var(--red);background:var(--red-soft)}.live-status.origin-simulator .live-dot,.live-status.origin-simulator .live-dot:after{background:var(--red);border-color:var(--red)}.live-status.origin-mixed{color:var(--gold);background:var(--gold-soft)}.live-status.origin-mixed .live-dot,.live-status.origin-mixed .live-dot:after{background:var(--gold);border-color:var(--gold)}.live-status.origin-offline{color:var(--text-faint);background:var(--surface-deep)}.live-status.origin-offline .live-dot{background:var(--text-faint)}.live-status.origin-offline .live-dot:after{display:none}@keyframes pulse{0%{opacity:.8;transform:scale(.7)}70%,to{opacity:0;transform:scale(1.35)}}.icon-button{width:38px;height:38px;color:var(--text-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:none;place-items:center;display:grid}.icon-button:hover{color:var(--text);background:var(--surface-soft);border-color:var(--line)}.notification-button{position:relative}.notification-button span{color:#fff;background:var(--accent);border:2px solid var(--surface);border-radius:50%;place-items:center;width:15px;height:15px;font-size:8px;font-weight:800;display:grid;position:absolute;top:1px;right:0}.mobile-menu,.sidebar-close,.sidebar-scrim{display:none}.content{width:min(100%,1600px);margin:0 auto;padding:24px 30px 48px}.demo-banner{color:#86451f;background:#fff3e9;border:1px solid #f2d1bc;border-radius:10px;justify-content:space-between;align-items:center;gap:15px;min-height:40px;margin-bottom:23px;padding:8px 11px 8px 14px;font-size:10px;display:flex}.theme-dark .demo-banner{color:#f0b48f;background:#39251c;border-color:#62402d}.demo-banner.origin-real{color:#176b59;background:#e8f6f1;border-color:#b8dfd3}.theme-dark .demo-banner.origin-real{color:#8bd9c3;background:#17372f;border-color:#28584c}.demo-banner.origin-simulator{color:#9d2f2f;background:#fff0ee;border-color:#efb9b3}.theme-dark .demo-banner.origin-simulator{color:#ffaaa1;background:#41201d;border-color:#713832}.demo-banner.origin-mixed{color:#775812;background:#fff8df;border-color:#ead59a}.theme-dark .demo-banner.origin-mixed{color:#f1d681;background:#3c3219;border-color:#66552a}.demo-banner.origin-offline{color:var(--text-soft);background:var(--surface-soft);border-color:var(--line)}.demo-banner>div{align-items:center;gap:8px;display:flex}.demo-banner strong{font-size:11px}.demo-banner button{color:inherit;cursor:pointer;background:#ffffff8c;border:0;border-radius:7px;padding:6px 10px;font-size:9px;font-weight:750}.page-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.eyebrow{color:var(--accent);letter-spacing:.13em;margin:0 0 8px;font-size:9px;font-weight:800}.page-heading h1{letter-spacing:-.035em;margin:0;font-size:clamp(23px,2.4vw,31px);font-weight:770}.page-description{color:var(--text-soft);margin:8px 0 0;font-size:12px}.heading-actions{align-items:center;gap:12px;display:flex}.updated{color:var(--text-faint);align-items:center;gap:6px;font-size:9px;display:flex}.period-row,.toolbar-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px;display:flex}.realtime-controls{align-items:flex-end;gap:10px;display:flex}.meter-selector{gap:4px;display:grid}.meter-selector span{color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:750}.meter-selector select{min-width:170px;min-height:37px;color:var(--text);font:inherit;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:0 30px 0 11px;font-size:10px;font-weight:700}.segmented,.chart-toggle{background:var(--surface-deep);border-radius:10px;padding:3px;display:inline-flex}.segmented button,.chart-toggle button{min-height:31px;color:var(--text-soft);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 12px;font-size:9px;font-weight:680}.segmented button.active,.chart-toggle button.active{color:var(--text);background:var(--surface);box-shadow:0 2px 8px #18201e12}.chart-toggle button{align-items:center;gap:5px;display:flex}.secondary-button,.primary-button,.text-button,.panel-link{cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-size:10px;font-weight:700;display:inline-flex}.secondary-button{color:var(--text-soft);background:var(--surface);border:1px solid var(--line)}.secondary-button:hover{color:var(--text);border-color:var(--line-strong)}.primary-button{color:#fff;background:var(--accent);border:1px solid var(--accent);box-shadow:0 7px 18px #ed6b3b33}.primary-button:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.compact{min-height:32px;padding:0 10px;font-size:9px}.full-width{width:100%}.text-button,.panel-link{min-height:auto;color:var(--accent);background:0 0;border:0;padding:0}.metric-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.metric-card,.panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.offline-notice{color:var(--gold);align-items:center;gap:12px;margin-bottom:14px;padding:16px;display:flex}.offline-notice>div{gap:4px;display:grid}.offline-notice strong{color:var(--text);font-size:12px}.offline-notice span{color:var(--text-soft);font-size:9px}.metric-card{border-radius:13px;min-height:132px;padding:15px;position:relative}.metric-icon{border-radius:9px;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:14px;right:14px}.metric-icon.orange{color:var(--accent);background:var(--accent-soft)}.metric-icon.green{color:var(--green);background:var(--green-soft)}.metric-icon.gold{color:var(--gold);background:var(--gold-soft)}.metric-icon.blue{color:var(--blue);background:var(--blue-soft)}.metric-icon.violet{color:var(--violet);background:var(--violet-soft)}.metric-label{width:calc(100% - 36px);color:var(--text-soft);font-size:9px;font-weight:620;display:block}.metric-value{align-items:baseline;gap:5px;margin-top:22px;display:flex}.metric-value strong{letter-spacing:-.04em;font-size:24px;line-height:1}.metric-value span{color:var(--text-soft);font-size:11px;font-weight:650}.metric-change,.metric-note{align-items:center;gap:3px;margin-top:12px;font-size:8px;display:flex}.metric-change.up{color:var(--red)}.metric-change.down{color:var(--green)}.metric-change span,.metric-note{color:var(--text-faint)}.power-limit-panel{margin-bottom:14px;padding:18px}.limit-status{color:var(--green);background:var(--green-soft);border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:8px;font-weight:750;display:inline-flex}.limit-status i{background:currentColor;border-radius:50%;width:6px;height:6px}.limit-status.warning{color:var(--gold);background:var(--gold-soft)}.limit-status.danger{color:var(--red);background:var(--red-soft)}.power-limit-values{grid-template-columns:1fr 1fr;gap:14px;margin:16px 0 13px;display:grid}.power-limit-values>div{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:baseline;gap:12px;padding:11px 13px;display:flex}.power-limit-values span{color:var(--text-soft);font-size:9px}.power-limit-values strong{font-size:17px}.power-limit-values small{color:var(--text-soft);font-size:9px}.power-limit-chart{padding:5px 3px 0}.power-limit-track{background:linear-gradient(90deg, var(--green-soft) 0 80%, var(--gold-soft) 80% 95%, var(--red-soft) 95% 100%);border:1px solid var(--line);border-radius:999px;height:20px;position:relative}.power-limit-fill{background:var(--green);border-radius:999px;max-width:calc(100% - 6px);transition:width .24s;position:absolute;inset:3px auto 3px 3px}.power-limit-fill.warning{background:var(--gold)}.power-limit-fill.danger{background:var(--red)}.power-limit-marker{background:var(--green);border:2px solid var(--surface);border-radius:3px;width:3px;height:30px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #111d193d}.power-limit-marker.warning{background:var(--gold)}.power-limit-marker.danger{background:var(--red)}.power-limit-axis{height:20px;color:var(--text-faint);margin-top:7px;font-size:8px;position:relative}.power-limit-axis>*{position:absolute;top:0}.power-limit-axis>:first-child{left:0}.power-limit-axis>:nth-child(2){left:80%;transform:translate(-50%)}.power-limit-axis>:nth-child(3){left:95%;transform:translate(-50%)}.power-limit-axis>:last-child{color:var(--text);right:0}.power-limit-summary{color:var(--text-soft);border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding-top:10px;font-size:9px;display:flex}.power-limit-summary strong{color:var(--text)}.power-limit-summary .negative,.power-limit-summary .negative strong{color:var(--red)}.panel{border-radius:var(--radius)}.dashboard-grid,.lower-grid,.alert-layout{gap:14px;margin-bottom:14px;display:grid}.dashboard-grid{grid-template-columns:minmax(0,1.75fr) minmax(270px,.65fr)}.dashboard-grid.realtime-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lower-grid{grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)}.chart-panel,.health-panel,.meters-panel,.alert-panel,.rules-panel,.netelip-panel,.incidents-panel,.analysis-chart{padding:18px}.panel-header{justify-content:space-between;align-items:flex-start;gap:14px;min-height:38px;display:flex}.panel-header h2{margin:0;font-size:13px;font-weight:760}.panel-header p{color:var(--text-faint);margin:5px 0 0;font-size:9px}.power-chart{width:100%;margin-top:14px}.power-chart-legend{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 18px;min-height:24px;margin:-3px 20px 5px 78px;display:flex}.power-chart-legend span{color:var(--text-soft);align-items:center;gap:7px;font-size:9px;font-weight:650;display:inline-flex}.power-chart-legend i{border-radius:999px;width:18px;height:3px;display:inline-block}.power-chart-legend i.bar-swatch{border-radius:2px;width:10px;height:10px}.power-chart svg{width:100%;display:block;overflow:visible}.grid-line{stroke:var(--line);stroke-width:1px}.axis-label{fill:var(--text-faint);font-size:8px;font-weight:550}.axis-title{fill:var(--text-soft);letter-spacing:.02em;font-size:9px;font-weight:700}.limit-line{stroke:var(--red);stroke-width:1.5px;stroke-dasharray:7 5;opacity:.75}.limit-label{fill:var(--red);font-size:8px;font-weight:750}.series-path{vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.chart-hover-target{fill:#0000;cursor:crosshair;pointer-events:all}.chart-bar{opacity:.83;cursor:crosshair;transition:opacity .12s}.chart-bar:hover{opacity:1}.chart-tooltip{pointer-events:none}.chart-hover-guide{stroke:var(--text-faint);stroke-width:1px;stroke-dasharray:3 4;opacity:.5;vector-effect:non-scaling-stroke}.chart-hover-point{stroke:var(--surface);stroke-width:2px;vector-effect:non-scaling-stroke}.chart-tooltip-box{fill:var(--sidebar);stroke:#ffffff1f;stroke-width:1px;filter:drop-shadow(0 4px 9px #0a19133d)}.chart-tooltip-label,.chart-tooltip-value{fill:#fff;font-size:8px;font-weight:750}.chart-tooltip-time{fill:#ffffffab;font-size:7px;font-weight:550}.area-path{pointer-events:none}.chart-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:8px;display:flex}.chart-legend{gap:14px;display:flex}.chart-legend span,.axis-note{color:var(--text-soft);align-items:center;gap:5px;font-size:8px;display:flex}.chart-legend i{border-radius:50%;width:7px;height:7px}.health-score{border-bottom:1px solid var(--line);align-items:center;gap:14px;margin:22px 0 19px;padding-bottom:19px;display:flex}.health-ring{text-align:center;background:radial-gradient(circle closest-side, var(--surface) 79%, transparent 81% 99%), conic-gradient(var(--green) 92%, var(--surface-deep) 0);border-radius:50%;flex:none;place-content:center;width:70px;height:70px;display:grid}.health-ring span{font-size:20px;font-weight:800;line-height:1}.health-ring small{color:var(--text-faint);margin-top:2px;font-size:7px}.health-score>div:last-child strong{font-size:12px}.health-score>div:last-child p{color:var(--text-soft);margin:5px 0 0;font-size:9px;line-height:1.5}.health-list{gap:13px;display:grid}.health-row{color:var(--text-soft);justify-content:space-between;align-items:center;font-size:9px;display:flex}.health-row strong{align-items:center;gap:6px;font-size:9px;display:flex}.health-row strong i{background:currentColor;border-radius:50%;width:6px;height:6px}.health-row .good{color:var(--green)}.health-row .warning{color:var(--gold)}.health-row .danger{color:var(--red)}.panel-link{margin-top:20px}.meter-list,.recent-alerts,.rules-list{margin-top:10px}.meter-row{border-top:1px solid var(--line);grid-template-columns:34px minmax(140px,1.2fr) repeat(3,minmax(75px,.65fr)) 48px 18px;align-items:center;gap:10px;min-height:60px;display:grid}.meter-row:first-child{border-top:0}.meter-status{width:31px;height:31px;color:var(--text-soft);background:var(--surface-soft);border-radius:9px;place-items:center;display:grid;position:relative}.meter-status>span{background:var(--green);border:2px solid var(--surface);border-radius:50%;width:7px;height:7px;position:absolute;top:2px;right:2px}.meter-status>span.warning{background:var(--gold)}.meter-name,.meter-reading{flex-direction:column;min-width:0;display:flex}.meter-name strong,.meter-reading strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.meter-name span,.meter-reading span{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:8px;overflow:hidden}.meter-change{font-size:8px;font-weight:700}.meter-change.up{color:var(--red)}.meter-change.down{color:var(--green)}.recent-alert{border-top:1px solid var(--line);grid-template-columns:32px 1fr auto;align-items:center;gap:10px;min-height:60px;display:grid}.recent-alert:first-child{border-top:0}.alert-level{border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.alert-level.high{color:var(--red);background:var(--red-soft)}.alert-level.medium{color:var(--gold);background:var(--gold-soft)}.alert-level.low{color:var(--green);background:var(--green-soft)}.recent-alert>div:nth-child(2){flex-direction:column;min-width:0;display:flex}.recent-alert strong{font-size:9px}.recent-alert span{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:8px;overflow:hidden}.recent-alert time{color:var(--text-faint);align-self:flex-start;margin-top:15px;font-size:7px}.analysis-period-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.analysis-period-row>span{color:var(--text-soft);font-size:9px;font-weight:700}.filter-bar{background:var(--surface);border:1px solid var(--line);border-radius:13px;align-items:stretch;gap:10px;margin-bottom:14px;padding:10px;display:flex}.filter-item{border-right:1px solid var(--line);grid-template-columns:1fr auto;min-width:185px;padding:2px 12px;display:grid}.filter-item span{color:var(--text-faint);grid-column:1/3;font-size:8px}.filter-item select{width:100%;color:var(--text);font:inherit;cursor:pointer;background-color:#0000;border:0;outline:none;grid-column:1/3;margin-top:3px;padding:2px 24px 2px 0;font-size:9px;font-weight:700}.filter-item strong{margin-top:4px;font-size:9px}.filter-item svg{color:var(--text-faint);align-self:center}.filter-bar .secondary-button{margin-left:auto}.analysis-chart{margin-bottom:14px}.calculation-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px;display:grid}.calculation-card{flex-direction:column;min-height:104px;padding:17px;display:flex}.calculation-card>span{color:var(--text-soft);font-size:9px}.calculation-card strong{letter-spacing:-.035em;margin-top:14px;font-size:20px}.calculation-card small{color:var(--red);margin-top:8px;font-size:8px}.calculation-card small.positive{color:var(--green)}.distribution-list{gap:17px;padding:18px;display:grid}.distribution>div:first-child{justify-content:space-between;font-size:9px;display:flex}.distribution>div:first-child span{color:var(--text-soft)}.progress{background:var(--surface-deep);border-radius:5px;height:7px;margin-top:8px;overflow:hidden}.progress span{border-radius:inherit;height:100%;display:block}.search-box{width:300px;height:39px;color:var(--text-faint);background:var(--surface);border:1px solid var(--line);border-radius:9px;align-items:center;gap:8px;padding:0 12px;display:flex}.search-box input{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:10px}.meter-variable-selector{width:245px;height:39px;color:var(--text-faint);background:var(--surface);border:1px solid var(--line);border-radius:9px;align-items:center;gap:9px;padding:0 11px;display:flex}.meter-variable-selector>span{flex-direction:column;flex:1;min-width:0;display:flex}.meter-variable-selector small{color:var(--text-faint);font-size:7px;line-height:1}.meter-variable-selector select{width:100%;color:var(--text);appearance:none;cursor:pointer;background:0 0;border:0;outline:0;margin-top:2px;padding:0;font-size:9px;font-weight:700}.meter-variable-selector>svg:last-child{flex:none}.toolbar-row .secondary-button{margin-left:auto}.meter-card-grid,.export-grid,.admin-grid{gap:14px;margin-bottom:14px;display:grid}.meter-card-grid{grid-template-columns:repeat(3,1fr)}.meter-card{padding:18px}.meter-card-top{align-items:center;display:flex}.meter-device-icon,.setup-icon,.admin-icon{width:41px;height:41px;color:var(--accent);background:var(--accent-soft);border-radius:11px;place-items:center;display:grid}.device-status,.connected-pill{color:var(--green);background:var(--green-soft);border-radius:10px;align-items:center;gap:5px;margin-left:10px;padding:5px 8px;font-size:8px;font-weight:700;display:inline-flex}.device-status i,.connected-pill span{background:currentColor;border-radius:50%;width:5px;height:5px}.device-status.warning{color:var(--gold);background:var(--gold-soft)}.device-status.origin-simulator{color:var(--red);background:var(--red-soft)}.meter-card-top .icon-button{margin-left:auto}.meter-card h3{margin:18px 0 0;font-size:13px}.meter-card-copy>p{color:var(--text-faint);margin:5px 0 0;font-size:9px}.meter-card-summary{grid-template-columns:minmax(0,1fr) 132px;align-items:start;gap:12px;min-height:150px;display:grid}.meter-card-copy{min-width:0}.meter-card-copy h3{margin-top:18px}.meter-last-seen{color:var(--text-soft);margin-top:5px;font-size:8px;display:block}.meter-hero-reading{flex-direction:column;margin:18px 0 14px;display:flex}.meter-hero-reading strong{letter-spacing:-.045em;white-space:nowrap;font-size:clamp(20px,1.75vw,28px)}.meter-hero-reading span{color:var(--text-soft);margin-top:4px;font-size:8px}.meter-gauge{width:132px;color:var(--green);text-align:center;margin-top:9px;position:relative}.meter-gauge svg{width:100%;display:block;overflow:visible}.meter-gauge-track,.meter-gauge-value{fill:none;stroke-linecap:round;stroke-width:9px}.meter-gauge-track{stroke:var(--surface-deep)}.meter-gauge-value{stroke:currentColor}.meter-gauge-needle{stroke:var(--text);stroke-linecap:round;stroke-width:2.5px}.meter-gauge-hub{fill:var(--text)}.meter-gauge.warning{color:var(--gold)}.meter-gauge.danger{color:var(--red)}.meter-gauge.offline{color:var(--text-faint)}.meter-gauge>strong{width:100%;color:var(--text);font-size:13px;position:absolute;top:39px;left:0}.meter-gauge>span{color:var(--text-soft);margin-top:-3px;font-size:7px;display:block}.meter-gauge>small{color:var(--text-faint);justify-content:space-between;margin-top:3px;font-size:6px;display:flex}.meter-gauge>small b{color:var(--text-soft);font-weight:700}.phase-bars{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:9px;padding:14px 0;display:grid}.phase-bars>div{grid-template-columns:43px 1fr 69px;align-items:center;gap:8px;font-size:8px;display:grid}.phase-bars>div>span{color:var(--text-soft)}.phase-bars>div>div{background:var(--surface-deep);border-radius:4px;height:4px;overflow:hidden}.phase-bars i{background:var(--accent);border-radius:inherit;height:100%;display:block}.phase-bars>div:nth-child(2) i{background:var(--green)}.phase-bars>div:nth-child(3) i{background:var(--gold)}.phase-bars strong{text-align:right;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.meter-card-stats{grid-template-columns:1fr 1fr;margin-top:15px;display:grid}.meter-card-stats div{flex-direction:column;display:flex}.meter-card-stats div+div{border-left:1px solid var(--line);padding-left:16px}.meter-card-stats span{color:var(--text-faint);font-size:8px}.meter-card-stats strong{margin-top:5px;font-size:10px}.setup-hint{align-items:center;gap:14px;padding:17px;display:flex}.setup-hint>div:nth-child(2){flex:1}.setup-hint strong{font-size:11px}.setup-hint p{color:var(--text-soft);margin:5px 0 0;font-size:9px}.alert-summary-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px;display:grid}.summary-block{background:var(--surface);border:1px solid var(--line);border-radius:13px;align-items:center;gap:13px;min-height:85px;padding:15px;display:flex}.summary-block>svg{border-radius:11px;width:41px;height:41px;padding:9px}.summary-block.danger>svg{color:var(--red);background:var(--red-soft)}.summary-block.warning>svg{color:var(--gold);background:var(--gold-soft)}.summary-block.success>svg{color:var(--green);background:var(--green-soft)}.summary-block.neutral>svg{color:var(--blue);background:var(--blue-soft)}.summary-block div{flex-direction:column;display:flex}.summary-block strong{letter-spacing:-.04em;font-size:20px}.summary-block span{color:var(--text-soft);margin-top:4px;font-size:8px}.alert-layout{grid-template-columns:minmax(0,1.55fr) minmax(290px,.55fr)}.rule-row{border-top:1px solid var(--line);grid-template-columns:34px minmax(170px,1fr) minmax(110px,.6fr) minmax(90px,auto) 34px;align-items:center;gap:10px;min-height:62px;display:grid}.rule-row:first-child{border-top:0}.rule-icon{width:32px;height:32px;color:var(--text-faint);background:var(--surface-soft);border-radius:9px;place-items:center;display:grid}.rule-icon.enabled{color:var(--accent);background:var(--accent-soft)}.rule-main{flex-direction:column;min-width:0;display:flex}.rule-main strong{font-size:9px}.rule-main span{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:8px;overflow:hidden}.rule-meta,.channel-pill{color:var(--text-soft);align-items:center;gap:5px;font-size:8px;display:flex}.channel-pill{width:fit-content;color:var(--green);background:var(--green-soft);border-radius:7px;padding:5px 7px}.switch{width:31px;height:18px;display:inline-flex;position:relative}.switch input{opacity:0;width:0;height:0}.switch span{background:var(--line-strong);cursor:pointer;border-radius:12px;transition:all .16s;position:absolute;inset:0}.switch span:before{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:all .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0000002e}.switch input:checked+span{background:var(--green)}.switch input:checked+span:before{transform:translate(13px)}.provider-brand{background:var(--surface-soft);border-radius:11px;align-items:center;gap:11px;margin:18px 0;padding:13px;display:flex}.provider-icon{width:40px;height:40px;color:var(--accent);background:var(--accent-soft);border-radius:11px;place-items:center;display:grid}.provider-brand>div:last-child{flex-direction:column;display:flex}.provider-brand strong{font-size:11px}.provider-brand span{color:var(--text-faint);margin-top:4px;font-size:8px}.provider-details{margin:0}.provider-details>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:31px;display:flex}.provider-details dt,.provider-details dd{font-size:8px}.provider-details dt{color:var(--text-soft)}.provider-details dd{margin:0;font-weight:700}.provider-details .unconfigured-text{color:var(--red)}.provider-note,.coverage-note{color:var(--green);background:var(--green-soft);border-radius:9px;align-items:flex-start;gap:8px;margin:15px 0;padding:10px;font-size:8px;line-height:1.5;display:flex}.provider-note svg,.coverage-note svg{flex:none}.provider-actions{gap:8px;display:grid}.provider-actions button:disabled,.phone-modal button:disabled,.daily-summary-panel button:disabled{cursor:not-allowed;opacity:.48}.daily-summary-panel{margin-bottom:14px}.daily-summary-status{color:var(--gold);background:var(--gold-soft);border-radius:10px;align-items:center;gap:6px;padding:6px 9px;font-size:8px;font-weight:750;display:inline-flex}.daily-summary-status.active{color:var(--green);background:var(--green-soft)}.daily-summary-status i{background:currentColor;border-radius:50%;width:6px;height:6px}.daily-summary-layout{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:16px;display:grid}.daily-summary-explanation{align-items:center;gap:12px;display:flex}.daily-summary-explanation>div:last-child{gap:5px;display:grid}.daily-summary-explanation strong{font-size:10px}.daily-summary-explanation span,.daily-summary-footer>span{color:var(--text-soft);font-size:8px;line-height:1.5}.daily-summary-controls{align-items:end;gap:10px;display:flex}.daily-summary-controls .check-row{white-space:nowrap;min-height:34px;margin:0;padding:0 10px}.summary-time-field{color:var(--text-soft);gap:4px;font-size:8px;display:grid}.summary-time-field input{min-width:105px;height:34px;padding:0 9px}.sms-preview{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;margin-top:15px;padding:12px}.sms-preview>div,.daily-summary-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.sms-preview span,.sms-preview strong{color:var(--text-soft);font-size:8px}.sms-preview code{overflow-wrap:anywhere;color:var(--text);margin-top:9px;font-family:inherit;font-size:10px;font-weight:650;line-height:1.5;display:block}.daily-summary-footer{margin-top:10px}@media (width<=900px){.daily-summary-layout{grid-template-columns:1fr}.daily-summary-controls{flex-wrap:wrap}}.incidents-panel{margin-bottom:14px}.incident-table{margin-top:14px}.table-head,.table-row{grid-template-columns:1.3fr 1.1fr .65fr .65fr .85fr minmax(150px,.9fr);align-items:center;gap:12px;min-width:830px;display:grid}.table-head{min-height:32px;color:var(--text-faint);background:var(--surface-soft);border-radius:8px;font-size:8px;font-weight:650}.table-head span,.table-row>span{padding:0 8px}.table-row{min-height:50px;color:var(--text-soft);border-bottom:1px solid var(--line);font-size:8px}.table-row.unread{background:var(--accent-soft)}.table-row.read{opacity:.72}.table-row>span:first-child{color:var(--text);align-items:center;gap:7px;font-weight:650;display:flex}.severity{background:var(--green);border-radius:50%;width:6px;height:6px}.severity.high{background:var(--red)}.severity.medium{background:var(--gold)}.incident-row-action{justify-content:space-between;align-items:center;gap:8px;padding:0 8px;display:flex}.incident-row-action .text-button{white-space:nowrap;font-size:8px}.incident-state{color:var(--green);background:var(--green-soft);border-radius:7px;padding:4px 7px;display:inline-flex}.incident-state.open{color:var(--red);background:var(--red-soft)}.status-pill{border-radius:8px;justify-content:center;align-items:center;width:fit-content;min-width:55px;min-height:22px;display:inline-flex}.status-pill.open{color:var(--red);background:var(--red-soft)}.status-pill.review{color:var(--gold);background:var(--gold-soft)}.status-pill.closed{color:var(--green);background:var(--green-soft)}.table-scroll{overflow-x:auto}.export-grid{grid-template-columns:1fr 1fr}.export-card{padding:24px;position:relative}.export-card.featured{border-color:#ed6b3b59}.export-icon{border-radius:13px;place-items:center;width:50px;height:50px;display:grid}.export-icon.csv{color:var(--green);background:var(--green-soft)}.export-icon.report{color:var(--accent);background:var(--accent-soft)}.recommended{color:var(--accent);letter-spacing:.09em;background:var(--accent-soft);border-radius:7px;padding:5px 8px;font-size:7px;font-weight:800;position:absolute;top:22px;right:22px}.export-card h3{margin:18px 0 0;font-size:15px}.export-card p{max-width:490px;min-height:37px;color:var(--text-soft);margin:8px 0 0;font-size:9px;line-height:1.6}.export-options{flex-wrap:wrap;gap:6px;margin:17px 0;display:flex}.export-options span{color:var(--text-soft);background:var(--surface-soft);border-radius:7px;padding:6px 8px;font-size:8px}.empty-state{min-height:230px;color:var(--text-faint);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state strong{color:var(--text);margin-top:12px;font-size:11px}.empty-state span{margin-top:6px;font-size:9px}.power-admin-panel{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);align-items:center;gap:26px;margin-bottom:14px;padding:20px;display:grid}.power-admin-copy{grid-template-columns:43px 1fr;gap:14px;display:grid}.power-admin-copy h2{margin:3px 0 0;font-size:16px}.power-admin-copy p{max-width:600px;color:var(--text-soft);margin:7px 0 0;font-size:9px;line-height:1.6}.power-admin-form{background:var(--surface-soft);border:1px solid var(--line);border-radius:11px;gap:7px;padding:14px;display:grid}.power-admin-form label{color:var(--text-soft);font-size:9px;font-weight:700}.power-input-row{grid-template-columns:minmax(120px,1fr) auto;gap:9px;display:grid}.power-input-wrap{position:relative}.power-input-wrap input{width:100%;height:39px;color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;padding:0 42px 0 11px}.power-input-wrap span{color:var(--text-faint);font-size:9px;font-weight:700;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.power-admin-form small{color:var(--text-faint);font-size:8px}.power-admin-form button:disabled{cursor:not-allowed;opacity:.45}.admin-grid{grid-template-columns:repeat(3,1fr)}.admin-card{text-align:left;cursor:pointer;grid-template-columns:43px 1fr 18px;gap:13px;min-height:145px;padding:18px;display:grid}.admin-card:hover{border-color:var(--line-strong);transform:translateY(-2px)}.admin-card h3{margin:3px 0 0;font-size:11px}.admin-card p{color:var(--text-soft);margin:7px 0;font-size:8px;line-height:1.5}.admin-card span{color:var(--accent);font-size:8px;font-weight:700}.admin-card>svg{color:var(--text-faint)}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#080f0ca6;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--line);width:min(590px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-high);border-radius:18px;overflow-y:auto}.modal-header,.modal-footer{justify-content:space-between;align-items:center;padding:18px 21px;display:flex}.modal-header{border-bottom:1px solid var(--line)}.modal-header h2{margin:0;font-size:18px}.modal-body{gap:14px;padding:20px;display:grid}.modal-body label{color:var(--text-soft);flex-direction:column;gap:7px;font-size:9px;font-weight:650;display:flex}.modal-body input,.modal-body select{width:100%;height:39px;color:var(--text);background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;padding:0 10px;font-size:10px}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-row.triple{grid-template-columns:1.25fr .65fr .65fr}.modal fieldset{border:1px solid var(--line);border-radius:10px;gap:10px;margin:0;padding:13px;display:grid}.modal legend{color:var(--text-soft);padding:0 5px;font-size:9px;font-weight:650}.modal .check-row{color:var(--text);flex-direction:row;align-items:center;gap:8px;font-weight:550;display:flex}.modal .check-row input{width:15px;height:15px}.modal-footer{background:var(--surface-soft);border-top:1px solid var(--line);justify-content:flex-end;gap:9px}.phone-modal{width:min(520px,100%)}.verification-success{text-align:center;justify-items:center;gap:9px;padding:22px 12px;display:grid}.verification-success svg{color:var(--green)}.verification-success strong{font-size:16px}.verification-success span,.verification-status span{color:var(--text-soft);font-size:10px}.verification-status{background:var(--surface-deep);border-radius:11px;align-items:center;gap:12px;padding:13px;display:flex}.verification-status div{gap:4px;display:grid}.verification-code{letter-spacing:.28em;text-align:center;font-size:24px!important;font-weight:800!important}.verification-warning,.verification-error{border-radius:9px;align-items:flex-start;gap:8px;padding:11px 12px;font-size:9px;display:flex}.verification-warning{color:#a65a2a;background:#fff2e9}.verification-error{color:#9d3a35;background:#fff0ef}.procedure-modal{width:min(650px,100%)}.procedure-body{gap:17px}.procedure-intro{color:var(--text-soft);margin:0;font-size:10px;line-height:1.65}.procedure-steps{gap:9px;margin:0;padding:0;list-style:none;display:grid}.procedure-steps li{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;grid-template-columns:30px 1fr;align-items:start;gap:11px;padding:11px;display:grid}.procedure-number{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:30px;height:30px;font-size:10px;font-weight:800;display:grid}.procedure-steps strong{font-size:10px}.procedure-steps p{color:var(--text-soft);margin:4px 0 0;font-size:9px;line-height:1.5}.toast{z-index:120;color:#fff;max-width:390px;min-height:48px;box-shadow:var(--shadow-high);background:#17251f;border:1px solid #ffffff1f;border-radius:11px;align-items:center;gap:10px;padding:11px 15px;font-size:10px;animation:.22s ease-out toast-in;display:flex;position:fixed;bottom:24px;right:24px}.toast svg{color:#6ed2b4}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.screen-mode .sidebar{display:none}.screen-mode .main{margin-left:0}.screen-mode .demo-banner{display:none}.screen-mode .topbar{min-height:60px}.screen-mode .content{max-width:1800px}@media (width<=1320px){.metric-grid{grid-template-columns:repeat(3,1fr)}.meter-card-grid,.admin-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=1060px){.sidebar{width:224px}.main{margin-left:224px}.content,.topbar{padding-left:20px;padding-right:20px}.dashboard-grid,.lower-grid,.alert-layout,.power-admin-panel{grid-template-columns:1fr}.alert-panel,.netelip-panel{min-height:auto}.calculation-grid,.alert-summary-grid{grid-template-columns:repeat(2,1fr)}.filter-item{min-width:150px}}@media (width<=820px){.sidebar{width:260px;transition:transform .2s;transform:translate(-105%)}.sidebar-open{transform:translate(0)}.sidebar-close{color:#a8b4af;margin-left:auto;display:grid}.sidebar-scrim{z-index:29;background:#080e0c85;border:0;display:block;position:fixed;inset:0}.main{margin-left:0}.mobile-menu{display:grid}.topbar{min-height:62px}.installation-select{min-width:210px;height:38px}.content{padding-top:18px}.page-heading{flex-direction:column;align-items:flex-start}.heading-actions{justify-content:space-between;width:100%}.period-row{flex-direction:column;align-items:flex-start}.realtime-controls{flex-direction:column;align-items:stretch;width:100%}.meter-selector select{width:100%}.segmented{width:100%;overflow-x:auto}.segmented button{flex:1 0 auto}.filter-bar{overflow-x:auto}.analysis-period-row{flex-direction:column;align-items:stretch}.filter-bar .secondary-button{min-width:100px}.meter-card-grid,.export-grid{grid-template-columns:1fr}.rule-row{grid-template-columns:34px 1fr auto;padding:9px 0}.rule-meta,.channel-pill{grid-column:2}.switch{grid-area:1/3/3}.toolbar-row{flex-wrap:wrap}.search-box{width:100%}.meter-variable-selector{width:min(100%,290px)}.toolbar-row .secondary-button{margin-left:0}}@media (width<=600px){.topbar,.content{padding-left:13px;padding-right:13px}.installation-select{width:min(48vw,195px);min-width:0}.installation-select select{font-size:10px}.hide-small{display:none}.live-status{justify-content:center;width:28px;height:28px;padding:0}.topbar-actions{gap:2px}.topbar .icon-button{width:32px;height:32px}.meter-card-summary{grid-template-columns:minmax(0,1fr) 112px;gap:6px}.meter-gauge{width:112px}.demo-banner{align-items:flex-start}.demo-banner>div{flex-wrap:wrap;align-items:flex-start}.demo-banner span{width:100%;line-height:1.45}.demo-banner button{display:none}.page-heading{margin-bottom:18px}.page-description{line-height:1.5}.metric-grid{grid-template-columns:repeat(2,1fr);gap:9px}.power-limit-values{grid-template-columns:1fr}.power-limit-summary{flex-direction:column;align-items:flex-start}.power-input-row{grid-template-columns:1fr}.metric-card{min-height:124px;padding:13px}.metric-value strong{font-size:21px}.metric-label{min-height:22px}.chart-panel,.health-panel,.meters-panel,.alert-panel,.rules-panel,.netelip-panel,.incidents-panel,.analysis-chart{padding:14px}.chart-toggle button{width:31px;padding:0}.chart-toggle button svg{margin:auto}.chart-toggle button{font-size:0}.axis-note{display:none}.chart-footer{justify-content:center}.meter-row{grid-template-columns:32px 1fr 64px 16px}.meter-reading{text-align:right}.hide-tablet,.hide-mobile,.meter-change{display:none}.recent-alert{grid-template-columns:32px 1fr}.recent-alert time{display:none}.calculation-grid,.alert-summary-grid,.admin-grid{grid-template-columns:1fr 1fr;gap:9px}.summary-block{min-height:74px;padding:11px}.summary-block>svg{width:34px;height:34px;padding:7px}.summary-block strong{font-size:17px}.admin-card{grid-template-columns:38px 1fr;min-height:165px;padding:14px}.admin-card>svg{display:none}.admin-icon{width:36px;height:36px}.setup-hint{flex-wrap:wrap;align-items:flex-start}.setup-hint .secondary-button{width:100%}.form-row,.form-row.triple{grid-template-columns:1fr}.modal-backdrop{padding:0}.modal{border-radius:0;width:100%;max-height:100vh}.toast{bottom:13px;left:13px;right:13px}}@media (width<=390px){.metric-grid,.calculation-grid,.alert-summary-grid,.admin-grid{grid-template-columns:1fr}.metric-card{min-height:108px}.metric-value{margin-top:13px}.installation-select{width:150px}}.logout-button{color:inherit;flex:none}.login-page{background:radial-gradient(circle at 15% 15%,#f4663629,#0000 28rem),linear-gradient(135deg,#0d1a17 0%,#14241f 56%,#0b1513 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fffffff7;border:1px solid #ffffff1a;border-radius:22px;gap:24px;width:min(100%,440px);padding:34px;display:grid;box-shadow:0 28px 80px #00000057}.login-logo{width:140px;height:auto}.login-card h1{color:#0b1815;margin:7px 0 8px;font-size:30px}.login-card p{color:#65736f;margin:0;line-height:1.55}.login-form{gap:10px;display:grid}.login-form label{color:#24332f;margin-top:4px;font-size:12px;font-weight:700}.login-form input{color:#10201c;width:100%;height:46px;font:inherit;background:#fff;border:1px solid #d8dfdc;border-radius:11px;padding:0 13px}.login-form input:focus{border-color:#f46636;outline:3px solid #f4663624}.login-submit{justify-content:center;width:100%;min-height:46px;margin-top:10px}.login-error{color:#a53614;background:#fff2ed;border:1px solid #f3b6a2;border-radius:9px;padding:10px 12px;font-size:12px;line-height:1.45}.login-security-note{color:#52635e;border-top:1px solid #e2e7e5;align-items:flex-start;gap:9px;padding-top:18px;font-size:11px;line-height:1.5;display:flex}.login-security-note svg{color:#278c75;flex:none}.password-admin-form{gap:10px;min-width:min(100%,420px);display:grid}.password-admin-form label{color:var(--text,#10201c);gap:6px;font-size:11px;font-weight:700;display:grid}.password-admin-form input{border:1px solid var(--border,#dce3e0);background:var(--panel,#fff);height:42px;color:inherit;font:inherit;border-radius:10px;padding:0 12px}.password-admin-form small{line-height:1.45}.exports-form,.exports-history{margin-bottom:24px}.exports-form>*+*{margin-top:18px}.exports-form .export-grid{gap:18px;margin-bottom:0}.exports-form .export-grid>label{gap:8px;font-weight:600;display:grid}.exports-form input[type=datetime-local],.exports-form select{background:var(--panel,#fff);min-height:42px;color:inherit;font:inherit;box-sizing:border-box;border:1px solid #dbe2de;border-radius:9px;max-width:100%;padding:10px 12px}.exports-form fieldset{border:1px solid #dbe2de;border-radius:12px;padding:12px}.exports-form legend{padding:0 8px;font-weight:600}.exports-form input[type=checkbox]{accent-color:#278873;width:16px;height:16px}.exports-form .export-options{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.exports-form .export-options button{color:#165a4d;cursor:pointer;font:inherit;background:#edf4f0;border:1px solid #dbe2de;border-radius:9px;padding:9px 14px}.exports-form .export-options label{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.exports-form>label{gap:8px;display:grid}.exports-history article p{overflow-wrap:anywhere}@media (width<=520px){.login-page{padding:12px}.login-card{border-radius:16px;padding:24px 20px}}.export-progress{color:#174f43;background:#f1f7f5;border-radius:12px;max-width:640px;margin:12px 0;padding:14px}.export-progress-heading{align-items:center;gap:10px;margin-bottom:9px;display:flex}.export-progress-heading strong{font-variant-numeric:tabular-nums;margin-left:auto}.export-progress progress{accent-color:#248b75;width:100%;height:9px;margin-bottom:8px;display:block}.export-progress small{line-height:1.5;display:block}.export-spinner{border:2px solid #bedcd4;border-top-color:#248b75;border-radius:50%;flex:0 0 17px;height:17px;animation:.8s linear infinite export-spin}@keyframes export-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.export-spinner{animation:none}}.wiki-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:18px;display:flex}.wiki-toolbar label{flex:1;align-items:center;gap:12px;display:flex}.wiki-toolbar input{width:100%;color:inherit;background:0 0;border:1px solid #c6d5d0;border-radius:8px;padding:12px}.wiki-layout{grid-template-columns:270px minmax(0,1fr);align-items:start;gap:22px;display:grid}.wiki-index{padding:20px}.wiki-index h2{align-items:center;gap:8px;font-size:18px;display:flex}.wiki-index small{margin:10px 0 18px;display:block}.wiki-index button{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;margin:3px 0;padding:12px;line-height:1.5;display:block}.wiki-index button:hover,.wiki-index button[aria-current]{color:#145b49;background:#e4f2ed}.wiki-article{padding:clamp(20px,3vw,42px);line-height:1.8}.wiki-article h2{margin:10px 0;font-size:27px;line-height:1.3}.wiki-article h3{margin:28px 0 12px;font-size:20px}.wiki-article section{scroll-margin-top:24px}.wiki-article p{max-width:85ch;margin:12px 0}.wiki-summary{opacity:.8}.wiki-contents{border-bottom:1px solid #ccd9d3;flex-wrap:wrap;gap:10px 20px;padding:15px 0;display:flex}.wiki-contents a{color:#21836d;text-decoration:underline}.theme-dark .wiki-contents a{color:#7edcc0}@media (width<=850px){.wiki-layout{grid-template-columns:1fr}.wiki-toolbar{flex-wrap:wrap}.wiki-toolbar label{min-width:200px}}.session-warning{z-index:1000;color:#47351b;background:#fff7df;border:1px solid #d5ad43;border-radius:14px;max-width:420px;padding:22px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 35px #0003}.export-estimate{color:#194e41;background:#edf5f2;border:1px solid #c6dcd3;border-radius:10px;margin:18px 0;padding:16px;line-height:1.6}.export-estimate p{margin:6px 0}.export-estimate small{display:block}.equipment-history{margin-top:28px}.equipment-history>p{color:#67766e;margin-bottom:18px}.equipment-chart{margin-top:20px;padding:24px}.equipment-chart-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.equipment-chart-header p,.equipment-chart .axis-note{color:#67766e;margin:10px 0;font-size:12px}.equipment-chart-header select{background:#fff;border:1px solid #dce4df;border-radius:8px;margin-left:8px;padding:10px}.equipment-chart svg{fill:currentColor;width:100%;min-height:180px;margin:12px 0;display:block}.equipment-tooltip{color:#21382e;background:#edf4f0;border-radius:8px;flex-wrap:wrap;gap:12px;min-height:58px;margin-bottom:16px;padding:14px;font-size:13px;display:flex}.equipment-tooltip span{align-items:center;gap:6px;display:inline-flex}.equipment-tooltip i{border-radius:2px;width:9px;height:9px}.equipment-empty{text-align:center;padding:65px 12px}.equipment-interval select{background:#fff;border:1px solid #dce4df;border-radius:8px;margin-left:10px;padding:10px 16px}.equipment-chart-scroll{overflow-x:auto}
