/* ==========================================================================
   🏆 ТРОФЕИ СЕЗОНА — скины интерфейса, шевроны у ников, Зал славы
   Подключается в index.html; логика — js/trophies.js, сервер — services/season_finale.py
   --------------------------------------------------------------------------
   1. СКИН (класс df-skin-s<сезон>-<tier> на <html>) ставит js/trophies.js
      ТОЛЬКО хозяину надетого трофея: перекрашивает его собственный интерфейс —
      заголовки окон, панели IE, полосу сезона, панель задач, кнопки, ссылки.
      Остальные посетители этих классов не получают.
   2. ШЕВРОН у ника (::after у [data-season-uid]) видят все: правила под
      конкретные id генерирует js/trophies.js из GET /api/season/trophies.
      Здесь только общий вид (.df-chev-*): эмблема 14px справа от ника.
   3. Мини-превью трофея (.trophy-tile) — для коллекции и площадки.
   Тиры: r1 r2 r3 r10 r50 — «Лучшие Стреказоиды»; s3 s10 s50 — Зал славы;
   hw — «Тыквенный Жнец», трофей Хэллоуина из лавки в ленте (js/halloween_trophy.js).
   ========================================================================== */

/* ---------- 1. Общая механика скинов ---------- */
html[class*="df-skin-"] .ie6-header-zone .xp-title-bar,
html[class*="df-skin-"] .xpv-title { position: relative; overflow: hidden; }
html[class*="df-skin-"] .ie6-header-zone .xp-title-bar > *,
html[class*="df-skin-"] .xpv-title > * { position: relative; z-index: 1; }
html[class*="df-skin-"] .ie6-menu-item:hover { background-color: var(--sk-hi) !important; color: var(--sk-hi-text, #fff) !important; }
html[class*="df-skin-"] { scrollbar-color: var(--sk-mid) var(--sk-panel); }

html[class*="df-skin-"] .ie6-header-zone .xp-title-bar,
html[class*="df-skin-"] .xp-title-bar,
html[class*="df-skin-"] .xpv-title,
html[class*="df-skin-"] .xp-widget-title {
    background: var(--sk-pattern, none), var(--sk-cap) !important;
    text-shadow: 1px 1px 0 var(--sk-cap-shadow) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.28), inset 0 -1px 0 rgba(0, 0, 0, 0.35) !important;
}
html[class*="df-skin-"] .ie6-menu-bar,
html[class*="df-skin-"] .ie6-nav-toolbar,
html[class*="df-skin-"] .ie6-address-bar {
    background: var(--sk-panel) !important;
    border-bottom-color: var(--sk-panel-edge) !important;
}
html[class*="df-skin-"] .season-strip {
    background: var(--sk-pattern-soft, none), linear-gradient(to bottom, var(--sk-strip-a) 0%, var(--sk-strip-b) 100%) !important;
    border-bottom-color: var(--sk-panel-edge) !important;
    color: var(--sk-strip-text, #2a2a2a);
}
html[class*="df-skin-"] .xpe-taskbar {
    background: var(--sk-pattern, none), var(--sk-task) !important;
    border-top-color: var(--sk-panel-edge) !important;
}
html[class*="df-skin-"] .xpe-task {
    background: var(--sk-task-btn) !important;
}
/* Рамка окна и кнопки «свернуть / развернуть» — в тон скину (значки-SVG остаются, меняется только подложка) */
html[class*="df-skin-"] body > .ie6-window-wrapper { border-color: var(--xp-window-border) !important; }
html[class*="df-skin-"] .ie6-header-zone .xp-btn-minimize,
html[class*="df-skin-"] .ie6-header-zone .xp-btn-maximize { background-color: var(--sk-mid) !important; filter: saturate(0) brightness(1.1) sepia(0.15); }

/* ---------- r1 «Корона Улья»: чёрный лак и золото хитина, блик крыла ---------- */
html.df-skin-s2-r1 {
    --xp-blue-dark: #2a1d05; --xp-blue-luna: #8a6100; --xp-blue-light: #e2b23a;
    --xp-blue-gradient: linear-gradient(to bottom, #3b2a08 0%, #1c1304 100%);
    --xp-window-border: #6b4c0a; --app-btn-primary: #8a6100; --app-btn-primary-hover: #5c4000;
    --xp-orange-accent: #e2b23a;
    --sk-cap: linear-gradient(180deg, #4a3a14 0%, #1b1405 10%, #120d03 55%, #2a1e06 92%, #c99a1e 96%, #6b4c0a 100%);
    --sk-cap-shadow: #000;
    --sk-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cpath d='M6 0 L12 3.5 L12 10.5 L6 14 L0 10.5 L0 3.5 Z M18 -7 L24 -3.5 L24 3.5 L18 7 L12 3.5 L12 -3.5 Z M18 7 L24 10.5 L24 17.5' fill='none' stroke='%23c99a1e' stroke-opacity='.16' stroke-width='.8'/%3E%3C/svg%3E");
    --sk-pattern-soft: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cpath d='M6 0 L12 3.5 L12 10.5 L6 14 L0 10.5 L0 3.5 Z' fill='none' stroke='%238a6100' stroke-opacity='.12' stroke-width='.8'/%3E%3C/svg%3E");
    --sk-panel: linear-gradient(to bottom, #f7efd6 0%, #e8d9a9 100%);
    --sk-panel-edge: #a8812a;
    --sk-strip-a: #2a1e06; --sk-strip-b: #120d03; --sk-strip-text: #f3d77a;
    --sk-task: linear-gradient(180deg, #5a4513 0%, #241904 12%, #120d03 60%, #2a1e06 100%);
    --sk-task-btn: linear-gradient(180deg, #a07a1c 0%, #6b4c0a 55%, #4a3406 100%);
    --sk-hi: #8a6100; --sk-mid: #a07a1c;
}
html.df-skin-s2-r1 .season-strip a,
html.df-skin-s2-r1 .season-strip .season-timer-value { color: #ffe08a !important; }
html.df-skin-s2-r1 .ie6-header-zone .xp-title-bar::after {
    content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background: linear-gradient(105deg, transparent 0%, transparent 38%, rgba(255, 232, 160, 0.42) 48%, rgba(255, 255, 255, 0.65) 50%, rgba(255, 232, 160, 0.42) 52%, transparent 62%, transparent 100%);
    transform: translateX(-120%);
    animation: df-skin-glint 11s ease-in-out infinite;
}
html.df-skin-s2-r1 .ie6-header-zone .xp-title-icon {
    background-image: url("/static/trophies/s2_r1.svg") !important; background-size: 18px 18px !important;
}

/* ---------- r2 «Серебряное крыло»: графит и серебро, прожилки крыла ---------- */
html.df-skin-s2-r2 {
    --xp-blue-dark: #2b3036; --xp-blue-luna: #5c6670; --xp-blue-light: #aab4be;
    --xp-blue-gradient: linear-gradient(to bottom, #6a747e 0%, #2b3036 100%);
    --xp-window-border: #4a525a; --app-btn-primary: #5c6670; --app-btn-primary-hover: #3d454d;
    --sk-cap: linear-gradient(180deg, #9aa5b0 0%, #4f5962 9%, #353c43 50%, #4a535c 90%, #d7dee5 95%, #5c6670 100%);
    --sk-cap-shadow: #14181c;
    --sk-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='16' viewBox='0 0 40 16'%3E%3Cpath d='M0 13 C10 4 22 2 40 6 M0 9 C12 12 26 13 40 11 M14 0 C16 6 18 10 24 16 M30 0 C28 6 30 10 34 16' fill='none' stroke='%23ffffff' stroke-opacity='.13' stroke-width='.7'/%3E%3C/svg%3E");
    --sk-panel: linear-gradient(to bottom, #f4f6f8 0%, #dde2e7 100%);
    --sk-panel-edge: #8a949e;
    --sk-strip-a: #eef1f4; --sk-strip-b: #cfd6dd;
    --sk-task: linear-gradient(180deg, #7d8792 0%, #4a535c 12%, #353c43 60%, #2b3036 100%);
    --sk-task-btn: linear-gradient(180deg, #8f9aa5 0%, #5c6670 55%, #444c54 100%);
    --sk-hi: #5c6670; --sk-mid: #8f9aa5;
}
html.df-skin-s2-r2 .ie6-header-zone .xp-title-bar::after {
    content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background: linear-gradient(105deg, transparent 40%, rgba(255, 255, 255, 0.35) 50%, transparent 60%);
    transform: translateX(-120%);
    animation: df-skin-glint 14s ease-in-out infinite 3s;
}
html.df-skin-s2-r2 .ie6-header-zone .xp-title-icon {
    background-image: url("/static/trophies/s2_r2.svg") !important; background-size: 18px 18px !important;
}

/* ---------- r3 «Бронзовый панцирь»: шоколад и бронза, броневые пластины ---------- */
html.df-skin-s2-r3 {
    --xp-blue-dark: #3d2412; --xp-blue-luna: #8a5326; --xp-blue-light: #d29a62;
    --xp-blue-gradient: linear-gradient(to bottom, #8a5326 0%, #3d2412 100%);
    --xp-window-border: #6b3f1d; --app-btn-primary: #8a5326; --app-btn-primary-hover: #5e3818;
    --sk-cap: linear-gradient(180deg, #b77a45 0%, #6b3f1d 9%, #4a2b14 50%, #6b3f1d 90%, #e0a86e 95%, #7a4419 100%);
    --sk-cap-shadow: #1c0f05;
    --sk-pattern: repeating-linear-gradient(90deg, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 34px, rgba(0, 0, 0, 0.22) 34px, rgba(255, 210, 160, 0.18) 36px, rgba(0, 0, 0, 0) 37px);
    --sk-panel: linear-gradient(to bottom, #f8ede2 0%, #e9d3bd 100%);
    --sk-panel-edge: #a8764a;
    --sk-strip-a: #f6e8da; --sk-strip-b: #e2c6a8;
    --sk-task: linear-gradient(180deg, #a06a3a 0%, #5e3818 12%, #4a2b14 60%, #3d2412 100%);
    --sk-task-btn: linear-gradient(180deg, #b77a45 0%, #8a5326 55%, #6b3f1d 100%);
    --sk-hi: #8a5326; --sk-mid: #b77a45;
}
html.df-skin-s2-r3 .ie6-header-zone .xp-title-icon {
    background-image: url("/static/trophies/s2_r3.svg") !important; background-size: 18px 18px !important;
}

/* ---------- r10 «Стальной хитин»: оружейная сталь, сотовая броня ---------- */
html.df-skin-s2-r10 {
    --xp-blue-dark: #262c32; --xp-blue-luna: #4a5560; --xp-blue-light: #8796a3;
    --xp-blue-gradient: linear-gradient(to bottom, #5c6874 0%, #262c32 100%);
    --xp-window-border: #3a434c; --app-btn-primary: #4a5560; --app-btn-primary-hover: #333b43;
    --sk-cap: linear-gradient(180deg, #7c8893 0%, #3e4750 10%, #2c333a 55%, #3e4750 92%, #9aa6b1 96%, #2c333a 100%);
    --sk-cap-shadow: #0f1215;
    --sk-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='10' viewBox='0 0 17 10'%3E%3Cpath d='M4.25 0 L8.5 2.5 L8.5 7.5 L4.25 10 L0 7.5 L0 2.5 Z M12.75 5 L17 7.5' fill='none' stroke='%23b8c4cf' stroke-opacity='.14' stroke-width='.7'/%3E%3C/svg%3E");
    --sk-panel: linear-gradient(to bottom, #eef0f2 0%, #d5dadf 100%);
    --sk-panel-edge: #7c8893;
    --sk-strip-a: #e8ebee; --sk-strip-b: #c9d0d6;
    --sk-task: linear-gradient(180deg, #6a7682 0%, #3e4750 12%, #2c333a 60%, #262c32 100%);
    --sk-task-btn: linear-gradient(180deg, #6a7682 0%, #4a5560 55%, #3a434c 100%);
    --sk-hi: #4a5560; --sk-mid: #6a7682;
}
html.df-skin-s2-r10 .ie6-header-zone .xp-title-icon {
    background-image: url("/static/trophies/s2_r10.svg") !important; background-size: 18px 18px !important;
}

/* ---------- r50 «Полевой камуфляж Роя»: олива ---------- */
html.df-skin-s2-r50 {
    --xp-blue-dark: #3b4320; --xp-blue-luna: #5a6432; --xp-blue-light: #8c9a4a;
    --xp-blue-gradient: linear-gradient(to bottom, #6e7a3c 0%, #3b4320 100%);
    --xp-window-border: #4a5427; --app-btn-primary: #5a6432; --app-btn-primary-hover: #454d26;
    --sk-cap: linear-gradient(180deg, #8c9a4a 0%, #5a6432 10%, #454f20 55%, #5a6432 100%);
    --sk-cap-shadow: #1c200c;
    --sk-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='24' viewBox='0 0 60 24'%3E%3Cpath d='M2 6 q6 -6 14 -1 t12 4 q-4 6 -12 4 t-14 -7 Z M34 14 q8 -5 16 0 t8 6 q-8 4 -16 0 t-8 -6 Z' fill='%232c3315' fill-opacity='.28'/%3E%3Cpath d='M22 18 q4 -3 9 0 q-2 4 -9 0 Z M44 2 q5 -2 10 2 q-5 3 -10 -2 Z' fill='%23a8b45e' fill-opacity='.22'/%3E%3C/svg%3E");
    --sk-panel: linear-gradient(to bottom, #f2f1e2 0%, #dedbbf 100%);
    --sk-panel-edge: #8c9a4a;
    --sk-strip-a: #eeeddc; --sk-strip-b: #d6d4b4;
    --sk-task: linear-gradient(180deg, #7a8742 0%, #4a5427 12%, #3b4320 60%, #2c3315 100%);
    --sk-task-btn: linear-gradient(180deg, #7a8742 0%, #5a6432 55%, #454f20 100%);
    --sk-hi: #5a6432; --sk-mid: #7a8742;
}
html.df-skin-s2-r50 .ie6-header-zone .xp-title-icon {
    background-image: url("/static/trophies/s2_r50.svg") !important; background-size: 18px 18px !important;
}

/* ---------- s3 «Генштаб Улья»: янтарь и багрянец, сургучная печать ---------- */
html.df-skin-s2-s3 {
    --xp-blue-dark: #5e0d0b; --xp-blue-luna: #9c1d16; --xp-blue-light: #e0663a;
    --xp-blue-gradient: linear-gradient(to bottom, #b8321f 0%, #5e0d0b 100%);
    --xp-window-border: #7a1410; --app-btn-primary: #9c1d16; --app-btn-primary-hover: #6e130f;
    --xp-orange-accent: #ffb52e;
    --sk-cap: linear-gradient(180deg, #d4553a 0%, #8c1a14 9%, #6a110d 50%, #8c1a14 90%, #ffc24a 95%, #7a1410 100%);
    --sk-cap-shadow: #2a0504;
    --sk-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='22' viewBox='0 0 64 22'%3E%3Cpath d='M0 15 L10 11 L20 14 L30 8 L40 12 L52 6 L64 9' fill='none' stroke='%23ffc24a' stroke-opacity='.2' stroke-width='.8' stroke-dasharray='3 2'/%3E%3Cpath d='M46 15 l3 -3 m0 3 l-3 -3' stroke='%23ffc24a' stroke-opacity='.3' stroke-width='.9'/%3E%3C/svg%3E");
    --sk-panel: linear-gradient(to bottom, #fbefdc 0%, #f0d6ae 100%);
    --sk-panel-edge: #b5652a;
    --sk-strip-a: #5e0d0b; --sk-strip-b: #3a0706; --sk-strip-text: #ffd27a;
    --sk-task: linear-gradient(180deg, #b8321f 0%, #7a1410 12%, #5e0d0b 60%, #3a0706 100%);
    --sk-task-btn: linear-gradient(180deg, #d98a2a 0%, #b5652a 55%, #8a4718 100%);
    --sk-hi: #9c1d16; --sk-mid: #b8321f;
}
html.df-skin-s2-s3 .season-strip a,
html.df-skin-s2-s3 .season-strip .season-timer-value { color: #ffd27a !important; }
html.df-skin-s2-s3 .ie6-header-zone .xp-title-icon {
    background-image: url("/static/trophies/s2_s3.svg") !important; background-size: 18px 18px !important;
}
html.df-skin-s2-s3 .ie6-header-zone .xp-title-bar::after {
    content: ""; position: absolute; right: 92px; top: 50%; width: 22px; height: 22px; margin-top: -11px; z-index: 0;
    border-radius: 50% !important; pointer-events: none;
    background: radial-gradient(circle at 40% 35%, #e04a3a 0%, #a51e16 55%, #6a0e0b 100%);
    box-shadow: 0 0 0 2px rgba(255, 194, 74, 0.55), 1px 2px 3px rgba(0, 0, 0, 0.5);
    opacity: 0.9;
}

/* ---------- s10 «Штурмовое жало»: ржавчина и хаки, сигнальная лента ---------- */
html.df-skin-s2-s10 {
    --xp-blue-dark: #4a2a0e; --xp-blue-luna: #8a5320; --xp-blue-light: #c4793a;
    --xp-blue-gradient: linear-gradient(to bottom, #9a5520 0%, #4a2a0e 100%);
    --xp-window-border: #6b3812; --app-btn-primary: #8a5320; --app-btn-primary-hover: #613810;
    --sk-cap: linear-gradient(180deg, #b0743a 0%, #7a4418 10%, #5e3410 55%, #7a4418 100%);
    --sk-cap-shadow: #1f1205;
    --sk-pattern: repeating-linear-gradient(135deg, rgba(243, 211, 106, 0) 0 18px, rgba(243, 211, 106, 0.16) 18px 26px, rgba(0, 0, 0, 0.18) 26px 34px);
    --sk-panel: linear-gradient(to bottom, #f1ead8 0%, #ddd0ae 100%);
    --sk-panel-edge: #9a6a34;
    --sk-strip-a: #ece3c8; --sk-strip-b: #d4c49a;
    --sk-task: linear-gradient(180deg, #9a5f2a 0%, #6b3812 12%, #4a2a0e 60%, #36200a 100%);
    --sk-task-btn: repeating-linear-gradient(135deg, #c99a2e 0 6px, #2a1c08 6px 12px);
    --sk-hi: #8a5320; --sk-mid: #9a5f2a;
}
html.df-skin-s2-s10 .xpe-task { color: #fff; text-shadow: 1px 1px 0 #000; }
html.df-skin-s2-s10 .ie6-header-zone .xp-title-icon {
    background-image: url("/static/trophies/s2_s10.svg") !important; background-size: 18px 18px !important;
}

/* ---------- s50 «Окопный жук»: земля и мох, маскировочная сеть ---------- */
html.df-skin-s2-s50 {
    --xp-blue-dark: #2d3618; --xp-blue-luna: #4f5a2c; --xp-blue-light: #7f8a4c;
    --xp-blue-gradient: linear-gradient(to bottom, #66703a 0%, #2d3618 100%);
    --xp-window-border: #3b4320; --app-btn-primary: #4f5a2c; --app-btn-primary-hover: #3b4320;
    --sk-cap: linear-gradient(180deg, #6e5a3a 0%, #4a3b24 10%, #3a2e1b 55%, #4f5a2c 100%);
    --sk-cap-shadow: #15100a;
    --sk-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M0 7 L7 0 L14 7 L7 14 Z' fill='none' stroke='%23b8c27a' stroke-opacity='.16' stroke-width='.8'/%3E%3Cpath d='M5 3 q2 -2 4 0 q-2 2 -4 0 Z' fill='%23a0ac5e' fill-opacity='.25'/%3E%3C/svg%3E");
    --sk-panel: linear-gradient(to bottom, #efece0 0%, #d9d3bc 100%);
    --sk-panel-edge: #7a6e4c;
    --sk-strip-a: #ebe7d6; --sk-strip-b: #d2cbae;
    --sk-task: linear-gradient(180deg, #6e5a3a 0%, #4a3b24 12%, #3a2e1b 60%, #2d3618 100%);
    --sk-task-btn: linear-gradient(180deg, #7f8a4c 0%, #4f5a2c 55%, #3b4320 100%);
    --sk-hi: #4f5a2c; --sk-mid: #7f8a4c;
}
html.df-skin-s2-s50 .ie6-header-zone .xp-title-icon {
    background-image: url("/static/trophies/s2_s50.svg") !important; background-size: 18px 18px !important;
}

/* ---------- hw «Тыквенный Жнец» (Хэллоуин, лавка в ленте): полночь, тыквенный огонь, летучие мыши ---------- */
html.df-skin-s2-hw {
    --xp-blue-dark: #1c0f26; --xp-blue-luna: #c2540a; --xp-blue-light: #ff9a2e;
    --xp-blue-gradient: linear-gradient(to bottom, #3a1f4a 0%, #140a1c 100%);
    --xp-window-border: #4a2860; --app-btn-primary: #c2540a; --app-btn-primary-hover: #8a3a04;
    --xp-orange-accent: #ff8a1e;
    --sk-cap: linear-gradient(180deg, #5a3270 0%, #2a1438 10%, #170b20 55%, #2a1438 90%, #ff8a1e 95%, #8a3a04 100%);
    --sk-cap-shadow: #000;
    --sk-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='18' viewBox='0 0 46 18'%3E%3Cg fill='%23ff9a2e' fill-opacity='.22'%3E%3Cpath d='M2 7 C4 4 6 4 7 6 C7.6 5 8.4 5 9 6 C10 4 12 4 14 7 C12 6.4 11 7 10.4 8.4 C9.6 7.6 8.6 7.6 8 9 C7.4 7.6 6.4 7.6 5.6 8.4 C5 7 4 6.4 2 7 Z'/%3E%3Cpath d='M26 13 C27.4 11 28.8 11 29.5 12.4 C29.9 11.7 30.5 11.7 30.9 12.4 C31.6 11 33 11 34.4 13 C33 12.6 32.4 13 32 14 C31.4 13.4 30.8 13.4 30.2 14.4 C29.8 13.4 29.2 13.4 28.6 14 C28.2 13 27.4 12.6 26 13 Z'/%3E%3C/g%3E%3Ccircle cx='40' cy='4' r='.8' fill='%23fff3c4' fill-opacity='.35'/%3E%3Ccircle cx='20' cy='15' r='.6' fill='%23fff3c4' fill-opacity='.3'/%3E%3C/svg%3E");
    --sk-pattern-soft: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='18' viewBox='0 0 46 18'%3E%3Cpath d='M2 7 C4 4 6 4 7 6 C7.6 5 8.4 5 9 6 C10 4 12 4 14 7 C12 6.4 11 7 10.4 8.4 C9.6 7.6 8.6 7.6 8 9 C7.4 7.6 6.4 7.6 5.6 8.4 C5 7 4 6.4 2 7 Z' fill='%23ff9a2e' fill-opacity='.16'/%3E%3C/svg%3E");
    --sk-panel: linear-gradient(to bottom, #fbf1e4 0%, #efd7b8 100%);
    --sk-panel-edge: #8a4a1a;
    --sk-strip-a: #2a1438; --sk-strip-b: #120818; --sk-strip-text: #ffc27a;
    --sk-task: linear-gradient(180deg, #4a2860 0%, #24123a 12%, #140a1c 60%, #2a1438 100%);
    --sk-task-btn: linear-gradient(180deg, #ffa640 0%, #d8620e 55%, #8a3a04 100%);
    --sk-hi: #c2540a; --sk-mid: #d8620e; --sk-hi-text: #fff;
}
html.df-skin-s2-hw .season-strip a,
html.df-skin-s2-hw .season-strip .season-timer-value { color: #ffb347 !important; }
/* Туман и мерцание тыквенного огня по заголовку главного окна */
html.df-skin-s2-hw .ie6-header-zone .xp-title-bar::after {
    content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background: radial-gradient(ellipse 30% 140% at 50% 120%, rgba(255, 138, 30, 0.38), transparent 70%),
                linear-gradient(90deg, transparent 0%, rgba(160, 255, 140, 0.10) 30%, transparent 55%, rgba(160, 255, 140, 0.08) 80%, transparent 100%);
    background-size: 100% 100%, 200% 100%;
    animation: df-skin-hw-fog 9s ease-in-out infinite;
}
html.df-skin-s2-hw .ie6-header-zone .xp-title-icon {
    background-image: url("/static/trophies/s2_hw.svg") !important; background-size: 18px 18px !important;
}
@keyframes df-skin-hw-fog {
    0%, 100% { background-position: 0 0, 0 0; opacity: 0.75; }
    50% { background-position: 0 0, 100% 0; opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
    html.df-skin-s2-hw .ie6-header-zone .xp-title-bar::after { animation: none !important; }
}

@keyframes df-skin-glint {
    0%, 72% { transform: translateX(-120%); }
    88%, 100% { transform: translateX(120%); }
}
@media (prefers-reduced-motion: reduce) {
    html[class*="df-skin-"] .ie6-header-zone .xp-title-bar::after { animation: none !important; transform: translateX(-120%); }
}

/* ---------- 2. Шевроны у ников (видят все) ---------- */
.df-chev::after,
[data-df-chev]::after {
    content: "";
    display: inline-block;
    width: 14px; height: 14px;
    margin-left: 3px;
    vertical-align: -2px;
    background: no-repeat center / 14px 14px;
    -webkit-text-fill-color: initial;
}

/* Плашки в шапке профиля: «Чемпион II сезона», «Маршал Роя · II сезон» */
.df-trophy-badges { display: inline-flex; flex-wrap: wrap; gap: 4px; margin-left: 6px; vertical-align: middle; }
.df-trophy-badges:empty { display: none; }
.df-tb {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 1px 7px 1px 3px;
    font: bold 10px Tahoma, sans-serif; letter-spacing: 0.2px;
    color: #fff; text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.55);
    border: 1px solid rgba(0, 0, 0, 0.45);
    border-radius: 0 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3);
    white-space: nowrap; cursor: help;
    -webkit-text-fill-color: #fff;
}
.df-tb img { width: 16px; height: 16px; }
.df-tb-r1  { background: linear-gradient(180deg, #4a3a14, #120d03); color: #ffe08a; -webkit-text-fill-color: #ffe08a; border-color: #c99a1e; }
.df-tb-r2  { background: linear-gradient(180deg, #7d8792, #353c43); }
.df-tb-r3  { background: linear-gradient(180deg, #b77a45, #4a2b14); }
.df-tb-r10 { background: linear-gradient(180deg, #6a7682, #2c333a); }
.df-tb-r50 { background: linear-gradient(180deg, #7a8742, #3b4320); }
.df-tb-s3  { background: linear-gradient(180deg, #d4553a, #6a110d); color: #ffd27a; -webkit-text-fill-color: #ffd27a; border-color: #ffb52e; }
.df-tb-s10 { background: repeating-linear-gradient(135deg, #8a5320 0 8px, #6b3812 8px 16px); }
.df-tb-s50 { background: linear-gradient(180deg, #6e5a3a, #2d3618); }

/* ---------- 3. Мини-превью трофея (коллекция, площадка) ---------- */
.trophy-tile {
    position: relative; display: block;
    width: 84px; height: 56px;
    border: 1px solid #222; background: #ece9d8;
    box-shadow: 1px 1px 0 #fff inset, 2px 2px 4px rgba(0, 0, 0, 0.35);
    overflow: hidden;
}
.trophy-tile .tt-bar {
    position: absolute; left: 0; right: 0; top: 0; height: 12px;
    background: var(--sk-pattern, none), var(--sk-cap);
    display: flex; align-items: center; gap: 3px; padding: 0 3px;
}
.trophy-tile .tt-bar b { flex: 1; height: 3px; background: rgba(255, 255, 255, 0.55); }
.trophy-tile .tt-bar s { width: 8px; height: 8px; background: #c43d22; border: 1px solid #fff; text-decoration: none; }
.trophy-tile .tt-ico { width: 9px; height: 9px; background: var(--tt-icon) no-repeat center / 9px 9px; }
.trophy-tile .tt-body {
    position: absolute; left: 0; right: 0; top: 12px; bottom: 10px;
    background: var(--sk-panel);
    display: flex; align-items: center; justify-content: center;
}
.trophy-tile .tt-chev { width: 26px; height: 26px; background: var(--tt-icon) no-repeat center / 26px 26px; filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.35)); }
.trophy-tile .tt-task {
    position: absolute; left: 0; right: 0; bottom: 0; height: 10px;
    background: var(--sk-task);
}
.trophy-tile .tt-task i { position: absolute; left: 2px; top: 2px; width: 22px; height: 6px; background: var(--sk-task-btn); }
/* Переменные скина для превью — те же, что у html.df-skin-* (не весь интерфейс, только плитка) */
.trophy-tile.trophy-s2-r1  { --tt-icon: url("/static/trophies/s2_r1.svg");  --sk-cap: linear-gradient(180deg, #4a3a14 0%, #120d03 60%, #c99a1e 100%); --sk-panel: linear-gradient(#f7efd6, #e8d9a9); --sk-task: linear-gradient(#5a4513, #120d03); --sk-task-btn: linear-gradient(#a07a1c, #4a3406); }
.trophy-tile.trophy-s2-r2  { --tt-icon: url("/static/trophies/s2_r2.svg");  --sk-cap: linear-gradient(180deg, #9aa5b0 0%, #353c43 60%, #d7dee5 100%); --sk-panel: linear-gradient(#f4f6f8, #dde2e7); --sk-task: linear-gradient(#7d8792, #2b3036); --sk-task-btn: linear-gradient(#8f9aa5, #444c54); }
.trophy-tile.trophy-s2-r3  { --tt-icon: url("/static/trophies/s2_r3.svg");  --sk-cap: linear-gradient(180deg, #b77a45 0%, #4a2b14 60%, #e0a86e 100%); --sk-panel: linear-gradient(#f8ede2, #e9d3bd); --sk-task: linear-gradient(#a06a3a, #3d2412); --sk-task-btn: linear-gradient(#b77a45, #6b3f1d); }
.trophy-tile.trophy-s2-r10 { --tt-icon: url("/static/trophies/s2_r10.svg"); --sk-cap: linear-gradient(180deg, #7c8893 0%, #2c333a 60%, #9aa6b1 100%); --sk-panel: linear-gradient(#eef0f2, #d5dadf); --sk-task: linear-gradient(#6a7682, #262c32); --sk-task-btn: linear-gradient(#6a7682, #3a434c); }
.trophy-tile.trophy-s2-r50 { --tt-icon: url("/static/trophies/s2_r50.svg"); --sk-cap: linear-gradient(180deg, #8c9a4a 0%, #454f20 100%); --sk-panel: linear-gradient(#f2f1e2, #dedbbf); --sk-task: linear-gradient(#7a8742, #2c3315); --sk-task-btn: linear-gradient(#7a8742, #454f20); }
.trophy-tile.trophy-s2-s3  { --tt-icon: url("/static/trophies/s2_s3.svg");  --sk-cap: linear-gradient(180deg, #d4553a 0%, #6a110d 60%, #ffc24a 100%); --sk-panel: linear-gradient(#fbefdc, #f0d6ae); --sk-task: linear-gradient(#b8321f, #3a0706); --sk-task-btn: linear-gradient(#d98a2a, #8a4718); }
.trophy-tile.trophy-s2-s10 { --tt-icon: url("/static/trophies/s2_s10.svg"); --sk-cap: repeating-linear-gradient(135deg, #7a4418 0 8px, #c99a2e 8px 11px, #5e3410 11px 16px); --sk-panel: linear-gradient(#f1ead8, #ddd0ae); --sk-task: linear-gradient(#9a5f2a, #36200a); --sk-task-btn: repeating-linear-gradient(135deg, #c99a2e 0 4px, #2a1c08 4px 8px); }
.trophy-tile.trophy-s2-s50 { --tt-icon: url("/static/trophies/s2_s50.svg"); --sk-cap: linear-gradient(180deg, #6e5a3a 0%, #3a2e1b 60%, #4f5a2c 100%); --sk-panel: linear-gradient(#efece0, #d9d3bc); --sk-task: linear-gradient(#6e5a3a, #2d3618); --sk-task-btn: linear-gradient(#7f8a4c, #3b4320); }

.trophy-tile.trophy-s2-hw  { --tt-icon: url("/static/trophies/s2_hw.svg");  --sk-cap: linear-gradient(180deg, #5a3270 0%, #170b20 60%, #ff8a1e 100%); --sk-panel: linear-gradient(#fbf1e4, #efd7b8); --sk-task: linear-gradient(#4a2860, #140a1c); --sk-task-btn: linear-gradient(#ffa640, #8a3a04); }
.df-tb-hw  { background: linear-gradient(180deg, #5a3270, #170b20); color: #ffb347; -webkit-text-fill-color: #ffb347; border-color: #ff8a1e; }

.xp-collection-trophy { font-size: 11px; line-height: 1.35; color: #333; margin: 2px 0 4px; }

/* ---------- 4. Зал славы (окно XP) ---------- */
.season-hall-link { color: inherit !important; font-weight: bold; text-decoration: underline; }
.dfh-overlay {
    position: fixed; inset: 0; z-index: 100500;
    background: rgba(0, 0, 0, 0.35);
    display: flex; align-items: center; justify-content: center; padding: 16px;
}
.dfh-win {
    width: 720px; max-width: 100%; max-height: calc(100vh - 32px);
    display: flex; flex-direction: column;
    background: #ece9d8; border: 3px solid var(--xp-window-border, #0831d9); border-top: 0;
    font: 11px Tahoma, sans-serif; color: #000;
    box-shadow: 4px 6px 22px rgba(0, 0, 0, 0.45);
}
.dfh-win .xp-title-bar { display: flex; align-items: center; gap: 6px; padding: 4px 4px 4px 8px; }
.dfh-win .xp-title-bar .dfh-t { flex: 1; font-size: 12px; }
.dfh-win .xp-title-bar button {
    width: 21px; height: 21px; border: 1px solid #fff; color: #fff; font-weight: bold; cursor: pointer;
    background: #c43d22; border-radius: 0 !important;
}
.dfh-tabs { display: flex; gap: 2px; padding: 8px 8px 0; }
.dfh-tab {
    padding: 4px 12px; cursor: pointer; border: 1px solid #919b9c; border-bottom: 0;
    background: linear-gradient(#fff, #ecebe5); border-radius: 0 !important;
}
.dfh-tab.on { background: #fcfcfe; font-weight: bold; position: relative; top: 1px; }
.dfh-body { flex: 1; overflow: auto; margin: 0 8px 8px; padding: 10px; background: #fcfcfe; border: 1px solid #919b9c; }
.dfh-intro { margin: 0 0 8px; color: #444; line-height: 1.4; }
.dfh-row { display: flex; align-items: center; gap: 8px; padding: 4px 6px; border-bottom: 1px solid #eee; }
.dfh-row:nth-child(-n+3) { background: #fffbea; }
.dfh-place { width: 26px; text-align: right; font-weight: bold; color: #555; }
.dfh-row img.dfh-ins { width: 20px; height: 20px; }
.dfh-row img.dfh-ava { width: 24px; height: 24px; object-fit: cover; border: 1px solid #aaa; }
.dfh-name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dfh-name a { color: #0b3fa6; font-weight: bold; text-decoration: none; }
.dfh-score { font-weight: bold; color: #6b4c0a; white-space: nowrap; }
.dfh-tiers { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; margin-top: 10px; }
.dfh-tier { display: flex; gap: 8px; padding: 6px; border: 1px solid #d6d2c2; background: #fff; }
.dfh-tier .trophy-tile { flex-shrink: 0; }
.dfh-tier b { display: block; margin-bottom: 2px; }
.dfh-empty { padding: 20px; text-align: center; color: #666; }
@media (max-width: 600px) {
    .dfh-overlay { padding: 0; }
    .dfh-win { max-height: 100vh; height: 100vh; border-width: 0; }
}
