/* Formulario público SIDCAR con apariencia Gov.co v5, alineada con user_web_front
   (src/styles.scss, src/variables.scss, toast.component.scss, carga-archivos.css). */

@font-face { font-family: 'Verdana-Regular'; src: url('../Fonts/Verdana/Verdana-Regular.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'Verdana-Bold'; src: url('../Fonts/Verdana/Verdana-Bold.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'NunitoSans'; src: url('../Fonts/Nunito/NunitoSans-Regular.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'NunitoSans'; src: url('../Fonts/Nunito/NunitoSans-Bold.ttf') format('truetype'); font-weight: 700; font-display: swap; }

:root {
    --gc-cobalt: #0943b5;
    --gc-cobalt-hover: #4672c8;
    --gc-cobalt-dark: #06308a;
    --gc-tropical-blue: #b5c7e9;
    --gc-solitude: #e5ecf8;
    --gc-white: #ffffff;
    --gc-text: #4c4c4c;
    --gc-border: #c8c8c8;
    --gc-error: #a80521;
    --gc-error-bg: #f2d9dd;
    --gc-success: #158361;
    --gc-success-bg: #d0e6df;
    --gc-warning: #b45309;
    --gc-warning-bg: #fef3dc;
    --gc-focus: #ffdd00;
    --gc-font: 'Verdana-Regular', Verdana, Geneva, sans-serif;
    --gc-font-bold: 'Verdana-Bold', Verdana, Geneva, sans-serif;
    /* Títulos: NunitoSans Bold 700 (regla de user_web_front, styles.scss) */
    --gc-font-title: 'NunitoSans', 'Nunito_Sans-Bold', sans-serif;
    --gc-title-color: #0c4266; /* $accBlueDark */
    --gc-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%230943B5' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");
}

body { margin: 0; background: var(--gc-white); color: var(--gc-text); font-family: var(--gc-font); font-size: 16px; line-height: 1.5; }

/* Foco visible (WCAG 2.4.7) */
a:focus-visible, button:focus-visible, select:focus-visible, input:focus-visible, [tabindex]:focus-visible {
    outline: 3px solid var(--gc-cobalt); outline-offset: 2px; box-shadow: 0 0 0 5px var(--gc-focus);
}
.gc-skip-link { position: absolute; left: -9999px; top: 0; background: var(--gc-white); color: var(--gc-cobalt); padding: 8px 12px; z-index: 10; }
.gc-skip-link:focus { left: 8px; top: 8px; }
.gc-oculto { display: none !important; }

.gc-contenido { padding: 1.5rem 1rem; max-width: 960px; margin: 0 auto; }
.gc-contenido, .gc-contenido td, .gc-contenido span, .gc-contenido label, .gc-contenido input, .gc-contenido select, .gc-contenido textarea,
.gc-contenido .eventDetails, .gc-contenido .BlueTable { font-family: var(--gc-font); }
/* Jerarquía tipográfica UIKit (user_web_front, styles.scss): títulos NunitoSans 700, alineados al inicio */
.gc-contenido h1, .gc-contenido h2, .gc-contenido h3, .gc-contenido h4, .gc-contenido h5, .gc-contenido h6,
.gc-contenido .text_header_green_22px, .gc-contenido .text_header_black_18px {
    font-family: var(--gc-font-title); font-weight: 700; color: var(--gc-title-color); letter-spacing: 0; text-align: start; margin: 0 0 .5em;
}
.gc-contenido h1, .gc-contenido .text_header_green_22px { font-size: 42px; line-height: 50px; }
.gc-contenido h2 { font-size: 34px; line-height: 42px; }
.gc-contenido h3 { font-size: 26px; line-height: 34px; }
.gc-contenido h4 { font-size: 22px; line-height: 32px; }
.gc-contenido h5, .gc-contenido .text_header_black_18px { font-size: 20px; line-height: 26px; }
.gc-contenido h6 { font-size: 16px; line-height: 22px; }
/* Cuerpo: Verdana, sin justificar, línea máxima 75 caracteres */
.gc-contenido .eventDetails { color: var(--gc-text); font-size: 0.9375rem; line-height: 1.5; margin: 0; max-width: 75ch; }
.gc-contenido [style*="text-align: justify"], .gc-contenido [style*="text-align:justify"] { text-align: start !important; }
/* Captcha ASPxCaptcha1 (igual que RadicarPQR) */
.gc-contenido [id$="ASPxCaptcha1"] { max-width: 100%; }
.gc-contenido [id$="ASPxCaptcha1"] td { font-family: var(--gc-font); font-size: .9375rem; }
.gc-contenido [id$="ASPxCaptcha1"] input { min-height: 2.75rem; }
.gc-contenido a { color: var(--gc-cobalt); text-decoration: underline; }
.gc-contenido a:hover { color: var(--gc-cobalt-hover); }

/* Contenedor del formulario */
.gc-contenido [id$="contentForm"] { border: 0 !important; background: transparent !important; box-shadow: none !important; max-width: 100%; }
.gc-contenido .BlueTable { background: var(--gc-white); border: 1px solid var(--gc-tropical-blue); border-radius: 8px; font-size: 0.9375rem; padding: 1rem; border-collapse: separate; }
.gc-contenido .BlueTable td { padding: 6px 4px; }
.gc-contenido .BlueTable td.eventDetails b, .gc-contenido label.eventDetails { font-family: var(--gc-font-bold); font-weight: 700; color: var(--gc-text); }

/* Selectores (réplica de .form-select de user_web_front): borde gris, radio 5px, caret cobalt */
.gc-select, .gc-contenido select {
    font-family: var(--gc-font); font-size: 0.9375rem; color: var(--gc-text); background-color: var(--gc-white);
    border: 1px solid var(--gc-border); border-radius: 0.3125rem; min-height: 2.75rem; padding: 0.625rem 2.25rem 0.625rem 0.75rem;
    appearance: none; -webkit-appearance: none; background-image: var(--gc-caret); background-repeat: no-repeat;
    background-position: right 0.75rem center; background-size: 16px 12px; width: 100%; max-width: 100%; box-sizing: border-box; cursor: pointer;
}
.gc-select:hover, .gc-contenido select:hover { border-color: var(--gc-cobalt); }
.gc-select:focus, .gc-contenido select:focus { border-color: var(--gc-cobalt); }
.gc-campo-select { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.gc-campo-select label { margin: 0; }
.gc-campo-select .gc-select { width: auto; min-width: 16rem; }

/* Combos y cajas de texto DevExpress con el mismo aspecto */
.gc-contenido table.dxeTextBoxSys, .gc-contenido table.dxeButtonEditSys, .gc-contenido table.dxeButtonEdit {
    border: 1px solid var(--gc-border) !important; border-radius: 0.3125rem; background: var(--gc-white) !important; min-height: 2.75rem; overflow: hidden;
}
.gc-contenido table.dxeButtonEditSys:hover, .gc-contenido table.dxeTextBoxSys:hover { border-color: var(--gc-cobalt) !important; }
.gc-contenido table.dxeFocused { border-color: var(--gc-cobalt) !important; box-shadow: 0 0 0 2px var(--gc-tropical-blue); }
.gc-contenido .dxeEditArea, .gc-contenido .dxeEditAreaSys, .gc-contenido input.dxeEditAreaSys {
    font-family: var(--gc-font) !important; font-size: 0.9375rem !important; color: var(--gc-text) !important; padding-top: 6px; padding-bottom: 6px;
}
.gc-contenido .dxeNullText, .gc-contenido .dxeNullTextEditArea { color: #6b6b6b !important; }
.gc-contenido td.dxeButtonEditButton { background: var(--gc-white) var(--gc-caret) no-repeat center / 14px 10px !important; border: 0 !important; width: 2rem; }
.gc-contenido td.dxeButtonEditButton img { opacity: 0; }
.gc-contenido .dxeErrorCell, .gc-contenido .dxeErrorFrame { color: var(--gc-error); font-family: var(--gc-font); }

/* Radios y casillas: objetivo táctil amplio y color cobalt */
.gc-contenido input[type="radio"], .gc-contenido input[type="checkbox"], .gc-contenido .dxICheckBox_Glass, .gc-contenido .dxWeb_edtCheckBoxChecked_Glass { accent-color: var(--gc-cobalt); }
.gc-contenido [id$="optTipoPersona"] label { margin: 0 .75rem 0 .25rem; cursor: pointer; }
.gc-contenido [id$="optTipoPersona"] input { width: 1.125rem; height: 1.125rem; vertical-align: middle; }

/* Botón primario Gov.co */
.gc-contenido .button_green, .gc-contenido [id$="btnGuardar"] {
    background: var(--gc-cobalt) !important; background-image: none !important; color: var(--gc-white) !important;
    border: 2px solid var(--gc-cobalt) !important; border-radius: 1.5625rem; font-family: var(--gc-font);
    font-size: 1rem; padding: 0.6875rem 1.75rem; min-height: 2.75rem; cursor: pointer;
}
.gc-contenido .button_green:hover, .gc-contenido [id$="btnGuardar"]:hover { background: var(--gc-cobalt-hover) !important; border-color: var(--gc-cobalt-hover) !important; }
.gc-contenido .button_green:active { background: var(--gc-cobalt-dark) !important; }

/* Alertas: réplica del toast Gov.co (borde 1px del color, cabecera tintada, sombra inferior, radio 5px) */
.gc-alerta, .gc-contenido table.actionStateSuccess, .gc-contenido table.actionStateFailure {
    --gc-a-main: var(--gc-cobalt); --gc-a-bg: var(--gc-solitude);
    display: block; width: 100%; max-width: 100%; box-sizing: border-box; height: auto !important; margin: 0 0 1rem !important;
    padding: .75rem 1rem .75rem 3rem !important; position: relative; background: var(--gc-a-bg) !important;
    border: 1px solid var(--gc-a-main) !important; border-radius: 5px; box-shadow: 0 4px 0 rgba(9, 67, 181, .14);
    color: #1a1a1a !important; font-family: var(--gc-font); font-size: 0.9375rem; line-height: 1.5; text-align: left;
}
.gc-contenido table.actionStateSuccess, .gc-alerta--success { --gc-a-main: var(--gc-success); --gc-a-bg: var(--gc-success-bg); }
.gc-contenido table.actionStateFailure, .gc-alerta--error { --gc-a-main: var(--gc-error); --gc-a-bg: var(--gc-error-bg); }
.gc-alerta--warning { --gc-a-main: var(--gc-warning); --gc-a-bg: var(--gc-warning-bg); }
.gc-alerta::before, .gc-contenido table.actionStateSuccess::before, .gc-contenido table.actionStateFailure::before {
    content: "i"; position: absolute; left: .875rem; top: .75rem; width: 1.5rem; height: 1.5rem; border: 2px solid var(--gc-a-main); border-radius: 50%;
    color: var(--gc-a-main); font-family: var(--gc-font-bold); font-weight: 700; font-size: .875rem; line-height: 1.25rem; text-align: center;
}
.gc-contenido table.actionStateSuccess::before { content: "\2713"; }
.gc-contenido table.actionStateFailure::before, .gc-alerta--error::before { content: "!"; }
.gc-contenido table.actionStateSuccess tbody, .gc-contenido table.actionStateFailure tbody,
.gc-contenido table.actionStateSuccess tr, .gc-contenido table.actionStateFailure tr,
.gc-contenido table.actionStateSuccess td, .gc-contenido table.actionStateFailure td { display: block; padding: 0; }
.gc-contenido table.actionStateSuccess img, .gc-contenido table.actionStateFailure img { display: none; }
.gc-alerta[hidden] { display: none; }
.gc-contenido .gc-msg-archivo { display: block; color: var(--gc-error); font-family: var(--gc-font); font-size: 0.9375rem; }

/* Carga de archivos (basada en .carga-archivo-govco) */
.gc-carga { border: 1px solid var(--gc-tropical-blue); border-radius: 8px; padding: 1rem; margin: 0; min-width: 0; background: var(--gc-white); }
.gc-carga legend { font-family: var(--gc-font-bold); font-size: 1rem; color: var(--gc-cobalt); padding: 0 .5rem; }
.gc-carga-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.25rem; align-items: start; }
.gc-carga-control { min-width: 0; }
.gc-carga-control [id$="UploadFiles"] { width: 100% !important; max-width: 100%; }
.gc-carga-control .dxucControl, .gc-carga-control .dxucEditArea { font-family: var(--gc-font); }
.gc-carga-control input[type="text"], .gc-carga-control .dxucTextBox { border: 2px solid var(--gc-border); border-radius: 0.3125rem 0 0 0.3125rem; min-height: 2.625rem; box-sizing: border-box; }
.gc-carga-control .dxb, .gc-carga-control .dxucBrowseButton, .gc-carga-control .dxbButton {
    background: var(--gc-cobalt) !important; color: var(--gc-white) !important; border: 0 !important; border-radius: 0 0.3125rem 0.3125rem 0;
    min-height: 2.625rem; padding: 0 .875rem; font-family: var(--gc-font) !important; font-size: .9375rem !important; cursor: pointer;
}
.gc-carga-control .dxb:hover, .gc-carga-control .dxucBrowseButton:hover { background: var(--gc-cobalt-hover) !important; }
.gc-carga-control a, .gc-carga-control .dxucButton { display: inline-block; min-height: 2.75rem; line-height: 2.75rem; margin-right: 1rem; color: var(--gc-cobalt); font-family: var(--gc-font); font-size: .9375rem; text-decoration: underline; }
.gc-carga-ayuda { background: var(--gc-solitude); border-radius: 5px; padding: .75rem 1rem; }
.gc-carga-ayuda h3 { margin: 0 0 .5rem; font-family: var(--gc-font-bold); font-size: 1rem; color: var(--gc-text); }
.gc-carga-ayuda ul { margin: 0; padding-left: 1.25rem; list-style: disc; }
.gc-carga-ayuda li { margin-bottom: .4rem; font-size: .9375rem; color: var(--gc-text); }
.gc-carga-ayuda li::marker { color: var(--gc-error); }
.gc-carga-ayuda .gc-formatos { color: var(--gc-cobalt-dark); word-break: break-word; }

/* Consulta pública: filtro, resultados y grilla */
/* Filtro en filas: etiqueta arriba; campo y botón en la misma línea; casilla de condiciones abajo */
.gc-contenido .gc-etiqueta { font-family: var(--gc-font-bold); font-weight: 700; font-size: .9375rem; color: var(--gc-text); }
.gc-contenido .segoe_semibold { font-family: var(--gc-font-bold); font-size: .9375rem; font-weight: 700; color: var(--gc-text); vertical-align: top; }
.gc-contenido .text_header_black_13px, .gc-contenido .text_header_black_13px span { font-family: var(--gc-font); font-size: .9375rem; color: var(--gc-text); }
.gc-contenido .text_header_black_18px { font-family: var(--gc-font-bold); font-size: 1.125rem; color: var(--gc-cobalt); }
.gc-contenido .gc-estado, .gc-contenido .gc-estado span { font-family: var(--gc-font-bold); font-weight: 700; color: var(--gc-warning); }
.gc-tabla-scroll { overflow-x: auto; max-width: 100%; }
.gc-contenido .dxgvControl, .gc-contenido .dxgvControl td, .gc-contenido .dxgvHeader, .gc-contenido .dxgvHeader td { font-family: var(--gc-font) !important; font-size: .9375rem !important; color: var(--gc-text); }
.gc-contenido td.dxgvHeader, .gc-contenido .dxgvHeader { background: var(--gc-cobalt) !important; background-image: none !important; color: var(--gc-white) !important; border-color: var(--gc-cobalt-dark) !important; }
.gc-contenido .dxgvHeader span, .gc-contenido .dxgvHeader a { color: var(--gc-white) !important; }
.gc-contenido tr.dxgvDataRow_Aqua:hover td, .gc-contenido tr.dxgvDataRow:hover td { background: var(--gc-solitude); }
.gc-contenido .dxgvControl { border-radius: 5px; }
.gc-contenido td.dxgv a:focus-visible { display: inline-block; min-width: 2.75rem; min-height: 2.75rem; }

/* Consulta pública: formulario en rejilla (sin cajas anidadas) */
.gc-contenido .gc-consulta { margin: .5rem 0 1.75rem; }
.gc-contenido .gc-intro { margin: 0 0 1.5rem; max-width: 75ch; font-size: .9375rem; line-height: 1.5; color: var(--gc-text); }
.gc-form-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); gap: 1.5rem 2.5rem; align-items: start; }
.gc-campo { display: flex; flex-direction: column; gap: .5rem; min-width: 0; }
.gc-campo .gc-etiqueta { display: block; }
.gc-nota { font-size: .8125rem; line-height: 1.4; color: #595959; }
.gc-captcha table { max-width: 100%; }
.gc-captcha [id$="ASPxCaptcha1"] { width: 100% !important; }
.gc-captcha td { vertical-align: middle; }
.gc-captcha input[type="text"] { min-height: 2.75rem; box-sizing: border-box; }
.gc-captcha a { font-size: .875rem; }
.gc-condiciones { grid-column: 1 / -1; padding: 1rem 1.25rem; background: var(--gc-solitude); border: 1px solid var(--gc-tropical-blue); border-radius: 8px; }
.gc-condiciones table { width: auto; border-collapse: collapse; }
.gc-condiciones td, .gc-condiciones span, .gc-condiciones label { font-family: var(--gc-font); font-size: .8125rem; line-height: 1.5; color: var(--gc-text); text-align: start; }
.gc-condiciones td:first-child { vertical-align: top; padding: .125rem .5rem 0 0; }
.gc-acciones { grid-column: 1 / -1; display: flex; justify-content: flex-end; padding-top: .25rem; border-top: 1px solid var(--gc-tropical-blue); }
.gc-acciones .button_green { margin-top: 1rem; min-width: 12rem; }
/* Resultados de la consulta */
.gc-contenido table[id$="tbResultados"] { border-collapse: collapse; margin-top: .5rem; }
.gc-contenido table[id$="tbResultados"] > tbody > tr > td { padding: .75rem 1rem; border-bottom: 1px solid var(--gc-tropical-blue); }
.gc-contenido table[id$="tbResultados"] td.segoe_semibold { width: 11rem; }

@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }

@media (max-width: 900px) {
    .gc-contenido { padding: 1rem .5rem; }
    .gc-contenido .BlueTable { padding: .5rem; }
    .gc-contenido h1, .gc-contenido .text_header_green_22px { font-size: 34px; line-height: 42px; }
    .gc-contenido h2 { font-size: 26px; line-height: 34px; }
    .gc-contenido h3 { font-size: 22px; line-height: 32px; }
    .gc-contenido h4 { font-size: 20px; line-height: 26px; }
    .gc-contenido h5, .gc-contenido .text_header_black_18px { font-size: 18px; line-height: 24px; }
    .gc-contenido [id$="ASPxCaptcha1"], .gc-contenido [id$="ASPxCaptcha1"] table { width: 100% !important; }
    .gc-contenido [id$="ASPxCaptcha1"] img { max-width: 100%; height: auto; }
    .gc-carga-grid { grid-template-columns: 1fr; }
    .gc-campo-select .gc-select { width: 100%; min-width: 0; }
    .gc-form-grid { grid-template-columns: 1fr; gap: 1.25rem; }
    .gc-acciones { justify-content: stretch; }
    .gc-acciones .button_green { width: 100%; }
    .gc-contenido [id$="btnGuardar"], .gc-contenido [id$="btnBuscar"] { width: 100%; }
    .gc-contenido [id$="contentForm"], .gc-contenido [id$="contentForm"] > table { width: 100% !important; }
    .gc-contenido table[id$="tbResultados"], .gc-contenido table[id$="tbResultados"] > tbody, .gc-contenido table[id$="tbResultados"] > tbody > tr, .gc-contenido table[id$="tbResultados"] > tbody > tr > td { display: block; width: 100% !important; box-sizing: border-box; }
    .gc-contenido [id$="txtNumeroRadicado"] { width: 100% !important; }
}
