:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:#183047;background:#f3f6fa;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{margin:0}a{color:#1764b1;text-decoration:none}button,input,select{font:inherit}button{border:1px solid #c9d4e0;background:#fff;border-radius:7px;padding:9px 14px;cursor:pointer;color:#23405b}button:hover{background:#eef5fd}button:disabled{cursor:not-allowed;opacity:.5}.primary{background:#1469b8;color:#fff;border-color:#1469b8}.primary:hover{background:#105899}.danger{color:#b33434;border-color:#e0b7b7}.topbar{background:#fff;border-bottom:1px solid #dfe7ef;padding:17px 30px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-size:20px;font-weight:700;color:#183047;display:flex;align-items:center;gap:12px}.brand-mark{border-radius:9px;background:#1469b8;color:white;padding:4px 10px}.brand small{font-size:12px;color:#61758b;font-weight:400}.topbar nav{display:flex;align-items:center;gap:18px;font-size:13px}.text-button{border:0;padding:0;color:#1764b1}.workspace{max-width:1440px;margin:28px auto;padding:0 28px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}h1{font-size:28px;letter-spacing:-.5px;margin:6px 0 10px}h2{font-size:18px;margin:0 0 12px}.eyebrow{color:#477cae;font-size:12px;font-weight:700;letter-spacing:2px}.muted,small{color:#6a7d90}p{margin:8px 0}.panel{background:white;border:1px solid #e0e7ee;border-radius:12px;padding:22px;margin:20px 0;box-shadow:0 2px 5px #1c3d5b05}.panel-heading,.toolbar,.button-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.button-row{justify-content:flex-start}.toolbar{justify-content:flex-start;margin-bottom:18px}input,select{border:1px solid #c9d4e0;border-radius:7px;background:#fff;padding:10px;min-width:0}input:focus,select:focus,button:focus-visible{outline:2px solid #559ce0;outline-offset:2px}.toolbar input{width:260px}.summary-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.summary-card{text-align:left;background:white;padding:19px;border:1px solid #e0e7ee;border-radius:12px}.summary-card strong{display:block;font-size:30px;margin-top:8px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;color:#718397;background:#f8fafc;font-weight:600}td,th{padding:14px 12px;border-bottom:1px solid #e9eef3;vertical-align:top}td{font-size:14px}td small{display:block;margin-top:4px}.badge{display:inline-block;padding:3px 9px;border-radius:5px;font-size:12px;white-space:nowrap;background:#edf1f5;color:#667b8e}.badge.passed{background:#e4f5ee;color:#21764e}.badge.failed,.badge.blocked{background:#fdeaea;color:#b43c3c}.badge.warning{background:#fff2d7;color:#9b6814}.badge.running{background:#e7f1ff;color:#2066ad}.status-panel{display:grid;grid-template-columns:1fr 1fr;gap:18px}.status-panel .button-row{grid-column:1/-1}.gpu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:14px}.gpu-card{border:1px solid #e1e7ef;border-radius:9px;padding:16px}.gpu-card h3{margin:0 0 8px;font-size:16px}.gpu-card p{font-size:13px}.gpu-card button{margin-top:8px}.auth-card{max-width:450px;margin:70px auto;background:white;border:1px solid #e0e7ee;border-radius:14px;padding:34px}.form-stack{display:flex;flex-direction:column;gap:17px}.form-stack label{display:flex;flex-direction:column;gap:6px;font-size:14px}.form-stack .checkbox{flex-direction:row;align-items:center}.error{color:#b53636}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.back{display:inline-block;margin-bottom:14px}hr{border:0;border-top:1px solid #e5eaf0;margin:24px 0}[hidden]{display:none!important}@media(max-width:780px){.topbar{padding:14px;flex-wrap:wrap}.topbar nav{gap:12px;flex-wrap:wrap}.workspace{padding:0 14px}.summary-grid{grid-template-columns:repeat(2,1fr)}.summary-card:first-child{grid-column:1/-1}.page-heading{display:block}.panel{padding:15px}.admin-grid,.status-panel{grid-template-columns:1fr}.auth-card{margin:35px 15px}.brand small{display:none}th,td{padding:11px 8px}.toolbar input{width:100%}.button-row button{flex:1}.panel-heading span{font-size:12px}}

