/* Centered app dialog (replaces native alert / confirm).
 * Must stack above every other ROS popup (variant 999999, payment 100100, due 100000). */
#ros_app_dialog.ros-app-dialog.ros-modal,
.ros-app-dialog.ros-modal{
    position:fixed;
    inset:0;
    display:none;
    align-items:center;
    justify-content:center;
    padding:15px;
    background:rgba(0,0,0,.45);
    z-index:2000000 !important;
    box-sizing:border-box;
}

.ros-app-dialog .ros-app-dialog__box,
.ros-app-dialog .ros-modal-box{
    width:fit-content;
    max-width:min(340px, calc(100vw - 30px));
    background:#fff;
    border-radius:14px;
    padding:14px 16px 12px;
    box-shadow:0 20px 60px rgba(0,0,0,.25);
    box-sizing:border-box;
}

.ros-app-dialog__msg{
    margin:0 0 12px;
    color:#111827;
    font-size:15px;
    font-weight:600;
    line-height:1.4;
    text-align:center;
    white-space:pre-wrap;
    word-break:break-word;
}

.ros-app-dialog__actions.ros-modal-actions,
.ros-app-dialog .ros-modal-actions{
    display:flex;
    gap:8px;
    margin-top:0;
    justify-content:center;
    width:100%;
}

.ros-app-dialog__actions button,
.ros-app-dialog .ros-modal-actions button{
    flex:0 1 auto;
    min-width:88px;
    height:40px;
    border-radius:10px;
    font-size:14px;
    font-weight:700;
    cursor:pointer;
    padding:0 18px;
}

.ros-app-dialog__cancel{
    background:#f3f4f6 !important;
    color:#111827 !important;
    border:1px solid #d1d5db !important;
}

.ros-app-dialog__ok{
    background:#198754 !important;
    color:#fff !important;
    border:none !important;
}

.ros-app-dialog__cancel[hidden]{
    display:none !important;
}

.ros-app-dialog__cancel:hover,
.ros-app-dialog__cancel:focus{
    background:#e5e7eb !important;
    outline:none;
}

.ros-app-dialog__ok:hover,
.ros-app-dialog__ok:focus{
    background:#157347 !important;
    outline:none;
}
