.dashboard-page{--db-bg:#f3f8fc;--db-panel:#fff;--db-panel-2:#f8fbff;--db-line:#c9ddeb;--db-ink:#142d43;--db-muted:#5c7589;--db-cyan:#087eae;--db-grid:rgba(29,108,151,.14);color:var(--db-ink);padding:7px 0 20px;min-width:0}
html:has(.dashboard-page){overflow-x:clip}
[data-theme="dark"] .dashboard-page{--db-bg:#041a2a;--db-panel:#06233a;--db-panel-2:#082a43;--db-line:#195073;--db-ink:#f0f8ff;--db-muted:#a2c4dc;--db-cyan:#15c3f6;--db-grid:rgba(69,150,197,.24)}
.dashboard-page .card,.dashboard-page .db-stat{background:linear-gradient(155deg,var(--db-panel),var(--db-panel-2));border:1px solid var(--db-line);box-shadow:0 10px 25px rgba(4,34,58,.06);color:var(--db-ink);border-radius:12px}
.dashboard-page .card{min-width:0;overflow:hidden}
.db-top{display:grid;grid-template-columns:minmax(275px,.78fr) minmax(710px,1.55fr);align-items:center;gap:20px;margin:0 0 20px}
.db-greeting{display:flex;align-items:center;gap:17px;min-width:0}
.db-greeting .db-sun{display:grid;place-items:center;flex:none;color:#efad13}
.db-greeting .db-sun .app-icon{width:52px;height:52px;filter:drop-shadow(0 3px 11px rgba(255,174,35,.28))}
.db-greeting .db-sun.is-moon{color:#8bc7f4}
.db-greeting .db-sun.is-moon .app-icon{filter:drop-shadow(0 3px 11px rgba(85,169,235,.25))}
.db-greeting .eyebrow{font-size:11px;letter-spacing:1px;color:var(--db-cyan);margin:0 0 3px}
.db-greeting h1{font-size:clamp(24px,2vw,36px);line-height:1.13;letter-spacing:-.04em;margin:0 0 4px;color:var(--db-ink)}
.db-greeting p{margin:0;color:var(--db-muted);font-size:13px;line-height:1.35}
.db-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;min-width:0}
.db-filter{display:flex;align-items:center;gap:9px;min-width:0;min-height:62px;padding:7px 10px;border-radius:11px;border:1px solid var(--db-line);background:var(--db-panel);cursor:pointer;overflow:hidden}
.db-filter-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:7px;color:var(--db-cyan);background:color-mix(in srgb,var(--db-cyan) 10%,var(--db-panel))}
.db-filter-icon .app-icon{width:23px;height:23px}
.db-filter-body{min-width:0;display:block;flex:1}
.db-filter small{display:block;margin:0 0 2px;color:var(--db-muted);font-size:11px}
.db-filter select,.db-filter input{height:24px;max-width:100%;min-width:0;width:100%;padding:0 14px 0 0;border:0!important;outline:none!important;box-shadow:none!important;background:transparent!important;color:var(--db-ink);font-weight:700;font-size:12px;text-overflow:ellipsis;cursor:pointer}
.db-filter select option{color:var(--ink);background:var(--surface)}
.db-filter input[type=date]{padding-right:0;font-size:11px;color-scheme:light}
.db-date-control{display:flex;align-items:center;gap:2px;min-width:0;width:100%}.db-date-control input{flex:1;min-width:0}.db-range-summary{display:block;min-width:0;flex:1;color:var(--db-ink);font-size:10px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-range-toggle{display:grid;place-items:center;flex:none;width:22px;height:24px;padding:0;border:1px solid var(--db-line);border-radius:6px;background:var(--db-panel-2);color:var(--db-cyan);font-size:15px;line-height:1;cursor:pointer}.db-range-toggle:hover,.db-range-toggle:focus-visible{border-color:var(--db-cyan);outline:2px solid color-mix(in srgb,var(--db-cyan) 25%,transparent)}.db-filter:has(#dashAsset) select{max-width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.db-range-panel{display:grid;grid-template-columns:minmax(190px,1.4fr) repeat(2,minmax(135px,1fr)) auto auto;align-items:end;gap:12px;margin:-4px 0 18px;padding:14px 17px;border:1px solid var(--db-line);border-radius:11px;background:var(--db-panel-2);color:var(--db-ink)}.db-range-panel>div b,.db-range-panel>div small{display:block}.db-range-panel>div b{font-size:13px}.db-range-panel>div small{margin-top:4px;color:var(--db-muted);font-size:10px}.db-range-panel label{display:flex;flex-direction:column;gap:5px;color:var(--db-muted);font-size:11px}.db-range-panel input{min-width:0;height:38px;border-color:var(--db-line);background:var(--db-panel);color:var(--db-ink);font-size:12px}.db-range-panel button{min-height:38px;white-space:nowrap}
[data-theme="dark"] .db-filter input[type=date]{color-scheme:dark}
.db-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:17px}
.db-operation-strip{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;padding:12px 16px;border:1px solid #285a76;border-radius:12px;background:#0b2538;color:#d9efff}.db-operation-strip>div{display:flex;align-items:center;gap:10px;min-width:150px}.db-operation-strip>div>[data-app-icon]{width:22px;height:22px;color:#36caff}.db-operation-strip small{display:block;color:#91b7cc;font-size:11px}.db-operation-strip b{font-size:20px}.db-operation-strip>small{margin-left:auto}
.db-stat{display:flex;align-items:center;gap:13px;width:100%;min-width:0;min-height:90px;padding:13px 14px;text-align:left;font:inherit}
button.db-stat{cursor:pointer}
button.db-stat:hover,.db-all:hover{border-color:var(--db-cyan);filter:brightness(1.06)}
.db-stat.blue{border-color:color-mix(in srgb,#0daee5 48%,var(--db-line))}.db-stat.amber{border-color:color-mix(in srgb,#d49434 45%,var(--db-line))}.db-stat.green{border-color:color-mix(in srgb,#15bd8a 45%,var(--db-line))}.db-stat.red{border-color:color-mix(in srgb,#ec4860 45%,var(--db-line))}
.db-stat-icon{display:grid;place-items:center;flex:none;width:53px;height:53px;border:1px solid currentColor;border-radius:11px;color:#1cbaff;background:rgba(12,161,230,.12)}
.db-stat-icon .app-icon{width:29px;height:29px}
.db-stat.amber .db-stat-icon{color:#ffae3e;background:rgba(248,155,42,.13)}.db-stat.green .db-stat-icon{color:#37dba3;background:rgba(31,211,147,.14)}.db-stat.red .db-stat-icon{color:#ff5b71;background:rgba(242,68,91,.14)}
.db-stat-copy{min-width:0;flex:1}.db-stat-copy small{display:block;color:var(--db-muted);font-size:12px;line-height:1.3}.db-stat-copy strong{display:block;margin-top:5px;color:var(--db-ink);font-size:26px;line-height:1}.db-stat-arrow{color:var(--db-ink)}.db-stat-arrow .app-icon{width:15px;height:15px}
.db-main-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px;align-items:stretch;margin-bottom:17px}
.db-main-grid>.card{min-height:440px}
.dashboard-page .card-head{min-height:58px;padding:13px 17px;border-bottom:1px solid var(--db-line);gap:10px}
.dashboard-page .card-head h2{display:flex;align-items:center;gap:11px;color:var(--db-ink);font-size:16px;line-height:1.25}
.dashboard-page .card-head h2>.app-icon{width:24px;height:24px;color:var(--db-cyan);flex:none}
.db-head-note{color:var(--db-muted);font-size:11px;white-space:nowrap}
.db-chart{display:grid;grid-template-columns:27px minmax(0,1fr);gap:6px;height:289px;padding:24px 17px 0 13px}
.db-chart-y{display:flex;flex-direction:column;justify-content:space-between;padding:0 0 26px;color:var(--db-muted);font-size:11px;text-align:right}
.db-chart-plot{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;height:100%;border-bottom:1px solid var(--db-line)}
.db-chart-grid{position:absolute;inset:0 0 26px;pointer-events:none;background:repeating-linear-gradient(to bottom,var(--db-grid) 0 1px,transparent 1px 16.6667%),repeating-linear-gradient(to right,var(--db-grid) 0 1px,transparent 1px 14.285%)}
.db-chart-day{position:relative;display:flex;flex-direction:column;min-width:0;text-align:center}
.db-chart-bars{display:flex;align-items:flex-end;justify-content:center;gap:4px;flex:1;min-height:0}
.db-chart-bars i{display:block;width:min(30%,25px);min-height:0;border-radius:3px 3px 0 0;transition:height .25s}
.db-chart-bars .preventive{background:linear-gradient(#23bdfa,#0e87ce)}.db-chart-bars .corrective{background:linear-gradient(#ffc057,#f28a2d)}
.db-chart-day small{display:block;height:26px;line-height:26px;color:var(--db-muted);font-size:10px;white-space:nowrap}
.db-chart-legend{display:flex;gap:22px;margin:16px 0 0;padding:0 20px;color:var(--db-muted);font-size:11px}
.db-chart-legend span{display:flex;align-items:center;gap:7px}.db-chart-legend i{width:11px;height:11px;border-radius:50%}.db-chart-legend .preventive{background:#16a6ec}.db-chart-legend .corrective{background:#ff9b3c}
.db-health-list{padding:3px 16px;max-height:339px;overflow-y:auto;scrollbar-width:thin}
.db-health-row{display:flex;align-items:center;gap:13px;min-height:65px;padding:6px 0;border-bottom:1px solid var(--db-line)}
.db-health-row:last-child{border-bottom:0}
.db-health-ring{display:grid;place-items:center;flex:none;width:47px;height:47px;border-radius:50%;background:conic-gradient(#16d6a0 var(--percent),color-mix(in srgb,var(--db-line) 75%,transparent) var(--percent));position:relative}
.db-health-ring:before{content:'';position:absolute;inset:5px;border-radius:50%;background:var(--db-panel)}
.db-health-ring b{position:relative;font-size:11px;color:var(--db-ink)}
.db-health-detail{flex:1;min-width:0}.db-health-name{display:flex;gap:7px;align-items:baseline;margin-bottom:6px}.db-health-name strong{font-size:12px}.db-health-name small{font-size:10px;color:var(--db-muted)}
.db-health-track{display:flex;height:8px;width:100%;overflow:hidden;border-radius:20px;background:var(--db-line)}
.db-health-key{display:flex;justify-content:space-between;flex-wrap:wrap;gap:2px 7px;margin-top:7px;color:var(--db-muted);font-size:9px}
.db-health-key span{white-space:nowrap}.db-health-key i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px}.db-health-key b{color:var(--db-ink)}
.db-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--db-line);padding:9px 0;margin-top:auto}
.db-kpis div{padding:3px 13px;min-width:0;border-right:1px solid var(--db-line)}.db-kpis div:last-child{border:0}
.db-kpis small{display:block;color:var(--db-muted);font-size:10px}.db-kpis b{display:block;margin-top:4px;color:var(--db-ink);font-size:15px;overflow-wrap:anywhere}
.db-recent{margin-bottom:17px}.db-all{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 10px;border:1px solid var(--db-cyan);border-radius:7px;background:transparent;color:var(--db-cyan);font-weight:700;cursor:pointer}.db-all .app-icon{width:15px;height:15px}
.db-recent table{font-size:12px}.db-recent th{color:var(--db-muted);background:var(--db-panel-2);border-bottom:1px solid var(--db-line);font-size:10px}.db-recent td{border-bottom:1px solid var(--db-line);color:var(--db-ink)}.db-recent tbody tr:hover{background:var(--db-panel-2)}.db-recent .machine{background:var(--db-panel-2);border-color:var(--db-line);color:var(--db-cyan)}
.db-recent-wrap table{min-width:890px}.db-recent-wrap th,.db-recent-wrap td{padding:12px 15px;vertical-align:middle}.db-recent-wrap td:first-child>b{color:var(--db-ink);font-size:13px}.db-recent-wrap td small{display:block;margin-top:4px;color:var(--db-muted);font-size:10px}.db-recent-wrap td em{display:inline-block;margin-top:4px;color:#d88a1d;font-style:normal;font-size:9px}.db-asset{display:flex;align-items:center;gap:9px}.db-asset-icon{display:grid;place-items:center;flex:none;width:35px;height:35px;border-radius:8px;background:rgba(10,172,235,.12);color:var(--db-cyan)}.db-asset-icon .app-icon{width:21px;height:21px}.db-asset b{font-size:11px}.db-priority{display:inline-flex;align-items:center;gap:7px;font-weight:700}.db-priority i{width:9px;height:9px;border-radius:50%;background:#ffbd43}.db-priority.Alta i,.db-priority.Crítica i{background:#ff536a}.db-priority.Baixa i{background:#24d399}.db-late{color:#ff5269;font-weight:700}.db-detail-cell{text-align:right;white-space:nowrap}.db-detail-cell .request-detail-btn{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid var(--db-line);border-radius:7px;padding:0;color:var(--db-cyan)}.db-detail-cell .request-detail-btn .app-icon{width:17px;height:17px}.dashboard-page .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dashboard-page .scope-note{margin:0;color:var(--db-muted);font-size:10px;border-color:var(--db-line)}
@media(max-width:1550px){.db-top{grid-template-columns:1fr}.db-greeting{margin-bottom:3px}.db-filters{grid-template-columns:repeat(5,minmax(0,1fr))}.db-filter:has(.db-date-control)>.db-filter-icon{display:none}}
@media(max-width:1150px){.db-main-grid{grid-template-columns:1fr}.db-health-list{max-height:340px}.db-main-grid>.card{min-height:0}.db-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1150px){.db-range-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.db-range-panel>div{grid-column:1/-1}.db-range-panel button{width:100%}}
@media(max-width:700px){.dashboard-page{padding-top:0}.db-greeting .db-sun .app-icon{width:41px;height:41px}.db-greeting h1{font-size:25px}.db-greeting p{font-size:11px}.db-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.db-filter{min-height:58px;padding:6px 8px}.db-filter:last-child{grid-column:1/-1}.db-filter small{font-size:10px}.db-filter-icon{width:29px;height:29px}.db-filter-icon .app-icon{width:19px;height:19px}.db-stats{gap:8px}.db-stat{min-height:79px;padding:9px;gap:8px}.db-stat-icon{width:37px;height:40px}.db-stat-icon .app-icon{width:22px;height:22px}.db-stat-copy small{font-size:10px}.db-stat-copy strong{font-size:21px}.db-stat-arrow{display:none}.dashboard-page .card-head{padding:11px}.dashboard-page .card-head h2{font-size:13px;gap:7px}.dashboard-page .card-head h2>.app-icon{width:19px;height:19px}.db-head-note{font-size:9px}.db-chart{height:230px;padding:19px 8px 0 5px;grid-template-columns:22px minmax(0,1fr)}.db-chart-day small{font-size:9px}.db-chart-bars{gap:2px}.db-chart-legend{padding:0 12px}.db-health-list{padding:3px 11px}.db-health-row{gap:8px}.db-health-ring{width:40px;height:40px}.db-health-key{font-size:8px}.db-kpis div{padding:3px 7px}.db-kpis small{font-size:9px}.db-kpis b{font-size:12px}.db-recent .table-wrap{overflow-x:auto}}
@media(max-width:700px){.db-range-panel{gap:8px;padding:12px}.db-range-panel input{width:100%}.db-range-panel button{font-size:11px}.db-range-toggle{width:23px;height:23px}}
/* Mobile overview: contain the table locally and suppress the page focus frame. */
@media(max-width:900px){
 html:has(.dashboard-page),body:has(.dashboard-page){width:100%;max-width:100%;overflow-x:hidden}
 #app:has(>.dashboard-page){width:100%;max-width:100%;min-width:0}
 #app:has(>.dashboard-page):focus{outline:none}
 .dashboard-page{width:100%;max-width:100%}
 .dashboard-page .db-recent-wrap{position:relative;width:100%;max-width:100%;min-width:0;overflow-x:auto}
}
/* Recorded reliability metrics: visible without opening a line-health card. */
.db-reliability{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px;min-width:0}
.db-reliability>article{display:flex;gap:12px;align-items:flex-start;min-width:0;padding:16px;border:1px solid #25516a;border-radius:12px;background:linear-gradient(125deg,#0b2a40,#071c2b);color:#edf7ff}
.db-reliability-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:10px;background:#0b3b57;color:#45c9ff}
.db-reliability>article>div{min-width:0}.db-reliability small,.db-reliability b,.db-reliability>article>div>span{display:block}
.db-reliability small{font-size:12px;color:#b8d8ed}.db-reliability b{font-size:26px;line-height:1.4;font-variant-numeric:tabular-nums}.db-reliability>article>div>span{font-size:11px;line-height:1.5;color:#9bbbd1;overflow-wrap:anywhere}
@media(max-width:1000px){.db-reliability{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.db-reliability{gap:9px}.db-reliability>article{padding:12px;gap:8px}.db-reliability-icon{width:28px;height:28px}.db-reliability b{font-size:22px}}
