#project-live-host{flex:none;border-bottom:1px solid #e1e6ed;min-height:0}.project-live{font-size:12px;background:#f7faff}.project-live>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:10px 15px;font-weight:700;color:#143965}.project-live [data-count]{font-size:11px;font-weight:400}.live-actions{display:flex;justify-content:space-between;align-items:center;padding:0 12px 5px}.live-actions label{display:flex;align-items:center;gap:6px}.live-actions input{width:auto}.live-actions button{border:1px solid #c4d4e5;border-radius:7px;background:white;padding:3px 10px}.live-message,.live-note{display:block;margin:3px 12px 8px;color:#516983;line-height:1.45;font-size:11px}.project-rover-list{max-height:170px;overflow:auto;padding:0 8px}.project-rover-row{display:grid;grid-template-columns:1fr auto;width:100%;text-align:left;background:white;border:1px solid #dce7f2;border-radius:8px;padding:7px;margin-bottom:5px;gap:3px;cursor:pointer}.project-rover-row strong{overflow-wrap:anywhere}.project-rover-row small{grid-column:1 / -1;color:#5c6d80;overflow-wrap:anywhere}.project-rover-row.selected{background:#e5edff;border-color:#245be0}.project-rover-marker{cursor:pointer;background:none;border:0;padding:0;text-align:center;min-width:36px;display:flex;flex-direction:column-reverse;align-items:center;gap:4px}.rover-glyph{color:white;background:var(--rover-colour);border:2px solid white;border-radius:50%;height:28px;width:28px;display:grid;place-items:center;font:bold 16px Arial;box-shadow:0 1px 5px #263c5466}.rover-label{background:#fffffff0;color:#193450;border:1px solid #c7d7e5;border-radius:6px;padding:3px 6px;white-space:nowrap;font:12px Arial}.project-rover-marker.selected .rover-glyph{box-shadow:0 0 0 3px #245be0}.project-rover-marker.selected .rover-label{border-color:#245be0;color:#245be0}.project-rover-row:focus-visible,.project-rover-marker:focus-visible{outline:3px solid #245be0;outline-offset:2px}@media(max-height:650px){.project-rover-list{max-height:100px}.live-note{display:none}}
/* Existing forms use column labels; keep this compact control horizontal. */
#project-live-host .live-actions{padding:2px 12px 6px;gap:8px}
#project-live-host .live-actions label{display:flex;flex-direction:row;align-items:center;gap:6px;margin:0;font-weight:400;white-space:nowrap}
#project-live-host .live-actions input[type=checkbox]{width:15px;height:15px;min-height:0;margin:0;padding:0;flex:none}
#project-live-host .live-message{padding:0;font-weight:400}
/* 1.1.7: explicit manual-refresh feedback and a compact cadence selector. */
#project-live-host .live-actions button{min-width:34px;min-height:30px;cursor:pointer;display:grid;place-items:center}
#project-live-host .live-actions button:disabled{cursor:wait;opacity:.7}
#project-live-host [data-refresh-icon]{display:inline-block;font-size:18px;line-height:1}
#project-live-host .is-updating [data-refresh-icon]{animation:rover-refresh-spin .85s linear infinite}
#project-live-host .live-timing{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 12px 6px;font-size:10px;color:#48627e;flex-wrap:wrap}
#project-live-host .live-timing label{display:flex;flex-direction:row;align-items:center;gap:5px;margin:0;font-size:10px;font-weight:400}
#project-live-host .live-timing select{width:52px;min-height:26px;padding:2px 4px;border:1px solid #c4d4e5;border-radius:6px;font:inherit;background:white}
#project-live-host .live-error{color:#a63232}
#project-live-host [data-live-clock]{font-variant-numeric:tabular-nums}
@keyframes rover-refresh-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#project-live-host .is-updating [data-refresh-icon]{animation:none}}
