/* latin-ext */
@font-face {
  font-family: 'Bebas Neue';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg69CK48gW7PXoo9WdhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Bebas Neue';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg69CK48gW7PXoo9WlhyyTh89Y.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggqxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggOxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggmxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggexSvfedN4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggqxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggOxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggmxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggexSvfedN4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggqxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggOxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggmxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggexSvfedN4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggqxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggOxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggmxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggexSvfedN4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggqxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggOxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggmxSvfedN62Zw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggexSvfedN4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459WRhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459W1hyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459WRhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459W1hyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459WRhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459W1hyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* ============================================================
   SEO Factory — ADPASS Liquid
   Светлый рабочий контур редакции: жидкое стекло на кремовом
   холсте, синий как единственное действие, лайм как сигнал.
   Тёмная тема — тот же язык с инвертированными поверхностями.
   ============================================================ */

:root{
  color-scheme:light;
  --canvas:#F0F0F4;
  --canvas-deep:#E7E7EE;
  --ink:#0D0D0D;
  --ink-2:#18181B;
  --muted:#52525B;
  --muted-2:#71717A;
  --accent:#1A4DFF;
  --accent-2:#0F3BCC;
  --accent-soft:rgba(15,118,110,.10);
  --accent-ink:#FFFFFF;
  --lime:#D6F560;
  --lime-2:#C4F135;
  --green:#16A34A;
  --amber:#D97706;
  --danger:#E63B2B;

  --glass:rgba(255,255,255,.55);
  --glass-heavy:rgba(255,255,255,.74);
  --glass-solid:#FFFFFF;
  --glass-soft:rgba(255,255,255,.40);
  --glass-hover:rgba(255,255,255,.86);
  --stroke:var(--glass);
  --stroke-strong:var(--glass);
  --edge-top:rgba(255,255,255,.70);
  --edge-bottom:rgba(0,0,0,.16);
  --field:rgba(255,255,255,.74);

  --shadow:0 20px 48px var(--glass),0 2px 8px var(--glass);
  --shadow-soft:0 10px 26px var(--glass);
  --shadow-lift:0 26px 60px var(--glass);

  --glass-blur:40px;
  --glass-blur-heavy:56px;
  --radius-xl:20px;
  --radius-lg:16px;
  --radius-md:12px;
  --radius-sm:9px;
  --focus:0 0 0 3px rgba(15,118,110,.32);

  --font:"Manrope",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-head:"Montserrat","Manrope",sans-serif;
  --font-display:"Bebas Neue","Montserrat",sans-serif;
  --serif:Georgia,"Times New Roman",serif;
  --mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,monospace;

  /* алиасы прежней системы, чтобы вся геометрия компонентов осталась рабочей */
  --bg:var(--canvas);
  --bg-deep:var(--canvas-deep);
  --panel:var(--glass);
  --panel-strong:var(--glass-heavy);
  --panel-soft:var(--glass-soft);
  --panel-hover:var(--glass-hover);
  --stroke-accent:rgba(15,118,110,.30);
  --text:var(--ink);
  --text-soft:var(--ink-2);
  --accent-glow:var(--accent-soft);
  --blue:var(--accent);

  /* «бумага» — редактор, превью и публикация остаются белым листом
     независимо от темы (см. UI_DESIGN_SYSTEM.md), поэтому эти токены
     не переопределяются в html[data-theme="dark"] */
  --paper:#FFFFFF;
  --paper-muted:#F9F9FB;
  --paper-ink:#111318;
  --paper-text-muted:#525866;
  --paper-border:#C9CED6;
  --paper-surface-alt:#F4F5F7;
  --paper-surface-alt-2:#F1F3F5;
  --paper-accent:#0F766E;
  --green-on-pill:#12813C;
}

/* ---------- тёмная тема ---------- */
html[data-theme="dark"]{
  color-scheme:dark;
  --canvas:#0A0A0F;
  --canvas-deep:#07070B;
  --ink:#E9E9EE;
  --ink-2:#F6F6F8;
  --muted:#A1A1AA;
  --muted-2:#8B8B95;
  --accent:#5C81FF;
  --accent-2:#3A63F5;
  --accent-soft:rgba(92,129,255,.16);
  --accent-ink:#06070D;
  --glass:var(--glass);
  --glass-heavy:var(--glass);
  --glass-solid:#141420;
  --glass-soft:rgba(255,255,255,.05);
  --glass-hover:var(--glass-heavy);
  --stroke:rgba(255,255,255,.10);
  --stroke-strong:rgba(255,255,255,.20);
  --edge-top:rgba(255,255,255,.16);
  --edge-bottom:rgba(0,0,0,.50);
  --field:rgba(255,255,255,.06);
  --shadow:0 24px 60px rgba(0,0,0,.45),0 2px 10px rgba(0,0,0,.30);
  --shadow-soft:0 12px 30px rgba(0,0,0,.32);
  --shadow-lift:0 30px 70px rgba(0,0,0,.55);
  --green:#4ADE80;
  --amber:#FBBF24;
  --danger:#F87171;
}
@media (prefers-color-scheme:dark){
  html:not([data-theme]){
    color-scheme:dark;
    --canvas:#0A0A0F;--canvas-deep:#07070B;--ink:#E9E9EE;--ink-2:#F6F6F8;
    --muted:#A1A1AA;--muted-2:#8B8B95;
    --accent:#5C81FF;--accent-2:#3A63F5;--accent-soft:rgba(92,129,255,.16);--accent-ink:#06070D;
    --glass:var(--glass);--glass-heavy:var(--glass);--glass-solid:#141420;
    --glass-soft:rgba(255,255,255,.05);--glass-hover:var(--glass-heavy);
    --stroke:rgba(255,255,255,.10);--stroke-strong:rgba(255,255,255,.20);
    --edge-top:rgba(255,255,255,.16);--edge-bottom:rgba(0,0,0,.50);--field:rgba(255,255,255,.06);
    --shadow:0 24px 60px rgba(0,0,0,.45),0 2px 10px rgba(0,0,0,.30);
    --shadow-soft:0 12px 30px rgba(0,0,0,.32);--shadow-lift:0 30px 70px rgba(0,0,0,.55);
    --green:#4ADE80;--amber:#FBBF24;--danger:#F87171;
  }
}

/* ---------- холст ---------- */
html{scroll-behavior:smooth;background:var(--canvas)}
body{
  margin:0;min-height:100vh;color:var(--ink);overflow-x:hidden;
  font:15px/1.55 var(--font);
  font-feature-settings:'tnum' on,'lnum' on;
  -webkit-font-smoothing:antialiased;
  background:
    radial-gradient(ellipse 720px 620px at 12% 6%,rgba(214,245,96,.30) 0%,transparent 56%),
    radial-gradient(ellipse 820px 720px at 88% 92%,rgba(15,118,110,.18) 0%,transparent 56%),
    radial-gradient(ellipse 520px 420px at 72% 22%,rgba(15,118,110,.08) 0%,transparent 60%),
    var(--canvas);
  background-attachment:fixed;
}
html[data-theme="dark"] body{
  background:
    radial-gradient(ellipse 720px 620px at 12% 6%,rgba(15,118,110,.24) 0%,transparent 56%),
    radial-gradient(ellipse 820px 720px at 88% 92%,rgba(214,245,96,.09) 0%,transparent 56%),
    radial-gradient(ellipse 520px 420px at 72% 22%,rgba(15,118,110,.13) 0%,transparent 60%),
    var(--canvas);
  background-attachment:fixed;
}
@media (prefers-color-scheme:dark){
  html:not([data-theme]) body{
    background:
      radial-gradient(ellipse 720px 620px at 12% 6%,rgba(15,118,110,.24) 0%,transparent 56%),
      radial-gradient(ellipse 820px 720px at 88% 92%,rgba(214,245,96,.09) 0%,transparent 56%),
      radial-gradient(ellipse 520px 420px at 72% 22%,rgba(15,118,110,.13) 0%,transparent 60%),
      var(--canvas);
    background-attachment:fixed;
  }
}
body::before{content:none}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;min-height:100vh;font:14px/1.5 var(--font);background:radial-gradient(1100px 720px at 8% -10%,rgba(15,118,110,.20),transparent 56%),
  radial-gradient(920px 700px at 96% 6%,rgba(15,118,110,.18),transparent 58%),
  radial-gradient(760px 620px at 54% 106%,rgba(22,163,74,.07),transparent 58%),
  linear-gradient(145deg,var(--canvas) 0%,var(--canvas) 45%,var(--canvas) 100%);
  color:var(--text);overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(var(--glass) 1px,transparent 1px),linear-gradient(90deg,var(--glass) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,var(--glass),transparent 72%)}
a{color:inherit;text-underline-offset:3px}
p{margin:0}
h1,h2,h3{margin:0;color:var(--text)}
h1{font-size:clamp(28px,3vw,42px);line-height:1.02;letter-spacing:-.045em;font-weight:760}
h2{font-size:19px;line-height:1.2;letter-spacing:-.025em;font-weight:720}
h3{font-size:14px;line-height:1.25;letter-spacing:-.01em;font-weight:690}
button,input,select,textarea{font:inherit}
button,.btn{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--stroke);background:var(--glass);color:var(--text);border-radius:12px;padding:8px 12px;cursor:pointer;font-weight:650;text-decoration:none;box-shadow:inset 0 1px 0 rgba(255,255,255,0.06);transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
button:hover,.btn:hover{background:var(--glass);border-color:var(--stroke-strong);transform:translateY(-1px)}
button:active,.btn:active{transform:translateY(0)}
button:focus-visible,.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[contenteditable=true]:focus-visible,summary:focus-visible,a:focus-visible{outline:none;box-shadow:var(--focus);border-color:rgba(15,118,110,.48)}
button.primary,.btn.primary,.primary{background:linear-gradient(145deg,var(--accent),var(--accent) 54%,var(--accent-2));color:var(--accent-ink);border-color:rgba(164,153,255,.46);box-shadow:inset 0 1px 0 rgba(255,255,255,0.28),0 10px 24px rgba(15,118,110,.26)}
button.primary:hover,.btn.primary:hover{background:linear-gradient(145deg,var(--muted),var(--muted) 54%,var(--muted));box-shadow:inset 0 1px 0 rgba(255,255,255,0.32),0 14px 32px rgba(15,118,110,.31)}
button.danger,.danger{color:var(--amber);border-color:rgba(15,118,110,.23)}
button:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;transform:none}
.muted{color:var(--muted)}
.eyebrow{font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:750;margin-bottom:10px}
.app-shell{width:min(1680px,100%);margin:0 auto;display:grid;grid-template-columns:244px minmax(0,1fr);gap:20px;padding:18px}
.side-nav{position:sticky;top:18px;height:calc(100vh - 36px);align-self:start;padding:18px 13px;border:1px solid var(--stroke);border-radius:var(--radius-xl);background:linear-gradient(160deg,var(--glass),var(--glass));-webkit-backdrop-filter:blur(30px) saturate(150%);backdrop-filter:blur(30px) saturate(150%);box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden}
.side-nav::before,.card::before,.topbar::before,.glass-panel::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,var(--glass),transparent 25%,transparent 72%,var(--glass));mask:linear-gradient(#000,#000);opacity:.75}
.brand-lockup{position:relative;padding:8px 10px 17px;border-bottom:1px solid var(--stroke);margin-bottom:13px}.brand-mark{display:flex;align-items:center;gap:11px}.brand-orb{width:34px;height:34px;border-radius:11px;background:radial-gradient(circle at 30% 25%,var(--accent),var(--accent) 42%,var(--accent-2) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.48),0 8px 22px rgba(15,118,110,.24);position:relative}.brand-orb::after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;top:6px;left:7px;background:rgba(255,255,255,0.65);filter:blur(1px)}.brand-name{font-size:16px;font-weight:770;letter-spacing:-.025em}.brand-sub{display:block;color:var(--muted);font-size:11px;margin-top:1px}
.nav-section{padding:7px 8px 5px;color:var(--muted-2);font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:760}.nav-links{display:grid;gap:3px}.nav-link{position:relative;display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:11px;color:var(--muted);text-decoration:none;font-size:13px;font-weight:590;transition:.16s ease}.nav-link::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--glass);box-shadow:0 0 0 3px rgba(255,255,255,0.025)}.nav-link:hover{background:var(--glass);color:var(--text)}.nav-link.active{color:var(--accent-ink);background:linear-gradient(90deg,rgba(15,118,110,.15),var(--glass));box-shadow:inset 0 0 0 1px rgba(15,118,110,.13)}.nav-link.active::before{background:var(--accent);box-shadow:0 0 12px var(--accent-glow)}
.side-footer{margin-top:auto;padding:13px 9px 4px;border-top:1px solid var(--stroke);display:grid;gap:9px}.side-meta{font-size:11px;color:var(--muted)}
.app-main{min-width:0}.wrap{max-width:1420px;margin:0 auto;padding:4px 2px 80px}.top{position:relative;display:flex;justify-content:space-between;gap:22px;align-items:flex-start;margin-bottom:18px;padding:22px 24px;border:1px solid var(--stroke);border-radius:var(--radius-xl);background:linear-gradient(150deg,var(--glass),var(--glass));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(145%);backdrop-filter:blur(var(--glass-blur)) saturate(145%);box-shadow:var(--shadow)}.top .muted{max-width:760px;margin-top:8px;color:var(--green)}.actions{display:flex;gap:8px;flex-wrap:wrap}.top .actions{justify-content:flex-end;max-width:690px}
/* .btn задаёт display:inline-flex собственным классом, который старше
   браузерного [hidden] — без этой строки скрытая кнопка остаётся видимой. */
