/* Red & white branded background pattern */
.blueprint-bg {
    background-image:
        linear-gradient(135deg, rgba(220, 38, 38, 0.04) 25%, transparent 25%),
        linear-gradient(225deg, rgba(220, 38, 38, 0.04) 25%, transparent 25%),
        linear-gradient(315deg, rgba(220, 38, 38, 0.04) 25%, transparent 25%),
        linear-gradient(45deg, rgba(220, 38, 38, 0.04) 25%, transparent 25%);
    background-size: 40px 40px;
    background-position: 0 0, 0 20px, 20px -20px, -20px 0px;
}

/* Toast slide-in animation */
@keyframes slide-in-right {
    from {
        opacity: 0;
        transform: translateX(100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.animate-slide-in {
    animation: slide-in-right 0.3s ease-out;
}

/* Safe area padding for iOS notch devices */
.pb-safe {
    padding-bottom: env(safe-area-inset-bottom, 0px);
}

/* Offline disable — gray out and block interaction */
body.is-offline .offline-disable {
    opacity: 0.4;
    pointer-events: none;
    user-select: none;
}
