
:root {
  --ink-0: #ffffff; --ink-25: #fafafc; --ink-50: #f5f6f9; --ink-100: #eceef3; --ink-200: #e3e5ec; --ink-300: #c6c9d3;
  --ink-400: #9b9ca8; --ink-500: #636675; --ink-600: #545766; --ink-700: #3b3d4a; --ink-800: #23242d; --ink-850: #17181f;
  --ink-900: #121218; --ink-925: #0c0c10; --ink-950: #060608;
  --iris-50: #f3efff; --iris-100: #e7deff; --iris-200: #cbb8ff; --iris-300: #a98bff; --iris-500: #8052ff; --iris-600: #6a3ff0;
  --iris-700: #5530cc; --iris-900: #2e1a70;
  --verdant-50: #e8f8f2; --verdant-200: #8ff0d3; --verdant-500: #17c290; --verdant-600: #0e9a72; --verdant-700: #097553;
  --verdant-brand: #15846e;
  --rose-50: #ffeef0; --rose-300: #ff8f95; --rose-500: #ff5a63; --rose-600: #e03a45; --rose-700: #b62b36;
  --saffron-50: #fff6e0; --saffron-400: #ffc94d; --saffron-500: #ffb829; --saffron-600: #db9100; --saffron-700: #925f00;
  --bg: var(--ink-950);
  --surface: var(--ink-925);
  --surface-2: var(--ink-900);
  --card-bg: linear-gradient(180deg, var(--surface-2), var(--surface)); 
  --card-shadow: none;
  --pop-shadow: 0 12px 30px rgba(0, 0, 0, .45); 
  --sheet-shadow: 0 -14px 40px rgba(0, 0, 0, .5); 
  --sunken: rgba(255, 255, 255, .03); 
  --border: rgba(255, 255, 255, .09);
  --border-strong: rgba(255, 255, 255, .14);
  --text: var(--ink-0);
  --text-2: #c2c3cc;
  --text-3: var(--ink-400);
  --accent: var(--iris-500); 
  --accent-hover: var(--iris-600);
  --on-accent: #fff;
  --accent-text: var(--iris-300); 
  --accent-fg: #fff; 
  --accent-soft: rgba(128, 82, 255, .16); 
  --accent-line: rgba(128, 82, 255, .45); 
  --accent-ring: rgba(128, 82, 255, .18); 
  --accent-tint: rgba(128, 82, 255, .1); 
  --bar: rgba(128, 82, 255, .14); 
  --tier-1: var(--iris-500);
  --tier-2: color-mix(in oklch, var(--iris-500) 66%, var(--verdant-500));
  --tier-3: color-mix(in oklch, var(--iris-500) 33%, var(--verdant-500));
  --tier-4: var(--verdant-500);
  --ch-google: var(--iris-500);
  --ch-yandex: var(--saffron-500);
  --ch-ads: var(--rose-500);
  --ch-partners: var(--verdant-500);
  --ch-telegram: var(--iris-200);
  --ch-content: var(--verdant-200);
  --ch-other: var(--ink-500);
  --ch-direct: var(--ink-700);
  --yes: var(--verdant-500); 
  --no: var(--rose-500);
  --warn: var(--saffron-500);
  --c-yes: var(--verdant-200); 
  --c-no: var(--rose-300); 
  --c-loss: var(--rose-300);
  --c-info: var(--iris-200);
  --c-warn: #ffd98a; 
  --placeholder: #5d5f6b;
  --glow: rgba(128, 82, 255, .1); 
  --input-bg: #08080b;
  --appbar-bg: rgba(6, 6, 8, .7);
  --hover: rgba(255, 255, 255, .06);
  --subtle: var(--sunken);
  --zebra: rgba(255, 255, 255, .025); 
  --footer-bg: linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .015));
  --footer-hl: inset 0 1px 0 rgba(255, 255, 255, .08);
  --c-ok: var(--c-yes); 
  --void: #000;
  --panel: var(--surface);
  --panel-2: var(--surface-2);
  --white: var(--text); 
  --silver: var(--text-2);
  --ash: var(--text-3);
  --iris: var(--accent);
  --iris-dim: var(--accent-hover);
  --saffron: var(--warn);
  --verdant: var(--verdant-brand);
  --verdant-bright: var(--yes);
  --danger: var(--no);
  --line: var(--border);
  --line-2: var(--border-strong);
}
[data-theme='light'] {
  --ch-other: var(--ink-400);
  --ch-direct: var(--ink-300);
  --bg: var(--ink-50);
  --surface: var(--ink-0);
  --surface-2: var(--ink-25);
  --card-bg: var(--ink-0);
  --card-shadow: 0 1px 2px rgba(18, 18, 24, .04), 0 2px 10px rgba(18, 18, 24, .05);
  --pop-shadow: 0 2px 6px rgba(18, 18, 24, .06), 0 12px 32px rgba(18, 18, 24, .12);
  --sheet-shadow: 0 -8px 30px rgba(18, 18, 24, .12);
  --sunken: var(--ink-50);
  --zebra: var(--ink-50);
  --border: var(--ink-200);
  --border-strong: var(--ink-300);
  --text: var(--ink-900);
  --text-2: var(--ink-700);
  --text-3: var(--ink-500);
  --accent: var(--iris-600);
  --accent-hover: var(--iris-700);
  --accent-text: var(--iris-700);
  --accent-fg: var(--iris-700); 
  --accent-soft: var(--iris-50);
  --accent-line: rgba(106, 63, 240, .4);
  --accent-ring: rgba(106, 63, 240, .2);
  --accent-tint: rgba(106, 63, 240, .07);
  --bar: var(--ink-200);
  --tier-1: var(--iris-600);
  --tier-2: color-mix(in oklch, var(--iris-600) 66%, var(--verdant-700));
  --tier-3: color-mix(in oklch, var(--iris-600) 33%, var(--verdant-700));
  --tier-4: var(--verdant-700);
  --yes: var(--verdant-700);
  --no: var(--rose-700);
  --warn: var(--saffron-700);
  --c-yes: var(--verdant-700);
  --c-no: var(--rose-700);
  --c-loss: var(--rose-700);
  --c-info: var(--iris-700);
  --c-warn: var(--saffron-700);
  --placeholder: #8a8d9a;
  --glow: transparent;
  --input-bg: var(--ink-0);
  --appbar-bg: rgba(255, 255, 255, .82);
  --hover: rgba(18, 18, 24, .045);
  --footer-bg: var(--ink-0);
  --footer-hl: none;
  --void: #fff;
}
:root {
  --fs-2xs: 11px; 
  --fs-xs: 12px; 
  --fs-sm: 13px; 
  --fs-base: 14px; 
  --fs-md: 15px; 
  --fs-lg: 16px; 
  --fs-xl: 18px; 
  --fs-2xl: 20px; 
  --fs-3xl: 24px; 
  --fs-4xl: 30px; 
  --fs-display: 40px; 
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700; 
  --lh-tight: 1.2; 
  --lh-snug: 1.35; 
  --lh-body: 1.5; 
  --sp-0: 2px;
  --sp-1: 4px;
  --sp-1h: 6px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
  --sp-7: 40px;
  --sp-8: 48px;
  --sp-10: 64px;
  --radius-xs: 4px; 
  --radius-sm: 8px; 
  --radius-md: 12px; 
  --radius-lg: 16px; 
  --radius-pill: 999px; 
  --radius: var(--radius-md); 
}
@media (max-width: 760px), (hover: none) and (pointer: coarse) {
  input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='color']), select, textarea {
    font-size: max(16px, var(--input-fs, 16px)) !important;
  }
}
.burger-ico { display: inline-flex; flex-direction: column; justify-content: center; gap: 4px; width: 18px; height: 18px; flex: none; }
.burger-ico i { display: block; width: 100%; height: 2px; border-radius: 2px; background: currentColor; transition: width 0.15s ease-out; }
.burger-ico i:last-child { width: 55%; }
.burger-ico[data-side='left'] { align-items: flex-start; }
.burger-ico[data-side='right'] { align-items: flex-end; }
@media (prefers-reduced-motion: reduce) { .burger-ico i { transition: none; } }
.ph-search { position: relative; flex: 0 1 auto; width: var(--ph-search-w0, 128px); min-width: 0; display: flex; align-items: center; gap: var(--sp-2);
  height: var(--ph-search-h, 40px); padding: 0 var(--sp-3); background: transparent; border: 1px solid transparent; border-radius: var(--radius-pill);
  color: var(--text-2); cursor: text;
  transition: width .3s cubic-bezier(0.2, 0.8, 0.2, 1), padding .3s cubic-bezier(0.2, 0.8, 0.2, 1), background-color .2s, border-color .2s, box-shadow .2s; }
