/* Backups is a scoped Admin section; typography comes from the application. */
.adm-backups-page .adm-head-title { font-family:inherit; font-size:22px; font-weight:600; line-height:1.3; letter-spacing:normal; }
.adm-backups { margin:0 0 32px; color:var(--adm-ink,var(--text)); font-family:inherit; font-size:13px; }
.adm-backups [hidden] { display:none!important; }
.adm-backups-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.adm-backups h2 { margin:0; font-family:inherit; font-size:16px; font-weight:600; line-height:1.4; }
.adm-backups-description { margin:6px 0; color:var(--adm-ink-2,var(--text2)); line-height:1.5; }
.adm-backups-meta { margin:0 0 12px; font-size:12px; color:var(--adm-ink-3,var(--text3)); }
.adm-backups button,.adm-backups .download { display:inline-flex; align-items:center; justify-content:center; min-height:30px; padding:5px 11px; border:1px solid var(--adm-border,var(--border)); border-radius:4px; background:var(--adm-card,var(--surface,#fff)); color:var(--adm-ink,var(--text)); font-family:inherit; font-size:12px; font-weight:500; line-height:1.4; text-decoration:none; cursor:pointer; }
.adm-backups button:hover,.adm-backups .download:hover { background:var(--adm-fill-3,#f5f5f5); }
.adm-backups button:disabled { opacity:.5; cursor:not-allowed; }
.adm-backups :is(button,a,input,summary):focus-visible { outline:2px solid var(--adm-accent-ink,#59515e); outline-offset:3px; }
.adm-backups .adm-runs-card { overflow-x:auto; border-radius:4px; box-shadow:none; }
.adm-backups table { width:100%; border-collapse:collapse; text-align:left; font:inherit; }
.adm-backups table th { font-size:12px; font-weight:600; text-transform:none; letter-spacing:normal; color:var(--adm-ink-2,var(--text2)); background:var(--adm-fill-3,#f6f6f6); }
.adm-backups th,.adm-backups td { padding:11px 14px; border-bottom:1px solid var(--adm-hair,var(--border)); white-space:nowrap; }
.adm-backups tbody tr:last-child td { border-bottom:0; }
.adm-backups th:last-child { text-align:right; }
.adm-backups .actions { display:flex; justify-content:flex-end; gap:8px; }
.adm-backups .minor { display:block; color:var(--adm-ink-3,var(--text3)); font-size:11px; margin-top:2px; }
.adm-backups-status { font-size:12px; color:var(--adm-ink-3,var(--text3)); margin:10px 0; line-height:1.5; }
.adm-backups-upload { border-top:1px solid var(--adm-border,var(--border)); margin-top:16px; padding-top:12px; }
.adm-backups-upload summary { cursor:pointer; font-weight:500; }
.adm-backups-upload p { color:var(--adm-ink-2,var(--text2)); font-size:12px; }
.adm-backups-file { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.adm-backups input { min-width:0; max-width:100%; font:inherit; font-size:12px; }
.adm-backups input::file-selector-button { font:inherit; padding:5px 9px; border:1px solid var(--adm-border,var(--border)); border-radius:4px; background:var(--adm-card,#fff); color:inherit; margin-right:8px; }
.adm-backups .sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.adm-backups .empty { margin:0; padding:20px 14px; color:var(--adm-ink-3,var(--text3)); }
.adm-backups dialog { max-width:520px; border:1px solid var(--adm-border,var(--border)); border-radius:6px; padding:22px; background:var(--adm-card,#fff); color:inherit; font:inherit; }
.adm-backups dialog::backdrop { background:#0006; }
@media(max-width:600px) { .adm-backups th,.adm-backups td { padding:10px 8px; font-size:12px; } .adm-backups .actions { flex-wrap:wrap; } }

.adm-backups-page,.adm-backups-page .adm-wrap,.adm-backups { min-width:0; }
@media(max-width:600px) { .adm-backups table { table-layout:fixed; } .adm-backups td,.adm-backups th { white-space:normal; overflow-wrap:anywhere; } .adm-backups .download { padding:5px 7px; } }

/* Keep Admin within the viewport when the older top navigation has long labels. */
body[data-layout="topbar"]:has(.adm-backups-page) .app-shell { grid-template-columns:minmax(0,1fr); }
body:has(.adm-backups-page) .sidebar,body:has(.adm-backups-page) .sidebar-nav { min-width:0; }
.adm-backups-page #adm-health { max-width:100%; overflow-x:auto; }

@media(max-width:600px) {
 body[data-layout="topbar"]:has(.adm-backups-page) .sidebar { flex-wrap:wrap; padding:0 12px; }
 body[data-layout="topbar"]:has(.adm-backups-page) .sidebar-brand { flex:1 1 auto; border-right:0; }
 body[data-layout="topbar"]:has(.adm-backups-page) .sidebar-nav { flex:1 0 100%; order:3; }
 body[data-layout="topbar"]:has(.adm-backups-page) :is(.nav-group-label,.nav-item-top) { font-size:12px; padding:9px 8px; }
 body[data-layout="topbar"]:has(.adm-backups-page) .nav-group-items { display:none; }
 body[data-layout="topbar"]:has(.adm-backups-page) .nav-group:is(:hover,:focus-within,.open) > .nav-group-items { display:flex; }
 body[data-layout="topbar"]:has(.adm-backups-page) .nav-group:nth-last-child(-n+2) .nav-group-items { left:auto; right:0; }
}
