.recovery-panel { margin-top: 42px; } @media (max-width: 680px) { .recovery-panel { margin-top: 28px; } } .review-workspace { padding: clamp(16px, 3vw, 24px); border: 1px solid rgba(155, 135, 245, .18); border-radius: 16px; background: rgba(255, 255, 255, .02); } .review-heading, .review-navigation { display: flex; align-items: center; justify-content: space-between; gap: 16px; } .review-heading span, .batch-summary span { color: var(--muted); font-size: 10px; } .review-heading strong { display: block; margin-top: 5px; font-size: 14px; } .review-candidates { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0; } .review-candidate { display: flex; flex-direction: column; gap: 9px; min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: rgba(6, 8, 12, .28); } .review-candidate.winner { border-color: rgba(84, 212, 154, .52); background: rgba(84, 212, 154, .06); } .candidate-number { color: var(--violet); font-size: 9px; font-weight: 750; text-transform: uppercase; letter-spacing: .1em; } .review-candidate > strong, .review-candidate > small { overflow-wrap: anywhere; } .review-candidate > strong { font-size: 12px; } .review-candidate > small { flex: 1; color: var(--muted); font-size: 9px; line-height: 1.5; } .choose-winner { margin-top: 4px; border: 0; border-radius: 10px; padding: 10px 12px; background: linear-gradient(135deg, #907be9, #6e59cf); color: white; font: 750 11px/1 inherit; cursor: pointer; } .winner .choose-winner { background: rgba(84, 212, 154, .18); color: #8ce4b8; } .review-navigation button { border: 1px solid var(--line); border-radius: 9px; padding: 8px 11px; background: rgba(255, 255, 255, .04); color: var(--muted); font: 700 10px/1 inherit; cursor: pointer; } .review-navigation button:disabled { opacity: .35; } .batch-summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px; border: 1px solid rgba(102, 217, 232, .2); border-radius: 12px; background: rgba(102, 217, 232, .05); } .batch-summary strong { font-size: 12px; } @media (max-width: 760px) { .review-candidates { grid-template-columns: 1fr; } .review-heading, .batch-summary { align-items: flex-start; flex-direction: column; } } .batch-preview-modal { width: min(820px, calc(100vw - 32px)); max-height: min(82vh, 760px); padding: 24px; overflow: auto; border: 1px solid rgba(155, 135, 245, .3); border-radius: 20px; background: #161923; color: var(--text); box-shadow: 0 30px 100px rgba(0, 0, 0, .65); } .batch-preview-modal::backdrop { background: rgba(4, 5, 8, .78); backdrop-filter: blur(7px); } .modal-heading, .modal-actions, .modal-safety { display: flex; align-items: center; justify-content: space-between; gap: 14px; } .modal-heading h2 { margin: 0; font-size: 23px; letter-spacing: -.03em; } .modal-heading > button { border: 0; background: transparent; color: var(--muted); font-size: 28px; cursor: pointer; } #batch-preview-summary { color: var(--muted); font-size: 12px; } .batch-preview-list { display: grid; gap: 10px; max-height: 390px; margin: 18px 0; padding-right: 4px; overflow: auto; } .preview-decision { display: grid; grid-template-columns: 80px 1fr 1fr; gap: 13px; padding: 14px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255, 255, 255, .025); } .preview-decision > span, .preview-decision b { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; } .winner-path, .replaced-paths { min-width: 0; } .winner-path strong, .winner-path small, .replaced-paths small { display: block; margin-top: 5px; overflow-wrap: anywhere; } .winner-path strong { color: #8ce4b8; font-size: 11px; } .winner-path small, .replaced-paths small { color: var(--muted); font-size: 9px; line-height: 1.45; } .modal-safety { justify-content: flex-start; padding: 13px; border: 1px solid rgba(102, 217, 232, .2); border-radius: 12px; background: rgba(102, 217, 232, .05); } .modal-safety > span { color: var(--cyan); } .modal-safety p, .modal-safety strong, .modal-safety small { display: block; margin: 0; } .modal-safety strong { font-size: 11px; } .modal-safety small { margin-top: 4px; color: var(--muted); font-size: 9px; line-height: 1.45; } .modal-actions { justify-content: flex-end; margin-top: 16px; } .modal-actions button { border: 1px solid var(--line); border-radius: 10px; padding: 10px 13px; background: rgba(255, 255, 255, .04); color: var(--text); font: 700 11px/1 inherit; cursor: pointer; } #accept-preview { border-color: transparent; background: #6f5bd0; } @media (max-width: 620px) { .preview-decision { grid-template-columns: 1fr; } .modal-actions { align-items: stretch; flex-direction: column-reverse; } } .file-compare-row { display: grid; gap: 8px; padding: 9px 0; border-top: 1px solid rgba(255, 255, 255, .05); } .file-compare-row:first-child { border-top: 0; } .file-compare-row div, .file-actions { display: flex; flex-wrap: wrap; gap: 7px; } .file-compare-row button, .file-actions button { border: 1px solid rgba(155, 135, 245, .25); border-radius: 8px; padding: 7px 9px; background: rgba(155, 135, 245, .08); color: #d8d2f6; font: 700 10px/1 inherit; cursor: pointer; } .keeper-option { justify-content: space-between; } .keeper-option > label { display: flex; align-items: center; gap: 12px; min-width: 0; cursor: pointer; } .audio-preview { position: fixed; right: 24px; bottom: 20px; display: grid; grid-template-columns: minmax(150px, .7fr) minmax(240px, 1.3fr) auto; align-items: center; gap: 16px; width: min(720px, calc(100vw - 48px)); padding: 13px 14px; border: 1px solid rgba(102, 217, 232, .3); border-radius: 14px; background: rgba(16, 21, 29, .96); box-shadow: 0 16px 48px rgba(0, 0, 0, .45); z-index: 5; } .audio-preview[hidden] { display: none; } .audio-preview span, .audio-preview strong { display: block; } .audio-preview span { color: var(--cyan); font-size: 9px; text-transform: uppercase; letter-spacing: .1em; } .audio-preview strong { max-width: 360px; margin-top: 4px; overflow: hidden; color: var(--text); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; } .audio-preview audio { width: 100%; height: 34px; } .audio-preview > button { border: 0; background: transparent; color: var(--muted); font-size: 22px; cursor: pointer; } @media (max-width: 680px) { .keeper-option, .audio-preview { align-items: stretch; grid-template-columns: 1fr; } .keeper-option { flex-direction: column; } }