.ph-search:hover { color: var(--text); }
.ph-search:focus-within, .ph-search:has(input:not(:placeholder-shown)) { width: var(--ph-search-w1, 320px); background: var(--input-bg); border-color: var(--border-strong); color: var(--text-3);
  transition: width .32s cubic-bezier(0.2, 0.8, 0.2, 1), padding .32s cubic-bezier(0.2, 0.8, 0.2, 1), background-color .15s, border-color .15s, box-shadow .2s; }
.ph-search:focus-within { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-ring); }
.ph-search-ico { flex: none; width: 18px; height: 18px; }
.ph-search input { flex: 1; min-width: 0; height: 100%; margin: 0; padding: 0; background: none; border: 0; outline: 0; box-shadow: none; color: var(--text); font: inherit; font-size: var(--fs-base); cursor: inherit; }
.ph-search input::placeholder { color: currentColor; opacity: 1; }
.ph-search:focus-within input::placeholder { color: var(--placeholder); }
.ph-search input::-webkit-search-cancel-button { display: none; }
.ph-search.ph-search-ico-only { --ph-search-w0: var(--ph-search-h, 40px); padding: 0 calc((var(--ph-search-h, 40px) - 20px) / 2); }
.ph-search.ph-search-ico-only:not(:focus-within):not(:has(input:not(:placeholder-shown))) input { flex: 0 0 0; width: 0; opacity: 0; }
@media (prefers-reduced-motion: reduce) { .ph-search { transition: none !important; } }
.rv [data-reveal]:not([data-in]),
.rv [data-reveal]:not([data-in]) *:not(.spin) { animation-play-state: paused !important; } 
@media print { .rv [data-reveal]:not([data-in]), .rv [data-reveal]:not([data-in]) * { animation: none !important; } }
@keyframes ph-drop-in { from { opacity: 0; transform: translateY(-6px) scale(0.98); } to { opacity: 1; transform: none; } }
@keyframes ph-drop-item { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
.menu-drop { transform-origin: top center; animation: ph-drop-in 0.18s cubic-bezier(0.2, 0.8, 0.2, 1) backwards; }
.menu-drop > * { animation: ph-drop-item 0.22s cubic-bezier(0.2, 0.8, 0.2, 1) backwards; }
.menu-drop > :nth-child(2) { animation-delay: 25ms; }
.menu-drop > :nth-child(3) { animation-delay: 50ms; }
.menu-drop > :nth-child(4) { animation-delay: 75ms; }
.menu-drop > :nth-child(5) { animation-delay: 100ms; }
.menu-drop > :nth-child(6) { animation-delay: 125ms; }
.menu-drop > :nth-child(7) { animation-delay: 150ms; }
.menu-drop > :nth-child(8) { animation-delay: 175ms; }
.menu-drop > :nth-child(n + 9) { animation-delay: 200ms; } 
@keyframes ph-bar-grow { from { transform: scaleX(0); } to { transform: none; } }
.bar-grow { transform-origin: left center; animation: ph-bar-grow 0.8s cubic-bezier(0.2, 0.8, 0.2, 1) 0.15s backwards; }
html[data-anim='off'] .menu-drop, html[data-anim='off'] .menu-drop > *, html[data-anim='off'] .bar-grow { animation: none !important; }
@media (prefers-reduced-motion: reduce) {
  .menu-drop, .menu-drop > *, .bar-grow { animation: none !important; }
}
