﻿:root {
    --gob-primary: #861e34;
    --gob-primary-hover: #af1732;
    --gob-primary-active: #6b1529;
    --gob-danger: #af1732;
    --gob-danger-hover: #861e34;
    --gob-secondary-bg: #ffffff;
    --gob-secondary-text: #861e34;
    --gob-disabled-bg: #e0e0e0;
    --gob-disabled-text: #888888;
}

/* Base */
.gob-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    padding: .45rem .95rem;
    border-radius: .25rem;
    border: 1px solid transparent;
    font-size: .9rem;
    font-weight: 500;
    cursor: pointer;
    text-decoration: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

    .gob-btn:disabled,
    .gob-btn[disabled],
    .gob-btn.disabled {
        cursor: not-allowed;
        background-color: var(--gob-disabled-bg);
        color: var(--gob-disabled-text);
        border-color: var(--gob-disabled-bg);
        box-shadow: none;
    }

/* Tamaño pequeño */
.gob-btn-sm {
    padding: .25rem .6rem;
    font-size: .8rem; /* texto más pequeño */
    border-radius: .2rem;
}

/* Tamaño grande */
.gob-btn-lg {
    padding: .65rem 1.3rem;
    font-size: 1.05rem; /* texto más grande */
    border-radius: .3rem;
}

/* Primary */
.gob-btn-primary {
    background-color: var(--gob-primary);
    border-color: var(--gob-primary);
    color: #ffffff;
}

    .gob-btn-primary:hover:not(:disabled) {
        background-color: var(--gob-primary-hover);
        border-color: var(--gob-primary-hover);
    }

    .gob-btn-primary:active:not(:disabled) {
        background-color: var(--gob-primary-active);
        border-color: var(--gob-primary-active);
    }

/* Secondary (outline institucional) */
.gob-btn-secondary {
    background-color: var(--gob-secondary-bg);
    border-color: var(--gob-primary);
    color: var(--gob-secondary-text);
}

    .gob-btn-secondary:hover:not(:disabled) {
        background-color: rgba(134, 30, 52, 0.06);
        border-color: var(--gob-primary-hover);
        color: var(--gob-primary-hover);
    }

/* Danger */
.gob-btn-danger {
    background-color: var(--gob-danger);
    border-color: var(--gob-danger);
    color: #ffffff;
}

    .gob-btn-danger:hover:not(:disabled) {
        background-color: var(--gob-danger-hover);
        border-color: var(--gob-danger-hover);
    }

/* Tamaños */
.gob-btn-sm {
    padding: .25rem .6rem;
    font-size: .8rem;
}

.gob-btn-lg {
    padding: .6rem 1.2rem;
    font-size: 1rem;
}

/* Full width */
.gob-btn-block {
    display: flex;
    width: 100%;
}
