/* Shared DGA implementation for standalone e-service forms. */
.dga-form-page { background: var(--background-neutral-50, #f9fafb); color: var(--text-default, #1f2a37); }
.dga-form-page .section { padding: var(--spacing-5xl, 48px) 0; }
.dga-form-page .dga-form-panel {
    max-width: 1100px;
    margin: 0 auto;
    padding: clamp(24px, 4vw, 48px);
    background: var(--background-white, #fff);
    border: 1px solid var(--border-neutral-primary, #d2d6db);
    border-radius: var(--radius-lg, 16px);
    box-shadow: 0 2px 4px -2px rgba(16, 24, 40, .06);
}
.dga-form-page .fancy-title { margin: 0 0 var(--spacing-4xl, 32px); padding-bottom: var(--spacing-lg, 12px); border-bottom: 1px solid var(--border-neutral-primary, #d2d6db); }
.dga-form-page .fancy-title h4 { margin: 0; color: var(--text-display, #0d121c); font-size: var(--text-xl-size, 20px); font-weight: 700; }
.dga-form-page .form-group { margin-bottom: var(--spacing-3xl, 24px); }
.dga-form-page .form-group.row { display: flex; flex-direction: column; gap: var(--spacing-sm, 4px); margin-right: 0; margin-left: 0; }
.dga-form-page .form-group.row > .col-sm-2,
.dga-form-page .form-group.row > .col-sm-10 { width: 100%; max-width: 100%; flex: 0 0 100%; padding-right: 0; padding-left: 0; }
.dga-form-page label,
.dga-form-page .col-form-label { display: block; margin: 0 0 var(--spacing-sm, 4px); padding: 0; color: var(--text-default, #1f2a37); font-size: var(--text-sm-size, 14px); font-weight: 600; line-height: var(--text-sm-line-height, 20px); }
.dga-form-page .form-control,
.dga-form-page .form-select { width: 100%; min-height: 48px; padding: 12px 16px; border: 1px solid var(--border-neutral-primary, #9da4ae); border-radius: var(--radius-sm, 4px); background-color: var(--background-white, #fff); }
.dga-form-page textarea.form-control { min-height: 160px; }
.dga-form-page .form-control:focus,
.dga-form-page .form-select:focus { border-color: var(--button-background-primary-default, #067647); box-shadow: 0 0 0 3px rgba(6, 118, 71, .16); }
.dga-form-page span[style*="color: Red"],
.dga-form-page .field-validation-error { color: var(--colors-red-700, #b42318) !important; }
.dga-form-page .button,
.dga-form-page .btn { min-height: 44px; padding: 10px 24px; border-radius: var(--radius-sm, 4px); }
.dga-form-page .button-red,
.dga-form-page .btn-secondary { background: var(--background-white, #fff) !important; border-color: var(--border-neutral-primary, #9da4ae) !important; color: var(--text-default, #1f2a37) !important; }
.dga-form-page .dga-file-upload { display: flex; flex-direction: column; align-items: flex-start; gap: var(--spacing-md, 8px); }
.dga-form-page .dga-file-upload__input { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; }
.dga-form-page .dga-file-upload__button { display: inline-flex; align-items: center; min-height: 40px; padding: 8px 16px; border: 1px solid var(--border-neutral-primary, #9da4ae); border-radius: var(--radius-sm, 4px); background: var(--background-white, #fff); color: var(--text-default, #1f2a37); cursor: pointer; font-size: var(--text-sm-size, 14px); font-weight: 600; }
.dga-form-page .dga-file-upload__button:hover { background: var(--background-neutral-100, #f3f4f6); border-color: var(--text-default, #384250); }
.dga-form-page .dga-file-upload__name { width: 100%; min-height: 40px; padding: 10px 12px; border: 1px solid var(--border-neutral-primary, #d2d6db); border-radius: var(--radius-sm, 4px); background: var(--background-neutral-50, #f9fafb); color: var(--text-default, #384250); font-size: var(--text-sm-size, 14px); }
.dga-form-page .dga-file-upload__name:empty { display: none; }
.dga-form-page .dga-file-upload__help { margin: 0; color: var(--text-default-disabled, #667085); font-size: var(--text-xs-size, 12px); line-height: var(--text-xs-line-height, 18px); }
.dga-form-page .dga-form-actions { display: flex; flex-wrap: wrap; gap: var(--spacing-md, 8px); margin-top: var(--spacing-xl, 16px); }
.dga-form-page .table { border: 1px solid var(--border-neutral-primary, #d2d6db); border-radius: var(--radius-sm, 4px); overflow: hidden; }
@media (max-width: 767.98px) {
    .dga-form-page .section { padding: var(--spacing-3xl, 24px) 0; }
    .dga-form-page .dga-form-panel { padding: 24px 16px; }
    .dga-form-page .form-group { margin-bottom: var(--spacing-xl, 16px); }
    .dga-form-page .button, .dga-form-page .btn { width: 100%; margin: 4px 0 !important; }
}
