/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, customizable website. It provides a solid foundation for unique sites using Elementor's drag-and-drop builder.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.3.1771158319
Updated: 2026-08-22 02:45:00

*/

/* Nila global page transition loader — lightweight circular edition */
#nila-site-loader {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    display: flex;
    align-items: center;
    justify-content: center;
    direction: rtl;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    background: rgba(2, 4, 8, 0.86);
    -webkit-backdrop-filter: blur(8px) saturate(108%);
    backdrop-filter: blur(8px) saturate(108%);
    transition: opacity 0.10s ease, visibility 0.10s ease;
}

html.nila-page-transition-pending #nila-site-loader,
#nila-site-loader[aria-hidden="false"] {
    visibility: visible;
    opacity: 1;
    pointer-events: all;
}

.nila-site-loader-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 158px;
    min-height: 142px;
    padding: 22px 24px;
    overflow: hidden;
    color: #f8fafc;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 26px;
    background: linear-gradient(145deg, rgba(30, 35, 45, 0.72), rgba(8, 10, 15, 0.78));
    box-shadow: 0 22px 65px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    -webkit-backdrop-filter: blur(18px) saturate(118%);
    backdrop-filter: blur(18px) saturate(118%);
    font-family: Vazirmatn, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    contain: layout paint;
}

.nila-site-speed-ring {
    width: 56px;
    height: 56px;
    border: 3px solid rgba(255, 255, 255, 0.13);
    border-top-color: #ffffff;
    border-right-color: #7dd3fc;
    border-radius: 50%;
    box-shadow: 0 0 0 1px rgba(125, 211, 252, 0.05), 0 0 20px rgba(125, 211, 252, 0.12);
    animation: nilaSiteSpeedSpin 0.56s linear infinite;
    will-change: transform;
    transform: translateZ(0);
}

.nila-site-speed-ring::after {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    margin: 1px 0 0 39px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 0 9px rgba(255, 255, 255, 0.70);
}

.nila-site-loader-text {
    width: 200px;
    margin-top: 18px;
    overflow: hidden;
    color: #d8dee9;
    font-size: 12.5px;
    font-weight: 650;
    line-height: 1.7;
    text-align: center;
    white-space: nowrap;
    text-overflow: ellipsis;
}

@keyframes nilaSiteSpeedSpin {
    to { transform: translateZ(0) rotate(360deg); }
}

@supports not ((backdrop-filter: blur(2px)) or (-webkit-backdrop-filter: blur(2px))) {
    #nila-site-loader { background: rgba(2, 4, 8, 0.95); }
    .nila-site-loader-card { background: #101319; }
}

@media (max-width: 560px) {
    .nila-site-loader-card {
        min-width: 148px;
        min-height: 134px;
        padding: 20px;
        border-radius: 24px;
    }
    .nila-site-speed-ring { width: 52px; height: 52px; }
    .nila-site-loader-text { width: 184px; margin-top: 16px; font-size: 12px; }
}

/* Mobile: no expensive full-page blur, so rotation stays smooth. */
@media (hover: none) and (pointer: coarse), (max-width: 820px) {
    #nila-site-loader {
        background: rgba(2, 4, 8, 0.93);
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }
    .nila-site-loader-card {
        background: linear-gradient(145deg, rgba(29, 34, 43, 0.96), rgba(8, 10, 15, 0.96));
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .nila-site-speed-ring { animation-duration: 1.15s; }
}

/* Installed PWA: keep every page inside the device safe area. */
@media (display-mode: standalone) {
    body {
        box-sizing: border-box;
        min-height: 100dvh;
        padding-top: env(safe-area-inset-top);
        padding-right: env(safe-area-inset-right);
        padding-bottom: env(safe-area-inset-bottom);
        padding-left: env(safe-area-inset-left);
    }
}