#primary-launch-action[hidden]{display:none}
.grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);gap:16px}.wide{grid-column:1/-1}section[id]{scroll-margin-top:22px}.card,.glass-panel{position:relative;isolation:isolate;background:linear-gradient(155deg,var(--glass),var(--glass));border:1px solid var(--stroke);border-radius:var(--radius-lg);padding:19px;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(145%);backdrop-filter:blur(var(--glass-blur)) saturate(145%);box-shadow:var(--shadow-soft);overflow:hidden}.card>*{position:relative;z-index:1}.card h2{display:flex;align-items:center;gap:10px;margin-bottom:12px}.card h2::before{content:"";display:block;width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--danger),var(--danger));box-shadow:0 0 16px var(--accent-glow)}.hero-card{background:linear-gradient(145deg,var(--glass),var(--glass));border-color:var(--glass)}
.material-hub{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:4px 4px 0}.material-hub h2{font-size:24px;margin:0}.material-tabs{display:flex;gap:5px;padding:5px;border:1px solid var(--stroke);border-radius:14px;background:var(--glass)}.material-tabs a{padding:8px 11px;border-radius:9px;color:var(--muted);font-size:12px;font-weight:680;text-decoration:none}.material-tabs a:hover{color:var(--text)}.material-tabs a.active{color:var(--accent-ink);background:rgba(15,118,110,.16);box-shadow:inset 0 0 0 1px rgba(15,118,110,.18)}
.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.section-copy{max-width:840px}
.checks{display:flex;gap:9px 14px;margin:9px 0 13px;flex-wrap:wrap}.checks label{margin:0;font-size:13px;color:var(--text-soft);display:flex;align-items:center;gap:7px}.status,.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--stroke);border-radius:999px;background:var(--glass);font-size:11px;line-height:1.1;color:var(--muted);white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,0.04)}.status::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--muted)}.status.is-ok::before{background:var(--green);box-shadow:0 0 10px rgba(22,163,74,.45)}.status.is-blocked::before{background:var(--danger);box-shadow:0 0 10px rgba(15,118,110,.38)}.score{font-variant-numeric:tabular-nums;font-weight:760;color:var(--muted)}
.hint,.notice{padding:11px 12px;border:1px solid var(--stroke);border-radius:12px;background:var(--glass);margin:10px 0 14px;color:var(--muted);font-size:12px;line-height:1.55}.hint strong,.notice strong{color:var(--text-soft)}
label{display:block;font-size:11px;letter-spacing:.01em;color:var(--muted);margin:11px 0 5px;font-weight:600}input[type=text],input[type=password],input[type=number],input[type=url],select,textarea{width:100%;min-height:39px;border:1px solid var(--glass);border-radius:11px;padding:9px 10px;background:var(--glass);box-shadow:inset 0 1px 0 rgba(255,255,255,0.025);font:inherit;color:var(--text);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}input:hover,select:hover,textarea:hover{border-color:var(--glass)}input::placeholder,textarea::placeholder{color:var(--muted)}select{appearance:auto}textarea{min-height:68px;resize:vertical}input[type=checkbox]{appearance:none;width:32px;height:18px;border-radius:999px;background:var(--ink);border:1px solid var(--glass);position:relative;vertical-align:middle;transition:.16s ease;flex:0 0 auto}input[type=checkbox]::after{content:"";position:absolute;width:12px;height:12px;left:2px;top:2px;border-radius:50%;background:var(--green);box-shadow:0 1px 5px var(--glass);transition:.16s ease}input[type=checkbox]:checked{background:linear-gradient(90deg,var(--danger),var(--danger));border-color:rgba(15,118,110,.4)}input[type=checkbox]:checked::after{left:16px;background:white}
.source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}.source-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.source{border:1px solid var(--stroke);border-radius:16px;padding:0;background:var(--glass);box-shadow:inset 0 1px 0 rgba(255,255,255,0.035);overflow:hidden}.source:hover{border-color:var(--glass)}.source-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;cursor:pointer;list-style:none}.source-summary::-webkit-details-marker{display:none}.source-summary:after{content:'+';font-size:20px;color:var(--muted)}.source[open] .source-summary:after{content:'−'}.source-summary>span:first-child{min-width:0}.source-summary b,.source-summary small{display:block}.source-summary small{margin-top:4px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-summary .status{flex:0 0 auto}.source-editor{padding:0 14px 14px;border-top:1px solid var(--stroke)}.source-editor>form:first-child{padding-top:14px}.source-actions{display:flex;gap:8px;margin-top:12px}.source-actions form{margin:0}.test-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}
details{border:1px solid var(--stroke);border-radius:13px;background:var(--glass);margin:8px 0;overflow:hidden}summary{cursor:pointer;list-style:none;padding:11px 12px;color:var(--muted);transition:.15s ease}summary::-webkit-details-marker{display:none}summary::after{content:"+";float:right;color:var(--muted);font-size:16px;line-height:1}details[open] summary{background:var(--glass);border-bottom:1px solid var(--stroke)}details[open] summary::after{content:"−"}details textarea{margin:10px 12px;width:calc(100% - 24px)}
pre.console{white-space:pre-wrap;overflow-wrap:anywhere;max-height:230px;overflow:auto;background:var(--glass);color:var(--muted);padding:13px;border:1px solid var(--glass);border-radius:13px;font-size:11px;line-height:1.5;box-shadow:inset 0 1px 12px var(--glass)}
table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}th,td{text-align:left;border-top:1px solid var(--glass);padding:10px 9px;vertical-align:top}th{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:730;border-top:0}tbody tr{transition:background .12s ease}tbody tr:hover{background:var(--glass)}td a{color:var(--muted)}td a:hover{color:var(--accent-ink)}.table-scroll{overflow:auto;border:1px solid var(--glass);border-radius:13px;background:var(--glass)}
.preview-modal{position:fixed;inset:0;background:var(--glass);z-index:80;display:none;padding:22px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.preview-modal.open{display:block}.preview-shell{height:100%;max-width:1420px;margin:auto;background:var(--paper);border:1px solid var(--glass);border-radius:22px;overflow:hidden;box-shadow:0 40px 120px var(--glass);display:grid;grid-template-rows:auto 1fr}.preview-head{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:var(--ink);color:var(--accent-ink);border-bottom:1px solid var(--glass)}.preview-shell iframe{width:100%;height:100%;border:0;background:var(--paper)}
/* Editor */
.editor-page .topbar,.preview-page .topbar{position:sticky;top:12px;z-index:30;max-width:1440px;margin:12px auto 0;padding:10px 12px;border:1px solid var(--stroke);border-radius:17px;background:var(--glass);-webkit-backdrop-filter:blur(24px) saturate(145%);backdrop-filter:blur(24px) saturate(145%);box-shadow:var(--shadow-soft)}.topin{display:flex;gap:12px;align-items:center;justify-content:space-between}.editor-layout{max-width:1440px;margin:0 auto;padding:18px 18px 70px;display:grid;grid-template-columns:minmax(0,950px) 360px;gap:17px}.editor-card{padding:18px}.editor-card .title{font-size:30px;min-height:52px;font-weight:760;letter-spacing:-.035em}.toolbar{position:sticky;top:84px;z-index:8;display:flex;gap:5px;flex-wrap:wrap;padding:8px;background:var(--glass-heavy);border:1px solid var(--stroke);border-radius:13px 13px 0 0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.toolbar button{min-height:32px;padding:5px 9px;font-size:11px}.editor{min-height:720px;border:1px solid var(--stroke);border-top:0;padding:42px 52px;background:var(--paper-muted);color:var(--paper-ink);font-family:var(--serif);font-size:19px;line-height:1.66;outline:none;border-radius:0 0 14px 14px;box-shadow:inset 0 1px 0 rgba(255,255,255,0.6)}.editor h2,.editor h3{font-family:var(--font);color:var(--ink);letter-spacing:-.035em;line-height:1.14}.editor h2{font-size:32px;margin:48px 0 18px}.editor h3{font-size:24px;margin:32px 0 14px}.editor p{margin:0 0 22px}.editor a{color:var(--muted)}.editor blockquote{border-left:4px solid var(--accent);padding-left:18px;margin:28px 0;color:var(--ink)}.editor img{max-width:100%;height:auto}.editor table{color:var(--paper-ink);border-collapse:collapse}.editor td,.editor th{border:1px solid var(--muted)}.sidebar-stack{display:grid;gap:13px;align-content:start}.qa{display:grid;grid-template-columns:1fr auto;gap:7px 10px}.qa b{font-variant-numeric:tabular-nums}.src{display:block;margin:8px 0;color:var(--muted);overflow-wrap:anywhere;text-decoration-color:var(--glass)}.warning,.good{padding:10px 12px;border-radius:11px;margin:10px 0;font-size:12px}.warning{border:1px solid rgba(217,119,6,.24);background:rgba(217,119,6,.09);color:var(--amber)}.good{border:1px solid rgba(22,163,74,.23);background:rgba(22,163,74,.08);color:var(--green)}
/* Preview */
.preview-page{background:var(--canvas);color:var(--muted)}.preview-page .publication-shell{max-width:1220px;margin:18px auto 70px;padding:0 18px}.publication-frame{display:grid;grid-template-columns:minmax(0,850px) 290px;gap:20px;align-items:start}.publication-paper{background:var(--paper);color:var(--paper-ink);border-radius:24px;padding:58px 62px 76px;box-shadow:var(--shadow-lift);overflow:hidden}.publication-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.11em;color:var(--accent);font-weight:800;margin-bottom:18px}.publication-paper h1{color:var(--paper-ink);font-size:clamp(40px,5vw,58px);line-height:1.01;letter-spacing:-.055em;max-width:900px}.publication-deck{font-size:20px;line-height:1.43;color:var(--muted);margin:24px 0 34px;max-width:760px}.publication-hero{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;margin:0 0 44px;border-radius:4px}.hero-cap{font-size:11px;color:var(--muted);margin:-36px 0 40px}.article-body{font-family:var(--serif);font-size:20px;line-height:1.66}.article-body h2,.article-body h3{font-family:var(--font);color:var(--paper-ink);letter-spacing:-.035em;line-height:1.14}.article-body h2{font-size:36px;margin:58px 0 20px}.article-body h3{font-size:26px;margin:38px 0 16px}.article-body p{margin:0 0 24px}.article-body a{color:var(--accent-2);text-decoration-color:var(--amber)}.article-body blockquote{margin:34px 0;padding:4px 0 4px 24px;border-left:4px solid var(--danger);font-size:24px;line-height:1.45}.article-body figure{margin:42px 0}.article-body figure img{width:100%;height:auto;display:block}.article-body figcaption{font-family:var(--font);font-size:11px;color:var(--muted);margin-top:8px}.article-body table{color:var(--paper-ink);border-collapse:collapse;font-family:var(--font);font-size:14px;margin:32px 0}.article-body th,.article-body td{border-top:1px solid var(--muted)}.preview-aside{position:sticky;top:86px;display:grid;gap:12px}.preview-box{position:relative;padding:15px;border:1px solid var(--stroke);border-radius:16px;box-shadow:var(--shadow-soft)}.preview-box h3{margin-bottom:10px}.small{font-size:11px;line-height:1.55;color:var(--muted);overflow-wrap:anywhere}
.preview-page .topbar{background:var(--paper);color:var(--paper-ink)}.preview-page .topbar .pill,.preview-page .topbar .glass-toggle,.publication-paper .publication-deck,.publication-paper .hero-cap,.publication-paper figcaption{color:var(--paper-text-muted)}.preview-page .topbar .btn{color:var(--paper-ink);border-color:var(--paper-border);background:var(--paper-surface-alt)}.preview-page .topbar .btn.primary{color:var(--paper);background:var(--paper-accent)}.article-body th{color:var(--paper-ink);background:var(--paper-surface-alt-2)}.article-body td{color:var(--paper-ink);background:var(--paper)}.article-body th,.article-body td{padding:10px 12px;border:1px solid var(--paper-border)}
/* Login */
.login-page{display:grid;place-items:center;min-height:100dvh;padding:clamp(20px,5vw,64px)}.login-card{position:relative;width:min(520px,100%);padding:clamp(28px,5vw,48px);border:1px solid var(--stroke-strong);border-radius:28px;background:linear-gradient(155deg,var(--glass),var(--glass));-webkit-backdrop-filter:blur(30px) saturate(150%);backdrop-filter:blur(30px) saturate(150%);box-shadow:0 40px 110px var(--glass);overflow:hidden}.login-card::before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-70px;top:-80px;background:rgba(15,118,110,.18);filter:blur(30px)}.login-card>*{position:relative}.login-card h1{font-size:36px;margin:24px 0 8px}.login-card p{color:var(--muted);margin-bottom:24px}.login-card button{width:100%;margin-top:14px;min-height:48px}.login-card input{min-height:48px}.login-logo{display:flex;align-items:center;gap:10px}.login-logo .brand-orb{width:40px;height:40px}.login-guidance{max-width:38ch}.err{padding:10px 12px;border:1px solid rgba(15,118,110,.28);background:rgba(15,118,110,.10);color:var(--amber);border-radius:12px;margin:12px 0}
.glass-toggle{width:100%;justify-content:flex-start;color:var(--muted);font-size:11px}
html[data-glass="reduced"]{--panel:var(--glass-heavy);--panel-strong:var(--glass-heavy);--panel-soft:var(--glass);--glass-blur:0px}html[data-glass="reduced"] .side-nav,html[data-glass="reduced"] .card,html[data-glass="reduced"] .top,html[data-glass="reduced"] .topbar,html[data-glass="reduced"] .preview-box,html[data-glass="reduced"] .login-card{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--glass-heavy)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.side-nav,.card,.top,.topbar,.preview-box,.login-card{background:var(--glass-heavy)}}
@media(prefers-contrast:more){:root{--stroke:rgba(255,255,255,0.25);--stroke-strong:rgba(255,255,255,0.38);--muted:var(--muted)}.card,.side-nav,.top,.topbar,.preview-box{background:var(--glass-heavy);backdrop-filter:none;-webkit-backdrop-filter:none}input,select,textarea{background:var(--ink);border-color:var(--glass)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(max-width:1180px){.app-shell{grid-template-columns:1fr;padding:12px}.side-nav{position:sticky;top:8px;height:auto;z-index:50;display:block;padding:9px 10px;border-radius:18px}.brand-lockup{display:none}.nav-section{display:none}.nav-links{display:flex;overflow:auto;gap:5px}.nav-link{white-space:nowrap;padding:8px 10px}.nav-link::before{display:none}.grid{grid-template-columns:1fr 1fr}.editor-layout{grid-template-columns:minmax(0,1fr) 320px}.publication-frame{grid-template-columns:minmax(0,1fr) 260px}
  /* Подсказка, что вкладок больше, чем видно: mask вместо фонового
     градиента — работает поверх блюра стекла, не только сплошного цвета.
     Классы ставит updateNavScrollHints() в ui.js по факту скролла. */
  .nav-links.can-scroll-start{-webkit-mask-image:linear-gradient(to right,transparent,#000 28px);mask-image:linear-gradient(to right,transparent,#000 28px)}
  .nav-links.can-scroll-end{-webkit-mask-image:linear-gradient(to left,transparent,#000 28px);mask-image:linear-gradient(to left,transparent,#000 28px)}
  .nav-links.can-scroll-start.can-scroll-end{-webkit-mask-image:linear-gradient(to right,transparent,#000 28px,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(to right,transparent,#000 28px,#000 calc(100% - 28px),transparent)}
  /* смена темы и выход из панели — единственный путь к ним, без этого
     блока обе функции недоступны на экранах уже 1180px */
  .side-footer{margin-top:8px;padding:8px 2px 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
  .side-footer .theme-toggle{display:none}
  .theme-mode-switch{margin-top:0}
  .side-footer form{margin-left:auto}
  .side-footer .side-meta{display:none}
}
@media(max-width:900px){.grid,.source-list,.editor-layout,.publication-frame{grid-template-columns:1fr}.wide{grid-column:auto}.top{display:block;padding:18px}.top .actions{margin-top:16px;justify-content:flex-start}.source-grid{grid-template-columns:1fr 1fr}.preview-aside{position:static}.publication-paper{padding:40px 30px 56px}.editor{padding:30px 24px}.topin{align-items:flex-start;flex-direction:column}.preview-modal{padding:8px}}
@media(max-width:620px){.app-shell{padding:8px}.wrap{padding-bottom:40px}.source-grid,.workboard-toolbar,.published-toolbar{grid-template-columns:1fr}.top{border-radius:20px}.card{border-radius:17px;padding:15px}.actions{gap:6px}.actions button,.actions .btn{flex:1 1 auto}.test-row{grid-template-columns:1fr}.publication-shell{padding:0 8px}.publication-paper{padding:30px 20px 42px;border-radius:18px}.publication-paper h1{font-size:38px}.article-body{font-size:18px}.article-body h2{font-size:30px}.editor-layout{padding:10px}.editor{font-size:17px;padding:24px 17px}.editor-card .title{font-size:24px}.side-nav{border-radius:15px}.nav-link{font-size:12px}}
#settings form>h3,#editorial-tuning form>h3{margin-top:20px!important;padding-top:16px;border-top:1px solid var(--glass)}
#settings .checks:first-of-type{padding:12px;border:1px solid var(--glass);border-radius:14px;background:var(--glass)}
.editor-card .source-grid{grid-template-columns:1fr 1fr}
.card table{min-width:720px}.table-scroll{margin-top:10px}.table-scroll table{min-width:100%}
@media(max-width:620px){.editor-card .source-grid{grid-template-columns:1fr}}
@media(max-width:480px){.workspace-title-row{flex-wrap:wrap}.workspace-title-row .status{order:-1;margin-top:0}.workspace-title-row h1{-webkit-line-clamp:3;flex-basis:100%}}

/* Editorial calendar */
.calendar-section-head{align-items:center}.calendar-toolbar{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.calendar-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0}.calendar-meta>strong{font-size:22px;letter-spacing:-.035em}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.calendar-weekdays{padding:0 4px 7px}.calendar-weekdays span{text-align:center;color:var(--muted-2);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:760}.calendar-grid{min-height:590px}.calendar-day{min-height:130px;border:1px solid var(--glass);border-radius:15px;padding:9px;background:var(--glass);cursor:pointer;transition:.16s ease;overflow:hidden}.calendar-day:hover,.calendar-day:focus-visible{background:var(--glass);border-color:var(--glass);transform:translateY(-1px);outline:none}.calendar-day.outside{opacity:.42}.calendar-day.today{border-color:rgba(15,118,110,.47);box-shadow:inset 0 0 0 1px rgba(15,118,110,.12)}.calendar-day-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.calendar-day-number{font-weight:750;font-variant-numeric:tabular-nums}.calendar-day-count{min-width:20px;height:20px;display:grid;place-items:center;border-radius:999px;background:rgba(15,118,110,.14);color:var(--muted);font-size:10px}.calendar-events{display:grid;gap:5px}.calendar-event{min-height:0;display:block;width:100%;padding:6px 7px;border-radius:9px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;font-weight:650;background:rgba(15,118,110,.10);border-color:rgba(15,118,110,.16);transform:none!important}.calendar-event.status-needs_review,.calendar-event.status-generating{background:rgba(217,119,6,.10);border-color:rgba(217,119,6,.18)}.calendar-event.status-ready,.calendar-event.status-scheduled{background:rgba(22,163,74,.10);border-color:rgba(22,163,74,.18)}.calendar-event.status-published{background:rgba(22,163,74,.17);border-color:rgba(22,163,74,.28)}.calendar-event.status-error,.calendar-event.overdue{background:rgba(15,118,110,.11);border-color:rgba(15,118,110,.22)}.calendar-more{display:block;color:var(--muted);font-size:10px;padding:2px 6px}.calendar-loading{grid-column:1/-1;min-height:220px;display:grid;place-items:center;border:1px dashed var(--stroke);border-radius:16px;color:var(--muted)}.calendar-loading.error{color:var(--danger)}
.calendar-modal,.workspace-modal{position:fixed;inset:0;z-index:100;display:none;place-items:center;padding:18px;background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.calendar-modal.open,.workspace-modal.open{display:grid}.calendar-dialog{width:min(760px,100%);max-height:calc(100vh - 36px);overflow:auto;border:1px solid var(--stroke-strong);border-radius:24px;padding:20px;background:linear-gradient(155deg,var(--glass-heavy),var(--glass-heavy));box-shadow:0 40px 120px var(--glass)}.calendar-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:15px}.calendar-form-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:10px}.calendar-taxonomy-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.calendar-dialog-actions,.calendar-article-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.calendar-dialog-actions{justify-content:flex-end}.calendar-dialog input[type=date],.calendar-dialog input[type=time],.workspace-page input[type=date],.workspace-page input[type=time]{width:100%;min-height:39px;border:1px solid var(--glass);border-radius:11px;padding:9px 10px;background:var(--glass);color:var(--text)}

/* Article cards and full workspace modal */
.calendar-day.drag-target{border-color:rgba(151,136,255,.72);background:rgba(15,118,110,.13);box-shadow:inset 0 0 0 1px rgba(151,136,255,.18)}.calendar-event.dragging{opacity:.42}.calendar-day.today{border-color:rgba(15,118,110,.58);box-shadow:inset 0 0 0 1px rgba(15,118,110,.15)}
.workboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:10px;padding-bottom:4px;margin-top:15px}.workboard-toolbar{grid-column:1/-1;display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,260px) auto;gap:8px;align-items:center;margin-bottom:2px}.workboard-column{min-width:0;min-height:360px;padding:9px;border:1px solid var(--stroke);border-radius:16px;background:var(--glass)}.workboard-column>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 3px 10px}.workboard-column>header h3{font-size:12px}.workboard-column>header span{display:grid;place-items:center;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:var(--panel-soft);color:var(--muted);font-size:10px}.workboard-cards{display:grid;gap:8px}.workboard .article-card{min-height:0;padding:12px;border-radius:13px}.workboard .article-card-title{margin:11px 0 6px;font-size:15px}.workboard .article-card-query{min-height:0;font-size:11px}.workboard .article-card-score-row{margin:12px 0}.workboard .article-card-score{padding:8px}.workboard .article-card-score strong{font-size:17px}.workboard .article-card-actions{margin-top:10px}.workboard .article-card-actions button{flex:1}.workboard-empty{display:grid;place-items:center;min-height:90px;border:1px dashed var(--stroke);border-radius:11px;color:var(--muted-2);font-size:11px}.stage-ready{border-color:rgba(22,163,74,.22);background:rgba(22,163,74,.035)}.stage-changes{border-color:rgba(217,119,6,.18)}
.published-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,260px) minmax(180px,260px);gap:8px;margin:14px 0 8px}.published-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:10px}.published-pagination span{color:var(--muted);font-size:11px}
.article-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.article-card{position:relative;display:flex;flex-direction:column;min-height:255px;padding:16px;border:1px solid var(--glass);border-radius:17px;background:linear-gradient(150deg,var(--glass),var(--glass));cursor:pointer;transition:.17s ease;overflow:hidden}.article-card:hover,.article-card:focus-visible{outline:none;transform:translateY(-2px);border-color:var(--glass);box-shadow:0 18px 46px var(--glass)}.article-card::after{content:"";position:absolute;inset:auto -40px -70px auto;width:150px;height:150px;border-radius:50%;background:rgba(15,118,110,.07);filter:blur(24px)}.article-card-top,.article-card-meta,.article-card-actions,.article-card-score-row{position:relative;z-index:1;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.article-card-top{justify-content:space-between}.article-card-title{position:relative;z-index:1;font-size:18px;line-height:1.25;letter-spacing:-.025em;margin:15px 0 8px}.article-card-query{position:relative;z-index:1;color:var(--muted);font-size:12px;line-height:1.45;min-height:34px}.article-card-score-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.article-card-score{padding:10px;border:1px solid var(--glass);border-radius:12px;background:var(--glass)}.article-card-score span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.article-card-score strong{display:block;font-size:21px;margin-top:3px;font-variant-numeric:tabular-nums}.article-card-score.originality-passed strong{color:var(--green)}.article-card-score.originality-stale strong{color:var(--amber)}.article-card-score.originality-failed strong,.article-card-score.originality-error strong{color:var(--danger)}.article-card-meta{font-size:11px;color:var(--muted);margin-top:auto;padding-top:8px}.article-card-actions{margin-top:12px}.article-card-actions button,.article-card-actions .btn{min-height:32px;padding:5px 8px;font-size:10px}.metric-declining{color:var(--amber)}.metric-growing{color:var(--green)}.workspace-shell{width:min(1640px,100%);height:min(940px,calc(100vh - 24px));display:grid;grid-template-rows:auto 1fr;border:1px solid var(--stroke-strong);border-radius:24px;background:var(--canvas);overflow:hidden;box-shadow:0 45px 140px var(--glass)}.workspace-modal-head{display:flex;justify-content:space-between;align-items:center;padding:10px 13px;background:var(--glass-heavy);border-bottom:1px solid var(--stroke)}.workspace-modal-head>div{display:flex;gap:8px}.workspace-shell iframe{width:100%;height:100%;border:0;background:var(--canvas)}

/* Full article workspace */
.workspace-page{background:var(--canvas);color:var(--text);min-height:100vh;padding:12px 14px 70px}.workspace-embed{padding:0 10px 50px}.workspace-topbar{position:sticky;top:0;z-index:45;max-width:1660px;margin:0 auto 10px;padding:15px 17px;border:1px solid var(--stroke);border-radius:20px;background:var(--glass-solid);-webkit-backdrop-filter:blur(24px) saturate(145%);backdrop-filter:blur(24px) saturate(145%);box-shadow:var(--shadow-soft)}
.workspace-embed .workspace-topbar{top:8px}.workspace-titlebar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.workspace-title-copy{min-width:0}.workspace-title-row{display:flex;align-items:flex-start;gap:10px;min-width:0}.workspace-title-row .status{flex:0 0 auto;margin-top:4px}.workspace-title-row h1{font-size:clamp(20px,2.2vw,32px);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.2}.workspace-subline{display:flex;gap:8px 16px;flex-wrap:wrap;color:var(--muted);font-size:11px;margin-top:7px}.workspace-head-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.workspace-scoreboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:13px}.workspace-score{padding:9px 11px;border:1px solid var(--glass);border-radius:12px;background:var(--glass)}.workspace-score span,.workspace-score small{display:block;color:var(--muted);font-size:10px}.workspace-score strong{display:block;margin:2px 0;font-size:18px;line-height:1.15;overflow:hidden;text-overflow:ellipsis}.workspace-score.originality-passed strong{color:var(--green)}.workspace-score.originality-stale strong{color:var(--amber)}.workspace-score.originality-failed strong,.workspace-score.originality-error strong{color:var(--danger)}.workspace-pipeline{display:flex;gap:5px;margin-top:10px;overflow:auto}.pipeline-step{flex:1 0 auto;padding:6px 8px;border:1px solid var(--glass);border-radius:9px;background:var(--glass);font-size:9px;text-transform:uppercase;letter-spacing:.055em;color:var(--muted)}.pipeline-step.done{border-color:rgba(22,163,74,.22);background:rgba(22,163,74,.08);color:var(--green)}.pipeline-step.warning{border-color:rgba(217,119,6,.23);background:rgba(217,119,6,.07);color:var(--amber)}.workspace-tabs{position:sticky;top:178px;z-index:40;max-width:1660px;margin:0 auto 10px;padding:7px;display:flex;gap:5px;overflow:auto;border:1px solid var(--stroke);border-radius:15px;background:var(--glass-solid);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.workspace-embed .workspace-tabs{top:186px}.workspace-tab{min-height:34px;padding:6px 10px;white-space:nowrap;color:var(--muted);font-size:11px}.workspace-tab.active{color:var(--accent-ink);border-color:rgba(15,118,110,.24);background:rgba(15,118,110,.12)}.tab-counter{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--glass);font-size:9px}.workspace-main{max-width:1660px;margin:0 auto}.workspace-panel{display:none}.workspace-panel.active{display:block}.workspace-alert{padding:11px 13px;border:1px solid rgba(217,119,6,.23);border-radius:13px;background:rgba(217,119,6,.08);color:var(--amber);margin-bottom:10px}.workspace-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:12px}.workspace-editor-column,.workspace-side-card,.workspace-section-card{position:relative;border:1px solid var(--stroke);border-radius:17px;background:linear-gradient(155deg,var(--glass),var(--glass));box-shadow:var(--shadow-soft)}.workspace-editor-column{overflow:hidden}.workspace-fields{padding:14px 15px}.workspace-fields-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.workspace-fields-row.three{grid-template-columns:1fr 1fr 1.2fr}.workspace-title-input{font-size:24px!important;font-weight:750;letter-spacing:-.03em;min-height:50px!important}.workspace-editor-toolbar{position:sticky;top:230px;z-index:20;display:flex;gap:5px;flex-wrap:wrap;padding:8px;border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke);background:var(--glass-heavy)}.workspace-editor-toolbar button{min-height:31px;padding:5px 8px;font-size:10px}.toolbar-spacer{flex:1}.workspace-rich-editor{min-height:760px;padding:48px 7%;background:var(--canvas);color:var(--ink);font:19px/1.67 var(--serif);outline:none}.workspace-rich-editor h2,.workspace-rich-editor h3,.workspace-rich-editor h4{font-family:var(--font);color:var(--ink);letter-spacing:-.035em;line-height:1.16}.workspace-rich-editor h2{font-size:34px;margin:52px 0 18px}.workspace-rich-editor h3{font-size:25px;margin:36px 0 14px}.workspace-rich-editor h4{font-size:20px;margin:28px 0 12px}.workspace-rich-editor p{margin:0 0 22px}.workspace-rich-editor a{color:var(--accent-2)}.workspace-rich-editor blockquote{margin:30px 0;padding:5px 0 5px 20px;border-left:4px solid var(--danger);color:var(--ink)}.workspace-rich-editor table{width:100%;border-collapse:collapse;font:14px/1.45 var(--font);color:var(--ink);margin:28px 0}.workspace-rich-editor th,.workspace-rich-editor td{border:1px solid var(--muted);padding:9px}.workspace-rich-editor img{max-width:100%;height:auto}.workspace-rich-editor .seo-factory-toc{padding:18px;border:1px solid var(--muted);border-radius:12px;background:var(--glass)}.workspace-editor-footer{display:flex;align-items:center;gap:15px;padding:10px 12px;border-top:1px solid var(--stroke);font-size:11px;color:var(--muted)}.workspace-editor-footer button{margin-left:auto}.workspace-side-column{display:grid;gap:10px;align-content:start}.workspace-side-card,.workspace-section-card{padding:15px}.workspace-side-card h3,.workspace-section-card h3{margin-bottom:10px}.full-width{width:100%;margin-top:9px}.workspace-mini-metrics{display:grid;grid-template-columns:1fr auto;gap:7px 10px;margin:12px 0;font-size:11px}.workspace-mini-metrics span{color:var(--muted)}.workspace-mini-metrics b{text-align:right;overflow-wrap:anywhere}.workspace-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px;padding:16px 18px;border:1px solid var(--stroke);border-radius:17px;background:linear-gradient(155deg,var(--glass),var(--glass))}.workspace-section-head.compact{padding:0;border:0;background:none}.workspace-section-head h2{font-size:23px;margin-bottom:6px}.workspace-actions{display:flex;gap:7px;flex-wrap:wrap}.workspace-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:11px}.workspace-research-summary,.analytics-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:11px}.workspace-research-summary>div,.analytics-metric-grid>div{padding:13px;border:1px solid var(--stroke);border-radius:14px;background:var(--glass)}.workspace-research-summary span,.analytics-metric-grid span,.analytics-metric-grid small{display:block;color:var(--muted);font-size:10px}.workspace-research-summary strong,.analytics-metric-grid strong{display:block;font-size:22px;margin-top:4px;font-variant-numeric:tabular-nums}.fact-list{display:grid;gap:8px;max-height:640px;overflow:auto;margin:12px 0}.fact-card{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:12px;border:1px solid var(--stroke);border-radius:13px;background:var(--glass);margin:0;cursor:pointer}.fact-card:hover{border-color:var(--stroke-strong)}.fact-card input{margin-top:4px}.fact-card-head{display:flex;align-items:center;gap:8px;margin-bottom:7px;color:var(--muted);font-size:10px}.fact-card strong{display:block;font-size:13px;line-height:1.45}.fact-card p{margin:7px 0;color:var(--muted);font-size:11px}.fact-card a{display:block;font-size:10px;overflow-wrap:anywhere;color:var(--muted)}.fact-inserted{opacity:.55}.research-plan-list{display:grid;gap:8px}.research-plan-item{display:grid;grid-template-columns:28px 1fr;gap:10px;padding:9px;border-bottom:1px solid var(--glass)}.research-plan-item>span{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:rgba(15,118,110,.10);font-size:10px}.research-plan-item strong{display:block}.research-plan-item p{color:var(--muted);font-size:11px;margin-top:3px}.source-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.source-card{display:block;padding:12px;border:1px solid var(--stroke);border-radius:13px;background:var(--glass);text-decoration:none;min-height:150px}.source-card:hover{border-color:var(--stroke-strong);background:var(--glass)}.source-card strong{display:block;margin:9px 0 6px;line-height:1.35}.source-card p{color:var(--muted);font-size:11px;line-height:1.45}.source-card small{display:block;margin-top:9px;color:var(--muted-2);overflow-wrap:anywhere}.empty-state{padding:24px;border:1px dashed var(--stroke);border-radius:13px;color:var(--muted);text-align:center}.qa-hero-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:10px;margin-bottom:11px}.qa-originality-block,.qa-summary-block{padding:18px;border:1px solid var(--stroke);border-radius:17px;background:var(--glass)}.qa-originality-block span,.qa-summary-block span{display:block;color:var(--muted);font-size:11px}.qa-originality-block strong,.qa-summary-block strong{display:block;font-size:36px;line-height:1;margin:8px 0}.qa-originality-block p,.qa-summary-block p{color:var(--muted);font-size:11px}.qa-originality-block.originality-passed strong{color:var(--green)}.qa-originality-block.originality-stale strong{color:var(--amber)}.qa-originality-block.originality-failed strong,.qa-originality-block.originality-error strong{color:var(--danger)}.qa-gate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.qa-gate-card{padding:15px;border:1px solid var(--stroke);border-radius:16px;background:linear-gradient(155deg,var(--glass),var(--glass))}.qa-gate-card.critical{border-color:rgba(15,118,110,.25)}.qa-gate-card.passed{border-color:rgba(22,163,74,.16)}.qa-gate-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.qa-gate-head strong{font-size:28px}.qa-issues{display:grid;gap:7px;margin-top:11px}.qa-issue{padding:9px;border-left:2px solid rgba(217,119,6,.38);background:var(--glass);border-radius:0 9px 9px 0}.qa-issue b{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--amber)}.qa-issue p{font-size:11px;margin-top:3px;color:var(--muted)}
/* .qa-issue-quote — точная цитата гейта (fragment), которую раньше видно не
   было вовсе (рендерилась только когда problem отсутствовал, т.е. почти
   никогда) — редактор читал абзац рассуждений и сам искал предложение в
   тексте на 36 тыс. знаков. Показывается первой, стилем цитаты. Тот же цвет
   (--danger), что и mark.qa-flag ниже — подсветка в карточке и в тексте
   статьи читаются как одно и то же место. */
