/* IRFAN AI — CENTRAL STAND / EXACT MEASURED GEOMETRY */

.canvas::after{
    /* The former outer frame split the Home composition into a boxed centre
       and a detached lower field.  The central content keeps its own soft
       light; only this hard contour is intentionally removed. */
    content:none;
    position:absolute;

    left: calc(22.977% - 1cm);
top: calc(11.341% - 0.4cm);
width: calc(67.572% + 2cm);
height: calc(39.409% + 3.0cm);
    z-index:5001;
    pointer-events:none;
    box-sizing:border-box;

    border:1px solid rgba(255,215,105,.48);

    box-shadow:
        0 0 7px rgba(255,210,85,.30),
        0 0 15px rgba(255,195,55,.16),
        inset 0 0 5px rgba(255,220,120,.10);

    animation: none !important;
}

/* Внутреннее свечение — отдельно от рамки */
.canvas::before {
    content: "";
    position: absolute;
    left: calc(24.177% - 1cm);
    top: calc(12.543% - 0.4cm);
width: calc(65.172% + 2cm);
height: calc(37.009% + 2.4cm);

    z-index:5000;
    pointer-events:none;

    background:
        radial-gradient(
            ellipse at 50% 48%,
            rgba(255,215,105,.16) 0%,
            rgba(255,195,60,.065) 38%,
            rgba(255,185,45,.025) 58%,
            transparent 76%
        );

    animation: none !important;
}

@keyframes irfanFrameGlow{
    0%,100%{
        opacity:.48;
    }

    50%{
        opacity:1;
        box-shadow:
            0 0 11px rgba(255,220,105,.52),
            0 0 22px rgba(255,195,55,.23),
            inset 0 0 7px rgba(255,225,135,.14);
    }
}

@keyframes irfanInnerGlow{
    0%,100%{
        opacity:.25;
    }

    50%{
        opacity:.72;
    }
}


/* ===== IRFAN AI NAV HOVER CLEAN FINAL ===== */

/* сама широкая hotspot-зона всегда полностью прозрачна */
.hotspot.nav,
.hotspot.nav:hover,
.hotspot.nav:focus-visible,
.hotspot.nav:active {
    background: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* локальное свечение только возле иконки и текста */
.hotspot.nav::after {
    content: "";
    position: absolute;

    left: 47%;
    right: 2%;
    top: 10%;
    bottom: 10%;

    pointer-events: none;
    border-radius: 999px;

    background: radial-gradient(
        ellipse at center,
        rgba(255, 222, 125, 0.30) 0%,
        rgba(255, 202, 70, 0.15) 38%,
        rgba(255, 185, 40, 0.045) 65%,
        transparent 82%
    );

    opacity: 0;
    transform: scale(0.94);
    transition: opacity .20s ease, transform .20s ease;
}

.hotspot.nav:hover::after,
.hotspot.nav:focus-visible::after {
    opacity: 1;
    transform: scale(1);
}


/* IRFAN NAV GLOW - VERTICAL ALIGNMENT */
.hotspot.nav::after{
    top:28% !important;
    bottom:-8% !important;
}


/* IRFAN NAV GLOW - POSITION CORRECTION */
.hotspot.nav::after{
    transform:translate(-12px,0px) scale(.94) !important;
}

.hotspot.nav:hover::after,
.hotspot.nav:focus-visible::after{
    transform:translate(-12px,0px) scale(1) !important;
}






/* ===== IRFAN AI QUICK GLOW — SAME GEOMETRY AS HOTSPOT ===== */

.hotspot.quick,
.hotspot.quick:hover,
.hotspot.quick:focus-visible,
.hotspot.quick:active{
    background:transparent !important;
    border:none !important;
    outline:none !important;
    box-shadow:none !important;
    overflow:hidden;
    border-radius:8px;
}

.hotspot.quick::after{
    content:"" !important;
    position:absolute;
    inset:0;
    pointer-events:none;
    box-sizing:border-box;
    border-radius:8px;

    background:radial-gradient(
        ellipse at center,
        rgba(255,225,130,.25) 0%,
        rgba(255,205,75,.11) 42%,
        transparent 82%
    );

    border:none !important;

    /* Только мягкое свечение — без дополнительной контурной линии. */
    box-shadow:none !important;

    opacity:0;

    transform:none !important;

    transition:opacity .18s ease;
}

.hotspot.quick:hover::after,
.hotspot.quick:focus-visible::after{
    opacity:1;

    transform:none !important;
}

/* Устаревший независимый JS-слой всегда выключен. */
.irfan-quick-glow{
    display:none !important;
}

/* ===== IRFAN CENTRAL STAND FX 31.08.2026 ===== */
/* DARK / RICH / NOBLE GOLD VERSION */

.irfan-central-fx{
    position:absolute;
    left:22.977%;
    top:11.341%;
    width:67.572%;
    height:39.409%;
    pointer-events:none;
   overflow: visible;
    z-index:500;
}

/* затемняющий благородный слой, возвращает глубину */
.irfan-central-fx::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:4px;
    background:
        radial-gradient(
            ellipse at center,
            rgba(0,0,0,0) 38%,
            rgba(0,0,0,.08) 62%,
            rgba(0,0,0,.18) 82%,
            rgba(0,0,0,.26) 100%
        ),
        linear-gradient(
            180deg,
            rgba(10,7,4,.12) 0%,
            rgba(0,0,0,.04) 40%,
            rgba(0,0,0,.14) 100%
        );
    opacity:.95;
}

