/* Orion Modal — dark-theme drop-in replacement for sweetalert */

.ori-overlay {
    position: fixed; inset: 0;
    background: rgba(0,0,0,.65);
    z-index: 10000;
    display: flex; align-items: center; justify-content: center;
    animation: oriFadeIn .15s ease;
}
.ori-modal {
    background: #1a1a1a;
    border: 1px solid #2a2a2a;
    border-radius: 14px;
    padding: 2rem 2rem 1.5rem;
    width: 420px;
    max-width: calc(100vw - 2rem);
    box-shadow: 0 20px 60px rgba(0,0,0,.5);
    animation: oriSlideUp .2s ease;
    text-align: center;
}
.ori-icon {
    width: 48px; height: 48px;
    border-radius: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 1.3rem;
    margin-bottom: .75rem;
}
.ori-icon-success { background: rgba(76,175,80,.14); color: #66bb6a; }
.ori-icon-error   { background: rgba(239,83,80,.14); color: #ef5350; }
.ori-icon-warning { background: rgba(255,152,0,.14); color: #ffb74d; }
.ori-icon-info    { background: rgba(74,142,255,.14); color: #4a8eff; }
.ori-title {
    font-size: 1.1rem; font-weight: 600; color: #f0f0f0;
    margin: 0 0 .4rem;
}
.ori-text {
    font-size: .85rem; color: #999;
    margin: 0 0 1.15rem;
    line-height: 1.55;
}
.ori-input {
    display: block; width: 100%;
    padding: .65rem .85rem;
    font-size: .9rem; color: #f0f0f0;
    background: #111; border: 1px solid #333;
    border-radius: 8px; outline: none;
    font-family: inherit;
    margin-bottom: .35rem;
    transition: border-color .15s ease;
}
.ori-input:focus {
    border-color: #4a8eff;
    box-shadow: 0 0 0 3px rgba(74,142,255,.15);
}
.ori-input-error {
    font-size: .75rem; color: #ef5350;
    min-height: 1rem;
    margin-bottom: .5rem;
    text-align: left;
}
.ori-actions {
    display: flex; gap: .6rem;
    justify-content: center;
    margin-top: .5rem;
}
.ori-btn {
    padding: .55rem 1.25rem;
    font-size: .85rem; font-weight: 600;
    border-radius: 8px; border: none;
    cursor: pointer;
    transition: background .15s ease, opacity .15s ease;
    font-family: inherit;
}
.ori-btn-primary {
    background: #4a8eff; color: #fff;
}
.ori-btn-primary:hover { background: #3a7be0; }
.ori-btn-danger {
    background: #e74c3c; color: #fff;
}
.ori-btn-danger:hover { background: #c0392b; }
.ori-btn-cancel {
    background: transparent; color: #aaa;
    border: 1px solid #333;
}
.ori-btn-cancel:hover { border-color: #555; color: #fff; }

@keyframes oriFadeIn {
    from { opacity: 0; } to { opacity: 1; }
}
@keyframes oriSlideUp {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}
