/* ============================================================
   Sistema de Suscripciones - Public Light Theme
   ============================================================ */

body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #212529;
    background-color: #f8f9fa;
}

/* Plan cards */
.plan-card {
    cursor: pointer;
    transition: transform 0.15s, box-shadow 0.15s;
}

.plan-card:hover .plan-card-inner {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    border-color: #0d6efd !important;
}

.plan-card-inner {
    border-color: #dee2e6 !important;
    border-radius: 12px;
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
}

.plan-card input:checked + .plan-card-inner {
    border-color: #0d6efd !important;
    background-color: #f0f6ff;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.15);
}

.plan-card input:checked + .plan-card-inner .plan-check {
    display: block !important;
}

/* Form */
.form-control {
    border-radius: 8px;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.form-control:focus {
    border-color: #0d6efd;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.15);
}

.form-control.is-valid {
    border-color: #198754;
}

.form-control.is-invalid {
    border-color: #dc3545;
}

/* Submit button */
#submitBtn {
    border-radius: 10px;
    font-size: 1.05rem;
    transition: all 0.2s;
}

#submitBtn:not(:disabled):hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(13, 110, 253, 0.35);
}

/* Card */
.card {
    border-radius: 12px;
}

/* Input group */
.input-group-text {
    border-radius: 8px 0 0 8px;
}

/* Alert */
.alert {
    border-radius: 10px;
}

/* Success page */
@keyframes checkIn {
    0%   { transform: scale(0.5); opacity: 0; }
    70%  { transform: scale(1.1); }
    100% { transform: scale(1); opacity: 1; }
}

.success-icon-circle {
    animation: checkIn 0.6s ease-out;
}
