/* =========================================================
   Easy Accessibility - Shazand
   دکمه شناور بالای پنل گزینه‌ها
   ========================================================= */

#easy-accessibility{
    direction:rtl;
    font-family:inherit;
    position:fixed!important;
    left:0!important;
    top:auto!important;
    right:auto!important;
    bottom:24px!important;
    width:340px!important;
    height:46px!important;
    max-width:calc(100vw - 24px)!important;
    transform:none!important;
    z-index:2147483000!important;
    pointer-events:none!important;
}

/* دکمه شناور: بالای گزینه‌ها، کوچک و کاملاً دایره */
#easy-accessibility .accessibility-toggle{
    position:fixed!important;
    left:0!important;
    top:auto!important;
    bottom:140px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:50%!important;
    background:#0b00b8!important;
    color:#fff!important;
    box-sizing:border-box!important;
    cursor:pointer!important;
    pointer-events:auto!important;
    box-shadow:0 3px 12px rgba(0,0,0,.22)!important;
}
#easy-accessibility .accessibility-toggle:hover{
    background:#0b00b8!important;
    transform:none!important;
}
#easy-accessibility .accessibility-wheelchair{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:100%!important;
    color:#fff!important;
    font-size:23px!important;
    line-height:1!important;
}

/* پنل دقیقاً زیر دکمه و با همان رنگ زمینه */
#easy-accessibility .accessibility-panel{
    position:absolute!important;
    left:0!important;
    right:auto!important;
    top:auto!important;
    bottom:0!important;
    width:100%!important;
    max-width:100%!important;
    max-height:calc(100vh - 110px)!important;
    overflow-y:auto!important;
    padding:14px!important;
    margin:0!important;
    box-sizing:border-box!important;
    background:#0b00b8!important;
    color:#fff!important;
    border:0!important;
    border-radius:12px!important;
    box-shadow:0 7px 24px rgba(0,0,0,.25)!important;
    z-index:2147483000!important;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-6px)!important;
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
}
#easy-accessibility .accessibility-panel.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0)!important;
}

#easy-accessibility .accessibility-header{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    padding:0 0 10px!important;
    margin:0 0 12px!important;
    border-bottom:1px solid rgba(255,255,255,.25)!important;
}
#easy-accessibility .accessibility-title{
    color:#fff!important;
    font-size:16px!important;
    font-weight:700!important;
    line-height:1.5!important;
}
#easy-accessibility .accessibility-close{
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.16)!important;
    color:#fff!important;
    font-size:20px!important;
    line-height:1!important;
    cursor:pointer!important;
}

#easy-accessibility .accessibility-section{
    margin:0 0 10px!important;
    padding:0!important;
}
#easy-accessibility .accessibility-section h3{
    margin:0 0 5px!important;
    padding:0!important;
    color:#fff!important;
    font-size:13px!important;
    line-height:1.4!important;
}

#easy-accessibility .accessibility-buttons{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
}
#easy-accessibility .accessibility-buttons.two-columns{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
#easy-accessibility .accessibility-buttons button{
    width:100%!important;
    min-width:0!important;
    min-height:31px!important;
    padding:5px 4px!important;
    margin:0!important;
    box-sizing:border-box!important;
    border:1px solid rgba(255,255,255,.3)!important;
    border-radius:5px!important;
    background:rgba(255,255,255,.96)!important;
    color:#222!important;
    font-family:inherit!important;
    font-size:11px!important;
    line-height:1.25!important;
    cursor:pointer!important;
}
#easy-accessibility .accessibility-buttons button:hover{
    background:#fff!important;
}
#easy-accessibility .accessibility-buttons button.active{
    background:#082f55!important;
    border-color:#fff!important;
    color:#fff!important;
}

#easy-accessibility .accessibility-reset{
    display:block!important;
    width:100%!important;
    min-height:34px!important;
    margin:3px 0 0!important;
    padding:6px 10px!important;
    box-sizing:border-box!important;
    border:1px solid rgba(255,255,255,.3)!important;
    border-radius:6px!important;
    background:#fff!important;
    color:#0b00b8!important;
    font-family:inherit!important;
    font-size:12px!important;
    font-weight:600!important;
    cursor:pointer!important;
    position:sticky!important;
    bottom:0!important;
    z-index:3!important;
}

