.hardware-demo-entry{margin-top:20px}
.hardware-timing-note{margin:16px 0 0;color:var(--muted,#9ca5a8);font-size:12px;line-height:1.5}
.hardware-unavailable p{margin:0;color:var(--muted,#9ca5a8);font-size:14px;line-height:1.6}
.hardware-unavailable{min-height:120px}
.firmware-hint{grid-column:1/-1;color:var(--muted);font-size:13px;line-height:1.5;margin:0}
.firmware-diagnostics{margin-top:20px}
.firmware-card>.firmware-diagnostics{margin-top:0;padding-top:20px;border-top:1px solid var(--line)}
.firmware-card>.firmware-component+.firmware-instructions.advanced{margin-top:0}
body.device-locked #main>.firmware-diagnostics{display:block}
body.web-firmware-handoff .carbon-toolbar{visibility:visible}
body.web-firmware-handoff #main>.device-page-grid{display:grid}
body.web-firmware-handoff #main>.device-actions{display:flex}
.web-firmware-handoff-note{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding:18px 20px;border:1px solid var(--line);border-radius:5px;background:var(--panel)}
.web-firmware-handoff-note p{margin:0;font-size:14px;line-height:1.6;color:var(--text)}
.web-firmware-handoff-note .text-button{flex-shrink:0}
@media(max-width:700px){.web-firmware-handoff-note{align-items:flex-start;flex-direction:column;gap:12px}}
.firmware-status{grid-area:status;min-width:0;color:var(--muted);font-size:13px;line-height:20px;align-self:center}
.firmware-progress[hidden]{display:none}
.firmware-success{grid-area:progress;display:flex;align-items:center;gap:8px;min-width:0;color:#56cc8b;font-size:14px;line-height:20px}
.firmware-success[hidden]{display:none}
@media(max-width:700px){.firmware-success{grid-column:1/-1}.firmware-component:has(.firmware-success:not([hidden])) .firmware-status{visibility:hidden}}
/* Reserve one shared status row: showing Up to date must not add a grid track. */
.firmware-card .firmware-component{grid-template-areas:"device versions action" "status progress progress";grid-template-rows:auto minmax(32px,auto)}
@media(max-width:700px){.firmware-card .firmware-component{grid-template-areas:"device action" "versions versions" "status progress";grid-template-rows:auto auto minmax(32px,auto)}}
@media(max-width:380px){.firmware-card .firmware-component{grid-template-areas:"device" "versions" "action" "status" "progress";grid-template-rows:auto auto auto minmax(32px,auto) minmax(32px,auto)}}
.firmware-dialog-progress{width:100%;height:6px;accent-color:var(--text,#e5e7eb)}
.firmware-confirm-versions{margin:0 0 20px;display:grid;gap:12px}
.firmware-confirm-versions>div{display:flex;justify-content:space-between;gap:20px}
.firmware-confirm-versions dt{color:var(--muted)}
.firmware-confirm-versions dd{margin:0;text-align:right}
.firmware-recovery{color:#ffb3b3}
.settings-check-card{margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.settings-check-card p{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.5}
.settings-check-card .button{flex-shrink:0}
dialog.settings-check-dialog{width:min(940px,calc(100vw - 32px));max-width:940px}
.settings-check-note{color:var(--muted);font-size:14px;line-height:1.5;margin:16px 0}
.settings-check-summary{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:14px}
.settings-check-results{max-height:55vh;overflow:auto;scrollbar-width:thin;scrollbar-color:#566065 transparent}
.settings-check-results table{width:100%;border-collapse:collapse;font-size:14px;table-layout:fixed}
.settings-check-results th,.settings-check-results td{padding:12px 10px;border-bottom:1px solid var(--border,#30383b);text-align:left;vertical-align:top;overflow-wrap:anywhere}
.settings-check-results th:first-child{width:32%}
.settings-check-results thead{position:sticky;top:0;background:var(--panel,#181d1f);z-index:1}
.settings-check-results tbody th{font-weight:500}
.settings-check-results small{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:6px}
.settings-check-results .settings-check-group th{font-weight:600;padding-top:22px;color:var(--muted)}
.settings-check-status{font-size:12px;font-weight:600}
.settings-check-status.match{color:#b4d4c4}.settings-check-status.mismatch,.settings-check-status.error{color:#ffb3b3}.settings-check-status.unverified{color:var(--muted)}
.settings-check-mobile-label{display:none}
.settings-check-dialog #dialog-content{display:flex;flex-direction:column;max-height:calc(100dvh - 100px)}
.settings-check-dialog #dialog-title{flex-shrink:0}
#settings-check-body{display:flex;flex-direction:column;min-height:0}
.settings-check-results{flex:1;min-height:80px}
.settings-check-dialog .dialog-actions{flex-shrink:0}
@media(max-width:600px){
 .settings-check-card{align-items:flex-start;flex-direction:column;gap:16px}
 .settings-check-dialog .dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .settings-check-dialog .dialog-actions .primary{grid-column:1/-1}
 .settings-check-results table,.settings-check-results tbody{display:block;width:100%}
 .settings-check-results thead{display:none}
 .settings-check-results tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:12px 0;border-bottom:1px solid var(--border,#30383b)}
 .settings-check-results th,.settings-check-results td{border:0;padding:4px 6px}
 .settings-check-results th:first-child{grid-column:1/-1;width:auto}
 .settings-check-results td:last-child{grid-column:1/-1}
 .settings-check-results .settings-check-group th{padding-top:6px}
 .settings-check-mobile-label{display:block;font-size:12px;color:var(--muted);margin:6px 0}
 .settings-check-results small{font-size:12px}
}
