/* Tarifas UI v1.0.1 */
:root {
    --tarifa-bg: #fff;
    --tarifa-card-shadow: 0 2px 8px rgba(0,0,0,0.07);
    --tarifa-list-bg: #fafbfc;
    --tarifa-list-shadow: 0 1px 4px rgba(0,0,0,0.04);
    --tarifa-border-radius: 8px;
    --tarifa-list-radius: 6px;
    --tarifa-primary: #219653;
    --tarifa-secondary: #333;
    --tarifa-icon-primary: #219653;
    --tarifa-icon-secondary: #333;
    --tarifa-info-bg: #fff;
}

.tarifa-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 32px;
    margin-top: 32px;
}

.tarifa-card {
    min-width: 340px;
    max-width: 400px;
    width: 100%;
    background: var(--tarifa-bg);
    border-radius: var(--tarifa-border-radius);
    box-shadow: var(--tarifa-card-shadow);
    padding: 24px 24px 16px 24px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.tarifa-list {
    background: var(--tarifa-list-bg);
    border-radius: var(--tarifa-list-radius);
    box-shadow: var(--tarifa-list-shadow);
    padding: 16px 18px;
    margin-top: 12px;
    max-width: 370px;
    width: 100%;
}

.tarifa-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}

.tarifa-row:last-child {
    margin-bottom: 0;
}

.tarifa-nombre {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
    color: var(--tarifa-secondary);
}

.tarifa-valor {
    font-weight: bold;
    color: var(--tarifa-primary);
    font-size: 1.1rem;
}

@media (max-width: 900px) {
    .tarifa-grid {
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }
    .tarifa-card, .tarifa-info-card {
        max-width: 98vw;
        min-width: 0;
    }
}

.tarifa-info-card {
    min-width: 340px;
    max-width: 600px;
    width: 100%;
    background: var(--tarifa-info-bg);
    border-radius: var(--tarifa-border-radius);
    box-shadow: var(--tarifa-card-shadow);
    padding: 24px 24px 16px 24px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}
