.recovery-backups-card{min-width:0}
.recovery-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}
.recovery-summary-grid .detail-card{display:flex;flex-direction:column;gap:10px;min-width:0}
.recovery-summary-grid strong{font-size:1.1rem;overflow-wrap:anywhere}
.recovery-summary-grid small{color:var(--muted-color,#697185)}
.recovery-policy-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:14px}
.recovery-policy-grid label{display:grid;gap:8px;min-width:0}
.recovery-policy-grid input,.recovery-policy-grid select{font:inherit;box-sizing:border-box;width:100%;min-width:0;border:1px solid #c8c2d8;border-radius:9px;padding:10px;background:var(--admin-surface,#fff);color:inherit}
.recovery-check{display:flex!important;gap:10px;align-items:center;line-height:1.5}
.recovery-check input{width:18px;height:18px;flex:0 0 18px;accent-color:#3385eb}
.recovery-main-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:16px 0}
.recovery-main-actions .section-note{margin:0}
.recovery-backups-card fieldset{min-width:0;padding:0;border:0;margin:20px 0}
.recovery-backups-card fieldset:disabled{opacity:.7}
.recovery-keep-local{margin-top:18px}
.recovery-filename{overflow-wrap:anywhere;word-break:break-word}
.recovery-backup-list{display:grid;gap:10px}
.recovery-backup-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px;border:1px solid #d8d3e5;border-radius:12px;min-width:0}
.recovery-backup-row>div:first-child{min-width:0;flex:1}
.recovery-backup-row p{margin:7px 0 0;line-height:1.5}
.recovery-download-actions{display:flex;gap:10px;flex-wrap:wrap;flex:0 1 auto}
.recovery-list-heading{font-size:1.1rem;margin-top:22px}
.recovery-blue-progress{height:13px;border-radius:10px;background:#dfebfb;overflow:hidden;margin:14px 0;position:relative}
.recovery-blue-progress>span{display:block;height:100%;border-radius:inherit;background:#3588ed;position:relative;transition:width .35s ease}
.recovery-blue-progress.is-active>span:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent,rgba(255,255,255,.65),transparent);transform:translateX(-100%);animation:recovery-shimmer 2s linear infinite}
.recovery-blue-progress.is-indeterminate>span{animation:recovery-travel 2.2s ease-in-out infinite}
@keyframes recovery-shimmer{to{transform:translateX(100%)}}
@keyframes recovery-travel{0%{transform:translateX(-100%)}100%{transform:translateX(385%)}}
.recovery-activation-note{background:#f1f5ff;color:#345079;border:1px solid #cadbf4;border-radius:10px;padding:12px;line-height:1.5}
.recovery-backups-card [role=status]:empty,.recovery-backups-card [role=alert]:empty{display:none}
.recovery-advanced{margin-top:22px;border-top:1px solid #ddd6ec;padding-top:16px}
.recovery-advanced>summary{cursor:pointer;font-weight:600;padding:8px 0}
.recovery-backups-card button:focus-visible,.recovery-backups-card input:focus-visible,.recovery-backups-card select:focus-visible,.recovery-advanced>summary:focus-visible{outline:3px solid #3189ed;outline-offset:3px}
.recovery-advanced .legacy-recovery-tools{border:0;box-shadow:none;padding:0}
.recovery-backups-card [hidden]{display:none!important}
.recovery-backups-card .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1100px){.recovery-policy-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.recovery-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.recovery-backup-row{flex-direction:column;align-items:stretch}.recovery-policy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recovery-policy-grid>.recovery-check{grid-column:1/-1}}
@media(max-width:430px){.recovery-policy-grid,.recovery-summary-grid{grid-template-columns:minmax(0,1fr)}.recovery-download-actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%}.recovery-download-actions button{width:100%;white-space:normal}}
@media(prefers-reduced-motion:reduce){.recovery-blue-progress>span,.recovery-blue-progress>span:after{animation:none!important;transition:none!important}.recovery-blue-progress.is-indeterminate>span{transform:translateX(100%)}}