.qa-issue-quote{margin:6px 0 4px;padding:7px 9px;border-left:2px solid var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent);border-radius:0 8px 8px 0;font-style:italic;font-size:12px;line-height:1.45;color:var(--ink)}
/* .qa-issue-fix заменяет прежний <small> — тот же визуальный вес, что и
   problem/quote, а не мелкая сноска: готовую формулировку замены (fix)
   нужно читать, а не выискивать. */
.qa-issue-fix{display:block;color:var(--ink);font-weight:600;margin-top:6px;padding-top:6px;border-top:1px dashed var(--stroke)}
.qa-issue-clickable{cursor:pointer}
.qa-issue-clickable:hover{border-left-color:var(--danger)}
/* Подсветка цитаты прямо в тексте статьи (#article-editor), см.
   app/qa_highlight.py и scrollToQaFragment в workspace.html. Снимается
   перед сохранением (editorContentHtml()), чтобы не попасть в реальный
   HTML статьи. */
/* mark.nat-suggest сам по себе (без .nat-suggest-flash) больше не рисуется
   постоянно в тексте статьи -- article_workspace в main.py не оборачивает
   предложения «естественности» в <mark> при рендере страницы, только
   карточки в боковой колонке несут data-nat-quote. Базовое правило ниже
   держит подсветку выключенной на случай, если такой <mark> всё же
   встретится (наследие/ручная вставка) -- видимой её делает только модификатор
   .nat-suggest-flash, который workspace.html навешивает на 3.5с при клике по
   карточке (flashNatSuggestion) и снимает сам. Раньше постоянная волнистая
   подчёркнутость держалась под каждым предложением независимо от того,
   переписал его редактор или нет -- жалобы клиента 23-24.09.2026 «не похоже
   на проблемное место» и «переписала, подчёркивание осталось». */
