:root{color:#111827;background:#f4f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#f4f6f8;margin:0}button,input{font:inherit}.app{max-width:1120px;margin:0 auto;padding:18px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.topbar h1{letter-spacing:-.04em;margin:0;font-size:clamp(28px,5vw,42px)}.topbar p,.muted{color:#6b7280;margin:5px 0 0;font-size:14px}.icon-button{cursor:pointer;background:#fff;border:0;border-radius:18px;padding:13px;box-shadow:0 10px 30px #0f172a14}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.summary{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px;display:grid}.summary div,.metric{background:#fff;border-radius:22px;padding:16px;box-shadow:0 10px 30px #0f172a0f}.summary span,.metric span,.metrics-grid span{color:#6b7280;font-size:13px;display:block}.summary strong{margin-top:4px;font-size:28px;display:block}.systems{gap:16px;display:grid}.system-card{background:#ffffffb8;border:1px solid #e5e7ebe6;border-radius:28px;padding:16px;box-shadow:0 10px 30px #0f172a0f}.system-header,.battery-top,.detail-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.system-header h2,.battery-top h3{margin:0}.system-header p,.battery-top p{color:#6b7280;margin:4px 0 0;font-size:13px}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:13px;font-weight:700;display:inline-flex}.battery-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:14px;display:grid}.battery-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:24px;padding:16px;box-shadow:0 8px 24px #0f172a0a}.battery-card:hover{transform:translateY(-1px)}.metrics-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px;display:grid}.metrics-grid div{background:#f9fafb;border-radius:16px;padding:11px}.metrics-grid strong{margin-top:4px;font-size:17px;display:block}.small-row{color:#4b5563;gap:12px;margin-top:12px;font-size:13px;display:flex}.small-row span{align-items:center;gap:5px;display:inline-flex}.detail-panel{max-width:980px;margin:0 auto;padding:18px}.detail-header button,.login button{color:#fff;cursor:pointer;background:#111827;border:0;border-radius:16px;padding:12px 15px}.detail-panel h1{letter-spacing:-.04em;margin:16px 0 4px;font-size:clamp(30px,6vw,46px)}.warning-box{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:22px;gap:12px;margin:18px 0;padding:14px;display:flex}.warning-box p{margin:0 0 5px}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:18px;display:grid}.metric strong{margin-top:6px;font-size:22px;display:block}.cell-section{margin-top:24px}.cell-columns{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.cell-list{background:#fff;border-radius:22px;padding:16px;box-shadow:0 10px 30px #0f172a0f}.cell-list h3{margin:0 0 10px}.cell-row{border-bottom:1px solid #f3f4f6;justify-content:space-between;padding:9px 0;display:flex}.error{color:#b91c1c;background:#fef2f2;border-radius:18px;margin-bottom:14px;padding:14px}.login{place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{background:#fff;border-radius:28px;width:min(420px,100%);padding:24px;box-shadow:0 20px 60px #0f172a1f}.login-card h1{margin:0 0 4px}.login-card p{color:#6b7280}.login input{border:1px solid #d1d5db;border-radius:16px;width:100%;margin:8px 0;padding:13px}.login button{width:100%;margin-top:8px}@media (width<=720px){.app,.detail-panel{padding:14px}.summary{grid-template-columns:repeat(2,1fr)}.battery-list,.cell-columns{grid-template-columns:1fr}.system-header,.battery-top{align-items:flex-start}}.top-actions{align-items:center;gap:10px;display:flex}.icon-button.text{border-radius:14px;gap:8px;width:auto;padding:0 14px;font-weight:700}.icon-button.primary,.icon-button.text.primary{color:#fff;background:#111827;border-color:#111827}.detected-list{gap:12px;margin-top:18px;display:grid}.detected-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:18px;justify-content:space-between;gap:14px;width:100%;padding:16px;display:flex;box-shadow:0 10px 30px #0f172a0d}.detected-card:hover:not(:disabled){border-color:#111827}.detected-card.configured,.detected-card:disabled{opacity:.55;cursor:default}.detected-card h3{margin:0 0 4px;font-size:16px}.detected-card p{color:#64748b;word-break:break-all;margin:0 0 4px;font-size:13px}.detected-side{white-space:nowrap;flex-direction:column;align-items:flex-end;gap:8px;font-weight:800;display:flex}.type-pill{color:#3730a3;background:#eef2ff;border-radius:999px;padding:5px 9px;font-size:12px}.admin-form{margin-top:18px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0;display:grid}.form-grid label{color:#475569;gap:6px;font-size:13px;font-weight:700;display:grid}.form-grid input,.form-grid select{background:#fff;border:1px solid #dbe3ef;border-radius:12px;padding:12px;font-size:15px}@media (width<=720px){.form-grid{grid-template-columns:1fr}.detected-card{flex-direction:column}.detected-side{flex-direction:row;justify-content:space-between;align-items:center}}.history-section{margin-top:24px}.section-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.section-header h2{margin:0}.range-buttons{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.range-buttons button{cursor:pointer;background:#fff;border:1px solid #dbe3ef;border-radius:999px;padding:8px 11px;font-weight:800}.range-buttons button.active{color:#fff;background:#111827;border-color:#111827}.charts-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.chart-card{background:#fff;border-radius:22px;padding:14px;box-shadow:0 10px 30px #0f172a0f}.chart-title{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.chart-title h3{margin:0;font-size:15px}.chart-title strong{font-size:18px}.chart-card svg{width:100%;height:120px;overflow:visible}.chart-line{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.chart-range{color:#64748b;justify-content:space-between;font-size:12px;display:flex}@media (width<=720px){.section-header{flex-direction:column}.range-buttons{justify-content:flex-start}}.configured-list{gap:14px;display:grid}.configured-system{background:#fbfdff;border:1px solid #e5edf7;border-radius:18px;padding:14px}.configured-system h3{margin:0 0 4px}.configured-row{border-top:1px solid #e5edf7;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.configured-row p{color:#64748b;margin:4px 0 0;font-size:13px}.danger-button{color:#be123c;cursor:pointer;background:#fff1f2;border:1px solid #fecaca;border-radius:999px;align-items:center;gap:7px;padding:9px 12px;font-weight:800;display:inline-flex}.full-width{grid-column:1/-1}@media (width<=720px){.configured-row{flex-direction:column;align-items:flex-start}}.chart-card.clickable{text-align:left;cursor:pointer;border:0;width:100%}.chart-card.clickable:hover{transform:translateY(-1px);box-shadow:0 16px 38px #0f172a1a}.axis-line{stroke:#94a3b8;stroke-width:1.2px}.grid-line{stroke:#e5e7eb;stroke-width:1px}.axis-text.big{font-size:13px}.modal-backdrop{z-index:50;background:#0f172a6b;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.chart-modal{background:#f8fafc;border-radius:28px;width:min(980px,100%);max-height:92vh;padding:18px;overflow:auto;box-shadow:0 30px 90px #0f172a40}.modal-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.modal-header h2{letter-spacing:-.03em;margin:0;font-size:clamp(24px,5vw,36px)}.chart-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:12px 0 14px;display:grid}.big-chart{background:#fff;border-radius:22px;width:100%;height:auto;padding:4px;display:block;box-shadow:0 10px 30px #0f172a0f}.chart-line.big{stroke-width:3.5px}@media (width<=720px){.modal-backdrop{place-items:end center;padding:8px}.chart-modal{border-radius:24px 24px 0 0;max-height:94vh}.modal-header{flex-direction:column}}:root{--bg:#f4f7fb;--card:#fff;--text:#0f172a;--muted:#64748b;--border:#e2e8f0;--blue:#1677ff;--green:#16a34a;--yellow:#f59e0b;--red:#ef4444;--shadow:0 14px 36px #0f172a14}.mobile-shell{max-width:980px;padding-bottom:88px}.app-header{grid-template-columns:44px 1fr auto;align-items:center;gap:10px;margin:4px 0 14px;display:grid}.app-header h1{letter-spacing:-.035em;text-align:center;margin:0;font-size:clamp(24px,6vw,36px)}.app-header p{color:var(--muted);text-align:center;margin:2px 0 0;font-size:13px}.plain-icon{cursor:pointer;color:#111827;background:#ffffffe0;border:0;border-radius:14px;place-items:center;width:42px;height:42px;display:inline-grid;box-shadow:0 8px 22px #0f172a12}.refined-summary{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.refined-summary div{border:1px solid #e2e8f0cc;border-radius:16px;min-height:74px;padding:11px;position:relative;box-shadow:0 8px 26px #0f172a0d}.refined-summary strong{font-size:24px;line-height:1.1}.refined-summary svg,.refined-summary .dot{position:absolute;bottom:14px;right:12px}.refined-summary .yellow{color:var(--yellow)}.dot{border-radius:999px;width:10px;height:10px;display:inline-block}.search-box{border:1px solid var(--border);color:var(--muted);background:#ffffffeb;border-radius:16px;align-items:center;gap:9px;margin:12px 0 18px;padding:11px 13px;display:flex;box-shadow:0 8px 22px #0f172a0a}.search-box input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.section-caption{color:#334155;letter-spacing:.03em;justify-content:space-between;align-items:center;margin:4px 4px 10px;font-size:13px;font-weight:900;display:flex}.app-card{box-shadow:var(--shadow);background:#ffffffeb;border:1px solid #e2e8f0eb;border-radius:18px}.system-card{border-radius:20px;padding:13px}.system-header.refined{align-items:center}.system-leading{align-items:center;gap:12px;min-width:0;display:flex}.system-icon{width:46px;height:46px;color:var(--blue);background:#eff6ff;border:1px solid #dbeafe;border-radius:16px;place-items:center;font-size:25px;display:grid}.system-header h2{letter-spacing:-.02em;font-size:20px}.system-stats{grid-template-columns:1.1fr repeat(3,1fr);align-items:end;gap:8px;margin-top:13px;display:grid}.system-stats div{min-width:0}.system-stats strong{color:var(--green);font-size:16px;display:block}.system-stats span{color:#475569;white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.battery-list.compact{grid-template-columns:1fr;margin-top:12px}.battery-card{border-radius:18px;box-shadow:0 6px 18px #0f172a0a}.status-left{border-left-width:5px}.battery-main-row{grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;display:grid}.battery-avatar{width:42px;height:42px;color:var(--green);background:#ecfdf5;border:1px solid #bbf7d0;border-radius:14px;place-items:center;display:grid}.battery-avatar.large{border-radius:18px;width:58px;height:58px}.battery-title-block{min-width:0}.battery-title-block h3{font-size:18px}.battery-title-block p{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chevron{color:#94a3b8}.battery-kpis{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px;display:grid}.battery-kpis strong{color:#111827;white-space:nowrap;text-overflow:ellipsis;font-size:15px;display:block;overflow:hidden}.battery-kpis span{color:#64748b;margin-top:2px;font-size:11px;display:block}.badge{padding:6px 9px;font-size:12px}.bottom-nav{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:30;background:#fffffff2;border:1px solid #e2e8f0f2;border-radius:22px;grid-template-columns:repeat(4,1fr);width:min(520px,100% - 24px);padding:8px 6px;display:grid;position:fixed;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 16px 50px #0f172a29}.bottom-nav span,.bottom-nav button{color:#64748b;cursor:pointer;background:0 0;border:0;justify-items:center;gap:3px;font-size:11px;display:grid}.bottom-nav .active{color:var(--blue);font-weight:800}.phone-titlebar{grid-template-columns:42px 1fr auto;align-items:center;gap:10px;margin-bottom:12px;display:grid}.phone-titlebar strong{text-align:center;font-size:20px}.back-button{cursor:pointer;background:#fff;border:0;border-radius:14px;width:42px;height:42px;box-shadow:0 8px 22px #0f172a12}.detail-hero{align-items:center;gap:14px;padding:16px;display:flex}.detail-hero h1{margin:0;font-size:clamp(24px,5vw,36px)}.detail-hero p{color:var(--muted);margin:3px 0 0;font-size:13px}.tabs{border-bottom:1px solid var(--border);gap:18px;margin-bottom:6px;padding:14px 2px 8px;display:flex;overflow-x:auto}.tabs span{white-space:nowrap;color:#334155;padding-bottom:8px}.tabs .active{color:var(--blue);border-bottom:2px solid var(--blue);font-weight:800}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.metric{border:1px solid #e2e8f0cc}.history-section{background:#ffffff80;border-radius:24px;padding:12px}.chart-card{border:1px solid #e2e8f0d9}.chart-card:first-child .chart-line{color:var(--green)}.chart-card:nth-child(3) .chart-line,.chart-card:nth-child(5) .chart-line{color:var(--yellow)}.tick-line{stroke:#94a3b8;stroke-width:1px}.axis-text{fill:#475569;font-size:10px}.axis-text.big{fill:#334155;font-size:12px}@media (width<=720px){.app{padding:12px}.refined-summary{grid-template-columns:repeat(4,minmax(86px,1fr));padding-bottom:2px;overflow-x:auto}.refined-summary div{min-width:94px}.systems{gap:12px}.system-stats{grid-template-columns:1.1fr 1fr 1fr 1fr}.system-stats strong{font-size:14px}.battery-kpis{grid-template-columns:repeat(2,1fr)}.battery-main-row{grid-template-columns:auto 1fr auto}.battery-main-row .badge{grid-column:3}.chevron{display:none}.charts-grid{grid-template-columns:1fr}}.tabs button{white-space:nowrap;color:#334155;cursor:pointer;background:0 0;border:0;padding:0 0 8px}.tabs button.active{color:var(--blue);border-bottom:2px solid var(--blue);font-weight:800}.tab-section{margin-top:18px}.events-section{gap:14px;display:grid}.event-list{gap:10px;margin-top:14px;display:grid}.event-row{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:16px;align-items:center;gap:10px;padding:12px;font-weight:700;display:flex}.big-chart-wrap{position:relative}.big-chart{touch-action:none;-webkit-user-select:none;user-select:none}.chart-hitbox{fill:#0000;pointer-events:all}.crosshair line{stroke:#0f172a;stroke-width:1.2px;stroke-dasharray:4 4;opacity:.55}.crosshair circle{fill:#fff;stroke:var(--blue);stroke-width:3px}.tooltip-bg{fill:#0f172aeb}.tooltip-text{fill:#fff;font-size:13px}.tooltip-text.strong{font-size:15px;font-weight:800}.chart-help{color:#64748b;margin:10px 4px 0;font-size:13px}@media (width<=720px){.tabs{gap:16px}.tooltip-text{font-size:12px}.tooltip-text.strong{font-size:14px}}.lazy-chart-card{text-align:left;background:linear-gradient(#fff,#f8fafc);border:1px dashed #cbd5e1;min-height:220px}.lazy-chart-card:disabled{opacity:.65;cursor:wait}.lazy-chart-card .chart-title strong{color:#1d4ed8;background:#eef2ff;border-radius:999px;justify-content:center;align-items:center;min-width:32px;height:32px;display:inline-flex}.login-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:14px;margin:10px 0 8px;padding:10px 12px;font-weight:700}.row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.secondary-button{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;align-items:center;gap:7px;padding:10px 14px;font-weight:800;display:inline-flex}.danger-lite{color:#be123c!important;background:#fff1f2!important;border-color:#fecdd3!important}.editor-card{border-color:#2563eb40;box-shadow:0 16px 40px #2563eb14}.bottom-nav.two-items{grid-template-columns:repeat(2,1fr);width:min(360px,100% - 24px)}@media (width<=760px){.configured-row{align-items:flex-start;gap:12px}.row-actions{justify-content:flex-start;width:100%}.secondary-button,.danger-button{flex:1;justify-content:center}}.configured-system.drop-zone{transition:border-color .18s,background .18s,box-shadow .18s,transform .18s}.configured-system.drop-zone.drop-ready{background:linear-gradient(#eff6ffe6,#fffffffa);border-color:#93c5fd;box-shadow:inset 0 0 0 2px #3b82f62e,0 12px 36px #2563eb1a}.configured-row{gap:12px}.configured-row[draggable=true]{cursor:grab}.configured-row.dragging{opacity:.48;transform:scale(.995)}.drag-handle{color:#94a3b8;letter-spacing:-4px;-webkit-user-select:none;user-select:none;padding:6px 4px 6px 0;font-weight:900}.configured-info{flex:1;min-width:0}.move-select{color:#334155;background:#f8fafc;border:1px solid #dbeafe;border-radius:999px;max-width:240px;padding:9px 12px;font-size:13px;font-weight:800}.move-select:focus{outline:2px solid #2563eb2e}@media (width<=760px){.drag-handle{display:none}.configured-row[draggable=true]{cursor:default}.move-select{width:100%;max-width:none}}.configured-system-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:8px;display:flex}.configured-system-head .compact-actions{flex-shrink:0}.small-note{margin-top:4px!important;font-size:12px!important}.empty-installation{border-top:1px dashed #cbd5e1;margin:10px 0 0;padding-top:10px}@media (width<=760px){.configured-system-head{flex-direction:column}.configured-system-head .compact-actions{width:100%}}.login-card:before{content:"";background:url(/assets/logo-mpv-C-OZAYZy.png) 50%/contain no-repeat;height:42px;margin:0 auto 18px;display:block}.app-header>div:first-of-type:before{content:"";opacity:.95;background:url(/assets/logo-mpv-C-OZAYZy.png) 50%/contain no-repeat;height:22px;margin:0 auto 3px;display:block}@media (width<=720px){.login-card:before{height:34px}.app-header>div:first-of-type:before{height:18px}}:root{--mpv-green:#49b52e;--mpv-green-dark:#238b22;--mpv-orange:#ff7a1a;--mpv-red:#d93a3a;--mpv-text:#111827;--mpv-muted:#667085;--mpv-bg:#f6f7f9;--mpv-card:#fff;--mpv-border:#e5eaf0;--bg:var(--mpv-bg);--text:var(--mpv-text);--muted:var(--mpv-muted);--green:var(--mpv-green);--yellow:var(--mpv-orange);--red:var(--mpv-red);--blue:var(--mpv-green);--shadow:0 10px 28px #11182711}body{color:var(--mpv-text);background:linear-gradient(#fff 0%,#f6f7f9 38%,#eef2f4 100%)}.brand-logo{object-fit:contain;object-position:center;max-width:100%;height:auto;display:block}.login-card:before,.app-header>div:first-of-type:before{content:none!important;display:none!important}.login{background:radial-gradient(circle at 20% 0,#49b52e1a,#0000 32%),linear-gradient(#fff 0%,#f4f7f5 100%)}.login-card{border:1px solid #49b52e24;border-radius:30px;width:min(460px,100%);padding:30px;box-shadow:0 22px 70px #11182721}.login-logo{width:min(330px,92%);margin:0 0 26px}.login-card h1{letter-spacing:-.045em;margin-bottom:8px;font-size:clamp(34px,8vw,48px);line-height:1.03}.login-card p{color:var(--mpv-muted);margin:0 0 22px;font-size:18px}.login input{background:#fff;border:1px solid #d0d5dd;border-radius:18px;padding:15px 16px;font-size:17px}.login input:focus{border-color:var(--mpv-green);outline:4px solid #49b52e2e}.login button,.detail-header button,.icon-button.primary,.icon-button.text.primary{font-weight:800;background:var(--mpv-green)!important;color:#fff!important;border-color:var(--mpv-green)!important}.login button:hover,.icon-button.primary:hover,.icon-button.text.primary:hover{background:var(--mpv-green-dark)!important}.login-error{color:#c2410c;background:#fff7ed;border:1px solid #fdba74;border-radius:18px;padding:13px 14px}.app-header{grid-template-columns:46px 1fr auto;margin:6px 0 16px}.header-title{justify-items:center;gap:4px;min-width:0;display:grid}.header-logo{width:min(260px,78vw);max-height:42px;margin-bottom:2px}.app-header h1{color:var(--mpv-text);letter-spacing:-.04em;font-weight:900;line-height:1}.app-header p{color:var(--mpv-muted);font-weight:500}.plain-icon,.icon-button,.secondary-button,.search-box,.summary div,.metric,.app-card,.system-card,.battery-card,.chart-card,.login-card{border-color:var(--mpv-border)}.plain-icon,.icon-button{color:var(--mpv-text)}.refined-summary div{background:#fffffff5}.refined-summary strong,.system-stats strong{color:var(--mpv-green)}.system-warning .system-stats strong{color:var(--mpv-orange)}.system-critical .system-stats strong{color:var(--mpv-red)}.system-icon{color:var(--mpv-green);background:#49b52e1a;border-color:#49b52e40}.battery-avatar{color:var(--mpv-green);background:#49b52e1a;border-color:#49b52e47}.badge.ok{color:#238b22;background:#eaf8e7}.badge.warning{color:#c75a00;background:#fff3e8}.badge.critical{color:#b42318;background:#fdecec}.status-left.ok{border-left-color:var(--mpv-green)}.status-left.warning{border-left-color:var(--mpv-orange)}.status-left.critical{border-left-color:var(--mpv-red)}.dot.ok{background:var(--mpv-green)}.dot.critical{background:var(--mpv-red)}.refined-summary .yellow,.chart-card:nth-child(3) .chart-line,.chart-card:nth-child(5) .chart-line{color:var(--mpv-orange)}.bottom-nav .active,.tabs .active{color:var(--mpv-green)}.tabs .active{border-bottom-color:var(--mpv-green)}.chart-line{color:var(--mpv-green)}.chart-card:nth-child(2) .chart-line{color:#238b22}.chart-card:nth-child(4) .chart-line{color:#0ea5e9}.danger-lite,.danger-button{color:#b42318!important;background:#fef3f2!important;border-color:#fda29b!important}@media (width<=720px){.login-card{padding:24px}.login-logo{width:min(285px,92%);margin-bottom:22px}.header-logo{width:min(230px,64vw);max-height:36px}.app-header{grid-template-columns:42px 1fr auto}.app-header h1{font-size:30px}}@media (width>=900px){.app{max-width:1220px;padding:16px 18px 96px}.systems{gap:12px}.system-card{border-radius:18px;padding:12px 14px}.system-header.refined{min-height:auto}.system-icon{border-radius:14px;width:40px;height:40px;font-size:22px}.system-header h2{font-size:19px}.system-header p{margin-top:2px;font-size:12px}.system-stats{grid-template-columns:.9fr repeat(3,1fr);gap:6px;margin-top:8px}.system-stats strong{font-size:17px;line-height:1.05}.system-stats span{font-size:11px}.battery-list.compact{gap:8px;margin-top:8px}.battery-card{border-radius:15px;padding:10px 12px}.battery-main-row{grid-template-columns:38px minmax(220px,1fr) auto 20px;gap:10px}.battery-avatar{border-radius:12px;width:34px;height:34px}.battery-title-block h3{font-size:16px;line-height:1.15}.battery-title-block p{max-width:440px;margin-top:2px;font-size:12px}.battery-kpis{grid-template-columns:repeat(4,minmax(78px,1fr));gap:6px;margin-top:8px}.battery-kpis strong{font-size:15px;line-height:1.05}.battery-kpis span{font-size:11px}.badge{padding:6px 9px;font-size:12px}.status-left{border-left-width:4px}.search-box{height:46px}.refined-summary div{border-radius:14px;min-height:62px;padding:9px 11px}.refined-summary strong{font-size:22px}}@media (width<=720px){.app{padding:10px 10px 96px}.summary.refined-summary{gap:7px;margin-bottom:10px}.refined-summary div{border-radius:15px;min-height:70px;padding:9px}.refined-summary strong{font-size:22px}.systems{gap:10px}.system-card{border-radius:19px;padding:11px}.system-leading{gap:9px}.system-icon{border-radius:14px;width:42px;height:42px;font-size:22px}.system-header h2{font-size:21px}.system-stats{gap:5px;margin-top:9px}.system-stats strong{font-size:15px}.system-stats span{font-size:11px}.battery-list.compact{gap:8px;margin-top:8px}.battery-card{border-radius:17px;padding:10px}.battery-main-row{grid-template-columns:38px 1fr auto;gap:9px}.battery-avatar{border-radius:12px;width:36px;height:36px}.battery-title-block h3{font-size:18px;line-height:1.12}.battery-title-block p{max-width:180px;font-size:13px}.battery-kpis{grid-template-columns:repeat(2,1fr);gap:7px;margin-top:9px}.battery-kpis strong{font-size:16px}.battery-kpis span{font-size:11px}.badge{padding:6px 9px;font-size:12px}.bottom-nav{bottom:8px}}.battery-list.compact{grid-template-columns:1fr;gap:8px;margin-top:10px;display:grid}.battery-row-card{text-align:left;cursor:pointer;color:#111827;background:#fff;border:1px solid #e3eaf2;border-radius:16px;width:100%;padding:10px 12px 10px 15px;box-shadow:0 5px 14px #0f172a09}.battery-row-card:hover{border-color:#49b52e73;transform:translateY(-1px)}.battery-row-main{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.battery-row-title{align-items:baseline;gap:8px;min-width:0;display:flex}.battery-row-title strong{white-space:nowrap;text-overflow:ellipsis;font-size:16px;line-height:1.15;overflow:hidden}.battery-row-title span{color:#64748b;white-space:nowrap;font-size:12px;font-weight:800}.battery-row-values{color:#475569;flex-wrap:wrap;gap:12px;margin-top:6px;font-size:13px;line-height:1.25;display:flex}.battery-row-values span{white-space:nowrap}.battery-row-values b{color:#111827;font-size:14px}.battery-row-card.status-left{border-left-width:5px;padding-left:12px}.system-card{padding:13px 16px}.system-header.refined{margin-bottom:6px}.system-stats{padding-bottom:2px;margin-top:8px!important}.system-stats strong{font-size:18px}.system-icon{width:42px!important;min-width:42px!important;height:42px!important;font-size:23px!important}@media (width>=900px){.systems{gap:12px}.system-card{padding:14px 18px}.battery-row-card{padding-top:9px;padding-bottom:9px}.battery-row-main{grid-template-columns:minmax(0,1fr) auto auto}.battery-row-values{grid-template-columns:90px 130px 100px 110px;gap:10px;margin-top:5px;display:grid}}@media (width<=720px){.system-card{border-radius:20px;padding:12px}.system-header.refined{align-items:flex-start}.system-leading h2{font-size:23px}.system-leading p{font-size:15px}.system-stats{grid-template-columns:.9fr repeat(3,1fr)!important}.system-stats strong{font-size:16px}.system-stats span{font-size:11px}.battery-row-card{border-radius:16px;padding:10px 10px 10px 12px}.battery-row-title{display:block}.battery-row-title strong{font-size:18px;display:block}.battery-row-title span{margin-top:2px;display:block}.battery-row-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;display:grid}.badge{padding:6px 9px;font-size:12px}}:root[data-theme=dark],:root[data-theme=dark] body,:root[data-theme=dark] .app,:root[data-theme=dark] .detail-panel,:root[data-theme=dark] .mobile-shell{color:#f8fafc;background:#0f172a}:root[data-theme=dark] .system-card,:root[data-theme=dark] .app-card,:root[data-theme=dark] .summary div,:root[data-theme=dark] .metric,:root[data-theme=dark] .cell-list,:root[data-theme=dark] .battery-row-card,:root[data-theme=dark] .detected-card,:root[data-theme=dark] .configured-system,:root[data-theme=dark] .configured-row,:root[data-theme=dark] .login-card,:root[data-theme=dark] .search-box,:root[data-theme=dark] .bottom-nav,:root[data-theme=dark] .plain-icon,:root[data-theme=dark] .icon-button,:root[data-theme=dark] input,:root[data-theme=dark] select{color:#f8fafc!important;background:#111827!important;border-color:#334155!important}:root[data-theme=dark] .muted,:root[data-theme=dark] .topbar p,:root[data-theme=dark] .system-header p,:root[data-theme=dark] .battery-row-values span,:root[data-theme=dark] .summary span,:root[data-theme=dark] .metric span,:root[data-theme=dark] .search-box input::placeholder{color:#94a3b8!important}:root[data-theme=dark] .battery-row-title strong,:root[data-theme=dark] h1,:root[data-theme=dark] h2,:root[data-theme=dark] h3,:root[data-theme=dark] strong{color:#f8fafc}:root[data-theme=dark] .brand-logo{filter:invert()brightness(1.4)}:root[data-theme=dark] .secondary-button,:root[data-theme=dark] .icon-button.text{color:#f8fafc!important;background:#1f2937!important;border-color:#475569!important}:root[data-theme=dark] .chart-modal,:root[data-theme=dark] .chart-card{color:#f8fafc!important;background:#111827!important}.theme-picker{color:#475569;align-items:center;gap:8px;font-weight:800;display:inline-flex}.theme-picker select{background:#fff;border:1px solid #dbe3ef;border-radius:14px;min-width:125px;padding:10px 12px;font-weight:800}.generated-preview{color:#15803d;background:#ecfdf5;border:1px solid #bbf7d0;border-radius:16px;align-items:center;width:fit-content;min-height:42px;margin:10px 0 14px;padding:8px 14px;font-weight:900;display:inline-flex}.small-action{justify-content:center;min-width:44px;padding-inline:12px!important}.small-action:disabled{opacity:.35;cursor:not-allowed}.configured-system-head .row-actions{flex-wrap:wrap}@media (width<=720px){.theme-picker{justify-content:space-between;width:100%}.theme-picker select{flex:1}}@media (width<=760px){.topbar{grid-template-columns:1fr;align-items:stretch;gap:12px;margin-bottom:14px;display:grid}.topbar>div:first-child{min-width:0}.topbar h1{font-size:34px;line-height:1.05}.topbar p{max-width:100%;font-size:15px;line-height:1.35}.top-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px;width:100%;display:grid}.top-actions .icon-button.text,.top-actions .secondary-button,.top-actions .danger-lite{border-radius:16px;justify-content:center;width:100%;min-height:44px;padding:9px 10px;font-size:14px}.top-actions .theme-picker{border:1px solid var(--border);background:#fffffff0;border-radius:16px;grid-column:1/-1;grid-template-columns:auto 1fr;align-items:center;gap:10px;width:100%;min-height:44px;padding:8px 10px;display:grid}.top-actions .theme-picker select{width:100%;min-width:0;height:36px;padding:6px 10px}.configured-system{border-radius:18px;padding:12px}.configured-system-head{gap:10px}.configured-system-head h3{font-size:20px}.configured-row{padding:12px 0}.configured-info h3,.configured-info strong{font-size:18px}.row-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.row-actions .move-select{grid-column:1/-1}.secondary-button,.danger-button{border-radius:16px;min-height:42px;padding:9px 10px;font-size:14px}.admin-form .section-header h2{font-size:28px}.admin-form .section-header p{font-size:15px;line-height:1.4}}:root[data-theme=dark]{--bg:#0b1220;--card:#111827;--text:#f8fafc;--muted:#a7b4c8;--border:#2f3b4f;--mpv-bg:#0b1220;--mpv-card:#111827;--mpv-text:#f8fafc;--mpv-muted:#a7b4c8;--mpv-border:#2f3b4f;--shadow:0 14px 40px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark] body,:root[data-theme=dark] .app,:root[data-theme=dark] .detail-panel,:root[data-theme=dark] .mobile-shell,:root[data-theme=dark] .login{color:#f8fafc!important;background:linear-gradient(#0b1220 0%,#0f172a 100%)!important}:root[data-theme=dark] .system-card,:root[data-theme=dark] .app-card,:root[data-theme=dark] .summary div,:root[data-theme=dark] .metric,:root[data-theme=dark] .cell-list,:root[data-theme=dark] .battery-row-card,:root[data-theme=dark] .battery-card,:root[data-theme=dark] .detected-card,:root[data-theme=dark] .configured-system,:root[data-theme=dark] .configured-row,:root[data-theme=dark] .login-card,:root[data-theme=dark] .search-box,:root[data-theme=dark] .bottom-nav,:root[data-theme=dark] .plain-icon,:root[data-theme=dark] .icon-button,:root[data-theme=dark] .secondary-button,:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] .move-select,:root[data-theme=dark] .theme-picker{color:#f8fafc!important;background:#111827!important;border-color:#334155!important;box-shadow:0 12px 34px #00000047!important}:root[data-theme=dark] .history-section,:root[data-theme=dark] .chart-modal{color:#f8fafc!important;background:#0f172a!important;border:1px solid #334155!important}:root[data-theme=dark] .chart-card,:root[data-theme=dark] .lazy-chart-card,:root[data-theme=dark] .big-chart{color:#f8fafc!important;background:#111827!important;border-color:#334155!important}:root[data-theme=dark] h1,:root[data-theme=dark] h2,:root[data-theme=dark] h3,:root[data-theme=dark] strong,:root[data-theme=dark] .battery-row-title strong,:root[data-theme=dark] .battery-row-values b,:root[data-theme=dark] .chart-title h3,:root[data-theme=dark] .chart-title strong,:root[data-theme=dark] .detail-hero h1,:root[data-theme=dark] .phone-titlebar strong{color:#f8fafc!important}:root[data-theme=dark] .muted,:root[data-theme=dark] .topbar p,:root[data-theme=dark] .system-header p,:root[data-theme=dark] .battery-row-title span,:root[data-theme=dark] .battery-row-values span,:root[data-theme=dark] .summary span,:root[data-theme=dark] .metric span,:root[data-theme=dark] .chart-range,:root[data-theme=dark] .chart-help,:root[data-theme=dark] .detail-hero p,:root[data-theme=dark] .search-box input::placeholder,:root[data-theme=dark] .configured-row p,:root[data-theme=dark] .detected-card p,:root[data-theme=dark] .form-grid label{color:#a7b4c8!important}:root[data-theme=dark] .axis-text,:root[data-theme=dark] .axis-text.big{fill:#a7b4c8!important}:root[data-theme=dark] .grid-line{stroke:#334155!important}:root[data-theme=dark] .axis-line,:root[data-theme=dark] .tick-line{stroke:#64748b!important}:root[data-theme=dark] .range-buttons button{color:#f8fafc!important;background:#111827!important;border-color:#334155!important}:root[data-theme=dark] .range-buttons button.active,:root[data-theme=dark] .tabs button.active,:root[data-theme=dark] .tabs .active{color:#49b52e!important;border-bottom-color:#49b52e!important}:root[data-theme=dark] .badge.ok{color:#86efac!important;background:#49b52e2e!important}:root[data-theme=dark] .badge.warning{color:#fdba74!important;background:#ff7a1a29!important}:root[data-theme=dark] .badge.critical{color:#fca5a5!important;background:#d93a3a2e!important}:root[data-theme=dark] .danger-button,:root[data-theme=dark] .danger-lite{color:#fca5a5!important;background:#d93a3a24!important;border-color:#f8717173!important}:root[data-theme=dark] .system-icon,:root[data-theme=dark] .battery-avatar{color:#86efac!important;background:#49b52e24!important;border-color:#86efac59!important}:root[data-theme=dark] .brand-logo,:root[data-theme=dark] .login-logo,:root[data-theme=dark] .header-logo{filter:invert()brightness(1.35)contrast(1.05)}:root[data-theme=dark] .tab-section,:root[data-theme=dark] .events-section{color:#f8fafc!important}:root[data-theme=dark] .event-row,:root[data-theme=dark] .warning-box{color:#fdba74!important;background:#ff7a1a24!important;border-color:#fb923c59!important}:root[data-theme=dark] .generated-preview{color:#86efac!important;background:#49b52e29!important;border-color:#86efac59!important}:root[data-theme=dark] .form-grid input,:root[data-theme=dark] .form-grid select,:root[data-theme=dark] .login input{color:#f8fafc!important;background:#0f172a!important;border-color:#334155!important}:root[data-theme=dark] .form-grid input:focus,:root[data-theme=dark] .form-grid select:focus,:root[data-theme=dark] .login input:focus{border-color:#49b52e!important;outline:3px solid #49b52e38!important}@media (width<=760px){:root[data-theme=dark] .top-actions .theme-picker{background:#111827!important}:root[data-theme=dark] .top-actions .theme-picker select{background:#0f172a!important}}.mobile-shell{padding-bottom:24px!important}.bottom-nav{display:none!important}:root[data-theme=dark] .back-button{color:#f8fafc!important;background:#111827!important;border:1px solid #334155!important;box-shadow:0 12px 34px #00000047!important}:root[data-theme=dark] .phone-titlebar{color:#f8fafc!important}:root[data-theme=dark] .plain-icon{color:#f8fafc!important;background:#111827!important;border-color:#334155!important}.settings-page{padding-bottom:32px}.settings-card{margin-top:14px}.theme-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.theme-choice{border:1px solid var(--border,#d1d5db);background:var(--card,#fff);color:var(--text,#111827);text-align:left;cursor:pointer;border-radius:16px;flex-direction:column;gap:5px;padding:14px;display:flex}.theme-choice span{color:var(--muted,#667085);font-size:.86rem;line-height:1.25}.theme-choice.active{border-color:var(--mpv-green,#49b52e);box-shadow:0 0 0 3px #49b52e29}.logout-wide{width:fit-content}.settings-meta{color:var(--muted,#667085);grid-template-columns:auto 1fr;gap:8px 14px;display:grid}.settings-meta strong{color:var(--text,#111827)}:root[data-theme=dark] .theme-choice{background:var(--card,#162033);color:var(--text,#f8fafc);border-color:#ffffff1f}:root[data-theme=dark] .theme-choice span,:root[data-theme=dark] .settings-meta{color:#a8b3c7}:root[data-theme=dark] .settings-meta strong{color:#f8fafc}@media (width<=720px){.settings-topbar .top-actions{justify-content:flex-start;width:100%}.theme-choice-grid{grid-template-columns:1fr}.logout-wide{justify-content:center;width:100%}}.menu-page .settings-topbar{align-items:center}.menu-card{padding:8px}.menu-row{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:16px 14px;font-size:16px;font-weight:800;display:flex}.menu-row:hover{background:var(--soft)}.menu-row+.menu-row{margin-top:4px}.menu-row.danger{color:var(--red)}[data-theme=dark] .menu-row:hover{background:#ffffff0f}.app-header{grid-template-columns:46px minmax(0,1fr) 46px!important;align-items:center!important}.app-header>.plain-icon:first-child{justify-self:start}.app-header>.top-actions{justify-content:flex-end!important;justify-self:end!important;align-items:center!important;width:46px!important;min-width:46px!important;display:flex!important}.app-header>.top-actions .plain-icon{width:46px;height:46px}@media (width<=720px){.app-header{grid-template-columns:42px minmax(0,1fr) 42px!important;column-gap:8px!important}.app-header>.top-actions{width:42px!important;min-width:42px!important}.app-header>.top-actions .plain-icon{width:42px;height:42px}}.system-toggle{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.system-status-side{align-items:center;gap:8px;display:inline-flex}.expand-indicator{color:#64748b;font-size:17px;font-weight:900;line-height:1}.system-card.collapsed{padding-bottom:12px}.system-card.collapsed .system-stats{margin-bottom:0}.system-card.expanded .battery-list.compact{animation:.14s ease-out fadeInList}@keyframes fadeInList{0%{opacity:.2;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.systems-caption{align-items:center;gap:12px}.sort-select{color:#334155;background:#fffffff5;border:1px solid #dbe3ef;border-radius:999px;max-width:170px;margin-left:auto;padding:7px 11px;font-weight:800}.compact-header-actions{justify-content:flex-end}@media (width<=720px){.mobile-shell{padding-top:6px}.app-header{grid-template-columns:42px 1fr auto;margin-bottom:8px}.app-header .top-actions{gap:6px}.app-header .plain-icon{border-radius:15px;width:42px;height:42px}.header-logo{width:min(210px,58vw);max-height:32px}.app-header h1{font-size:28px}.app-header p{font-size:13px;line-height:1.25}.summary.refined-summary{gap:6px;margin-bottom:8px}.refined-summary div{min-width:83px;min-height:58px;padding:8px 9px}.refined-summary span{font-size:12px;line-height:1.16}.refined-summary strong{font-size:20px}.refined-summary svg,.refined-summary .dot{bottom:10px;right:9px}.search-box.mobile-collapsed{display:none}.search-box.open{height:44px;margin:8px 0 12px;display:flex}.systems-caption{margin-top:8px;margin-bottom:8px}.sort-select{max-width:146px;padding:7px 9px;font-size:12px}.system-card.collapsed{padding:10px 11px}.system-card.collapsed .system-header.refined{margin-bottom:2px}.system-card.collapsed .system-stats{margin-top:6px!important}.system-card.collapsed .system-icon{width:38px!important;min-width:38px!important;height:38px!important;font-size:20px!important}.system-card.collapsed .system-leading h2{font-size:21px;line-height:1.08}.system-card.collapsed .system-leading p{font-size:13px}.system-card.collapsed .badge{padding:5px 8px;font-size:11px}}:root[data-theme=dark] .sort-select{color:#f8fafc!important;background:#111827!important;border-color:#334155!important}:root[data-theme=dark] .expand-indicator{color:#94a3b8}.settings-select-label{gap:8px;display:grid}.settings-sort-select{width:100%;max-width:420px}@media (width<=720px){.modal-backdrop{background:#0f172ab8;place-items:stretch stretch;padding:0}.chart-modal{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:calc(env(safe-area-inset-top,0px) + 14px) 14px calc(env(safe-area-inset-bottom,0px) + 18px);border-radius:0;overflow-y:auto}.chart-modal .modal-header{z-index:2;background:inherit;flex-direction:row;align-items:center;padding-bottom:8px;position:sticky;top:0}.chart-modal .modal-header h2{font-size:28px;line-height:1.05}.chart-modal .modal-header .muted{font-size:14px}.chart-modal .modal-header .icon-button.text{flex:none;min-height:44px;padding:10px 14px}.chart-modal .chart-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.chart-modal .metric{border-radius:18px;min-height:auto;padding:12px}.chart-modal .metric span{font-size:13px}.chart-modal .metric strong{font-size:21px;line-height:1.15}.chart-modal .big-chart-wrap{margin-left:-6px;margin-right:-6px}.chart-modal .big-chart{border-radius:20px;width:100%;min-height:46vh;padding:0}.chart-modal .axis-text.big{font-size:16px}.chart-modal .chart-help{margin:12px 6px 0;font-size:14px;line-height:1.35}}
