/* ============================================================================
 * ACTIVE floating-widget theme: "owl" — тёплое золотистое свечение,
 * «дыхание» и подсветка. Картинка обрезана по нижнему краю, поэтому она
 * ЖЁСТКО приклеена к низу экрана: никаких translateY/rotate, растёт только
 * вверх от нижней грани (transform-origin: 50% 100%), плюс запас bottom: -6px,
 * чтобы срез никогда не выглядывал.
 * Рассчитана на фото-картинку без резких пикселей
 * (/templates/images/left_bottom/owl.png, 581x430, прозрачный фон).
 *
 * Этот файл ВСЕГДА называется widget.css — только он подключается на сайт.
 * Прошлые/выключенные темы лежат рядом с подчёркиванием (_new_core.css,
 * _owl.css, _halloween.css) и не подключаются. Смена темы = подмена файла,
 * кэш пробивается сам (версия = mtime).
 *
 * Картинка, ссылка, подпись, угол, размер и дата снятия — в `floating_widget`
 * (conf_var.php). Здесь только внешний вид.
 * ==========================================================================*/

.mw-core-widget {
    /* --- theme --- */
    --mw-core-rgb:        255, 196, 92;   /* основное свечение (тёплое золото) */
    --mw-core-rgb-2:      196, 122, 32;   /* внешнее свечение (янтарь) */
    --mw-core-rgb-bright: 255, 232, 170;  /* пик пульсации */
    --mw-core-label-color: #fff4dd;
    --mw-core-label-bg:    rgba(38, 26, 12, .88);
    --mw-core-breathe: 1.025;             /* насколько «дышит» (растёт вверх) */

    /* --- geometry (перебивается инлайном из конфига) --- */
    --mw-core-w: 160px;
    --mw-core-h: 118px;
    --mw-core-scale: 1;

    position: fixed;
    bottom: -6px;                         /* запас: обрезанный низ уходит за край экрана */
    z-index: 1030;
    width: var(--mw-core-w);
    height: var(--mw-core-h);
    display: block;
    text-decoration: none;
    transform-origin: 50% 100%;           /* всё масштабируется вверх, низ прибит */
    transform: scale(var(--mw-core-scale));
    transition: transform .3s ease;
    animation: mw-core-float 6s ease-in-out infinite;
}

.mw-core-widget--left  { left: 18px; }
.mw-core-widget--right { right: 18px; }

.mw-core-widget:hover {
    --mw-core-scale: 1.06;
}

.mw-core-widget__img {
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: bottom left;
    image-rendering: auto;                /* фото, а не пиксель-арт */
    filter: drop-shadow(0 0 7px rgba(var(--mw-core-rgb), .55)) drop-shadow(0 3px 10px rgba(0, 0, 0, .5));
    animation: mw-core-glow 4s ease-in-out infinite;
}

/* мягкое тёплое сияние за совой */
.mw-core-widget__aura {
    position: absolute;
    z-index: 0;
    left: 42%;
    top: 55%;
    width: 150%;
    height: 120%;
    margin: 0;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: radial-gradient(ellipse at center, rgba(var(--mw-core-rgb), .30) 0%, rgba(var(--mw-core-rgb-2), .14) 45%, rgba(var(--mw-core-rgb), 0) 72%);
    animation: mw-core-pulse 4s ease-in-out infinite;
    pointer-events: none;
}

/* кольца сове не нужно — гасим, разметка общая для всех тем */
.mw-core-widget__ring {
    display: none;
}

.mw-core-widget__label {
    position: absolute;
    z-index: 3;
    left: 50%;
    bottom: 14px;                         /* с учётом bottom: -6px у самого виджета */
    transform: translateX(-50%) translateY(6px);
    white-space: nowrap;
    padding: 4px 11px;
    border-radius: 12px;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: .3px;
    color: var(--mw-core-label-color);
    background: var(--mw-core-label-bg);
    border: 1px solid rgba(var(--mw-core-rgb), .5);
    box-shadow: 0 0 12px rgba(var(--mw-core-rgb-2), .45);
    opacity: 0;
    transition: opacity .25s ease, transform .25s ease;
    pointer-events: none;
}

.mw-core-widget:hover .mw-core-widget__label {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.mw-core-widget:hover .mw-core-widget__img {
    animation-name: mw-core-glow-strong;
    animation-duration: 2s;
}

.mw-core-widget:hover .mw-core-widget__aura {
    animation-duration: 2s;
}

/* «дыхание»: только масштаб от нижней грани — сова никогда не отрывается от низа */
@keyframes mw-core-float {
    0%, 100% { transform: scale(var(--mw-core-scale)); }
    50%      { transform: scale(calc(var(--mw-core-scale) * var(--mw-core-breathe))); }
}

@keyframes mw-core-glow {
    0%, 100% { filter: drop-shadow(0 0 6px rgba(var(--mw-core-rgb), .45)) drop-shadow(0 3px 10px rgba(0, 0, 0, .5)); }
    50%      { filter: drop-shadow(0 0 14px rgba(var(--mw-core-rgb-bright), .8)) drop-shadow(0 3px 12px rgba(0, 0, 0, .55)); }
}

@keyframes mw-core-glow-strong {
    0%, 100% { filter: drop-shadow(0 0 12px rgba(var(--mw-core-rgb-bright), .75)) drop-shadow(0 3px 12px rgba(0, 0, 0, .55)); }
    50%      { filter: drop-shadow(0 0 22px rgba(var(--mw-core-rgb-bright), 1)) drop-shadow(0 0 34px rgba(var(--mw-core-rgb-2), .7)); }
}

@keyframes mw-core-pulse {
    0%, 100% { transform: translate(-50%, -50%) scale(.9); opacity: .6; }
    50%      { transform: translate(-50%, -50%) scale(1.06); opacity: 1; }
}

@media (max-width: 991px) {
    .mw-core-widget {
        width: calc(var(--mw-core-w) * .65);
        height: calc(var(--mw-core-h) * .65);
    }
    .mw-core-widget--left  { left: 6px; }
    .mw-core-widget--right { right: 6px; }
    .mw-core-widget__label { display: none; }
}

@media (max-width: 575px) {
    .mw-core-widget {
        width: calc(var(--mw-core-w) * .5);
        height: calc(var(--mw-core-h) * .5);
        opacity: .9;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mw-core-widget,
    .mw-core-widget__img,
    .mw-core-widget__aura {
        animation: none;
    }
    .mw-core-widget {
        transform: scale(var(--mw-core-scale));
        transition: transform .25s ease;
    }
}