mark.nat-suggest{background:none;color:inherit}
mark.nat-suggest.nat-suggest-flash{padding:0 1px;border-radius:3px;text-decoration:underline wavy var(--amber);text-decoration-thickness:1.5px;text-underline-offset:3px;background:color-mix(in srgb,var(--amber) 22%,transparent)}
.nat-suggestion{padding:10px 0;border-top:1px solid var(--stroke)}.nat-suggest-quote{cursor:pointer}mark.qa-flag{background:color-mix(in srgb,var(--danger) 24%,transparent);color:inherit;padding:0 1px;border-radius:3px;box-shadow:inset 0 -2px 0 var(--danger);cursor:help}
/* Карточка QA-замечания, чьё место в тексте уже отредактировали (правка
   прямо в тексте или «Правка выделенного фрагмента», см. unwrapMark /
   markQaIssueResolved в workspace.html) -- приглушена, с явной пометкой,
   вместо того чтобы выглядеть как всё ещё открытое замечание. */
.qa-issue.qa-issue-resolved{opacity:.55}
.qa-issue-resolved-note{margin-top:6px;padding-top:6px;border-top:1px dashed var(--stroke);color:var(--green);font-size:10px;font-weight:600}.image-status-line{margin:0 0 10px;color:var(--muted)}.workspace-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.workspace-image-card{border:1px solid var(--stroke);border-radius:16px;overflow:hidden;background:var(--glass)}.workspace-image-card img,.image-placeholder{width:100%;aspect-ratio:16/10;display:block;object-fit:cover;background:var(--glass)}.image-placeholder{display:grid;place-items:center;color:var(--muted)}.workspace-image-card>div{padding:12px}.workspace-image-card small{display:block;color:var(--muted);margin:7px 0}.workspace-image-card strong{display:block}.workspace-image-card p{color:var(--muted);font-size:11px;margin-top:5px}.workspace-json-details{margin-top:12px;border:1px solid var(--stroke);border-radius:13px;padding:10px}.workspace-json-details summary{cursor:pointer;font-weight:650}.workspace-json-details pre{white-space:pre-wrap;overflow:auto;max-height:420px;color:var(--muted);font-size:10px}.workspace-publication-grid{display:grid;grid-template-columns:1.25fr 1fr .85fr;gap:10px}.workspace-stack-actions{display:grid;gap:8px}.analytics-signal{padding:17px;border:1px solid var(--stroke);border-radius:16px;background:var(--glass);margin-bottom:10px}.analytics-signal span{display:block;color:var(--muted);font-size:10px}.analytics-signal strong{display:block;font-size:30px;margin:4px 0}.signal-declining{border-color:rgba(15,118,110,.27);background:rgba(15,118,110,.07)}.signal-growing{border-color:rgba(22,163,74,.24);background:rgba(22,163,74,.07)}.history-columns{grid-template-columns:.9fr 1.1fr}.feedback-list,.activity-list{display:grid;gap:8px;margin-top:15px;max-height:680px;overflow:auto}.feedback-item{padding:11px;border:1px solid var(--stroke);border-radius:12px;background:var(--glass)}.feedback-item>div{display:flex;align-items:center;justify-content:space-between;gap:9px}.feedback-item time,.activity-item time,.version-list time{color:var(--muted-2);font-size:9px}.feedback-item p{margin-top:8px}.feedback-item blockquote{margin:8px 0 0;padding:8px;border-left:2px solid var(--stroke-strong);color:var(--muted);font-size:11px}.activity-item{display:grid;grid-template-columns:12px 1fr;gap:9px}.activity-item>span{width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent-glow)}.activity-item>div{padding-bottom:10px;border-bottom:1px solid var(--glass)}.activity-item time{display:block}.activity-item p{color:var(--muted);font-size:10px;overflow-wrap:anywhere;margin-top:4px}.history-subhead{margin-top:20px!important}.version-list{display:grid;gap:6px}.version-list>div{display:flex;justify-content:space-between;gap:10px;padding:8px;border-bottom:1px solid var(--glass);font-size:10px}.recording{border-color:rgba(15,118,110,.45)!important;background:rgba(15,118,110,.15)!important}.selection-ai{position:fixed;z-index:200;display:none;width:min(370px,calc(100vw - 24px));padding:12px;border:1px solid var(--stroke-strong);border-radius:16px;background:var(--glass-heavy);box-shadow:0 24px 80px var(--glass)}.selection-ai.open{display:block}.selection-ai-head{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:8px}.selection-ai-head button{min-height:28px;padding:3px 8px}.selection-preview{max-height:66px;overflow:hidden;padding:8px;border-radius:9px;background:var(--glass);color:var(--muted);font-size:10px;margin-bottom:7px}.selection-quick-actions{display:flex;gap:5px;flex-wrap:wrap}.selection-quick-actions button{min-height:29px;padding:4px 7px;font-size:9px}.workspace-toast{position:fixed;right:18px;bottom:18px;z-index:250;max-width:460px;padding:12px 15px;border:1px solid rgba(22,163,74,.25);border-radius:13px;background:var(--glass-heavy);color:var(--muted);box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:.18s ease}.workspace-toast.open{opacity:1;transform:none}.workspace-toast.error{border-color:rgba(15,118,110,.28);background:var(--glass-heavy);color:var(--muted)}

