/* Repair cycles and advisory filters share the existing mist-blue tokens. */
/* Presentation only: the independent original-image viewer must stay in color. */
.asset-card.terminal-card{filter:grayscale(1)}
.asset-card.terminal-card .asset-info,.asset-card.terminal-card .asset-info *{color:#60666c}
.terminal-thumbnail{filter:grayscale(1)}
.topology-initialization{padding:20px;background:#f8fbfd;border:1px solid #d3e5f0;border-radius:14px;color:#263b50}
.topology-initialization p{max-width:65ch;line-height:1.7}
.topology-initialization select{display:block;max-width:100%;min-height:44px;margin:16px 0}
.topology-initialization button{margin:0 10px 10px 0}
.category-combobox{position:relative;min-width:0}
.category-combobox>label{display:block;margin-bottom:8px}
.category-combobox-input{display:flex;align-items:stretch;border:1px solid #738aa0;border-radius:10px;background:white;overflow:hidden}
.category-map-form .category-combobox-input input{min-width:0;width:100%;border:0;border-radius:0;margin:0;box-shadow:none;background:transparent}
.category-combobox-input button{flex:0 0 44px;min-height:44px;border:0;border-left:1px solid #d3e5f0;border-radius:0;background:#eaf3f8;color:#315c85;cursor:pointer}
.category-combobox-input:focus-within{outline:2px solid #4b75a2;outline-offset:2px}
#acmCategoryOptions{position:relative;z-index:auto;margin-top:8px;max-height:264px;overflow:auto;min-height:44px;background:var(--panel,#fff);border:1px solid var(--border,#d3e5f0);border-radius:8px}
#acmCategoryOptions[hidden]{display:none}
#acmCategoryOptions [role=option]{display:flex;align-items:center;min-height:44px;padding:6px 12px;box-sizing:border-box;cursor:pointer;color:#263b50}
#acmCategoryOptions [aria-selected=true],#acmCategoryOptions [role=option]:hover{background:#eaf3f8}
.category-option-empty{padding:12px;color:#60768a;font-size:13px}
.asset-tag-requirements{min-width:0;margin:14px 0 0;padding:10px 12px;border:1px solid var(--border,#d3e5f0);border-radius:9px}
.asset-tag-requirements legend{padding:0 4px;color:var(--text,#263b50);font-weight:700}
.asset-tag-requirements legend span{font-size:12px;font-weight:400;color:var(--muted,#60768a)}
#acmTagRequirementChoices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#acmTagRequirementChoices label{display:flex;align-items:center;gap:8px;min-height:44px;min-width:0;margin:0;padding:8px;border:1px solid var(--border,#d3e5f0);border-radius:8px;font-size:13px}
#acmTagRequirementChoices label:has(input:checked){background:var(--surface,#eaf3f8);border-color:var(--primary,#4b75a2)}
#acmTagRequirementChoices input{width:18px;min-width:18px;height:18px;min-height:18px;margin:0;accent-color:var(--primary,#4b75a2)}
#acmTagRequirementChoices span{overflow-wrap:anywhere}
.asset-tag-type-list{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.asset-tag-type-list span{padding:8px 12px;border:1px solid var(--border,#d3e5f0);border-radius:8px;color:var(--text,#263b50);overflow-wrap:anywhere}
.asset-tag-type-add{display:flex;gap:12px;align-items:end}
.asset-tag-type-add label{display:grid;gap:6px;flex:1;min-width:0}
.asset-tag-type-add input{width:100%;min-width:0}
.asset-tag-type-add .btn{flex:none}
@media(max-width:600px){.category-secondary-editor .category-map-form,#acmTagRequirementChoices{grid-template-columns:minmax(0,1fr)}.asset-tag-type-add{flex-direction:column;align-items:stretch}.asset-tag-type-add input,.asset-tag-type-add .btn{min-height:44px}.asset-setting-tabs{flex-wrap:wrap}}

.repair-progress>header,.asset-repair-cycle>header{display:flex;justify-content:space-between;align-items:start;gap:12px}
.repair-progress header h4,.asset-repair-cycle h5{margin:0 0 4px;color:var(--text,#263b50)}
.repair-cycle-state,.asset-repair-cycle>header>span{font-size:13px;color:#315c85;background:#eaf3f8;padding:5px 10px;border-radius:8px}
.repair-cycle-period{display:flex;flex-wrap:wrap;gap:8px 16px;color:#60768a;line-height:1.6}
.repair-cycle-period strong{color:#263b50;font-variant-numeric:tabular-nums}
.repair-progress-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;list-style:none;padding:12px 0 0;margin:0}
.repair-progress-steps>li{position:relative;min-width:0;padding:0 10px}
.repair-progress-steps>li:not(:last-child)::after{content:"";position:absolute;top:17px;left:46px;right:-10px;height:2px;background:#c7d6e5}
.repair-progress-steps>li.done::after{background:#4b75a2}
.repair-step-number{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;position:relative;z-index:1;background:#e9eff5;color:#60768a;border:2px solid #f8fbfd;font-weight:700}
.done>.repair-step-number{background:#4b75a2;color:white}
.active>.repair-step-number{outline:2px solid #4b75a2;outline-offset:2px}
.repair-progress-steps h5{font-size:15px;line-height:1.5;margin:34px 0 4px;overflow-wrap:anywhere}
.repair-segment-time{position:absolute;top:24px;left:46px;right:-10px;text-align:center;font-size:12px;line-height:1.5;color:var(--muted,#60768a);font-variant-numeric:tabular-nums}
.repair-step-actor{margin-top:8px;font-size:14px;line-height:1.5;color:var(--text,#263b50);overflow-wrap:anywhere}
.repair-step-at{display:block;font-size:13px;color:var(--muted,#60768a);line-height:1.7;font-variant-numeric:tabular-nums}
.repair-step-status{color:#315c85;font-size:13px}
.repair-progress-steps p{font-size:13px;line-height:1.6;color:#60768a;min-height:42px;margin:8px 0}
.repair-progress-steps dl{display:grid;gap:8px;margin:12px 0 0}
.repair-progress-steps dl div{min-width:0}.repair-progress-steps dt{font-size:12px;color:#60768a}
.repair-progress-steps dd{font-size:13px;margin:3px 0 0;line-height:1.5;overflow-wrap:anywhere;color:#263b50}
.asset-repair-cycle{padding:16px;border:1px solid #c7dcef;border-left:3px solid #4b75a2;border-radius:12px;background:#f8fbfd;margin:12px 0}
.asset-repair-cycle p{line-height:1.65;overflow-wrap:anywhere}.asset-repair-cycle details{margin:12px 0}
.asset-repair-cycle summary,.asset-repair-audit summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:#315c85}
.repair-cycle-gap{border-left:2px dashed #a9bdd2;margin:16px 0 0 18px;padding:10px 16px;color:#60768a;font-size:13px}
.asset-repair-audit{margin:16px 0}.review-note{color:#4e657a;line-height:1.6}
#reviewFilters.review-filters{display:grid;grid-template-columns:minmax(200px,2fr) repeat(2,minmax(130px,1fr));gap:12px;padding:16px;border:1px solid #d3e5f0;border-radius:14px;background:#f8fbfd;margin:16px 0}
.review-filters>label{display:grid;align-content:start;gap:6px;font-size:13px;color:#60768a;min-width:0;margin:0}
#reviewFilters input,#reviewFilters select{width:100%;min-width:0;min-height:44px;box-sizing:border-box}
.review-score{grid-column:1/-1;border:1px solid #d3e5f0;border-radius:10px;min-width:0;padding:10px 14px;margin:0}
.review-score legend{font-size:14px}.review-score output{font-weight:700;color:#263b50;margin-left:12px}
.review-score>div{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.review-score>div>label{display:grid;grid-template-columns:52px 1fr;align-items:center;font-size:13px;color:#60768a}
.review-score input[type=range]{accent-color:#4b75a2;padding:0;cursor:pointer}
.review-score .review-unscored{display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px}
#reviewFilters .review-unscored{justify-content:flex-start;margin:0}
#reviewFilters .review-unscored input{width:20px;height:20px;min-height:20px;flex:none}
.review-filter-actions{display:flex;gap:10px;grid-column:1/-1;justify-content:end}
.review-pager{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center}
.review-pager span{font-size:13px;font-variant-numeric:tabular-nums}
.repair-progress button:focus-visible,.asset-repair-cycle summary:focus-visible,.review-filters :focus-visible{outline:3px solid #4b75a2;outline-offset:2px}
@media(max-width:600px){
 .repair-progress-steps{grid-template-columns:1fr;gap:0}
 .repair-progress-steps>li{display:grid;grid-template-columns:36px 1fr;gap:16px;padding:0 0 20px}
 .repair-progress-steps>li:not(:last-child)::after{left:17px;right:auto;top:36px;bottom:0;width:2px;height:auto}
 .repair-progress-steps>li{padding-bottom:36px}
 .repair-segment-time{top:auto;bottom:8px;left:52px;right:auto;text-align:left}
 .repair-step-content{grid-column:2}
 .repair-step-actor{margin-top:4px}
 .repair-progress-steps h5{margin:0 0 3px}.repair-progress-steps p{min-height:0}
 .repair-progress-steps dl{grid-template-columns:repeat(2,minmax(0,1fr))}
 #reviewFilters.review-filters{grid-template-columns:1fr 1fr;padding:12px;gap:12px}
 .review-filters>label:first-child{grid-column:1/-1}
 .review-score>div{grid-template-columns:1fr;gap:0}
 .review-filter-actions .btn{flex:1}.review-pager>span{order:-1;width:100%;text-align:center}.review-pager>.btn{flex:1}
 .repair-cycle-period{font-size:13px}.repair-progress>header{flex-wrap:wrap}
}
