:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#18212f;background:#eef2f7;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#eef2f7}button,select,input{font:inherit}.appShell{min-height:100vh;padding:18px}.topBar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:16px 18px;border-radius:18px;background:#fff;box-shadow:0 8px 30px #14233c14}.topBar h1,.pageHeader h2,.chartCard h2,.filterBlock h3{margin:0}.topBar h1{font-size:22px;line-height:1.2}.eyebrow{margin:0 0 4px;font-size:12px;color:#677489;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.tabs{display:flex;gap:10px;flex-wrap:wrap}.tab{display:inline-flex;align-items:center;gap:8px;border:1px solid #dce4f1;background:#f7f9fc;padding:10px 14px;border-radius:999px;cursor:pointer;color:#354156}.tab.active{background:#143d63;color:#fff;border-color:#143d63}.tabIcon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:14px;line-height:1}.dashboardGrid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px}.sidePanel{display:flex;flex-direction:column;gap:16px}.filterBlock,.selectField,.chartCard,.alertBox,.loading{background:#fff;border-radius:18px;box-shadow:0 8px 30px #14233c14}.filterBlock{padding:16px}.filterTitleRow{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.filterBlock h3{font-size:14px}.linkButton{border:0;background:transparent;color:#1f6fb2;cursor:pointer;font-size:12px}.checkList{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow:auto}.checkItem{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:#354156}.selectField{display:flex;flex-direction:column;gap:6px;padding:10px 12px;min-width:150px}.selectField span{font-size:12px;color:#677489;font-weight:700}.selectField select{border:1px solid #dce4f1;border-radius:10px;padding:8px;background:#f7f9fc;min-width:140px}.dashboardContent{min-width:0}.pageHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.pageHeader h2{font-size:24px}.filterRow{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.pageHeader .filterBlock{min-width:240px;max-width:360px;padding:12px}.pageHeader .checkList{max-height:85px}.loading{padding:12px 14px;color:#677489;margin-bottom:14px}.chartsGrid{display:grid;gap:16px;margin-bottom:16px}.topCharts{grid-template-columns:minmax(350px,1.25fr) minmax(280px,1fr) minmax(280px,1fr)}.bottomCharts{grid-template-columns:repeat(3,minmax(260px,1fr))}.chartCard{padding:16px;min-height:320px}.chartCard h2{font-size:15px;margin-bottom:12px;color:#202b3c}.chartBody{height:260px}.pieWrap{display:grid;grid-template-columns:minmax(0,1fr);height:100%}.legendList{display:grid;gap:4px;max-height:95px;overflow:auto}.legendItem{display:flex;align-items:center;gap:8px}.legendItem span{width:10px;height:10px;border-radius:999px;flex:0 0 auto}.legendItem small{color:#4f5d73}.noData{height:100%;display:flex;align-items:center;justify-content:center;color:#677489;border:1px dashed #dce4f1;border-radius:14px;background:#f9fbfe}.alertBox{display:flex;align-items:center;gap:12px;padding:14px 16px;margin-bottom:16px;border-left:6px solid #e74c3c}.alertBox strong{color:#b83227;white-space:nowrap}.trafoGrid{display:grid;grid-template-columns:minmax(460px,1.25fr) minmax(380px,1fr);gap:16px;margin-bottom:16px}.tableCard .chartBody{height:390px}.trafoGrid .chartCard{min-height:450px}.trafoGrid .chartBody{height:390px}.wideChart .chartBody{height:360px}.tableWrap{overflow:auto;height:100%;border:1px solid #e7edf5;border-radius:12px}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:10px;border-bottom:1px solid #e7edf5;white-space:nowrap}th{position:sticky;top:0;background:#f7f9fc;z-index:1;color:#4f5d73}.statusPill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}.statusPill.good{background:#eaf7ef;color:#176c3a}.statusPill.warning{background:#fff8d8;color:#846100}.statusPill.critical{background:#fdecea;color:#a3322a}@media (max-width: 1180px){.dashboardGrid,.trafoGrid,.topCharts,.bottomCharts{grid-template-columns:1fr}.sidePanel{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.pageHeader{flex-direction:column}.filterRow{width:100%;justify-content:flex-start}}@media (max-width: 720px){.appShell{padding:10px}.topBar{flex-direction:column;align-items:stretch}.tabs{width:100%}.tab{flex:1;justify-content:center}}.filterActionsCard,.errorBox{background:#fff;border-radius:18px;box-shadow:0 8px 30px #14233c14}.filterActionsCard{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px}.filterActionsCard strong{font-size:14px;color:#202b3c}.clearButton{border:1px solid #dce4f1;background:#f7f9fc;color:#143d63;border-radius:999px;padding:7px 10px;cursor:pointer;font-size:12px;font-weight:700}.clearButton:disabled{cursor:not-allowed;color:#9aa7b8;background:#f3f5f8}.errorBox{padding:12px 14px;color:#a3322a;border-left:6px solid #e74c3c;margin-bottom:14px}.filterActionsInline{display:flex;align-items:flex-end}.clearButton{border:1px solid #cdd8ea;background:#fff;color:#223047;padding:10px 14px;border-radius:10px;cursor:pointer;min-height:42px}.clearButton:disabled{opacity:.45;cursor:not-allowed}.errorBox{background:#fff1f2;color:#b42318;padding:12px 14px;border-radius:14px;margin-bottom:14px;border:1px solid #fecdd3}.noAsideGrid{grid-template-columns:minmax(0,1fr)}.filterActionsInline{display:flex;align-items:flex-end;padding-bottom:2px}.clickableChartHint{height:100%;display:flex;flex-direction:column;gap:6px}.clickableChartHint>span{color:#677489;font-size:12px}.phaCurvePage{display:flex;flex-direction:column;gap:16px}.emptyCurveState,.selectedPointCard,.phaCurveShell{background:#fff;border-radius:18px;box-shadow:0 8px 30px #14233c14}.emptyCurveState{padding:28px}.emptyCurveState h2{margin:0 0 8px}.selectedPointCard{display:flex;gap:14px;flex-wrap:wrap;padding:14px 16px;color:#354156;font-size:13px}.phaCurveShell{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px;padding:12px;background:#0f141b;color:#d7dee9;border:1px solid #242b35}.phaCurveGraphPanel,.phaKpiCard{background:#151a21;border:1px solid #2a3340;border-radius:4px}.phaCurveGraphPanel{min-height:390px;display:flex;flex-direction:column}.graphTitleRow{display:flex;justify-content:space-between;gap:12px;padding:10px 12px 0;font-size:12px;color:#cbd5e1}.graphTitleRow span{color:#9bb7ff}.phaCurveGraphBody{flex:1;min-height:300px}.curvePlaybackBar{display:grid;grid-template-columns:auto auto auto auto minmax(120px,1fr) auto auto;gap:12px;align-items:center;padding:8px 16px 12px;color:#d7dee9;font-size:12px}.playbackTrack{position:relative;height:4px;border-radius:999px;background:linear-gradient(90deg,#ef4444,#ef4444 82%,#6b7280 82%,#6b7280)}.playbackTrack span{position:absolute;right:16%;top:50%;transform:translateY(-50%);width:13px;height:13px;border-radius:999px;background:#f87171;box-shadow:0 0 0 4px #f8717140}.phaKpiGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start}.phaKpiCard{min-height:106px;padding:12px;display:flex;flex-direction:column;justify-content:space-between}.phaKpiCard.wide{grid-column:1 / -1}.phaKpiCard span{font-size:12px;color:#d6d2ff;font-weight:700}.phaKpiCard strong{color:#73bf69;font-size:36px;line-height:1;font-weight:700;text-align:right}.phaKpiCard.subtle strong{font-size:26px}@media (max-width: 960px){.phaCurveShell{grid-template-columns:1fr}.phaKpiGrid{grid-template-columns:repeat(2,minmax(120px,1fr))}}.phaCurveShell{display:block;padding:0;background:transparent;color:#18212f;border:0;box-shadow:none}.phaCurveGraphPanel{position:relative;min-height:430px;display:flex;flex-direction:column;background:#fff;border:1px solid #e7edf5;border-radius:18px;box-shadow:0 8px 30px #14233c14;overflow:hidden}.graphTitleRow{padding:14px 16px 0;color:#202b3c}.graphTitleRow span{color:#2563eb;font-weight:700}.phaCurveGraphBody{position:relative;flex:1;min-height:360px;padding:0}.phaOverlayKpis{position:absolute;top:18px;right:18px;z-index:4;display:grid;grid-template-columns:repeat(2,minmax(110px,1fr));gap:10px;width:260px;pointer-events:none}.phaKpiCard{min-height:86px;padding:12px;background:#f7f9fc;border:1px solid #dce4f1;border-radius:14px;box-shadow:none}.phaKpiCard span{color:#4f5d73;font-size:12px;font-weight:800}.phaKpiCard strong{color:#2563eb;font-size:30px;line-height:1;font-weight:800;text-align:right}.phaKpiCard.subtle strong{font-size:25px}.curvePlaybackBar,.playbackTrack,.playbackTrack span,.phaKpiGrid{display:none!important}@media (max-width: 980px){.phaOverlayKpis{position:static;width:auto;padding:12px 16px 0;pointer-events:auto}.phaCurveGraphBody{display:flex;flex-direction:column}.phaCurveGraphBody .recharts-responsive-container{min-height:320px}}.phaCurveGraphPanel{min-height:500px}.phaCurveGraphBody{min-height:420px}.phaCurveChartArea{height:390px;padding:8px 16px 16px}.phaCurveChartArea .noData{height:360px}.phaOverlayKpis{top:52px;right:16px}