.workspace-page .workspace-publication-grid input,.workspace-page .workspace-publication-grid select,.workspace-page .workspace-publication-grid textarea{background:var(--canvas-deep);border-color:var(--stroke-strong)}
.workspace-readonly-status{display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:center;margin:12px 0;padding:11px 12px;border:1px solid var(--stroke);border-radius:12px;background:var(--panel-soft)}
.workspace-readonly-status span,.workspace-readonly-status small{color:var(--muted);font-size:10px}.workspace-readonly-status small{grid-column:1/-1}
@media(max-width:1280px){.article-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-editor-grid{grid-template-columns:minmax(0,1fr) 300px}.workspace-publication-grid{grid-template-columns:1fr 1fr}.workspace-publication-grid>*:last-child{grid-column:1/-1}.source-card-grid,.workspace-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-scoreboard{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-tabs,.workspace-embed .workspace-tabs{top:252px}}
@media(max-width:900px){.calendar-weekdays,.calendar-grid{gap:4px}.calendar-day{min-height:110px;padding:6px}.calendar-event{font-size:9px}.workspace-editor-grid,.workspace-two-columns,.qa-gate-grid,.workspace-publication-grid,.history-columns{grid-template-columns:1fr}.workspace-publication-grid>*:last-child{grid-column:auto}.workspace-side-column{grid-template-columns:1fr 1fr}.workspace-scoreboard{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-tabs,.workspace-embed .workspace-tabs{position:relative;top:auto}.workspace-topbar{position:relative}.workspace-rich-editor{padding:35px 5%}.workspace-research-summary,.analytics-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.qa-hero-grid{grid-template-columns:1fr}.workspace-section-head{display:block}.workspace-section-head>.workspace-actions,.workspace-section-head>button{margin-top:10px}}
@media(max-width:660px){#article-studio{display:none!important}.article-card-grid{grid-template-columns:1fr}.calendar-section-head,.calendar-meta{display:block}.calendar-toolbar{justify-content:flex-start;margin-top:10px}.calendar-weekdays{display:none}.calendar-grid{grid-template-columns:1fr;min-height:auto}.calendar-day{min-height:90px}.calendar-day.outside{display:none}.calendar-form-grid,.calendar-taxonomy-grid{grid-template-columns:1fr}.calendar-modal,.workspace-modal{padding:5px}.calendar-dialog{border-radius:17px;padding:14px}.workspace-shell{height:calc(100vh - 10px);border-radius:15px}.workspace-page,.workspace-embed{padding:5px 5px 40px}.workspace-titlebar{display:block}.workspace-head-actions{justify-content:flex-start;margin-top:10px}.workspace-head-actions>button:not(.primary),.workspace-head-actions>a{display:none}.workspace-tab[data-tab="editor"],.workspace-tab[data-tab="research"],.workspace-tab[data-tab="images"],.workspace-tab[data-tab="history"]{display:none}.workspace-scoreboard{grid-template-columns:1fr 1fr}.workspace-side-column{grid-template-columns:1fr}.workspace-fields-row,.workspace-fields-row.three{grid-template-columns:1fr}.workspace-rich-editor{font-size:17px;padding:26px 17px}.workspace-rich-editor h2{font-size:29px}.workspace-research-summary,.analytics-metric-grid{grid-template-columns:1fr 1fr}.source-card-grid,.workspace-image-grid{grid-template-columns:1fr}.workspace-editor-footer{align-items:flex-start;flex-wrap:wrap}.workspace-editor-footer button{margin-left:0;width:100%}.selection-ai{left:12px!important;top:auto!important;bottom:12px}}

/* v2.7 exhaustive admin */
.prompt-role-card{margin:10px 0;padding:0 14px;border:1px solid var(--line,var(--glass));border-radius:16px;background:var(--glass)}
.prompt-role-card summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;cursor:pointer}
.prompt-role-card summary span:first-child{display:flex;flex-direction:column;gap:4px}
.prompt-role-card textarea{width:100%}
.prompt-counter{text-align:right;margin:4px 0 12px;font-size:12px}
.prompt-role-card.is-filtered{display:none}
input[readonly]{opacity:.8;cursor:not-allowed}
#internal-search-test-result{max-height:320px;overflow:auto;white-space:pre-wrap}
#runtime-config-json{tab-size:2}

/* v2.7 prompt center and guided configuration */
.prompt-center{overflow:visible}
.prompt-global-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:14px;margin:16px 0}
.prompt-global-card{padding:16px;border:1px solid var(--stroke);border-radius:18px;background:var(--glass)}
.prompt-global-primary{border-color:rgba(15,118,110,.22);background:linear-gradient(145deg,rgba(15,118,110,.075),var(--glass))}
.prompt-card-head,.prompt-mode-row,.prompt-toolbar,.prompt-save-bar,.catalog-save-bar,.prompt-editor-head,.prompt-editor-footer,.prompt-transfer{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.prompt-card-head h3,.prompt-toolbar h3{font-size:16px;margin-bottom:4px}
.prompt-card-head button{flex:0 0 auto}
.prompt-global-textarea{min-height:250px!important;line-height:1.55}
.prompt-global-main{min-height:360px!important}
.settings-fold,.prompt-transfer details{margin:14px 0;border:1px solid var(--stroke);border-radius:16px;background:var(--glass);overflow:hidden}
.settings-fold>summary,.prompt-transfer summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;cursor:pointer;list-style:none}
.settings-fold>summary::-webkit-details-marker,.prompt-transfer summary::-webkit-details-marker,.prompt-role-card>summary::-webkit-details-marker,.catalog-group>summary::-webkit-details-marker{display:none}
.settings-fold>summary span{display:flex;flex-direction:column;gap:3px}
.settings-fold-body{padding:0 16px 14px}
.settings-fold-checks{padding:0 16px 16px;margin:0}
.prompt-toolbar{align-items:center;margin:25px 0 12px;padding-top:18px;border-top:1px solid var(--stroke)}
.prompt-toolbar-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.prompt-toolbar-controls input[type=search],.catalog-search-row input[type=search]{width:min(360px,100%);min-height:39px;border:1px solid var(--glass);border-radius:11px;padding:9px 11px;background:var(--glass);color:var(--text)}
.compact-check{display:flex;align-items:center;gap:7px;margin:0;padding:7px 9px;border:1px solid var(--stroke);border-radius:11px;color:var(--text-soft);white-space:nowrap}
.prompt-role-group{margin:18px 0 24px}
.prompt-role-group.is-filtered{display:none}
.prompt-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 3px 8px}
.prompt-group-head h4{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}
.prompt-role-card{margin:8px 0;padding:0;border:1px solid var(--stroke);border-radius:16px;background:var(--glass);overflow:hidden}
.prompt-role-card[open]{border-color:var(--glass);background:var(--glass)}
.prompt-role-card summary{padding:14px 16px}
.prompt-role-card summary span:first-child{min-width:0}
.prompt-role-card summary small{white-space:normal;line-height:1.4}
.prompt-role-body{padding:0 16px 15px;border-top:1px solid var(--glass)}
.prompt-mode-row{align-items:flex-end;margin-bottom:9px}
.prompt-mode-row>div:first-child{width:min(470px,100%)}
.prompt-role-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.prompt-stage-textarea{min-height:260px!important;line-height:1.55}
.prompt-counter{font-variant-numeric:tabular-nums}
.prompt-save-bar,.catalog-save-bar{position:sticky;bottom:10px;z-index:20;align-items:center;margin-top:18px;padding:12px 14px;border:1px solid var(--stroke-strong);border-radius:15px;background:var(--glass-heavy);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 16px 44px var(--glass)}
.prompt-transfer{align-items:center;margin-top:16px}
.prompt-transfer details{flex:1;margin:0}
.prompt-transfer details form{padding:0 16px 16px}
.prompt-editor-modal{position:fixed;inset:0;z-index:500;display:none;padding:18px;background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.prompt-editor-modal.open{display:grid;place-items:center}
.prompt-editor-shell{width:min(1180px,100%);height:min(860px,calc(100vh - 36px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:13px;padding:19px;border:1px solid var(--stroke-strong);border-radius:22px;background:linear-gradient(160deg,var(--glass-heavy),var(--glass-heavy));box-shadow:0 40px 120px var(--glass)}
.prompt-editor-head,.prompt-editor-footer{align-items:center}
#prompt-editor-text{height:100%;min-height:0;resize:none;padding:20px;font:15px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--glass)}

.settings-catalog{overflow:visible}
.catalog-search-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:16px 0}
.catalog-search-row input[type=search]{flex:1;max-width:none}
.settings-catalog-list{display:grid;gap:10px}
.catalog-group{border:1px solid var(--stroke);border-radius:17px;background:var(--glass);overflow:hidden}
.catalog-group.is-filtered,.catalog-field.is-filtered{display:none}
.catalog-group>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;cursor:pointer;list-style:none}
.catalog-group>summary span:first-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.catalog-group[open]>summary{border-bottom:1px solid var(--glass);background:var(--glass)}
.catalog-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:13px}
.catalog-field{position:relative;padding:13px;border:1px solid var(--glass);border-radius:13px;background:var(--glass)}
.catalog-field>label:first-child{margin-top:0;color:var(--muted)}
.catalog-help{margin:7px 0 0;font-size:11px;line-height:1.45}
.catalog-path{display:inline-block;margin-top:8px;padding:3px 5px;border-radius:6px;background:var(--glass);color:var(--muted-2);font-size:9px;overflow-wrap:anywhere}
.catalog-switch{display:flex!important;align-items:flex-start;gap:10px;margin:0!important;color:var(--text)!important}
.catalog-switch span{display:flex;flex-direction:column;gap:4px}
.catalog-switch small{color:var(--muted);font-weight:400;line-height:1.45}
.catalog-save-bar{margin-top:14px}