/* мягкое богатое внутреннее свечение без белёсости */
.irfan-central-inner{
    position:absolute;
    inset:1.8%;
    border-radius:4px;
    background:
        linear-gradient(
            180deg,
            rgba(10,8,6,.30) 0%,
            rgba(26,16,8,.10) 22%,
            rgba(70,42,14,.05) 48%,
            rgba(10,8,5,.22) 100%
        ),
        radial-gradient(
            ellipse at 48% 45%,
            rgba(170,105,28,.16) 0%,
            rgba(124,76,18,.10) 30%,
            rgba(80,46,10,.04) 48%,
            transparent 72%
        ),
        linear-gradient(
            104deg,
            transparent 18%,
            rgba(135,82,18,.03) 38%,
            rgba(184,118,30,.08) 50%,
            rgba(128,78,18,.04) 62%,
            transparent 78%
        );
    filter:blur(7px);
    opacity:.28;
    animation: none !important;
}

/* только очень тонкая дорогая подсветка края */
.irfan-central-frame{
    position:absolute;
   inset: -0.4cm -1cm -2.5cm -1cm;
   
    overflow:hidden;
    border-radius:3px;
    box-shadow:
        inset 0 1px 0 rgba(188,132,42,.08),
        inset 0 -1px 0 rgba(145,92,24,.07);
}

/* верхний проход света — приглушённый */
.irfan-central-frame::before{
    content:"";
    position:absolute;
    top:0;
    left:-30%;
    width:30%;
    height:1px;
    background:linear-gradient(
        90deg,
        transparent,
        rgba(183,130,42,.04),
        rgba(224,176,82,.16),
        rgba(183,130,42,.04),
        transparent
    );
    filter:blur(.4px);
    animation: none !important;
}

/* нижний проход — ещё более мягкий */
.irfan-central-frame::after{
    content:"";
    position:absolute;
    bottom:0;
    right:-30%;
    width:30%;
    height:1px;
    background:linear-gradient(
        90deg,
        transparent,
        rgba(155,104,28,.03),
        rgba(198,142,52,.12),
        rgba(155,104,28,.03),
        transparent
    );
    filter:blur(.4px);
    animation: none !important;
}

@keyframes irfanCentralBreeze{
    0%{
        transform:translateX(-2%) scale(1);
        opacity:.28;
    }
    50%{
        transform:translateX(1.2%) scale(1.01);
        opacity:.36;
    }
    100%{
        transform:translateX(2.4%) scale(1);
        opacity:.30;
    }
}

@keyframes irfanFrameSweep{
    0%{left:-30%;opacity:0;}
    12%{opacity:.9;}
    76%{opacity:.9;}
    100%{left:106%;opacity:0;}
}

@keyframes irfanFrameSweepBack{
    0%{right:-30%;opacity:0;}
    12%{opacity:.75;}
    76%{opacity:.75;}
    100%{right:106%;opacity:0;}
}

@media (prefers-reduced-motion:reduce){
    .irfan-central-inner,
    .irfan-central-frame::before,
    .irfan-central-frame::after{
        animation:none!important;
    }
}



/* ===== IRFAN CENTRAL STAND — DEEP LUXURY FINAL TONE ===== */

.irfan-central-fx{
    background:rgba(18,9,3,.08) !important;

    -webkit-backdrop-filter:
        saturate(1.38)
        contrast(1.18)
        brightness(.82) !important;

    backdrop-filter:
        saturate(1.38)
        contrast(1.18)
        brightness(.82) !important;
}

/* глубокие тёмные края без серой пелены */
.irfan-central-fx::before{
    background:
        radial-gradient(
            ellipse at 50% 45%,
            transparent 28%,
            rgba(25,12,3,.035) 52%,
            rgba(8,4,2,.14) 76%,
            rgba(0,0,0,.27) 100%
        ),
        linear-gradient(
            180deg,
            rgba(35,18,5,.08) 0%,
            rgba(0,0,0,.015) 38%,
            rgba(0,0,0,.16) 100%
        ) !important;

    opacity:1 !important;
}

