
#controlmodels .cmHero{min-height:140px}
.cmWorkspace{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(350px,1.1fr);gap:14px;align-items:start}
.cmWorkspace>.panel{min-width:0}
.cmBar{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:16px}
.cmBar h3{margin:0;font-size:19px}
.cmModelList{display:grid;gap:9px}
.cmModel{padding:15px;border:1px solid var(--line);border-radius:10px;background:#fff}
.cmModel strong{display:block;font-size:15px;color:var(--ink)}
.cmModel small{display:block;margin:5px 0 10px;line-height:1.6;color:var(--muted);font-size:12px}
.cmModelActions{display:flex;gap:6px;flex-wrap:wrap}
.cmModelActions .btn{font-size:12px;padding:8px 10px}
.cmPill{font-size:11px;font-weight:700;border-radius:6px;background:#edf4f8;padding:5px 8px;display:inline-block;color:#294a63;margin-top:5px}
.cmForm{display:grid;gap:13px}
.cmField{display:grid;gap:6px}
.cmField>span,.cmField>strong{font-weight:700;font-size:13px;color:#2d465c}
.cmField input,.cmField textarea,.cmField select{width:100%;max-width:100%;border:1px solid var(--line-strong);border-radius:8px;padding:10px;background:#fff;color:var(--ink);font-size:14px}
.cmField input:focus,.cmField textarea:focus,.cmField select:focus{outline:2px solid #b2dcf4;border-color:#2879b6}
.cmField textarea{resize:vertical;min-height:70px}
.cmHelper{font-size:12px;line-height:1.6;color:var(--muted);margin:0}
.cmApps{display:grid;gap:5px;max-height:260px;overflow:auto;border:1px solid var(--line);border-radius:9px;padding:8px;background:#fafcfe}
.cmCheck{display:flex;gap:10px;align-items:center;padding:9px 10px;border-radius:7px;background:#fff;border:1px solid #e7eef2;cursor:pointer}
.cmCheck input{width:17px;height:17px;flex-shrink:0;accent-color:#176a9c}
.cmCheck span{min-width:0}
.cmCheck strong{display:block;font-size:13px;overflow-wrap:anywhere}
.cmCheck small{display:block;font-size:11px;color:var(--muted);overflow-wrap:anywhere;margin-top:2px}
.cmColumns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cmRestrictionGrid{display:grid;gap:9px}
.cmRestrictionRow{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,155px);gap:9px;align-items:center}
.cmRestrictionRow span{font-size:13px;font-weight:600}
.cmRestrictionRow select{padding:8px;border:1px solid var(--line-strong);border-radius:8px;background:white;font-size:13px;width:100%}
.cmDeviceList{display:grid;gap:7px;max-height:260px;overflow:auto}
.cmDevice{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:10px 12px;border-radius:8px;cursor:pointer}
.cmDevice input{width:17px;height:17px;accent-color:#14699a}
.cmDevice b{display:block;font-size:13px}
.cmDevice small{color:var(--muted);font-size:11px;display:block}
.cmDevice[aria-disabled="true"]{opacity:.55}
.cmActions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.cmInline{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.cmSummary{background:#f5f9fc;border:1px solid #dae9f1;border-radius:9px;padding:12px;font-size:12px;line-height:1.7;color:#35546a}
.cmHistory{display:grid;gap:10px}
.cmHistory article{border:1px solid var(--line);border-radius:9px;padding:12px 13px}
.cmHistory header{display:flex;justify-content:space-between;gap:9px;align-items:start}
.cmHistory strong{font-size:13px}
.cmHistory small{font-size:11px;color:var(--muted)}
.cmHistory .cmRow{padding:7px 0;border-top:1px solid #ecf0f3;font-size:12px;display:flex;justify-content:space-between;gap:10px}
.cmState{font-size:11px;font-weight:700;display:inline-block;padding:4px 7px;border-radius:6px;background:#f2f3f4;color:#536675}
.cmState.done,.cmState.saved{background:#e7f7ed;color:#167348}
.cmState.pending,.cmState.queued{background:#fff5df;color:#96620b}
.cmState.error,.cmState.manual,.cmState.unknown{background:#fff1f1;color:#ad3232}
.cmState.scheduled{background:#e8f2fd;color:#21629c}
.cmState.cancelled{background:#f3f3f3;color:#6a6a6a}
.cmSectionTitle{margin:22px 0 12px;font-size:19px}
.cmEmpty{padding:24px 12px;text-align:center;color:var(--muted);font-size:13px;border:1px dashed #c9d8e2;border-radius:9px}
.cmSplit{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cmFold{border:1px solid var(--line);border-radius:10px;padding:10px}
.cmFold summary{font-size:14px;font-weight:800;cursor:pointer;color:#244c68;padding:4px}
.cmFold[open] summary{margin-bottom:12px}
#controlModelEditor[hidden],#cmScheduleFields[hidden]{display:none!important}
@media(max-width:960px){.cmWorkspace,.cmSplit{grid-template-columns:1fr}}
@media(max-width:520px){.cmColumns{grid-template-columns:1fr}.cmRestrictionRow{grid-template-columns:1fr}.cmActions .btn{flex:1}.cmBar{align-items:stretch}}

.cmHistoryFilters{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:11px;align-items:end;margin:8px 0 4px}
.cmHistoryButtons{display:flex;flex-wrap:wrap;gap:8px;align-self:end}
.cmHistoryPager{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;margin:14px 0 0}
.cmHistoryPager span{font-size:12px;color:var(--muted);text-align:center}
.cmHistory article{content-visibility:auto;contain-intrinsic-size:auto 105px}
.cmHistory .cmState{flex:none;white-space:normal}
.cmHistory .cmRow{overflow-wrap:anywhere}
@media(max-width:520px){.cmHistoryPager .btn{flex:1}.cmHistoryFilters{grid-template-columns:1fr}}