@media(max-width:1180px){.prompt-global-grid{grid-template-columns:1fr}.catalog-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.prompt-toolbar{align-items:flex-start;flex-direction:column}.prompt-toolbar-controls{justify-content:flex-start;width:100%}}
@media(max-width:720px){.prompt-card-head,.prompt-mode-row,.prompt-save-bar,.catalog-save-bar,.prompt-transfer,.prompt-editor-footer{align-items:stretch;flex-direction:column}.prompt-role-actions{justify-content:flex-start}.prompt-mode-row>div:first-child{width:100%}.catalog-fields{grid-template-columns:1fr}.prompt-editor-modal{padding:5px}.prompt-editor-shell{height:calc(100vh - 10px);padding:13px;border-radius:15px}.prompt-toolbar-controls>*{width:100%}.prompt-toolbar-controls input[type=search]{width:100%}.prompt-save-bar,.catalog-save-bar{bottom:4px}}

/* Settings navigation hub */
.settings-home{overflow:visible}
.settings-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.settings-home-grid-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.settings-home-card{position:relative;display:flex;min-height:168px;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--stroke);border-radius:16px;background:linear-gradient(155deg,var(--glass),var(--glass));color:var(--text);text-decoration:none;transition:border-color .16s ease,transform .16s ease,background .16s ease}
.settings-home-card:hover{border-color:var(--stroke-strong);background:linear-gradient(155deg,var(--glass),var(--glass));transform:translateY(-1px)}
.settings-home-card>span{font-size:10px;letter-spacing:.12em;color:var(--muted-2)}
.settings-home-card>strong{font-size:16px;line-height:1.25}
.settings-home-card>small{color:var(--muted);font-size:11px;line-height:1.5}
.settings-home-card>b{margin-top:auto;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.engineer-flag{display:inline-block;padding:2px 8px;border-radius:999px;background:rgba(217,119,6,.12);color:var(--amber);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin-right:6px}
@media(max-width:1180px){.settings-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.settings-home-grid{grid-template-columns:1fr}.settings-home-card{min-height:140px}}

/* SEO workspace: compact, data-first control room */
.source-chip{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:8px 12px;border:1px solid var(--stroke);border-radius:999px;background:var(--panel-soft);font-size:12px;font-weight:700;color:var(--text-soft)}
.source-chip i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 13%,transparent)}
.theme-toggle{width:100%;justify-content:flex-start;color:var(--text-soft);font-size:12px}.theme-mode-switch{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px;margin-top:6px}.theme-mode-switch button{min-height:30px;padding:4px;font-size:10px}.theme-mode-switch button.active{background:rgba(15,118,110,.18);border-color:rgba(151,136,255,.45);color:var(--text)}
.command-palette{position:fixed;inset:0;z-index:300;display:grid;place-items:start center;padding-top:min(17vh,170px);background:var(--glass);backdrop-filter:blur(10px)}.command-palette[hidden]{display:none}.command-dialog{width:min(580px,calc(100vw - 28px));padding:10px;border:1px solid var(--stroke-strong);border-radius:20px;background:var(--panel-strong);box-shadow:0 35px 110px var(--glass)}.command-dialog input{width:100%;min-height:48px;padding:11px 14px;border-radius:13px;font-size:16px}.command-results{display:grid;gap:3px;margin:9px 0;max-height:380px;overflow:auto}.command-results button{min-height:54px;display:grid;grid-template-columns:1fr auto;justify-content:stretch;text-align:left;border-color:transparent;background:transparent;box-shadow:none}.command-results button:hover,.command-results button.active{background:rgba(15,118,110,.13);border-color:rgba(151,136,255,.25);transform:none}.command-results button span{color:var(--muted);font-size:11px;text-align:right}.command-dialog small{display:block;padding:4px 7px;color:var(--muted-2);font-size:10px}
/* Диалог подтверждения — тот же глассморфный каркас, что у командной
   палитры (.command-palette/.command-dialog), вместо браузерного confirm(). */
