/* Scoped last so global component rules cannot stretch the two equal columns. */
.recordingWorkspace,.recordingToolbar{min-width:0}
.recordingToolbar input,.recordingToolbar select{min-width:0;width:100%}
.recordingWorkspace .recordingLayout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.recordingTaskList,.recordingTaskDetail,.recordingTaskRow>span,.recordingTaskRow>small{min-width:0}
.recordingTaskRow{grid-template-columns:100px minmax(0,1fr) minmax(110px,150px);gap:10px}
.recordingTaskRow b,.recordingTaskRow small{white-space:normal;overflow-wrap:anywhere}
.recordingTaskRows{max-height:none;overflow:visible}
.recordingListHeading,.recordingLogsHeading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.recordingListHeading{padding:12px 15px;border-bottom:1px solid #edf0f5}
.recordingListHeading small,.recordingLogsHeading small{color:#778299}
.recordingDetailHead{align-items:flex-start}
.recordingDetailHead>div{min-width:0;overflow-wrap:anywhere}
.recordingDetailHead>.recordingBadge{flex-shrink:0}
.recordingPager{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 10px;border-top:1px solid #e5e9f1;background:#fafbfe;font-size:14px}
.recordingPager>div{display:flex;gap:6px;flex-wrap:wrap}
.recordingPager button,.recordingLogSearch button{padding:7px 10px;border:1px solid #d9e0eb;border-radius:7px;background:#fff;color:#34415b;min-height:36px;white-space:nowrap}
.recordingPager button:disabled{opacity:.45;cursor:not-allowed}
.recordingPager button:focus-visible,.recordingLogSearch button:focus-visible,.recordingLogSearch input:focus-visible{outline:2px solid #5267f7;outline-offset:2px}
.recordingLogs{min-width:0}
.recordingLogs h4{margin:0}
.recordingLogSearch{display:grid;gap:6px;margin-top:12px}
.recordingLogSearch label{font-weight:600}
.recordingLogSearch>div{display:flex;gap:6px;flex-wrap:wrap}
.recordingLogSearch input{flex:1 1 160px;min-width:0;width:100%;padding:8px 10px;border:1px solid #d9e0eb;border-radius:7px;background:#fff}
.recordingLogSearch small,.recordingLogResult{color:#778299;line-height:1.6}
.recordingLogResult{margin:8px 0;overflow-wrap:anywhere}
.recordingLogRows{max-height:none;overflow:visible}
.recordingTaskDetail{overflow:visible}
.recordingLogs .recordingPager small{color:#778299}
.recordingLogs .recordingLog{grid-template-columns:112px minmax(0,1fr);gap:10px;padding:10px 4px}
.recordingLog span{min-width:0}
.recordingLog b{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;font-weight:500}
.recordingLog small,.recordingLog time{overflow-wrap:anywhere;line-height:1.5}
.recordingLogs .recordingLogFailure{background:#fff5f5;border-left:3px solid #b42318;padding-left:9px}
.recordingLogFailure b,.recordingLogFailure time,.recordingLogFailure small{color:#b42318}
.recordingLogFailureLabel{display:inline-block;margin-bottom:4px;padding:1px 7px;border:1px solid #f5b8b3;border-radius:4px;background:#fee4e2;color:#b42318;font-size:12px;font-weight:600;line-height:1.5}
@media(max-width:1200px){.recordingTaskRow{grid-template-columns:90px minmax(0,1fr)}.recordingTaskRow>small{grid-column:2;display:block}}
@media(max-width:1000px){.recordingWorkspace .recordingLayout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.recordingToolbar{grid-template-columns:minmax(0,1fr)}.recordingLogs .recordingLog{grid-template-columns:minmax(0,1fr);gap:3px}.recordingTaskDetail{padding:12px}.recordingDelivery{grid-template-columns:minmax(0,1fr)}.recordingLogComposer{flex-wrap:wrap}.recordingLogsHeading{align-items:flex-start}}

/* Task-detail cards are not the application header. Keep their height content-driven. */
.recordingTaskDetail .recordingSpecPanel>header,
.recordingTaskDetail .recordingValidation>header{height:auto;min-height:0;padding:8px 10px;gap:8px 12px;align-items:center;flex-wrap:wrap}
.recordingTaskDetail .recordingSpecPanel>header{display:grid;grid-template-columns:max-content minmax(0,1fr)}
.recordingTaskDetail .recordingSpecPanel>header h4,
.recordingTaskDetail .recordingValidation>header h4{margin:0;font-size:var(--ui-font-card-title,16px);font-weight:700;line-height:1.4}
.recordingTaskDetail .recordingSpecId{display:block;min-width:0;max-width:100%;font-size:var(--ui-font-caption,12px);line-height:1.5;white-space:normal;overflow-wrap:anywhere;text-overflow:clip;user-select:text}
.recordingTaskDetail .recordingDetailHead{gap:8px;align-items:flex-start}
.recordingTaskDetail .recordingDetailHead h3{margin:2px 0 0;line-height:1.4}
.recordingTaskDetail .recordingDetailHead small{display:block;line-height:1.4}
.recordingTaskDetail .recordingTaskRequirements{margin:4px 0 0;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;color:#7b879d}
.recordingTaskDetail .recordingDetailActions{margin:8px 0}
.recordingTaskDetail .recordingDetailActions:empty{display:none;margin:0}
.recordingTaskDetail .recordingDetailActions:empty+.recordingMeta{margin-top:10px}
.recordingTaskDetail .recordingDetailHead>.recordingBadge,
.recordingTaskDetail .recordingValidation>header>.recordingBadge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;align-self:flex-start;padding:4px 9px;border-radius:99px;font-size:var(--ui-font-caption,12px);font-weight:500;line-height:1.5;white-space:nowrap}
.recordingTaskDetail .recordingBadge.passed{background:#e4f7ec;color:#118447}
.recordingTaskDetail .recordingBadge.overridden,
.recordingTaskDetail .recordingBadge.needs_review{background:#fff4d8;color:#9b6712}
.recordingTaskDetail .recordingBadge.failed{background:#feecef;color:#ba2935}
@media(max-width:680px){.recordingTaskDetail .recordingSpecPanel>header{grid-template-columns:minmax(0,1fr)}}

.recordingTaskIdentity{font-size:12px;color:#64748b;overflow-wrap:anywhere;margin:8px 0}
.recordingRepeatDialog{box-sizing:border-box;width:min(680px,calc(100vw - 24px));max-height:85vh;border:1px solid #dce2ef;border-radius:12px;padding:20px;overflow:auto;color:#18243a}
.recordingRepeatDialog::backdrop{background:#17243b66}
.recordingRepeatDialog h3{margin:0 0 12px}.recordingRepeatDialog p{line-height:1.6}
.recordingRepeatList{display:grid;gap:10px;max-height:40vh;overflow:auto}
.recordingRepeatList article{display:grid;gap:8px;padding:12px;border:1px solid #dce2ef;border-radius:8px;overflow-wrap:anywhere}
.recordingRepeatList small{line-height:1.5}.recordingRepeatDialog label{display:grid;gap:8px;margin-top:16px}
.recordingRepeatDialog textarea{min-height:70px;width:100%;box-sizing:border-box}
.recordingRepeatDialog footer{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:16px}

.recordingRepeatDialog button{font-size:13px;line-height:1.5;padding:7px 12px}
.recordingRepeatDialog button.danger{color:#b42318;border-color:#f0b4ad;background:#fff6f5}
