.componentsPage{grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 64px);display:grid}.componentsPage aside{min-height:calc(100vh - 64px)}.componentIntro{justify-content:space-between;align-items:flex-start;margin:4px 0 18px;display:flex}.componentIntro small,.categoryCard small{color:#1296d4;letter-spacing:.12em;font-size:11px;font-weight:800}.componentIntro h1{margin:7px 0;font-size:27px}.componentIntro p{color:#6d7989;margin:0}.componentKpis{margin-bottom:14px}.categoryCard{background:#fff;border:1px solid #dbe2e8;border-radius:10px;grid-template-columns:220px 1fr;gap:25px;padding:20px;display:grid}.categoryCard h2{margin:6px 0}.categoryBars{grid-template-columns:repeat(2,minmax(190px,1fr));gap:8px 22px;display:grid}.categoryBars button{text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:145px 1fr 34px;align-items:center;gap:9px;padding:7px;font-size:12px;display:grid}.categoryBars button:hover,.categoryBars button.active{background:#edf7fc}.categoryBars i{background:#e6ecf1;border-radius:10px;height:7px;overflow:hidden}.categoryBars em{background:#159bd5;border-radius:10px;height:100%;display:block}.categoryBars b{text-align:right}.checklistState{color:#667587;background:#eef1f4;border-radius:8px;gap:9px;margin-top:28px;padding:12px;display:flex}.checklistState.ok{color:#157457;background:#eaf7f2}.checklistState svg{flex:none;width:20px}.checklistState b,.checklistState span{font-size:11px;display:block}.checklistState span{margin-top:3px;line-height:1.35}.emptyComponents{text-align:center;color:#718092;padding:55px}.emptyComponents svg{width:34px}.emptyComponents h3{color:#263343}.componentLauncher{cursor:pointer}.componentLauncher:hover{border-color:#159bd5;box-shadow:0 4px 14px #168fc820}@media (width<=900px){.componentsPage{grid-template-columns:1fr}.componentsPage aside{min-height:auto}.categoryCard,.categoryBars{grid-template-columns:1fr}.componentKpis{grid-template-columns:1fr 1fr}}.maintenanceCard{background:#fff;border:1px solid #dbe2e8;border-radius:10px;margin-top:14px;padding:18px 20px}.maintenanceHeading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.maintenanceHeading small{color:#1296d4;letter-spacing:.12em;font-size:11px;font-weight:800}.maintenanceHeading h2{margin:5px 0 3px;font-size:19px}.maintenanceHeading p{color:#6d7989;margin:0;font-size:12px}.maintenanceHeading button{background:#fff;border:1px solid #cdd8e1;border-radius:6px;padding:7px 10px}.maintenanceSegments{grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin-top:15px;display:grid}.maintenanceSegments button{text-align:left;background:#f8fafb;border:1px solid #dbe2e8;border-radius:8px;justify-content:space-between;align-items:center;padding:11px 13px;display:flex}.maintenanceSegments button:hover,.maintenanceSegments button.active{border-color:#159bd5;box-shadow:0 0 0 2px #159bd533}.maintenanceSegments button:before{content:"";border-radius:50%;width:9px;height:9px;margin-right:8px}.maintenanceSegments button span{flex:1}.maintenanceSegments .done:before,.maintenancePill.done:before{background:#2aa56f}.maintenanceSegments .doing:before,.maintenancePill.doing:before{background:#e4a11b}.maintenanceSegments .waiting:before,.maintenancePill.waiting:before{background:#8b98a7}.maintenanceSegments .missing:before,.maintenancePill.missing:before{background:#d15d5d}.maintenancePill{white-space:nowrap;background:#f1f4f6;border-radius:999px;align-items:center;gap:7px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.maintenancePill:before{content:"";border-radius:50%;width:7px;height:7px}@media (width<=900px){.maintenanceSegments{grid-template-columns:1fr 1fr}}@media (width<=1100px) and (width>=901px){.componentsPage{grid-template-columns:240px minmax(0,1fr)}.componentsPage main{min-width:0;padding:20px}.componentIntro{margin-bottom:12px}.componentIntro h1{font-size:25px}.componentKpis{gap:10px}.componentKpis .kpi{min-width:0;padding:12px}.componentKpis .kpi strong{font-size:20px}.componentKpis .kpi>span{width:34px;height:34px}.categoryCard{grid-template-columns:1fr;gap:8px;padding:16px 18px}.categoryCard h2{margin-bottom:2px}.categoryBars{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px}.categoryBars button{grid-template-columns:minmax(110px,145px) minmax(24px,1fr) 34px;min-width:0;padding:6px}.maintenanceCard{padding:16px 18px}.maintenanceSegments{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.maintenanceSegments button{min-width:0;padding:10px}.maintenanceSegments button span{line-height:1.2}.tableTop{gap:10px}.tableTop>div:first-child{min-width:0}.actions{flex:none}.actions button{padding:0 10px}}.topicLink{color:#9a5900;white-space:nowrap;background:#fff3df;border-radius:6px;align-items:center;padding:5px 9px;font-weight:700;text-decoration:none;display:inline-flex}.topicLink:hover{background:#ffe6bd;text-decoration:underline}.componentDebug{background:#fff;border:1px solid #dbe2e8;border-radius:10px;margin-top:14px;padding:16px}.componentDebug>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.componentDebug h2{margin:0;font-size:18px}.componentDebug>div>div{gap:8px;display:flex}.componentDebug button{background:#fff;border:1px solid #cdd8e1;border-radius:7px;align-items:center;gap:6px;padding:8px 10px;display:inline-flex}.componentDebug button svg{width:16px;height:16px}.componentDebug p{color:#647386;margin:7px 0 10px;font-size:12px}.componentDebug textarea{resize:vertical;color:#263343;background:#f7f9fb;border:1px solid #cdd8e1;border-radius:7px;width:100%;height:190px;padding:10px;font:11px/1.4 Consolas,monospace}.componentDebugTrigger{color:#738292;text-underline-offset:2px;opacity:.65;background:0 0;border:0;padding:5px 2px;font-size:10px;text-decoration:underline}.componentDebugTrigger:hover,.componentDebugTrigger:focus-visible{color:#147eaf;opacity:1}.componentDebugTrigger:disabled{cursor:wait;opacity:.4}.tablePagination{background:#fafbfc;border-top:1px solid #e6ecf1;justify-content:center;align-items:center;gap:14px;padding:14px 16px;display:flex}.tablePagination button{color:#263343;background:#fff;border:1px solid #cdd8e1;border-radius:6px;padding:7px 12px;font-size:12px;font-weight:600}.tablePagination button:hover:not(:disabled){color:#159bd5;border-color:#159bd5}.tablePagination button:disabled{opacity:.45;cursor:not-allowed}.tablePagination span{color:#647386;font-size:12px;font-weight:600}.componentTypeSummary{color:#263343;background:#fff;border:1px solid #dbe2e8;border-radius:8px;margin:0 0 10px;padding:10px 14px;font-size:14px}.componentTypeSummary strong{font-size:16px}.multiFilter{gap:6px;margin-bottom:12px;display:grid;position:relative}.multiFilter>span{color:#647386;letter-spacing:.06em;font-size:11px;font-weight:700}.multiFilterTrigger{text-align:left;color:#263343;background:#fff;border:1px solid #cdd8e1;border-radius:7px;width:100%;padding:8px 10px;font-size:12px}.multiFilterTrigger:disabled{opacity:.55;cursor:not-allowed}.multiFilterMenu{z-index:30;background:#fff;border:1px solid #cdd8e1;border-radius:8px;padding:8px;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 8px 24px #1b2a3a1a}.multiFilterSearch{border:1px solid #dbe2e8;border-radius:6px;align-items:center;gap:6px;margin-bottom:6px;padding:4px 8px;display:flex}.multiFilterSearch svg{color:#647386;width:14px}.multiFilterSearch input{border:0;outline:0;width:100%;font-size:12px}.multiFilterActions{gap:6px;margin-bottom:6px;display:flex}.multiFilterActions button{background:#f8fafb;border:1px solid #dbe2e8;border-radius:6px;flex:1;padding:5px 8px;font-size:11px;font-weight:600}.multiFilterOptions{gap:2px;max-height:220px;display:grid;overflow:auto}.multiFilterOptions label{cursor:pointer;border-radius:5px;align-items:center;gap:8px;padding:5px 6px;font-size:12px;display:flex}.multiFilterOptions label:hover{background:#edf7fc}.multiFilterEmpty{color:#647386;padding:8px 6px;font-size:12px;display:block}.filterChips{flex-wrap:wrap;gap:6px;padding:10px 14px 0;display:flex}.filterChip{color:#1f4f68;background:#f3f8fb;border:1px solid #cdd8e1;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.filterChip:hover{color:#159bd5;border-color:#159bd5}.filterChipClear{color:#647386;background:0 0;border:0;padding:4px 6px;font-size:11px;font-weight:700;text-decoration:underline}.distributionCompact{gap:4px;max-height:220px;padding-right:4px;display:grid;overflow:auto}.distributionCompact label{cursor:pointer;border-radius:6px;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:grid}.distributionCompact label:hover,.distributionCompact label.active{background:#edf7fc}.distributionCompact em{color:#647386;font-size:11px;font-style:normal;font-weight:700}.componentIntro{padding-bottom:14px;position:relative}.componentIntro:before{content:"";background:#dfe7ed;border-radius:8px;height:6px;position:absolute;bottom:0;left:0;right:0}.componentIntro:after{content:"";height:6px;width:var(--component-progress,0%);background:linear-gradient(90deg,#159bd5,#25b3a7);border-radius:8px;transition:width .25s;position:absolute;bottom:0;left:0}.categoryBars button span{font-size:13px}.categoryBars button span:first-letter{font-size:18px}.typePicker{margin-bottom:18px}.typePicker>span{color:#657284;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700;display:block}.selectAllTypes{color:#168fc8;background:0 0;border:0;padding:6px 0;font-size:11px}.typePicker label{border-radius:5px;grid-template-columns:18px 1fr auto;align-items:center;gap:5px;padding:5px;font-size:11px;margin:4px 0!important;display:grid!important}.typePicker label:hover{background:#eaf6fc}.typePicker label b{font-weight:600}.typePicker label em{color:#768395;font-style:normal}.componentClear{margin:-6px 0 10px}.componentsPage aside{max-height:calc(100vh - 64px);overflow-y:auto}.issuesPage{background:#f3f6f8;min-height:calc(100vh - 64px);padding:22px}.issueFilters,.issueMetric,.trafficCard,.distributionCard,.issueTableCard{background:#fff;border:1px solid #d8e1e8;border-radius:10px}.issueFilters{margin-bottom:14px;padding:18px 20px}.issueIntro{justify-content:space-between;align-items:flex-start;display:flex}.issueIntro small{letter-spacing:.12em;color:#1596d2;font-weight:800}.issueIntro h1{margin:5px 0;font-size:27px}.issueIntro p{color:#687789;margin:0}.issueIntro button{background:#fff;border:1px solid #cbd7e0;border-radius:6px;padding:9px 12px}.issueObjectSelection{color:#63758a;background:#f7fafc;border:1px solid #d7e1e8;border-radius:8px;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;margin-top:14px;padding:11px 13px;display:grid}.issueObjectSelection svg{width:20px;height:20px}.issueObjectSelection strong,.issueObjectSelection span{display:block}.issueObjectSelection strong{color:#31475d;font-size:13px}.issueObjectSelection span{margin-top:2px;font-size:11px}.issueObjectSelection.active{color:#168ac3;background:#eef8fd;border-color:#55acd7}.issueObjectSelection.active strong{color:#116f9d}.issueObjectSelection button{color:#167cae;background:#fff;border:1px solid #b7d6e6;border-radius:6px;padding:7px 10px;font-weight:700}.issueFilterGrid{grid-template-columns:1.5fr repeat(7,1fr);gap:10px;margin-top:16px;display:grid}.issueFilterGrid label>span{text-transform:uppercase;color:#536780;margin-bottom:5px;font-size:10px;font-weight:800;display:block}.issueFilterGrid select,.issueFilterGrid .search{height:38px}.issueFilterGrid select{background:#fff;border:1px solid #cbd7e1;border-radius:6px;width:100%;padding:0 9px}.issueMetrics{grid-template-columns:repeat(3,minmax(0,1fr)) 220px;gap:12px;display:grid}.issueMetric,.trafficCard{padding:16px}.issueMetric h3,.trafficCard h3,.distributionCard h3{text-transform:uppercase;color:#536780;margin:0 0 12px;font-size:13px}.issueDonut{border-radius:50%;place-items:center;width:124px;height:124px;margin:4px auto 14px;display:grid}.issueDonut:before{content:"";background:#fff;border-radius:50%;width:76px;height:76px}.issueDonut span{text-align:center;position:absolute}.issueDonut b,.issueDonut small{display:block}.issueDonut b{font-size:25px}.issueDonut small{color:#708092;font-size:9px}.issueLegend button{text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:10px 1fr 35px 35px;gap:6px;width:100%;padding:5px;display:grid}.issueLegend button:hover,.issueLegend button.active{background:#edf7fc}.issueLegend i{border-radius:3px;width:9px;height:9px;margin-top:3px}.issueLegend b,.issueLegend small{text-align:right}.trafficCard{text-align:center}.traffic{background:#1d2631;border:0;border-radius:15px;gap:7px;width:58px;height:116px;margin:0 auto 9px;padding:10px;display:grid;box-shadow:inset 0 0 0 2px #0d1218,0 5px 12px #1c29343d}.traffic i{background:#34404d;border-radius:50%}.traffic.red i:first-child{background:#ed5964;box-shadow:0 0 14px #ed5964}.traffic.yellow i:nth-child(2){background:#edb524;box-shadow:0 0 14px #edb524}.traffic.green i:last-child{background:#42b678;box-shadow:0 0 14px #42b678}.trafficCard strong,.trafficCard>span{display:block}.trafficCard strong{font-size:20px}.trafficCard>span{color:#61738a;font-size:10px;font-weight:800}.trafficRules{text-align:left;border-top:1px solid #e1e6eb;margin-top:10px;padding-top:7px}.trafficRules p{margin:4px;font-size:9px}.trafficRules i{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.trafficRules .red{background:#ed5964}.trafficRules .yellow{background:#edb524}.trafficRules .green{background:#42b678}.distributionCard{grid-template-columns:1fr 1fr;gap:28px;margin-top:12px;padding:17px;display:grid}.distributionCard button{text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:1fr 45px;gap:3px 8px;width:100%;padding:5px 7px;display:grid}.distributionCard button:hover,.distributionCard button.active{background:#edf7fc}.distributionCard button b{text-align:right}.distributionCard button i{background:#e7edf2;border-radius:5px;grid-column:1/3;height:6px}.distributionCard button em{background:#557de2;border-radius:5px;height:100%;display:block}.issueTableCard{margin-top:12px;overflow:hidden}.issueTableCard>div:first-child{padding:15px 18px}.issueTableCard h2{margin:0;font-size:19px}.issueTableCard>div>span{color:#687789;font-size:12px}.issueTable{max-height:520px;overflow:auto}.issueTable table{border-collapse:collapse;width:100%;min-width:1200px}.issueTable th{color:#52667e;text-transform:uppercase;text-align:left;cursor:pointer;background:#eef2f6;padding:12px;font-size:10px;position:sticky;top:0}.issueTable td{border-top:1px solid #dbe3e9;padding:10px 12px;font-size:12px}.issueTable tr:hover td{background:#f1f8fc}.issueTable td small{color:#738193;margin-top:3px;display:block}.issueTable a{color:#167fc0;align-items:center;gap:5px;font-weight:800;text-decoration:none;display:flex}.issueTable a svg{width:13px}.issuePill,.priorityPill{border-radius:999px;padding:4px 8px;font-weight:700;display:inline-block}.issuePill.open{color:#2670be;background:#eaf3ff}.issuePill.closed{color:#25815a;background:#e8f7ef}.priorityPill{color:#7a5c00;background:#fff1b8}.overdue{color:#c8444e;font-weight:800}.noIssues{text-align:center;color:#718092;padding:45px}.noIssues svg{margin:auto;display:block}@media (width<=1250px){.issueFilterGrid{grid-template-columns:repeat(4,1fr)}.issueMetrics{grid-template-columns:repeat(2,1fr)}}@media (width<=800px){.issuesPage{padding:12px}.issueFilterGrid,.issueMetrics,.distributionCard{grid-template-columns:1fr}.issueIntro{display:block}.issueIntro button{margin-top:10px}}:root{color:#17202d;font-synthesis:none;--brand-header:#17202d;--brand-accent:#168fc8;--brand-accent-strong:#1296d4;--brand-accent-soft:#eaf6fc;--brand-logo:none;background:#f4f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}.app{min-height:100vh}header{background:var(--brand-header);color:#fff;align-items:center;gap:36px;height:64px;padding:0 28px;display:flex}.brand{white-space:nowrap;align-items:center;gap:10px;display:flex}.mark{color:#17202d;background:#fff;border-radius:9px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}nav{align-self:stretch;gap:4px;display:flex}nav button{color:#aeb9c9;background:0 0;border:0;align-items:center;gap:7px;padding:0 16px;display:flex}nav button svg{width:16px}nav button.active{color:#fff;box-shadow:inset 0 -3px #19a5dc}nav button:disabled{opacity:.38}.mode{color:#aeb9c9;margin-left:auto;font-size:12px}.global{background:#fff;border-bottom:1px solid #dce2e8;align-items:center;gap:16px;height:80px;padding:12px 32px;display:flex}.global label{width:240px}label>span{color:#657284;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:11px;font-weight:700;display:block}select,.search{background:#fff;border:1px solid #ccd5df;border-radius:7px;width:100%;height:38px;padding:0 10px}.clear{color:#637084;background:0 0;border:0;align-items:center;gap:6px;display:flex}.clear svg{width:15px}main{max-width:1500px;margin:auto;padding:32px}.hero{padding:16px 4px 20px}.hero p,.chartCard small,.feature small{color:var(--brand-accent-strong);letter-spacing:.12em;font-size:11px;font-weight:800}.hero h1{margin:8px 0;font-size:31px}.hero span{color:#687587}.kpis{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.kpi{background:#fff;border:1px solid #dbe2e8;border-radius:10px;justify-content:space-between;padding:20px;display:flex;box-shadow:0 4px 12px #1d344012}.kpi small{text-transform:uppercase;color:#6d7887;font-size:11px;font-weight:700;display:block}.kpi strong{margin-top:10px;font-size:25px;display:block}.kpi>span{background:var(--brand-accent-soft);color:#138fca;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.kpi svg{width:20px}.dashboardGrid{grid-template-columns:2fr 1fr 1fr;gap:14px;margin-top:18px;display:grid}.feature,.placeholder{text-align:left;background:#fff;border:1px solid #dbe2e8;border-radius:10px;min-height:160px;padding:24px}.feature{justify-content:space-between;align-items:center;display:flex}.feature h2,.placeholder h3{margin:7px 0}.feature p,.placeholder p{color:#738092}.feature svg{color:#149ad5}.spaces{grid-template-columns:230px minmax(0,1fr);display:grid}aside{background:#f8fafb;border-right:1px solid #d9e0e7;min-height:calc(100vh - 144px);padding:24px 18px}aside h3{margin:0 0 22px}aside label{margin-bottom:18px;display:block}.search{align-items:center;gap:8px;display:flex}.search svg{color:#7b8897;width:16px}.search input{background:0 0;border:0;outline:0;width:100%}.detail{max-width:none;margin:0;padding:22px}.compact .kpi{padding:15px 18px}.compact .kpi strong{font-size:20px}.chartCard,.tableCard{background:#fff;border:1px solid #dbe2e8;border-radius:10px;margin-top:14px;box-shadow:0 3px 12px #1d34400d}.chartCard{grid-template-columns:1fr 190px 1.3fr;align-items:center;gap:28px;padding:20px;display:grid}.chartCard h2{margin:5px 0}.donut{border-radius:50%;place-items:center;width:170px;height:170px;display:grid}.donut:before{content:"";background:#fff;border-radius:50%;width:104px;height:104px;position:absolute}.donut span{z-index:1;text-align:center;color:#6d7887}.donut b{color:#17202d;font-size:27px;display:block}.legend{grid-template-columns:1fr 1fr;gap:11px 24px;display:grid}.legend div{grid-template-columns:10px 1fr auto;align-items:center;gap:8px;font-size:13px;display:grid}.legend i{border-radius:50%;height:10px}.tableTop{justify-content:space-between;align-items:center;padding:16px;display:flex}.tableTop h2{margin:0 0 4px;font-size:18px}.tableTop span{color:#718092;font-size:12px}.actions{gap:8px;display:flex;position:relative}.actions button{background:#fff;border:1px solid #ccd5df;border-radius:7px;align-items:center;gap:7px;height:36px;padding:0 12px;display:flex}.actions svg{width:16px}.actions .primary{background:var(--brand-accent);color:#fff;border-color:var(--brand-accent)}.actions button:disabled{opacity:.5}.colMenu{z-index:5;background:#fff;border:1px solid #ccd5df;border-radius:8px;width:195px;padding:9px;position:absolute;top:42px;right:0;box-shadow:0 10px 30px #10202d2b}.colMenu label{gap:8px;padding:7px;font-size:13px;display:flex}.tableWrap{border-top:1px solid #dde3e9;max-height:490px;overflow:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:13px}th{color:#637186;text-align:left;text-transform:uppercase;letter-spacing:.04em;z-index:1;background:#f1f4f7;font-size:11px;position:sticky;top:0}th,td{border-bottom:1px solid #e0e6ec;padding:13px 14px}tbody tr:hover{cursor:pointer;background:#eff8fc}input[type=checkbox]{accent-color:var(--brand-accent)}@media (width<=900px){header{padding:0 14px}.brand b,.mode,nav button:disabled{display:none}.global{padding:10px 14px}.kpis{grid-template-columns:1fr 1fr}.spaces{grid-template-columns:1fr}aside{border-right:0;grid-template-columns:repeat(2,1fr);gap:12px;min-height:auto;display:grid}aside h3{grid-column:1/-1}.chartCard,.dashboardGrid{grid-template-columns:1fr}.global label{width:42%}}.widgetRefresh{z-index:1000;color:#147eaf;cursor:pointer;background:#fff;border:1px solid #b9cfdd;border-radius:999px;align-items:center;gap:7px;padding:9px 13px;font-weight:700;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 5px 18px #1733472b}.widgetRefresh:hover{background:#edf8fd}.widgetRefresh:disabled{opacity:.7;cursor:wait}.widgetRefresh svg{width:17px;height:17px}.widgetRefresh .spinning{animation:.8s linear infinite widgetSpin}@keyframes widgetSpin{to{transform:rotate(360deg)}}@media (width<=700px){.widgetRefresh{bottom:10px;right:10px}.widgetRefresh span{display:none}}.diagnosticMenu{z-index:999;position:fixed;bottom:72px;right:22px}.diagnosticTrigger{color:#82909c;opacity:.48;background:#fff;border:1px solid #cbd5dd;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;box-shadow:0 3px 10px #1733471c}.diagnosticTrigger:hover,.diagnosticTrigger:focus-visible{opacity:1;color:#147eaf;background:#f3f9fc}.diagnosticTrigger svg{width:14px;height:14px}.diagnosticPopover{background:#fff;border:1px solid #cbd5dd;border-radius:9px;width:225px;padding:12px;position:absolute;bottom:38px;right:0;box-shadow:0 10px 30px #10202d2b}.diagnosticPopover small{color:#718092;letter-spacing:.1em;margin-bottom:8px;font-size:10px;font-weight:800;display:block}.diagnosticPopover button{color:#304152;background:#f7fafc;border:1px solid #c9d4dc;border-radius:7px;justify-content:center;align-items:center;gap:7px;width:100%;height:36px;display:flex}.diagnosticPopover button svg{width:16px}.diagnosticPopover p{color:#7a8793;margin:8px 2px 0;font-size:11px;line-height:1.35}.diagnosticPopover button:disabled{opacity:.55;cursor:wait}@media (width<=700px){.diagnosticMenu{bottom:58px;right:14px}}.legend>div{cursor:pointer;border-radius:7px;margin:-7px;padding:7px;transition:background .15s,box-shadow .15s}.legend>div:hover{background:#edf7fc}.legend>div.active{background:#e2f3fb;box-shadow:inset 0 0 0 1px #69bde2}.chart-back{color:#168fc8;background:0 0;border:0;grid-column:1/-1;justify-self:start;padding:4px 0 10px;font-size:13px;font-weight:700;display:block}.chart-back:hover{color:#0b668f;text-decoration:underline}.tableWrap th:not(:first-child){cursor:pointer;-webkit-user-select:none;user-select:none;padding-right:32px;position:sticky}.tableWrap th.sorted{color:#087cad;background:#e7f5fb}.sort-indicator{color:#8b98a7;margin-left:7px;font-size:10px}.tableWrap th.sorted .sort-indicator{color:#087cad}.tableWrap th.dragging{opacity:.45}.col-resizer{cursor:col-resize;border-right:2px solid #0000;width:8px;height:100%;position:absolute;top:0;right:0}.col-resizer:hover{border-right-color:#168fc8}.floorDiagnosticOverlay{z-index:10000;background:#0f172a94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.floorDiagnosticPanel{background:#fff;border-radius:14px;gap:12px;width:min(760px,94vw);max-height:88vh;padding:18px;display:grid;box-shadow:0 20px 60px #0000004d}.floorDiagnosticPanel h3{margin:0}.floorDiagnosticPanel textarea{box-sizing:border-box;resize:vertical;border:1px solid #cbd5e1;border-radius:8px;width:100%;height:min(560px,68vh);padding:12px;font:12px/1.45 Consolas,monospace}.floorDiagnosticPanel>div{justify-content:flex-end;gap:8px;display:flex}.dashboardOverview{grid-template-columns:1.25fr 1.1fr .9fr;gap:14px;margin-top:18px;display:grid}.overviewPanel{text-align:left;background:#fff;border:1px solid #dbe2e8;border-radius:12px;min-height:285px;padding:20px;position:relative;overflow:hidden;box-shadow:0 4px 14px #1d344010}.overviewPanel:after{content:"";background:linear-gradient(90deg,#159bd5,#22b4a5);height:4px;position:absolute;inset:0 0 auto}button.overviewPanel{width:100%;color:inherit}.overviewPanel:hover{border-color:#83c8e8;box-shadow:0 8px 22px #168fc81c}.overviewTitle{color:#52667d;letter-spacing:.1em;justify-content:space-between;align-items:center;font-size:11px;font-weight:800;display:flex}.overviewTitle span{align-items:center;gap:7px;display:flex}.overviewTitle svg{color:#159bd5;width:17px}.overviewNumber{align-items:baseline;gap:10px;margin:17px 0;display:flex}.overviewNumber strong{font-size:34px}.overviewNumber small{color:#6f7c8d}.overviewBars{gap:9px;display:grid}.overviewBars>div{grid-template-columns:1fr 42px;align-items:center;gap:4px 8px;font-size:11px;display:grid}.overviewBars span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overviewBars span>i{border-radius:50%;width:9px;height:9px;margin-right:7px;display:inline-block}.overviewBars b{text-align:right}.overviewBars em{background:#e8edf2;border-radius:8px;grid-column:1/3;height:7px;overflow:hidden}.overviewBars em i{background:linear-gradient(90deg,#1798d1,#587de0);border-radius:8px;height:100%;display:block}.overviewLoading{color:#758294;font-size:12px}.overviewPanel>h3{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.issueSummary:after{background:linear-gradient(90deg,#ef5b65,#f0b62c,#42b276)}.issueSnapshot{justify-content:center;align-items:center;gap:18px;margin:18px 0;display:flex}.issueSnapshot strong,.issueSnapshot span{display:block}.issueSnapshot strong{font-size:32px}.issueSnapshot span{color:#6d7a8b}.miniTraffic{background:#17202d;border-radius:12px;gap:5px;width:43px;height:83px;padding:8px;display:grid}.miniTraffic i{background:#374352;border-radius:50%}.miniTraffic.red i:first-child{background:#ed5964;box-shadow:0 0 10px #ed5964}.miniTraffic.yellow i:nth-child(2){background:#e6aa1c;box-shadow:0 0 10px #e6aa1c}.miniTraffic.green i:last-child{background:#42b276;box-shadow:0 0 10px #42b276}.issueQuick{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.issueQuick span{text-align:center;color:#6c798a;background:#f4f7f9;border-radius:7px;padding:9px 6px;font-size:10px}.issueQuick b{color:#17202d;font-size:17px;display:block}.issueQuick .danger{color:#b23f49;background:#fff0f1}.issueSummary>p{color:#6c798a;margin:14px 0 0;font-size:11px;line-height:1.4}.componentSummary{background:linear-gradient(145deg,#fff 65%,#edf8fc)}.areaPanel{background:linear-gradient(145deg,#fff 68%,#edf8fc);border:1px solid #cce4ef}@media (width<=1100px){.dashboardOverview{grid-template-columns:1fr 1fr}.issueSummary{grid-column:1/-1;min-height:220px}.issueSummary .issueSnapshot{justify-content:flex-start}.issueSummary .issueQuick{max-width:480px}}@media (width<=700px){.dashboardOverview{grid-template-columns:1fr}.issueSummary{grid-column:auto}.overviewPanel{min-height:250px}}.myIssuesCounter{color:#172334;text-align:left;cursor:pointer;background:#f4faff;border:1px solid #cfe0eb;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:3px 12px;width:100%;margin:0 0 14px;padding:11px 13px;display:grid}.myIssuesCounter:hover{background:#e9f6fd;border-color:#73bde0}.myIssuesCounter span{font-weight:700}.myIssuesCounter strong{color:#128fc9;grid-area:1/2/3;font-size:25px}.myIssuesCounter small{color:#c8444e;font-weight:700}.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi,.kpi>div{min-width:0}.kpi strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.14}.kpi>span{flex:none}@media (width<=1100px){header{gap:16px;padding:0 16px}.brand{gap:8px}.brand b{font-size:14px}nav button{padding:0 10px}.mode{max-width:110px;line-height:1.25}.global{padding:10px 24px}.spaces{grid-template-columns:226px minmax(0,1fr)}aside{display:block}.detail{padding:22px 22px 16px}.compact{gap:12px}.compact .kpi{padding:15px 12px}.compact .kpi strong{font-size:clamp(17px,2vw,20px)}.chartCard{grid-template-columns:135px 160px minmax(0,1fr);gap:14px;padding:18px}.donut{width:150px;height:150px}.donut:before{width:92px;height:92px}.legend{gap:9px 16px}.legend div{grid-template-columns:10px minmax(0,1fr) auto;font-size:12px}.legend span{overflow-wrap:anywhere;min-width:0}.tableTop{gap:10px}.actions{flex-wrap:wrap;justify-content:flex-end}}@media (width<=820px){header{padding:0 14px}.brand b,.mode{display:none}nav button{padding:0 9px}.global{padding:10px 14px}.kpis{grid-template-columns:1fr 1fr}.spaces{grid-template-columns:1fr}aside{border-right:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:auto;display:grid}aside h3{grid-column:1/-1}.chartCard{grid-template-columns:1fr 150px;align-items:center}.legend{grid-column:1/-1}.dashboardGrid{grid-template-columns:1fr}.global label{width:42%}}@media (width<=620px){nav button{padding:0 7px;font-size:13px}.chartCard{grid-template-columns:1fr}.donut{margin:auto}.tableTop{align-items:flex-start}.actions button{padding:0 9px}.compact .kpi strong{font-size:17px}}