.confirm-overlay{padding-top:min(30vh,260px)}
.confirm-dialog{padding:22px}
#confirm-message{margin:0;white-space:pre-wrap;line-height:1.5}
.confirm-dialog .actions{justify-content:flex-end;margin-top:18px}
.grid>section[hidden]{display:none!important}
.top{min-height:174px;padding:30px 32px;align-items:center;background:linear-gradient(118deg,var(--glass-heavy),var(--glass)),radial-gradient(circle at 83% 28%,rgba(32,164,152,.26),transparent 30%)}
.top::after{content:"";position:absolute;right:5%;top:17%;width:136px;height:136px;border:1px solid rgba(132,247,211,.22);border-radius:46% 54% 51% 49%/44% 44% 56% 56%;box-shadow:0 0 0 20px rgba(132,247,211,.025),0 0 68px rgba(22,163,74,.14);transform:rotate(-19deg);pointer-events:none}
.top h1{max-width:700px;font-size:clamp(34px,4vw,52px)}
.top .actions{position:relative;z-index:1;align-items:center}
.side-nav{background:linear-gradient(160deg,var(--glass-heavy),var(--glass-heavy));border-color:var(--glass)}
.brand-sub{color:var(--muted-2)}
.nav-links{gap:5px}.nav-link{padding:11px 10px;font-size:13px}.nav-link::before{width:7px;height:7px}.nav-link.active{background:linear-gradient(90deg,rgba(22,163,74,.14),var(--glass));box-shadow:inset 0 0 0 1px rgba(22,163,74,.17)}.nav-link.active::before{background:var(--green);box-shadow:0 0 13px rgba(22,163,74,.36)}
.hero-card{padding:24px;background:linear-gradient(145deg,var(--glass-heavy),var(--glass));border-color:var(--glass)}
.card h2::before{background:linear-gradient(135deg,var(--green),var(--muted));box-shadow:0 0 16px rgba(22,163,74,.25)}
.status,.pill{background:var(--panel-soft)}
.seo-overview{position:relative;padding:28px;border:1px solid var(--stroke);border-radius:var(--radius-xl);background:linear-gradient(145deg,var(--glass-heavy),var(--glass));box-shadow:var(--shadow-soft);overflow:hidden}
.seo-overview::before{content:"";position:absolute;inset:auto -8% -70% auto;width:580px;height:580px;border-radius:50%;background:radial-gradient(circle,rgba(64,205,173,.14),transparent 66%);pointer-events:none}
.overview-intro{position:relative;display:flex;justify-content:space-between;gap:28px;align-items:flex-start}.overview-intro h2{font-size:28px;letter-spacing:-.045em}.overview-intro p{max-width:650px;margin-top:8px;color:var(--muted);font-size:14px}
.freshness{display:grid;gap:4px;min-width:215px;padding:13px 15px;border:1px solid var(--stroke);border-radius:15px;background:var(--glass)}.freshness span{font-weight:750;font-size:13px}.freshness small{color:var(--muted);font-size:11px}.freshness span::before{content:"";display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 4px rgba(217,119,6,.10)}.freshness-ok span::before{background:var(--green);box-shadow:0 0 0 4px rgba(22,163,74,.12)}
.metric-deck{position:relative;display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:10px;margin-top:22px}.metric-card{min-height:155px;display:flex;flex-direction:column;padding:17px;border:1px solid var(--stroke);border-radius:17px;background:var(--glass)}.metric-card>span{color:var(--muted);font-size:11px;font-weight:680}.metric-card strong{margin:10px 0 6px;font-size:34px;line-height:1}.metric-card small{color:var(--muted);font-size:11px;line-height:1.45}.metric-card a{margin-top:auto;color:var(--green);text-decoration:none;font-weight:720;font-size:12px}.metric-card-primary{border-color:rgba(22,163,74,.26);background:linear-gradient(145deg,rgba(35,124,107,.22),var(--glass))}.metric-status{font-size:25px!important;color:var(--amber)}.metric-status.is-ok{color:var(--green)}.metric-card-goal{border-style:dashed;background:transparent}.metric-card-goal strong{color:var(--muted);font-weight:640}
.next-action{position:relative;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:10px;padding:18px 19px;border:1px solid rgba(125,228,200,.17);border-radius:17px;background:var(--glass)}.next-action-kicker{display:block;margin-bottom:6px;color:var(--green);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.next-action h3{font-size:16px}.next-action p{max-width:720px;margin-top:4px;color:var(--muted);font-size:12px}














@media(max-width:900px){.metric-deck{grid-template-columns:1fr 1fr}.overview-intro,.next-action{display:block}.freshness{margin-top:14px;width:max-content}.next-action .btn{margin-top:14px}}
@media(max-width:560px){.seo-overview{padding:18px}.metric-deck{grid-template-columns:1fr}.metric-card{min-height:125px}.overview-intro h2{font-size:24px}}

/* ============================================================
   Слой ADPASS Liquid поверх геометрии компонентов
   ============================================================ */

/* ---------- типографика ---------- */
h1,h2,h3,h4{font-family:var(--font-head);letter-spacing:-.02em;color:var(--ink)}
h1{font-size:clamp(26px,2.6vw,38px);line-height:1.06;font-weight:800}
h2{font-size:clamp(19px,1.5vw,24px);line-height:1.2;font-weight:700}
h3{font-size:16px;line-height:1.3;font-weight:700}
.eyebrow,.publication-kicker,.next-action-kicker,th,.workspace-score span,.article-card-score span{
  font-family:var(--font-head);font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--muted-2);
}
.eyebrow{font-size:10.5px}
.muted{color:var(--muted)}
.hint,.catalog-help,.catalog-path{color:var(--muted-2)}
a{color:var(--accent);text-decoration-color:rgba(15,118,110,.35)}
a:hover{text-decoration-color:currentColor}

/* цифры фабрики — дисплейным шрифтом */
.metric-card strong,.workspace-score b,.article-card-score strong,.score,
.calendar-day-number,.workspace-mini-metrics b{
  font-family:var(--font-display);font-weight:400;letter-spacing:.015em;font-variant-numeric:tabular-nums;color:var(--ink);
}
.metric-card strong{font-size:38px;line-height:.95}
.workspace-score b{font-size:28px;line-height:1}
.article-card-score strong{font-size:24px;line-height:1.05}

/* ---------- жидкое стекло ---------- */
.card,.hero-card,.side-nav,.top,.topbar,.seo-overview,.settings-home-card,.metric-card,
.workspace-panel,.workspace-section-card,.workspace-side-card,
.prompt-role-card,.prompt-global-card,.catalog-group,.settings-fold,.source-card,.article-card,
.workboard-column,.calendar-day,.command-dialog,.calendar-dialog,.login-card,.prompt-editor-shell{
  position:relative;
  background:var(--glass);
  backdrop-filter:blur(var(--glass-blur)) saturate(180%);
  -webkit-backdrop-filter:blur(var(--glass-blur)) saturate(180%);
  border:1px solid var(--stroke);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-soft);
}
.hero-card,.top,.side-nav,.command-dialog,.calendar-dialog,.login-card,.prompt-editor-shell{box-shadow:var(--shadow)}
.card::before,.hero-card::before,.side-nav::before,.top::before,.metric-card::before,
.settings-home-card::before,.article-card::before,.workspace-topbar::before,.login-card::before{
  content:'';position:absolute;inset:0;padding:1px;border-radius:inherit;pointer-events:none;z-index:0;
  background:linear-gradient(180deg,var(--edge-top) 0%,rgba(255,255,255,.10) 48%,var(--edge-bottom) 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
}
.card h2::before,.seo-overview::before,.glass-panel::before{content:none}
.article-card::after{content:none}

/* ---------- бренд ---------- */
.brand-orb{
  background:radial-gradient(circle at 32% 26%,#EAFF9C,var(--lime) 42%,#9ECF1E 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 6px 16px rgba(160,200,40,.30);
}
.brand-name{font-family:var(--font-head);font-weight:800;letter-spacing:-.01em;color:var(--ink)}
.brand-sub{color:var(--muted-2);font-weight:500}

/* ---------- навигация ---------- */
.nav-link{
  color:var(--muted);font-weight:600;border-radius:var(--radius-md);
  border:1px solid transparent;background:transparent;transition:background .16s ease,color .16s ease;
}
.nav-link:hover{background:var(--glass-hover);color:var(--ink)}
.nav-link.active{background:var(--accent);color:var(--accent-ink);box-shadow:0 6px 16px rgba(15,118,110,.26)}
.nav-link.active::before{content:none}
.nav-link.active span,.nav-link.active b{color:var(--accent-ink)}
.nav-section>span{font-family:var(--font-head);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--muted-2)}

/* ---------- кнопки ---------- */
button,.btn{
  font-family:var(--font);font-weight:700;line-height:1;
  color:var(--ink);background:var(--glass-heavy);border:1px solid var(--stroke);
  border-radius:var(--radius-md);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
  transition:transform .12s ease,background .16s ease,box-shadow .16s ease;
}
html[data-theme="dark"] button,html[data-theme="dark"] .btn{box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
button:hover,.btn:hover{background:var(--glass-hover);transform:translateY(-1px)}
button:active,.btn:active{transform:translateY(0) scale(.985)}
button:focus-visible,.btn:focus-visible{outline:none;box-shadow:var(--focus)}
button.primary,.btn.primary,.primary{
  background:var(--accent);color:var(--accent-ink);border-color:transparent;
  box-shadow:0 8px 20px rgba(15,118,110,.28);
}
button.primary:hover,.btn.primary:hover{background:var(--accent-2);box-shadow:0 10px 26px rgba(15,118,110,.34)}
button.danger{background:rgba(230,59,43,.12);color:var(--danger);border-color:rgba(230,59,43,.30)}
button:disabled,.btn[aria-disabled=true]{opacity:.5;transform:none}
.workspace-tab[aria-selected=true],.workspace-tab.active,.material-tabs button.active{
  background:var(--accent);color:var(--accent-ink);border-color:transparent;
}

/* ---------- бейджи ---------- */
.pill,.status,.tab-counter,.prompt-counter,.freshness,.calendar-day-count{
  font-family:var(--font-head);font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  background:var(--glass-soft);color:var(--muted);border:1px solid var(--stroke);border-radius:999px;
}
.status.is-ok,.status.fresh,.freshness-ok,.stage-ready{background:rgba(22,163,74,.13);color:var(--green);border-color:rgba(22,163,74,.26)}
.status.is-blocked,.status.is-error,.status-error,.critical,.err,.error{background:rgba(230,59,43,.12);color:var(--danger);border-color:rgba(230,59,43,.26)}
.warning,.stage-changes,.overdue{background:rgba(217,119,6,.13);color:var(--amber);border-color:rgba(217,119,6,.26)}
.good,.passed,.originality-passed{color:var(--green)}
.originality-stale{color:var(--amber)}
.originality-failed,.originality-error{color:var(--danger)}
.metric-growing,.signal-growing{color:var(--green)}
.metric-declining,.signal-declining{color:var(--danger)}
.calendar-day-count{background:var(--accent-soft);color:var(--accent);border-color:rgba(15,118,110,.22)}
.calendar-day.today{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}
.calendar-day.outside{opacity:.5}
.calendar-event{background:var(--accent-soft);color:var(--accent);border:1px solid rgba(15,118,110,.20);font-weight:700}

/* ---------- поля ---------- */
input,select,textarea{
  font-family:var(--font);color:var(--ink);background:var(--field);
  border:1px solid var(--stroke);border-radius:var(--radius-md);
}
input::placeholder,textarea::placeholder{color:var(--muted-2)}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:var(--focus)}
input[readonly]{background:var(--glass-soft);color:var(--muted)}
label{color:var(--muted);font-weight:700}
input[type=checkbox],input[type=radio]{accent-color:var(--accent)}

/* ---------- таблицы ---------- */
table{background:transparent;font-size:13.5px}
th{color:var(--muted-2);border-bottom:1px solid var(--stroke);background:var(--glass-soft)}
td{border-bottom:1px solid var(--stroke);color:var(--ink)}
tbody tr:hover{background:var(--glass-hover)}
.table-scroll{border:1px solid var(--stroke);border-radius:var(--radius-md);overflow:auto}
.table-scroll-hint{margin:10px 0 6px;font-size:11px}
.topics-table-scroll table{table-layout:fixed;width:1234px;min-width:1234px}
.topics-table-scroll th:nth-child(1){width:44px}.topics-table-scroll th:nth-child(2){width:94px}.topics-table-scroll th:nth-child(3){width:150px}.topics-table-scroll th:nth-child(4){width:100px}.topics-table-scroll th:nth-child(5){width:142px}.topics-table-scroll th:nth-child(6){width:96px}.topics-table-scroll th:nth-child(7){width:116px}.topics-table-scroll th:nth-child(8){width:128px}.topics-table-scroll th:nth-child(9){width:118px}.topics-table-scroll th:nth-child(10){width:246px}
.topics-table-scroll td{overflow-wrap:anywhere}
.topics-table-scroll th:last-child,.topics-table-scroll td:last-child{position:sticky;right:0;min-width:246px;background:var(--glass-solid);box-shadow:-12px 0 22px rgba(10,10,15,.12);z-index:2}
.topics-table-scroll th:last-child{z-index:3}
.topic-action-buttons{display:flex;gap:7px;flex-wrap:wrap;margin:0}
.topic-action-buttons .btn{min-height:34px;padding:6px 10px;font-size:11px}
.topic-demand{display:block;width:max-content;margin-top:5px}.topic-demand-pending{color:var(--muted-2)}.topic-demand-zero{background:rgba(217,119,6,.13);border-color:rgba(217,119,6,.26);color:var(--amber)}

/* ---------- текстовые поверхности ---------- */
pre.console,#internal-search-test-result,#runtime-config-json,#prompt-editor-text,
.prompt-global-textarea,.prompt-stage-textarea,.prompt-role-card textarea{
  font-family:var(--mono);font-size:12.5px;line-height:1.6;
}
.editor,.publication-paper,.preview-box{background:var(--glass-solid);color:var(--paper-ink);border:1px solid var(--stroke)}
.editor{box-shadow:var(--shadow-soft)}
.publication-paper{box-shadow:var(--shadow)}
.publication-kicker{color:var(--accent)}
.publication-deck{color:var(--muted)}
.article-body,.preview-box{font-family:var(--serif)}

/* ---------- служебные поверхности ---------- */
.next-action{
  background:linear-gradient(120deg,rgba(214,245,96,.34),rgba(255,255,255,.32));
  border:1px solid var(--stroke);border-radius:var(--radius-lg);
}
html[data-theme="dark"] .next-action{background:linear-gradient(120deg,rgba(92,129,255,.20),rgba(255,255,255,.04))}
.workspace-alert{background:rgba(217,119,6,.12);border:1px solid rgba(217,119,6,.26);color:var(--amber)}
.workspace-toast{background:var(--glass-heavy);border:1px solid var(--stroke);color:var(--ink);box-shadow:var(--shadow)}
.workboard-empty,.calendar-loading,.image-placeholder{border:1px dashed var(--stroke);color:var(--muted-2)}
.source-chip i{background:var(--accent)}
.workspace-shell,.workspace-page{background:var(--canvas);color:var(--ink)}
.workspace-modal-head{background:var(--glass-heavy);border-bottom:1px solid var(--stroke)}
.workspace-modal,.calendar-modal,.preview-modal,.prompt-editor-modal{background:var(--glass)}
.settings-home-card:hover,.article-card:hover,.article-card:focus-visible{
  background:var(--glass-hover);transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--stroke-strong);
}
.pipeline-step.done{background:rgba(22,163,74,.12);border-color:rgba(22,163,74,.24);color:var(--green)}
.theme-toggle button[aria-pressed=true],.theme-mode-switch button.active{
  background:var(--accent-soft);border-color:rgba(15,118,110,.30);color:var(--accent);
}