/* اندازه متن: افزایش ملایم و فقط روی عناصر متنی */
body.access-font-large :where(p,h1,h2,h3,h4,h5,h6,li,a,label,td,th,blockquote):not(#easy-accessibility):not(#easy-accessibility *){
    font-size:calc(1em + 2px)!important;
}
body.access-font-xlarge :where(p,h1,h2,h3,h4,h5,h6,li,a,label,td,th,blockquote):not(#easy-accessibility):not(#easy-accessibility *){
    font-size:calc(1em + 4px)!important;
}

/* فاصله خطوط فقط روی متن؛ سکشن و کانتینر Elementor تغییر نمی‌کند */
body.access-line-medium :where(p,h1,h2,h3,h4,h5,h6,li,a,label,td,th,blockquote):not(#easy-accessibility):not(#easy-accessibility *){
    line-height:1.7!important;
}
body.access-line-large :where(p,h1,h2,h3,h4,h5,h6,li,a,label,td,th,blockquote):not(#easy-accessibility):not(#easy-accessibility *){
    line-height:1.9!important;
}

/* فاصله حروف فقط روی متن */
body.access-letter-medium :where(p,h1,h2,h3,h4,h5,h6,li,a,label,td,th,blockquote):not(#easy-accessibility):not(#easy-accessibility *){
    letter-spacing:.025em!important;
}
body.access-letter-large :where(p,h1,h2,h3,h4,h5,h6,li,a,label,td,th,blockquote):not(#easy-accessibility):not(#easy-accessibility *){
    letter-spacing:.05em!important;
}

/* تراز متن؛ فقط راست، وسط، چپ */
body.access-align-right :where(p,h1,h2,h3,h4,h5,h6,li,a,label,td,th,blockquote):not(#easy-accessibility):not(#easy-accessibility *){text-align:right!important}
body.access-align-center :where(p,h1,h2,h3,h4,h5,h6,li,a,label,td,th,blockquote):not(#easy-accessibility):not(#easy-accessibility *){text-align:center!important}
body.access-align-left :where(p,h1,h2,h3,h4,h5,h6,li,a,label,td,th,blockquote):not(#easy-accessibility):not(#easy-accessibility *){text-align:left!important}

/* کنتراست کل سایت، بدون دستکاری پنل دسترسی */
body.access-contrast-high{
    background:#000!important;
    color:#fff!important;
}
body.access-contrast-high #page,
body.access-contrast-high main,
body.access-contrast-high header,
body.access-contrast-high footer,
body.access-contrast-high section,
body.access-contrast-high article,
body.access-contrast-high .elementor,
body.access-contrast-high .elementor-element,
body.access-contrast-high .e-con,
body.access-contrast-high .e-con-inner{
    background-color:#000!important;
    color:#fff!important;
}
body.access-contrast-high *:not(#easy-accessibility):not(#easy-accessibility *){
    border-color:#fff!important;
}
body.access-contrast-high :where(p,h1,h2,h3,h4,h5,h6,li,span,div,article,section):not(#easy-accessibility):not(#easy-accessibility *){
    color:#fff!important;
}
body.access-contrast-high a:not(#easy-accessibility a){color:#ffff00!important}
body.access-contrast-high input,
body.access-contrast-high textarea,
body.access-contrast-high select{
    background:#000!important;
    color:#fff!important;
    border:1px solid #fff!important;
}

/* برجسته‌سازی: دور تک‌تک المان‌های محتوای صفحه */
body.access-highlight-on *:not(#easy-accessibility):not(#easy-accessibility *){
    outline:2px solid #ffcc00!important;
    outline-offset:1px!important;
}

#easy-accessibility button:focus-visible{
    outline:3px solid #ffbf00!important;
    outline-offset:2px!important;
}

@media(max-width:600px){
    #easy-accessibility{
        left:0!important;
        right:auto!important;
        bottom:18px!important;
        width:calc(100vw - 12px)!important;
        max-width:calc(100vw - 12px)!important;
    }
    #easy-accessibility .accessibility-toggle{
        left:0!important;
        top:auto!important;
        right:auto!important;
        bottom:120px!important;
        width:44px!important;
        height:44px!important;
        min-width:44px!important;
        min-height:44px!important;
    }
    #easy-accessibility .accessibility-wheelchair{font-size:22px!important}
    #easy-accessibility .accessibility-panel{
        width:100%!important;
        max-width:100%!important;
        max-height:calc(100vh - 100px)!important;
        padding:12px!important;
    }
}
