.backup-page{
  display:flex;
  flex-direction:column;
  gap:16px;
  max-width:1280px;
  margin:0 auto;
}

.backup-hero{
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
  padding:18px;
}

.backup-title{
  margin:0;
  font:700 22px/1.25 Poppins, system-ui, sans-serif;
  color:var(--text);
}

.backup-subtitle{
  margin:6px 0 0;
  color:var(--text-muted);
  font:500 13px/1.6 Poppins, system-ui, sans-serif;
}

.backup-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-top:16px;
}

.backup-field{display:flex;flex-direction:column;gap:6px;}
.backup-field label{font:700 12px/1 Poppins, system-ui, sans-serif;color:#334155;}
.backup-field select,
.backup-field input[type="file"]{
  width:100%;
  min-height:42px;
  border:1px solid var(--border);
  border-radius:12px;
  background:#fff;
  color:var(--text);
  padding:8px 10px;
  font:600 13px/1.2 Poppins, system-ui, sans-serif;
  outline:none;
}
.backup-field select:focus,
.backup-field input[type="file"]:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(184,124,76,.12);}

.backup-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.backup-btn{
  border:1px solid transparent;
  border-radius:999px;
  min-height:40px;
  padding:9px 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font:700 13px/1 Poppins, system-ui, sans-serif;
  cursor:pointer;
  background:var(--primary);
  color:#0f172a;
}
.backup-btn:hover{filter:brightness(.98);}
.backup-btn[disabled]{opacity:.55;cursor:not-allowed;}
.backup-btn .material-icons{font-size:18px;}
.backup-btn.secondary{background:#fff;border-color:var(--border);color:#334155;}
.backup-btn.accent{background:var(--accent);color:#fff;}
.backup-btn.danger{background:#fee2e2;color:#991b1b;border-color:#fecaca;}

.backup-panels{
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(320px, .9fr);
  gap:16px;
}

.backup-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
  padding:16px;
}

.backup-card h2{
  margin:0 0 8px;
  font:700 16px/1.3 Poppins, system-ui, sans-serif;
  color:var(--text);
}
.backup-card p{margin:0;color:var(--text-muted);font:500 13px/1.6 Poppins, system-ui, sans-serif;}

.backup-note{
  margin-top:12px;
  padding:12px;
  border-radius:14px;
  background:#fff7ed;
  color:#9a3412;
  border:1px solid #fed7aa;
  font:600 12px/1.55 Poppins, system-ui, sans-serif;
}

.backup-check{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin-top:12px;
  color:#334155;
  font:600 12px/1.5 Poppins, system-ui, sans-serif;
}
.backup-check input{margin-top:2px;}

.backup-counts{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
.backup-count-item{
  border:1px solid var(--border);
  border-radius:14px;
  padding:10px;
  background:#fff;
}
.backup-count-item strong{display:block;font:700 18px/1 Poppins, system-ui, sans-serif;color:#0f172a;}
.backup-count-item span{display:block;margin-top:5px;font:600 11px/1.3 Poppins, system-ui, sans-serif;color:var(--text-muted);}

.backup-status{
  min-height:20px;
  margin-top:10px;
  color:#334155;
  font:600 12px/1.5 Poppins, system-ui, sans-serif;
}
.backup-status.error{color:#b91c1c;}
.backup-status.ok{color:#166534;}

.backup-preview{
  margin-top:12px;
  border:1px solid var(--border);
  border-radius:14px;
  overflow:hidden;
}
.backup-preview table{width:100%;border-collapse:collapse;font:500 12px/1.45 Poppins, system-ui, sans-serif;}
.backup-preview th,
.backup-preview td{border-bottom:1px solid var(--border);padding:8px 10px;text-align:left;vertical-align:top;}
.backup-preview th{background:var(--primary);color:#0f172a;font-weight:700;}
.backup-preview tr:nth-child(even) td{background:#F7F4EA;}
.backup-preview tr:last-child td{border-bottom:0;}

@media (max-width: 980px){
  .backup-grid,
  .backup-panels{grid-template-columns:1fr;}
  .backup-counts{grid-template-columns:repeat(2, minmax(0,1fr));}
}

@media (max-width: 560px){
  .backup-hero,.backup-card{border-radius:14px;padding:14px;}
  .backup-actions{flex-direction:column;}
  .backup-btn{width:100%;}
  .backup-counts{grid-template-columns:1fr;}
}