/* ---------- деградация стекла ---------- */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .card,.hero-card,.side-nav,.top,.topbar,.metric-card,.settings-home-card,.article-card,
  .workspace-topbar,.workspace-tabs,.workspace-panel,.workspace-section-card,.workspace-side-card,
  .prompt-role-card,.prompt-global-card,.catalog-group,.settings-fold,.source-card,
  .workboard-column,.calendar-day,.command-dialog,.calendar-dialog,.login-card,.prompt-editor-shell{
    background:var(--glass-solid);
  }
}
html[data-glass="reduced"] .card,html[data-glass="reduced"] .hero-card,
html[data-glass="reduced"] .side-nav,html[data-glass="reduced"] .top,
html[data-glass="reduced"] .topbar,html[data-glass="reduced"] .metric-card,
html[data-glass="reduced"] .settings-home-card,html[data-glass="reduced"] .article-card,
html[data-glass="reduced"] .workspace-topbar,html[data-glass="reduced"] .workspace-tabs,
html[data-glass="reduced"] .workspace-panel,html[data-glass="reduced"] .workspace-section-card,
html[data-glass="reduced"] .workspace-side-card,html[data-glass="reduced"] .prompt-role-card,
html[data-glass="reduced"] .prompt-global-card,html[data-glass="reduced"] .catalog-group,
html[data-glass="reduced"] .settings-fold,html[data-glass="reduced"] .source-card,
html[data-glass="reduced"] .workboard-column,html[data-glass="reduced"] .calendar-day,
html[data-glass="reduced"] .command-dialog,html[data-glass="reduced"] .calendar-dialog,
html[data-glass="reduced"] .login-card,html[data-glass="reduced"] .prompt-editor-shell{
  background:var(--glass-solid);backdrop-filter:none;-webkit-backdrop-filter:none;
}

@media(prefers-contrast:more){
  :root{--glass:#FFFFFF;--glass-heavy:#FFFFFF;--glass-soft:#FFFFFF;--glass-hover:var(--muted);
        --stroke:var(--glass);--muted:var(--ink);--muted-2:#52525B}
  html[data-theme="dark"]{--glass:#101018;--glass-heavy:#101018;--glass-soft:#101018;
        --glass-hover:var(--ink);--stroke:rgba(255,255,255,.34);--muted:var(--muted);--muted-2:#A1A1AA}
  .card,.hero-card,.side-nav,.top,.metric-card,.article-card{backdrop-filter:none;-webkit-backdrop-filter:none}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none !important;animation:none !important}
  button:hover,.btn:hover,.settings-home-card:hover,.article-card:hover{transform:none}
}

/* ============================================================
   Финальная сборка ADPASS Liquid: навигация, вкладки, поля
   ============================================================ */
.nav-link::before{display:none}
.nav-link{padding:9px 12px;font-size:14px;font-weight:600;background:transparent;box-shadow:none}
.nav-link:hover{background:var(--glass-hover);color:var(--ink);box-shadow:none}
.nav-link.active{background:var(--accent);color:var(--accent-ink);box-shadow:0 6px 16px rgba(15,118,110,.26)}
.nav-link.active:hover{background:var(--accent-2);color:var(--accent-ink)}
.nav-link.active::before{display:none}

.material-tabs{background:var(--glass-soft);border:1px solid var(--stroke)}
.material-tabs a{color:var(--muted);font-weight:700}
.material-tabs a:hover{color:var(--ink);background:var(--glass-hover)}
.material-tabs a.active{background:var(--accent);color:var(--accent-ink);box-shadow:none}

.hero-card{background:var(--glass-heavy);border:1px solid var(--stroke)}
.hero-card::after,.seo-overview::after{content:none}

.pill,.status,.freshness{
  padding:4px 10px;font-size:11.5px;line-height:1.25;font-weight:700;font-family:var(--font);
  text-transform:none;letter-spacing:.01em;color:var(--muted);
  background:var(--glass-soft);border:1px solid var(--stroke);
}
.status{max-width:38ch}
.hold-reason-label{white-space:normal;max-width:100%;text-align:left;line-height:1.35}
.status.is-ok{background:rgba(22,163,74,.12);color:var(--green-on-pill);border-color:rgba(22,163,74,.24)}
html[data-theme="dark"] .status.is-ok{color:var(--green)}

input,select,textarea{background:var(--field);color:var(--ink);border:1px solid var(--stroke)}
input[readonly]{opacity:1;background:var(--glass-soft);color:var(--muted)}

.workboard-column>header span,.tab-counter,.prompt-counter{
  background:var(--glass-soft);color:var(--muted);border:1px solid var(--stroke);font-family:var(--font);font-size:11px;
}

/* ссылки-действия внутри карточек — единственный акцент интерфейса */
.metric-card a,.card a:not(.btn):not(.nav-link),.settings-home-card a,.next-action a:not(.btn),
.workspace-section-card a:not(.btn),.article-card a:not(.btn){color:var(--accent);font-weight:700}
.muted,p.muted,span.muted,small.muted,div.muted{color:var(--muted)}
.hint{color:var(--muted-2)}

/* лист текста всегда плотный: читаем и печатаем без стекла */
.editor,.preview-box{background:var(--paper-muted);color:var(--paper-ink);border:1px solid var(--stroke)}
.publication-paper{background:var(--paper);color:var(--paper-ink)}

/* подписи в шапке — нейтральные; декоративная орбита — лаймовая */
.top .muted,.hero-card .muted,.seo-overview .muted,.top p,.hero-card p{color:var(--muted)}
.top::after{
  border-color:rgba(214,245,96,.55);
  box-shadow:0 0 0 20px rgba(214,245,96,.10),0 0 68px rgba(214,245,96,.28);
}

/* орбита — тихий фирменный акцент, не главный объект экрана */
.top::after{opacity:.5;width:112px;height:112px}
html[data-theme="dark"] .top::after{opacity:.32}
@media(max-width:900px){.top::after{display:none}}

/* страница входа: одна карточка, край стекла без остатков прежнего пятна */
.login-card{border:1px solid var(--stroke);background:var(--glass-heavy);box-shadow:var(--shadow-lift);border-radius:var(--radius-xl)}
.login-card::before{width:auto;height:auto;right:auto;top:auto;border-radius:inherit;filter:none;inset:0}
.login-logo{display:flex;align-items:center;gap:12px}

/* переключатели: выключен — нейтральный, включён — акцент действия */
input[type=checkbox]{background:var(--stroke-strong);border:1px solid var(--stroke)}
input[type=checkbox]::after{background:var(--glass-solid);box-shadow:0 1px 4px rgba(15,20,40,.25)}
input[type=checkbox]:checked{background:var(--accent);border-color:transparent}
input[type=checkbox]:checked::after{background:var(--accent-ink)}
input[type=checkbox]:focus-visible{outline:none;box-shadow:var(--focus)}

.pub-status-banner{padding:16px 18px;border-radius:15px;margin-bottom:16px;border:1px solid var(--stroke)}
.pub-status-banner strong{display:block;font-size:17px;margin-bottom:6px}
.pub-status-banner.pub-ready{border-color:rgba(22,163,74,.28);background:rgba(22,163,74,.08)}
.pub-status-banner.pub-ready strong{color:var(--green)}
.pub-status-banner.pub-blocked{border-color:rgba(217,119,6,.28);background:rgba(217,119,6,.08)}
.pub-status-banner.pub-blocked strong{color:var(--amber)}
.pub-blockers{margin:8px 0 0;padding-left:20px}
.pub-blockers li{margin-bottom:4px;font-size:13px}
.pub-actions{margin-top:12px;padding-top:12px;border-top:1px dashed var(--stroke);display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.pub-actions small{font-size:11px}

/* Жизненный цикл тем: сначала то, что требует решения, затем полная очередь. */
.topic-card-block{margin:18px 0}
.topic-card-block h3{margin:0 0 10px}
.topic-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}@media(max-width:900px){.topic-card-grid{grid-template-columns:1fr}}
.topic-card{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--stroke);border-radius:14px;background:var(--glass-soft);cursor:pointer}
.topic-card:hover,.topic-card:focus-visible{border-color:var(--accent);outline:none;box-shadow:var(--focus)}
.topic-card .topic-action-buttons{margin-top:auto}
.topic-tabs{display:flex;gap:8px;margin:20px 0 8px}
.topic-tab-panel[hidden]{display:none}
.topic-row-highlight{animation:topic-row-highlight 1.8s ease-out}
@keyframes topic-row-highlight{0%,55%{box-shadow:inset 4px 0 0 var(--accent);background:rgba(214,245,96,.18)}100%{box-shadow:none;background:transparent}}
.topic-history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--stroke)}
@media(max-width:600px){.topic-tabs{flex-wrap:wrap}.topic-history-row{align-items:flex-start;flex-direction:column}}

.workspace-fields-row[hidden]{display:none}
