
    body.modal-open { overflow: hidden; }

    .order-errors {
        margin-bottom: 18px;
        padding: 14px 16px;
        border: 1px solid rgba(239, 68, 68, .28);
        border-radius: 13px;
        background: rgba(239, 68, 68, .12);
        color: #ffd3d3;
    }

    .order-errors p { margin: 4px 0; }

    .login-required-box {
        padding: 28px;
        border: 1px solid rgba(185,160,90, .28);
        border-radius: 18px;
        background: rgba(185,160,90, .07);
    }

    .login-required-box h3 {
        margin: 0 0 10px;
        color: #c5af73;
    }

    .login-required-box p {
        margin: 0 0 20px;
        color: #b8bec8;
        line-height: 1.7;
    }

    .auth-overlay {
        position: fixed;
        inset: 0;
        z-index: 9998;
        background: rgba(0, 0, 0, .78);
        backdrop-filter: blur(8px);
    }

    .auth-modal {
        position: fixed;
        top: 50%;
        left: 50%;
        z-index: 9999;
        width: min(92%, 460px);
        padding: 32px;
        transform: translate(-50%, -50%);
        border: 1px solid rgba(255,255,255,.09);
        border-radius: 22px;
        background: #151923;
        color: #fff;
        box-shadow: 0 30px 80px rgba(0,0,0,.55);
    }

    .auth-overlay[hidden],
    .auth-modal[hidden] { display: none; }

    .auth-modal-close {
        position: absolute;
        top: 10px;
        right: 15px;
        border: 0;
        background: transparent;
        color: #fff;
        font-size: 31px;
        cursor: pointer;
    }

    .auth-modal h2 {
        margin: 0 0 10px;
        color: #c5af73;
    }

    .auth-modal p {
        margin: 0 0 24px;
        color: #b8bec8;
        line-height: 1.7;
    }

    .auth-modal-actions {
        display: grid;
        gap: 12px;
    }
