/* ============================================================
   VAIMAN · VISUAL V2 (вид сайта на 01.10.2026)
   Слой поверх файлов 20.06 (ember-light / components / layout / generators).
   Откуда значения (ничего не придумано):
   - палитра светлая и тёмная: тема приложения 4.0.8 (app408/data/theme.json),
     она совпадает с запасными значениями var(--x, …) на страницах сайта 01.10
     (--accent-fill #F26B21, --accent-fill-light #F57A1E, --edge-hair rgba(15,52,68,.16), --on-accent #111 …);
   - шрифты: критический CSS 01.10 (id="vm-crit"): «Outfit» на 01.10 указывал на файлы Manrope,
     заголовки-витрина Oswald, цифры Montserrat (vboot-v2);
   - фон тела и шапки: vm-crit 01.10 (#F2EEE6 / тёмная #0F3444), тёмная тема по умолчанию для новых (01.10).
   Где 01.10 не сохранился (внешний layout.css 01.10), помечено «восстановлено».
   ============================================================ */

/* ── Шрифты V2 ── */
@font-face{font-family:'Outfit';src:url('../fonts/Manrope-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Manrope-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Manrope-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Manrope-Bold.woff2') format('woff2');font-weight:700 900;font-display:swap}
@font-face{font-family:'Oswald';src:url('../fonts/Oswald-SemiBold.ttf') format('truetype');font-weight:500 600;font-display:swap}
@font-face{font-family:'Oswald';src:url('../fonts/Oswald-Bold.ttf') format('truetype');font-weight:700 900;font-display:swap}
@font-face{font-family:'Montserrat';src:url('../fonts/Montserrat-ExtraLight.ttf') format('truetype');font-weight:200;font-display:swap}
@font-face{font-family:'Montserrat';src:url('../fonts/Montserrat-Light.ttf') format('truetype');font-weight:300 400;font-display:swap}
@font-face{font-family:'Montserrat';src:url('../fonts/Montserrat-SemiBold.ttf') format('truetype');font-weight:500 700;font-display:swap}