/* Detail workspace: retain the original console's operation-first hierarchy. */
.heading-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.detail-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start}
.detail-layout .panel{margin:0 0 22px}.detail-main,.operation-sidebar{min-width:0}
.task-banner{padding:24px 28px;background:linear-gradient(115deg,#fff 55%,#eff6ff);border-color:#d6e4f2}
.task-banner .panel-heading{margin-bottom:14px}.task-summary{display:flex;align-items:center;justify-content:space-between;gap:28px}
.task-summary h2{font-size:21px;line-height:1.5;margin-bottom:4px;overflow-wrap:anywhere}.completion{text-align:right;white-space:nowrap}
.completion strong{display:block;font-size:36px;color:#2467aa;font-weight:750;line-height:1.2}.completion span{font-size:12px;color:#6a7d90}
progress{width:100%;height:8px;appearance:none;border:0;border-radius:8px;overflow:hidden;margin:20px 0 10px;background:#e5edf5}
progress::-webkit-progress-bar{background:#e5edf5}progress::-webkit-progress-value{background:linear-gradient(90deg,#3a83ca,#42a6b4);border-radius:8px}progress::-moz-progress-bar{background:#3a83ca;border-radius:8px}
.task-footer{display:flex;justify-content:space-between;gap:16px;color:#718397;font-size:12px}.task-footer>span:first-child{font-weight:600;color:#456882}
.operations{border-top:3px solid #3276b9}.operations h2{margin:0}.section-icon{color:#377fb9;font-size:22px}.operations>p{font-size:13px}
.primary-controls{display:grid;grid-template-columns:1fr;gap:10px;margin-top:20px}.primary-controls button{font-size:16px;font-weight:650;padding:12px}.primary-controls button:last-child{background:#254d70;border-color:#254d70}
.control-hint{font-size:12px;color:#718397;line-height:1.8;margin:12px 0 0}.protection-box{background:#f4f7fb;border:1px solid #e0e8f1;border-radius:9px;margin-top:18px;padding:14px;font-size:13px}.protection-box strong{color:#456882}.protection-box p{margin:6px 0 10px}.protection-box .text-button{font-size:12px;background:transparent}
.operation-group{border-top:1px solid #e8edf3;margin-top:20px;padding-top:18px}.operation-group h3,.operation-group summary{font-size:13px;font-weight:650;margin:0 0 12px;color:#60758a}.operation-group summary{cursor:pointer}.operation-group .button-row{gap:8px}.operation-group button{flex:1;font-size:13px;padding:8px 10px;white-space:nowrap}.stack-buttons{display:grid;gap:10px}.health-panel h3{font-size:16px;margin:10px 0}.health-panel p{font-size:13px}.health-panel small{display:block;margin:10px 0 16px}.health-panel>button{width:100%}
.hardware-panel .panel-heading h2,.detail-main>.panel>.panel-heading h2{margin:3px 0 6px}.hardware-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;background:#f6f9fc;border:1px solid #e5ecf3;border-radius:9px;margin-top:18px}.hardware-toolbar>button{font-size:12px;padding:7px 10px}.global-fan{display:flex;gap:14px;align-items:center;font-size:13px;font-weight:600}.hardware-panel>.control-hint{margin:8px 0 18px}
.gpu-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}.gpu-card{padding:17px;background:linear-gradient(165deg,#f9fbfe,#fff 50%);border-radius:12px;border:1px solid #dce6ef;overflow:hidden}.gpu-card-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:11px}.gpu-number{background:#eaf2fb;color:#25679f;border-radius:5px;padding:4px 7px;font-size:12px;font-weight:700}.gpu-card h3{font-size:16px;line-height:1.45;min-height:24px;margin:0 0 18px}.gpu-metrics{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:0 0 12px}.gpu-metrics>div:last-child{grid-column:1/-1}.gpu-metrics dt{font-size:11px;color:#7a8c9d}.gpu-metrics dd{font-size:20px;font-weight:650;margin:3px 0 0;color:#304d66}.gpu-metrics>div:last-child dd{font-size:14px}.gpu-address{font-variant-numeric:tabular-nums;color:#7d8fa0;font-size:11px!important;margin-bottom:14px!important}.gpu-controls{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #e5ecf3;gap:6px;font-size:12px}.gpu-card .gpu-pressure{width:100%;font-size:13px;margin-top:14px;background:#f5f9fe;border-color:#d6e3f2;color:#286aa8}
.fan-switch{display:inline-flex;align-items:center;gap:8px;border:0;padding:4px 0;background:transparent!important;font-size:11px;color:#60768b;margin:0!important}.switch-track{width:31px;height:18px;border-radius:12px;background:#b4c2d0;position:relative;flex:none}.switch-track::after{content:"";display:block;position:absolute;top:3px;left:3px;width:12px;height:12px;background:#fff;border-radius:50%;box-shadow:0 1px 2px #0002;transition:transform .15s}.fan-switch[aria-checked="true"] .switch-track{background:#278d72}.fan-switch[aria-checked="true"] .switch-track::after{transform:translateX(13px)}.fan-switch:disabled{opacity:.6}
.hardware-actions{margin:18px 0;gap:8px}.hardware-actions button{font-size:12px}.hardware-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid #e6edf4;padding-top:18px}.hardware-summary article{background:#f8fafc;border:1px solid #e6edf4;border-radius:9px;padding:13px}.hardware-summary strong{font-size:13px}.hardware-summary .panel-heading{gap:6px}.hardware-summary p{font-size:12px;color:#647b90;line-height:1.8;overflow-wrap:anywhere;max-height:130px;overflow:auto}.hardware-summary .badge{font-size:11px;padding:2px 6px}
.step-list{margin-top:16px}.step-card{display:flex;gap:14px;align-items:flex-start;border-top:1px solid #e8eef4;padding:18px 0}.step-card:last-child{padding-bottom:0}.step-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;background:#eff4fa;color:#5e7d98;font-size:12px;font-weight:700;flex:none}.step-content{flex:1;min-width:0}.step-heading{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.step-heading h3{font-size:14px;margin:0}.step-content p{font-size:12px;color:#6b7f92;margin:7px 0 0;line-height:1.8;overflow-wrap:anywhere;white-space:pre-line}.step-card>button{font-size:12px;padding:6px 12px;flex:none}
.empty-state{grid-column:1/-1;text-align:center;padding:36px 20px;background:#f8fafc;border:1px dashed #cddbe8;border-radius:9px;color:#607b93}.empty-state p{font-size:13px}
dialog{border:1px solid #d6e1ed;border-radius:16px;padding:28px;width:min(480px,calc(100% - 32px));color:#183047;box-shadow:0 20px 80px #1e385033}dialog::backdrop{background:#15324c66;backdrop-filter:blur(3px)}dialog .form-stack{margin-top:22px}dialog h2{margin:0}dialog .panel-heading>button{padding:4px 9px;border:0}
@media(min-width:1200px){.operation-sidebar{position:sticky;top:18px}}
@media(max-width:1050px){.detail-layout{grid-template-columns:240px minmax(0,1fr);gap:18px}.hardware-summary{grid-template-columns:1fr}.hardware-toolbar{flex-wrap:wrap}.gpu-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}
@media(max-width:780px){.detail-layout{grid-template-columns:1fr}.primary-controls{grid-template-columns:1fr 1fr}.task-banner{padding:20px}.task-summary{gap:15px}.task-summary h2{font-size:17px}.completion strong{font-size:28px}.task-footer{flex-wrap:wrap;gap:4px}.heading-actions{margin-top:12px;justify-content:space-between}.hardware-summary{grid-template-columns:1fr}.hardware-toolbar{gap:10px}.gpu-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.step-card{gap:10px}.global-fan{flex-wrap:wrap}}

/* Compact operator workspace. Keep controls usable on touch screens. */
:root{font-size:13px;line-height:1.45}
.topbar{padding:12px 24px}.brand{font-size:17px}
.workspace{max-width:1200px;margin:18px auto;padding:0 22px}.back{margin-bottom:6px;font-size:12px}
h1{font-size:23px;margin:3px 0 5px}h2{font-size:16px}.page-heading{margin-bottom:12px}
button{padding:7px 11px}input,select{padding:8px}.panel{padding:16px;margin:14px 0;border-radius:10px}
.summary-grid{gap:10px}.summary-card{padding:13px}.summary-card strong{font-size:25px;margin-top:3px}
td,th{padding:10px}td{font-size:12px}.toolbar{margin-bottom:12px;gap:8px}
.detail-layout{grid-template-columns:238px minmax(0,1fr);gap:16px}.detail-layout .panel{margin-bottom:14px}
.quick-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;background:#fff;border:1px solid #dce5ee;border-radius:9px;margin-bottom:12px}
.quick-actions button{font-size:12px;min-height:32px}.quick-actions button:last-child{margin-left:auto}
.task-banner{padding:16px 20px;margin-top:0}.task-banner .panel-heading{margin-bottom:8px}.task-summary h2{font-size:17px}.task-summary p{font-size:12px;margin:4px 0}.completion strong{font-size:28px}progress{height:6px;margin:12px 0 6px}.task-footer{font-size:11px}
.primary-controls{gap:8px;margin-top:12px}.primary-controls button{font-size:13px;padding:9px}.operations>p{font-size:12px}.control-hint{font-size:11px;line-height:1.6;margin-top:8px}
.protection-box{padding:10px;margin-top:12px;font-size:12px}.operation-group{margin-top:14px;padding-top:12px}.operation-group h3,.operation-group summary{font-size:12px;margin-bottom:8px}.operation-group button{font-size:12px;padding:7px 8px}.health-panel h3{font-size:14px}.health-panel p{font-size:12px}
.hardware-toolbar{padding:9px 11px;margin-top:10px}.global-fan{font-size:12px}.hardware-panel>.control-hint{margin:7px 0 10px}
.gpu-grid{grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:10px}.gpu-card{padding:12px;border-radius:9px}.gpu-card-heading{margin-bottom:9px}.gpu-card h3{font-size:13px;min-height:19px;margin-bottom:11px}
.gpu-metrics{gap:9px;margin-bottom:8px}.gpu-metrics>div:last-child{grid-column:auto}.gpu-metrics dd,.gpu-metrics>div:last-child dd{font-size:16px;margin-top:2px}.gpu-address{margin-bottom:9px!important}.gpu-controls{padding-top:8px}.gpu-card .gpu-pressure{margin-top:9px;padding:6px;font-size:12px}
.hardware-actions{margin:12px 0}.hardware-summary{gap:8px;padding-top:12px}.hardware-summary article{padding:10px}.hardware-summary p{margin-bottom:0;font-size:11px;line-height:1.6}
.step-list{margin-top:10px}.step-card{padding:12px 0;gap:10px}.step-number{width:27px;height:27px;font-size:11px}.step-heading h3{font-size:13px}.step-content p{font-size:11px;line-height:1.6;margin-top:5px}.step-card>button{padding:5px 10px}
@media(min-width:1200px){.operation-sidebar{top:12px}}
@media(max-width:780px){.workspace{padding:0 12px;margin-top:12px}.topbar{padding:10px 12px}.detail-layout{grid-template-columns:1fr;gap:0}.panel{padding:13px}.quick-actions{gap:7px;padding:9px}.quick-actions button{flex:1 1 28%;min-height:36px;white-space:nowrap}.quick-actions button:last-child{margin-left:0}.heading-actions{margin-top:8px}.task-summary h2{font-size:15px}.gpu-grid{grid-template-columns:repeat(auto-fit,minmax(205px,1fr))}.hardware-summary{grid-template-columns:1fr}.primary-controls button{min-height:36px}}

/* Match the original console's bright surfaces and clear, dark typography. */
:root{--bg:#f4f6f8;--surface:#fff;--surface-soft:#f8fafb;--text:#17212b;--muted:#596776;--line:#dfe5ea;--blue:#2368d1;color:var(--text);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
body{color:var(--text);background:var(--bg)}
h1,h2,h3,strong,.brand,.gpu-metrics dd,.gpu-metrics>div:last-child dd{color:var(--text)}
.muted,small,.brand small,.control-hint,.gpu-metrics dt,.gpu-address,.task-footer,.completion span,.hardware-summary p,.step-content p,.operation-group h3,.operation-group summary,.fan-switch{color:var(--muted)}
a,.text-button,.protection-box .text-button,.eyebrow,.section-icon{color:var(--blue)}
.topbar,.panel,.summary-card,.quick-actions{background:var(--surface);border-color:var(--line)}
.panel,.summary-card{box-shadow:0 3px 12px #1f344908}.task-banner{background:linear-gradient(110deg,#fff 68%,#f0f5ff);border-color:#cedcf3}
button{color:var(--text);border-color:#c7d0d8;font-weight:600;background:#fff}
button:hover:not(:disabled){color:var(--blue);background:#f0f5ff;border-color:#7aa2e1}
.primary,.primary-controls button:last-child,.brand-mark{background:var(--blue);border-color:var(--blue);color:#fff}
.primary:hover:not(:disabled),.primary-controls button:last-child:hover:not(:disabled){background:#1d56ae;color:#fff}
button:disabled,.fan-switch:disabled{opacity:1;color:#687582;background:#f1f4f7;border-color:#d6dee6;cursor:not-allowed}
.primary:disabled,.primary-controls button:last-child:disabled{background:#eaf1ff;color:#536f98;border-color:#cbdaf0}
button.danger{color:#b42318;border-color:#edc5c0}.danger:disabled{color:#946861;background:#faf3f2;border-color:#e8d7d4}
.gpu-card{background:#fff;border-color:#d4deea;box-shadow:0 2px 6px #1f344906}.gpu-number,.step-number{color:#205bb5;background:#eaf1ff}
.gpu-card .gpu-pressure{color:#2368d1;background:#edf4ff;border-color:#c4d6ef}.gpu-card .gpu-pressure:disabled{color:#687582;background:#f1f4f7;border-color:#d6dee6}
.protection-box,.hardware-toolbar,.hardware-summary article{background:var(--surface-soft);border-color:var(--line)}.protection-box strong,.task-footer>span:first-child{color:#34465c}
.completion strong{color:var(--blue)}.operations{border-top-color:var(--blue)}
th{color:#465769;background:#f2f5f8}td{color:#263545}
.badge{background:#edf1f5;color:#4c5e70}.badge.passed{background:#e8f6ef;color:#147d4d}.badge.failed,.badge.blocked{background:#fff0ee;color:#b42318}.badge.warning{background:#fff3df;color:#a66200}.badge.running{background:#eaf1ff;color:#205bb5}.badge.offline{background:#e9eef4;color:#34465c;border:1px solid #cbd5e1}
.summary-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.summary-card[data-health="failed"] strong{color:#b42318}.summary-card[data-health="offline"] strong{color:#465a73}.summary-card[data-health="warning"] strong{color:#a66200}.summary-card[data-health="passed"] strong{color:#147d4d}
.switch-track{background:#9cabbc}.fan-switch[aria-checked="true"] .switch-track{background:#147d4d}.fan-switch:disabled .switch-track{background:#bbc6d2}

@media(max-width:780px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-card:first-child{grid-column:auto}}

/* Quiet offline state and localized feedback; no top notification banners. */
.badge.offline{display:inline-flex;align-items:center;gap:6px;background:transparent;border:0;padding:3px 0;color:#687582;font-weight:500}
.badge.offline::before{content:"";width:6px;height:6px;border-radius:50%;background:#98a5b3;flex:none}
.action-feedback{font-size:12px;line-height:1.6;color:#205bb5;overflow-wrap:anywhere;margin:10px 0}
.action-feedback.error{color:#b42318}
.gpu-card.state-passed{border:2px solid #42a877;background:#fff}
.gpu-card.state-warning{border:2px solid #e3ad33;background:#fffdf5}
.gpu-card.state-failed{border:2px solid #d54b43;background:#fff8f7;color:#b42318}
.gpu-card.state-unknown{border:2px solid #d4deea;background:#fff}
.gpu-card.state-warning .gpu-metrics>div:first-child dd{color:#a66200}
.gpu-card.state-failed :is(h3,dt,dd,p,.gpu-number,.switch-label,.gpu-controls>span){color:#b42318}
.gpu-card.state-failed .gpu-number{background:#fde9e6}
.gpu-card-heading .badge{font-size:10px;padding:2px 5px}

/* Keep the overview within a comfortable reading width on desktop screens. */
.workspace[data-page="index"]{max-width:1200px}
[data-page="index"] .summary-grid{gap:8px}
[data-page="index"] .summary-card{padding:11px 13px}
[data-page="index"] .toolbar input{width:220px}
[data-page="index"] .list-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-wrap:wrap}
.brand .service-purpose{display:inline;font-size:12px;font-weight:400;letter-spacing:0}
@media(max-width:780px){.brand{flex-wrap:wrap}.brand .service-purpose{flex-basis:100%}[data-page="index"] .list-actions{width:100%;justify-content:space-between;margin-left:0}}
[data-page="index"] .table-scroll table{table-layout:fixed;min-width:900px}
[data-page="index"] th:nth-child(1){width:164px}
[data-page="index"] th:nth-child(2){width:80px}
[data-page="index"] th:nth-child(4){width:140px}
[data-page="index"] th:nth-child(5){width:100px}
[data-page="index"] th:nth-child(6){width:88px}
[data-page="index"] td{overflow-wrap:anywhere;line-height:1.6}
[data-page="index"] td:last-child{white-space:nowrap}
@media(max-width:780px){[data-page="index"] .toolbar input{width:100%}}

/* Primary workflow entry and compact execution details. */
.full-check-button{display:block;width:100%;padding:11px 12px;font-weight:600}
.task-details>summary{cursor:pointer;display:flex;align-items:center;gap:10px;flex-wrap:wrap;list-style:none}
.task-details>summary::-webkit-details-marker{display:none}
.task-details>summary::before{content:"›";font-size:20px;line-height:1;color:var(--blue)}
.task-details[open]>summary::before{transform:rotate(90deg)}
.task-details>summary>strong{font-size:14px}.task-details>summary>.muted{font-size:11px;margin-left:auto}
.task-details>summary:focus-visible{outline:2px solid var(--blue);outline-offset:5px;border-radius:3px}
.step-group+.step-group{margin-top:16px}.step-group-title{font-size:12px;color:var(--muted);margin:12px 0 7px}
.step-passed{padding:8px 0}.step-passed .step-heading h3{font-weight:400;color:var(--muted)}
.step-running .step-number{background:#e3eeff;color:var(--blue)}
.step-failed .step-number,.step-blocked .step-number{background:#fff0ee;color:#b42318}

/* Four GPUs per row at most; reduce columns as the workspace narrows. */
[data-page="detail"] .gpu-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
[data-page="detail"] .gpu-card{min-width:0;overflow-wrap:anywhere}
[data-page="detail"] .machine-title{overflow-wrap:anywhere;min-width:0}
@media(max-width:1150px){[data-page="detail"] .gpu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:980px){[data-page="detail"] .gpu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){[data-page="detail"] .gpu-grid{grid-template-columns:minmax(0,1fr)}}

/* Hardware measurements lead the detail workspace; explanations stay expandable. */
.inspection-panel>.panel-heading h2{margin-bottom:3px}.inspection-panel>.panel-heading .muted{font-size:11px}
.inspection-panel #check-time{margin:9px 0 13px}.inspection-notice{padding:9px 11px;background:#fff5df;color:#855509;border-radius:6px;font-size:12px}
.system-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.system-card{min-width:0;padding:14px;border:1px solid var(--line);border-top:3px solid #aebbc8;border-radius:9px;background:#fbfcfe}
.system-card.passed{border-top-color:#42a877}.system-card.failed{border-top-color:#d54b43}.system-card.warning{border-top-color:#e3ad33}
.system-card h3{font-size:13px;margin:0;display:flex;align-items:center;gap:7px}.system-card .badge{font-size:10px;padding:2px 6px}
.system-symbol{font-size:9px;letter-spacing:.4px;padding:4px 5px;border-radius:5px;background:#eaf1ff;color:#205bb5}
.system-value{font-size:26px;line-height:1.3;font-weight:700;margin:15px 0 12px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.system-value>small{display:block;font-size:11px;font-weight:400;margin-top:3px}.metric-denominator{font-size:16px;color:#657383;font-weight:500}
.system-facts{margin:0;display:grid;gap:6px;font-size:11px}.system-facts>div{display:flex;justify-content:space-between;gap:8px}.system-facts dt{color:var(--muted)}.system-facts dd{margin:0;text-align:right;font-weight:600}
.metric-bar{display:block;width:100%;height:6px;margin:9px 0 5px;border:0;border-radius:5px;overflow:hidden;appearance:none;background:#e8edf2;color:#42a877}
.metric-bar::-webkit-progress-bar{background:#e8edf2;border-radius:5px}.metric-bar::-webkit-progress-value{background:#42a877;border-radius:5px}.metric-bar::-moz-progress-bar{background:#42a877;border-radius:5px}
.metric-bar.failed{color:#d54b43}.metric-bar.failed::-webkit-progress-value{background:#d54b43}.metric-bar.failed::-moz-progress-bar{background:#d54b43}
.metric-bar.warning{color:#e3ad33}.metric-bar.warning::-webkit-progress-value{background:#e3ad33}.metric-bar.warning::-moz-progress-bar{background:#e3ad33}
.metric-bar.unknown{color:#9aa9b7}.metric-bar.unknown::-webkit-progress-value{background:#9aa9b7}.metric-bar.unknown::-moz-progress-bar{background:#9aa9b7}
.metric-bar-empty{height:6px;border-radius:5px;margin:9px 0 5px;background:#e8edf2}
.storage-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:18px 0 9px}.storage-heading h3{font-size:13px;margin:0}.storage-heading small{font-size:10px}
.disk-list{border:1px solid var(--line);border-radius:8px;overflow:hidden}.disk-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(180px,1.7fr) 65px 100px;align-items:center;gap:14px;padding:12px;border-bottom:1px solid var(--line)}.disk-row:last-child{border-bottom:0}.disk-row.failed{border-left:3px solid #d54b43}.disk-row.warning{border-left:3px solid #e3ad33}.disk-row.passed{border-left:3px solid #42a877}
.disk-identity{min-width:0}.disk-identity>strong{display:block;font-size:13px}.disk-identity>small{display:block;font-size:10px;margin:3px 0 5px;overflow-wrap:anywhere}.disk-identity .badge{font-size:10px;padding:1px 5px}
.disk-usage{min-width:0}.disk-usage-label{display:flex;justify-content:space-between;gap:8px;font-size:11px}.disk-usage-label strong{white-space:nowrap}.disk-usage>small,.disk-health>small{font-size:10px;display:block}.disk-temperature{text-align:center}.disk-temperature>strong{font-size:22px;white-space:nowrap}.disk-temperature>strong>small{font-size:11px;margin-left:2px}.disk-temperature>span{display:block;font-size:10px;color:var(--muted)}.disk-temperature.failed>strong{color:#b42318}.disk-temperature.warning>strong{color:#a66200}.disk-health>strong{display:block;font-size:11px}.disk-health>small{margin-top:5px}.disk-row.failed .disk-health>strong{color:#b42318}
.inspection-details{margin-top:14px;border-top:1px solid var(--line);padding-top:11px}.inspection-details>summary{cursor:pointer;color:var(--blue);font-size:12px}.inspection-details .table-scroll{margin-top:10px}.inspection-details td{overflow-wrap:anywhere}
@media(max-width:1100px) and (min-width:781px){.system-card{padding:11px}.system-card .panel-heading{align-items:flex-start}.system-value{font-size:23px}.disk-row{grid-template-columns:minmax(100px,1fr) minmax(150px,1.5fr) 65px;gap:10px}.disk-health{grid-column:2/4}}
@media(max-width:600px){.system-grid{grid-template-columns:1fr}.system-card{padding:12px}.system-value{margin:10px 0}.system-facts{grid-template-columns:1fr 1fr;gap:8px}.system-facts>div{display:block}.system-facts dd{text-align:left;margin-top:3px}.disk-row{grid-template-columns:minmax(0,1fr) 70px;gap:10px}.disk-identity{grid-column:1}.disk-temperature{grid-column:2;grid-row:1}.disk-usage{grid-column:1/-1}.disk-health{grid-column:1/-1}.disk-health>strong,.disk-health>small{display:inline;margin-right:10px}}
