/* kj-single-sustavka.css — извлечен от single-sustavka.php (беше inline <style id="kj-single-sustavka-v3">).
   Зарежда се условно от inc/kj-template-css.php с ?ver=KOJATA_VERSION.
   Кеширан файл вместо ~31KB inline на всяко зареждане. */
body.single-sastojka .site-content,
body.single-sastojka .content-area,
body.single-sastojka #primary {
    max-width:100%!important;width:100%!important;padding:0!important;margin:0!important;
    float:none!important;display:block!important;
}
body.single-sastojka .widget-area,
body.single-sastojka #right-sidebar,
body.single-sastojka #left-sidebar { display:none!important; }
body.single-sastojka .inside-article {
    padding:0!important;background:transparent!important;margin:0!important;
    border:none!important;box-shadow:none!important;
}
body.single-sastojka .entry-header,
body.single-sastojka .page-header { display:none!important; }
body.single-sastojka #page.grid-container,
body.single-sastojka #page.container {
    max-width:100%!important;padding:0!important;width:100%!important;
}
body.single-sastojka {
    background:linear-gradient(180deg,#fffaf5 0%,#f7efe8 100%)!important;
}

.kjs {
    --ink:#0d0610; --plum-950:#140815; --plum-900:#1f0e1c; --plum:#6b2d5e;
    --gold:#c9956a; --gold-light:#e0b085;
    --paper:#fffaf5; --line:rgba(107,45,94,.12); --line-soft:rgba(107,45,94,.06);
    --text:#251322; --text-mid:#3a2635; --muted:#766571;
    --green:#1f6b45; --green-bg:rgba(31,107,69,.10); --green-border:rgba(31,107,69,.25);
    --amber:#9a641e; --amber-bg:rgba(154,100,30,.10); --amber-border:rgba(154,100,30,.25);
    --red:#9b3240; --red-bg:rgba(155,50,64,.10); --red-border:rgba(155,50,64,.25);
    --blue:#356a8a; --blue-bg:rgba(53,106,138,.10);
    --serif:Georgia,'Times New Roman',serif;
}
.kjs *,.kjs *::before,.kjs *::after { box-sizing:border-box; }

.kjs-page {
    max-width:var(--kj-w);margin:0 auto;padding:22px 18px 56px;
    font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    color:var(--text);
}

/* HERO */
.kjs-hero {
    position:relative;overflow:hidden;border-radius:30px;padding:46px 44px 40px;
    background:
        radial-gradient(circle at 88% 28%,rgba(201,149,106,.28),transparent 30%),
        radial-gradient(circle at 12% 8%,rgba(107,45,94,.38),transparent 34%),
        linear-gradient(135deg,var(--plum-900),var(--plum-950));
    color:#fff;box-shadow:0 28px 80px rgba(13,6,16,.22);margin-bottom:30px;
}
.kjs-hero::after {
    content:attr(data-inci);
    position:absolute;right:-40px;bottom:30px;max-width:720px;
    font-family:var(--serif);font-size:3rem;line-height:1.2;font-style:italic;
    color:rgba(201,149,106,.06);transform:rotate(-5deg);
    pointer-events:none;white-space:nowrap;text-transform:lowercase;
}
.kjs-hero-content {
    position:relative;z-index:2;display:grid;
    grid-template-columns:80px minmax(0,1fr) 280px;
    gap:28px;align-items:start;
}
.kjs-hero-icon-wrap {
    width:80px;height:80px;border-radius:22px;
    background:rgba(255,255,255,.06);border:1px solid rgba(201,149,106,.25);
    display:grid;place-items:center;color:var(--gold);backdrop-filter:blur(10px);
}
.kjs-hero-body { min-width:0; }
.kjs-breadcrumb {
    display:flex;align-items:center;flex-wrap:wrap;gap:8px;
    font-size:.78rem;color:rgba(255,255,255,.55);margin-bottom:14px;
}
.kjs-breadcrumb a { color:rgba(255,255,255,.55);text-decoration:none;transition:color .15s; }
.kjs-breadcrumb a:hover { color:var(--gold); }
.kjs-breadcrumb > span:last-child { color:rgba(255,255,255,.92);font-weight:500; }
.kjs-breadcrumb .sep { opacity:.4; }
.kjs-hero h1 {
    font-family:var(--serif);font-size:clamp(1.9rem,4vw,2.8rem);font-weight:800;
    color:#fff;line-height:1.04;letter-spacing:-.025em;margin:0 0 6px;
}
.kjs-hero-inci {
    font-family:Consolas,'SFMono-Regular',monospace;font-size:.82rem;
    color:var(--gold);margin-bottom:14px;letter-spacing:.03em;opacity:.85;
}
.kjs-hero-sub {
    color:rgba(255,255,255,.78);font-size:.96rem;line-height:1.62;
    margin:0;max-width:580px;
}

/* ── HERO PASSPORT (нова дясна колона) ── */
.kjs-hero-passport {
    background:rgba(0,0,0,.32);
    border:1px solid rgba(255,255,255,.1);
    border-radius:18px;
    padding:18px 20px;
    backdrop-filter:blur(10px);
    display:flex;flex-direction:column;gap:14px;
}
.kjs-hero-passport-badge {
    display:flex;align-items:center;justify-content:center;gap:8px;
    padding:10px 14px;border-radius:12px;
    background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
}
.kjs-hero-passport-badge.good    { background:rgba(45,122,79,.18);border-color:rgba(111,207,151,.4); }
.kjs-hero-passport-badge.caution { background:rgba(196,138,0,.18);border-color:rgba(225,178,84,.4); }
.kjs-hero-passport-badge.avoid   { background:rgba(200,48,48,.18);border-color:rgba(225,118,118,.4); }
.kjs-hero-passport-badge.neutral { background:rgba(150,160,170,.16);border-color:rgba(180,190,200,.38); }
.kjs-hero-passport-badge-icon { font-size:1.1rem;line-height:1;color:#fff; }
.kjs-hero-passport-badge.good .kjs-hero-passport-badge-icon    { color:#6fcf97; }
.kjs-hero-passport-badge.caution .kjs-hero-passport-badge-icon { color:#e0a800; }
.kjs-hero-passport-badge.avoid .kjs-hero-passport-badge-icon   { color:#e07070; }
.kjs-hero-passport-badge.neutral .kjs-hero-passport-badge-icon { color:#c4ccd4; }
.kjs-hero-passport-badge-label {
    font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
    color:rgba(255,255,255,.95);
}
.kjs-hero-passport-badge.good .kjs-hero-passport-badge-label    { color:#6fcf97; }
.kjs-hero-passport-badge.caution .kjs-hero-passport-badge-label { color:#e0a800; }
.kjs-hero-passport-badge.avoid .kjs-hero-passport-badge-label   { color:#e07070; }
.kjs-hero-passport-badge.neutral .kjs-hero-passport-badge-label { color:#d2d9e0; }

.kjs-hero-passport-row { display:flex;flex-direction:column;gap:5px; }
.kjs-hero-passport-label {
    font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
    color:rgba(255,255,255,.5);
}
.kjs-hero-passport-value {
    font-size:.85rem;line-height:1.5;color:rgba(255,255,255,.9);
    display:flex;flex-wrap:wrap;gap:4px 6px;
}
.kjs-hero-passport-link {
    color:rgba(255,255,255,.92);text-decoration:none;
    border-bottom:1px solid rgba(201,149,106,.4);
    padding-bottom:1px;transition:all .15s;
}
.kjs-hero-passport-link:hover {
    color:var(--gold);border-bottom-color:var(--gold);
}
.kjs-hero-passport-link.dej { color:rgba(120,210,160,.92);border-bottom-color:rgba(111,207,151,.4); }
.kjs-hero-passport-link.dej:hover { color:#9be6c1;border-bottom-color:#9be6c1; }
.kjs-hero-passport-sep { color:rgba(255,255,255,.3); }

.kjs-hero-passport-verdict {
    font-size:.78rem;line-height:1.55;font-style:italic;
    color:rgba(255,255,255,.78);
    padding-top:10px;border-top:1px solid rgba(255,255,255,.08);
}

/* LAYOUT */
.kjs-layout { display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start; }
.kjs-content { min-width:0; }
.kjs-sidebar { display:flex;flex-direction:column;gap:14px;position:sticky;top:28px; }

/* PAPER BLOCKS */
.kjs-block {
    background:var(--paper);border:1px solid var(--line);border-radius:22px;
    padding:26px 30px;margin-bottom:18px;box-shadow:0 10px 28px rgba(31,14,28,.05);
}
.kjs-block-title {
    font-family:var(--serif);font-size:1.32rem;font-weight:800;color:var(--plum-900);
    letter-spacing:-.015em;margin:0 0 16px;padding-bottom:12px;
    border-bottom:2px solid var(--line);
    display:flex;align-items:center;gap:10px;
}
.kjs-block-title::before {
    content:'';width:4px;height:22px;background:var(--gold);border-radius:2px;flex-shrink:0;
}

/* TL;DR (legacy — оставено за случай, че се ползва другаде) */
.kjs-tldr {
    background:linear-gradient(135deg,rgba(107,45,94,.06),rgba(201,149,106,.04));
    border:1px solid var(--line);border-left:4px solid var(--plum);
    border-radius:16px;padding:20px 24px;margin-bottom:22px;
}
.kjs-tldr-label {
    font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
    color:var(--plum);margin-bottom:10px;
}
.kjs-tldr ul { margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:7px; }
.kjs-tldr li {
    font-size:.9rem;line-height:1.55;color:var(--text);
    padding-left:22px;position:relative;
}
.kjs-tldr li::before {
    content:'✓';position:absolute;left:0;top:1px;color:var(--green);
    font-weight:800;font-size:.85rem;
}
.kjs-tldr p { margin:0;font-size:.9rem;line-height:1.65;color:var(--text); }

/* ── UNIFIED QUICK-VIEW BLOCK (Кога има смисъл + Обобщение + Накратко) ── */
.kjs-quick {
    background:var(--paper);
    border:1px solid var(--line);
    border-radius:22px;
    padding:26px 30px;
    margin-bottom:24px;
    box-shadow:0 12px 36px rgba(31,14,28,.08);
    display:flex;flex-direction:column;
}
.kjs-quick-section + .kjs-quick-section {
    margin-top:18px;padding-top:18px;border-top:1px solid var(--line-soft);
}
.kjs-quick-kicker {
    font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
    color:var(--plum);margin-bottom:12px;
    display:flex;align-items:center;gap:8px;
}
.kjs-quick-kicker::before {
    content:'';width:3px;height:14px;background:var(--gold);border-radius:2px;
}

/* Компактни context редове */
.kjs-quick-context { display:flex;flex-direction:column;gap:6px; }
.kjs-quick-row {
    display:flex;align-items:flex-start;gap:10px;
    padding:8px 12px;border-radius:10px;
    font-size:.86rem;line-height:1.5;
}
.kjs-quick-row-icon {
    flex:0 0 20px;width:20px;height:20px;border-radius:999px;
    display:grid;place-items:center;font-size:.72rem;font-weight:900;
    background:rgba(255,255,255,.7);margin-top:1px;
}
.kjs-quick-row-label {
    font-size:.7rem;font-weight:800;text-transform:uppercase;
    letter-spacing:.06em;margin-right:6px;
}
.kjs-quick-row-text { color:var(--text); }
.kjs-quick-row.good {
    background:var(--green-bg);border-left:3px solid var(--green);
}
.kjs-quick-row.good .kjs-quick-row-label { color:var(--green); }
.kjs-quick-row.caution {
    background:var(--amber-bg);border-left:3px solid var(--amber);
}
.kjs-quick-row.caution .kjs-quick-row-label { color:var(--amber); }
.kjs-quick-row.neutral {
    background:rgba(107,45,94,.05);border-left:3px solid rgba(107,45,94,.35);
}
.kjs-quick-row.neutral .kjs-quick-row-label { color:var(--plum); }

/* Редакторско обобщение */
.kjs-quick-verdict {
    font-size:.93rem;line-height:1.68;color:var(--text-mid);margin:0;
}

/* Накратко (bullets) */
.kjs-quick-tldr { margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px; }
.kjs-quick-tldr li {
    font-size:.88rem;line-height:1.55;color:var(--text);
    padding-left:22px;position:relative;
}
.kjs-quick-tldr li::before {
    content:'✓';position:absolute;left:0;top:1px;color:var(--green);
    font-weight:800;font-size:.82rem;
}
.kjs-quick-tldr p { margin:0;font-size:.88rem;line-height:1.65;color:var(--text); }

/* PROSE */
.kjs-prose { font-size:.94rem;line-height:1.78;color:var(--text); }
.kjs-prose h2 {
    font-family:var(--serif);font-size:1.32rem;font-weight:800;color:var(--plum-900);
    margin:32px 0 12px;padding-bottom:12px;border-bottom:2px solid var(--line);
    letter-spacing:-.015em;display:flex;align-items:center;gap:10px;
}
.kjs-prose h2::before {
    content:'';display:inline-block;width:4px;height:22px;background:var(--gold);
    border-radius:2px;flex-shrink:0;
}
.kjs-prose h3 {
    font-family:var(--serif);font-size:1.05rem;font-weight:700;color:var(--plum-900);
    margin:22px 0 8px;letter-spacing:-.01em;
}
.kjs-prose p { margin-bottom:14px; }
.kjs-prose ul { padding-left:22px;margin-bottom:14px; }
.kjs-prose li { margin-bottom:6px; }
.kjs-prose sup { font-size:.7em;color:var(--plum); }
.kjs-prose sup a { color:var(--plum);text-decoration:none;font-weight:700; }
.kjs-prose sup a:hover { text-decoration:underline; }
.kjs-prose strong { color:var(--plum-900);font-weight:700; }

/* MINI CARDS */
.kjs-grid-2 { display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0; }
.kjs-grid-eff { display:grid;grid-template-columns:1fr;gap:14px;margin:16px 0; }
.kjs-mini-card {
    background:#fff;border-radius:16px;padding:18px 20px;border:1px solid var(--line);
}
.kjs-mini-card.proven    { border-left:4px solid var(--green); }
.kjs-mini-card.potential { border-left:4px solid var(--amber); }
.kjs-mini-card.concern   { border-left:4px solid var(--red); }
.kjs-mini-card-head {
    font-family:var(--serif);font-size:.92rem;font-weight:800;color:var(--plum-900);
    margin-bottom:10px;display:flex;align-items:center;gap:7px;letter-spacing:-.01em;
}
.kjs-mini-card.proven .kjs-mini-card-head    { color:var(--green); }
.kjs-mini-card.potential .kjs-mini-card-head { color:var(--amber); }
.kjs-mini-card.concern .kjs-mini-card-head   { color:var(--red); }
.kjs-mini-card ul { margin:0;padding:0 0 0 16px;font-size:.85rem;line-height:1.55;color:var(--text-mid); }
.kjs-mini-card li { margin-bottom:4px; }

/* COMPATIBILITY */
.kjs-compat-card { border-radius:16px;padding:18px 20px;border:1px solid var(--line); }
.kjs-compat-card.good { background:var(--green-bg);border-color:var(--green-border); }
.kjs-compat-card.bad  { background:var(--red-bg);border-color:var(--red-border); }
.kjs-compat-card-head {
    font-family:var(--serif);font-size:.9rem;font-weight:800;margin-bottom:10px;
    text-transform:uppercase;letter-spacing:.06em;
    display:flex;align-items:center;gap:7px;
}
.kjs-compat-card.good .kjs-compat-card-head { color:var(--green); }
.kjs-compat-card.bad .kjs-compat-card-head  { color:var(--red); }
.kjs-compat-card ul { margin:0;padding:0 0 0 16px;font-size:.85rem;line-height:1.55; }

/* CALLOUT */
.kjs-callout {
    background:linear-gradient(135deg,rgba(201,149,106,.08),rgba(107,45,94,.04));
    border:1px solid var(--line);border-left:4px solid var(--gold);
    border-radius:16px;padding:18px 22px;
    font-size:.9rem;line-height:1.65;color:var(--text);
}

/* WARNING */
.kjs-warning {
    background:var(--amber-bg);border:1px solid var(--amber-border);
    border-left:4px solid var(--amber);border-radius:16px;padding:18px 22px;
    font-size:.9rem;line-height:1.65;color:var(--text);
    display:flex;gap:14px;align-items:flex-start;
}
.kjs-warning-icon {
    flex-shrink:0;width:28px;height:28px;border-radius:50%;
    background:var(--amber);color:#fff;
    display:grid;place-items:center;font-weight:800;font-size:.9rem;
}
.kjs-warning strong { color:var(--amber); }

/* FAQ */
.kjs-faq { display:flex;flex-direction:column; }
.kjs-faq-item { border-bottom:1px solid var(--line);padding:16px 0; }
.kjs-faq-item:last-child { border-bottom:none;padding-bottom:0; }
.kjs-faq-q {
    font-family:var(--serif);font-weight:700;font-size:1rem;color:var(--plum-900);
    margin:0;cursor:pointer;display:flex;justify-content:space-between;
    align-items:flex-start;gap:16px;user-select:none;list-style:none;letter-spacing:-.01em;
}
.kjs-faq-q::after {
    content:'+';color:var(--plum);font-size:1.4rem;transition:transform .2s;
    flex-shrink:0;line-height:1;margin-top:2px;
}
.kjs-faq-item.open .kjs-faq-q::after { transform:rotate(45deg); }
.kjs-faq-a {
    font-size:.9rem;color:var(--text-mid);line-height:1.7;
    display:none;padding-top:10px;
}
.kjs-faq-item.open .kjs-faq-a { display:block; }

/* PRODUCTS */
.kjs-products-block {
    background:linear-gradient(135deg,rgba(107,45,94,.04),rgba(201,149,106,.05));
    border:1px solid var(--line);border-radius:20px;padding:24px 24px 26px;
}
.kjs-products-intro {
    font-size:.86rem;color:var(--muted);line-height:1.55;margin:6px 0 4px;max-width:62ch;
}
.kjs-products-loading { text-align:center;padding:30px;color:var(--muted);font-size:.88rem; }
.kjs-prods-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px; }
@media (max-width:768px){ .kjs-prods-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .kjs-prods-grid { grid-template-columns:1fr; } }
.kjs-prod-pill {
    background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;
    text-decoration:none!important;display:flex;align-items:center;gap:12px;
    transition:all .2s;color:inherit;
}
.kjs-prod-pill:hover {
    transform:translateY(-2px);box-shadow:0 8px 20px rgba(107,45,94,.10);
    border-color:var(--gold);
}
.kjs-prod-pill-img {
    width:48px;height:48px;border-radius:10px;
    background:linear-gradient(135deg,rgba(107,45,94,.06),rgba(201,149,106,.06));
    display:grid;place-items:center;flex-shrink:0;overflow:hidden;
}
.kjs-prod-pill-img img { width:100%;height:100%;object-fit:contain;padding:4px; }
.kjs-prod-pill-body { min-width:0;flex:1; }
.kjs-prod-pill-brand {
    font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
    color:var(--gold);margin-bottom:2px;
}
.kjs-prod-pill-name { font-size:.82rem;font-weight:600;color:var(--plum-900);line-height:1.3; }
.kjs-prod-pill-rating {
    flex-shrink:0;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;
    font-family:var(--serif);font-size:.82rem;font-weight:800;
}
.kjs-prod-pill-rating.good { background:var(--green-bg);color:var(--green); }
.kjs-prod-pill-rating.warn { background:var(--amber-bg);color:var(--amber); }
.kjs-prod-pill-rating.bad  { background:var(--red-bg);color:var(--red); }
.kjs-products-cta {
    display:block;margin-top:18px;padding:14px 20px;border-radius:14px;text-align:center;
    background:var(--plum);color:#fff!important;font-weight:700;font-size:.9rem;
    text-decoration:none!important;transition:all .2s;
}
.kjs-products-cta:hover { background:var(--plum-900);transform:translateY(-1px);box-shadow:0 8px 22px rgba(107,45,94,.22); }
.kjs-products-empty {
    text-align:center;padding:30px 20px;color:var(--muted);font-size:.88rem;
}
.kjs-products-empty a { color:var(--plum);font-weight:700;text-decoration:none; }
.kjs-products-empty a:hover { text-decoration:underline; }

/* SIDEBAR */
.kjs-side-card {
    background:var(--paper);border:1px solid var(--line);border-radius:20px;
    padding:20px 22px;box-shadow:0 10px 28px rgba(31,14,28,.05);
}
.kjs-side-card h4 {
    font-family:var(--serif);font-size:.92rem;font-weight:800;color:var(--plum-900);
    margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--line);
    letter-spacing:-.01em;
}
.kjs-info-row {
    display:flex;justify-content:space-between;align-items:flex-start;
    padding:9px 0;border-bottom:1px solid var(--line-soft);
    font-size:.82rem;gap:10px;
}
.kjs-info-row:last-child { border-bottom:none;padding-bottom:0; }
.kjs-info-label { color:var(--muted);flex-shrink:0;font-size:.76rem; }
.kjs-info-val { font-weight:600;color:var(--plum-900);text-align:right;word-break:break-word; }
.kjs-rating-pill {
    display:inline-flex;align-items:center;gap:4px;
    padding:3px 10px;border-radius:50px;font-size:.7rem;font-weight:800;
}
.kjs-rating-pill.good    { background:var(--green-bg);color:var(--green); }
.kjs-rating-pill.caution { background:var(--amber-bg);color:var(--amber); }
.kjs-rating-pill.avoid   { background:var(--red-bg);color:var(--red); }
.kjs-rating-pill.neutral { background:rgba(107,45,94,.08);color:var(--plum); }

.kjs-chem-grid { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px; }
.kjs-chem-cell {
    background:rgba(107,45,94,.05);border:1px solid var(--line-soft);
    border-radius:10px;padding:10px 12px;font-size:.82rem;color:var(--text);
}
.kjs-chem-cell-label {
    display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;
    color:var(--muted);margin-bottom:3px;font-weight:700;
}

.kjs-tax-cloud { display:flex;flex-wrap:wrap;gap:6px; }
.kjs-tax-pill {
    font-size:.72rem;font-weight:700;padding:5px 12px;border-radius:50px;
    background:rgba(107,45,94,.07);color:var(--plum);
    border:1px solid rgba(107,45,94,.15);
    text-decoration:none;transition:all .15s;
}
.kjs-tax-pill:hover { background:var(--plum);color:#fff;border-color:var(--plum); }
.kjs-tax-pill.dej { background:var(--green-bg);color:var(--green);border-color:var(--green-border); }
.kjs-tax-pill.dej:hover { background:var(--green);color:#fff;border-color:var(--green); }
.kjs-tax-pill.koz { background:var(--blue-bg);color:var(--blue);border-color:rgba(53,106,138,.25); }
.kjs-tax-pill.koz:hover { background:var(--blue);color:#fff;border-color:var(--blue); }

.kjs-cta-card {
    background:
        radial-gradient(circle at 80% 20%,rgba(201,149,106,.3),transparent 50%),
        linear-gradient(135deg,var(--plum-900),var(--plum-950));
    color:#fff;border-radius:20px;padding:22px;
    box-shadow:0 12px 28px rgba(13,6,16,.18);
}
.kjs-cta-card h4 {
    font-family:var(--serif);font-size:.98rem;font-weight:800;color:#fff;
    margin:0 0 8px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.15);
    letter-spacing:-.01em;
}
.kjs-cta-card p {
    font-size:.82rem;color:rgba(255,255,255,.7);line-height:1.55;margin:0 0 16px;
}
.kjs-cta-card a {
    display:flex;align-items:center;justify-content:center;gap:8px;
    background:linear-gradient(135deg,var(--gold-light),var(--gold));
    color:#2a1517!important;padding:11px 16px;border-radius:50px;
    font-weight:800;font-size:.86rem;text-decoration:none!important;
    transition:all .2s;box-shadow:0 6px 16px rgba(201,149,106,.25);
}
.kjs-cta-card a:hover {
    transform:translateY(-1px);
    box-shadow:0 10px 22px rgba(201,149,106,.4);
}
/* ── Ingredient Passport ── */
.kjs-passport {
    background: linear-gradient(135deg, #1f0e1c 0%, #2d1228 100%);
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 16px;
    border: 1px solid rgba(201,149,106,.2);
}
.kjs-passport-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,.1);
}
.kjs-passport-icon {
    width: 28px; height: 28px;
    background: rgba(201,149,106,.15);
    border-radius: 6px;
    display: flex; align-items: center; justify-content: center;
    font-size: 13px;
    flex-shrink: 0;
}
.kjs-passport-title {
    font-family: var(--serif);
    font-size: .85rem;
    font-weight: 700;
    font-style: italic;
    color: var(--gold);
    letter-spacing: .02em;
}
.kjs-passport-row {
    display: grid;
    gap: 10px;
}
.kjs-passport-item {
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.kjs-passport-label {
    font-size: .62rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: rgba(255,255,255,.4);
}
.kjs-passport-value {
    font-size: .8rem;
    color: rgba(255,255,255,.85);
    line-height: 1.5;
}
.kjs-passport-value.highlight {
    color: var(--gold);
    font-weight: 600;
}
.kjs-passport-signal {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 8px;
    border-radius: 99px;
    font-size: .7rem;
    font-weight: 700;
}
.kjs-passport-signal.well_supported   { background: rgba(45,122,79,.25);  color: rgba(111,207,151,.9); }
.kjs-passport-signal.promising_nuanced { background: rgba(196,138,0,.2);  color: rgba(225,178,84,.9); }
.kjs-passport-signal.often_overclaimed { background: rgba(180,60,60,.2);  color: rgba(240,140,140,.9); }
.kjs-passport-signal.insufficient_data { background: rgba(120,120,120,.2); color: rgba(200,200,200,.7); }


/* DECISION LAYER */
.kjs-decision {
    display:flex;flex-direction:column;gap:20px;margin:0 0 28px;
}
.kjs-verdict-card {
    background:transparent;
    border:none;border-left:3px solid var(--gold);
    border-radius:0;padding:4px 0 4px 20px;
    box-shadow:none;
    display:flex;flex-direction:column;
}
.kjs-verdict-kicker {
    font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
    color:var(--muted);margin-bottom:8px;
}
.kjs-verdict-text {
    font-size:.95rem;line-height:1.68;color:var(--text-mid);margin:0;flex-grow:1;
}
.kjs-verdict-reality {
    margin:16px 0 0;padding:0;border:none;border-top:1px solid rgba(107,45,94,.12);
    padding-top:14px;
    font-size:.86rem;line-height:1.6;color:var(--text-mid);font-style:italic;
    background:none;
}
.kjs-verdict-reality::before {
    content:'На практика: ';font-style:normal;font-weight:700;
    font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;
    color:var(--muted);display:block;margin-bottom:4px;
}
.kjs-context-card {
    background:var(--paper);border:1px solid rgba(107,45,94,.18);border-radius:20px;
    padding:22px 24px;box-shadow:0 12px 36px rgba(31,14,28,.10);
}
.kjs-context-title {
    font-family:var(--serif);font-size:1.05rem;font-weight:800;color:var(--plum-900);
    margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid rgba(107,45,94,.12);
}
.kjs-context-list { display:grid;gap:8px; }
.kjs-context-row {
    display:flex;align-items:flex-start;gap:10px;padding:10px 12px;
    border-radius:13px;font-size:.84rem;line-height:1.45;
}
.kjs-context-row strong {
    display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;
    letter-spacing:.06em;margin-bottom:2px;
}
.kjs-context-row.good {
    background:var(--green-bg);border:1px solid var(--green-border);
    border-left:4px solid var(--green);color:var(--green);
}
.kjs-context-row.caution {
    background:var(--amber-bg);border:1px solid var(--amber-border);
    border-left:4px solid var(--amber);color:var(--amber);
}
.kjs-context-row.neutral {
    background:rgba(107,45,94,.06);border:1px solid rgba(107,45,94,.12);
    border-left:4px solid rgba(107,45,94,.40);color:var(--plum);
}
.kjs-context-icon {
    flex:0 0 22px;width:22px;height:22px;border-radius:999px;
    display:grid;place-items:center;background:rgba(255,255,255,.65);
    font-size:.78rem;font-weight:900;flex-shrink:0;
}

/* LOOK FOR ROWS */
.kjs-look-for { display:flex;flex-direction:column;gap:8px; }
.kjs-look-row {
    padding:11px 16px;border-radius:12px;font-size:.88rem;
    line-height:1.5;border:1px solid transparent;
}
.kjs-look-row.good    { background:var(--green-bg);border-color:var(--green-border);color:var(--green); }
.kjs-look-row.caution { background:var(--amber-bg);border-color:var(--amber-border);color:var(--amber); }
.kjs-look-row.avoid   { background:var(--red-bg);border-color:var(--red-border);color:var(--red); }
.kjs-look-row.neutral { background:rgba(107,45,94,.05);border-color:var(--line);color:var(--text); }

/* RESPONSIVE */
@media(max-width:940px) {
    .kjs-verdict-wrap { grid-template-columns:1fr;gap:16px; }
    .kjs-verdict-card { border-left:none;border-bottom:2px solid var(--gold);padding:0 0 16px 0;border-radius:0; }
    .kjs-hero { padding:32px 28px 36px;border-radius:24px; }
    .kjs-hero::after { font-size:2.2rem;right:-30px; }
    .kjs-hero-content { grid-template-columns:64px 1fr;gap:18px; }
    .kjs-hero-icon-wrap { width:64px;height:64px; }
    .kjs-hero-passport {
        grid-column:1/-1;margin-top:8px;
    }
    .kjs-layout { grid-template-columns:1fr;gap:22px; }
    .kjs-sidebar { position:static; }
    .kjs-block { padding:22px 24px; }
    .kjs-quick { padding:22px 24px; }
    .kjs-grid-2 { grid-template-columns:1fr; }
}
@media(max-width:640px) {
    .kjs-page { padding:14px 12px 40px; }
    .kjs-hero { padding:26px 20px 32px; }
    .kjs-hero h1 { font-size:1.65rem; }
    .kjs-hero-sub { font-size:.88rem; }
    .kjs-block { padding:20px;border-radius:18px; }
    .kjs-quick { padding:20px;border-radius:18px; }
    .kjs-block-title { font-size:1.18rem; }
    .kjs-prods-grid { grid-template-columns:1fr; }
    .kjs-side-card { padding:18px 20px; }
    .kjs-info-row { flex-direction:column;gap:3px;align-items:flex-start; }
    .kjs-info-val { text-align:left; }
}
/* ═══ UV филтри ═══
   Ползва наличните променливи на .kjs, не въвежда нови цветове. */

/* Ширините идват от интервалите в nm: 30 / 20 / 60. Grid ги дели точно,
   без padding-ът да ги разваля, както става при flex-basis. */
.kjuv-scale{display:grid;grid-template-columns:30fr 20fr 60fr;
 border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#fff;margin-bottom:10px}
.kjuv-zone{box-sizing:border-box;padding:14px 12px;border-right:1px solid var(--line-soft);
 position:relative;min-width:0}
.kjuv-zone:last-child{border-right:none}
/* наситеността носи покритието: 0 няма → 3 основно */
.kjuv-zone.lv0{background:repeating-linear-gradient(135deg,transparent,transparent 5px,rgba(107,45,94,.04) 5px,rgba(107,45,94,.04) 10px)}
/* „още не знаем“ е собствено състояние, не същото като доказано „няма“ */
.kjuv-zone.unknown{background:var(--paper)}
.kjuv-zone.unknown .kjuv-zone-val{color:var(--muted);font-style:italic}
.kjuv-zone.lv1{background:rgba(107,45,94,.05)}
.kjuv-zone.lv2{background:rgba(107,45,94,.13)}
.kjuv-zone.lv3{background:linear-gradient(180deg,rgba(107,45,94,.26),rgba(107,45,94,.18))}
.kjuv-zone-lbl{display:block;font-family:var(--serif);font-size:1.02rem;font-weight:800;
 color:var(--plum-900);letter-spacing:-.01em}
.kjuv-zone-nm{display:block;font-size:.7rem;color:var(--muted);font-family:Consolas,monospace;margin-top:1px}
.kjuv-zone-val{display:block;font-size:.82rem;color:var(--text-mid);margin-top:7px;line-height:1.35}
.kjuv-zone.lv3 .kjuv-zone-val{font-weight:700;color:var(--plum-900)}

.kjuv-role{font-size:.88rem;color:var(--text-mid);line-height:1.55;margin:0 0 10px}
.kjuv-peak{font-size:.85rem;color:var(--text-mid);margin:0 0 10px}
.kjuv-peak em{font-style:normal;color:var(--muted);font-size:.8rem}
.kjuv-gate{font-size:.84rem;line-height:1.6;color:var(--text-mid);margin:0;
 padding:12px 16px;background:var(--blue-bg);border-left:3px solid var(--blue);border-radius:0 10px 10px 0}

/* фотостабилност — трите нива */
.kjuv-ps{list-style:none;margin:0 0 12px;padding:0;counter-reset:ps}
.kjuv-ps-row{display:flex;gap:13px;padding:13px 0;border-bottom:1px solid var(--line-soft)}
.kjuv-ps-row:last-child{border-bottom:none}
.kjuv-ps-n{flex:0 0 25px;height:25px;border-radius:50%;background:var(--plum);color:#fff;
 display:grid;place-items:center;font-size:.78rem;font-weight:700;font-family:Consolas,monospace}
.kjuv-ps-row.unknown .kjuv-ps-n{background:#fff;color:var(--muted);border:1px dashed var(--line)}
.kjuv-ps-row b{display:block;font-size:.94rem;color:var(--plum-900)}
.kjuv-ps-row p{margin:4px 0 0;font-size:.87rem;color:var(--text);line-height:1.5}
.kjuv-ps-row em{display:block;margin-top:4px;font-style:normal;font-size:.79rem;color:var(--muted);line-height:1.5}

.kjuv-chips{display:flex;flex-wrap:wrap;gap:7px}
.kjuv-chip{font-size:.82rem;padding:5px 13px;border-radius:50px;background:rgba(107,45,94,.06);
 border:1px solid var(--line);color:var(--text-mid)}

/* регулация */
.kjuv-reg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.kjuv-reg-col{min-width:0;border:1px solid var(--line);border-radius:14px;padding:16px 18px;background:#fff}
.kjuv-reg-col.pending{background:var(--amber-bg);border-color:var(--amber-border)}
.kjuv-reg-head{font-family:var(--serif);font-size:.98rem;font-weight:800;color:var(--plum-900);
 display:flex;justify-content:space-between;align-items:baseline;gap:8px;
 padding-bottom:9px;margin-bottom:9px;border-bottom:1px solid var(--line-soft)}
.kjuv-reg-head span{font-family:Consolas,monospace;font-size:.7rem;font-weight:400;color:var(--muted)}
.kjuv-reg-col.pending .kjuv-reg-head span{color:var(--amber);font-weight:700}
.kjuv-reg dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:5px 12px;font-size:.85rem}
.kjuv-reg dt{color:var(--muted);white-space:nowrap}
.kjuv-reg dd{margin:0;color:var(--text);overflow-wrap:anywhere}
.kjuv-reg-empty{margin:0;font-size:.82rem;line-height:1.55;color:var(--text-mid)}
/* v1.28.1: „Бележка“ под изричния абзац (запис само с бележка) — не залепва за него */
.kjuv-reg-empty + dl{margin-top:8px}

/* На телефон лентата НЕ се изправя вертикално: пропорцията е половината
   информация и точно на малък екран най-лесно се губи. */
@media(max-width:700px){
 .kjuv-reg{grid-template-columns:minmax(0,1fr)}
 /* „Задължително предупреждение“ на един ред правеше колоната по-широка от телефона */
 .kjuv-reg dl{grid-template-columns:minmax(0,40%) minmax(0,1fr)}
 .kjuv-reg dt{white-space:normal}
 .kjuv-zone{padding:11px 7px}
 .kjuv-zone-lbl{font-size:.9rem}
 .kjuv-zone-nm{font-size:.62rem}
 .kjuv-zone-val{font-size:.73rem;margin-top:5px;hyphens:auto}
}


.kjuv-nodata{color:var(--muted);font-style:italic}
.kjuv-note{font-size:.79rem;color:var(--muted);line-height:1.5;margin:0 0 12px}
/* Под 360 px думата „покритие“ отпада — заглавието на блока вече дава контекста */
@media(max-width:359px){ .kjuv-zone-w{display:none} .kjuv-zone{padding:10px 5px} }

/* ── FAQ и сгъваеми блокове: сигналът, че се отварят ─────────────── */
details.q>summary{display:flex;align-items:center;justify-content:space-between;gap:12px}
details.q>summary::after{content:'+';flex:0 0 auto;color:var(--gold);font-size:1.15rem;line-height:1}
details.q[open]>summary::after{content:'−'}
details.q>summary:focus-visible,
details.more>summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px;border-radius:4px}

/* „Запомни“ — изводът под отговора */
.kjs-zapomni{background:rgba(107,45,94,.055);border-radius:12px;padding:12px 16px;
 font-size:.93rem;line-height:1.6;color:var(--text);margin:10px 0 0}
.kjs-zapomni b{color:var(--plum)}

/* ── v1.26.0: сгъваеми източници в статията (inc/kj-sustavka-sources.php) ───────── */
.kjs-sources{margin:30px 0 4px;border-top:2px solid var(--line)}
.kjs-sources>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;
 padding:14px 0 10px;font-family:var(--serif);font-size:1.05rem;font-weight:800;color:var(--plum-900)}
.kjs-sources>summary::-webkit-details-marker{display:none}
.kjs-sources>summary::after{content:'+';flex:0 0 auto;color:var(--gold);font-size:1.25rem;line-height:1}
.kjs-sources[open]>summary::after{content:'−'}
.kjs-sources>summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px;border-radius:4px}
.kjs-prose .kjs-sources ul,.kjs-prose .kjs-sources ol{padding-left:22px;margin:4px 0 6px;font-size:.84rem;line-height:1.6;color:var(--text-mid)}
.kjs-sources li{margin-bottom:8px;overflow-wrap:anywhere;scroll-margin-top:96px}
.kjs-sources li:target{background:rgba(201,149,106,.16);border-radius:6px;box-shadow:0 0 0 6px rgba(201,149,106,.16)}

/* ── v1.26.0: „Регулаторен статус“ — резюме отгоре, пълната таблица в <details> ── */
.kjuv-reg-sum{display:flex;flex-direction:column;gap:6px;margin:0 0 12px}
.kjuv-reg-sum-row{margin:0;font-size:.92rem;line-height:1.55;color:var(--text)}
.kjuv-reg-sum-row b{color:var(--plum-900)}
.kjuv-reg-badge{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:50px;border:1px solid var(--line);
 font-family:Consolas,monospace;font-size:.7rem;color:var(--muted);white-space:nowrap;vertical-align:1px}
.kjuv-reg-badge.pending{color:var(--amber);font-weight:700;background:var(--amber-bg);border-color:var(--amber-border)}
.kjuv-reg-more>summary{cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-size:.84rem;font-weight:700;color:var(--plum);
 list-style:none;padding:4px 0}
.kjuv-reg-more>summary::-webkit-details-marker{display:none}
.kjuv-reg-more>summary::after{content:'+';color:var(--gold);font-size:1.1rem;line-height:1}
.kjuv-reg-more[open]>summary::after{content:'−'}
.kjuv-reg-more[open]>summary{margin-bottom:10px}

/* ── v1.27.0: дясна колона — „На тази страница“ + компактните продукти (inc/kj-sustavka-toc.php,
   kj_render_products_side в kj-cross-linking.php). Само на десктоп ≥ 1024px: колоната спира да е sticky
   цялата и се разтяга до височината на статията, групата .kjs-side-nav е sticky под header-а. ── */
.kjs-side-nav{display:none}
@media(min-width:1024px){
 .kjs-sidebar:has(> .kjs-side-nav){position:static;align-self:stretch}
 .kjs-side-nav{display:flex;flex-direction:column;gap:14px;position:sticky;top:124px;   /* header-ът на десктоп е 109px */
  max-height:calc(100vh - 140px);overflow-y:auto;scrollbar-width:thin;   /* без „contain“ за overscroll — колелото продължава към страницата */
  padding:2px 12px 16px;margin:-2px -12px -16px}   /* полето: сенките на картите не се режат от overflow */
 /* продуктите: на десктоп само в колоната (големият блок с id="produkti" се крие) */
 .kjs-layout:has(.kjs-side-prod) .kjs-content .kj-prod-section{display:none}
 .kjs-prose h2[id]{scroll-margin-top:124px}
 .kjs-sources li{scroll-margin-top:124px}   /* v1.26.0 даваше 96px — под 109px header */
}
.kjs-toc h4{margin-bottom:10px}
.kjs-toc-list{list-style:none;margin:0;padding:0}
.kjs-toc-list li{margin:0}
.kjs-toc-list a{display:block;padding:6px 10px 6px 12px;margin-left:-2px;border-left:2px solid var(--line);
 font-size:.8rem;line-height:1.4;color:var(--text-mid);text-decoration:none;border-radius:0 8px 8px 0;transition:background .15s,color .15s,border-color .15s}
.kjs-toc-list a:hover{color:var(--plum);background:rgba(107,45,94,.05)}
.kjs-toc-list a.is-active{color:var(--plum-900);font-weight:700;border-left-color:var(--gold);background:rgba(201,149,106,.12)}
.kjs-toc-list a:focus-visible,.kjs-side-prod a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.kjs-side-prod h4{margin-bottom:8px}
.kjs-side-prod-list{list-style:none;margin:0;padding:0}
.kjs-side-prod-list li{border-bottom:1px solid var(--line-soft)}
.kjs-side-prod-item{display:flex;align-items:center;gap:10px;padding:8px 0;text-decoration:none;color:var(--text)}
.kjs-side-prod-item img,.kjs-side-prod-noimg{flex:0 0 44px;width:44px;height:44px;border-radius:10px;object-fit:contain;background:#fff;border:1px solid var(--line-soft)}
.kjs-side-prod-noimg{display:grid;place-items:center;font-size:1.1rem}
.kjs-side-prod-txt{min-width:0;display:flex;flex-direction:column}
.kjs-side-prod-brand{font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);
 white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kjs-side-prod-name{font-size:.8rem;font-weight:600;line-height:1.3;color:var(--plum-900);
 display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kjs-side-prod-item:hover .kjs-side-prod-name{color:var(--plum);text-decoration:underline}
.kjs-side-prod-more{display:inline-block;margin-top:10px;font-size:.82rem;font-weight:800;color:var(--plum);text-decoration:none}
.kjs-side-prod-more:hover{text-decoration:underline}
.kjs-side-prod-count{display:block;margin-top:2px;font-size:.7rem;color:var(--muted)}

/* v1.30.0: „Технически данни“ (до тогава „Химия & формулиране“) — сгънат <details> в дясната колона */
.kjs-side-tech>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
.kjs-side-tech>summary::-webkit-details-marker{display:none}
.kjs-side-tech>summary::after{content:'+';flex:0 0 auto;color:var(--gold);font-size:1.15rem;line-height:1}
.kjs-side-tech[open]>summary::after{content:'−'}
.kjs-side-tech>summary h4{flex:1 1 auto;margin:0;padding:0;border:0}
.kjs-side-tech[open]>summary{margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.kjs-side-tech>summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px;border-radius:4px}
/* v1.30.0: „Други имена“ (kj_inci_aliases) в „Безопасност и данни“ — дълги списъци се пренасят */
.kjs-info-names{font-weight:500;font-size:.76rem;line-height:1.5;overflow-wrap:anywhere}
