/* Viajario 0.12.2 · avisos móviles y activador en portada */
.home-alerts-card {
    margin: 22px 0 36px;
    padding: 22px 24px;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    overflow: hidden;
    border-color: #dfe5f2;
    box-shadow: 0 12px 35px rgba(6, 24, 87, .07);
}
.home-alerts-card.is-enabled { background: linear-gradient(115deg, #f2fbf7 0%, #fff 68%); border-color: #bfe5d3; }
.home-alerts-card.is-disabled { background: linear-gradient(115deg, #f7f8fc 0%, #fff 68%); }
.home-alerts-icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    color: #fff;
    background: #8e96aa;
    border-radius: 17px;
    transition: background-color .2s ease, transform .2s ease;
}
.is-enabled .home-alerts-icon { background: #eb6255; transform: rotate(-4deg); }
.home-alerts-icon svg, .push-device-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.home-alerts-copy { min-width: 0; }
.home-alerts-copy h2 { margin: 3px 0 5px; color: #061857; font-size: 22px; letter-spacing: -.03em; }
.home-alerts-copy p { margin: 0; color: #626b81; font-size: 13px; line-height: 1.5; }
.home-alerts-copy small { display: block; margin-top: 6px; color: #969cad; font-size: 10px; font-weight: 700; }
.home-alerts-actions { display: grid; justify-items: center; gap: 8px; }
.home-alerts-actions > a { color: #59647c; font-size: 11px; font-weight: 800; text-decoration: none; }
.home-alerts-actions > a:hover { color: #eb6255; }
.notification-switch {
    min-width: 134px;
    padding: 8px 12px 8px 8px;
    display: flex;
    align-items: center;
    gap: 9px;
    color: #60697d;
    background: #eef0f5;
    border: 1px solid #dfe3ec;
    border-radius: 999px;
    cursor: pointer;
    font: inherit;
    font-size: 11px;
    font-weight: 850;
    transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.notification-switch > span { position: relative; width: 38px; height: 22px; flex: 0 0 auto; background: #c7ccd7; border-radius: 999px; transition: background-color .2s ease; }
.notification-switch > span::after { content: ''; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; background: #fff; border-radius: 50%; box-shadow: 0 2px 6px rgba(6, 24, 87, .2); transition: transform .2s ease; }
.notification-switch.is-on { color: #12603e; background: #e9f7f0; border-color: #b5dec9; }
.notification-switch.is-on > span { background: #28a66f; }
.notification-switch.is-on > span::after { transform: translateX(16px); }
.notification-switch:focus-visible { outline: 3px solid rgba(235, 98, 85, .28); outline-offset: 3px; }
.notification-switch:disabled { opacity: .6; cursor: wait; }
.reminder-lead-grid { margin: 14px 0 4px; padding: 16px; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; background: #f7f8fb; border: 1px solid #ebedf3; border-radius: 14px; }
.reminder-lead-grid .field { margin: 0; }
.push-device-icon svg { width: 27px; height: 27px; }

@media (max-width: 720px) {
    .home-alerts-card { grid-template-columns: 46px minmax(0, 1fr); padding: 19px; gap: 14px; border-radius: 18px; }
    .home-alerts-icon { width: 46px; height: 46px; border-radius: 14px; }
    .home-alerts-copy h2 { font-size: 19px; }
    .home-alerts-actions { grid-column: 1 / -1; width: 100%; margin-top: 4px; }
    .notification-switch { width: 100%; justify-content: center; min-height: 46px; }
    .reminder-lead-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    .home-alerts-icon, .notification-switch, .notification-switch > span, .notification-switch > span::after { transition: none; }
}
