:root {
  --zdt-primary: #17315d;
  --zdt-primary-2: #2a5298;
  --zdt-accent: #ff7a1a;
  --zdt-bg: #f5f8fc;
  --zdt-text: #1f2937;
  --zdt-muted: #64748b;
  --zdt-card: #ffffff;
  --zdt-border: #e7eef7;
  --zdt-radius-lg: 24px;
  --zdt-radius-md: 18px;
  --zdt-radius-sm: 12px;
  --zdt-shadow: 0 10px 30px rgba(15,23,42,.06);
  --zdt-shadow-strong: 0 18px 40px rgba(23,49,93,.16);
}
html, body {
  color: var(--zdt-text);
}
body, input, select, textarea, button {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif !important;
}
header, .hero-banner, .page-header {
  box-shadow: var(--zdt-shadow-strong);
}
.section, .main-card, .result-card, .products-section, .table-container, .filters, .login-box, .stat-card, .summary-card {
  box-shadow: var(--zdt-shadow) !important;
  border: 1px solid var(--zdt-border);
}
.section, .main-card, .result-card, .products-section, .table-container, .filters, .login-box {
  border-radius: var(--zdt-radius-lg) !important;
}
.form-group input,
.form-group select,
.form-group textarea,
.filter-group input,
.filter-group select,
.audit-box select,
.audit-box textarea {
  border-radius: var(--zdt-radius-sm) !important;
  border: 1px solid #dbe4f0 !important;
  background: #f8fbff !important;
}
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus,
.filter-group input:focus,
.filter-group select:focus,
.audit-box select:focus,
.audit-box textarea:focus {
  background: #fff !important;
  border-color: var(--zdt-primary-2) !important;
  box-shadow: 0 0 0 4px rgba(42,82,152,.08);
  outline: none;
}
.btn, .btn-filter, .btn-save {
  border-radius: 14px !important;
  font-weight: 700 !important;
}
.btn-primary, .btn-submit, .btn-filter, .btn-save {
  background: linear-gradient(135deg, var(--zdt-primary) 0%, var(--zdt-primary-2) 100%) !important;
  color: #fff !important;
}
.back-link, .admin-link a {
  font-weight: 600;
}
.status-badge, .level-badge, .match-badge, .status-pill, .pill {
  border-radius: 999px !important;
}
.upload-area {
  background: #f8fbff !important;
  border-color: #cbdcf6 !important;
  border-radius: 18px !important;
}
.agreement, .suggestions, .audit-box, .summary-item, .info-item, .material-type {
  border-radius: 16px !important;
}
.product-card {
  border-radius: 18px !important;
  border: 1px solid var(--zdt-border);
}
@media (max-width: 640px) {
  body { padding: 14px !important; }
  .btn-group { flex-direction: column; }
}