/* ── Палитра V2, светлая ── */
:root{
  --k:1;
  --bg-primary:#F2EEE6; --bg-secondary:#FAF8F3; --bg-tertiary:#FFFFFF; --bg-inset:#E8E3D9;
  --text-primary:#111111; --text-secondary:#3A474E; --text-muted:#56636A;
  --accent-ember:#B8460A; --accent-ember-dark:#A83F08; --accent-ember-light:#F57A1E;
  --teal:#174A5E; --success:#1B7450; --warning:#B8460A; --danger:#C0392B;
  --border-light:rgba(15,52,68,.12); --border-strong:rgba(200,116,47,.55);
  --accent-fill:#F26B21; --accent-fill-light:#F57A1E; --accent-fill-deep:#E85D12;
  --accent-grad:linear-gradient(135deg,#F57A1E,#F26B21); --accent-rgb:245,122,30;
  --on-accent:#111111; --petrol:#174A5E; --petrol-2:#0F3444; --petrol-rgb:23,74,94; --on-petrol:#F2EEE6; --on-petrol-muted:#D3DCE0;
  --copper:#C8742F; --copper-light:#E0955A; --amber:#F59B1F;
  --edge-hair:rgba(15,52,68,.16); --edge-copper:rgba(200,116,47,.45); --hover-tint:rgba(15,52,68,.06); --btn-line:rgba(15,52,68,.32);
  --field-bg:#FFFFFF; --focus-ring:rgba(245,122,30,.22); --chip-on-bg:#0F3444; --chip-on-fg:#F2EEE6;
  --shadow-rgb:15,52,68; --nav-ic-disc:#F2EEE6;
  --font-display:Oswald,'Arial Narrow',sans-serif; --font-num:Montserrat,sans-serif;
  --shadow-1:0 2px 8px rgba(15,52,68,.06); --shadow-2:0 4px 16px rgba(15,52,68,.10); --shadow-3:0 12px 40px rgba(15,52,68,.18);
  --bg-page-grad:linear-gradient(#F2EEE6,#F2EEE6);
  --bg-sidebar-grad:linear-gradient(#F2EEE6,#F2EEE6);
  --sidebar-border:rgba(15,52,68,.12);
  --header-bg:#F2EEE6;
}
/* ── Палитра V2, тёмная (по умолчанию для новых с 01.10) ── */
[data-theme="dark"]{
  --bg-primary:#0F3444; --bg-secondary:#174A5E; --bg-tertiary:#1B5368; --bg-inset:#0C2C3A;
  --text-primary:#F2EEE6; --text-secondary:#D3DCE0; --text-muted:#B2C3CA;
  --accent-ember:#F59B1F; --accent-ember-dark:#F57A1E; --accent-ember-light:#F7B25A;
  --teal:#8CB8CC; --success:#3FAE8C; --warning:#F59B1F; --danger:#F08A7E;
  --border-light:rgba(242,238,230,.12); --border-strong:rgba(224,149,90,.6);
  --accent-fill:#F26B21; --accent-fill-light:#F7913A; --accent-fill-deep:#F26B21;
  --accent-grad:linear-gradient(135deg,#F7913A,#F26B21);
  --edge-hair:rgba(242,238,230,.18); --edge-copper:rgba(224,149,90,.45); --hover-tint:rgba(242,238,230,.08); --btn-line:rgba(242,238,230,.38);
  --field-bg:#0C2C3A; --chip-on-bg:#F2EEE6; --chip-on-fg:#111111; --shadow-rgb:4,22,30; --nav-ic-disc:transparent;
  --shadow-1:0 2px 8px rgba(4,22,30,.25); --shadow-2:0 4px 16px rgba(4,22,30,.35); --shadow-3:0 12px 40px rgba(4,22,30,.5);
  --bg-page-grad:linear-gradient(#0F3444,#0F3444);
  --bg-sidebar-grad:linear-gradient(#0F3444,#0F3444);
  --sidebar-border:rgba(242,238,230,.12);
  --header-bg:#0F3444;
  color-scheme:dark;
}

/* ── Критический CSS 01.10 (vm-crit), перенесён как был ── */
html{font-size:clamp(calc(16px * var(--k, 1)),.6vw + calc(9px * var(--k, 1)),calc(19px * var(--k, 1)));-webkit-text-size-adjust:100%}
body{margin:0;font-family:Manrope,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#F2EEE6;color:#111111;min-height:100dvh}
:where([data-theme=dark]) body{background:#0F3444;color:#F2EEE6}
.site-header{background:var(--header-bg)}
.form-input{display:block;width:100%;padding:calc(12px * var(--k, 1)) calc(18px * var(--k, 1));border:1px solid rgba(15,52,68,.16);border-radius:999px;background:#fff;box-sizing:border-box}
:where([data-theme=dark]) .form-input{background:#0C2C3A;border-color:rgba(242,238,230,.18);color:#F2EEE6}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:calc(12px * var(--k, 1)) calc(22px * var(--k, 1));font-weight:700;cursor:pointer;font-family:Manrope,sans-serif}
.btn-ember-pro,.btn-primary{background:linear-gradient(135deg,#F57A1E,#F26B21);color:#111111}
.btn-block{width:100%}.btn-lg{padding:calc(14px * var(--k, 1)) calc(20px * var(--k, 1));font-size:calc(16px * var(--k, 1))}
.tnum,#balance-value,.header-balance,.hist-item-cost,.price,.cost,.count,[data-tnum]{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}

/* ── Заставка vboot-v2 (01.10, «страницу прогрузки тоже стилизовать»), перенесена ── */
#vboot{position:fixed;inset:0;z-index:99999;background:#0F3444;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;transition:opacity .45s ease}
#vboot.hide{opacity:0;pointer-events:none}
#vboot::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(55% 45% at 50% 44%,rgba(245,122,30,.20),rgba(245,122,30,0) 70%)}
#vboot::after{content:'.ИИ-ПЛАТФОРМА · ФОТО · ВИДЕО · МУЗЫКА';position:absolute;left:0;right:0;bottom:46px;text-align:center;font:600 11px/1 'Montserrat',system-ui,sans-serif;letter-spacing:.3em;color:#F7B25A;opacity:0;animation:vbootfade .5s .5s ease forwards}
#vboot .vboot-v{position:relative;width:78px;height:78px;object-fit:contain;animation:vbootpop .55s cubic-bezier(.34,1.56,.64,1) both}
#vboot .vboot-name{position:relative;font-family:'Oswald','Arial Narrow',system-ui,sans-serif;font-weight:700;font-size:52px;line-height:1;letter-spacing:.04em;color:#F2EEE6;opacity:0;animation:vbootfade .5s .45s ease forwards}
#vboot .vboot-name em{font-style:normal;color:#F57A1E}
#vboot .vboot-bar{position:relative;width:150px;height:3px;border-radius:3px;background:rgba(242,238,230,.16);overflow:hidden;opacity:0;animation:vbootfade .4s .6s ease forwards}
#vboot .vboot-bar i{display:block;width:42%;height:100%;border-radius:3px;background:#F57A1E;animation:vbootbar 1.15s ease-in-out infinite}
@keyframes vbootpop{from{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes vbootfade{to{opacity:1}}
@keyframes vbootbar{0%{transform:translateX(-130%)}100%{transform:translateX(360%)}}

/* ── Меню 01.10: 3D-значки .nav3d 38×38 (разметка 01.10; правила восстановлены, файл 01.10 не сохранился) ── */
.sidebar-item .nav3d{width:38px;height:38px;flex-shrink:0;object-fit:contain;border-radius:12px;background:var(--nav-ic-disc);transition:transform .25s cubic-bezier(.2,1,.3,1)}
.sidebar-item:hover .nav3d{transform:translateY(-2px) scale(1.06)}
.sidebar-item.active .nav3d{transform:translateY(-1px) scale(1.06)}
.sidebar-item{gap:12px;color:var(--text-primary)}
.sidebar-item.active{background:var(--hover-tint)!important;border-radius:13px}
.sidebar-item.active > span:not(.nav3d){color:var(--text-primary);font-weight:800}
[data-theme="dark"] .sidebar-item.active > span:not(.nav3d){color:var(--text-primary)}
.sidebar-group{color:var(--text-muted)!important;font-family:'Montserrat',sans-serif!important;font-weight:600!important;letter-spacing:.24em!important}
[data-theme="dark"] .sidebar-group{color:var(--text-muted)!important}
button.sidebar-item{border:0;background:none;font:inherit;cursor:pointer}
.sidebar-social{display:flex;gap:10px;padding:6px 14px 18px}
.sidebar-social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--edge-hair);color:var(--text-secondary);text-decoration:none;font:700 12px/1 Manrope,sans-serif}
.site-logo-icon{width:30px;height:30px;object-fit:contain}
.site-logo-text{font-family:'Oswald','Arial Narrow',sans-serif!important;font-weight:700!important;letter-spacing:.04em!important;color:var(--text-primary)!important;background:none!important;-webkit-text-fill-color:currentColor!important}
.site-logo-text em{font-style:normal;color:#F57A1E;-webkit-text-fill-color:#F57A1E}

/* ── Кнопки шапки V2 «круг с волосяной кромкой» (01.10, header-admin-entry; распространено на соседние кнопки как в 01.10) ── */
.header-theme-toggle,.header-notifications,.header-lang-toggle{border-radius:50%!important;border:1px solid var(--edge-hair)!important;background:transparent!important;color:var(--text-primary)!important}
.header-theme-toggle:hover,.header-notifications:hover,.header-lang-toggle:hover{background:var(--hover-tint)!important}
.header-lang-toggle{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font:700 12px/1 Manrope,sans-serif}
/* баланс в шапке — как в layout.css 18.07 (тёмная плашка «··· Ⓧ»); своего цвета не придумываем */
.balance-icon{margin-left:3px}
@media (max-width:599px){.header-lang-toggle,.header-theme-toggle{display:none!important}}

/* ── Объявление сверху (annbar 01.10): скрыто, пока сервер не пришлёт текст ── */
#vaiman-annbar{display:none}

/* ── Гость: оболочка скрыта (01.10, .no-auth) ── */
.no-auth .site-header,.no-auth .site-sidebar,.no-auth .mobile-tabs,.no-auth .nav-overlay{display:none!important}
.no-auth .site-content{margin:0!important;padding:0!important}

/* ── Нижняя панель на телефоне не показывается с 01.10 (комментарий в разметке 01.10) ── */
.mobile-tabs{display:none!important}

/* ── Тосты ── */
.toast-container{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:600;display:flex;flex-direction:column;gap:8px;pointer-events:none}
.v2-toast{pointer-events:auto;padding:12px 18px;border-radius:14px;background:var(--petrol-2);color:var(--on-petrol);font:600 14px/1.35 Manrope,sans-serif;box-shadow:var(--shadow-2);max-width:88vw}
.v2-toast.error{background:#8E2A1F;color:#fff}
.v2-toast.success{background:#1B7450;color:#fff}
[data-theme="dark"] .v2-toast{background:#F2EEE6;color:#111}

/* ── Плашка «нет связи с сервером / заглушка» для превью ── */
.v2-stub-note{margin:10px 0 0;padding:10px 14px;border-radius:12px;border:1px dashed var(--edge-copper);color:var(--text-secondary);font-size:13px;background:var(--hover-tint)}
