/*
 * ═══════════════════════════════════════════════════════════════
 *  MOE Account Pages — Shared Stylesheet
 *  Used by: login.xhtml, register.xhtml, reset.xhtml
 *  Path: /resources/assets/css/account-pages.css
 * ═══════════════════════════════════════════════════════════════
 */

@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;600;700;800;900&display=swap');

/* ═══════════════════════════════════════
   1. RESET — override PrimeFaces layout
   ═══════════════════════════════════════ */
.login-body,.login-body *,.login-body *::before,.login-body *::after{box-sizing:border-box!important}
.login-body .login-panel .ui-g,
.login-body .login-panel .ui-g-12,
.login-body .login-panel .ui-g-6,
.login-body .login-panel .ui-md-12,
.login-body .login-panel .ui-md-6,
.login-body .login-panel .ui-lg-12,
.login-body .login-panel .ui-fluid,
.login-body .login-panel form,
.login-body .login-panel .login-panel-content{
    width:100%!important;max-width:100%!important;float:none!important;
    display:block!important;margin:0!important;padding:0!important
}

/* ═══════════════════════════════════════
   2. BODY + PANEL — centered card layout
   ═══════════════════════════════════════ */
.login-body{
    min-height:100vh!important;display:flex!important;
    align-items:center!important;justify-content:center!important;
    padding:8px!important;margin:0!important
}
.login-body .login-panel{
    height:auto!important;width:100%!important;max-width:440px!important;
    background:#fff!important;border-radius:14px!important;
    box-shadow:0 6px 28px rgba(0,0,0,.3)!important;padding:0!important;
    position:relative!important;top:auto!important;left:auto!important;
    right:auto!important;transform:none!important;margin:0 auto!important;
    overflow:visible!important
}

/* ═══════════════════════════════════════
   3. HEADER — navy gradient + gold stripe
   ═══════════════════════════════════════ */
