/* Custom theme overrides */
:root{
    --primary: #2563eb;
    --muted: #6b7280;
}
body{ background: #f8fafc; }
.navbar-brand{ font-size: 1.05rem; }
.card{ border-radius: 12px; }
.table thead th{ background: #f1f5f9; }
.btn-primary{ background-color: var(--primary); border-color: var(--primary); }
.btn-secondary{ background-color: var(--muted); border-color: var(--muted); }
.footer{ color: #64748b; }
/* Form inputs */
input.form-control, textarea.form-control, select.form-control{ border-radius: 8px; }
@media (min-width: 992px){
    main.container-lg{ max-width: 1100px; }
}
.draggable-row.dragging {
    opacity: 0.65;
}
.drag-over {
    outline: 2px dashed rgba(13, 110, 253, 0.65);
}
.drag-handle {
    cursor: grab;
}
/* Backwards compatibility for existing templates */
.button{ display: inline-block; padding: 10px 14px; border-radius: 8px; color: #fff; text-decoration: none; }
.button.primary, .button:not(.secondary):not(.danger){ background: var(--primary); }
.button.secondary{ background: #6b7280; }
.button.danger{ background: #dc2626; }
.button.icon{ padding: 6px; width: 34px; height: 34px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; }
.card .actions{ white-space: nowrap; }
.error{ color: #b91c1c; font-weight: 600; }
.small-text{ color: #475569; }
.field-group{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.footer{ margin-top: 24px; }