/* вместо светло-жёлтого — тёмный янтарный объём */
.irfan-central-inner{
    background:
        radial-gradient(
            ellipse at 48% 47%,
            rgba(142,78,16,.10) 0%,
            rgba(100,52,8,.055) 34%,
            rgba(50,24,3,.018) 57%,
            transparent 75%
        ),
        linear-gradient(
            105deg,
            transparent 20%,
            rgba(105,58,12,.025) 40%,
            rgba(166,100,25,.055) 51%,
            rgba(90,46,8,.025) 63%,
            transparent 78%
        ) !important;

    opacity:.25 !important;
    filter:blur(10px) !important;
    mix-blend-mode:soft-light;
}

/* свет по рамке — тёмное старое золото */
.irfan-central-frame{
    box-shadow:
        inset 0 1px 0 rgba(156,103,30,.055),
        inset 0 -1px 0 rgba(112,68,17,.045) !important;
}

.irfan-central-frame::before{
    height:1px !important;
    background:linear-gradient(
        90deg,
        transparent,
        rgba(135,87,24,.025),
        rgba(196,139,48,.105),
        rgba(135,87,24,.025),
        transparent
    ) !important;
}

.irfan-central-frame::after{
    height:1px !important;
    background:linear-gradient(
        90deg,
        transparent,
        rgba(110,67,17,.02),
        rgba(166,108,31,.075),
        rgba(110,67,17,.02),
        transparent
    ) !important;
}



/* IRFAN CENTRAL — RICH DARK BOOST */

.irfan-central-fx{
    background:rgba(8,4,2,.10) !important;
    -webkit-backdrop-filter:
        saturate(1.58)
        contrast(1.26)
        brightness(.74) !important;
    backdrop-filter:
        saturate(1.58)
        contrast(1.26)
        brightness(.74) !important;
}

.irfan-central-fx::before{
    opacity:1 !important;
    background:
        radial-gradient(
            ellipse at 50% 44%,
            transparent 22%,
            rgba(20,9,2,.04) 48%,
            rgba(5,2,1,.17) 76%,
            rgba(0,0,0,.34) 100%
        ) !important;
}

.irfan-central-inner{
    opacity:.18 !important;
}



/* ===== IRFAN CENTRAL — NATURAL RICH COLOR ===== */

.irfan-central-fx{
    background:rgba(0,0,0,.025) !important;

    -webkit-backdrop-filter:
        saturate(1.42)
        contrast(1.12)
        brightness(.98) !important;

    backdrop-filter:
        saturate(1.42)
        contrast(1.12)
        brightness(.98) !important;
}

.irfan-central-fx::before{
    background:
        radial-gradient(
            ellipse at center,
            transparent 36%,
            rgba(0,0,0,.06) 67%,
            rgba(0,0,0,.17) 100%
        ) !important;
}

.irfan-central-inner{
    background:
        radial-gradient(
            ellipse at 48% 46%,
            rgba(190,135,48,.09) 0%,
            rgba(145,95,25,.045) 38%,
            transparent 72%
        ) !important;

    opacity:.16 !important;
    mix-blend-mode:soft-light !important;



    position: absolute;
    right: 4px;
    bottom: 4px;

    background: black;
    color: white;

    padding: 3px 5px;
    font-size: 11px;
}
/* ВРЕМЕННАЯ ДИАГНОСТИКА КЛИКАБЕЛЬНЫХ ЗОН */
#irfanCanvas .hotspot.nav {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    outline: none !important;
    background: transparent !important;
box-shadow: none !important;
    z-index: 100001 !important;
    pointer-events: auto !important;
}

/* ===== IRFAN QUICK ZONES — EXACT POSITION CORRECTION 06.09.2026 ===== */
/* Проекты: 0.5 cm влево, 2.2 cm вниз. */
.q-projects{
    transform:translate(-0.5cm, 2.2cm) !important;
}

/* Аналитика: 1.6 cm вправо, 1 cm вниз. */
.q-analytics{
    transform:translate(1.6cm, 1cm) !important;
}

/* Home finishing pass — must remain last so older decorative rules cannot
   recreate the former central screen or its left divider. */
.canvas::before{
    content:none !important;
}

.irfan-central-fx{
    display:none !important;
}

.reference{
    /* A restrained lift for the library scene, including its darkest areas. */
    filter:brightness(1.05) contrast(1.025) saturate(1.02);
}

.canvas::after{
    content:none !important;
}

.home-background-seam{
    position:absolute;
    z-index:2;
    display:block;
    pointer-events:none;
    background:#090b0d;
    mix-blend-mode:darken;
    opacity:.98;
}

/* These three masks neutralise only legacy raster dividers.  They sit beneath
   all live controls and do not alter the layout or borders of cards. */
.home-background-seam--vertical{
    top:0;
    left:19.98%;
    width:.58%;
    height:100%;
}

.home-background-seam--header{
    top:14.4%;
    left:20.12%;
    width:79.88%;
    height:.42%;
}

.home-background-seam--lower{
    top:62.35%;
    left:20.12%;
    width:79.88%;
    height:.48%;
}