.login-body .login-panel .login-panel-header{
    background:linear-gradient(135deg,#14254a,#1e3a7a,#14254a)!important;
    text-align:center!important;padding:16px 12px 12px!important;
    position:relative!important;height:auto!important;min-height:auto!important;
    border-radius:14px 14px 0 0
}
.login-body .login-panel .login-panel-header::after{
    content:'';position:absolute;bottom:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,#EBB436,#f5d06a,#EBB436)
}
.login-body .login-panel .login-panel-header img{
    max-height:50px!important;height:auto!important;width:auto!important
}

/* Hide PrimeFaces locale form */
.login-body .login-panel>form:has(.ui-selectonemenu){
    position:absolute!important;width:0!important;height:0!important;
    overflow:hidden!important;opacity:0!important;pointer-events:none!important
}
.login-body .login-panel .login-panel-content{
    font-family:'Cairo',sans-serif!important;direction:rtl
}
.login-panel-content .ui-messages{display:none!important}

/* ═══════════════════════════════════════
   4. LANG SWITCHER
   ═══════════════════════════════════════ */
.zl{display:flex;justify-content:center;padding:8px 14px 4px;gap:8px}
.zl a{
    flex:1;max-width:130px;display:flex;align-items:center;justify-content:center;
    gap:4px;padding:8px 0;font-size:1rem;font-weight:800;border:2px solid #4169E1;
    border-radius:18px;color:#4169E1;text-decoration:none!important;cursor:pointer;
    font-family:'Cairo',sans-serif;background:#fff;transition:all .2s
}
.zl a i{color:#4169E1;font-size:.85rem}
.zl a.on{background:#4169E1;color:#fff}
.zl a.on i{color:#fff}
.zl a:not(.on):hover{background:#eef2ff}

/* ═══════════════════════════════════════
   5. PAGE TITLE
   ═══════════════════════════════════════ */
.reg-title{text-align:center;padding:6px 14px 0}
.reg-title h2{font-size:1.5rem;font-weight:900;color:#14254a;margin:0;font-family:'Cairo',sans-serif}
.reg-title p{font-size:1.05rem;font-weight:600;color:#94a3b8;margin:4px 0 0}

/* ═══════════════════════════════════════
   6. METHOD CARDS SECTION
   ═══════════════════════════════════════ */
.za{padding:4px 14px 0;text-align:center}
.za-l{font-size:1.1rem;font-weight:800;color:#94a3b8;margin:0 0 4px}
.zc{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:4px}
.zc3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-bottom:4px}
.zcc{
    display:flex;flex-direction:column;align-items:center;padding:4px 4px 3px;
    border:2.5px solid #dde2f0;background:#fafbff;cursor:pointer;
    transition:border-color .2s,background .2s,box-shadow .2s;
    text-decoration:none!important;color:#374151;font-family:'Cairo',sans-serif;
    border-radius:12px
}
.zci{width:92%;aspect-ratio:1.3;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:1px}
.zci img{max-width:88%;max-height:88%;object-fit:contain;border-radius:8px}
.zci i{font-size:2.8rem}
.zct{font-size:1.25rem;font-weight:900;text-align:center;color:#374151;transition:color .2s;padding:1px 0 3px;line-height:1.2}
.zcc.on{border-color:#4169E1;background:#edf0ff;box-shadow:0 3px 10px rgba(65,105,225,.18)}
.zcc.on .zct{color:#4169E1}
.zcc:not(.on):hover{border-color:#a5b4fc;background:#f4f5ff}

/* ═══════════════════════════════════════
   7. SMS / WHATSAPP PILLS (register)
   ═══════════════════════════════════════ */
.zp{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.zpp{
    display:flex;align-items:center;justify-content:center;gap:5px;padding:7px 0;
    border:2px solid #e2e8f0;border-radius:16px;cursor:pointer;transition:all .2s;
    text-decoration:none!important;font-family:'Cairo',sans-serif;font-size:1.12rem;
    font-weight:800;background:#fafbfc;color:#6b7280
}
.zpi{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0}
.zpi.s{background:#f59e0b;color:#fff}
.zpi.w{background:#25D366;color:#fff}
.zpp.on.sm{background:#f59e0b;border-color:#d97706;color:#fff}
.zpp.on.sm .zpi{background:rgba(255,255,255,.3)}
.zpp.on.wa{background:#25D366;border-color:#16a34a;color:#fff}
.zpp.on.wa .zpi{background:rgba(255,255,255,.3)}
.zpp:not(.on):hover{border-color:#a5b4fc;background:#f5f5ff}
.confirm-label{text-align:center;font-size:1.05rem;font-weight:700;color:#64748b;margin:3px 0 1px;padding:0 14px}

/* ═══════════════════════════════════════
   8. METHOD HINT (reset page)
   ═══════════════════════════════════════ */
.method-hint{
    margin:6px 14px;padding:8px 12px;background:#eef2ff;
    border:1.5px solid #c7d2fe;border-radius:10px;display:flex;
    align-items:flex-start;gap:8px;text-align:right;direction:rtl
}
.method-hint i{font-size:1.1rem;color:#4169E1;flex-shrink:0;margin-top:2px}
.method-hint span{font-size:1.15rem;font-weight:700;color:#334155;line-height:1.5}

/* ═══════════════════════════════════════
   9. FORM FIELDS
   ═══════════════════════════════════════ */
.zf{padding:6px 14px 10px}
.zf-f{margin-bottom:7px;position:relative}
.zf-f .ui-inputtext{
    width:100%!important;padding:11px 13px!important;border:2px solid #b8c4f0!important;
    border-radius:10px!important;font-size:1.18rem!important;font-weight:700!important;
    color:#14254a!important;font-family:'Cairo',sans-serif!important;
    background:#f8fafc!important;outline:none!important;direction:rtl!important;
    text-align:right!important
}
.zf-f .ui-inputtext:focus{border-color:#4169E1!important;background:#fff!important;box-shadow:0 0 0 3px rgba(65,105,225,.08)!important}
.zf-f .ui-inputtext[readonly]{background:#eef2ff!important;border-color:#c7d2fe!important;color:#4169E1!important;cursor:default}
.zf-err{color:#ef4444;font-size:.82rem;font-weight:700;display:block;margin-top:3px;font-family:'Cairo',sans-serif}
.zf-f.has-error .ui-inputtext{border-color:#ef4444!important}
.zf-f .ui-password{position:relative;width:100%!important;display:flex!important;flex-direction:row-reverse!important;align-items:center!important}
.zf-f .ui-password input{
    flex:1!important;width:100%!important;padding:11px 13px 11px 38px!important;
    border:2px solid #b8c4f0!important;border-radius:10px!important;font-size:1.12rem!important;
    font-weight:700!important;color:#14254a!important;font-family:'Cairo',sans-serif!important;
    background:#f8fafc!important;outline:none!important;direction:rtl!important;text-align:right!important
}
.zf-f .ui-password input:focus{border-color:#4169E1!important;background:#fff!important;box-shadow:0 0 0 3px rgba(65,105,225,.08)!important}
.zf-f .ui-password>*:not(input){
    position:absolute!important;left:12px!important;right:auto!important;top:50%!important;
    transform:translateY(-50%)!important;cursor:pointer!important;color:#94a3b8!important;
    font-size:1.1rem!important;background:none!important;border:none!important;z-index:2!important;
    width:auto!important;height:auto!important;margin:0!important;padding:4px!important
}
.zf-f .ui-password>*:not(input):hover{color:#4169E1!important}
.zf-chk{display:flex;align-items:center;gap:5px;margin-bottom:5px;padding:4px 10px;background:#fef3cd;border:1px solid #e6c547;border-radius:8px;direction:rtl}
.zf-chk .ui-chkbox{flex-shrink:0}
.zf-chk .ui-chkbox .ui-chkbox-box{border-radius:4px}
.zf-chk .ui-chkbox .ui-chkbox-box.ui-state-active{background:#b8860b!important;border-color:#b8860b!important}
.zf-chk label{font-size:.95rem;font-weight:800;color:#5a4106;cursor:pointer;font-family:'Cairo',sans-serif}

/* ═══════════════════════════════════════
   10. OTP — SMS 4 BOXES
   ═══════════════════════════════════════ */
.otp-label{text-align:center;font-size:1.2rem;font-weight:800;color:#475569;margin:8px 0 6px;font-family:'Cairo',sans-serif}
.otp-boxes{display:flex;gap:12px;direction:ltr;justify-content:center;margin:12px 0 14px}
.otp-box{
    width:60px;height:68px;text-align:center;font-size:1.8rem;font-weight:900;
    color:#14254a;border:2.5px solid #b8c4f0;border-radius:12px;background:#f8fafc;
    outline:none;font-family:'Cairo',monospace;padding:0;
    transition:border-color .2s,box-shadow .2s,background .2s
}
.otp-box:focus{border-color:#4169E1;background:#fff;box-shadow:0 0 0 4px rgba(65,105,225,.12)}
.otp-box.filled{border-color:#4169E1;background:#eef2ff}

/* ═══════════════════════════════════════
   11. OTP — WHATSAPP STYLISH INPUT
   ═══════════════════════════════════════ */
.wa-otp-wrap{margin:10px 0 12px;padding:0 14px}
.wa-otp{
    width:100%;padding:16px 18px!important;
    border:2.5px solid #25D366;border-radius:14px;
    font-size:1.8rem;font-weight:900;color:#14254a;
    background:linear-gradient(135deg,#f0fdf4,#ecfdf5);
    outline:none;font-family:'Cairo',monospace;
    text-align:center;direction:ltr;letter-spacing:8px;
    transition:border-color .2s,box-shadow .2s,background .2s
}
.wa-otp:focus{border-color:#16a34a;background:#fff;box-shadow:0 0 0 4px rgba(37,211,102,.15)}
.wa-otp::placeholder{letter-spacing:2px;font-size:1rem;color:#94a3b8;font-weight:700}

/* ═══════════════════════════════════════
   12. OTP — SENT STATUS + TIMER
   ═══════════════════════════════════════ */
.zo-s{text-align:center;font-size:1.05rem;font-weight:700;color:#475569;margin:4px 0;direction:ltr}
.zo-s b{color:#14254a}
.zo-l{text-align:center;font-size:1rem;font-weight:700;color:#64748b;margin:0 0 4px}
.zo-t{text-align:center;font-size:1.1rem;font-weight:800;color:#64748b;margin:10px 0 12px;font-family:'Cairo',sans-serif}
.zo-t b{color:#4169E1;font-size:1.6rem;font-weight:900;letter-spacing:1px}
.zo-t span{font-weight:900;font-size:1.6rem}
.zf-mid{overflow:hidden;transition:max-height .35s ease,opacity .25s ease;max-height:300px;opacity:1}

/* ═══════════════════════════════════════
   13. BUTTONS
   ═══════════════════════════════════════ */
.bw{margin-bottom:7px}
.bw .ui-button{
    width:100%!important;padding:12px 16px!important;border:none!important;
    border-radius:11px!important;font-size:1.3rem!important;font-weight:900!important;
    font-family:'Cairo',sans-serif!important;height:auto!important
}
.bw .ui-button .ui-button-text{padding:0!important;line-height:1.4!important;font-size:1.3rem!important;font-weight:900!important}
.bw .ui-button .ui-button-icon-left{margin-left:7px;font-size:1.05rem}
.bp .ui-button{background:linear-gradient(135deg,#14254a,#1e3a7a)!important;color:#fff!important;box-shadow:0 3px 12px rgba(20,37,74,.28)!important}
.bp .ui-button:hover{background:linear-gradient(135deg,#0f1d3d,#182f65)!important}
.bs .ui-button{background:#fff!important;color:#14254a!important;border:2.5px solid #d1d5db!important}
.bs .ui-button:hover{background:#f0f1ff!important;border-color:#4169E1!important}
.dv{display:flex;align-items:center;gap:8px;margin:3px 0;color:#cbd5e1;font-size:.72rem;font-weight:700}
.dv::before,.dv::after{content:'';flex:1;height:1px;background:#e2e8f0}

/* ═══════════════════════════════════════
   14. DIALOGS — generic error
   ═══════════════════════════════════════ */
.md .ui-dialog{border-radius:16px!important;overflow:hidden;box-shadow:0 8px 32px rgba(0,0,0,.25)!important;border:none!important}
.md .ui-dialog-titlebar{
    background:linear-gradient(135deg,#14254a,#1e3a7a,#2a4fcf)!important;color:#fff!important;
    padding:18px 22px!important;font-family:'Cairo',sans-serif!important;font-size:1.3rem!important;
    font-weight:900!important;border:none!important;position:relative!important
}
.md .ui-dialog-titlebar::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#EBB436,#f5d06a,#EBB436)}
.md .ui-dialog-content{
    padding:24px 22px!important;text-align:center;font-family:'Cairo',sans-serif;
    font-size:1.25rem;font-weight:700;color:#1e293b;line-height:1.7
}

/* ═══════════════════════════════════════
   15. DIALOG BUTTONS
   ═══════════════════════════════════════ */
.dlg-btns{display:flex;gap:10px;margin-top:16px;justify-content:center}
.dlg-btn{
    display:inline-flex;align-items:center;gap:6px;padding:11px 24px;border-radius:10px;
    font-size:1.02rem;font-weight:800;font-family:'Cairo',sans-serif;
    text-decoration:none!important;cursor:pointer;transition:all .2s;border:none;white-space:nowrap
}
.dlg-btn-blue{background:linear-gradient(135deg,#14254a,#1e3a7a);color:#fff!important;box-shadow:0 3px 10px rgba(20,37,74,.3)}
.dlg-btn-blue:hover{background:linear-gradient(135deg,#0f1d3d,#182f65)}
.dlg-btn-gray{background:#f1f5f9;color:#475569!important;border:2px solid #d1d5db!important}
.dlg-btn-gray:hover{background:#e2e8f0;border-color:#94a3b8!important}
.reg-hint{font-size:.9rem;font-weight:600;color:#94a3b8;margin-top:10px;margin-bottom:0}

/* ═══════════════════════════════════════
   16. KMID WAITING DIALOG
   ═══════════════════════════════════════ */
.moe-kmid .ui-dialog-titlebar{display:none!important}
.moe-kmid .ui-dialog-content{border-radius:22px!important;padding:0!important;overflow:hidden}
.moe-kmid .ui-dialog{border-radius:22px!important;box-shadow:0 20px 60px rgba(0,0,0,.35)!important;border:none!important;margin:auto!important;position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important}
.kmid-wait{text-align:center;font-family:'Cairo',sans-serif;direction:rtl;background:#fff;min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.kmid-hdr{background:linear-gradient(135deg,#14254a,#1e3a7a);width:100%;padding:18px 20px;margin-bottom:0}
.kmid-hdr h3{font-size:1.1rem;font-weight:900;color:#fff;margin:0;line-height:1.4}
.kmid-body{padding:28px 24px 24px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}
.kw-spinner{position:relative;width:160px;height:160px;margin:0 auto 20px}
.kw-spinner-ring{width:160px;height:160px;border:8px solid #e8ecf4;border-top:8px solid #4169E1;border-radius:50%;animation:ksp 1.2s linear infinite;position:absolute;top:0;left:0}
.kw-spinner img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;object-fit:contain;border-radius:14px}
@keyframes ksp{to{transform:rotate(360deg)}}
.kw-timer{margin:16px 0 8px;padding:0;background:none!important;display:inline-block}
.kw-timer .ui-timer,.kw-timer span{font-size:2.4rem!important;font-weight:900!important;color:#14254a!important;font-family:'Cairo',sans-serif!important;letter-spacing:2px;background:none!important}
.kw-hint{font-size:.95rem;font-weight:700;color:#475569;margin-top:12px;line-height:1.5}

/* ═══════════════════════════════════════
   17. SUCCESS STATE
   ═══════════════════════════════════════ */
.reg-success,.reset-success{text-align:center;padding:18px 14px;direction:rtl}
.reg-success .rs-icon,.reset-success .rs-icon{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#d1fae5,#a7f3d0);display:flex;align-items:center;justify-content:center;margin:0 auto 10px}
.reg-success .rs-icon i,.reset-success .rs-icon i{font-size:1.6rem;color:#059669}
.reg-success .rs-msg,.reset-success .rs-msg{font-size:1rem;font-weight:700;color:#334155;line-height:1.5;margin-bottom:6px}
.reg-success .rs-sub{font-size:.85rem;font-weight:600;color:#64748b;margin-bottom:10px;line-height:1.3}
.reset-success .rs-phone{font-size:1.2rem;font-weight:900;color:#14254a;direction:ltr;margin:6px 0 12px}

/* ═══════════════════════════════════════
   18. SMART MODE BADGE (register)
   ═══════════════════════════════════════ */
.smart-badge{display:flex;align-items:center;gap:6px;padding:10px 14px;margin:5px 14px 6px;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:1.5px solid #6ee7b7;border-radius:10px;direction:rtl}
.smart-badge i{font-size:1.2rem;color:#059669;flex-shrink:0}
.smart-badge .sb-text{flex:1}
.smart-badge .sb-name{font-size:1rem;font-weight:900;color:#065f46}
.smart-badge .sb-hint{font-size:.78rem;font-weight:600;color:#047857;margin-top:1px}

/* ═══════════════════════════════════════
   19. LOCATION ERROR (register)
   ═══════════════════════════════════════ */
.loc-error{text-align:center;padding:22px 20px;direction:rtl}
.loc-error i{font-size:1.8rem;color:#ef4444;display:block;margin-bottom:8px}
.loc-error p{font-size:.92rem;font-weight:700;color:#475569;margin-bottom:10px}

/* ═══════════════════════════════════════
   20. MISC OVERRIDES
   ═══════════════════════════════════════ */
.login-panel-content .ui-panelgrid{border:none!important;width:100%!important}
.login-panel-content .ui-panelgrid tr,
.login-panel-content .ui-panelgrid td{border:none!important;padding:0!important}
.login-panel-content .ui-fluid .ui-button{height:auto}
.login-panel-content .ui-blockui{border-radius:14px!important;background:rgba(255,255,255,.92)!important;font-family:'Cairo',sans-serif}
.login-panel-content .ui-chkbox .ui-chkbox-box{border-radius:4px}
.login-panel-content .ui-chkbox .ui-chkbox-box.ui-state-active{background:#4169E1!important;border-color:#4169E1!important}

/* ═══════════════════════════════════════
   21. MOBILE RESPONSIVE
   ═══════════════════════════════════════ */
@media(max-width:600px){
    html,body{margin:0!important;padding:0!important;height:auto!important;min-height:100vh!important;overflow-x:hidden!important}
    .login-body{
        padding:0!important;margin:0!important;
        background:#fff!important;background-image:none!important;
        min-height:100vh!important;height:auto!important;
        display:block!important;overflow-y:auto!important;
        -webkit-overflow-scrolling:touch;
        align-items:stretch!important
    }
    .login-body .login-panel{
        max-width:100%!important;width:100%!important;
        border-radius:0!important;box-shadow:none!important;
        min-height:100vh!important;height:auto!important;
        overflow:visible!important;margin:0!important;padding:0!important;
        position:relative!important;top:auto!important;
        left:auto!important;right:auto!important;transform:none!important;
        display:flex!important;flex-direction:column!important
    }
    .login-body .login-panel .login-panel-header{border-radius:0!important;flex-shrink:0;padding:14px 10px 10px!important}
    .login-body .login-panel .login-panel-content{flex:1!important;display:flex!important;flex-direction:column!important}
    .login-panel-content>.ui-g,.login-panel-content>div{flex:1!important}
    .login-body .login-panel>div:empty,.login-body .login-panel>span:empty{display:none!important}

    .reg-title h2{font-size:1.35rem}
    .reg-title p{font-size:.95rem}
    .reg-title{padding:3px 14px 0}
    .za{padding:3px 14px 0}
    .za-l{font-size:1rem;margin:0 0 3px}
    .zci{aspect-ratio:1.1}
    .zci img{max-width:85%;max-height:85%}
    .zct{font-size:1.08rem}
    .zc,.zc3{gap:4px;margin-bottom:3px}
    .zpp{padding:7px 0;font-size:1.05rem}
    .zpi{width:22px;height:22px;font-size:.8rem}
    .zp{gap:5px}
    .confirm-label{font-size:.85rem;margin:2px 0 1px}
    .zf{padding:5px 14px 8px}
    .zf-f{margin-bottom:6px}
    .zf-f .ui-inputtext{font-size:1.15rem!important;padding:10px 12px!important}
    .zf-f .ui-password input{font-size:1.15rem!important;padding:10px 12px 10px 36px!important}
    .zf-chk{margin-bottom:5px;padding:4px 8px}
    .zf-chk label{font-size:.78rem}
    .bw{margin-bottom:6px}
    .bw .ui-button{padding:12px 14px!important;font-size:1.22rem!important}
    .bw .ui-button .ui-button-text{font-size:1.22rem!important}
    .dv{margin:2px 0}
    .method-hint{margin:4px 14px;padding:6px 10px}
    .method-hint span{font-size:1.08rem}
    .otp-label{font-size:1.1rem}
    .otp-box{width:50px;height:58px;font-size:1.5rem}
    .otp-boxes{gap:8px;margin:8px 0 10px}
    .wa-otp{font-size:1.4rem;letter-spacing:6px;padding:13px 14px!important}
    .zo-t{font-size:.95rem;margin:6px 0 8px}
    .zo-t b,.zo-t span{font-size:1.3rem}
    .zo-s{font-size:.95rem}
    .smart-badge{margin:3px 14px 4px;padding:8px 12px}
    .loc-error{padding:16px}

    .md .ui-dialog,.moe-kmid .ui-dialog{width:92vw!important;max-width:400px!important}
    .moe-kmid .ui-dialog{width:88vw!important}
}

/* ═══════════════════════════════════════════════════════════════
   22. DIALOG CLOSE BUTTON (X) — visible white circle on dark navy header
   This MUST be at the file end, OUTSIDE any @media block.
   Uses html body prefix for max specificity to beat PrimeFaces.
   ═══════════════════════════════════════════════════════════════ */
html body .md.ui-dialog .ui-dialog-titlebar a.ui-dialog-titlebar-icon,
html body .md.ui-dialog .ui-dialog-titlebar a.ui-dialog-titlebar-close,
html body .ui-dialog.md .ui-dialog-titlebar a.ui-dialog-titlebar-icon,
html body .ui-dialog.md .ui-dialog-titlebar a.ui-dialog-titlebar-close{
    background:#fff!important;
    background-image:none!important;
    background-color:#fff!important;
    border:2px solid #fff!important;
    border-radius:50%!important;
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    min-height:32px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    opacity:1!important;
    margin:0!important;
    padding:0!important;
    top:50%!important;
    right:14px!important;
    left:auto!important;
    transform:translateY(-50%)!important;
    box-shadow:0 2px 6px rgba(0,0,0,.25)!important;
    transition:transform .2s,box-shadow .2s!important;
    text-decoration:none!important;
    cursor:pointer!important
}
html body .md.ui-dialog .ui-dialog-titlebar a.ui-dialog-titlebar-close:hover,
html body .md.ui-dialog .ui-dialog-titlebar a.ui-dialog-titlebar-close.ui-state-hover,
html body .md.ui-dialog .ui-dialog-titlebar a.ui-dialog-titlebar-close.ui-state-focus,
html body .ui-dialog.md .ui-dialog-titlebar a.ui-dialog-titlebar-close:hover,
html body .ui-dialog.md .ui-dialog-titlebar a.ui-dialog-titlebar-close.ui-state-hover,
html body .ui-dialog.md .ui-dialog-titlebar a.ui-dialog-titlebar-close.ui-state-focus{
    background:#fff!important;
    background-color:#fff!important;
    background-image:none!important;
    border-color:#fff!important;
    transform:translateY(-50%) scale(1.1)!important;
    box-shadow:0 4px 10px rgba(0,0,0,.4)!important
}
/* Hide PrimeFaces sprite icon */
html body .md.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon,
html body .md.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick,
html body .ui-dialog.md .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon,
html body .ui-dialog.md .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick{
    background:none!important;
    background-image:none!important;
    text-indent:0!important;
    width:16px!important;
    height:16px!important;
    position:relative!important;
    display:inline-block!important;
    margin:0!important;
    color:transparent!important;
    font-size:0!important;
    overflow:visible!important
}
/* Draw the X using two pseudo-elements - dark navy on white */
html body .md.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon::before,
html body .md.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon::after,
html body .md.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick::before,
html body .md.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick::after,
html body .ui-dialog.md .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon::before,
html body .ui-dialog.md .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon::after,
html body .ui-dialog.md .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick::before,
html body .ui-dialog.md .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick::after{
    content:''!important;
    position:absolute!important;
    top:50%!important;
    left:50%!important;
    width:16px!important;
    height:3px!important;
    background:#14254a!important;
    background-color:#14254a!important;
    border-radius:2px!important;
    margin:0!important;
    color:transparent!important
}
html body .md.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon::before,
html body .md.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick::before,
html body .ui-dialog.md .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon::before,
html body .ui-dialog.md .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick::before{
    transform:translate(-50%,-50%) rotate(45deg)!important
}
html body .md.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon::after,
html body .md.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick::after,
html body .ui-dialog.md .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon::after,
html body .ui-dialog.md .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick::after{
    transform:translate(-50%,-50%) rotate(-45deg)!important
}

/* ═══════════════════════════════════════════════════════════════
   23. DIALOG OK BUTTON (موافق) — primary action to close
   Use as: <a class="dlg-btn dlg-ok" onclick="PF('msgDlg').hide()">موافق</a>
   ═══════════════════════════════════════════════════════════════ */
.dlg-ok-wrap{
    display:flex;
    justify-content:center;
    margin-top:20px
}
html body .dlg-btn.dlg-ok{
    background:linear-gradient(135deg,#14254a,#1e3a7a)!important;
    background-image:linear-gradient(135deg,#14254a,#1e3a7a)!important;
    color:#fff!important;
    box-shadow:0 4px 12px rgba(20,37,74,.35)!important;
    padding:12px 40px!important;
    min-width:140px;
    justify-content:center;
    border:none!important;
    border-radius:10px!important;
    font-size:1.1rem!important;
    font-weight:900!important;
    font-family:'Cairo',sans-serif!important;
    text-decoration:none!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    cursor:pointer!important;
    transition:all .2s!important
}
html body .dlg-btn.dlg-ok:hover{
    background:linear-gradient(135deg,#0f1d3d,#182f65)!important;
    background-image:linear-gradient(135deg,#0f1d3d,#182f65)!important;
    box-shadow:0 6px 16px rgba(20,37,74,.45)!important;
    transform:translateY(-1px)
}
html body .dlg-btn.dlg-ok i{
    font-size:.95rem;
    color:#fff!important
}