/* Estilos Minimalistas - Tema Claro en Tonos Azules Oscuros (Sin gradientes, sin sombras) */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

:root {
    --font-main: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --color-bg: #f8fafc;
    --color-card: #ffffff;
    --color-border: #e2e8f0;
    --color-border-hover: #cbd5e1;
    --color-text-main: #0f172a;
    --color-text-muted: #64748b;
    --color-blue-primary: #1e40af;
    --color-blue-hover: #1e3a8a;
    --color-blue-light: #eff6ff;
    --color-blue-border: #bfdbfe;
}

*, ::before, ::after {
    box-sizing: border-box;
}

body {
    font-family: var(--font-main);
    background-color: var(--color-bg);
    color: var(--color-text-main);
    min-height: 100vh;
    -webkit-text-size-adjust: 100%;
}

/* Tarjetas planas minimalistas */
.flat-card {
    background-color: #ffffff;
    border: 1px solid var(--color-border);
    border-radius: 12px;
}

.flat-card-hover {
    transition: border-color 0.15s ease;
}

.flat-card-hover:hover {
    border-color: var(--color-border-hover);
}

/* Formulario e Inputs uniformes en móvil y escritorio */
input, select, textarea {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    background-color: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    color: #0f172a !important;
    border-radius: 8px !important;
    font-size: 16px !important; /* Evita auto-zoom en móviles */
    transition: border-color 0.15s ease !important;
}

/* Corrección de dimensiones y alineación de input date en móvil */
input[type="date"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    min-height: 38px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

input[type="date"]::-webkit-date-and-time-value {
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (min-width: 640px) {
    input, select, textarea {
        font-size: 0.875rem !important; /* 14px en escritorio */
    }
}

input:focus, select:focus, textarea:focus {
    border-color: #1e40af !important;
    outline: none !important;
}

select option {
    background-color: #ffffff;
    color: #0f172a;
}

/* Scrollbar sutil */
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

::-webkit-scrollbar-track {
    background: #f1f5f9;
}

::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 9999px;
}

::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* Estado deshabilitado para evitar clics dobles y acciones duplicadas */
button:disabled,
input:disabled,
select:disabled,
textarea:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
}

