/* Flexible RTL layout; shared theme tokens support day, night and high contrast. */
#backupDialog,#backupRestorePreview{--d-muted:color-mix(in srgb,var(--d-text) 82%,var(--d-bg) 18%);box-sizing:border-box;width:min(94vw,660px);max-height:90dvh;overflow:auto;padding:24px;color:var(--d-text);background:var(--d-bg2,var(--d-bg));text-align:right}
#backupDialog *,#backupRestorePreview *{box-sizing:border-box;min-width:0}
#backupDialog [hidden],#backupRestorePreview [hidden]{display:none!important}
.backup-heading{display:flex;gap:14px;align-items:center;margin:8px 0 20px;padding-left:22px}.backup-heading img{width:62px;height:62px;flex:none}
#backupDialog h2,#backupRestorePreview h2{font-size:20px;line-height:1.7;margin:0 0 5px}
#backupDialog h3{font-size:15px;line-height:1.8;margin:0 0 6px}#backupDialog h4{font-size:14px;line-height:1.8}
#backupDialog p,#backupRestorePreview p{font-size:12px;line-height:1.9;margin:8px 0;color:var(--d-muted);overflow-wrap:anywhere}
#backupDialog .backup-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;border:1px solid var(--d-line);border-radius:20px;background:var(--d-glass,rgba(128,160,180,.06))}
.backup-overview span{display:block;font-size:11px;line-height:1.8;color:var(--d-muted)}.backup-overview b{display:block;margin-top:7px;font-size:13px;line-height:1.8}
#backupFreshness{grid-column:1/-1;margin:0!important;border-top:1px solid var(--d-line);padding-top:10px}
#backupDialog .backup-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:20px 0 12px}
#backupDialog button:not(.dialog-close),#backupRestorePreview button{font:inherit;font-size:13px;white-space:normal;overflow-wrap:anywhere;line-height:1.8;min-height:46px;border:1px solid var(--d-line);border-radius:12px;background:var(--d-bg);color:var(--d-text);padding:10px 12px;cursor:pointer}
#backupDialog button:disabled,#backupRestorePreview button:disabled{opacity:.5;cursor:default}
#backupDialog .backup-tabs button{font-size:12px;padding:10px 4px}
#backupDialog .backup-tabs button.active{background:var(--d-teal);color:#052c30;border-color:var(--d-teal);font-weight:700}
#backupDialog .backup-card{border:1px solid var(--d-line);border-radius:20px;padding:17px;background:var(--d-glass,rgba(128,160,180,.06))}
#backupDialog label{font-size:13px;line-height:1.9;display:block;margin-top:12px;color:var(--d-text)}
#backupDialog input:not([type=checkbox]):not([type=file]),#backupDialog select{width:100%;min-height:46px;border:1px solid var(--d-line);border-radius:12px;background:var(--d-bg);color:var(--d-text);font:inherit;font-size:14px;padding:10px;margin-top:6px}
#backupDialog input[type=password]{text-align:center;direction:ltr;letter-spacing:3px}#backupDialog input::placeholder{letter-spacing:normal;direction:rtl;color:var(--d-text);opacity:1;font-size:12px}
#backupDialog .backup-hint{font-size:11px;color:var(--d-muted)}.backup-optional{color:var(--d-muted)}
#backupDialog button.primary,#backupDialog .backup-main,#backupRestorePreview button.primary{background:var(--d-teal);color:#052c30;font-weight:750;border-color:var(--d-teal)}
#backupDialog .backup-main{margin-top:14px;width:100%}#backupDialog .backup-secondary{width:100%;margin-top:12px}
#backupDialog .backup-status,#backupDialog .drive-status{padding:12px;border:1px solid var(--d-line);border-radius:13px;background:var(--d-bg);color:var(--d-text);font-size:12px;line-height:1.9;margin-top:12px;overflow-wrap:anywhere}
#backupDialog .error{border-inline-start:4px solid #dd5266}#backupDialog .success{border-inline-start:4px solid var(--d-teal)}#backupDialog .working{border-inline-start:4px solid #e9a735}
#backupDialog .drive-head{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px}.drive-head>div{flex:1 1 210px}
#backupDialog .drive-state{position:static;margin:0;display:flex;white-space:normal;border:1px solid var(--d-line);padding:6px 10px;gap:6px;font-size:11px;color:var(--d-text)}
#backupDialog .drive-state i{flex:none}#backupDialog .drive-settings{grid-template-columns:1fr;gap:0}
#backupDialog .drive-toggle{display:flex!important;align-items:center;gap:14px;border:1px solid var(--d-line);border-radius:12px;background:var(--d-bg);padding:12px!important;color:var(--d-text)!important}
#backupDialog input[type=checkbox],#backupRestorePreview input[type=checkbox]{width:22px;height:22px;min-height:22px;flex:none;accent-color:var(--d-teal);margin:0}
#backupDialog .drive-toggle small{display:block;margin-top:5px;color:var(--d-muted);font-size:11px;line-height:1.8;font-weight:normal}
#backupDialog .drive-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#backupDialog .drive-version{display:flex;flex-wrap:wrap;gap:10px;border-color:var(--d-line);background:var(--d-bg);padding:12px}.drive-version>div{flex:1 1 180px}
#backupDialog .drive-version b{font-size:13px}#backupDialog .drive-version small{font-size:11px;color:var(--d-text);line-height:1.8}
#backupDialog .drive-empty{font-size:12px;line-height:1.9;color:var(--d-muted);border-color:var(--d-line)}
#backupDialog .backup-file-label{padding:12px;border:1px dashed var(--d-line);border-radius:12px;background:var(--d-bg)}
#backupDialog input[type=file]{display:block;max-width:100%;width:100%;font:inherit;font-size:12px;line-height:1.9;margin-top:10px;color:var(--d-text)}
#backupDialog input[type=file]::file-selector-button{border:1px solid var(--d-line);border-radius:8px;background:var(--d-bg2);color:var(--d-text);font:inherit;padding:8px;cursor:pointer}
#backupDialog .backup-reminder{margin-top:16px}.backup-reminder label{margin-top:0!important;font-weight:700}#backupDialog .backup-footer{font-size:11px;margin-top:16px}
#backupRestorePreview{width:min(94vw,560px)}#backupPreviewCounts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0}
#backupPreviewCounts>div{padding:12px;border:1px solid var(--d-line);border-radius:12px;background:var(--d-glass,rgba(128,160,180,.06))}#backupPreviewCounts dt{font-size:12px;line-height:1.9;color:var(--d-muted)}#backupPreviewCounts dd{font-size:20px;margin:6px 0 0;font-weight:750}
#backupRestorePreview .backup-warning{padding:12px;border:1px solid #c18d36;border-radius:12px;color:var(--d-text)}
.backup-confirm-label{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.9;padding:12px 0}.backup-preview-actions{display:flex;flex-wrap:wrap;gap:8px}.backup-preview-actions button{flex:1 1 130px}
#backupRestorePreview #backupRestoreError{color:var(--d-text);min-height:1.9em}
#backupDialog :focus-visible,#backupRestorePreview :focus-visible{outline:3px solid var(--d-teal);outline-offset:3px}
@media(max-width:400px){#backupDialog,#backupRestorePreview{padding:18px 14px}.backup-heading{gap:10px}.backup-heading img{width:48px;height:48px}#backupDialog .backup-overview{grid-template-columns:1fr}#backupDialog .drive-actions{grid-template-columns:1fr}#backupDialog .backup-card{padding:13px}}
#backupDialog button.backup-main{background:var(--d-teal);color:#052c30;border-color:var(--d-teal)}
#openBackupSettings>span{grid-row:auto;grid-column:auto}#openBackupSettings>span:last-child{grid-column:3;grid-row:1}
.settings-report.security-entry>span{grid-row:auto;grid-column:auto}.settings-report.security-entry>span:last-child{grid-column:3;grid-row:1}
#backupDialog .dialog-close{display:grid;place-items:center}
