:root{
    --ink:#1c1917; --charcoal:#57534d; --stone:#79716b; --canvas:#f7f5f2; --card:#ffffff;
    --border:rgba(28,25,23,0.10); --border-soft:rgba(28,25,23,0.06);
    --accent:#f97316; --accent-dark:#ea580c; --accent-wash:#fff1e6;
    --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  }
*{ box-sizing:border-box; }
body{ margin:0; background:var(--canvas); color:var(--charcoal); font-family:var(--sans); }
a{ text-decoration:none; }
/* ===== NAV ===== */
  .ks-nav{ position:sticky; top:0; z-index:50; background:rgba(247,245,242,0.92); backdrop-filter:blur(10px);
    border-bottom:1px solid var(--border); }
.ks-nav__row{ max-width:1200px; margin:0 auto; padding:14px 24px; display:flex; align-items:center;
    justify-content:space-between; gap:20px; }
.ks-nav__logo{ font-weight:800; font-size:18px; color:var(--ink); letter-spacing:-0.01em; }
.ks-nav__logo span{ color:var(--accent); }
.ks-nav__powered{ font-family:var(--mono); font-size:10.5px; color:var(--stone); border-left:1px solid var(--border);
    padding-left:10px; margin-left:2px; white-space:nowrap; }
.ks-nav__powered:hover{ color:var(--accent-dark); }
.ks-nav__left{ display:flex; align-items:center; gap:2px; }
.ks-nav__trigger{ position:relative; }
.ks-nav__trigger > button, .ks-nav__bloglink{ font:inherit; font-size:14px; font-weight:700; color:var(--ink); background:none;
    border:none; padding:10px 14px; border-radius:8px; cursor:pointer; display:flex; align-items:center; gap:6px; }
.ks-nav__trigger > button:hover, .ks-nav__trigger.is-open > button, .ks-nav__bloglink:hover{ background:var(--accent-wash); color:var(--accent-dark); }
.ks-nav__trigger > button::after{ content:"▾"; font-size:9px; opacity:0.6; }
.ks-nav__mentor{ font-size:13.5px; font-weight:700; color:#fff !important; background:var(--accent); padding:10px 18px;
    border-radius:99px; white-space:nowrap; }
/* мега-панель: домены слева, подтемы справа */
  .ks-mega{ position:absolute; top:calc(100% + 8px); left:0; background:var(--card); border:1px solid var(--border);
    border-radius:16px; box-shadow:0 12px 32px rgba(28,25,23,0.10); display:none; overflow:hidden; }
.ks-nav__trigger.is-open .ks-mega{ display:flex; }
.ks-mega__domains{ width:200px; padding:10px; border-right:1px solid var(--border); display:flex; flex-direction:column; gap:2px; }
.ks-mega__domains button{ font:inherit; font-size:13.5px; font-weight:600; color:var(--charcoal); background:none;
    border:none; text-align:left; padding:9px 10px; border-radius:8px; cursor:pointer; display:flex; align-items:center; justify-content:space-between; }
.ks-mega__domains button:hover, .ks-mega__domains button.is-active{ background:var(--accent-wash); color:var(--accent-dark); }
.ks-mega__sub{ width:260px; padding:14px; display:none; flex-direction:column; gap:2px; }
.ks-mega__sub.is-active{ display:flex; }
.ks-mega__sub a{ font-size:13px; color:var(--charcoal); padding:7px 8px; border-radius:8px; }
.ks-mega__sub a:hover{ background:var(--accent-wash); color:var(--accent-dark); }
.ks-mega__sub .all-link{ margin-top:6px; padding-top:10px; border-top:1px solid var(--border-soft); font-weight:700; color:var(--accent-dark); }
.ks-nav__burger{ display:none; background:none; border:1px solid var(--border); border-radius:8px; width:38px; height:38px;
    align-items:center; justify-content:center; cursor:pointer; }
.ks-nav__burger span, .ks-nav__burger span::before, .ks-nav__burger span::after{ display:block; width:16px; height:2px;
    background:var(--ink); position:relative; }
.ks-nav__burger span::before, .ks-nav__burger span::after{ content:""; position:absolute; left:0; }
.ks-nav__burger span::before{ top:-5px; }
.ks-nav__burger span::after{ top:5px; }
.ks-nav__mobile{ display:none; }
@media (max-width:860px){
    .ks-nav__trigger, .ks-nav__bloglink.desktop-only, .ks-nav__mentor.desktop-only{ display:none; }
    .ks-nav__burger{ display:flex; }
    .ks-nav__mobile{ display:none; flex-direction:column; gap:2px; padding:10px 16px 18px; border-top:1px solid var(--border); }
    .ks-nav.is-open .ks-nav__mobile{ display:flex; }
    .ks-nav__mgroup > button{ width:100%; text-align:left; font:inherit; font-weight:700; font-size:14px; color:var(--ink);
      background:none; border:none; padding:12px 4px; display:flex; justify-content:space-between; cursor:pointer; }
    .ks-nav__msub{ display:none; flex-direction:column; padding-left:6px; }
    .ks-nav__mgroup.is-open .ks-nav__msub{ display:flex; }
    .ks-nav__msub a{ font-size:13.5px; color:var(--charcoal); padding:8px 4px; }
    .ks-nav__mentor.mobile-only{ display:block; margin-top:10px; text-align:center; }
    .ks-nav__bloglink.mobile-only{ display:block; font-weight:700; color:var(--ink); padding:12px 4px; }
  }
.ks-nav__mentor.mobile-only, .ks-nav__bloglink.mobile-only{ display:none; }
/* ===== HERO (заглушка) ===== */
  .hero{ max-width:900px; margin:0 auto; padding:64px 24px 40px; text-align:center; }
.hero h1{ font-size:38px; font-weight:800; color:var(--ink); letter-spacing:-0.02em; margin:0 0 14px; line-height:1.15; }
.hero p{ font-size:17px; color:var(--stone); margin:0; }
.section{ max-width:1200px; margin:0 auto; padding:0 24px 56px; }
.section__head{ display:flex; align-items:baseline; justify-content:space-between; margin-bottom:18px; flex-wrap:wrap; gap:10px; }
.section__title{ font-size:20px; font-weight:800; color:var(--ink); letter-spacing:-0.01em; }
.section__eyebrow{ font-family:var(--mono); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:0.06em;
    color:var(--accent-dark); display:block; margin-bottom:4px; }
/* ===== КАРУСЕЛЬ ДОМЕНОВ + БЛОГ (2 ряда, горизонтальный скролл) ===== */
  .carousel-wrap{ position:relative; }
.carousel{ display:grid; grid-auto-flow:column; grid-template-rows:repeat(2,1fr); gap:12px;
    overflow-x:auto; scroll-snap-type:x mandatory; padding:4px 4px 14px; scrollbar-width:thin; }
.carousel::-webkit-scrollbar{ height:6px; }
.carousel::-webkit-scrollbar-thumb{ background:var(--border); border-radius:99px; }
.fcard{ scroll-snap-align:start; width:230px; background:var(--card); border:1px solid var(--border); border-radius:16px;
    padding:16px; display:flex; flex-direction:column; gap:6px; transition:border-color .15s, transform .15s; }
.fcard:hover{ border-color:var(--accent); transform:translateY(-2px); }
.fcard.is-blog{ background:var(--ink); border-color:var(--ink); }
.fcard.is-blog .fcard__label, .fcard.is-blog .fcard__desc, .fcard.is-blog .fcard__count{ color:#fff !important; opacity:.9; }
.fcard.is-blog .fcard__icon{ background:rgba(255,255,255,0.14); color:#fff; }
.fcard__icon{ width:32px; height:32px; border-radius:8px; background:var(--accent-wash); display:flex; align-items:center;
    justify-content:center; font-size:13px; color:var(--accent-dark); font-weight:800; }
.fcard__label{ font-size:14.5px; font-weight:700; color:var(--ink); margin-top:4px; }
.fcard__desc{ font-size:12px; color:var(--stone); line-height:1.4; }
.fcard__count{ font-family:var(--mono); font-size:10px; color:var(--stone); margin-top:auto; }
.carousel-arrow{ position:absolute; top:50%; transform:translateY(-50%); width:36px; height:36px; border-radius:50%;
    background:var(--card); border:1px solid var(--border); box-shadow:0 4px 12px rgba(0,0,0,0.08); cursor:pointer;
    display:flex; align-items:center; justify-content:center; font-size:14px; color:var(--ink); z-index:5; }
.carousel-arrow.left{ left:-6px; }
.carousel-arrow.right{ right:-6px; }
@media (max-width:700px){ .carousel-arrow{ display:none; } }
/* ===== ЛЕНТА МАТЕРИАЛОВ ===== */
  .filters{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:18px; }
.filter-chip{ font-size:13px; font-weight:600; padding:8px 14px; border-radius:99px; border:1px solid var(--border);
    background:var(--card); color:var(--charcoal); cursor:pointer; }
.filter-chip.is-active{ background:var(--ink); border-color:var(--ink); color:#fff; }
.materials-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
@media (max-width:900px){ .materials-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px){ .materials-grid{ grid-template-columns:1fr; } }
.mcard{ background:var(--card); border:1px solid var(--border); border-radius:16px; padding:18px; display:flex;
    flex-direction:column; gap:8px; }
.mcard__meta{ display:flex; gap:6px; align-items:center; }
.mcard__domain{ font-family:var(--mono); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em;
    color:var(--accent-dark); }
.mcard__format{ font-size:10px; font-weight:600; color:var(--stone); background:var(--canvas); border:1px solid var(--border);
    padding:2px 8px; border-radius:99px; }
.mcard__title{ font-size:15px; font-weight:700; color:var(--ink); line-height:1.35; }
.mcard__title a{ color:inherit; }
.mcard__excerpt{ font-size:13px; color:var(--stone); line-height:1.5; }
.load-more{ display:block; margin:22px auto 0; font:inherit; font-size:14px; font-weight:700; color:var(--ink);
    background:var(--card); border:1px solid var(--border); border-radius:99px; padding:11px 24px; cursor:pointer; }
.load-more:hover{ border-color:var(--accent); color:var(--accent-dark); }
/* ===== FOOTER ===== */
  .footer{ border-top:1px solid var(--border); margin-top:20px; }
.footer__inner{ max-width:1200px; margin:0 auto; padding:40px 24px; display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr; gap:28px; }
@media (max-width:800px){ .footer__inner{ grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .footer__inner{ grid-template-columns:1fr; } }
.footer__logo{ font-weight:800; font-size:17px; color:var(--ink); margin-bottom:8px; }
.footer__logo span{ color:var(--accent); }
.footer__desc{ font-size:13px; color:var(--stone); line-height:1.5; max-width:280px; }
.footer__col h4{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; color:var(--ink);
    margin:0 0 12px; }
.footer__col a{ display:block; font-size:13.5px; color:var(--charcoal); padding:5px 0; }
.footer__col a:hover{ color:var(--accent-dark); }
.footer__bottom{ border-top:1px solid var(--border-soft); padding:16px 24px; max-width:1200px; margin:0 auto;
    font-size:12px; color:var(--stone); display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; }
body{ background:var(--canvas) !important; }
#ksNav, #ksNav *, .ks-list-wrap, .ks-list-wrap *, .ks-footer, .ks-footer *{
    font-family: var(--sans);
    box-sizing: border-box;
  }
@media (prefers-reduced-motion: no-preference){ html{ scroll-behavior:smooth; } }
a:focus-visible, button:focus-visible{ outline:2px solid var(--accent); outline-offset:2px; }
/* ===== NAV — идентично главной странице ===== */
  .ks-nav{ position:sticky; top:0; z-index:100; background:rgba(247,245,242,0.92); backdrop-filter:blur(10px); border-bottom:1px solid var(--border); }
.ks-nav__logo{ font-weight:800; font-size:18px; color:var(--ink); letter-spacing:-0.01em; text-decoration:none; }
.ks-nav__trigger > button, .ks-nav__bloglink{ font:inherit; font-size:14px; font-weight:700; color:var(--ink); background:none; border:none; padding:10px 14px; border-radius:8px; cursor:pointer; display:flex; align-items:center; gap:6px; text-decoration:none; }
.ks-nav__mentor{ font-size:13.5px; font-weight:700; color:#fff !important; background:var(--accent); padding:10px 18px; border-radius:99px; white-space:nowrap; text-decoration:none; }
.ks-mega{ position:absolute; top:calc(100% + 8px); left:0; background:var(--card); border:1px solid var(--border); border-radius:16px; box-shadow:0 12px 32px rgba(28,25,23,0.10); display:none; overflow:hidden; }
.ks-mega__sub a{ font-size:13px; color:var(--charcoal); padding:7px 8px; border-radius:8px; text-decoration:none; }
@media (max-width:860px){
    .ks-nav__trigger, .ks-nav__bloglink.desktop-only, .ks-nav__mentor.desktop-only{ display:none; }
    .ks-nav__burger{ display:flex; }
    .ks-nav__mobile{ display:none; flex-direction:column; gap:2px; padding:10px 16px 18px; border-top:1px solid var(--border); }
    .ks-nav.is-open .ks-nav__mobile{ display:flex; }
    .ks-nav__mgroup > button{ width:100%; text-align:left; font:inherit; font-weight:700; font-size:14px; color:var(--ink); background:none; border:none; padding:12px 4px; display:flex; justify-content:space-between; cursor:pointer; }
    .ks-nav__msub{ display:none; flex-direction:column; padding-left:6px; }
    .ks-nav__mgroup.is-open .ks-nav__msub{ display:flex; }
    .ks-nav__msub a{ font-size:13.5px; color:var(--charcoal); padding:8px 4px; text-decoration:none; }
    .ks-nav__mentor.mobile-only{ display:block; margin-top:10px; text-align:center; }
    .ks-nav__bloglink.mobile-only{ display:block; font-weight:700; color:var(--ink); padding:12px 4px; text-decoration:none; }
  }
/* СПИСОК/ЛЕНТА */
  .ks-list-wrap{ max-width:1000px; margin:0 auto; padding:48px 24px 88px; }
.ks-list__back{ margin:0 0 20px !important; }
.ks-list__back a{ color:var(--stone); font-size:13.5px; font-weight:600; text-decoration:none; }
.ks-list__back a:hover{ color:var(--ink); }
.ks-list__title{ color:var(--ink) !important; font-size:clamp(24px,3.4vw,34px) !important; font-weight:700 !important; letter-spacing:-0.02em !important; margin:0 0 40px !important; }
.ks-list__grid.wp-block-post-template{ display:grid !important; grid-template-columns:repeat(2,1fr); gap:18px; list-style:none; margin:0; padding:0; }
@media (max-width:700px){ .ks-list__grid.wp-block-post-template{ grid-template-columns:1fr; } }
.ks-list__grid > li{ background:var(--card); border:1px solid var(--border); border-radius:16px; padding:22px; list-style:none; transition:border-color .15s ease; }
.ks-list__grid > li:hover{ border-color:var(--accent); }
.ks-card__cat{ margin:0 0 10px !important; }
.ks-card__cat a{ display:inline-block; background:var(--accent-wash); color:var(--accent-dark) !important; font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:0.3px; padding:3px 10px; border-radius:99px; text-decoration:none; }
.ks-card__title{ margin:0 0 8px !important; }
.ks-card__title a{ color:var(--ink) !important; font-size:17px !important; font-weight:700 !important; line-height:1.35; text-decoration:none !important; letter-spacing:-0.01em; }
.ks-card__title a:hover{ color:var(--accent-dark) !important; }
.ks-card__excerpt{ color:var(--charcoal) !important; font-size:13.5px !important; line-height:1.6 !important; margin:0 0 14px !important; }
.ks-card__meta{ color:var(--stone) !important; font-size:12px !important; }
.ks-list__empty{ color:var(--stone); font-size:14px; padding:32px 0; }
.ks-list__empty a{ color:var(--accent-dark); font-weight:600; }
.wp-block-query-pagination{ margin-top:36px !important; justify-content:center !important; gap:8px !important; }
.wp-block-query-pagination a, .wp-block-query-pagination span{ color:var(--charcoal) !important; font-size:13.5px !important; padding:8px 14px; border-radius:99px; text-decoration:none !important; }
.wp-block-query-pagination .current{ background:var(--ink) !important; color:#fff !important; }
.wp-block-query-pagination a:hover{ background:var(--border-soft) !important; }
/* ===== FOOTER — идентично главной странице ===== */
  .ks-footer{ border-top:1px solid var(--border); margin-top:24px; }
.ks-footer__inner{ max-width:1200px; margin:0 auto; padding:40px 24px; display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr; gap:28px; }
.ks-footer__logo{ font-weight:800; font-size:17px; color:var(--ink); margin-bottom:8px; }
.ks-footer__logo span{ color:var(--accent); }
.ks-footer__brand p{ font-size:13px; color:var(--stone); line-height:1.5; max-width:280px; margin:0 0 14px; }
.ks-footer__col h4{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; color:var(--ink); margin:0 0 12px; }
.ks-footer__col a{ display:block; font-size:13.5px; color:var(--charcoal); text-decoration:none; padding:5px 0; }
.ks-footer__col a:hover{ color:var(--accent-dark); }
.ks-footer__icons{ display:flex; gap:8px; }
.ks-footer__icons a{ display:flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; background:var(--border-soft); color:var(--charcoal); }
.ks-footer__icons a:hover{ background:var(--ink); color:#fff; }
.ks-footer__bottom{ border-top:1px solid var(--border-soft); padding:16px 24px; max-width:1200px; margin:0 auto; font-size:12px; color:var(--stone); display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; }
@media (max-width:800px){ .ks-footer__inner{ grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .ks-footer__inner{ grid-template-columns:1fr; } }
/* СПИСОК/ЛЕНТА (архив, индекс, поиск) */
  .ks-list-wrap{ max-width:1000px; margin:0 auto; padding:48px 24px 88px; }
.ks-list__title.wp-block-query-title{ color:var(--ink) !important; font-size:clamp(24px,3.4vw,34px) !important; font-weight:700 !important; letter-spacing:-0.02em !important; margin:0 0 40px !important; }
#ksNav, #ksNav *, .ks-post-wrap, .ks-post-wrap *, .ks-footer, .ks-footer *{
    font-family: var(--sans);
    box-sizing: border-box;
  }
/* СТАТЬЯ */
  .ks-post-wrap{ max-width:720px; margin:0 auto; padding:48px 24px 88px; }
.ks-post__back{ margin:0 0 24px !important; }
.ks-post__back a{ color:var(--stone); font-size:13.5px; font-weight:600; text-decoration:none; }
.ks-post__back a:hover{ color:var(--ink); }
.ks-post__tag{ margin:0 0 16px !important; }
.ks-post__tag a, .wp-block-post-terms a{ display:inline-block; background:var(--accent-wash); color:var(--accent-dark) !important; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:0.3px; padding:4px 12px; border-radius:99px; text-decoration:none; }
h1.ks-post__title{ color:var(--ink) !important; font-size:clamp(28px,4vw,40px); line-height:1.2; font-weight:700; letter-spacing:-0.02em; margin:0 0 16px !important; }
.ks-post__meta{ display:flex; align-items:center; gap:8px; color:var(--stone); font-size:13.5px; margin:0 0 32px !important; }
.ks-post__meta time{ color:var(--stone); font-size:13.5px; }
.ks-post__dot{ color:var(--border); }
.ks-post__readtime{ color:var(--stone); font-size:13.5px; }
.ks-post__cover{ margin:0 0 32px !important; }
.ks-post__cover img{ width:100%; border-radius:16px; display:block; }
.ks-post__content{ color:var(--charcoal); font-size:16px; line-height:1.75; }
.ks-post__content p{ margin:0 0 20px; }
.ks-post__content h2{ color:var(--ink); font-size:22px; font-weight:700; margin:40px 0 16px; letter-spacing:-0.01em; }
.ks-post__content h3{ color:var(--ink); font-size:19px; font-weight:700; margin:32px 0 14px; }
.ks-post__content a{ color:var(--accent-dark); text-decoration:underline; }
.ks-post__content strong{ color:var(--ink); }
.ks-post__content ul, .ks-post__content ol{ margin:0 0 20px; padding-left:22px; }
.ks-post__content li{ margin-bottom:8px; }
.ks-post__content img{ max-width:100%; border-radius:8px; }
.ks-post__content iframe{ max-width:100%; border-radius:8px; }
.ks-post__content .wp-block-button__link{ background:var(--ink); color:#fff; border-radius:99px; padding:12px 24px; text-decoration:none; font-weight:600; display:inline-block; }
.ks-list__title.wp-block-query-title{ color:var(--ink) !important; font-size:clamp(22px,3.2vw,30px) !important; font-weight:700 !important; letter-spacing:-0.02em !important; margin:0 0 8px !important; }
.ks-list__search-form{ margin:0 0 40px !important; max-width:420px; }
.ks-list__search-form input[type="search"]{ width:100%; border:1px solid var(--border); border-radius:99px; padding:11px 18px; font-size:14px; color:var(--ink); background:var(--card); }
.ks-list__search-form input[type="search"]:focus{ outline:none; border-color:var(--accent); }
.ks-list__search-form button{ display:none; }
.ks-list__empty{ background:var(--card); border:1px solid var(--border); border-radius:16px; color:var(--charcoal); font-size:14px; line-height:1.7; padding:28px; }
#ksNav, #ksNav *, .ks-page-wrap, .ks-page-wrap *, .ks-footer, .ks-footer *{
    font-family: var(--sans);
    box-sizing: border-box;
  }
/* СТРАНИЦА */
  .ks-page-wrap{ max-width:760px; margin:0 auto; padding:56px 24px 88px; }
h1.ks-page__title{ color:var(--ink) !important; font-size:clamp(28px,4vw,40px) !important; line-height:1.2 !important; font-weight:700 !important; letter-spacing:-0.02em !important; margin:0 0 32px !important; }
.ks-page__cover{ margin:0 0 32px !important; }
.ks-page__cover img{ width:100%; border-radius:16px; display:block; }
.ks-page__content{ color:var(--charcoal); font-size:16px; line-height:1.75; }
.ks-page__content p{ margin:0 0 20px; }
.ks-page__content h2{ color:var(--ink); font-size:22px; font-weight:700; margin:40px 0 16px; letter-spacing:-0.01em; }
.ks-page__content h3{ color:var(--ink); font-size:19px; font-weight:700; margin:32px 0 14px; }
.ks-page__content a{ color:var(--accent-dark); text-decoration:underline; }
.ks-page__content strong{ color:var(--ink); }
.ks-page__content ul, .ks-page__content ol{ margin:0 0 20px; padding-left:22px; }
.ks-page__content li{ margin-bottom:8px; }
.ks-page__content img{ max-width:100%; border-radius:8px; }
.ks-page__content .wp-block-button__link{ background:var(--ink); color:#fff; border-radius:99px; padding:12px 24px; text-decoration:none; font-weight:600; display:inline-block; }
#ksNav, #ksNav *, .ks-404, .ks-404 *, .ks-footer, .ks-footer *{
    font-family: var(--sans);
    box-sizing: border-box;
  }
/* 404 */
  .ks-404{ max-width:600px; margin:0 auto; padding:96px 24px 100px; text-align:center; }
.ks-404__code{ color:var(--accent); font-size:14px; font-weight:700; letter-spacing:2px; text-transform:uppercase; margin:0 0 16px !important; }
.ks-404__title{ color:var(--ink) !important; font-size:clamp(28px,4vw,38px) !important; font-weight:700 !important; letter-spacing:-0.02em !important; margin:0 0 14px !important; }
.ks-404__sub{ color:var(--stone) !important; font-size:15px !important; line-height:1.6 !important; margin:0 0 36px !important; }
.ks-404__search{ margin:0 auto 36px !important; max-width:380px; }
.ks-404__search input[type="search"]{ width:100%; border:1px solid var(--border); border-radius:99px; padding:11px 18px; font-size:14px; color:var(--ink); background:var(--card); text-align:left; }
.ks-404__search input[type="search"]:focus{ outline:none; border-color:var(--accent); }
.ks-404__search button{ display:none; }
.ks-404__links{ display:flex; flex-wrap:wrap; justify-content:center; gap:10px; }
.ks-404__links a{ background:var(--card); border:1px solid var(--border); color:var(--charcoal); font-size:13.5px; font-weight:600; padding:9px 18px; border-radius:99px; text-decoration:none; }
.ks-404__links a:hover{ border-color:var(--accent); color:var(--ink); }

/* ============================================================
   ЧИТАЛКА — то, ради чего на сайт приходят.
   Всё, что ниже, действует только внутри статьи (.ks-post__content)
   и не задевает главную, хабы и списки.
   ============================================================ */

/* Мера строки. 660px по вертикали текста — это примерно 65–75 знаков
   в строке, тот диапазон, на котором глаз не теряет начало следующей
   строки. Было 760 — заметно шире комфортного. */
.ks-post__content{ --read: 660px; }
.ks-post__content > *{ max-width: var(--read); margin-left:auto; margin-right:auto; }
/* Таблицы и врезки шире колонки — им можно занять больше */
.ks-post__content > figure,
.ks-post__content > .wp-block-table,
.ks-post__content > .ks-table-scroll,
.ks-post__content > .ks-note{ max-width: 780px; }

/* Кегль и ритм. На телефоне шрифт БОЛЬШЕ, чем на десктопе: экран ближе
   к глазу, но строка короче, и мелкий кегль там читается тяжелее.
   Обычно делают наоборот и зря. */
.ks-post__content{ font-size:17px; line-height:1.75; color:var(--charcoal,#57534d); }
.ks-post__content p{ margin:0 0 1.15em; }
.ks-post__content p + p{ margin-top:0; }

@media (max-width:768px){
  .ks-post__content{ font-size:18px; line-height:1.72; --read:100%; }
  .ks-post__content p{ margin-bottom:1.2em; }
}

/* Заголовки. Отступ сверху всегда заметно больше, чем снизу —
   тогда заголовок принадлежит своему разделу, а не висит между. */
.ks-post__content h2{
  font-size:26px; line-height:1.25; letter-spacing:-0.015em;
  color:var(--ink,#1c1917); margin:2.2em 0 0.55em; font-weight:700;
}
.ks-post__content h3{
  font-size:20px; line-height:1.35; color:var(--ink,#1c1917);
  margin:1.9em 0 0.45em; font-weight:700;
}
.ks-post__content h2 + h3{ margin-top:1.1em; }
@media (max-width:768px){
  .ks-post__content h2{ font-size:23px; margin-top:1.9em; }
  .ks-post__content h3{ font-size:19px; }
}

/* Списки: маркер не прижат к тексту, пункты дышат */
.ks-post__content ul, .ks-post__content ol{ margin:0 0 1.2em; padding-left:1.4em; }
.ks-post__content li{ margin:0 0 0.5em; padding-left:0.2em; }
.ks-post__content li::marker{ color:var(--stone,#79716b); }

/* Ссылки внутри текста: подчёркивание тонкое и отодвинуто от букв,
   чтобы не резать нижние выносные элементы */
.ks-post__content a{
  color:var(--accent-dark,#ea580c);
  text-decoration:underline; text-decoration-thickness:1px;
  text-underline-offset:3px; text-decoration-color:rgba(234,88,12,0.35);
}
.ks-post__content a:hover{ text-decoration-color:currentColor; }

/* Цитата: вертикальная линия вместо заливки — не крадёт внимание */
.ks-post__content blockquote{
  margin:1.8em 0; padding:0.1em 0 0.1em 1.1em;
  border-left:2px solid var(--accent,#f97316);
  font-size:1.02em; color:var(--ink,#1c1917);
}
.ks-post__content blockquote p:last-child{ margin-bottom:0; }

/* Врезки трёх видов. Отличаются цветом линии и подписью, а не заливкой
   во всю ширину — заливка превращает текст в баннер, который пролистывают. */
.ks-note{
  margin:1.8em auto; padding:14px 16px 14px 18px;
  border-left:3px solid var(--stone,#79716b);
  background:var(--bone,#fafaf9); border-radius:0 8px 8px 0;
  font-size:0.97em;
}
.ks-note__label{
  display:block; font-size:11px; font-weight:700; letter-spacing:0.08em;
  text-transform:uppercase; color:var(--stone,#79716b); margin-bottom:6px;
}
.ks-note p:last-child{ margin-bottom:0; }
.ks-note--warn{ border-left-color:#d97706; }
.ks-note--warn .ks-note__label{ color:#b45309; }
.ks-note--example{ border-left-color:var(--accent,#f97316); }
.ks-note--example .ks-note__label{ color:var(--accent-dark,#ea580c); }

/* Таблицы. На телефоне не сжимаются в кашу, а прокручиваются внутри
   своей рамки. Справа тень-подсказка: видно, что есть продолжение. */
.ks-table-scroll{
  margin:1.8em auto; overflow-x:auto; -webkit-overflow-scrolling:touch;
  border:1px solid rgba(28,25,23,0.10); border-radius:8px;
  background:
    linear-gradient(to right, #fff 30%, rgba(255,255,255,0)) left / 24px 100% no-repeat,
    linear-gradient(to left, #fff 30%, rgba(255,255,255,0)) right / 24px 100% no-repeat,
    radial-gradient(farthest-side at 0 50%, rgba(28,25,23,0.10), transparent) left / 10px 100% no-repeat,
    radial-gradient(farthest-side at 100% 50%, rgba(28,25,23,0.10), transparent) right / 10px 100% no-repeat;
  background-attachment: local, local, scroll, scroll;
}
.ks-table-scroll table{ border-collapse:collapse; width:100%; min-width:520px; margin:0; font-size:0.95em; }
.ks-table-scroll th, .ks-table-scroll td{
  padding:10px 14px; text-align:left; vertical-align:top;
  border-bottom:1px solid rgba(28,25,23,0.08);
}
.ks-table-scroll th{ color:var(--ink,#1c1917); font-weight:700; background:var(--bone,#fafaf9); white-space:nowrap; }
.ks-table-scroll tr:last-child td{ border-bottom:0; }

/* Паспорт материала: раздел, тип, время чтения, дата обновления.
   Дата обновления важнее даты публикации — она показывает,
   что за материалом следят. */
.ks-passport{
  max-width:var(--read); margin:0 auto 2em; padding:0 0 14px;
  border-bottom:1px solid rgba(28,25,23,0.10);
  display:flex; flex-wrap:wrap; gap:8px 16px; align-items:center;
  font-size:12.5px; color:var(--stone,#79716b);
}
.ks-passport__item{ display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }
.ks-passport__item b{ color:var(--charcoal,#57534d); font-weight:600; }
.ks-passport__dot{ width:3px; height:3px; border-radius:50%; background:currentColor; opacity:.45; }

/* Оглавление. На широком экране — сбоку и липкое, с подсветкой текущего
   раздела. На телефоне боковых колонок нет, поэтому оно сворачивается
   в одну строку в начале статьи и раскрывается по тапу. */
.ks-toc{ font-size:13.5px; }
.ks-toc__title{
  font-size:11px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase;
  color:var(--stone,#79716b); margin:0 0 10px;
}
.ks-toc ol{ list-style:none; margin:0; padding:0; }
.ks-toc li{ margin:0; }
.ks-toc a{
  display:block; padding:5px 0 5px 12px; line-height:1.4;
  color:var(--stone,#79716b); text-decoration:none;
  border-left:2px solid rgba(28,25,23,0.10);
}
.ks-toc a:hover{ color:var(--ink,#1c1917); }
.ks-toc li.is-sub a{ padding-left:22px; font-size:0.95em; }
.ks-toc a.is-current{ color:var(--ink,#1c1917); border-left-color:var(--accent,#f97316); font-weight:600; }

@media (min-width:1180px){
  .ks-toc--side{
    position:fixed; top:120px; left:calc(50% - 660px);
    width:210px; max-height:70vh; overflow-y:auto;
    scrollbar-width:thin;
  }
  .ks-toc--mobile{ display:none; }
}
@media (max-width:1179px){
  .ks-toc--side{ display:none; }
  .ks-toc--mobile{
    max-width:var(--read); margin:0 auto 1.8em;
    border:1px solid rgba(28,25,23,0.10); border-radius:8px;
    background:var(--bone,#fafaf9); overflow:hidden;
  }
  .ks-toc--mobile > summary{
    list-style:none; cursor:pointer; padding:12px 16px;
    font-size:13px; font-weight:700; color:var(--ink,#1c1917);
    display:flex; align-items:center; justify-content:space-between;
  }
  .ks-toc--mobile > summary::-webkit-details-marker{ display:none; }
  .ks-toc--mobile > summary::after{ content:'▾'; color:var(--stone,#79716b); font-size:12px; }
  .ks-toc--mobile[open] > summary::after{ content:'▴'; }
  .ks-toc--mobile .ks-toc__body{ padding:0 16px 12px; }
}

/* Полоса прогресса чтения. Единственный элемент, которому позволен
   акцентный цвет во всю ширину. */
.ks-progress{
  position:fixed; top:0; left:0; height:2px; width:0;
  background:var(--accent,#f97316); z-index:9999;
  transition:width .1s linear; pointer-events:none;
}

/* Якоря не должны уезжать под липкую шапку */
.ks-post__content h2[id], .ks-post__content h3[id]{ scroll-margin-top:96px; }


/* Тема задаёт глобальную ширину контента 520px через механизм
   is-layout-constrained. Для статьи это узко — перебиваем селектором
   повышенной специфичности, а не через !important. */
.ks-post-wrap{ max-width:820px; }
.ks-post-wrap > .ks-post__content{ max-width:680px; }
.ks-post__content.is-layout-constrained > *{ max-width:100%; }
.ks-post-wrap > .ks-post__meta{ max-width:680px; }
@media (max-width:768px){
  .ks-post-wrap > .ks-post__content{ max-width:100%; }
}


/* ===== ОБЛАСТИ НА ГЛАВНОЙ =====
   Была горизонтальная карусель на одиннадцать карточек. После того как
   пустые области перестали показываться, её сетка в два ряда стала рваться.
   Сетка с переносом честнее: она показывает всё сразу и выдержит рост
   до девяти областей без переделки. */
.carousel{
  display:grid !important;
  grid-auto-flow:row !important;
  grid-template-rows:none !important;
  grid-template-columns:repeat(auto-fill, minmax(216px, 1fr));
  gap:12px;
  overflow:visible !important;
  scroll-snap-type:none !important;
  padding:4px 0 0;
}
.carousel .fcard{ width:auto !important; }
.carousel-arrow{ display:none !important; }
@media (max-width:640px){
  /* Две колонки жёстко: auto-fill на 390px давал три и рвал описания. */
  .carousel{ grid-template-columns:repeat(2, 1fr); gap:10px; }
  .carousel .fcard{ padding:14px; }
}
@media (max-width:360px){
  .carousel{ grid-template-columns:1fr; }
}


/* ===== ТЕМЫ В РАЗДЕЛЕ =====
   Счётчик рядом с названием темы и сворачивание редких тем. */
.ks-hub-subgroup__row a i{
  font-style:normal;
  margin-left:6px;
  font-size:11px;
  font-variant-numeric:tabular-nums;
  color:var(--stone);
}
.ks-hub-more{ display:inline-block; }
.ks-hub-more > summary{
  list-style:none;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  padding:7px 14px;
  border:1px dashed var(--border);
  border-radius:99px;
  font-size:13px;
  color:var(--stone);
}
.ks-hub-more > summary::-webkit-details-marker{ display:none; }
.ks-hub-more > summary:hover{ color:var(--ink); border-color:var(--stone); }
.ks-hub-more__row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
  width:100%;
}

/* ===== АРХИВ РУБРИКИ =====
   Сетка стояла на двух колонках по 251px посреди широкого экрана
   и съезжала влево. Ставим текучую. */
.ks-list__grid.wp-block-post-template{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
  gap:18px;
  list-style:none;
  padding:0;
  margin:0;
}
@media (max-width:640px){
  .ks-list__grid.wp-block-post-template{ grid-template-columns:1fr; gap:12px; }
}
.ks-arch-subs{ margin:0 0 22px; }
.ks-arch-subs a.is-active{ background:var(--ink); color:#fff; border-color:var(--ink); }
.ks-arch-subs a.is-active i{ color:rgba(255,255,255,0.7); }
.ks-arch-note{
  margin:12px 0 0;
  font-size:14px;
  color:var(--stone);
}
.ks-arch-note a{ color:var(--accent-dark); }

/* ===== ЧИПЫ ТЕМ =====
   Жили внутри страницы «Продажи» и поэтому не доставались архивам рубрик.
   Один элемент — одно описание, независимо от того, где он показан. */
.ks-hub-subs{ display:flex; flex-direction:column; gap:18px; margin:0 0 28px; }
.ks-hub-subgroup__label{
  display:block;
  font-family:var(--mono);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--stone);
  margin-bottom:10px;
}
.ks-hub-subgroup__row{ display:flex; flex-wrap:wrap; gap:10px; align-items:flex-start; }
.ks-hub-subs a{
  font-size:13px;
  font-weight:600;
  padding:9px 16px;
  border-radius:99px;
  border:1px solid var(--border);
  background:var(--card);
  color:var(--ink);
  transition:border-color .15s, color .15s, transform .15s;
}
.ks-hub-subs a:hover{ color:var(--accent-dark); border-color:var(--accent); transform:translateY(-1px); }
.ks-hub-subs a.is-active{ background:var(--ink); border-color:var(--ink); color:#fff; }
.ks-hub-subs a.is-active i{ color:rgba(255,255,255,0.7); }

/* Содержимое архива тема ограничивала до 520px — в такую колонку
   лента из карточек не укладывается. */
/* В архиве заголовок и лента жили в разных контейнерах разной ширины:
   заголовок стоял левее карточек, а сама лента сжималась до одной колонки
   шириной в текстовую колонку. Ставим общую ширину и общий левый край. */
body.archive .ks-list-wrap{ max-width:1040px; margin-inline:auto; }
body.archive .wp-block-query.ks-list__query{
  max-width:100%;
  width:100%;
  margin-inline:0;
}
body.archive .ks-list__grid.wp-block-post-template{ width:100%; max-width:100%; }
body.archive .ks-arch-subs{ max-width:100%; }

/* Описание раздела под заголовком. */
/* Контейнер архива центрует всё, что в нём лежит, и описание уезжало
   от заголовка вправо. Селектор побивает тему по весу, без !important. */
.ks-list-wrap > .ks-arch-lead,
.ks-arch-lead{
  max-width:62ch;
  margin:12px 0 26px;
  font-size:17px;
  line-height:1.6;
  color:var(--charcoal);
}
@media (max-width:640px){
  .ks-arch-lead{ font-size:16px; margin:10px 0 20px; }
}

/* Тема центрует абзацы внутри constrained-контейнера через margin:auto,
   и описание отъезжало от заголовка на сто шестьдесят пикселей.
   Берём весом селектора, а не !important. */
/* Центрирование абзацев тема задаёт через !important, спорить с ним
   тем же способом значит начать гонку. Проще снять ограничение ширины
   с самого абзаца — тогда автоматические поля схлопываются в ноль,
   а длину строки держит внутренний элемент. */
body.archive .ks-list-wrap > p.ks-arch-lead{
  max-width:100%;
  width:100%;
}
.ks-arch-lead > span{
  display:block;
  max-width:62ch;
}

/* ===== ХАБ РОЛЕЙ ===== */
.ks-roles__grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
  gap:14px;
  margin:0 0 28px;
}
.ks-role{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:18px;
  border:1px solid var(--border);
  border-radius:16px;
  background:var(--card);
  transition:border-color .15s, transform .15s;
}
.ks-role:hover{ border-color:var(--accent); transform:translateY(-2px); }
.ks-role__name{ font-size:16px; font-weight:700; color:var(--ink); }
.ks-role__desc{ font-size:14px; line-height:1.5; color:var(--charcoal); }
.ks-role__count{
  margin-top:4px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:0.04em;
  color:var(--stone);
}
.ks-roles__label{
  font-family:var(--mono);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--stone);
  margin:0 0 12px;
}
@media (max-width:640px){
  .ks-roles__grid{ grid-template-columns:1fr; gap:10px; }
}

/* Страница ролей живёт в шаблоне страницы, где содержимое зажато
   в текстовую колонку. Сетке карточек нужна вся ширина. */
/* Колонка содержимого у шаблона страницы — 520 пикселей под текст.
   Сетке карточек столько мало, поэтому расширяем её только там,
   где внутри действительно есть сетка. */
body.page .ks-page__content:has(.ks-roles){ max-width:1040px; }
body.page .ks-roles,
body.page .ks-roles__grid{ max-width:100%; width:100%; }

/* Тема подчёркивает ссылки внутри содержимого — карточка не ссылка в тексте. */
body.page .ks-page__content a.ks-role,
body.page .ks-page__content a.ks-role:hover,
body.page .ks-page__content a.ks-role span{ text-decoration:none; }

/* ===== МЕНТОРСТВО ===== */
body.page .ks-page__content:has(.ks-ment){ max-width:820px; }
.ks-ment{ display:flex; flex-direction:column; gap:40px; }
/* Внутри constrained-колонки тема центрует заголовки и абзацы.
   Секции занимают всю ширину, чтобы всё стояло по одному краю. */
body.page .ks-page__content .ks-ment,
body.page .ks-page__content .ks-ment > section{ max-width:100%; width:100%; }
.ks-ment h2{ font-size:22px; margin:0 0 16px; text-align:left; }
.ks-ment__list{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:12px; }
.ks-ment__list li{
  padding:14px 16px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--card);
  font-size:15px;
  line-height:1.55;
}
.ks-ment__list strong{ color:var(--ink); }
.ks-ment__block--muted .ks-ment__list li{ background:transparent; border-style:dashed; color:var(--charcoal); }
.ks-ment__steps{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:18px; }
.ks-ment__steps li{ display:flex; gap:14px; align-items:flex-start; }
.ks-ment__num{
  flex:0 0 auto;
  font-family:var(--mono);
  font-size:12px;
  font-weight:700;
  color:#fff;
  background:var(--accent);
  width:34px; height:34px;
  border-radius:99px;
  display:flex; align-items:center; justify-content:center;
}
.ks-ment__steps strong{ display:block; margin-bottom:4px; }
.ks-ment__steps p{ margin:0; font-size:15px; line-height:1.55; color:var(--charcoal); }
.ks-ment__cta{
  padding:28px;
  border-radius:16px;
  background:var(--accent-wash);
  border:1px solid var(--border-soft);
}
.ks-ment__cta p{ margin:0 0 18px; font-size:15px; line-height:1.6; }
.ks-ment__links{ display:flex; flex-wrap:wrap; gap:10px; }
.ks-ment__btn{
  display:inline-flex;
  align-items:center;
  padding:11px 20px;
  border-radius:99px;
  background:var(--accent);
  color:#fff;
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  transition:background .15s;
}
.ks-ment__btn:hover{ background:var(--accent-dark); }
.ks-ment__btn--ghost{ background:transparent; color:var(--ink); border:1px solid var(--border); }
.ks-ment__btn--ghost:hover{ background:var(--card); }
/* Тема красит ссылки в содержимом акцентным цветом — на акцентной
   заливке текст пропадал. */
body.page .ks-page__content a.ks-ment__btn{
  text-decoration:none;
  color:#fff;
}
body.page .ks-page__content a.ks-ment__btn--ghost{ color:var(--ink); }
@media (max-width:640px){
  .ks-ment{ gap:30px; }
  .ks-ment__cta{ padding:20px; }
  .ks-ment__btn{ width:100%; justify-content:center; }
}

/* ===== ГЛОССАРИЙ =====
   Ссылка на термин под текстом пунктиром: видно, что можно кликнуть,
   но глаз не спотыкается при чтении. */
.ks-gloss{
  color:inherit;
  text-decoration:none;
  border-bottom:1px dotted var(--stone);
  cursor:help;
}
.ks-gloss:hover{ color:var(--accent-dark); border-bottom-color:var(--accent); }

.ks-term__def{
  font-size:19px;
  line-height:1.6;
  color:var(--ink);
  font-weight:500;
  margin:0 0 28px;
}
.ks-term__rel{ color:var(--stone); font-size:14px; }

.ks-gloss-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(240px, 1fr));
  gap:12px;
}
.ks-gloss-card{
  display:block;
  padding:16px 18px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--card);
  text-decoration:none;
  transition:border-color .15s, transform .15s;
}
.ks-gloss-card:hover{ border-color:var(--accent); transform:translateY(-2px); }
.ks-gloss-card__t{ display:block; font-size:16px; font-weight:700; color:var(--ink); margin-bottom:5px; }
.ks-gloss-card__d{ display:block; font-size:13px; line-height:1.5; color:var(--charcoal); }
@media (max-width:640px){ .ks-gloss-grid{ grid-template-columns:1fr; } }

/* ===== ПОИСК =====
   Страница результатов работала, а войти в неё было неоткуда:
   ни формы в шапке, ни поля на главной. */
.ks-find{
  display:flex;
  gap:8px;
  max-width:560px;
  margin:26px auto 10px;
}
.ks-find input{
  flex:1;
  padding:13px 18px;
  font-size:16px;
  border:1px solid var(--border);
  border-radius:99px;
  background:var(--card);
  color:var(--ink);
  outline:none;
  transition:border-color .15s;
}
.ks-find input:focus{ border-color:var(--accent); }
.ks-find input::placeholder{ color:var(--stone); }
.ks-find button{
  padding:13px 24px;
  font-size:14px;
  font-weight:600;
  border:0;
  border-radius:99px;
  background:var(--ink);
  color:#fff;
  cursor:pointer;
  transition:background .15s;
}
.ks-find button:hover{ background:var(--accent-dark); }
.ks-find__hint{
  text-align:center;
  font-size:13px;
  color:var(--stone);
  margin:0;
}
.ks-find__hint a{ color:var(--accent-dark); }

.ks-nav__find{ display:flex; margin-left:auto; margin-right:12px; }
.ks-nav__find input{
  width:150px;
  padding:8px 14px;
  font-size:13px;
  border:1px solid var(--border);
  border-radius:99px;
  background:var(--canvas);
  color:var(--ink);
  outline:none;
  transition:width .18s, border-color .15s;
}
.ks-nav__find input:focus{ width:210px; border-color:var(--accent); background:var(--card); }
@media (max-width:1100px){ .ks-nav__find input{ width:120px; } }
@media (max-width:640px){
  .ks-find{ flex-direction:column; gap:10px; margin-top:20px; }
  .ks-find button{ width:100%; }
}

/* ===== БЛОКИ ГЛАВНОЙ: РОЛИ, ГЛОССАРИЙ, МЕНТОРСТВО ===== */
.ks-home-roles,
.ks-home-gloss{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(190px, 1fr));
  gap:10px;
}
.ks-chipcard{
  display:block;
  padding:14px 16px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--card);
  text-decoration:none;
  transition:border-color .15s, transform .15s;
}
.ks-chipcard:hover{ border-color:var(--accent); transform:translateY(-2px); }
.ks-chipcard__t{ display:block; font-size:15px; font-weight:700; color:var(--ink); margin-bottom:4px; }
.ks-chipcard__c{ display:block; font-size:12px; line-height:1.45; color:var(--stone); }

.ks-home-ment__box{
  padding:32px;
  border-radius:16px;
  background:var(--ink);
  color:#fff;
}
.ks-home-ment__box h2{ margin:0 0 10px; font-size:22px; color:#fff; }
.ks-home-ment__box p{ margin:0 0 20px; font-size:15px; line-height:1.6; color:rgba(255,255,255,0.75); max-width:60ch; }
.ks-home-ment__btn{
  display:inline-flex;
  padding:11px 22px;
  border-radius:99px;
  background:var(--accent);
  color:#fff;
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  transition:background .15s;
}
.ks-home-ment__btn:hover{ background:var(--accent-dark); }
.section__all{ font-size:13px; font-weight:600; color:var(--accent-dark); text-decoration:none; white-space:nowrap; }
.section__all:hover{ text-decoration:underline; }
@media (max-width:640px){
  .ks-home-roles, .ks-home-gloss{ grid-template-columns:repeat(2, 1fr); gap:8px; }
  .ks-home-ment__box{ padding:22px; }
}

/* ===== ПУТЬ ЧТЕНИЯ НА ГЛАВНОЙ =====
   Номер слева, цель шага сверху, название материала ниже:
   читатель сначала понимает зачем, потом что. */
.ks-path__lead{
  margin:0 0 20px;
  font-size:15px;
  line-height:1.6;
  color:var(--charcoal);
  max-width:64ch;
}
.ks-path{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:8px;
  counter-reset:none;
}
.ks-path__step{ display:flex; align-items:stretch; gap:14px; }
.ks-path__num{
  flex:0 0 auto;
  width:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:var(--mono);
  font-size:12px;
  font-weight:700;
  color:var(--stone);
}
.ks-path__link{
  flex:1;
  display:block;
  padding:14px 18px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--card);
  text-decoration:none;
  transition:border-color .15s, transform .15s;
}
.ks-path__link:hover{ border-color:var(--accent); transform:translateX(2px); }
.ks-path__goal{
  display:block;
  font-family:var(--mono);
  font-size:10.5px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--accent-dark);
  margin-bottom:5px;
}
.ks-path__title{ display:block; font-size:15.5px; font-weight:600; color:var(--ink); margin-bottom:4px; }
.ks-path__type{ display:block; font-size:12px; color:var(--stone); }
@media (max-width:640px){
  .ks-path__step{ gap:8px; }
  .ks-path__num{ width:26px; }
  .ks-path__link{ padding:12px 14px; }
}


/* ===== ИНСТРУМЕНТ ДИАГНОСТИКИ =====
   Перенесено из страницы «Продажи»: тест был заперт внутри одной
   страницы и поэтому не мог жить на своём адресе. */
/* ===== SALES AUDIT — живой пилотный инструмент ==========================
     Полностью на клиенте: ничего никуда не отправляется и не сохраняется.
     Три экрана: интро → вопросы (по одному, с прогрессом) → результат
     (Sales Maturity Score + сильные стороны + точки роста + подборка
     реальных статей под точки роста, через ту же систему подтем). */
  .ks-hub-audit{ background:var(--card); border:1px solid var(--border); border-radius:18px; padding:28px;
    margin:0 0 40px; }
  .ks-hub-audit__badge{ display:inline-flex; align-items:center; gap:6px; font-family:var(--mono); font-size:10px; font-weight:700;
    text-transform:uppercase; letter-spacing:0.05em; color:var(--accent-dark); background:var(--accent-wash); border-radius:9999px;
    padding:4px 11px; margin-bottom:14px; }

  /* --- интро --- */
  .ks-audit-intro{ display:flex; gap:20px; align-items:flex-start; flex-wrap:wrap; }
  .ks-audit-intro__icon{ width:52px; height:52px; border-radius:14px; background:var(--accent-wash); color:var(--accent-dark);
    display:flex; align-items:center; justify-content:center; flex:none; }
  .ks-audit-intro__body{ flex:1; min-width:220px; }
  .ks-audit-intro__title{ font-size:17px; font-weight:800; color:var(--ink); margin:0 0 8px; }
  .ks-audit-intro__desc{ font-size:13.5px; color:var(--stone); line-height:1.6; margin:0 0 16px; max-width:520px; }
  .ks-audit-intro__meta{ display:flex; gap:16px; flex-wrap:wrap; font-size:12px; color:var(--stone); margin-bottom:18px; }
  .ks-audit-intro__meta b{ color:var(--ink); }
  .ks-audit-start{ font:inherit; font-size:13.5px; font-weight:700; color:#fff; background:var(--ink); border:none;
    border-radius:9999px; padding:11px 22px; cursor:pointer; }
  .ks-audit-start:hover{ background:var(--accent-dark); }

  /* --- вопросы --- */
  .ks-audit-quiz{ display:none; }
  .ks-audit-quiz.is-active{ display:block; }
  .ks-audit-progress{ display:flex; align-items:center; gap:12px; margin-bottom:20px; }
  .ks-audit-progress__bar{ flex:1; height:5px; border-radius:9999px; background:var(--canvas); overflow:hidden; }
  .ks-audit-progress__fill{ height:100%; background:var(--accent); border-radius:9999px; transition:width .25s ease; }
  .ks-audit-progress__text{ font-family:var(--mono); font-size:11.5px; color:var(--stone); flex:none; white-space:nowrap; }
  .ks-audit-dim{ display:inline-block; font-family:var(--mono); font-size:10px; font-weight:700; text-transform:uppercase;
    letter-spacing:0.04em; color:var(--accent-dark); background:var(--accent-wash); border-radius:9999px; padding:4px 11px; margin-bottom:12px; }
  .ks-audit-question{ font-size:16px; font-weight:700; color:var(--ink); margin:0 0 16px; line-height:1.4; }
  .ks-audit-options{ display:flex; flex-direction:column; gap:8px; margin-bottom:20px; }
  .ks-audit-option{ display:flex; align-items:center; gap:10px; text-align:left; font:inherit; font-size:13.5px;
    color:var(--charcoal); background:var(--canvas); border:1.5px solid transparent; border-radius:12px; padding:12px 16px;
    cursor:pointer; transition:border-color .15s ease, background .15s ease; }
  .ks-audit-option:hover{ border-color:rgba(234,88,12,0.3); }
  .ks-audit-option.is-selected{ background:var(--accent-wash); border-color:var(--accent); color:var(--ink); font-weight:600; }
  .ks-audit-option__dot{ width:16px; height:16px; border-radius:50%; border:1.5px solid var(--border); flex:none; position:relative; }
  .ks-audit-option.is-selected .ks-audit-option__dot{ border-color:var(--accent); }
  .ks-audit-option.is-selected .ks-audit-option__dot::after{ content:''; position:absolute; inset:3px; border-radius:50%; background:var(--accent); }
  .ks-audit-nav{ display:flex; justify-content:space-between; align-items:center; }
  .ks-audit-btn{ font:inherit; font-size:13px; font-weight:700; border-radius:9999px; padding:10px 20px; cursor:pointer; border:none; }
  .ks-audit-btn--back{ background:transparent; color:var(--stone); }
  .ks-audit-btn--back:hover{ color:var(--ink); }
  .ks-audit-btn--next{ background:var(--ink); color:#fff; }
  .ks-audit-btn--next:disabled{ background:var(--border); color:var(--stone); cursor:not-allowed; }
  .ks-audit-btn--next:not(:disabled):hover{ background:var(--accent-dark); }

  /* --- результат --- */
  .ks-audit-result{ display:none; }
  .ks-audit-result.is-active{ display:block; }
  .ks-audit-score{ display:flex; align-items:center; gap:20px; flex-wrap:wrap; margin-bottom:22px; }
  .ks-audit-score__num{ font-size:44px; font-weight:800; color:var(--ink); line-height:1; }
  .ks-audit-score__num span{ font-size:18px; color:var(--stone); font-weight:600; }
  .ks-audit-score__band{ font-size:13.5px; color:var(--stone); max-width:380px; line-height:1.5; }
  .ks-audit-score__band b{ color:var(--ink); }
  .ks-audit-bars{ display:flex; flex-direction:column; gap:10px; margin-bottom:24px; }
  .ks-audit-bar__row{ display:flex; align-items:center; gap:12px; }
  .ks-audit-bar__label{ width:150px; flex:none; font-size:12.5px; color:var(--charcoal); font-weight:600; }
  .ks-audit-bar__track{ flex:1; height:8px; border-radius:9999px; background:var(--canvas); overflow:hidden; }
  .ks-audit-bar__fill{ height:100%; border-radius:9999px; background:var(--accent); }
  .ks-audit-bar__pct{ width:36px; flex:none; font-family:var(--mono); font-size:11.5px; color:var(--stone); text-align:right; }
  .ks-audit-tags{ display:flex; flex-wrap:wrap; gap:20px; margin-bottom:24px; }
  .ks-audit-tags__group{ flex:1; min-width:200px; }
  .ks-audit-tags__label{ font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; color:var(--stone); margin-bottom:8px; }
  .ks-audit-tags__group span{ display:inline-block; font-size:12.5px; font-weight:600; background:var(--canvas); border-radius:9999px;
    padding:5px 12px; margin:0 6px 6px 0; }
  .ks-audit-tags__group--strong span{ color:var(--accent-dark); background:var(--accent-wash); }
  .ks-audit-tags__group--weak span{ color:var(--charcoal); }
  .ks-audit-reco{ border-top:1px solid var(--border); padding-top:20px; }
  .ks-audit-reco__title{ font-size:14px; font-weight:700; color:var(--ink); margin:0 0 12px; }
  .ks-audit-reco__block{ margin-bottom:14px; }
  .ks-audit-reco__dim{ font-size:12.5px; font-weight:700; color:var(--accent-dark); margin-bottom:6px; }
  .ks-audit-reco__block a{ display:block; font-size:13px; color:var(--charcoal); text-decoration:none; padding:6px 0; }
  .ks-audit-reco__block a:hover{ color:var(--accent-dark); text-decoration:underline; }
  .ks-audit-restart{ font:inherit; font-size:12.5px; font-weight:600; color:var(--stone); background:none; border:1px solid var(--border);
    border-radius:9999px; padding:9px 18px; cursor:pointer; margin-top:20px; }
  .ks-audit-restart:hover{ color:var(--ink); border-color:var(--ink); }

  /* ===== КРОСС-ДОМЕН ТИЗЕР ===== */
  .ks-hub-cross{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:0 0 20px; padding:14px 18px;
    border:1px dashed var(--border); border-radius:12px; }
  .ks-hub-cross__label{ font-size:12.5px; font-weight:600; color:var(--stone); flex:none; }
  .ks-hub-cross__items{ display:flex; gap:14px; flex-wrap:wrap; }
  .ks-hub-cross__items a{ font-size:12.5px; color:var(--accent-dark); text-decoration:none; font-weight:600; }
  .ks-hub-cross__items a:hover{ text-decoration:underline; }

  /* ===== С ЧЕГО НАЧАТЬ — связанный степпер (путь, а не 3 отдельные карточки) ===== */
  .ks-hub-road{ background:var(--accent-wash); border-radius:18px; padding:32px 30px; margin:0 0 40px; }
  .ks-hub-road__title{ font-size:17px; font-weight:800; color:var(--ink); margin:0 0 26px; }
  .ks-hub-road__steps{ display:flex; align-items:flex-start; gap:20px; position:relative; }
  .ks-hub-road__steps::before{ content:''; position:absolute; top:19px; left:calc(16.5% - 1px); right:calc(16.5% - 1px);
    height:0; border-top:2px dashed rgba(234,88,12,0.4); z-index:0; }
  @media (max-width:700px){ .ks-hub-road__steps{ flex-direction:column; gap:26px; }
    .ks-hub-road__steps::before{ display:none; } }
  .ks-hub-road__step{ position:relative; z-index:1; flex:1; min-width:0; }
  .ks-hub-road__num{ display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px;
    border-radius:50%; background:var(--accent); color:#fff; font-family:var(--mono); font-size:12.5px; font-weight:700;
    margin-bottom:14px; box-shadow:0 0 0 6px var(--accent-wash); }
  .ks-hub-road__step h3{ font-size:14.5px; font-weight:700; color:var(--ink); margin:0 0 8px; line-height:1.3; }
  .ks-hub-road__step a{ display:inline-flex; align-items:center; gap:4px; font-size:12.5px; font-weight:600; color:var(--accent-dark); text-decoration:none; }
  .ks-hub-road__step a:hover{ text-decoration:underline; }

  .ks-hub-toolbar{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin:0 0 8px; }
  .ks-hub-count{ font-family:var(--mono); font-size:12px; color:var(--stone); }
  .ks-hub-search{ position:relative; flex:1; min-width:200px; max-width:300px; }
  .ks-hub-search input{ width:100%; border:1px solid var(--border); border-radius:9999px; padding:9px 34px 9px 14px; font-size:13.5px;
    color:var(--ink); background:var(--card); font-family:var(--sans); box-sizing:border-box; }
  .ks-hub-search input:focus{ outline:none; border-color:var(--accent); }
  .ks-hub-search__clear{ display:none; position:absolute; right:8px; top:50%; transform:translateY(-50%); border:none;
    background:none; color:var(--stone); font-size:16px; line-height:1; cursor:pointer; padding:4px; }
  .ks-hub-search__clear.is-visible{ display:block; }
  .ks-hub-search__clear:hover{ color:var(--ink); }
  .ks-hub-sort{ display:flex; gap:6px; }
  .ks-hub-sort button{ font:inherit; font-size:12.5px; font-weight:600; padding:7px 12px; border-radius:9999px;
    border:1px solid var(--border); background:var(--card); color:var(--charcoal); cursor:pointer; }
  .ks-hub-sort button.is-active{ background:var(--ink); border-color:var(--ink); color:#fff; }

  /* ===== ЗАКРЕПЛЁННЫЙ МАТЕРИАЛ ===== */
  .ks-hub-featured{ display:none; border:1px solid var(--border); border-left:4px solid var(--accent); border-radius:14px;
    padding:20px; margin:18px 0 16px; background:var(--card); }
  .ks-hub-featured.is-visible{ display:block; }
  .ks-hub-featured__label{ font-family:var(--mono); font-size:10.5px; font-weight:700; text-transform:uppercase;
    letter-spacing:0.05em; color:var(--accent-dark); margin-bottom:8px; }
  .ks-hub-featured__title{ font-size:18px; font-weight:800; color:var(--ink); margin:0 0 8px; }
  .ks-hub-featured__title a{ color:inherit; text-decoration:none; }
  .ks-hub-featured__excerpt{ font-size:14px; color:var(--stone); line-height:1.6; margin:0; }

  .ks-hub-grid{ display:grid; grid-template-columns:1fr; gap:14px; margin-top:6px; }
  @media (min-width:640px){ .ks-hub-grid{ grid-template-columns:repeat(2,1fr); } }
  .mcard{ background:var(--card); border:1px solid var(--border); border-radius:14px; padding:16px; display:flex;
    flex-direction:column; gap:7px; }
  .mcard__meta{ display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
  .mcard__domain{ font-family:var(--mono); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em;
    color:var(--accent-dark); }
  .mcard__format{ font-size:10px; font-weight:600; color:var(--stone); background:var(--canvas); border:1px solid var(--border);
    padding:2px 8px; border-radius:9999px; }
  .mcard__title{ font-size:14.5px; font-weight:700; color:var(--ink); line-height:1.35; }
  .mcard__title a{ color:inherit; text-decoration:none; }
  .mcard__excerpt{ font-size:12.5px; color:var(--stone); line-height:1.5; }
  .ks-hub-empty, .ks-hub-loading{ font-size:13.5px; color:var(--stone); padding:24px 0; }

/* ===== КАРТОЧКА ИНСТРУМЕНТА НА ГЛАВНОЙ ===== */
.ks-tool-card{
  display:block;
  padding:26px 28px;
  border:1px solid var(--border);
  border-radius:16px;
  background:var(--accent-wash);
  text-decoration:none;
  transition:border-color .15s, transform .15s;
}
.ks-tool-card:hover{ border-color:var(--accent); transform:translateY(-2px); }
.ks-tool-card__name{ display:block; font-size:19px; font-weight:700; color:var(--ink); margin-bottom:8px; }
.ks-tool-card__desc{ display:block; font-size:15px; line-height:1.6; color:var(--charcoal); max-width:66ch; margin-bottom:10px; }
.ks-tool-card__meta{ display:block; font-family:var(--mono); font-size:11px; letter-spacing:0.03em; color:var(--stone); }

/* Приглашение на инструмент в разделе — светлое, чтобы не спорить с Sales OS. */
.ks-hub-promo--tool{ background:var(--accent-wash); border:1px solid var(--border-soft); }
.ks-hub-promo--tool .ks-hub-promo__title,
.ks-hub-promo--tool .ks-hub-promo__eyebrow{ color:var(--ink); }
.ks-hub-promo--tool .ks-hub-promo__desc{ color:var(--charcoal); }
.ks-hub-promo--tool .ks-hub-promo__cta{ background:var(--ink); color:#fff; }
@media (max-width:640px){ .ks-tool-card{ padding:20px; } }

/* ===== СТАТЬЯ: КРОШКИ, ЗАКЛАДКА, СВЯЗИ ===== */
.ks-crumb{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  margin:0 0 14px;
  font-size:13px;
}
.ks-crumb a{ color:var(--stone); text-decoration:none; }
.ks-crumb a:hover{ color:var(--accent-dark); }
.ks-crumb span{ color:var(--border); }

.ks-save{
  margin-left:auto;
  padding:6px 14px;
  font-size:12.5px;
  font-weight:600;
  font-family:inherit;
  color:var(--charcoal);
  background:transparent;
  border:1px solid var(--border);
  border-radius:99px;
  cursor:pointer;
  transition:border-color .15s, color .15s, background .15s;
}
.ks-save:hover{ border-color:var(--accent); color:var(--accent-dark); }
.ks-save.is-on{ background:var(--ink); border-color:var(--ink); color:#fff; }

.ks-rel{ margin:48px 0 0; }
.ks-rel__title{ font-size:20px; margin:0 0 18px; }
.ks-rel__grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(230px, 1fr));
  gap:12px;
}
.ks-rel__card{
  display:block;
  padding:16px 18px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--card);
  text-decoration:none;
  transition:border-color .15s, transform .15s;
}
.ks-rel__card:hover{ border-color:var(--accent); transform:translateY(-2px); }
.ks-rel__type{
  display:block;
  font-family:var(--mono);
  font-size:10.5px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--accent-dark);
  margin-bottom:6px;
}
.ks-rel__name{ display:block; font-size:15px; font-weight:600; line-height:1.4; color:var(--ink); }
@media (max-width:640px){
  .ks-rel__grid{ grid-template-columns:1fr; }
  .ks-rel{ margin-top:36px; }
}

/* ===== СОХРАНЁННОЕ ===== */
body.page .ks-page__content:has(.ks-saved){ max-width:900px; }
.ks-saved__grid{ display:flex; flex-direction:column; gap:8px; }
.ks-saved__item{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 18px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--card);
}
.ks-saved__link{ flex:1; font-size:15px; font-weight:600; color:var(--ink); text-decoration:none; }
.ks-saved__link:hover{ color:var(--accent-dark); }
.ks-saved__when{ font-family:var(--mono); font-size:11px; color:var(--stone); white-space:nowrap; }
.ks-saved__del{
  padding:5px 12px;
  font-size:12px;
  font-family:inherit;
  color:var(--stone);
  background:transparent;
  border:1px solid var(--border);
  border-radius:99px;
  cursor:pointer;
}
.ks-saved__del:hover{ color:var(--ink); border-color:var(--stone); }
.ks-saved__empty{ font-size:15px; line-height:1.6; color:var(--charcoal); }
@media (max-width:640px){
  .ks-saved__item{ flex-wrap:wrap; gap:8px; }
  .ks-saved__link{ flex:1 0 100%; }
}

/* ===== СПРАВОЧНИКИ ===== */
/* Колонка шаблона страницы узкая — справочнику нужна вся ширина,
   и тема подчёркивает ссылки в содержимом — карточка не ссылка в тексте. */
body.page .ks-page__content:has(.ks-dir){ max-width:1040px; }
body.page .ks-page__content .ks-dir,
body.page .ks-page__content .ks-dir__grid{ max-width:100%; width:100%; }
body.page .ks-page__content a.ks-dir__card,
body.page .ks-page__content a.ks-dir__card span,
.ks-post__content a.ks-dirtags-link{ text-decoration:none; }
.ks-dirtags a{ text-decoration:none; }
.ks-dir__grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(190px, 1fr));
  gap:10px;
  margin:0 0 28px;
}
.ks-dir__card{
  display:block;
  padding:15px 17px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--card);
  text-decoration:none;
  transition:border-color .15s, transform .15s;
}
.ks-dir__card:hover{ border-color:var(--accent); transform:translateY(-2px); }
.ks-dir__name{ display:block; font-size:15px; font-weight:700; color:var(--ink); margin-bottom:4px; }
.ks-dir__count{ display:block; font-family:var(--mono); font-size:11px; color:var(--stone); }
.ks-dir__grid--soon .ks-dir__card{ background:transparent; border-style:dashed; }
.ks-dir__grid--soon .ks-dir__name{ color:var(--charcoal); font-weight:600; }
.ks-dir__label{
  font-family:var(--mono);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--stone);
  margin:0 0 12px;
}

/* Метки справочников под статьёй */
.ks-dirtags{
  margin:36px 0 0;
  padding:20px 22px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--card);
  display:flex;
  flex-direction:column;
  gap:12px;
}
.ks-dirtags__row{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.ks-dirtags__label{
  font-family:var(--mono);
  font-size:10.5px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--stone);
  min-width:96px;
}
.ks-dirtags a{
  padding:6px 13px;
  font-size:13px;
  font-weight:600;
  border:1px solid var(--border);
  border-radius:99px;
  color:var(--ink);
  text-decoration:none;
  transition:border-color .15s, color .15s;
}
.ks-dirtags a:hover{ border-color:var(--accent); color:var(--accent-dark); }
@media (max-width:640px){
  .ks-dir__grid{ grid-template-columns:repeat(2, 1fr); gap:8px; }
  .ks-dirtags__label{ min-width:100%; }
  .ks-dirtags{ padding:16px; }
}

/* ===== КНИГИ И ФАЙЛЫ =====
   Материал, который скачивают, читается иначе: сначала решают, стоит ли,
   потом читают. Поэтому кнопка и состав выше подробностей. */
.ks-lib__lead{
  font-size:19px;
  line-height:1.6;
  color:var(--ink);
  font-weight:500;
  margin:0 0 20px;
}
.ks-lib__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 22px;
}
.ks-lib__meta span{
  padding:5px 13px;
  border:1px solid var(--border);
  border-radius:99px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:0.03em;
  color:var(--stone);
}
.ks-post__content a.ks-lib__get,
.ks-lib__get{
  display:inline-flex;
  align-items:center;
  padding:14px 28px;
  margin:0 0 36px;
  border-radius:99px;
  background:var(--ink);
  color:#fff;
  font-size:15px;
  font-weight:600;
  text-decoration:none;
  transition:background .15s, transform .15s;
}
.ks-post__content a.ks-lib__get:hover,
.ks-lib__get:hover{ background:var(--accent-dark); transform:translateY(-1px); }
.ks-lib__note{
  margin-top:24px;
  padding:14px 18px;
  border-left:3px solid var(--accent);
  background:var(--accent-wash);
  font-size:14.5px;
  line-height:1.6;
  color:var(--charcoal);
}
@media (max-width:640px){
  .ks-lib__get{ width:100%; justify-content:center; }
}

/* ===== БЛОКИ ДЛЯ СТАТЕЙ =====
   Статьи похожи друг на друга, когда каждая — сплошной текст с подзаголовками.
   Здесь набор способов подачи: цифры, шаги, сравнения, чек-листы.
   Один материал строится на таблице, другой на шагах — и они перестают сливаться. */

/* Цифры: когда главное в материале — данные */
.ks-b-nums{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:14px;
  margin:32px 0;
}
.ks-b-num{
  padding:20px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--card);
}
.ks-b-num__v{ display:block; font-size:32px; font-weight:800; line-height:1.1; color:var(--ink); letter-spacing:-0.02em; }
.ks-b-num__l{ display:block; margin-top:8px; font-size:13.5px; line-height:1.45; color:var(--charcoal); }
.ks-b-num__s{ display:block; margin-top:6px; font-family:var(--mono); font-size:10.5px; color:var(--stone); }

/* Шаги: когда материал — порядок действий */
.ks-b-steps{ list-style:none; padding:0; margin:32px 0; counter-reset:ksstep; }
.ks-b-steps > li{
  position:relative;
  padding:0 0 24px 52px;
  counter-increment:ksstep;
}
.ks-b-steps > li::before{
  content:counter(ksstep);
  position:absolute;
  left:0; top:0;
  width:34px; height:34px;
  display:flex; align-items:center; justify-content:center;
  border-radius:99px;
  background:var(--ink);
  color:#fff;
  font-family:var(--mono);
  font-size:13px;
  font-weight:700;
}
.ks-b-steps > li::after{
  content:"";
  position:absolute;
  left:17px; top:38px; bottom:6px;
  width:1px;
  background:var(--border);
}
.ks-b-steps > li:last-child::after{ display:none; }
.ks-b-steps b{ display:block; margin-bottom:5px; font-size:16px; color:var(--ink); }

/* Сравнение двух подходов */
.ks-b-vs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin:32px 0;
}
.ks-b-vs__col{
  padding:20px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--card);
}
.ks-b-vs__col--bad{ background:transparent; border-style:dashed; }
.ks-b-vs__t{
  display:block;
  margin-bottom:12px;
  font-family:var(--mono);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--stone);
}
.ks-b-vs__col--good .ks-b-vs__t{ color:var(--accent-dark); }
.ks-b-vs ul{ margin:0; padding-left:18px; }
.ks-b-vs li{ margin-bottom:7px; font-size:14.5px; line-height:1.5; }

/* Чек-лист */
.ks-b-check{ list-style:none; padding:0; margin:28px 0; }
.ks-b-check > li{
  position:relative;
  padding:11px 0 11px 34px;
  border-bottom:1px solid var(--border-soft);
  font-size:15.5px;
  line-height:1.55;
}
.ks-b-check > li:last-child{ border-bottom:0; }
.ks-b-check > li::before{
  content:"";
  position:absolute;
  left:2px; top:17px;
  width:15px; height:9px;
  border-left:2px solid var(--accent);
  border-bottom:2px solid var(--accent);
  transform:rotate(-45deg);
}

/* Главная мысль — крупно */
.ks-b-key{
  margin:36px 0;
  padding:26px 30px;
  border-left:4px solid var(--accent);
  background:var(--accent-wash);
  border-radius:0 12px 12px 0;
  font-size:19px;
  line-height:1.55;
  font-weight:500;
  color:var(--ink);
}

/* Цитата с автором */
.ks-b-quote{ margin:36px 0; padding:0 0 0 26px; border-left:3px solid var(--border); }
.ks-b-quote p{ margin:0 0 12px; font-size:18px; line-height:1.6; font-style:italic; color:var(--charcoal); }
.ks-b-quote cite{ font-style:normal; font-size:13.5px; color:var(--stone); }

@media (max-width:640px){
  .ks-b-vs{ grid-template-columns:1fr; }
  .ks-b-key{ padding:20px; font-size:17px; }
  .ks-b-num__v{ font-size:28px; }
}

/* ===== ЧТЕНИЕ КНИГИ ===== */
body.page .ks-page__content:has(.ks-book){ max-width:none; }
body.page .ks-page__content .ks-book{ max-width:100%; width:100%; }

.ks-book{
  --ks-book-fs: 1.0625rem;
  --ks-book-lh: 1.75;
  --ks-book-measure: 34em;
  margin:0 auto; max-width:1180px; padding:0 20px 96px; box-sizing:border-box;
}

.ks-book__bar{ position:fixed; inset:0 0 auto 0; height:3px; z-index:120; background:transparent; pointer-events:none; }
.ks-book__bar i{ display:block; height:100%; width:0; background:#ff6a1a; transition:width .12s linear; }

.ks-book__head{ max-width:var(--ks-book-measure); margin:0 auto; padding:8px 0 32px; }
.ks-book__kicker{ margin:0 0 10px; font-size:.75rem; letter-spacing:.12em; text-transform:uppercase; color:#6b7280; }
.ks-book__head h1{ margin:0 0 14px; font-size:clamp(1.75rem, 6vw, 2.6rem); line-height:1.15; letter-spacing:-.02em; }
.ks-book__lead{ margin:0 0 22px; font-size:1.0625rem; line-height:1.6; color:#4b5563; }
.ks-book__meta{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; font-size:.8125rem; color:#6b7280; }
.ks-book__meta span{ border:1px solid #e5e7eb; border-radius:999px; padding:5px 12px; white-space:nowrap; }
.ks-book__dl{ margin-left:auto; text-decoration:none; font-weight:600; border:1px solid #e5e7eb; border-radius:999px; padding:7px 16px; color:inherit; transition:border-color .15s, background .15s; }
.ks-book__dl:hover{ background:#f6f6f7; border-color:#c9ccd1; }

.ks-book__tools{ display:flex; gap:6px; align-items:center; max-width:var(--ks-book-measure); margin:0 auto 8px; }
.ks-book__tools button{ font:inherit; font-size:.8125rem; line-height:1; border:1px solid #e5e7eb; background:#fff; border-radius:999px; padding:8px 12px; cursor:pointer; color:#4b5563; transition:background .15s, border-color .15s; }
.ks-book__tools button:hover{ background:#f6f6f7; }
.ks-book__tools button[aria-pressed="true"]{ background:#111; border-color:#111; color:#fff; }
.ks-book__tools .ks-book__fs{ margin-left:auto; display:flex; gap:6px; }
.ks-book__tools [data-fs="s"]{ font-size:.6875rem; }
.ks-book__tools [data-fs="l"]{ font-size:.9375rem; }

.ks-book__toc{ margin:0 auto 28px; max-width:var(--ks-book-measure); border:1px solid #e5e7eb; border-radius:14px; overflow:hidden; background:#fff; }
.ks-book__toc > button{ display:flex; width:100%; align-items:center; justify-content:space-between; gap:12px; font:inherit; font-weight:600; text-align:left; padding:14px 16px; background:none; border:0; cursor:pointer; color:inherit; }
.ks-book__toc > button::after{ content:"\25BE"; font-size:.75rem; color:#9ca3af; transition:transform .2s; }
.ks-book__toc.is-open > button::after{ transform:rotate(180deg); }
.ks-book__toc ol{ display:none; list-style:none; margin:0; padding:0 8px 10px; counter-reset:ch; }
.ks-book__toc.is-open ol{ display:block; }
.ks-book__toc li{ counter-increment:ch; }
.ks-book__toc a{ display:flex; gap:12px; padding:9px 10px; border-radius:8px; text-decoration:none; color:inherit; font-size:.9375rem; line-height:1.4; }
.ks-book__toc a::before{ content:counter(ch); flex:0 0 1.6em; text-align:right; color:#9ca3af; font-variant-numeric:tabular-nums; }
.ks-book__toc a:hover{ background:#f6f6f7; }
.ks-book__toc a.is-here{ background:#f3f4f6; font-weight:600; }

.ks-book__body{ max-width:var(--ks-book-measure); margin:0 auto; font-size:var(--ks-book-fs); line-height:var(--ks-book-lh); }
.ks-book__body p{ margin:0 0 1.15em; }
.ks-book__body h2{ margin:2.6em 0 .7em; font-size:1.5em; line-height:1.2; letter-spacing:-.015em; scroll-margin-top:80px; }
.ks-book__body h2:first-child{ margin-top:.4em; }
.ks-book__body h3{ margin:2em 0 .6em; font-size:1.14em; line-height:1.3; scroll-margin-top:80px; }
.ks-book__body ul, .ks-book__body ol{ margin:0 0 1.2em; padding-left:1.35em; }
.ks-book__body li{ margin:0 0 .5em; }
.ks-book__body blockquote{ margin:1.6em 0; padding:2px 0 2px 18px; border-left:3px solid #ff6a1a; font-size:1.06em; line-height:1.55; }
.ks-book__body blockquote p:last-child{ margin-bottom:0; }
.ks-book__body a{ color:inherit; text-underline-offset:3px; }

.ks-book__body .ks-book-table{ margin:1.8em 0; overflow-x:auto; }
.ks-book__body table{ width:100%; border-collapse:collapse; font-size:.94em; }
.ks-book__body th, .ks-book__body td{ border-bottom:1px solid #e5e7eb; padding:11px 12px; text-align:left; vertical-align:top; }
.ks-book__body th{ font-weight:600; background:#f8f8f9; }

.ks-book__nav{ display:flex; gap:10px; margin:3em 0 0; padding-top:22px; border-top:1px solid #e5e7eb; }
.ks-book__nav a{ flex:1 1 0; min-width:0; text-decoration:none; color:inherit; border:1px solid #e5e7eb; border-radius:12px; padding:12px 14px; font-size:.875rem; line-height:1.35; transition:border-color .15s, background .15s; }
.ks-book__nav a:hover{ background:#f6f6f7; }
.ks-book__nav a small{ display:block; color:#9ca3af; margin-bottom:3px; }
.ks-book__nav a.is-next{ text-align:right; }

.ks-book__resume{ display:flex; gap:12px; align-items:center; flex-wrap:wrap; max-width:var(--ks-book-measure); margin:0 auto 22px; padding:12px 16px; border-radius:12px; background:#f7f7f8; font-size:.9rem; }
.ks-book__resume button{ font:inherit; font-weight:600; border:0; background:none; padding:0; cursor:pointer; color:#ff6a1a; text-decoration:underline; text-underline-offset:3px; }
.ks-book__resume .ks-book__resume-x{ margin-left:auto; color:#9ca3af; text-decoration:none; font-weight:400; }

@media (min-width:1120px){
  .ks-book{ display:grid; gap:56px; grid-template-columns:250px minmax(0, 1fr); grid-template-areas:"toc head" "toc tools" "toc body"; align-items:start; }
  .ks-book__head{ grid-area:head; margin-left:0; }
  .ks-book__tools{ grid-area:tools; margin-left:0; }
  .ks-book__body{ grid-area:body; margin-left:0; }
  .ks-book__resume{ grid-area:tools; margin:0 0 12px; }
  .ks-book__toc{ grid-area:toc; position:sticky; top:92px; margin:8px 0 0; max-width:none; max-height:calc(100vh - 130px); overflow:auto; border:0; background:none; }
  .ks-book__toc > button{ display:none; }
  .ks-book__toc ol{ display:block; padding:0; }
  .ks-book__toc a{ font-size:.875rem; padding:7px 10px; }
}

.ks-book[data-fs="s"]{ --ks-book-fs:1rem; --ks-book-measure:33em; }
.ks-book[data-fs="m"]{ --ks-book-fs:1.0625rem; --ks-book-measure:34em; }
.ks-book[data-fs="l"]{ --ks-book-fs:1.1875rem; --ks-book-measure:33em; }

@media print{
  .ks-book__toc, .ks-book__tools, .ks-book__bar, .ks-book__nav, .ks-book__resume{ display:none !important; }
  .ks-book__body{ max-width:none; }
}

/* Страница чтения: заголовок темы лишний — у книги своя шапка */
body.page:has(.ks-book) .ks-page__title{ display:none; }
body.page:has(.ks-book) .ks-page-wrap{ padding-top:8px; }
.ks-book__head h1{ color:#111; }
.ks-book__body{ color:#1a1a1a; }

/* Кнопки на карточке книги */
.ks-lib__actions{ display:flex; flex-wrap:wrap; gap:10px; margin:22px 0 30px; }
.ks-lib__read,
.ks-lib__dl{ display:inline-flex; align-items:center; justify-content:center; font-weight:600; font-size:15px; line-height:1; padding:14px 24px; border-radius:999px; text-decoration:none; transition:background .15s, border-color .15s, transform .15s; }
.ks-lib__read{ background:#111; color:#fff; border:1px solid #111; }
.ks-lib__read:hover{ background:#000; transform:translateY(-1px); color:#fff; }
.ks-lib__dl{ background:#fff; color:#111; border:1px solid #e0e0e2; }
.ks-lib__dl:hover{ background:#f6f6f7; border-color:#c9ccd1; color:#111; }

/* Цвета ссылок-кнопок перебиваются темой — задаём явно */
.ks-lib__actions a.ks-lib__read,
.ks-lib__actions a.ks-lib__read:visited{ color:#fff; text-decoration:none; }
.ks-lib__actions a.ks-lib__dl,
.ks-lib__actions a.ks-lib__dl:visited{ color:#111; text-decoration:none; }
.ks-book__meta a.ks-book__dl,
.ks-book__meta a.ks-book__dl:visited{ color:#111; text-decoration:none; }

/* На узких экранах шапка вылезала за правый край:
   поиск теперь сжимается, а не толкает бургер наружу */
@media (max-width:700px){
  .ks-nav__row{ padding-left:16px; padding-right:16px; gap:10px; }
  .ks-nav__left{ flex:0 1 auto; min-width:0; }
  .ks-nav__find{ flex:1 1 0; min-width:0; }
  .ks-nav__find input,
  .ks-nav__find .ks-find{ width:100%; min-width:0; }
  .ks-nav__burger{ flex:0 0 auto; }
}
@media (max-width:420px){
  .ks-nav__find{ display:none; }
}

/* Врезка «пример / промт» внутри книги */
.ks-book__body .ks-book-note{
  margin:1.8em 0; padding:16px 18px; border-radius:12px;
  background:#f7f7f8; border:1px solid #ececee; font-size:.97em; line-height:1.6;
}
.ks-book__body .ks-book-note b{
  display:block; margin-bottom:6px; font-size:.8125rem;
  letter-spacing:.08em; text-transform:uppercase; color:#6b7280;
}
.ks-book__body .ks-book-note p:last-child{ margin-bottom:0; }

/* ═════ ГЛАВНАЯ: РИТМ И КОНТРАСТ ═════
   Восемь блоков шли одинаково: кикер, заголовок, сетка — и страница
   читалась как длинный список. Разбиваем её на смысловые полосы. */

/* — неравномерный воздух вместо одного шага — */
body.home section.section{ padding-bottom:64px; }
body.home section.section:has(.carousel-wrap){ padding-bottom:28px; }
body.home section.section:has(.ks-path){ padding-bottom:80px; }
body.home section.section:has(.materials-grid){ padding-bottom:72px; }

/* — тёмная панель: инструменты — */
body.home section.section:has(.ks-tool-card){
  background:#14110f; color:#f2efec; border-radius:26px;
  padding:44px 40px 40px; margin:8px auto 72px; max-width:1152px; width:calc(100% - 48px);
}
body.home section.section:has(.ks-tool-card) .section__eyebrow{ color:#ff8a3d; }
body.home section.section:has(.ks-tool-card) .section__title{ color:#fff; }
body.home section.section:has(.ks-tool-card) .section__all{ color:#ff8a3d; }
body.home section.section:has(.ks-tool-card) .ks-tool-card{
  background:rgba(255,255,255,.05); border-color:rgba(255,255,255,.12);
}
body.home section.section:has(.ks-tool-card) .ks-tool-card:hover{
  background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.22);
}
body.home section.section:has(.ks-tool-card) .ks-tool-card__name{ color:#fff; }
body.home section.section:has(.ks-tool-card) .ks-tool-card__desc{ color:rgba(242,239,236,.66); }

/* — светлая панель: глоссарий — */
body.home section.section:has(.ks-home-gloss){
  background:#fff; border:1px solid rgba(28,25,23,.07); border-radius:26px;
  padding:40px;
  /* фиксированные боковые отступы уводили панель влево относительно
     остальных секций — держим ту же ширину, что и у соседей */
  margin:0 auto 72px; max-width:1200px; width:calc(100% - 48px);
}
body.home section.section:has(.ks-home-gloss) .ks-chipcard{
  background:#faf9f8; border-color:rgba(28,25,23,.08);
}

/* — шапки секций не под копирку — */
body.home .section__title{ letter-spacing:-.02em; }
body.home section.section:has(.ks-path) .section__title{ font-size:clamp(1.6rem,3.4vw,2.15rem); }
body.home section.section:has(.carousel-wrap) .section__eyebrow{ display:none; }

@media (max-width:820px){
  body.home section.section:has(.ks-tool-card),
  body.home section.section:has(.ks-home-gloss){
    margin-left:16px; margin-right:16px; padding:28px 22px; border-radius:20px;
  }
}

/* ═════ БЛОКИ ПОД ИИ-ПОИСК ═════
   Генеративные поисковики извлекают ответы охотнее там, где они
   явно размечены. Заодно человеку тоже удобнее читать. */

/* — короткий ответ в начале статьи — */
.ks-answer{
  margin:0 0 30px; padding:20px 22px; border-radius:14px;
  background:#fff; border:1px solid rgba(28,25,23,.09);
  border-left:3px solid #ff6a1a;
  font-size:1.0625rem; line-height:1.62;
}
.ks-answer b:first-child,
.ks-answer strong:first-child{
  display:block; margin-bottom:8px; font-size:.75rem; font-weight:600;
  letter-spacing:.1em; text-transform:uppercase; color:#9a9490;
}
.ks-answer p:last-child{ margin-bottom:0; }

/* — блок вопросов и ответов — */
.ks-faq{ margin:2.4em 0 1.6em; }
.ks-faq__title{
  margin:0 0 14px; font-size:1.32em; line-height:1.25; letter-spacing:-.015em;
}
.ks-faq__item{
  border-top:1px solid rgba(28,25,23,.1); padding:16px 0;
}
.ks-faq__item:last-child{ border-bottom:1px solid rgba(28,25,23,.1); }
.ks-faq__q{ font-weight:600; margin-bottom:7px; line-height:1.4; }
.ks-faq__a{ color:#4b4744; line-height:1.65; }
.ks-faq__a p:last-child{ margin-bottom:0; }

/* — оглавление статьи — */
.ks-toc{
  margin:0 0 32px; padding:18px 20px; border-radius:14px;
  background:#faf9f8; border:1px solid rgba(28,25,23,.07);
}
.ks-toc__title{
  margin:0 0 10px; font-size:.75rem; font-weight:600;
  letter-spacing:.1em; text-transform:uppercase; color:#9a9490;
}
.ks-toc ol{ margin:0; padding-left:1.3em; }
.ks-toc li{ margin:0 0 6px; }
.ks-toc a{ color:inherit; text-underline-offset:3px; }

/* — сводка «что сделать» в конце — */
.ks-takeaway{
  margin:2.4em 0 0; padding:22px 24px; border-radius:16px;
  background:#14110f; color:#f2efec;
}
.ks-takeaway h3{ margin:0 0 12px; color:#fff; font-size:1.14em; }
.ks-takeaway ul,
.ks-takeaway ol{ margin:0; padding-left:1.25em; }
.ks-takeaway li{ margin:0 0 8px; color:rgba(242,239,236,.86); }
.ks-takeaway li:last-child{ margin-bottom:0; }

@media (max-width:640px){
  .ks-answer{ padding:16px 18px; }
  .ks-takeaway{ padding:18px 20px; }
}

/* Врезки и таблицы работают не только в книгах, но и в статьях */
.ks-post__content .ks-book-note,
.ks-post__content .ks-note{
  display:block; margin:1.8em 0; padding:16px 18px; border-radius:12px;
  background:#faf9f8; border:1px solid rgba(28,25,23,.08);
  font-size:.97em; line-height:1.62;
}
.ks-post__content .ks-book-note b:first-child,
.ks-post__content .ks-note b:first-child{
  display:block; margin-bottom:6px; font-size:.75rem; font-weight:600;
  letter-spacing:.09em; text-transform:uppercase; color:#9a9490;
}
.ks-post__content table{ width:100%; border-collapse:collapse; font-size:.95em; margin:1.8em 0; }
.ks-post__content th,
.ks-post__content td{ border-bottom:1px solid rgba(28,25,23,.1); padding:11px 12px; text-align:left; vertical-align:top; }
.ks-post__content th{ font-weight:600; background:#faf9f8; }
.ks-table{ margin:1.8em 0; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.ks-table table{ margin:0; min-width:520px; }

/* ═════ КАРТОЧКИ РАЗДЕЛОВ OS ═════ */
.ks-os{
  display:grid; gap:14px; margin:0 0 40px;
  grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
}
.ks-os__card{
  display:flex; flex-direction:column; gap:7px;
  padding:22px 22px 20px; border-radius:16px;
  background:#fff; border:1px solid rgba(28,25,23,.09);
  text-decoration:none; color:inherit;
  transition:border-color .16s, transform .16s, box-shadow .16s;
}
.ks-os__card:hover{
  border-color:rgba(28,25,23,.22); transform:translateY(-2px);
  box-shadow:0 6px 20px rgba(28,25,23,.06); color:inherit;
}
.ks-os__card-title{ font-size:1.0625rem; font-weight:600; letter-spacing:-.01em; }
.ks-os__card-desc{ font-size:.9375rem; line-height:1.5; color:#6b6560; }
.ks-os__card-count{
  margin-top:6px; font-size:.75rem; letter-spacing:.06em;
  text-transform:uppercase; color:#a39d98;
}
/* готовая система выделяется — остальные ещё наполняются */
.ks-os__card.is-live{
  /* Растяжку на всю ширину убрали: она имела смысл, пока живой была одна
     система, а остальные стояли заглушками. Теперь готовы все пять и они
     должны лежать сеткой, а не пятью полосами друг под другом. */
  background:#14110f; border-color:#14110f; color:#f2efec;
}
.ks-os__card.is-live:hover{ background:#000; color:#f2efec; }
.ks-os__card.is-live .ks-os__card-title{ color:#fff; font-size:1.25rem; }
.ks-os__card.is-live .ks-os__card-desc{ color:rgba(242,239,236,.72); }
.ks-os__card.is-live .ks-os__card-count{ color:#ff8a3d; }

@media (max-width:640px){
  .ks-os{ grid-template-columns:1fr; }
  .ks-os__card{ padding:18px; }
}

/* Контейнер темы узкий — сетке карточек нужна ширина,
   а ссылки внутри карточки не должны выглядеть как ссылки в тексте */
body.page .ks-page__content:has(.ks-os){ max-width:1120px; }
body.page .ks-page__content .ks-os{ max-width:100%; width:100%; }
body.page .ks-page__content .ks-answer,
body.page .ks-page__content .ks-faq,
body.page .ks-page__content > h2,
body.page .ks-page__content > p{ max-width:62ch; }

.ks-os a.ks-os__card,
.ks-os a.ks-os__card:visited,
.ks-os a.ks-os__card:hover{ text-decoration:none; }
.ks-os__card .ks-os__card-title,
.ks-os__card .ks-os__card-desc,
.ks-os__card .ks-os__card-count{ text-decoration:none; }
.ks-os__card .ks-os__card-title{ color:#14110f; }
.ks-os__card:hover .ks-os__card-title{ color:#000; }
.ks-os__card.is-live .ks-os__card-title,
.ks-os__card.is-live:hover .ks-os__card-title{ color:#fff; }

/* Пункт «Системы» рядом с «Блогом» — тот же вес */
.ks-nav__os{
  font-weight:600; font-size:15px; text-decoration:none; color:inherit;
  white-space:nowrap; transition:opacity .15s;
}
.ks-nav__os:hover{ opacity:.62; color:inherit; }
.ks-nav__os.is-here{ color:#ea580c; }
@media (max-width:860px){ .ks-nav__os{ display:none; } }
.ks-nav__oslink{
  display:block; padding:12px 0; font-weight:600; font-size:17px;
  text-decoration:none; color:inherit;
}

/* Системы в работе — видно, что там уже есть материалы */
.ks-os__card.is-growing .ks-os__card-count{ color:#ea580c; }
.ks-os__card.is-growing{ border-color:rgba(234,88,12,.22); }
.ks-os__card.is-growing:hover{ border-color:rgba(234,88,12,.45); }

/* Связка разделов Sales OS со свежими статьями — база знаний была отрезана от блога */
.ks-osnext{ margin:44px 0 8px; padding:26px 28px; background:#14110f; border-radius:20px; }
.ks-osnext__title{ margin:0 0 4px; font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; color:#ea580c; font-weight:600; }
.ks-osnext__lead{ margin:0 0 18px; font-size:.95rem; color:rgba(255,255,255,.55); }
.ks-osnext ul{ margin:0; padding:0; list-style:none; display:grid; gap:2px; }
.ks-osnext li{ margin:0; border-top:1px solid rgba(255,255,255,.08); }
.ks-osnext li:first-child{ border-top:0; }
.ks-osnext a{ display:block; padding:13px 0; color:#fff; text-decoration:none; font-weight:600; font-size:1rem; line-height:1.35; }
.ks-osnext a:hover{ color:#fdba74; }
.ks-osnext a:visited{ color:#fff; }
.ks-osnext em{ display:block; margin-top:3px; font-style:normal; font-weight:400; font-size:.88rem; color:rgba(255,255,255,.5); }
@media (max-width:640px){ .ks-osnext{ padding:22px 18px; border-radius:16px; } }

/* Мобильное меню: фон не едет под открытой панелью, бургер превращается в крестик */
body.ks-navlock{ overflow:hidden; }
.ks-nav__burger{ position:relative; }
.ks-nav__burger[aria-expanded="true"] span{ opacity:0; }
.ks-nav__burger[aria-expanded="true"]::before,
.ks-nav__burger[aria-expanded="true"]::after{
  content:""; position:absolute; left:50%; top:50%; width:17px; height:2px;
  background:currentColor; border-radius:2px; transform-origin:center;
}
.ks-nav__burger[aria-expanded="true"]::before{ transform:translate(-50%,-50%) rotate(45deg); }
.ks-nav__burger[aria-expanded="true"]::after{ transform:translate(-50%,-50%) rotate(-45deg); }
@media (max-width:900px){
  #ksNav.is-open{ max-height:calc(100vh - 74px); overflow-y:auto; -webkit-overflow-scrolling:touch; }
}

/* Под поиском на главной — честный масштаб базы: человек сразу видит, что здесь есть */
.ks-herostats{ display:flex; flex-wrap:wrap; justify-content:center; gap:10px 26px;
  margin:26px auto 0; max-width:760px; font-size:.9rem; color:var(--stone); }
.ks-herostats a{ color:inherit; text-decoration:none; border-bottom:1px solid transparent; }
.ks-herostats a:hover{ color:var(--ink); border-bottom-color:var(--accent); }
.ks-herostats b{ color:var(--ink); font-weight:700; }
@media (max-width:640px){ .ks-herostats{ gap:8px 18px; font-size:.84rem; } }

/* Знаки разделов: тонкая линия вместо буквы, размер и цвет наследуются */
.fcard__icon svg{ width:19px; height:19px; display:block; }
.fcard__icon{ color:var(--accent-dark); }
.fcard:hover .fcard__icon{ background:var(--accent); color:#fff; }
.fcard.is-blog .fcard__icon svg{ color:#fff; }

/* Инструмент пока один — ссылка «Все инструменты» вела на ту же единственную карточку.
   Вернём её, когда инструментов станет больше одного. */
body.home section.section:has(.ks-tool-card) .section__all{ display:none; }

/* Лента материалов на странице системы */
.ks-osfeed ul{ margin:0; padding:0; list-style:none; display:grid; gap:0; }
.ks-osfeed li{ margin:0; border-top:1px solid var(--border); }
.ks-osfeed li:first-child{ border-top:0; }
.ks-osfeed a{ display:block; padding:16px 0; color:var(--ink); text-decoration:none; font-weight:700; font-size:1.02rem; line-height:1.35; }
.ks-osfeed a:hover{ color:var(--accent-dark); }
.ks-osfeed i{ display:inline-block; font-style:normal; font-size:.68rem; letter-spacing:.08em; text-transform:uppercase;
  color:var(--accent-dark); background:var(--accent-wash); border-radius:9999px; padding:3px 9px; margin-right:9px; vertical-align:2px; }
.ks-osfeed em{ display:block; margin-top:5px; font-style:normal; font-weight:400; font-size:.9rem; color:var(--stone); }

/* Анатомия системы: что внутри и в каком порядке */
.ks-blocks{ display:grid; gap:14px; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); margin:22px 0 8px; }
.ks-blocks__item{ border:1px solid var(--border); border-radius:14px; padding:15px 17px; background:#fff; }
.ks-blocks__n{ font-size:.7rem; letter-spacing:.1em; color:var(--accent-dark); font-weight:700; }
.ks-blocks__t{ display:block; margin:6px 0 4px; font-weight:700; font-size:1rem; color:var(--ink); }
.ks-blocks__d{ font-size:.86rem; color:var(--stone); line-height:1.45; }
.ks-blocks__item.is-soon{ background:var(--accent-wash); border-style:dashed; }

/* ===== КАТАЛОГ ФРЕЙМВОРКОВ ===== */
.ks-fwbar{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 10px; }
.ks-fwbar__label{ width:100%; font-size:.7rem; letter-spacing:.09em; text-transform:uppercase; color:var(--stone); margin:14px 0 2px; }
.ks-fwchip{ border:1px solid var(--border); background:#fff; color:var(--ink); border-radius:9999px;
  padding:7px 14px; font-size:.86rem; cursor:pointer; font-weight:600; transition:.15s; }
.ks-fwchip:hover{ border-color:var(--accent); }
.ks-fwchip.is-on{ background:var(--ink); color:#fff; border-color:var(--ink); }
.ks-fwcount{ margin:18px 0 6px; font-size:.86rem; color:var(--stone); }
.ks-fwcat{ display:grid; gap:12px; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); margin:8px 0 0; }
.ks-fwcard{ display:block; border:1px solid var(--border); border-radius:16px; padding:18px 20px; background:#fff;
  text-decoration:none; transition:.15s; }
.ks-fwcard:hover{ border-color:var(--accent); transform:translateY(-2px); }
.ks-fwcard__top{ display:flex; gap:7px; flex-wrap:wrap; margin-bottom:9px; }
.ks-fwcard__tag{ font-size:.66rem; letter-spacing:.07em; text-transform:uppercase; font-weight:700;
  border-radius:9999px; padding:3px 9px; background:var(--accent-wash); color:var(--accent-dark); }
.ks-fwcard__tag.is-lvl{ background:#f1f0ee; color:var(--stone); }
.ks-fwcard__name{ display:block; font-weight:700; font-size:1.06rem; color:var(--ink); line-height:1.3; }
.ks-fwcard__desc{ display:block; margin-top:6px; font-size:.9rem; color:var(--stone); line-height:1.5; }
.ks-fwempty{ padding:28px 0; color:var(--stone); font-size:.95rem; }
@media (max-width:640px){ .ks-fwcat{ grid-template-columns:1fr; } }

/* fwcat-wide: каталогу тесно в колонке текста — выпускаем его на ширину страницы */
/* Каталогу тесно в колонке текста шириной 520px — расширяем саму колонку
   только на страницах с каталогом, не трогая остальные. */
.ks-page-wrap.is-wide{ max-width:1200px; }
.ks-page-wrap.is-wide .ks-page__content{ max-width:1120px; }
.ks-page-wrap.is-wide .ks-page__content > p,
.ks-page-wrap.is-wide .ks-page__content > h2,
.ks-page-wrap.is-wide .ks-page__content > ul,
.ks-page-wrap.is-wide .ks-page__content > .ks-osnext,
.ks-page-wrap.is-wide .ks-page__content > .ks-note,
.ks-page-wrap.is-wide .ks-page__content > .ks-faq,
.ks-page-wrap.is-wide .ks-page__content > .ks-answer{
  max-width:62ch;
  margin-left:0 !important;
  margin-right:auto !important;
}
.ks-page-wrap.is-wide .ks-page__content > p.ks-fwcount{ max-width:none; }
.ks-fwcat{ grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); }
/* тема подчёркивает ссылки в тексте — в карточках это лишнее */
.ks-fwcard, .ks-fwcard *, .ks-osnext a, .ks-osfeed a{ text-decoration:none !important; }
.ks-fwcard:visited .ks-fwcard__name{ color:var(--ink); }

/* ширина каталога против блочной темы: тема зажимает прямых потомков до content-size,
   поэтому три блока каталога снимаем с этого ограничения явно */
.ks-page-wrap.is-wide .ks-fwbar,
.ks-page-wrap.is-wide .ks-fwcount,
.ks-page-wrap.is-wide .ks-fwsets,
.ks-page-wrap.is-wide .ks-fwsets,
.ks-page-wrap.is-wide .ks-fwcat{ max-width:none !important; width:auto !important; }

/* Пункт «Фреймворки» — тот же вес, что «Системы» и «Блог» */
.ks-nav__fw{
  font-weight:600; font-size:15px; text-decoration:none; color:inherit;
  white-space:nowrap; transition:opacity .15s;
}
.ks-nav__fw:hover{ opacity:.62; color:inherit; }
.ks-nav__fw:visited{ color:inherit; }
.ks-nav__fw.is-here{ color:#ea580c; }
@media (max-width:980px){ .ks-nav__fw{ display:none; } }
.ks-nav__fwlink{
  display:block; padding:12px 0; font-weight:600; font-size:17px;
  text-decoration:none; color:inherit;
}


/* Указатель глоссария: поиск и группировка по буквам.
   Префикс ks-glossix, чтобы не пересечься с .ks-gloss — это инлайн-ссылка на термин в тексте. */
.ks-list-wrap.is-wide{ max-width:1200px; }
.ks-glossix{ margin-top:8px; }
.ks-glossix__tools{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:18px; }
.ks-glossix__search{
  flex:1 1 320px; max-width:420px; padding:11px 16px; border-radius:999px;
  border:1px solid rgba(28,25,23,0.14); background:#fff; font:inherit; font-size:.95rem; color:var(--ink);
}
.ks-glossix__search:focus{ outline:none; border-color:rgba(226,98,42,0.55); box-shadow:0 0 0 3px rgba(226,98,42,0.12); }
.ks-glossix__count{ font-size:.85rem; color:var(--stone); white-space:nowrap; }
.ks-glossix__alpha{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:30px; }
.ks-glossix__alpha a{
  display:inline-flex; align-items:center; justify-content:center; min-width:32px; height:32px;
  padding:0 8px; border-radius:8px; background:rgba(28,25,23,0.05); color:var(--charcoal);
  font-size:.82rem; font-weight:600; text-decoration:none !important; border:0;
}
.ks-glossix__alpha a:hover{ background:var(--ink); color:#fff; }
.ks-glossix__group{ margin-bottom:34px; scroll-margin-top:90px; }
.ks-glossix__letter{ font-size:.78rem !important; letter-spacing:.14em; text-transform:uppercase; color:var(--stone);
  margin:0 0 12px !important; padding-bottom:8px; border-bottom:1px solid rgba(28,25,23,0.08); }
.ks-glossix__list{ display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:2px 28px; }
.ks-glossix__item{
  display:block; padding:12px 14px; border-radius:10px; text-decoration:none !important;
  border:1px solid transparent; transition:background .15s ease, border-color .15s ease;
}
.ks-glossix__item:hover{ background:#fff; border-color:rgba(28,25,23,0.08); }
.ks-glossix__term{ display:block; font-weight:700; font-size:1rem; color:var(--ink); }
.ks-glossix__def{ display:block; margin-top:3px; font-size:.88rem; line-height:1.5; color:var(--stone); }
@media (max-width:640px){
  .ks-glossix__list{ grid-template-columns:1fr; }
  .ks-glossix__search{ max-width:none; }
}

/* блочная тема ужимает прямых потомков до ширины текста — указателю нужна вся страница */
.ks-list-wrap.is-wide > .ks-glossix,
.ks-list-wrap.is-wide > .ks-glossix > *{
  max-width:none !important; width:auto !important;
  margin-left:0 !important; margin-right:0 !important;
}


/* Пункт «Глоссарий» — тот же вес, что «Системы», «Фреймворки» и «Блог».
   Плюс общий отступ: вставленные скриптом пункты слипались с соседними. */
.ks-nav__gl{
  font-weight:600; font-size:15px; text-decoration:none; color:inherit;
  white-space:nowrap; transition:opacity .15s;
}
.ks-nav__gl:hover{ opacity:.62; color:inherit; }
.ks-nav__gl:visited{ color:inherit; }
.ks-nav__gl.is-here{ color:#ea580c; }
@media (max-width:980px){ .ks-nav__gl{ display:none; } }
.ks-nav__gllink{
  display:block; padding:12px 0; font-weight:600; font-size:17px;
  text-decoration:none; color:inherit;
}
.ks-nav__left > .ks-nav__fw,
.ks-nav__left > .ks-nav__lb,
.ks-nav__left > .ks-nav__lp,
.ks-nav__left > .ks-nav__rl,
.ks-nav__left > .ks-nav__gl,
.ks-nav__left > .ks-os{ margin-left:22px; }

/* Библиотека — шестой пункт базы знаний */
.ks-nav__lb{ font-weight:600; font-size:15px; text-decoration:none; color:inherit; white-space:nowrap; transition:opacity .15s; }
.ks-nav__lb:hover{ opacity:.62; color:inherit; }
.ks-nav__lb:visited{ color:inherit; }
.ks-nav__lb.is-here{ color:#ea580c; }
@media (max-width:980px){ .ks-nav__lb{ display:none; } }
.ks-nav__lblink{ display:block; padding:12px 0; font-weight:600; font-size:17px; text-decoration:none; color:inherit; }
.ks-nav__left > .ks-nav__bloglink{ margin-left:22px; }


/* Схемы в тексте: моноширинный блок со своей прокруткой.
   Без этого длинная строка схемы растягивает всю страницу на телефоне. */
.ks-diagram{
  display:block; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch;
  font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);
  font-size:13px; line-height:1.6; white-space:pre; tab-size:2;
  background:rgba(28,25,23,0.04); border:1px solid rgba(28,25,23,0.08);
  border-radius:12px; padding:18px 20px; margin:26px 0; color:var(--charcoal);
}
@media (max-width:640px){ .ks-diagram{ font-size:11px; padding:14px; } }

/* таблицы в статьях не должны раздвигать страницу */
.entry-content table{ display:block; max-width:100%; overflow-x:auto; }
@media (min-width:900px){ .entry-content table{ display:table; width:100%; } }


/* Страница роли: текст роли над лентой материалов */
.ks-rolebody{ margin:8px 0 44px; }
.ks-rolebody h2{ font-size:1.15rem !important; margin:32px 0 12px !important; }
.ks-rolebody ul{ margin:0 0 4px; padding-left:20px; }
.ks-rolebody li{ margin-bottom:7px; line-height:1.6; }
.ks-rolebody__feed{
  margin-top:44px !important; padding-top:22px;
  border-top:1px solid rgba(28,25,23,0.10);
  display:flex; align-items:baseline; gap:10px;
}
.ks-rolebody__feed span{
  font-size:.78rem; font-weight:600; color:var(--stone);
  background:rgba(28,25,23,0.05); border-radius:999px; padding:2px 9px;
}
.ks-list-wrap.is-wide > .ks-roles,
.ks-list-wrap.is-wide > .ks-roles > *{
  max-width:none !important; width:auto !important; margin-left:0 !important; margin-right:0 !important;
}
.ks-roles__grid{
  display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:16px; margin-top:28px;
}
.ks-rolecard{
  display:flex; flex-direction:column; gap:8px;
  padding:22px 22px 20px; border:1px solid rgba(28,25,23,0.10); border-radius:14px;
  background:#fff; text-decoration:none !important; transition:transform .15s ease, box-shadow .15s ease;
}
.ks-rolecard:hover{ transform:translateY(-2px); box-shadow:0 8px 26px rgba(28,25,23,0.07); }
.ks-rolecard__name{ font-weight:700; font-size:1.12rem; color:var(--ink); line-height:1.25; }
.ks-rolecard__desc{ font-size:.9rem; line-height:1.55; color:var(--stone); flex:1; }
.ks-rolecard__count{ font-size:.78rem; color:var(--stone); opacity:.75; }
@media (max-width:640px){ .ks-roles__grid{ grid-template-columns:1fr; } }


/* Страница роли: выравнивание по левому краю и нормальные заголовки.
   Блочная тема центрировала блок и красила h2 служебным серым. */
.ks-list-wrap > .ks-rolebody{
  max-width:64ch !important; width:auto !important;
  margin-left:0 !important; margin-right:auto !important;
}
.ks-rolebody h2{
  color:var(--ink) !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  font-size:1.18rem !important;
}
.ks-rolebody .ks-answer{ margin:0 0 30px; }
.ks-rolebody a{ color:var(--accent-dark, #ea580c); }
.ks-rolebody__feed{ max-width:64ch; }


/* Пункт «Роли» — в один ряд с остальными */
.ks-nav__rl{
  font-weight:600; font-size:15px; text-decoration:none; color:inherit;
  white-space:nowrap; transition:opacity .15s;
}
.ks-nav__rl:hover{ opacity:.62; color:inherit; }
.ks-nav__rl:visited{ color:inherit; }
.ks-nav__rl.is-here{ color:#ea580c; }
@media (max-width:980px){ .ks-nav__rl{ display:none; } }
.ks-nav__rllink{
  display:block; padding:12px 0; font-weight:600; font-size:17px;
  text-decoration:none; color:inherit;
}
.ks-nav__left > .ks-nav__rl{ margin-left:22px; }


/* Дата и метка свежести в ленте материалов */
.mcard__meta{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.mcard__date{
  font-size:.74rem; color:var(--stone); opacity:.85; white-space:nowrap;
  margin-left:auto;
}
.mcard__new{
  font-size:.66rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:#fff; background:var(--accent, #e2622a);
  border-radius:999px; padding:2px 8px; white-space:nowrap;
}
@media (max-width:520px){ .mcard__date{ margin-left:0; } }

/* Блок «Фреймворки» на главной */
.ks-fwhome__lead{
  margin:0 0 20px !important; max-width:62ch;
  color:var(--stone); font-size:.95rem; line-height:1.6;
}


/* Книги на главной: обложка, название, одна строка о содержании */
.ks-books{
  display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:18px;
}
.ks-bookcard{
  display:flex; flex-direction:column; gap:10px; text-decoration:none !important;
  transition:transform .16s ease;
}
.ks-bookcard:hover{ transform:translateY(-3px); }
.ks-bookcard__img{
  display:block; width:100%; aspect-ratio:1200/630; border-radius:10px;
  background:#1c1917 center/cover no-repeat;
  box-shadow:0 4px 18px rgba(28,25,23,0.10);
}
.ks-bookcard__img.is-empty{ background:linear-gradient(135deg,#231f1d,#3a2a20); }
.ks-bookcard__t{ font-weight:700; font-size:.98rem; line-height:1.3; color:var(--ink); }
.ks-bookcard__d{ font-size:.83rem; line-height:1.5; color:var(--stone); }
@media (max-width:640px){
  .ks-books{ grid-template-columns:repeat(2,1fr); gap:14px; }
  .ks-bookcard__t{ font-size:.9rem; }
  .ks-bookcard__d{ display:none; }
}


/* Поиск: тип результата и переключатели над выдачей */
.ks-resbar{ display:flex; flex-wrap:wrap; gap:8px; margin:22px 0 26px; }
.ks-reschip{
  display:inline-flex; align-items:center; gap:7px;
  padding:7px 14px; border-radius:999px; cursor:pointer;
  border:1px solid rgba(28,25,23,0.12); background:#fff;
  font:inherit; font-size:.86rem; font-weight:600; color:var(--charcoal);
  transition:background .15s ease, color .15s ease, border-color .15s ease;
}
.ks-reschip span{ font-weight:500; opacity:.6; font-size:.8rem; }
.ks-reschip:hover{ border-color:rgba(28,25,23,0.28); }
.ks-reschip.is-on{ background:var(--ink); border-color:var(--ink); color:#fff; }
.ks-reschip.is-on span{ opacity:.7; }

.ks-restype{
  display:inline-block; margin-bottom:10px;
  font-size:.68rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase;
  padding:3px 9px; border-radius:999px;
  background:rgba(28,25,23,0.06); color:var(--stone);
}
.ks-restype--fw{ background:rgba(226,98,42,0.12); color:#c2521f; }
.ks-restype--term{ background:rgba(28,25,23,0.08); color:var(--charcoal); }
.ks-restype--role{ background:rgba(28,25,23,0.06); color:var(--stone); }


/* Куда идти дальше с карточки фреймворка и страницы термина */
.ks-next{
  margin-top:52px !important; padding-top:30px;
  border-top:1px solid rgba(28,25,23,0.10);
  max-width:none !important;
}
.ks-next__h{
  font-size:.78rem !important; letter-spacing:.13em; text-transform:uppercase;
  color:var(--stone) !important; margin:0 0 18px !important; font-weight:600 !important;
}
.ks-next__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:14px; }
.ks-next__card{
  display:flex; flex-direction:column; gap:6px;
  padding:16px 18px; border:1px solid rgba(28,25,23,0.10); border-radius:12px;
  background:#fff; text-decoration:none !important; transition:border-color .15s ease, transform .15s ease;
}
.ks-next__card:hover{ border-color:rgba(28,25,23,0.26); transform:translateY(-2px); }
.ks-next__t{ font-weight:700; font-size:.96rem; line-height:1.3; color:var(--ink); }
.ks-next__d{ font-size:.83rem; line-height:1.5; color:var(--stone); }
.ks-next__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.ks-next__chip{
  display:inline-block; padding:8px 14px; border-radius:999px;
  border:1px solid rgba(28,25,23,0.12); background:#fff;
  font-size:.88rem; font-weight:600; color:var(--charcoal); text-decoration:none !important;
}
.ks-next__chip:hover{ border-color:rgba(28,25,23,0.3); }
.ks-next__all{
  display:inline-block; margin:18px 22px 0 0;
  font-size:.9rem; font-weight:600; color:var(--accent-dark,#ea580c); text-decoration:none !important;
}
@media (max-width:640px){ .ks-next__grid{ grid-template-columns:1fr; } }


/* Рубрики в указателе глоссария */
.ks-glossix__cats{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 24px; }
.ks-glosscat{
  display:inline-flex; align-items:center; gap:7px;
  padding:7px 14px; border-radius:999px; cursor:pointer;
  border:1px solid rgba(28,25,23,0.12); background:#fff;
  font:inherit; font-size:.86rem; font-weight:600; color:var(--charcoal);
  transition:background .15s ease, color .15s ease, border-color .15s ease;
}
.ks-glosscat span{ font-weight:500; opacity:.55; font-size:.8rem; }
.ks-glosscat:hover{ border-color:rgba(28,25,23,0.28); }
.ks-glosscat.is-on{ background:var(--ink); border-color:var(--ink); color:#fff; }
.ks-glosscat.is-on span{ opacity:.7; }


/* Страница системы: словарь и роли */
.ks-osextra{ margin:44px 0 8px; }
.ks-osextra__h{
  display:flex; align-items:baseline; gap:10px;
  font-size:1.15rem !important; margin:34px 0 16px !important; color:var(--ink) !important;
}
.ks-osextra__h:first-child{ margin-top:0 !important; }
.ks-osextra__h span{
  font-size:.72rem; font-weight:600; color:var(--stone);
  background:rgba(28,25,23,0.05); border-radius:999px; padding:2px 9px;
}
.ks-osextra__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.ks-osextra__chips .ks-next__chip b{
  margin-left:7px; font-weight:500; opacity:.5; font-size:.8rem;
}


/* Тема красит ссылки внутри текста в акцент — чипы от этого становятся
   пёстрыми; чипы не должны краситься как ссылки. */
.ks-osextra .ks-next__chip,
.ks-next .ks-next__chip{ color:var(--charcoal) !important; }
.ks-osextra .ks-next__chip:hover,
.ks-next .ks-next__chip:hover{ color:var(--ink) !important; border-color:rgba(28,25,23,0.3); }


/* таблицы на широких страницах занимают всю колонку, текст остаётся узким */
.ks-page-wrap.is-wide .ks-page__content > table,
.ks-page-wrap.is-wide .ks-page__content > .wp-block-table{
  max-width:none !important; width:100% !important;
  margin-left:0 !important; margin-right:0 !important;
}
.ks-page-wrap.is-wide .ks-page__content > .ks-faq,
.ks-page-wrap.is-wide .ks-page__content > .ks-takeaway{ max-width:62ch; }


/* 404: подсказки по адресу, с которого пришли */
.ks-404sug{ max-width:760px; margin:40px auto 0; text-align:left; }
.ks-404sug__h{
  margin:0 0 14px !important; text-align:center;
  font-size:.78rem; letter-spacing:.13em; text-transform:uppercase; color:var(--stone);
}
.ks-404sug__list{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:12px; }
.ks-404sug__item{
  display:flex; flex-direction:column; gap:8px; align-items:flex-start;
  padding:16px 18px; border:1px solid rgba(28,25,23,0.10); border-radius:12px;
  background:#fff; text-decoration:none !important; transition:border-color .15s ease, transform .15s ease;
}
.ks-404sug__item:hover{ border-color:rgba(28,25,23,0.28); transform:translateY(-2px); }
.ks-404sug__item .ks-restype{ margin:0; }
.ks-404sug__t{ font-weight:700; font-size:.95rem; line-height:1.3; color:var(--ink); }
@media (max-width:640px){ .ks-404sug__list{ grid-template-columns:1fr; } }


/* Наборы фреймворков под задачу — над каталогом на /frameworks/ */
.ks-fwsets{ margin:40px 0 8px; }
.ks-fwsets__kicker{ font-size:.72rem; letter-spacing:.14em; font-weight:700; color:var(--accent,#E1622F); margin:0 0 10px; }
.ks-fwsets__lead{ margin:0 0 22px; max-width:720px; color:var(--muted,#6b6560); }
.ks-fwsets__grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:16px; }
.ks-fwset{ border:1px solid rgba(28,25,23,0.10); border-radius:16px; padding:22px 24px; background:#fff; transition:border-color .15s ease; }
.ks-fwset:hover{ border-color:rgba(28,25,23,0.24); }
.ks-fwset__h{ margin:0 0 6px; font-weight:700; font-size:1.02rem; line-height:1.3; color:var(--ink,#1c1917); }
.ks-fwset__p{ margin:0 0 14px; font-size:.88rem; line-height:1.5; color:var(--muted,#6b6560); }
.ks-fwset__list{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:7px; }
.ks-fwset__list li{ margin:0; }
.ks-fwset__list a{
  display:inline-block; padding:5px 11px; border-radius:999px;
  border:1px solid rgba(28,25,23,0.12); background:#fafaf9;
  font-size:.82rem; line-height:1.25; color:var(--ink,#1c1917);
  text-decoration:none !important; transition:background .15s ease, border-color .15s ease;
}
.ks-fwset__list a:hover{ background:#fff; border-color:var(--accent,#E1622F); color:var(--accent,#E1622F); }
@media (max-width:640px){ .ks-fwsets__grid{ grid-template-columns:1fr; } .ks-fwset{ padding:18px 18px; } }


/* Заголовок набора может быть ссылкой — подчёркивание тут лишнее */
.ks-fwset__h a{ color:var(--ink,#1c1917) !important; text-decoration:none !important; }
.ks-fwset__h a:hover{ color:var(--accent,#E1622F) !important; }


/* Мобильное меню: пункты разделов набирались в разное время и разошлись
   по размеру и цвету — «Системы» и «Фреймворки» выглядели крупнее и бледнее
   остальных. Приводим все пункты к одному виду с кнопками доменов. */
@media (max-width:980px){
  #ksMobile > .ks-nav__oslink,
  #ksMobile > .ks-nav__fwlink,
  #ksMobile > .ks-nav__gllink,
  #ksMobile > .ks-nav__rllink,
  #ksMobile > .ks-nav__lblink,
  #ksMobile > .ks-nav__bloglink{
    display:block;
    padding:12px 4px;
    font-size:14px;
    font-weight:700;
    line-height:1.3;
    color:var(--ink,#1c1917);
    text-decoration:none;
  }
  #ksMobile > .ks-nav__oslink.is-here,
  #ksMobile > .ks-nav__fwlink.is-here,
  #ksMobile > .ks-nav__gllink.is-here,
  #ksMobile > .ks-nav__rllink.is-here,
  #ksMobile > .ks-nav__lblink.is-here{ color:var(--accent,#ea580c); }
}


/* ══════ ПОДТЕМА РАЗДЕЛА ══════
   Ссылки из меню вида /sales/?tag=… открывали страницу раздела без
   всякого признака выбранной подтемы. Ниже — оформление отдельного вида. */
.ks-sub{ margin:0 0 34px; }
.ks-page-wrap.is-wide .ks-sub{ max-width:none !important; width:auto !important; }
.ks-sub__kick{ font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; font-weight:700; color:var(--stone,#79716b); margin:0 0 12px; }
.ks-sub__kick a{ color:var(--accent,#ea580c); text-decoration:none !important; }
.ks-sub__h1{ font-size:clamp(2rem,4.5vw,3.1rem); line-height:1.08; font-weight:800; letter-spacing:-.02em; color:var(--ink,#1c1917); margin:0 0 14px; }
.ks-sub__lead{ font-size:1.05rem; line-height:1.55; color:var(--charcoal,#57534d); max-width:680px; margin:0 0 18px; }
.ks-sub__meta{ display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin:0 0 8px;
  padding-top:16px; border-top:1px solid rgba(28,25,23,.10); font-size:.9rem; color:var(--stone,#79716b); }
.ks-sub__back{ color:var(--accent,#ea580c); text-decoration:none !important; font-weight:600; }
.ks-sub__back:hover{ text-decoration:underline !important; }
.ks-sub__sibs{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 10px; }
.ks-sub__sib{ display:inline-block; padding:6px 13px; border-radius:999px; border:1px solid rgba(28,25,23,.12);
  background:#fafaf9; font-size:.84rem; color:var(--ink,#1c1917); text-decoration:none !important; transition:border-color .15s, background .15s; }
.ks-sub__sib:hover{ background:#fff; border-color:var(--accent,#ea580c); color:var(--accent,#ea580c); }
.ks-sub__card{ display:flex; flex-direction:column; gap:8px; padding:22px 24px;
  border:1px solid rgba(28,25,23,.10); border-radius:16px; background:#fff;
  text-decoration:none !important; transition:border-color .15s ease, transform .15s ease; }
.ks-sub__card:hover{ border-color:rgba(28,25,23,.26); transform:translateY(-2px); }
.ks-sub__date{ font-size:.75rem; letter-spacing:.06em; text-transform:uppercase; color:var(--stone,#79716b); }
.ks-sub__title{ font-weight:700; font-size:1.02rem; line-height:1.32; color:var(--ink,#1c1917); }
.ks-sub__ex{ font-size:.88rem; line-height:1.5; color:var(--charcoal,#57534d); }
.ks-sub__empty{ padding:28px; border:1px dashed rgba(28,25,23,.18); border-radius:16px; color:var(--charcoal,#57534d); }
@media (max-width:640px){ .ks-sub__card{ padding:18px; } }

/* обложка-картинка не нужна там, где у страницы свой собственный первый экран */
body:has(.ks-hub-intro) .ks-page__cover,
body:has(.ks-fwsets) .ks-page__cover,
body:has(#fwCatalog) .ks-page__cover{ display:none; }

/* лента подтемы — это сетка карточек, ей нужна вся ширина */
.ks-page-wrap.is-wide .ks-hub-grid{ max-width:none !important; width:auto !important; }
.ks-hub-grid:has(.ks-sub__card){ display:grid; gap:14px; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); }
@media (max-width:640px){ .ks-hub-grid:has(.ks-sub__card){ grid-template-columns:1fr; } }


/* ══════ ПОДАЧА КОНТЕНТА ══════
   Материалы стали содержательными, но выглядели как голый HTML: таблицы без
   ритма, нумерованные списки без акцента. Слой ниже работает на всех страницах
   сразу, без переписывания разметки. */

/* Таблицы: первая колонка — опора, чётные строки подсвечены, шапка тише текста */
.ks-table-scroll{
  border:1px solid rgba(28,25,23,.10); border-radius:16px; background:#fff;
  overflow-x:auto; -webkit-overflow-scrolling:touch; margin:22px 0 26px;
}
.ks-table-scroll > table{ margin:0 !important; border:0 !important; font-size:.94rem; min-width:520px; }
.ks-table-scroll thead th{
  background:#fff; border-bottom:2px solid rgba(28,25,23,.14) !important;
  padding:14px 16px !important; text-align:left; vertical-align:bottom;
  font-size:.71rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase;
  color:var(--stone,#79716b); white-space:nowrap;
}
.ks-table-scroll tbody td{
  padding:14px 16px !important; vertical-align:top; line-height:1.45;
  border-bottom:1px solid rgba(28,25,23,.07) !important;
}
.ks-table-scroll tbody tr:nth-child(even){ background:#fbfaf9; }
.ks-table-scroll tbody tr:last-child td{ border-bottom:0 !important; }
.ks-table-scroll tbody td:first-child{ font-weight:600; color:var(--ink,#1c1917); min-width:132px; }
.ks-table-scroll tbody td strong{ font-weight:700; }
@media (max-width:640px){
  .ks-table-scroll{ border-radius:12px; }
  .ks-table-scroll > table{ font-size:.88rem; }
  .ks-table-scroll thead th, .ks-table-scroll tbody td{ padding:11px 12px !important; }
}

/* Нумерованные списки: шаг с номером, а не строка с точкой */
.ks-post__content > ol, .ks-page__content > ol{
  counter-reset:ksol; list-style:none; padding-left:0; margin:18px 0 26px;
}
.ks-post__content > ol > li, .ks-page__content > ol > li{
  counter-increment:ksol; position:relative; padding-left:44px; margin-bottom:14px; line-height:1.55;
}
.ks-post__content > ol > li::before, .ks-page__content > ol > li::before{
  content:counter(ksol); position:absolute; left:0; top:0;
  width:28px; height:28px; border-radius:50%;
  background:#fff; border:1px solid rgba(234,88,12,.28); color:var(--accent-dark,#ea580c);
  font-size:.78rem; font-weight:700; line-height:26px; text-align:center;
  box-shadow:0 1px 2px rgba(28,25,23,.04);
}

/* Маркированные списки: аккуратная точка вместо системного маркера */
.ks-post__content > ul, .ks-page__content > ul{ list-style:none; padding-left:0; margin:18px 0 26px; }
.ks-post__content > ul > li, .ks-page__content > ul > li{
  position:relative; padding-left:24px; margin-bottom:11px; line-height:1.55;
}
.ks-post__content > ul > li::before, .ks-page__content > ul > li::before{
  content:""; position:absolute; left:4px; top:.62em;
  width:6px; height:6px; border-radius:50%; background:var(--accent,#ea580c); opacity:.55;
}

/* Сноска об источниках — тише основного текста */
.ks-note{ font-size:.85rem; line-height:1.5; color:var(--stone,#79716b);
  border-top:1px solid rgba(28,25,23,.10); padding-top:14px; margin-top:30px; }

/* Таблица шире колонки текста: строка комфортна для чтения (около 70 знаков),
   а таблице из четырёх столбцов такой ширины не хватает. Выносим её за поля
   колонки, но не за пределы экрана. */
@media (min-width:1024px){
  .ks-post-wrap .ks-table-scroll,
  .ks-page-wrap:not(.is-wide) .ks-table-scroll,
  .ks-page-wrap.is-wide .ks-table-scroll{
    max-width:none !important;
    width:min(940px, calc(100vw - 120px)) !important;
    margin-left:50% !important;
    margin-right:0 !important;
    transform:translateX(-50%);
  }
}

/* На страницах, которым JS уже дал полную ширину, вынос наружу не нужен:
   там достаточно занять всю доступную колонку. */
@media (min-width:1024px){
  .ks-page-wrap.is-wide .ks-table-scroll{
    width:100% !important; max-width:none !important;
    margin-left:0 !important; transform:none !important;
  }
}


/* ══════ ОФОРМЛЕНИЕ ДЛИННЫХ РАЗБОРОВ ══════
   Набор правил лежал внутри девяти материалов в восьми разошедшихся
   версиях. При сведении в одно место автоматическая склейка сломала
   вложенные медиазапросы, и всё, что шло дальше по файлу, переставало
   применяться. Ниже — только валидные правила, проверенные парсером. */
.ks-report{ --ink:#1c1917; --charcoal:#57534d; --stone:#79716b; --canvas:#f7f5f2; --card:#ffffff;
    --border:rgba(28,25,23,0.10); --border-soft:rgba(28,25,23,0.06);
    --accent:#f97316; --accent-dark:#ea580c; --accent-wash:#fff1e6;
    --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    background:transparent; color:var(--charcoal) !important; font-size:16px; line-height:1.75; }
.ks-report__eyebrow{ font-family:var(--mono); font-size:11px; font-weight:600; letter-spacing:0.08em;
    text-transform:uppercase; color:var(--accent-dark) !important; margin:44px 0 10px !important; }
.ks-report__eyebrow:first-child{ margin-top:0 !important; }
.ks-report h2{ color:var(--ink) !important; font-size:22px !important; font-weight:700 !important;
    letter-spacing:-0.01em !important; margin:0 0 16px !important; }
.ks-report p{ margin:0 0 18px !important; color:var(--charcoal) !important; }
.ks-report strong{ color:var(--ink) !important; font-weight:700 !important; }
.ks-report__divider{ height:1px; background:var(--border); margin:36px 0; border:none; }
.ks-report__quote{ background:var(--accent-wash) !important; border-left:3px solid var(--accent);
    border-radius:0 12px 12px 0; padding:18px 22px; margin:0 0 24px; }
.ks-report__quote p{ color:var(--ink) !important; font-size:15.5px !important; font-weight:600 !important;
    line-height:1.6 !important; margin:0 !important; }
/* инфографика: три логики рядом */
  .ks-report__archgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:0 0 10px; }
.ks-report__arch{ background:var(--card) !important; border:1px solid var(--border); border-radius:14px;
    padding:16px 14px 18px; text-align:center; }
.ks-report__arch-label{ font-family:var(--mono); font-size:11px; font-weight:700; color:var(--accent-dark) !important;
    text-transform:uppercase; letter-spacing:0.04em; margin-bottom:12px; }
.ks-report__arch-cap{ font-size:11.5px; color:var(--stone) !important; margin-top:12px !important; line-height:1.45; }
.ks-report__bant{ display:flex; gap:6px; justify-content:center; flex-wrap:wrap; }
.ks-report__pill{ font-family:var(--mono); font-size:11px; font-weight:700; color:var(--stone); background:var(--canvas) !important;
    border:1px solid var(--border); border-radius:8px; padding:8px 10px; min-width:34px; }
.ks-report__pill.p1{ animation:archBlink 4s infinite; }
.ks-report__pill.p2{ animation:archBlink 4s infinite; animation-delay:1.1s; }
.ks-report__pill.p3{ animation:archBlink 4s infinite; animation-delay:2.3s; }
.ks-report__pill.p4{ animation:archBlink 4s infinite; animation-delay:3.2s; }


/* ══════ ПОЛНЫЕ СПИСКИ БАЗЫ ЗНАНИЙ ══════
   Отдаются сервером, поэтому читаются и без скриптов. Для человека это
   быстрый указатель, для краулера — единственный способ увидеть каталог. */
.ks-allindex{ margin:48px 0 8px; padding-top:34px; border-top:1px solid rgba(28,25,23,.10); }
.ks-page-wrap.is-wide .ks-allindex{ max-width:none !important; width:auto !important; }
.ks-allindex h2{ margin:0 0 8px; }
.ks-allindex__lead{ margin:0 0 22px; color:var(--stone,#79716b); font-size:.92rem; max-width:640px; }
.ks-allindex ul{ list-style:none !important; margin:0 !important; padding:0 !important;
  display:grid; gap:2px 28px; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); }
.ks-allindex li{ margin:0 !important; padding:9px 0 !important; border-bottom:1px solid rgba(28,25,23,.06); }
.ks-allindex li::before{ content:none !important; }
.ks-allindex a{ font-weight:600; font-size:.95rem; color:var(--ink,#1c1917); text-decoration:none !important; }
.ks-allindex a:hover{ color:var(--accent-dark,#ea580c); }
.ks-allindex span{ display:block; margin-top:3px; font-size:.82rem; line-height:1.4; color:var(--stone,#79716b); }
@media (max-width:640px){ .ks-allindex ul{ grid-template-columns:1fr; } }

/* Широкая таблица не должна залезать под боковое оглавление:
   когда оно есть, расширяем только вправо. */
@media (min-width:1024px){
  body:has(.ks-toc--side) .ks-post-wrap .ks-table-scroll{
    margin-left:0 !important; margin-right:0 !important;
    transform:none !important;
    width:min(calc(100% + 180px), calc(100vw - 460px)) !important;
    max-width:none !important;
  }
}

/* ══════ ПРОГРАММЫ ОБУЧЕНИЯ ══════
   Маршрут — это не статья, а лестница. Поэтому шаг читается как карточка
   с номером, а материалы внутри — как список переходов, а не как текст. */
.ks-lp__meta{ display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:1px;
  background:rgba(28,25,23,.10); border:1px solid rgba(28,25,23,.10); border-radius:14px;
  overflow:hidden; margin:26px 0 34px; }
.ks-lp__meta > div{ background:var(--paper,#faf9f7); padding:16px 18px; font-weight:600; font-size:.95rem; }
.ks-lp__meta span{ display:block; margin-bottom:5px; font-size:.72rem; letter-spacing:.09em;
  text-transform:uppercase; font-weight:700; color:var(--stone,#79716b); }

.ks-lp{ margin:34px 0 10px; }
.ks-lp__level{ margin:0 0 30px; }
.ks-lp__levelname{ display:inline-block; margin:0 0 14px; padding:5px 12px; border-radius:999px;
  background:rgba(234,88,12,.10); color:var(--accent-dark,#ea580c);
  font-size:.74rem; letter-spacing:.09em; text-transform:uppercase; font-weight:700; }
.ks-lp__mod{ display:grid; grid-template-columns:52px 1fr; gap:16px; padding:20px 0;
  border-top:1px solid rgba(28,25,23,.08); }
.ks-lp__mod:first-of-type{ border-top:none; }
.ks-lp__num{ font-size:1.5rem; font-weight:800; line-height:1; color:rgba(28,25,23,.18);
  font-variant-numeric:tabular-nums; }
.ks-lp__body h3{ margin:0 0 6px !important; font-size:1.1rem; }
.ks-lp__body > p{ margin:0 0 12px !important; color:var(--stone,#79716b); font-size:.95rem; }
.ks-lp__links{ list-style:none !important; margin:0 !important; padding:0 !important;
  display:grid; gap:2px 22px; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); }
.ks-lp__links li{ margin:0 !important; padding:6px 0 !important; display:flex; gap:10px;
  align-items:baseline; justify-content:space-between; border-bottom:1px solid rgba(28,25,23,.06); }
.ks-lp__links li::before{ content:none !important; }
.ks-lp__links a{ font-weight:600; font-size:.93rem; text-decoration:none !important; color:var(--ink,#1c1917); }
.ks-lp__links a:hover{ color:var(--accent-dark,#ea580c); }
.ks-lp__links span{ flex:none; font-size:.7rem; letter-spacing:.06em; text-transform:uppercase;
  font-weight:700; color:var(--stone,#79716b); opacity:.75; }
@media (max-width:640px){
  .ks-lp__mod{ grid-template-columns:38px 1fr; gap:12px; }
  .ks-lp__num{ font-size:1.15rem; }
  .ks-lp__links{ grid-template-columns:1fr; }
}

/* карточки программ на хабе */
.ks-lpcards{ display:grid; gap:16px; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); margin:28px 0 8px; }
/* карточка — блок, ссылка внутри заголовка растянута на всю карточку:
   так редактор не рвёт разметку на пустые ссылки */
.ks-lpcard{ position:relative; display:block; padding:22px 22px 20px; border:1px solid rgba(28,25,23,.12); border-radius:16px;
  background:var(--paper,#faf9f7); text-decoration:none !important; color:inherit;
  transition:border-color .18s ease, transform .18s ease; }
.ks-lpcard:hover{ border-color:var(--accent,#f97316); transform:translateY(-2px); }
.ks-lpcard__tag{ font-size:.7rem; letter-spacing:.09em; text-transform:uppercase; font-weight:700;
  color:var(--accent-dark,#ea580c); }
.ks-lpcard__title{ margin:8px 0 8px; font-size:1.16rem; font-weight:700; line-height:1.25; }
.ks-lpcard__desc{ font-size:.93rem; color:var(--stone,#79716b); line-height:1.5; }
.ks-lpcard__foot{ margin-top:14px; padding-top:12px; border-top:1px solid rgba(28,25,23,.08);
  font-size:.8rem; font-weight:600; color:var(--stone,#79716b); }

/* ══════ ЗНАК В ШАПКЕ ══════
   Логотип в навигации был только текстом. Знак ставим фоном псевдоэлемента,
   чтобы не трогать разметку темы и не ломать мобильное меню. */
/* Знак «KZ» — это первые две буквы названия, поэтому в тексте осталось только
   «SalesHub», а плашка стоит вплотную, как продолжение слова. */
.ks-nav__logo{ display:inline-flex !important; align-items:center; }
.ks-nav__logo::before{
  content:""; flex:none; width:1.55em; height:1.44em; margin-right:.07em;
  background:url("https://kzsaleshub.com/wp-content/uploads/2026/08/kzsh-mark-light-tight.png") left center/contain no-repeat;
}
/* в подвале фон тёмный — там знак светлый */
.ks-footer .ks-nav__logo::before, .ks-foot .ks-nav__logo::before{
  background-image:url("https://kzsaleshub.com/wp-content/uploads/2026/08/kzsh-mark-dark-tight.png");
}

/* тот же знак в подвале: там фон светлый, поэтому вариант для светлого фона */
.ks-footer__logo, .footer__logo{ display:inline-flex !important; align-items:center; }
.ks-footer__logo::before, .footer__logo::before{
  content:""; flex:none; width:1.55em; height:1.44em; margin-right:.07em;
  background:url("https://kzsaleshub.com/wp-content/uploads/2026/08/kzsh-mark-light-tight.png") left center/contain no-repeat;
}

/* карточки программ шире колонки текста — иначе три штуки встают в один столбец */
@media (min-width:1024px){
  .ks-page-wrap .ks-lpcards{
    width:min(940px, calc(100vw - 120px)) !important;
    max-width:none !important;
    margin-left:50% !important; transform:translateX(-50%);
  }
}

.ks-lpcard__title a{ text-decoration:none !important; color:inherit; }
.ks-lpcard__title a::after{ content:""; position:absolute; inset:0; }
.ks-lpcard:hover .ks-lpcard__title a{ color:var(--accent-dark,#ea580c); }

/* ══════ ШАПКА: место под новый пункт ══════
   С «Программами» строка перестала помещаться и наезжала на «Менторство».
   Отступы на узких экранах ужимаем. */
@media (max-width:1439px){ .ks-nav__powered{ display:none !important; } }
@media (max-width:1200px){
  .ks-nav__left > a, .ks-nav__trigger > button{ padding-left:7px !important; padding-right:7px !important; font-size:12.5px !important; }
}

/* выпадающий список систем */
.ks-nav__left > .ks-os{ position:relative; }
.ks-os__panel{ position:absolute; top:calc(100% + 10px); left:0; z-index:60; min-width:330px;
  background:var(--paper,#faf9f7); border:1px solid rgba(28,25,23,.12); border-radius:14px;
  box-shadow:0 18px 40px rgba(28,25,23,.10); padding:8px; display:none; }
.ks-os.is-open .ks-os__panel{ display:block; }
.ks-os__panel a{ display:block; padding:9px 12px; border-radius:9px; text-decoration:none !important; color:var(--ink,#1c1917); }
.ks-os__panel a:hover{ background:rgba(234,88,12,.08); }
.ks-os__name{ font-weight:700; font-size:.94rem; }
.ks-os__note{ display:block; margin-top:2px; font-size:.79rem; color:var(--stone,#79716b); line-height:1.35; }
.ks-os__all{ margin-top:4px; border-top:1px solid rgba(28,25,23,.08); font-weight:700; color:var(--accent-dark,#ea580c) !important; }

/* «Программы» — тот же вид, что у остальных пунктов шапки */
.ks-nav__lp{ font-weight:600; font-size:15px; text-decoration:none; color:inherit; white-space:nowrap; transition:opacity .15s; }
.ks-nav__lp:hover{ opacity:.62; color:inherit; }
.ks-nav__lp:visited{ color:inherit; }
.ks-nav__lp.is-here{ color:#ea580c; }
@media (max-width:980px){ .ks-nav__lp{ display:none; } }
.ks-nav__lplink{ display:block; padding:12px 0; font-weight:600; font-size:17px; text-decoration:none; color:inherit; }

/* обёртка «Систем» не должна ломать выравнивание строки */
.ks-nav__left > .ks-os{ display:flex !important; align-items:center; align-self:center; margin-bottom:0 !important; }
@media (max-width:980px){ .ks-nav__left > .ks-os{ display:none !important; } }

/* ══════ ПЯТЬ СИСТЕМ НА ГЛАВНОЙ ══════
   Раньше на систему можно было попасть только через пункт «Системы» в шапке,
   и со стороны казалось, что есть одна Sales OS. Теперь они видны сразу. */
.ks-oscards{ display:grid; gap:14px; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); margin:20px 0 4px; }
.ks-oscard{ position:relative; padding:20px 18px 18px; border-radius:16px;
  background:#141210; color:#faf9f7; }
.ks-oscard__name{ font-size:1.05rem; font-weight:800; letter-spacing:-.01em; }
.ks-oscard__name a{ color:#faf9f7 !important; text-decoration:none !important; }
.ks-oscard__name a::after{ content:""; position:absolute; inset:0; border-radius:16px; }
.ks-oscard__desc{ margin-top:8px; font-size:.87rem; line-height:1.45; color:rgba(250,249,247,.72); }
.ks-oscard__meta{ margin-top:12px; font-size:.7rem; letter-spacing:.08em; text-transform:uppercase;
  font-weight:700; color:var(--accent,#f97316); }
.ks-oscard{ transition:transform .18s ease, box-shadow .18s ease; }
.ks-oscard:hover{ transform:translateY(-2px); box-shadow:0 14px 30px rgba(20,18,16,.22); }
@media (max-width:640px){ .ks-oscards{ grid-template-columns:1fr 1fr; } }
@media (max-width:420px){ .ks-oscards{ grid-template-columns:1fr; } }

/* ══════ ПОДВАЛ: пять колонок ══════
   Добавилась колонка «Системы», разделы перечислены полностью. */
@media (min-width:1024px){
  .footer__inner, .ks-footer__inner{ grid-template-columns:1.25fr 1fr 1fr 1.05fr .85fr !important; gap:24px !important; }
}
@media (min-width:641px) and (max-width:1023px){
  .footer__inner, .ks-footer__inner{ grid-template-columns:1fr 1fr 1fr !important; }
}
.ks-footer__open{ display:inline-block; margin-left:10px; padding:3px 9px; border-radius:999px;
  background:rgba(234,88,12,.10); color:var(--accent-dark,#ea580c);
  font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; font-weight:700; vertical-align:middle; }


/* Курсы: время модуля, блок самопроверки, глоссарий, оглавление */
.ks-mod__time{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:#79716b;margin:-.35rem 0 .7rem;font-weight:600}
.ks-quiz{margin:1rem 0 .2rem;padding:.9rem 1.05rem;border:1px solid rgba(28,25,23,.10);border-radius:12px;background:rgba(249,115,22,.04)}
.ks-quiz__q{margin:0 0 .5rem;font-weight:650;line-height:1.45}
.ks-quiz__a{font-size:.95rem}
.ks-quiz__a summary{cursor:pointer;font-weight:600;color:#c2410c;list-style:none;display:inline-flex;align-items:center;gap:.4rem}
.ks-quiz__a summary::-webkit-details-marker{display:none}
.ks-quiz__a summary::before{content:'+';font-weight:700;width:1.05em;height:1.05em;display:inline-grid;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:.85em;line-height:1}
.ks-quiz__a[open] summary::before{content:'\2212'}
.ks-quiz__a[open] summary{margin-bottom:.5rem}
.ks-quiz__a p{margin:0;color:#1c1917}
.ks-course__toc{margin:.6rem 0 1.6rem;padding-left:1.25rem;columns:2;column-gap:2rem}
.ks-course__toc li{margin:.3rem 0;break-inside:avoid}
@media(max-width:719px){.ks-course__toc{columns:1}}
.ks-gl{display:grid;gap:.55rem;margin:.8rem 0 1.6rem}
.ks-gl__item{padding:.8rem 1rem;border:1px solid rgba(28,25,23,.09);border-radius:12px;background:#fff}
.ks-gl__t{font-weight:700;margin-bottom:.25rem}
.ks-gl__d{font-size:.95rem;line-height:1.55;color:#57534d}


/* После добавления «Курсов» в шапке стало на пункт больше, и на ноутбучных
   шириных кнопка «Менторство» уезжала за край. Поджимаем поиск и расстояния
   в диапазоне до 1440 — пункты меню при этом остаются в одну строку. */
@media (min-width:1024px) and (max-width:1439px){
  .ks-nav__row{gap:10px !important}
  .ks-nav__find{width:104px !important;min-width:0 !important}
  .ks-nav__mentor{padding-left:14px !important;padding-right:14px !important}
}


/* «Курсы» — новый пункт шапки. Свои правила нужны, иначе ссылка берёт
   цвет по умолчанию и выглядит блёклой рядом с остальными. Повторяем
   поведение «Программ»: тот же вес, отступ, ховер и подсветка текущего раздела. */
.ks-nav__left > .ks-nav__crs{ margin-left:22px; }
.ks-nav__crs{ font-weight:600; font-size:15px; text-decoration:none; color:inherit; white-space:nowrap; transition:opacity .15s; }
.ks-nav__crs:hover{ opacity:.62; color:inherit; }
.ks-nav__crs:visited{ color:inherit; }
.ks-nav__crs.is-here{ color:#ea580c; }
@media (max-width:980px){ .ks-nav__crs{ display:none; } }
.ks-nav__crslink{ display:block; padding:12px 0; font-weight:600; font-size:17px; text-decoration:none; color:inherit; }
.ks-nav__crslink:hover, .ks-nav__crslink:visited{ color:inherit; }


/* Проверка знаний: вопрос, варианты, разбор, счётчик результата. */
.ks-q{margin:1rem 0;padding:1rem 1.1rem;border:1px solid rgba(28,25,23,.10);border-radius:14px;background:#fff}
.ks-q__t{margin:0 0 .75rem;font-weight:650;line-height:1.45}
.ks-q__o{display:block;width:100%;text-align:left;margin:.4rem 0;padding:.6rem .8rem;border:1px solid rgba(28,25,23,.14);border-radius:10px;background:#fbfaf9;font:inherit;font-size:.95rem;line-height:1.45;color:#1c1917;cursor:pointer;transition:border-color .15s,background .15s}
.ks-q__o:hover:not(:disabled){border-color:#f97316;background:#fff}
.ks-q__o:disabled{cursor:default}
.ks-q__o.is-right{border-color:#15803d;background:rgba(21,128,61,.07);font-weight:600}
.ks-q__o.is-wrong{border-color:#b91c1c;background:rgba(185,28,28,.06)}
.ks-q__e{margin-top:.7rem;padding-top:.7rem;border-top:1px dashed rgba(28,25,23,.16);font-size:.95rem;line-height:1.6;color:#57534d}
.ks-q__e[hidden]{display:none}
.ks-qsum{position:sticky;top:64px;z-index:5;margin:1.2rem 0 1.8rem;padding:.9rem 1.1rem;border:1px solid rgba(28,25,23,.12);border-radius:14px;background:#12110f;color:#fff}
.ks-qsum__row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;font-size:.92rem}
.ks-qsum__n{font-weight:700;font-size:1.05rem;color:#fb923c}
.ks-qsum__track{margin-top:.55rem;height:4px;border-radius:99px;background:rgba(255,255,255,.16);overflow:hidden}
.ks-qsum__fill{height:100%;width:0;background:#f97316;transition:width .3s}
.ks-qsum__verdict{margin-top:.55rem;font-size:.92rem;color:rgba(255,255,255,.8)}
.ks-qsum__verdict[hidden]{display:none}
@media(max-width:719px){.ks-qsum{position:static}}



/* Мини-приложение Telegram. Открывается внутри мессенджера, поэтому шапка
   и подвал сайта здесь лишние — их прячет класс is-tgapp, который ставит скрипт.
   Размеры рассчитаны на палец: минимальная высота плитки 76px, отступы крупные. */
.ks-app{--a:#f97316;--ink:var(--tg-text,#1c1917);--card:var(--tg-card,#fff);--line:rgba(28,25,23,.10);--mut:var(--tg-hint,#79716b);max-width:720px;margin:0 auto;padding:4px 0 32px;color:var(--ink)}
.ks-app__head{display:flex;align-items:center;gap:12px;margin:0 0 18px}
.ks-app__mark{flex:none;width:42px;height:42px;border-radius:12px;background:#12110f url('https://kzsaleshub.com/wp-content/uploads/2026/08/kzsh-mark-dark-tight.png') center/62% no-repeat}
.ks-app__hgroup{display:flex;flex-direction:column;min-width:0}
.ks-app__name{font-weight:800;font-size:1.18rem;line-height:1.2;letter-spacing:-.01em}
.ks-app__sub{font-size:.82rem;line-height:1.35;color:var(--mut);margin-top:2px}
.ks-app__hero{display:block;position:relative;margin:0 0 14px;padding:18px 20px 20px;border-radius:18px;background:linear-gradient(135deg,#12110f 0%,#2a1a10 100%);color:#fff !important;text-decoration:none !important;border:0 !important}
.ks-app__hero-t{display:block;font-weight:750;font-size:1.14rem;line-height:1.25}
.ks-app__hero-d{display:block;margin-top:6px;font-size:.9rem;line-height:1.5;color:rgba(255,255,255,.72)}
.ks-app__hero-go{display:inline-block;margin-top:14px;padding:8px 16px;border-radius:99px;background:var(--a);color:#fff;font-weight:650;font-size:.9rem}
.ks-app__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}
.ks-app__tile{display:block;min-height:76px;padding:14px 14px 15px;border:1px solid var(--line);border-radius:16px;background:var(--card);text-decoration:none !important;border-bottom-width:1px !important;color:var(--ink) !important;transition:border-color .15s,transform .12s}
.ks-app__tile:active{transform:scale(.98)}
.ks-app__tile:hover{border-color:var(--a)}
.ks-app__tile *{text-decoration:none !important;border-bottom:0 !important}
.ks-app__ico{display:block;width:22px;height:22px;margin-bottom:9px;color:var(--a)}
.ks-app__t{display:block;font-weight:700;font-size:.98rem;line-height:1.25;color:var(--ink) !important}
.ks-app__d{display:block;margin-top:3px;font-size:.82rem;line-height:1.35;color:var(--mut) !important;font-weight:400 !important}
.ks-app__foot{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:.9rem}
.ks-app__foot a{color:var(--mut) !important;text-decoration:none !important;border-bottom:1px solid var(--line) !important}
.ks-app__foot a:hover{color:var(--a) !important;border-bottom-color:var(--a) !important}
body.is-tgapp .ks-nav,body.is-tgapp .ks-footer,body.is-tgapp .footer,body.is-tgapp .ks-nav__mobile,body.is-tgapp .ks-crumbs,body.is-tgapp .ks-back{display:none !important}
body.is-tgapp .entry-title,body.is-tgapp h1.wp-block-post-title{display:none !important}
body.is-tgapp{background:var(--tg-bg,#f7f5f2) !important}
@media(max-width:400px){.ks-app__grid{grid-template-columns:1fr}}


/* Плавающая кнопка «назад» на мобильном. Появляется на внутренних страницах,
   прячется при прокрутке вниз и возвращается при движении вверх — чтобы
   не закрывать текст во время чтения. Внутри Telegram не нужна: там своя. */
.ks-backfab{position:fixed;left:14px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:60;width:46px;height:46px;display:grid;place-items:center;padding:0;border:1px solid rgba(28,25,23,.12);border-radius:50%;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);color:#1c1917;box-shadow:0 6px 20px rgba(28,25,23,.16);cursor:pointer;transition:opacity .2s,transform .2s}
.ks-backfab svg{width:22px;height:22px}
.ks-backfab:active{transform:scale(.94)}
.ks-backfab.is-off{opacity:0;transform:translateY(10px);pointer-events:none}
body.is-tgapp .ks-backfab{display:none !important}
@media(min-width:981px){.ks-backfab{display:none !important}}


/* Программы: результаты обучения и практическое задание.
   Список ссылок сам по себе ничего не обещает читателю — эти два блока
   говорят, что он получит и что сделает своими руками. */
.ks-lp__out{margin:.7rem 0 1.8rem;padding-left:1.15rem}
.ks-lp__out li{margin:.45rem 0;line-height:1.6}
.ks-lp__out li::marker{color:#f97316}
.ks-lp__task{margin:1.8rem 0;padding:1.1rem 1.25rem;border:1px solid rgba(28,25,23,.12);border-left:3px solid #f97316;border-radius:14px;background:#fff}
.ks-lp__task-t{margin:0 0 .5rem;font-size:.78rem;letter-spacing:.07em;text-transform:uppercase;font-weight:700;color:#c2410c}
.ks-lp__task p{margin:0;line-height:1.65}


/* Прогресс по программе: счётчик сверху и отметка у каждого шага. */
.ks-lpbar{position:sticky;top:64px;z-index:5;margin:0 0 18px;padding:.85rem 1.1rem;border:1px solid rgba(28,25,23,.12);border-radius:14px;background:#12110f;color:#fff}
.ks-lpbar__row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;font-size:.92rem}
.ks-lpbar__n{font-weight:700;font-size:1.05rem;color:#fb923c}
.ks-lpbar__track{margin-top:.55rem;height:4px;border-radius:99px;background:rgba(255,255,255,.16);overflow:hidden}
.ks-lpbar__fill{height:100%;width:0;background:#f97316;transition:width .3s}
.ks-lpbar__reset{margin-top:.6rem;padding:0;border:0;background:none;color:rgba(255,255,255,.55);font:inherit;font-size:.82rem;text-decoration:underline;cursor:pointer}
.ks-lpbar__reset:hover{color:#fff}
.ks-lpbar.is-full .ks-lpbar__n{color:#4ade80}
.ks-lp__mod{position:relative}
.ks-lp__check{position:absolute;right:14px;top:14px;width:30px;height:30px;display:grid;place-items:center;padding:0;border:1px solid rgba(28,25,23,.18);border-radius:50%;background:#fff;color:transparent;cursor:pointer;transition:border-color .15s,color .15s,background .15s}
.ks-lp__check svg{width:16px;height:16px}
.ks-lp__check:hover{border-color:#f97316;color:rgba(249,115,22,.45)}
.ks-lp__mod.is-done .ks-lp__check{background:#15803d;border-color:#15803d;color:#fff}
.ks-lp__mod.is-done .ks-lp__body h3{color:#79716b}
.ks-lp__mod.is-done{opacity:.72}
.ks-lp__body{padding-right:52px}
@media(max-width:719px){.ks-lpbar{position:static}}


/* ===== ОТКРЫТЫЙ КОД ===== */
.ks-repo__meta{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--ks-line,#e5e7eb);border-radius:14px;overflow:hidden;margin:28px 0 34px;background:var(--ks-surface,#fff)}
.ks-repo__row{display:flex;flex-direction:column;gap:4px;padding:14px 18px;border-bottom:1px solid var(--ks-line,#e5e7eb)}
.ks-repo__row:nth-child(odd){border-right:1px solid var(--ks-line,#e5e7eb)}
.ks-repo__row:nth-last-child(-n+2){border-bottom:0}
.ks-repo__row span{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ks-muted,#6b7280)}
.ks-repo__row b{font-size:15px;font-weight:600;line-height:1.4;color:var(--ks-ink,#111827)}
.ks-repo__row a{color:var(--ks-accent,#2563eb);text-decoration:none;word-break:break-all}
.ks-repo__row a:hover{text-decoration:underline}
@media (max-width:640px){.ks-repo__meta{grid-template-columns:1fr}.ks-repo__row{border-right:0!important}.ks-repo__row:nth-last-child(-n+2){border-bottom:1px solid var(--ks-line,#e5e7eb)}.ks-repo__row:last-child{border-bottom:0}}

.ks-oss__bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 10px}
.ks-oss__lbl{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ks-muted,#6b7280);margin-right:4px;flex:0 0 auto}
.ks-oss__chip{appearance:none;border:1px solid var(--ks-line,#e5e7eb);background:var(--ks-surface,#fff);color:var(--ks-ink,#111827);border-radius:999px;padding:6px 13px;font-size:13.5px;line-height:1.2;cursor:pointer;transition:.15s}
.ks-oss__chip:hover{border-color:var(--ks-accent,#2563eb)}
.ks-oss__chip.is-on{background:var(--ks-ink,#111827);border-color:var(--ks-ink,#111827);color:#fff}
.ks-oss__count{font-size:13.5px;color:var(--ks-muted,#6b7280);margin:14px 0 20px}
.ks-oss__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(288px,1fr));gap:16px;margin:0 0 40px}
.ks-oss__card{display:flex;flex-direction:column;gap:9px;padding:20px;border:1px solid var(--ks-line,#e5e7eb);border-radius:16px;background:var(--ks-surface,#fff);text-decoration:none;color:inherit;transition:.18s}
.ks-oss__card:hover{border-color:var(--ks-accent,#2563eb);transform:translateY(-2px);box-shadow:0 8px 24px rgba(15,23,42,.07)}
.ks-oss__name{font-size:17.5px;font-weight:700;line-height:1.25;color:var(--ks-ink,#111827)}
.ks-oss__desc{font-size:14.5px;line-height:1.5;color:var(--ks-muted,#6b7280);flex:1}
.ks-oss__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.ks-oss__tag{font-size:12px;padding:3px 9px;border-radius:999px;background:var(--ks-soft,#f3f4f6);color:var(--ks-muted,#4b5563);white-space:nowrap}
.ks-oss__tag--free{background:#e7f6ec;color:#166534}
.ks-oss__tag--copyleft{background:#fef4e2;color:#92400e}
.ks-oss__tag--closed{background:#fdeaea;color:#991b1b}
.ks-oss__empty{padding:34px;text-align:center;color:var(--ks-muted,#6b7280);border:1px dashed var(--ks-line,#e5e7eb);border-radius:16px}
.ks-oss__legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:26px 0 34px}
.ks-oss__leg{padding:14px 16px;border-radius:12px;font-size:14px;line-height:1.5}
.ks-oss__leg b{display:block;margin-bottom:3px}
.ks-oss__leg--free{background:#e7f6ec;color:#14532d}
.ks-oss__leg--copyleft{background:#fef4e2;color:#78350f}
.ks-oss__leg--closed{background:#fdeaea;color:#7f1d1d}


/* ===== Пункт «Открытый код» в навигации ===== */
.ks-nav__left > .ks-nav__oss{ margin-left:22px; }
.ks-nav__oss{ font-weight:600; font-size:15px; text-decoration:none; color:inherit; white-space:nowrap; transition:opacity .15s; }
.ks-nav__oss:hover{ opacity:.62; color:inherit; }
.ks-nav__oss:visited{ color:inherit; }
.ks-nav__oss.is-here{ color:#ea580c; }
@media (max-width:1180px){ .ks-nav__oss{ display:none; } }
.ks-nav__osslink{ display:block; padding:12px 0; font-weight:600; font-size:17px; text-decoration:none; color:inherit; }
/* при добавлении шестого справочника ряд становится плотнее — сжимаем отступы раньше */
@media (min-width:1024px) and (max-width:1439px){
  .ks-nav__left > .ks-nav__oss,
  .ks-nav__left > .ks-nav__crs{ margin-left:14px !important; }
  .ks-nav__oss, .ks-nav__crs, .ks-nav__lp, .ks-nav__lb, .ks-nav__rl, .ks-nav__gl, .ks-nav__fw{ font-size:14.5px !important; }
}


/* Шесть справочников в ряд — сжимаем шаг и кегль на всех широких экранах */
@media (min-width:1024px){
  .ks-nav__left > .ks-nav__oss,
  .ks-nav__left > .ks-nav__crs{ margin-left:13px !important; }
  .ks-nav__oss, .ks-nav__crs, .ks-nav__lp, .ks-nav__lb, .ks-nav__rl, .ks-nav__gl, .ks-nav__fw{ font-size:14px !important; letter-spacing:-.005em; }
  .ks-nav__left > .ks-nav__fw, .ks-nav__left > .ks-nav__gl, .ks-nav__left > .ks-nav__rl, .ks-nav__left > .ks-nav__lb, .ks-nav__left > .ks-nav__lp{ margin-left:13px !important; }
}


/* ===== Дальше по теме ===== */
.ks-next{margin:44px 0 0;padding-top:26px;border-top:1px solid var(--border,rgba(28,25,23,.10))}
.ks-next__t{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--stone,#79716b);margin-bottom:14px}
.ks-next__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.ks-next__i{display:block;padding:15px 17px;border:1px solid var(--border,rgba(28,25,23,.10));border-radius:13px;background:var(--card,#fff);text-decoration:none;color:var(--ink,#1c1917);font-weight:600;font-size:15.5px;line-height:1.35;transition:.18s}
.ks-next__i:hover{border-color:var(--accent,#f97316);transform:translateY(-2px);color:var(--ink,#1c1917)}

/* ===== Отклик читателя ===== */
.ks-fb{margin:30px 0 8px;padding:22px 24px;border:1px solid var(--border,rgba(28,25,23,.10));border-radius:16px;background:var(--accent-wash,#fff1e6)}
.ks-fb__q{font-weight:700;font-size:16.5px;color:var(--ink,#1c1917);margin-bottom:13px}
.ks-fb__btns{display:flex;gap:9px}
.ks-fb__b{appearance:none;border:1px solid var(--border,rgba(28,25,23,.14));background:#fff;color:var(--ink,#1c1917);border-radius:999px;padding:8px 26px;font-size:15px;font-weight:600;cursor:pointer;transition:.15s}
.ks-fb__b:hover{border-color:var(--accent,#f97316)}
.ks-fb__b.is-on{background:var(--ink,#1c1917);border-color:var(--ink,#1c1917);color:#fff}
.ks-fb__more{margin-top:15px}
.ks-fb__lbl{display:block;font-size:14.5px;color:var(--charcoal,#57534d);margin-bottom:8px}
.ks-fb__ta{display:block;width:100%;box-sizing:border-box;border:1px solid var(--border,rgba(28,25,23,.14));border-radius:11px;padding:11px 13px;font:inherit;font-size:15px;line-height:1.5;background:#fff;color:var(--ink,#1c1917);resize:vertical}
.ks-fb__ta:focus{outline:none;border-color:var(--accent,#f97316)}
.ks-fb__hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.ks-fb__send{margin-top:10px;appearance:none;border:0;background:var(--ink,#1c1917);color:#fff;border-radius:999px;padding:9px 24px;font-size:15px;font-weight:600;cursor:pointer;transition:.15s}
.ks-fb__send:hover{background:var(--accent-dark,#ea580c)}
.ks-fb__done{font-size:15.5px;color:var(--charcoal,#57534d)}
@media (max-width:560px){.ks-fb{padding:18px}.ks-fb__b{flex:1;padding:9px 0}}


/* Признак свежести материала */
.ks-fresh{margin:26px 0 0;font-size:13.5px;color:var(--stone,#79716b);display:flex;align-items:center;gap:8px}
.ks-fresh:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent,#f97316);flex:0 0 auto}


/* ===== Блок автора ===== */
.ks-author{display:flex;gap:18px;align-items:flex-start;margin:34px 0 0;padding:22px 24px;border:1px solid var(--border,rgba(28,25,23,.10));border-radius:16px;background:var(--card,#fff)}
.ks-author__mark{flex:0 0 auto;width:52px;height:52px;border-radius:14px;background:var(--ink,#1c1917);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;letter-spacing:.02em}
.ks-author__body{min-width:0}
.ks-author__name{font-weight:700;font-size:17px;color:var(--ink,#1c1917);line-height:1.25}
.ks-author__role{font-size:13.5px;color:var(--accent-dark,#ea580c);margin-top:2px;font-weight:600}
.ks-author__bio{margin:9px 0 0;font-size:14.5px;line-height:1.55;color:var(--charcoal,#57534d)}
.ks-author__links{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px}
.ks-author__links a{font-size:14px;font-weight:600;color:var(--ink,#1c1917);text-decoration:none;border-bottom:1px solid var(--accent,#f97316);padding-bottom:1px}
.ks-author__links a:hover{color:var(--accent-dark,#ea580c)}
@media (max-width:560px){.ks-author{flex-direction:column;gap:12px;padding:18px}}


/* Пункт «Облако» */
.ks-nav__left > .ks-nav__cld{ margin-left:13px; }
.ks-nav__cld{ font-weight:600; font-size:15px; text-decoration:none; color:inherit; white-space:nowrap; transition:opacity .15s; }
.ks-nav__cld:hover{ opacity:.62; color:inherit; }
.ks-nav__cld:visited{ color:inherit; }
.ks-nav__cld.is-here{ color:#ea580c; }
@media (min-width:1024px){ .ks-nav__cld{ font-size:14px !important; letter-spacing:-.005em; } .ks-nav__left > .ks-nav__cld{ margin-left:13px !important; } }
@media (max-width:1180px){ .ks-nav__cld{ display:none; } }
.ks-nav__cldlink{ display:block; padding:12px 0; font-weight:600; font-size:17px; text-decoration:none; color:inherit; }


/* Переключатель языка материала */
.ks-lang{display:flex;align-items:center;gap:10px;margin:0 0 28px;padding:10px 14px;border:1px solid rgba(0,0,0,.09);border-radius:10px;background:rgba(0,0,0,.02);font-size:14px;width:fit-content}
.ks-lang__cur{display:inline-block;padding:2px 8px;border-radius:5px;background:#FF6A00;color:#fff;font-weight:700;font-size:12px;letter-spacing:.06em}
.ks-lang__alt{color:inherit;opacity:.72;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.22);padding-bottom:1px}
.ks-lang__alt:hover{opacity:1;border-bottom-color:#FF6A00;color:#FF6A00}
@media (max-width:600px){.ks-lang{width:100%;justify-content:flex-start}}


/* Подпись автора под статьёй */
.ks-by{display:flex;align-items:center;gap:12px;margin:44px 0 0;padding:16px 0 0;border-top:1px solid rgba(0,0,0,.09);font-size:14px;line-height:1.4}
.ks-by__mark{flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:#101010;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:.04em}
.ks-by__text{display:flex;flex-direction:column;gap:1px;min-width:0}
.ks-by__text b{font-weight:650}
.ks-by__role{opacity:.6;font-size:13px}
.ks-by__link{margin-left:auto;flex:0 0 auto;color:inherit;opacity:.65;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.2);padding-bottom:1px;font-size:13px}
.ks-by__link:hover{opacity:1;color:#FF6A00;border-bottom-color:#FF6A00}
@media (max-width:560px){.ks-by{flex-wrap:wrap}.ks-by__link{margin-left:48px;width:100%}}


/* Главная: блок «Облако» */
.ks-cloudhome__lead{margin:0 0 20px;max-width:640px;opacity:.72;font-size:15px;line-height:1.5}
.ks-cloudhome__lead a{color:inherit;border-bottom:1px solid rgba(0,0,0,.25);text-decoration:none}
.ks-cloudhome__lead a:hover{color:#FF6A00;border-bottom-color:#FF6A00}
.ks-cloudhome{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ks-cloudcard{display:flex;flex-direction:column;gap:8px;padding:18px 18px 20px;border:1px solid rgba(0,0,0,.1);border-radius:12px;background:#101010;color:#fff;text-decoration:none;transition:transform .18s ease,border-color .18s ease}
.ks-cloudcard:hover{transform:translateY(-2px);border-color:#FF6A00}
.ks-cloudcard__t{font-weight:650;font-size:16px;line-height:1.3}
.ks-cloudcard__d{font-size:13px;line-height:1.45;opacity:.6}
@media (max-width:900px){.ks-cloudhome{grid-template-columns:1fr}}

.ks-series{margin:40px 0 0;padding:20px 22px;border:1px solid rgba(0,0,0,.09);border-radius:12px;background:rgba(255,106,0,.04)}
.ks-series__title{margin:0 0 12px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#FF6A00}
.ks-series__list{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.ks-series__list li{position:relative;padding-left:18px;font-size:15px;line-height:1.45}
.ks-series__list li:before{content:'';position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:#FF6A00}
.ks-series__list a{text-decoration:none;border-bottom:1px solid rgba(0,0,0,.18)}
.ks-series__list a:hover{border-bottom-color:#FF6A00}
.ks-series__all{margin:14px 0 0;font-size:14px}
@media(max-width:600px){.ks-series{padding:16px 16px}}

.ks-lib-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0 8px}
.ks-lib-card{display:flex;flex-direction:column;gap:7px;padding:18px 18px 20px;border:1px solid rgba(0,0,0,.1);border-radius:12px;text-decoration:none;background:#fff;transition:border-color .18s,transform .18s,box-shadow .18s}
.ks-lib-card:hover{border-color:#FF6A00;transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.07)}
.ks-lib-card__k{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#FF6A00}
.ks-lib-card__t{font-size:17px;font-weight:700;line-height:1.28;color:#101010}
.ks-lib-card__d{font-size:14px;line-height:1.5;color:rgba(0,0,0,.62)}
.ks-lib-card--all{background:#101010;border-color:#101010}
.ks-lib-card--all .ks-lib-card__t{color:#fff}
.ks-lib-card--all .ks-lib-card__d{color:rgba(255,255,255,.66)}
@media(max-width:900px){.ks-lib-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.ks-lib-grid{grid-template-columns:1fr}}

.ks-shelves{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:1100px;margin:0 auto 34px;padding:0 24px}
.ks-shelf{display:flex;flex-direction:column;gap:4px;padding:13px 15px;border:1px solid rgba(0,0,0,.1);border-radius:10px;text-decoration:none;background:#fff;transition:border-color .18s,background .18s}
.ks-shelf b{font-size:15px;font-weight:700;color:#101010;line-height:1.25}
.ks-shelf em{font-style:normal;font-size:13px;line-height:1.4;color:rgba(0,0,0,.55)}
.ks-shelf:hover{border-color:#FF6A00}
.ks-shelf--cur{background:#101010;border-color:#101010;cursor:default}
.ks-shelf--cur b{color:#fff}
.ks-shelf--cur em{color:rgba(255,255,255,.62)}
@media(max-width:820px){.ks-shelves{grid-template-columns:1fr;gap:8px;margin-bottom:26px}}

.ks-fwbox{margin:40px 0 0;padding:20px 22px;border:1px solid rgba(0,0,0,.1);border-radius:12px;background:#fafafa}
.ks-fwbox__title{margin:0 0 6px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#101010}
.ks-fwbox__lead{margin:0 0 14px;font-size:14px;line-height:1.5;color:rgba(0,0,0,.6)}
.ks-fwbox__list{margin:0;padding:0;list-style:none;display:grid;gap:11px}
.ks-fwbox__list li{position:relative;padding-left:20px;font-size:15px;line-height:1.4}
.ks-fwbox__list li:before{content:'';position:absolute;left:0;top:.52em;width:9px;height:9px;border:2px solid #FF6A00;border-radius:2px}
.ks-fwbox__list a{font-weight:600;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.2)}
.ks-fwbox__list a:hover{border-bottom-color:#FF6A00}
.ks-fwbox__list span{display:block;margin-top:2px;font-size:13.5px;line-height:1.45;color:rgba(0,0,0,.58)}
@media(max-width:600px){.ks-fwbox{padding:16px}}

/* ── Шапка: группы Справочник / Библиотека / Обучение ── */
.ks-dd{position:relative;display:inline-flex;align-items:center}
.ks-dd__btn{font-size:15px;font-weight:600;color:rgb(87,83,77);text-decoration:none;display:inline-flex;align-items:center;gap:5px;padding:8px 0}
.ks-dd__btn::after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.55}
.ks-dd__btn:hover,.ks-dd__btn.is-current{color:#101010}
.ks-dd__btn.is-current{box-shadow:inset 0 -2px 0 #FF6A00}
.ks-dd__panel{position:absolute;top:calc(100% + 6px);left:-14px;min-width:300px;padding:8px;background:rgb(250,249,247);border:1px solid rgba(28,25,23,.12);border-radius:14px;box-shadow:rgba(28,25,23,.1) 0 18px 40px;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility .15s;z-index:60}
.ks-dd::before{content:'';position:absolute;left:0;right:0;top:100%;height:10px}
.ks-dd:hover .ks-dd__panel,.ks-dd:focus-within .ks-dd__panel{opacity:1;visibility:visible;transform:none}
.ks-dd__item{display:block;padding:10px 12px;border-radius:9px;text-decoration:none}
.ks-dd__item b{display:block;font-size:14.5px;font-weight:600;color:#101010;line-height:1.3}
.ks-dd__item span{display:block;margin-top:2px;font-size:13px;line-height:1.4;color:rgba(28,25,23,.58)}
.ks-dd__item:hover{background:rgba(255,106,0,.07)}
.ks-dd__item.is-current b{color:#FF6A00}
.ks-mhead{margin:18px 0 6px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#FF6A00}
.ks-mlink{display:block;padding:8px 0;font-weight:600;color:inherit;text-decoration:none}
@media (max-width:860px){.ks-dd{display:none}}
@media (max-width:1180px) and (min-width:861px){.ks-nav__left .ks-dd,.ks-nav__left .ks-os,.ks-nav__left .ks-nav__bloglink{margin-left:14px}.ks-dd__btn{font-size:14px}}

.ks-nav__left .ks-dd{margin-left:22px}

/* ks-footer 6 колонок: бренд · Темы · Системы · Справочник · Библиотека · Контакты */
@media (min-width:1100px){
  .footer__inner, .ks-footer__inner{ grid-template-columns:1.4fr 1fr .9fr 1fr .9fr .9fr !important; gap:22px !important; }
}
.ks-footer__col a, .footer__col a{ overflow-wrap:anywhere; }

/* ks-footer mobile 2col: бренд во всю ширину, колонки ссылок парами */
@media (max-width:760px){
  .footer__inner, .ks-footer__inner{ grid-template-columns:1fr 1fr !important; gap:26px 18px !important; }
  .ks-footer__brand, .footer__inner > div:first-child{ grid-column:1 / -1; }
}

/* ks-hx главная */
.ks-hx__lead{max-width:640px;color:#57534e;font-size:15.5px;line-height:1.55;margin:-6px 0 20px}
.ks-hx-grid{display:grid;gap:14px}
.ks-hx-grid--6{grid-template-columns:repeat(3,1fr)}
.ks-hx-grid--4{grid-template-columns:repeat(4,1fr)}
.ks-hx-card{display:flex;flex-direction:column;gap:6px;padding:20px 20px 18px;background:#fff;border:1px solid #ece8e3;border-radius:16px;text-decoration:none!important;color:#1c1917;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;position:relative}
.ks-hx-card:hover{transform:translateY(-2px);border-color:#f7c8a4;box-shadow:0 10px 26px -14px rgba(234,88,12,.35)}
.ks-hx-card__ico{width:38px;height:38px;border-radius:10px;background:#fff4ec;color:#ea580c;display:inline-flex;align-items:center;justify-content:center;margin-bottom:6px}
.ks-hx-card__t{font-weight:650;font-size:16px}
.ks-hx-card__d{color:#57534e;font-size:13.5px;line-height:1.45}
.ks-hx-card__m{margin-top:auto;padding-top:8px;font:500 11.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#a8a29e;text-transform:uppercase;letter-spacing:.04em}
.ks-hx-card::after{content:"→";position:absolute;right:18px;top:20px;color:#d6d3d1;transition:color .18s,transform .18s}
.ks-hx-card:hover::after{color:#ea580c;transform:translateX(3px)}
.ks-hx-tech__grid{display:grid;grid-template-columns:1.15fr 1fr;gap:16px}
.ks-hx-panel{display:flex;flex-direction:column;color:#1c1917;background:#fff;border:1px solid #ece8e3;border-radius:20px;padding:24px}
.ks-hx-panel--dark{background:radial-gradient(120% 90% at 100% 0%,rgba(249,115,22,.28),rgba(249,115,22,0) 55%),#141210;border-color:#141210;color:#faf9f7}
.ks-hx-panel__top{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}
.ks-hx-panel__ico{flex:0 0 auto;width:44px;height:44px;border-radius:12px;background:#fff4ec;color:#ea580c;display:inline-flex;align-items:center;justify-content:center}
.ks-hx-panel--dark .ks-hx-panel__ico{background:rgba(249,115,22,.16);color:#fb923c}
.ks-hx-panel__eb{font:500 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;color:#fb923c;margin-bottom:6px}
.ks-hx-panel__t{color:inherit;font-weight:700;font-size:20px;letter-spacing:-.01em;margin-bottom:6px}
.ks-hx-panel__d{font-size:14.5px;line-height:1.55;color:#57534e}
.ks-hx-panel--dark .ks-hx-panel__d{color:#d6d3d1}
.ks-hx-li{list-style:none;margin:4px 0 0;padding:0}
.ks-hx-li li{border-top:1px solid #f0ece7}
.ks-hx-panel--dark .ks-hx-li li{border-top-color:rgba(255,255,255,.09)}
.ks-hx-li a{display:flex;justify-content:space-between;gap:14px;padding:11px 2px;text-decoration:none!important;color:inherit}
.ks-hx-li__t{color:inherit;font-size:14.5px;line-height:1.4;font-weight:520}
.ks-hx-li a:hover .ks-hx-li__t{color:#ea580c}
.ks-hx-panel--dark .ks-hx-li a:hover .ks-hx-li__t{color:#fdba74}
.ks-hx-li__d{flex:0 0 auto;font:500 11.5px/1.9 ui-monospace,SFMono-Regular,Menlo,monospace;color:#a8a29e;white-space:nowrap}
.ks-hx-panel__foot{margin-top:auto;padding-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.ks-hx-btn{display:inline-flex;align-items:center;padding:10px 16px;border-radius:99px;background:#1c1917;color:#fff!important;font-size:14px;font-weight:600;text-decoration:none!important;transition:background .18s}
.ks-hx-btn:hover{background:#ea580c}
.ks-hx-btn--light{background:#f97316}
.ks-hx-btn--light:hover{background:#fb923c}
.ks-hx-link{color:#fdba74!important;font-size:14px;font-weight:600;text-decoration:none!important;border-bottom:1px solid rgba(253,186,116,.4)}
.ks-hx-link:hover{border-bottom-color:#fdba74}
@media (max-width:1000px){.ks-hx-grid--4{grid-template-columns:repeat(2,1fr)}.ks-hx-tech__grid{grid-template-columns:1fr}}
@media (max-width:760px){.ks-hx-grid--6{grid-template-columns:repeat(2,1fr)}.ks-hx-card{padding:16px}.ks-hx-card__d{font-size:13px}.ks-hx-panel{padding:20px}.ks-hx-li__d{display:none}}
@media (max-width:420px){.ks-hx-grid--6,.ks-hx-grid--4{grid-template-columns:1fr 1fr;gap:10px}.ks-hx-card::after{display:none}}

/* лента на главной: форматы не показываем как фильтры тем */
.filter-chip[data-filter="knigi"],.filter-chip[data-filter="biblioteka"],.filter-chip[data-filter="cloud-en"],.filter-chip[data-filter="tech-en"]{display:none!important}

/* ks-oscards 6 */
@media (min-width:900px){.ks-oscards{grid-template-columns:repeat(3,1fr)!important}}

/* fwset founder */
.ks-fwsets__grid > .ks-fwset:first-child{grid-column:1/-1;background:#141210;color:#faf9f7;border-color:#141210}
.ks-fwsets__grid > .ks-fwset:first-child .ks-fwset__p{color:#d6d3d1}
.ks-fwsets__grid > .ks-fwset:first-child .ks-fwset__list{display:flex;flex-wrap:wrap;gap:8px 18px}
.ks-fwsets__grid > .ks-fwset:first-child a{color:#fdba74!important}

/* ks-sc stage check */
.ks-sc{max-width:820px!important;margin:28px 0 36px!important;padding:26px;border-radius:20px;background:#fff;border:1px solid #ece8e3;color:#1c1917}
.ks-sc__kicker{font:500 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;color:#ea580c;margin-bottom:8px}
.ks-sc__title{font-size:22px;font-weight:700;letter-spacing:-.01em;margin-bottom:6px}
.ks-sc__lead{color:#57534e;font-size:14.5px;line-height:1.55;margin:0 0 16px}
.ks-sc__list{list-style:none;margin:0;padding:0;counter-reset:q}
.ks-sc__q{counter-increment:q;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid #f0ece7}
.ks-sc__t{font-size:14.5px;line-height:1.45}
.ks-sc__t::before{content:counter(q,decimal-leading-zero);font:500 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#a8a29e;margin-right:10px}
.ks-sc__opts{flex:0 0 auto;display:inline-flex;gap:6px}
.ks-sc__opts button{border:1px solid #e7e2dc;background:#faf9f7;color:#44403c;border-radius:99px;padding:6px 12px;font-size:13px;cursor:pointer;transition:all .15s}
.ks-sc__opts button:hover{border-color:#f7c8a4}
.ks-sc__opts button.is-on{background:#1c1917;border-color:#1c1917;color:#fff}
.ks-sc__q.is-done .ks-sc__t{color:#78716c}
.ks-sc__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid #f0ece7}
.ks-sc__prog{font:500 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#a8a29e}
.ks-sc__go{border:0;border-radius:99px;background:#f97316;color:#fff;font-weight:600;font-size:14px;padding:11px 18px;cursor:pointer}
.ks-sc__go:disabled{background:#e7e2dc;color:#a8a29e;cursor:not-allowed}
.ks-sc__res{margin-top:20px;display:grid;gap:14px}
.ks-sc__stage{background:radial-gradient(120% 90% at 100% 0%,rgba(249,115,22,.28),rgba(249,115,22,0) 55%),#141210;color:#faf9f7;border-radius:16px;padding:22px}
.ks-sc__num{font:500 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;color:#fb923c}
.ks-sc__sn{font-size:24px;font-weight:700;margin:8px 0 6px}
.ks-sc__stage p{color:#d6d3d1;font-size:14.5px;line-height:1.55;margin:0 0 14px}
.ks-sc__meter{height:6px;border-radius:9px;background:rgba(255,255,255,.12);overflow:hidden}
.ks-sc__meter i{display:block;height:100%;background:#f97316;border-radius:9px}
.ks-sc__pct{display:block;margin-top:8px;font-size:12.5px;color:#a8a29e}
.ks-sc__next,.ks-sc__warn{border:1px solid #ece8e3;border-radius:16px;padding:18px 20px;background:#faf9f7}
.ks-sc__warn{background:#fff7ed;border-color:#fed7aa}
.ks-sc__nh{font-weight:650;margin-bottom:8px}
.ks-sc__next ol,.ks-sc__warn ul{margin:0;padding-left:20px;line-height:1.7;font-size:14.5px}
.ks-sc__foot{font-size:13.5px;color:#78716c;margin:0}
@media (max-width:640px){.ks-sc{padding:18px}.ks-sc__q{flex-direction:column;align-items:flex-start;gap:8px}.ks-sc__bar{flex-direction:column;align-items:stretch}.ks-sc__go{width:100%}}

.ks-tools2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ks-tools2 .ks-tool-card{margin:0!important;height:100%}
@media (max-width:760px){.ks-tools2{grid-template-columns:1fr}}

/* nav systems chevron */
.ks-nav .ks-os > .ks-nav__os{display:flex;align-items:center;gap:6px;padding:8px 0}
.ks-nav .ks-os > .ks-nav__os::after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.55}

/* dd ref wide */
.ks-dd--ref .ks-dd__panel{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(6,auto);grid-auto-flow:column;column-gap:6px;width:620px;max-width:calc(100vw - 40px)}

/* knowledge layer */
.kl-sub{font-size:18px;color:#57534e;margin:4px 0 18px}
.kl-counts{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0 0 26px;max-width:1120px}
.kl-count{background:#fff;border:1px solid #ece8e3;border-radius:14px;padding:14px 16px}
.kl-count b{display:block;font-size:24px;font-weight:700;letter-spacing:-.02em;color:#1c1917}
.kl-count span{font-size:13px;color:#78716c}
.kl-demo{max-width:860px;margin:10px 0 34px;padding:22px 24px;border-radius:20px;background:radial-gradient(120% 90% at 100% 0%,rgba(249,115,22,.22),rgba(249,115,22,0) 55%),#141210;color:#faf9f7}
.kl-demo__h{font-size:20px;font-weight:700;margin-bottom:4px}
.kl-demo__p{color:#d6d3d1;font-size:14.5px;margin:0 0 14px}
.kl-demo__f{display:flex;gap:8px}
.kl-demo__f input{flex:1;min-width:0;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;border-radius:99px;padding:11px 16px;font-size:15px}
.kl-demo__f input::placeholder{color:#a8a29e}
.kl-demo__ex{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0}
.kl-demo__ex button{border:1px solid rgba(255,255,255,.16);background:transparent;color:#e7e5e4;border-radius:99px;padding:5px 11px;font-size:12.5px;cursor:pointer}
.kl-demo__ex button:hover{border-color:#fb923c;color:#fdba74}
.kl-demo__res{margin-top:14px;display:grid;gap:8px}
.kl-hit{display:block;background:#fff;color:#1c1917!important;border-radius:12px;padding:12px 14px;text-decoration:none!important}
.kl-hit:hover{box-shadow:0 0 0 2px #f97316}
.kl-hit__m{display:block;font:500 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;color:#ea580c;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}
.kl-hit b{display:block;font-size:15px;margin-bottom:3px}
.kl-hit__e{display:block;font-size:13.5px;color:#57534e;line-height:1.45}
.kl-demo__wait,.kl-demo__api{color:#d6d3d1;font-size:13.5px;margin:4px 0 0}
.kl-demo__api a{color:#fdba74!important}
.kl-connect{max-width:860px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;border:1px solid #ece8e3;background:#fff;border-radius:16px;padding:16px 18px;margin:12px 0 22px}
.kl-connect__url span{display:block;font:500 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;letter-spacing:.06em;color:#a8a29e;margin-bottom:6px}
.kl-connect__url code{font-size:16px;font-weight:600;color:#1c1917;background:none;padding:0}
.kl-connect__btns{display:flex;gap:8px;flex-wrap:wrap}
.kl-btn{display:inline-flex;align-items:center;border:0;border-radius:99px;background:#f97316;color:#fff!important;font-weight:600;font-size:14px;padding:10px 16px;cursor:pointer;text-decoration:none!important}
.kl-btn:hover{background:#ea580c}
.kl-btn--ghost{background:#1c1917}
.kl-btn--ghost:hover{background:#44403c}
.kl-btn.is-done{background:#16a34a}
@media (max-width:640px){.kl-demo{padding:18px}.kl-demo__f{flex-direction:column}.kl-connect{flex-direction:column;align-items:flex-start}}

/* knowledge align */
body.page-id-2747 .entry-content > *{margin-left:0!important;margin-right:auto!important}
body.page-id-2747 .entry-content > h3{max-width:760px}
body.page-id-2747 .entry-content pre{max-width:760px;background:#141210;color:#f5f5f4;border-radius:14px;padding:16px 18px;overflow:auto;font-size:13.5px;line-height:1.55}
body.page-id-2747 .entry-content pre code{background:none;color:inherit;padding:0}
body.page-id-2747 .entry-content p code, body.page-id-2747 .entry-content td code{background:#f0ece7;border-radius:6px;padding:1px 6px;font-size:.92em}

/* mega themes unify: «Темы» выглядит как остальные пункты шапки */
#megaTrigger > button{font-size:15px!important;font-weight:600!important;color:rgb(87,83,77)!important;padding:8px 0!important;background:none!important;border:0!important;box-shadow:none!important;outline:0;display:inline-flex;align-items:center;gap:5px}
#megaTrigger > button::after{content:''!important;width:6px!important;height:6px!important;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.55;background:none!important;font-size:0}
#megaTrigger.is-open > button, #megaTrigger:hover > button{color:#1c1917!important}
#megaTrigger > button:focus-visible{outline:2px solid #f97316;outline-offset:4px;border-radius:6px}
.ks-mega__desc{margin:0 0 10px;padding:0 0 10px;border-bottom:1px solid #f0ece7;color:#78716c;font-size:13.5px;line-height:1.45}
.ks-mega__sub a{display:flex!important;justify-content:space-between;align-items:center;gap:10px}
.ks-mega__n{font:500 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#a8a29e;background:#f5f3f0;border-radius:99px;padding:3px 7px}
.ks-mega__sub a.all-link{justify-content:flex-start}

/* mega trigger gap */
@media (min-width:901px){.ks-nav__left > #megaTrigger{margin-left:22px}}


/* ===== skills check ===== */
#ksSkillsCheck{ margin:0 0 40px; }
.ksc-card{ background:var(--card); border:1px solid var(--border); border-radius:18px; padding:28px; }
.ksc-badge{ display:inline-flex; font-family:var(--mono); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--accent-dark); background:var(--accent-wash); border-radius:9999px; padding:5px 10px; margin-bottom:14px; }
.ksc-h{ font-size:24px; line-height:1.25; color:var(--ink); margin:0 0 10px; }
.ksc-h3{ font-size:17px; color:var(--ink); margin:28px 0 12px; }
.ksc-q{ font-size:20px; line-height:1.35; color:var(--ink); margin:6px 0 18px; }
.ksc-p{ font-size:15px; line-height:1.6; margin:0 0 16px; }
.ksc-note{ font-size:14px; background:var(--canvas); border-radius:10px; padding:10px 14px; }
.ksc-small{ font-size:12.5px; color:var(--stone); margin:14px 0 0; }
.ksc-meta{ font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:.04em; color:var(--stone); }
.ksc-fork{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:18px 0 4px; }
.ksc-opts{ display:grid; gap:10px; }
.ksc-opt{ display:block; width:100%; text-align:left; background:var(--card); border:1px solid var(--border); border-radius:12px; padding:14px 16px; font:inherit; font-size:15px; line-height:1.45; color:var(--ink); cursor:pointer; transition:border-color .15s, background .15s; }
.ksc-opt:hover{ border-color:var(--accent); background:var(--accent-wash); }
.ksc-opt--big b{ display:block; font-size:16px; margin-bottom:4px; }
.ksc-opt--big span{ font-size:13.5px; color:var(--charcoal); }
.ksc-label{ font-size:13px; font-weight:600; color:var(--ink); margin:16px 0 8px; }
.ksc-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.ksc-chip{ border:1px solid var(--border); background:var(--card); border-radius:9999px; padding:8px 14px; font:inherit; font-size:13.5px; color:var(--ink); cursor:pointer; }
.ksc-chip.is-on{ background:var(--ink); color:#fff; border-color:var(--ink); }
.ksc-btn{ display:inline-flex; align-items:center; justify-content:center; margin-top:22px; background:var(--accent); color:#fff; border:0; border-radius:10px; padding:12px 20px; font:inherit; font-weight:600; font-size:15px; cursor:pointer; }
.ksc-btn:disabled{ opacity:.4; cursor:default; }
.ksc-btn--ghost{ background:transparent; color:var(--ink); border:1px solid var(--border); }
.ksc-actions{ display:flex; gap:10px; flex-wrap:wrap; }
.ksc-progress{ height:4px; background:var(--border-soft); border-radius:4px; overflow:hidden; margin-bottom:18px; }
.ksc-progress i{ display:block; height:100%; background:var(--accent); transition:width .3s; }
.ksc-total{ display:flex; align-items:center; gap:18px; margin:4px 0 6px; }
.ksc-total__v{ font-size:48px; font-weight:700; color:var(--ink); line-height:1; }
.ksc-total__v small{ font-size:18px; color:var(--stone); font-weight:500; }
.ksc-total__l{ font-size:18px; font-weight:600; color:var(--accent-dark); }
.ksc-bar{ margin:0 0 12px; }
.ksc-bar__top{ display:flex; justify-content:space-between; gap:10px; font-size:14px; color:var(--ink); margin-bottom:5px; }
.ksc-bar__top em{ font-style:normal; font-size:12px; margin-left:4px; }
.ksc-bar__top em.up{ color:#15803d; } .ksc-bar__top em.down{ color:#b91c1c; }
.ksc-bar__track{ height:8px; background:var(--border-soft); border-radius:8px; overflow:hidden; }
.ksc-bar__track i{ display:block; height:100%; background:var(--accent); border-radius:8px; }
.ksc-route{ list-style:none; padding:0; margin:0; display:grid; gap:12px; }
.ksc-step{ border:1px solid var(--border); border-radius:12px; padding:14px 16px; }
.ksc-step__n{ font-family:var(--mono); font-size:10.5px; text-transform:uppercase; color:var(--accent-dark); }
.ksc-step__t{ font-size:16px; font-weight:600; color:var(--ink); margin:2px 0 8px; }
.ksc-step__t span{ font-weight:400; color:var(--stone); font-size:14px; }
.ksc-step ul{ margin:0 0 8px; padding-left:18px; font-size:14.5px; line-height:1.6; }
.ksc-step a, .ksc-cta a, .ksc-small a, .ksc-rev a{ color:var(--accent-dark); text-decoration:underline; text-underline-offset:2px; }
.ksc-step__p{ font-size:13.5px; color:var(--charcoal); }
.ksc-cta{ margin-top:16px; background:var(--accent-wash); border-radius:12px; padding:14px 16px; font-size:14.5px; color:var(--ink); }
.ksc-rev{ border-top:1px solid var(--border-soft); padding:10px 0; font-size:14.5px; }
.ksc-rev summary{ cursor:pointer; color:var(--ink); }
.ksc-rev.is-ok summary{ color:#15803d; }
.ksc-rev p{ margin:8px 0 0; line-height:1.55; }
.ksc-why{ color:var(--charcoal); }
@media (max-width:640px){ .ksc-card{ padding:20px; } .ksc-fork{ grid-template-columns:1fr; } .ksc-q{ font-size:18px; } }

@media (min-width:901px){.ks-tools2.ks-tools3{grid-template-columns:repeat(3,1fr)}}

/* skills lab v2 */
.ksc-tracks{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin:18px 0 8px; }
.ksc-track{ text-align:left; background:var(--card); border:1px solid var(--border); border-radius:14px; padding:16px; font:inherit; cursor:pointer; display:flex; flex-direction:column; gap:6px; transition:border-color .15s, background .15s; }
.ksc-track:hover{ border-color:var(--accent); background:var(--accent-wash); }
.ksc-track b{ font-size:16px; color:var(--ink); }
.ksc-track span{ font-size:13.5px; line-height:1.45; color:var(--charcoal); }
.ksc-track em{ font-style:normal; font-size:12px; color:var(--stone); }
.ksc-track i{ font-style:normal; font-size:12px; color:var(--accent-dark); font-weight:600; }
.ksc-more{ display:flex; flex-direction:column; gap:6px; margin-top:14px; font-size:14px; }
.ksc-more a{ color:var(--accent-dark); }
.ksc-check{ display:flex; gap:10px; align-items:flex-start; font-size:13.5px; line-height:1.5; color:var(--charcoal); margin:14px 0 0; cursor:pointer; }
.ksc-check input{ margin-top:3px; accent-color:var(--accent); }
.ksc-opt-l{ font-weight:400; color:var(--stone); }
.ksc-ta{ width:100%; border:1px solid var(--border); border-radius:12px; padding:14px; font:inherit; font-size:15px; line-height:1.55; color:var(--ink); resize:vertical; min-height:160px; }
.ksc-ta:focus{ outline:none; border-color:var(--accent); }
.ksc-sum{ background:var(--canvas); border-radius:12px; padding:4px 16px 2px; margin-top:18px; }
.ksc-list{ margin:0 0 6px; padding-left:20px; font-size:14.5px; line-height:1.6; }
.ksc-list li{ margin:0 0 6px; }
.ksc-list a{ color:var(--accent-dark); text-decoration:underline; text-underline-offset:2px; }
.ksc-list--plus li::marker{ color:#15803d; } .ksc-list--minus li::marker{ color:var(--accent-dark); }
.ksc-list li.is-ok b{ color:#15803d; } .ksc-list li.is-part b{ color:#b45309; } .ksc-list li.is-miss b{ color:#b91c1c; }
.ksc-bar--case .ksc-bar__track i{ background:var(--ink); }
.ksc-rate{ margin:22px 0 4px; padding:12px 14px; border:1px dashed var(--border); border-radius:12px; font-size:14px; display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.ksc-rate button{ border:1px solid var(--border); background:var(--card); border-radius:9999px; padding:6px 12px; font:inherit; font-size:13px; cursor:pointer; }
.ksc-rate button:hover{ border-color:var(--accent); }
@media (max-width:640px){ .ksc-tracks{ grid-template-columns:1fr; } }

.wp-block-post-content > #ksSkillsCheck{max-width:820px!important;width:100%;}

/* skills lab v3 */
.ksc-due{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; background:var(--accent-wash); border-radius:12px; padding:12px 14px; margin:0 0 16px; font-size:14px; color:var(--ink); }
.ksc-due span{ flex:1 1 260px; color:var(--charcoal); }
.ksc-btn--sm{ margin-top:0; padding:8px 14px; font-size:13.5px; }
.ksc-why2{ font-size:13px; color:var(--accent-dark); margin:-4px 0 8px; }
.ksc-tag{ font-size:11.5px; color:var(--stone); white-space:nowrap; }

/* research hub */
.wp-block-post-content > #ksResearch{ max-width:900px!important; width:100%; }
.ksr{ background:var(--card); border:1px solid var(--border); border-radius:18px; padding:24px; margin:0 0 40px; }
.ksr-stats{ font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:.04em; color:var(--stone); margin-bottom:14px; }
.ksr-tabs{ display:flex; flex-wrap:wrap; gap:6px; border-bottom:1px solid var(--border-soft); padding-bottom:12px; margin-bottom:16px; }
.ksr-tab{ border:0; background:transparent; font:inherit; font-size:14.5px; font-weight:600; color:var(--charcoal); padding:8px 12px; border-radius:9px; cursor:pointer; }
.ksr-tab.is-on{ background:var(--ink); color:#fff; }
.ksr-search{ display:flex; gap:8px; margin:4px 0 12px; }
.ksr-search input{ flex:1; border:1px solid var(--border); border-radius:10px; padding:12px 14px; font:inherit; font-size:15px; color:var(--ink); }
.ksr-search input:focus{ outline:none; border-color:var(--accent); }
.ksr-btn{ background:var(--accent); color:#fff; border:0; border-radius:10px; padding:0 18px; font:inherit; font-weight:600; cursor:pointer; }
.ksr-label2{ font-size:12.5px; font-weight:600; color:var(--ink); margin:10px 0 6px; }
.ksr-chips{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:6px; }
.ksr-chip{ border:1px solid var(--border); background:var(--card); border-radius:9999px; padding:6px 12px; font:inherit; font-size:13px; color:var(--ink); cursor:pointer; }
.ksr-chip.is-on{ background:var(--accent-wash); border-color:var(--accent); color:var(--accent-dark); }
.ksr-p{ font-size:15px; line-height:1.6; margin:8px 0 12px; }
.ksr-small{ font-size:12.5px; color:var(--stone); margin:12px 0 8px; }
.ksr-small a{ color:var(--accent-dark); }
.ksr-card{ border:1px solid var(--border); border-radius:14px; padding:14px 16px; margin:10px 0; }
.ksr-card__top{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:6px; }
.ksr-label{ font-family:var(--mono); font-size:10.5px; font-weight:700; text-transform:uppercase; color:var(--accent-dark); background:var(--accent-wash); border-radius:9999px; padding:3px 8px; }
.ksr-b{ font-size:11px; color:var(--stone); border:1px solid var(--border); border-radius:9999px; padding:2px 8px; }
.ksr-b--ok{ color:#15803d; border-color:#bbf7d0; background:#f0fdf4; }
.ksr-card__t{ font-size:16.5px; line-height:1.35; margin:0 0 4px; }
.ksr-card__t a{ color:var(--ink); }
.ksr-card__t a:hover{ color:var(--accent-dark); }
.ksr-card__m{ font-size:12.5px; color:var(--stone); }
.ksr-card__x{ font-size:14px; line-height:1.55; margin:8px 0 0; color:var(--charcoal); }
.ksr-card__a{ font-size:14px; line-height:1.55; margin:6px 0 0; color:var(--ink); }
.ksr-why{ font-size:12px; color:var(--stone); margin-top:8px; }
.ksr-why summary{ cursor:pointer; }
.ksr-tasks{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:6px 0 16px; }
.ksr-taskbtn{ text-align:left; border:1px solid var(--border); background:var(--card); border-radius:12px; padding:12px; font:inherit; font-size:14px; font-weight:600; color:var(--ink); cursor:pointer; }
.ksr-taskbtn:hover, .ksr-taskbtn.is-on{ border-color:var(--accent); background:var(--accent-wash); }
.ksr-task{ background:var(--canvas); border-radius:14px; padding:16px 18px; margin:6px 0 10px; }
.ksr-task h3{ margin:0 0 10px; font-size:18px; color:var(--ink); }
.ksr-task h4{ margin:8px 0 6px; font-size:14px; color:var(--ink); }
.ksr-task__g{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.ksr-task ul, .ksr-task ol{ margin:0; padding-left:18px; font-size:14px; line-height:1.55; }
.ksr-task a{ color:var(--accent-dark); }
.ksr-task__l{ font-size:14px; margin:12px 0 0; }
.ksr-h3{ font-size:16px; color:var(--ink); margin:18px 0 4px; }
.ksr-catalog table td, .ksr-catalog table th{ font-size:13.5px; }
@media (max-width:760px){ .ksr{ padding:16px; } .ksr-tasks{ grid-template-columns:1fr 1fr; } .ksr-task__g{ grid-template-columns:1fr; } }

.ksr-card .ksr-card__t{ margin-top:2px!important; }

.ksr-orig{ font-size:12px; color:var(--stone); margin:-2px 0 4px; }

/* ===== PAIN FINDER (frameworks) ===== */
.ks-pain,.ks-page-wrap.is-wide .ks-pain{max-width:none!important;width:auto!important;margin:36px 0 8px}
.ks-pain__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;align-items:start}
.ks-pain__area{border:1px solid rgba(28,25,23,.10);border-radius:16px;background:#fff;transition:border-color .15s ease}
.ks-pain__area[open]{border-color:rgba(225,98,47,.45)}
.ks-pain__area summary{list-style:none;cursor:pointer;padding:18px 22px;display:flex;flex-direction:column;gap:4px;position:relative}
.ks-pain__area summary::-webkit-details-marker{display:none}
.ks-pain__area summary::after{content:"+";position:absolute;right:20px;top:16px;font-size:1.3rem;color:var(--accent,#E1622F);font-weight:600}
.ks-pain__area[open] summary::after{content:"–"}
.ks-pain__t{font-weight:700;font-size:1.02rem;color:var(--ink,#1c1917);padding-right:24px}
.ks-pain__d{font-size:.86rem;color:var(--muted,#6b6560)}
.ks-pain__list{list-style:none!important;margin:0!important;padding:0 22px 16px!important}
.ks-pain__list li{display:flex;flex-direction:column;gap:3px;padding:11px 0;border-top:1px solid rgba(28,25,23,.07);margin:0!important}
.ks-pain__list li::before{display:none!important}
.ks-pain__q{font-size:.92rem;font-weight:600;color:var(--ink,#1c1917);line-height:1.4}
.ks-pain__a{font-size:.88rem;line-height:1.5}
.ks-pain__a>a{font-weight:600;color:var(--accent,#E1622F);text-decoration:none}
.ks-pain__alt{color:var(--muted,#6b6560)}
.ks-pain__alt a{color:inherit;text-decoration:underline;text-decoration-color:rgba(28,25,23,.25)}
.ks-pain__a a:hover{text-decoration:underline}

.ks-fwsets__grid > .ks-fwset:first-child .ks-fwset__h{color:#faf9f7!important}

/* research collections + links */
.ksr-colltabs{margin-bottom:6px}
.ksr-n{display:inline-block;min-width:18px;padding:0 6px;margin-left:4px;border-radius:9px;background:rgba(28,25,23,.08);font-size:.75em;line-height:1.6}
.ksr-chip.is-on .ksr-n{background:rgba(255,255,255,.25)}
.ksr-colld{margin:8px 0 14px}
.ksr-links{display:flex;gap:16px;flex-wrap:wrap;margin:6px 0 0;font-size:.88rem}
.ksr-links a{font-weight:600;color:var(--accent,#E1622F);text-decoration:none}
.ksr-links a:hover{text-decoration:underline}

/* ===== DOC CHECK ===== */
.wp-block-post-content > #ksDocCheck{max-width:860px!important}
.ksd{display:flex;flex-direction:column;gap:16px;margin:8px 0 24px}
.ksd-steps{display:flex;gap:6px;list-style:none!important;margin:0!important;padding:0!important;flex-wrap:wrap;counter-reset:s}
.ksd-steps li{flex:1;min-width:140px;margin:0!important;padding:8px 12px;border-radius:10px;background:rgba(28,25,23,.05);font-size:.8rem;color:var(--muted,#6b6560);counter-increment:s}
.ksd-steps li::before{content:counter(s) ". ";font-weight:700}
.ksd-steps li.is-done{background:rgba(225,98,47,.12);color:var(--ink,#1c1917)}
.ksd-steps li.is-cur{background:var(--accent,#E1622F);color:#fff}
.ksd-box{border:1px solid rgba(28,25,23,.10);border-radius:16px;background:#fff;padding:20px 22px}
.ksd-lbl{margin:0 0 12px;font-weight:700;font-size:.95rem}
.ksd-profs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}
.ksd-prof{text-align:left;display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid rgba(28,25,23,.12);border-radius:12px;background:#fff;cursor:pointer;font:inherit;color:inherit}
.ksd-prof span{font-size:.8rem;color:var(--muted,#6b6560);line-height:1.4}
.ksd-prof:hover{border-color:rgba(28,25,23,.3)}
.ksd-prof.is-on{border-color:var(--accent,#E1622F);box-shadow:0 0 0 1px var(--accent,#E1622F) inset;background:rgba(225,98,47,.05)}
.ksd-drop{display:flex;flex-direction:column;align-items:center;gap:4px;padding:26px 16px;border:1.5px dashed rgba(28,25,23,.25);border-radius:14px;cursor:pointer;text-align:center;transition:background .15s}
.ksd-drop:hover,.ksd-drop.is-over{background:rgba(225,98,47,.06);border-color:var(--accent,#E1622F)}
.ksd-drop span{font-weight:600}.ksd-drop small{color:var(--muted,#6b6560)}
.ksd-or{text-align:center;margin:12px 0 8px;font-size:.82rem;color:var(--muted,#6b6560)}
.ksd textarea{width:100%;box-sizing:border-box;border:1px solid rgba(28,25,23,.15);border-radius:12px;padding:12px 14px;font:inherit;font-size:.92rem;resize:vertical;background:#fff}
.ksd-ml{display:flex;gap:8px;align-items:center;margin:12px 0;font-size:.85rem;color:var(--muted,#6b6560)}
.ksd-go{display:inline-block;border:0;border-radius:999px;background:var(--accent,#E1622F);color:#fff;font:inherit;font-weight:700;padding:12px 26px;cursor:pointer}
.ksd-go:hover{filter:brightness(.95)}.ksd-go--sm{padding:9px 18px;font-size:.9rem;margin-top:8px}
.ksd-small{font-size:.82rem;color:var(--muted,#6b6560);margin:6px 0}
.ksd-err{color:#b42318;font-weight:600}
.ksd-sum{display:flex;gap:18px;align-items:center;border:1px solid rgba(28,25,23,.10);border-radius:16px;background:#fff;padding:18px 22px}
.ksd-score{display:flex;flex-direction:column;align-items:center;justify-content:center;width:92px;height:92px;border-radius:50%;background:#141210;color:#fff;flex:none}
.ksd-score b{font-size:2rem;line-height:1}.ksd-score span{font-size:.72rem;opacity:.75}
.ksd-lvl{margin:0;font-weight:700;font-size:1.1rem}
.ksd-good{background:rgba(22,163,74,.08);border-radius:12px;padding:12px 16px;margin:0}
.ksd-h{margin:18px 0 6px!important;font-size:1.08rem!important}
.ksd-fix{border:1px solid rgba(28,25,23,.10);border-left:3px solid var(--accent,#E1622F);border-radius:12px;background:#fff;padding:14px 18px}
.ksd-fix p{margin:4px 0}.ksd-fix__t{font-weight:700}
.ksd-tpl{position:relative;margin:8px 0}
.ksd-tpl pre{white-space:pre-wrap;background:rgba(28,25,23,.04);border-radius:10px;padding:12px 14px;margin:0;font-size:.85rem;font-family:inherit}
.ksd-copy{margin-top:6px;border:1px solid rgba(28,25,23,.18);background:#fff;border-radius:999px;padding:5px 12px;font:inherit;font-size:.8rem;cursor:pointer}
.ksd-table{display:flex;flex-direction:column;border:1px solid rgba(28,25,23,.10);border-radius:14px;background:#fff;overflow:hidden}
.ksd-row{display:flex;gap:14px;padding:12px 16px;border-top:1px solid rgba(28,25,23,.07)}
.ksd-row:first-child{border-top:0}
.ksd-row p{margin:2px 0}.ksd-row__n{font-weight:600}
.ksd-st{flex:none;width:96px;font-size:.75rem;font-weight:700;text-align:center;border-radius:999px;padding:4px 0;height:fit-content}
.ksd-st--ok{background:rgba(22,163,74,.12);color:#15803d}.ksd-st--mid{background:rgba(234,179,8,.16);color:#a16207}.ksd-st--no{background:rgba(220,38,38,.10);color:#b91c1c}
.ksd-ev{font-size:.86rem;color:#44403c;font-style:italic}.ksd-ev--none{font-style:normal;color:var(--muted,#6b6560)}
.ksd-flags{list-style:none!important;margin:0!important;padding:0!important;display:flex;flex-direction:column;gap:6px}
.ksd-flag{margin:0!important;padding:10px 14px;border-radius:10px;font-size:.88rem}
.ksd-flag::before{display:none!important}
.ksd-flag--warn{background:rgba(234,179,8,.10)}.ksd-flag--ok{background:rgba(22,163,74,.08)}
.ksd-mat{margin:4px 0 0!important;padding-left:18px!important}
.ksd-mat li{margin:4px 0!important;font-size:.9rem}.ksd-mat span{color:var(--muted,#6b6560);font-size:.78rem}
.ksd-sugg{border:1px solid rgba(28,25,23,.10);border-radius:16px;background:#fff;padding:16px 20px;margin-top:18px}
.ksd-sugg label{display:flex;gap:8px;align-items:center}
.ksd-note{margin-top:14px}
@media (max-width:600px){.ksd-row{flex-direction:column;gap:6px}.ksd-sum{flex-direction:column;text-align:center}}

@media (max-width:600px){.ksd-steps li{flex:1 1 calc(50% - 6px);min-width:0}}

.ks-roles-all{columns:2;gap:24px;list-style:none!important;padding:0!important}.ks-roles-all li{break-inside:avoid;margin:0 0 8px!important}@media(max-width:600px){.ks-roles-all{columns:1}}

/* ==== KZSL BUSINESS MODELS v1 ==== */
.ks-bm{--bm-line:rgba(28,25,23,.12);--bm-soft:rgba(28,25,23,.06);--bm-paper:#fbfaf8;color:var(--charcoal);font-size:16px;line-height:1.6}
.ks-bm.alignwide{max-width:1040px!important;margin-left:auto!important;margin-right:auto!important}
.ks-bm h2{font-size:clamp(26px,3.2vw,36px);line-height:1.12;letter-spacing:-.02em;color:var(--ink);margin:0 0 14px;font-weight:700}
.ks-bm h3{color:var(--ink);letter-spacing:-.01em}
.ks-bm a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(249,115,22,.45);text-underline-offset:3px}
.ks-bm a:hover{text-decoration-color:var(--accent)}
.ks-bm-sec{padding:56px 0 8px;border-top:1px solid var(--bm-line);margin-top:48px}
.ks-bm-eyebrow,.ks-bm-kicker,.ks-bm-lbl,.ks-bm-dim__n,.ks-bm-dim__en,.ks-bm-dim__c,.ks-bm-card__meta,.ks-bm-facts dt{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone)}
.ks-bm-eyebrow{margin:0 0 10px;color:var(--accent-dark)}
.ks-bm-intro{max-width:680px;margin:0 0 28px;color:var(--charcoal)}
.ks-bm-muted{color:var(--stone);font-size:14px;margin:0}
.ks-bm-hero{padding:8px 0 0}
.ks-bm-kicker{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px}
.ks-bm-kicker span{border:1px solid var(--bm-line);border-radius:999px;padding:3px 10px;background:#fff}
.ks-bm-kicker span:first-child{background:var(--ink);color:#fff;border-color:var(--ink)}
.ks-bm-lead{font-size:clamp(19px,2.2vw,23px);line-height:1.45;color:var(--ink);max-width:820px;margin:0 0 28px;letter-spacing:-.01em}
.ks-bm-lead strong{background:linear-gradient(transparent 62%,var(--accent-wash) 62%)}
.ks-bm-stats{list-style:none;margin:0 0 28px;padding:0;display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--bm-line);border-radius:14px;background:#fff;overflow:hidden}
.ks-bm-stats li{padding:16px 18px;border-left:1px solid var(--bm-line);font-size:13px;color:var(--stone);margin:0}
.ks-bm-stats li:first-child{border-left:0}
.ks-bm-stats b{display:block;font-size:30px;line-height:1;color:var(--ink);letter-spacing:-.03em;margin-bottom:6px;font-weight:700}
.ks-bm-toc{display:flex;flex-wrap:wrap;gap:8px}
.ks-bm-toc a{font-size:14px;text-decoration:none;padding:7px 13px;border-radius:999px;border:1px solid var(--bm-line);background:var(--bm-paper);transition:.15s}
.ks-bm-toc a:hover{border-color:var(--ink);background:#fff}
.ks-bm-fullbar{margin-top:16px;padding-top:14px;border-top:1px dashed var(--bm-line);display:flex;flex-wrap:wrap;align-items:center;gap:2px}.ks-bm-fullbar .ks-bm-lbl{margin-right:10px;color:var(--accent-dark)}.ks-bm-fullbar .ks-bm-chip{background:#fff;font-size:13px;padding:5px 11px}.ks-bm-trail{margin-top:18px;padding:14px 16px;border-radius:12px;background:var(--accent-wash);border:1px solid rgba(249,115,22,.25);font-size:14px;color:var(--ink)}
.ks-bm-trail b{font-weight:700}
.ks-bm-trail .ks-bm-bar{height:6px;background:rgba(28,25,23,.08);border-radius:9px;margin:8px 0 0;overflow:hidden}
.ks-bm-trail .ks-bm-bar i{display:block;height:100%;background:var(--accent);border-radius:9px}
.ks-bm-layers{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--bm-line);border-radius:14px;overflow:hidden;background:#fff}
.ks-bm-layers>div{padding:20px;border-left:1px solid var(--bm-line);position:relative}
.ks-bm-layers>div:first-child{border-left:0}
.ks-bm-layers span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-dark)}
.ks-bm-layers h3{font-size:18px;margin:8px 0 6px}
.ks-bm-layers p{font-size:14px;margin:0 0 14px}
.ks-bm-layers em{display:block;font-style:normal;font-size:13px;color:var(--ink);background:var(--bm-paper);border:1px dashed var(--bm-line);border-radius:8px;padding:6px 9px}
.ks-bm-dims{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ks-bm-dim{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--bm-line);border-radius:14px;background:#fff;text-decoration:none!important;transition:transform .18s,border-color .18s,box-shadow .18s;min-height:230px}
.ks-bm-dim:hover{transform:translateY(-2px);border-color:var(--ink);box-shadow:0 10px 30px -18px rgba(28,25,23,.35)}
.ks-bm-dim__n{font-size:28px;letter-spacing:-.02em;color:var(--accent);font-family:var(--sans);font-weight:700;text-transform:none}
.ks-bm-dim strong{font-size:18px;color:var(--ink);line-height:1.2}
.ks-bm-dim__q{font-size:14px;color:var(--ink)}
.ks-bm-dim__d{font-size:13px;color:var(--stone);line-height:1.45;flex:1}
.ks-bm-dim__c{color:var(--charcoal)}
.ks-bm-atlas{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:12px;border:1px solid var(--bm-line);border-radius:16px;background:#fff;padding:12px}
.ks-bm-atlas__bar{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px}
.ks-bm-atlas__stage{position:relative;height:700px;border-radius:12px;background:radial-gradient(circle at 50% 45%,#fff 0,var(--bm-paper) 70%);overflow:hidden}
.ks-bm-atlas__stage svg{display:block;width:100%;height:100%;touch-action:none;cursor:grab}
.ks-bm-atlas__panel{border-top:1px solid var(--bm-line);padding:14px 8px 4px;font-size:14.5px;min-height:64px}.ks-bm-atlas__panel h4{display:inline-block;margin-right:8px!important}
.ks-bm-atlas__panel h4{font-size:19px;margin:6px 0 4px;color:var(--ink)}
.ks-bm-atlas__static{grid-column:1/-1}
.ks-bm-atlas.is-live .ks-bm-atlas__static{display:none}
.ks-bm-atlas:not(.is-live) .ks-bm-atlas__stage,.ks-bm-atlas:not(.is-live) .ks-bm-atlas__panel{display:none}
.ks-bm-rels{width:100%;border-collapse:collapse;font-size:14px}
.ks-bm-rels td,.ks-bm-rels th{padding:7px 10px;border-bottom:1px solid var(--bm-soft);text-align:left}
.ks-bm-pill{font:inherit;font-size:13px;padding:6px 11px;border-radius:999px;border:1px solid var(--bm-line);background:#fff;color:var(--charcoal);cursor:pointer;transition:.15s;line-height:1.2}
.ks-bm-pill:hover{border-color:var(--ink);color:var(--ink)}
.ks-bm-pill[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.ks-bm-node{cursor:pointer;transition:opacity .2s;outline:none}.ks-bm-node:focus-visible circle{stroke:var(--accent);stroke-width:4}.ks-bm-pp{display:grid;grid-template-columns:1.25fr 1fr;gap:28px}.ks-bm-pp .ks-bm-pill{margin:4px 4px 0 0;font-size:12.5px;padding:4px 10px}@media (max-width:640px){.ks-bm-pp{grid-template-columns:1fr;gap:6px}}
.ks-bm-node text{font-family:var(--sans);font-size:11px;fill:var(--charcoal);pointer-events:none;paint-order:stroke;stroke:#fbfaf8;stroke-width:3px}
.ks-bm-node.is-dim text{font-size:12.5px;font-weight:700;fill:var(--ink)}
.ks-bm-link{vector-effect:non-scaling-stroke;stroke:rgba(28,25,23,.14);stroke-width:1;fill:none;transition:opacity .2s}
.ks-bm-link.t-also{opacity:0}.ks-bm-link.t-also.is-near{opacity:.6;stroke-dasharray:2 4}.ks-bm-link.t-metric{opacity:.45}.ks-bm-link.t-metric.is-near{opacity:1}.ks-bm-link.t-evolves{stroke-dasharray:4 3;stroke:rgba(234,88,12,.5)}
.ks-bm-link.t-confused{stroke:rgba(190,24,93,.35);stroke-dasharray:1 3}
.ks-bm-atlas.is-focus .ks-bm-node:not(.is-near){opacity:.18}
.ks-bm-atlas.is-focus .ks-bm-link:not(.is-near){opacity:.06}
.ks-bm-link.is-near{stroke:var(--ink);stroke-width:1.6}
.ks-bm-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--stone);margin-left:auto;align-items:center}
.ks-bm-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;vertical-align:-1px}
.ks-bm-builder{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ks-bm-layer{border:1px solid var(--bm-line);border-radius:14px;padding:14px 14px 10px;margin:0;background:#fff;min-width:0}
.ks-bm-layer legend{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-dark);padding:0 6px}
.ks-bm-opt{font:inherit;font-size:14px;margin:0 6px 6px 0;padding:7px 12px;border-radius:999px;border:1px solid var(--bm-line);background:var(--bm-paper);color:var(--ink);cursor:pointer;transition:.15s}
.ks-bm-opt:hover{border-color:var(--ink)}
.ks-bm-opt[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}
.ks-bm-out{grid-column:1/-1;border:1px solid var(--ink);border-radius:16px;padding:22px;background:#fff;min-height:120px}
.ks-bm-out__grid{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:start}
.ks-bm-radar text{font-family:var(--sans);font-size:10px;fill:var(--stone)}
.ks-bm-out h4{font-size:14px;margin:0 0 8px;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--stone);font-weight:400}
.ks-bm-out__cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ks-bm-out ul{margin:0;padding-left:18px;font-size:14px}
.ks-bm-flag{padding:10px 12px;border-radius:10px;font-size:14px;margin:0 0 8px;border:1px solid}
.ks-bm-flag.bad{background:#fef2f2;border-color:#fecaca;color:#7f1d1d}
.ks-bm-flag.warn{background:#fffbeb;border-color:#fde68a;color:#78350f}
.ks-bm-flag.info{background:#f5f5f4;border-color:var(--bm-line);color:var(--ink)}
.ks-bm-flag.ok{background:#f0fdf4;border-color:#bbf7d0;color:#14532d}
.ks-bm-cmp__bar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.ks-bm-tablewrap{overflow-x:auto;border:1px solid var(--bm-line);border-radius:14px;background:#fff}
.ks-bm-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:760px;margin:0}.ks-bm-cmp .ks-bm-table tr>*:last-child{display:none}.ks-bm-out ul{columns:2;column-gap:18px}
.ks-bm-table th,.ks-bm-table td{padding:10px 12px;border-bottom:1px solid var(--bm-soft);text-align:left;vertical-align:middle;background:transparent}
.ks-bm-table thead th{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--stone);font-weight:400;line-height:1.3;position:sticky;top:0;background:#fff}
.ks-bm-table thead th[data-sort]{cursor:pointer;user-select:none}
.ks-bm-table thead th[data-sort]:hover,.ks-bm-table thead th.is-sorted{color:var(--ink)}
.ks-bm-table thead th.is-sorted:after{content:" ↓"}
.ks-bm-table tbody tr:hover{background:var(--bm-paper)}
.ks-bm-table tbody th{font-weight:600;white-space:nowrap}
.ks-bm-table tbody th a{text-decoration:none}
.ks-bm-table input{accent-color:var(--accent);margin-right:8px}
.ks-bm-dots{display:inline-flex;gap:3px;vertical-align:middle}
.ks-bm-dots i{width:8px;height:8px;border-radius:50%;background:rgba(28,25,23,.1)}
.ks-bm-dots i.on{background:var(--ink)}
.ks-bm-cmp__detail{margin-top:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ks-bm-cmp__detail>div{border:1px solid var(--bm-line);border-radius:14px;padding:16px;background:#fff;font-size:14px}
.ks-bm-cmp__detail h4{margin:0 0 6px;font-size:17px;color:var(--ink)}
.ks-bm-search{display:flex;align-items:center;gap:12px;position:sticky;top:72px;z-index:5;background:var(--canvas);padding:10px 0;margin-bottom:8px}
.ks-bm-search input{flex:1;font:inherit;font-size:16px;padding:13px 16px;border-radius:12px;border:1px solid var(--bm-line);background:#fff;color:var(--ink);outline:none}
.ks-bm-search input:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--accent-wash)}
.ks-bm-search__n{font-family:var(--mono);font-size:12px;color:var(--stone);white-space:nowrap}
.ks-bm-group{margin:30px 0 0}
.ks-bm-group h3{font-size:20px;margin:0 0 14px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.ks-bm-group h3 span{color:var(--accent);font-family:var(--mono);font-size:13px}
.ks-bm-group h3 small{font-size:14px;font-weight:400;color:var(--stone)}
.ks-bm-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.ks-bm-card{border:1px solid var(--bm-line);border-radius:14px;background:#fff;padding:18px 20px;display:flex;flex-direction:column;gap:2px;font-size:14.5px;scroll-margin-top:140px;transition:border-color .2s,box-shadow .2s}
.ks-bm-card:target{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}
.ks-bm-card.is-full{border-color:var(--ink);background:linear-gradient(180deg,#fff 0,var(--bm-paper) 100%)}
.ks-bm-card.is-learned header h4:after{content:"✓ изучено";font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:999px;padding:2px 8px;margin-left:8px;vertical-align:3px}
.ks-bm-card h4{font-size:18px;margin:4px 0 6px;color:var(--ink);line-height:1.25}
.ks-bm-card h4 small{font-weight:400;color:var(--stone);font-size:13px}
.ks-bm-card p{margin:0 0 8px}
.ks-bm-card__meta{display:flex;justify-content:space-between;gap:8px;margin:0!important}
.ks-bm-badge{color:var(--accent-dark)}
.ks-bm-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 10px;padding:10px 0;border-top:1px solid var(--bm-soft);border-bottom:1px solid var(--bm-soft)}
.ks-bm-facts div{min-width:0}
.ks-bm-facts dt{font-size:10px;margin:0 0 2px}
.ks-bm-facts dd{margin:0;font-size:13px;color:var(--ink);line-height:1.4}
.ks-bm-conf{font-size:13.5px;background:var(--bm-paper);border-radius:8px;padding:8px 10px}
.ks-bm-row{font-size:13.5px;margin:0 0 6px!important;line-height:1.7}
.ks-bm-lbl{margin-right:8px;font-size:10px}
.ks-bm-chip{display:inline-block;font-size:12px;line-height:1.2;padding:3px 9px;margin:0 4px 4px 0;border-radius:999px;border:1px solid var(--bm-line);background:var(--bm-paper);color:var(--ink);text-decoration:none!important}
a.ks-bm-chip:hover{border-color:var(--accent)}
.ks-bm-card footer{margin-top:auto;padding-top:10px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.ks-bm-more{font-weight:600;font-size:14px}
.ks-bm-learn{font:inherit;font-size:12px;padding:5px 10px;border-radius:999px;border:1px solid var(--bm-line);background:#fff;color:var(--charcoal);cursor:pointer}
.ks-bm-learn[aria-pressed=true]{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}
.ks-bm-card.is-hidden{display:none}
.ks-bm-group.is-empty{display:none}
.ks-bm-trans details{border:1px solid var(--bm-line);border-radius:14px;background:#fff;margin:0 0 8px;overflow:hidden}
.ks-bm-trans summary{cursor:pointer;padding:16px 20px;font-weight:600;color:var(--ink);list-style:none;display:flex;gap:14px;align-items:center}
.ks-bm-trans summary::-webkit-details-marker{display:none}
.ks-bm-trans summary:after{content:"+";margin-left:auto;font-weight:400;font-size:20px;color:var(--stone)}
.ks-bm-trans details[open] summary:after{content:"–"}
.ks-bm-trans summary span{font-family:var(--mono);font-size:12px;color:var(--accent);font-weight:400}
.ks-bm-trans dl{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:0;border-top:1px solid var(--bm-soft)}
.ks-bm-trans dl div{padding:14px 16px;border-left:1px solid var(--bm-soft);font-size:13.5px}
.ks-bm-trans dl div:first-child{border-left:0}
.ks-bm-trans dt{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone);margin-bottom:4px}
.ks-bm-trans dd{margin:0}
.ks-bm-trans details>.ks-bm-row{padding:0 20px 14px}
.ks-bm-routes{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.ks-bm-route{border:1px solid var(--bm-line);border-radius:14px;padding:16px;background:#fff;font-size:14px}
.ks-bm-route h3{font-size:16px;margin:0 0 4px}
.ks-bm-route p{color:var(--stone);font-size:13px;margin:0 0 10px}
.ks-bm-route ol{margin:0;padding:0;list-style:none;counter-reset:r}
.ks-bm-route li{counter-increment:r;padding:6px 0 6px 26px;position:relative;border-top:1px solid var(--bm-soft);line-height:1.35}
.ks-bm-route li:before{content:counter(r);position:absolute;left:0;top:6px;width:18px;height:18px;border-radius:50%;background:var(--bm-paper);border:1px solid var(--bm-line);font-size:11px;text-align:center;line-height:17px;font-family:var(--mono)}
.ks-bm-next{border:1px solid var(--ink);border-radius:16px;padding:18px 20px;margin:0 0 14px;background:#fff}
.ks-bm-next h3{margin:0 0 10px;font-size:18px}
.ks-bm-next ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ks-bm-next li{border:1px solid var(--bm-line);border-radius:12px;padding:12px;font-size:13.5px;background:var(--bm-paper)}
.ks-bm-next li a{font-weight:700;font-size:15px}
.ks-bm-next li span{display:block;color:var(--stone);margin-top:4px}
.ks-bm-std{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.ks-bm-std h3{font-size:17px;margin:0 0 10px}
.ks-bm-std__list{columns:2;column-gap:24px;margin:0;padding-left:22px;font-size:14px}
.ks-bm-std__list li{break-inside:avoid;padding:2px 0}
.ks-bm-rules{margin:0 0 18px;padding-left:18px;font-size:14px}
.ks-bm-src{font-size:13.5px;padding-left:22px}
.ks-bm-src li{margin:0 0 6px}
.ks-bm-src span{color:var(--stone)}
.ks-bm-posts{columns:2;column-gap:28px;padding-left:18px}
.ks-bm-posts li{break-inside:avoid;margin:0 0 6px}
.ks-bm-entryfacts{border:1px solid var(--ink);border-radius:18px;background:#fff;padding:22px 24px;margin:8px auto 36px!important}
.ks-bm-entryfacts .ks-bm-kicker{margin-bottom:10px}
.ks-bm-ef__dims{margin:0 0 14px}
.ks-bm-ef__grid{display:grid;grid-template-columns:1.4fr 1fr;gap:24px}
.ks-bm-entryfacts .ks-bm-facts{grid-template-columns:1fr 1fr;border-top:0;padding-top:0}
.ks-bm-entryfacts .ks-bm-facts div:nth-child(n+4){grid-column:1/-1}
.ks-bm-ef__scores div{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:5px 0;border-bottom:1px solid var(--bm-soft)}
.ks-bm-calc{border:1px solid rgba(28,25,23,.12)!important;border-radius:16px;background:#fff;padding:20px;margin:20px 0}
.ks-bm-calc__in{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}
.ks-bm-calc label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--stone)}
.ks-bm-calc input,.ks-bm .ks-bm-calc input[type=number]{font:inherit!important;font-size:16px!important;padding:9px 11px!important;border:1px solid rgba(28,25,23,.18)!important;border-radius:10px!important;color:var(--ink)!important;background:var(--bm-paper)!important;width:100%!important;box-shadow:none!important;height:auto!important}
.ks-bm-calc input:focus{outline:none;border-color:var(--ink)}
.ks-bm-calc__out{border:1px solid rgba(28,25,23,.12)!important;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--bm-line);border-radius:12px;overflow:hidden}
.ks-bm-calc__out div{padding:14px;border-left:1px solid var(--bm-line);font-size:12.5px;color:var(--stone)}
.ks-bm-calc__out div:first-child{border-left:0}
.ks-bm-calc__out b{display:block;font-size:22px;color:var(--ink);letter-spacing:-.02em;margin-top:4px}
.ks-bm-calc__verdict{margin:14px 0 0;font-size:14px}
@media (max-width:960px){.ks-bm-dims{grid-template-columns:repeat(2,1fr)}.ks-bm-routes{grid-template-columns:repeat(2,1fr)}.ks-bm-layers{grid-template-columns:1fr 1fr}.ks-bm-layers>div:nth-child(3){border-left:0}.ks-bm-layers>div:nth-child(n+3){border-top:1px solid var(--bm-line)}.ks-bm-atlas{grid-template-columns:1fr}.ks-bm-atlas__panel{border-left:0;border-top:1px solid var(--bm-line);padding:12px 4px 4px;max-height:none}.ks-bm-trans dl{grid-template-columns:1fr 1fr}.ks-bm-trans dl div{border-left:0;border-top:1px solid var(--bm-soft)}.ks-bm-out__grid{grid-template-columns:1fr}.ks-bm-next ul{grid-template-columns:1fr}}
@media (max-width:640px){.ks-bm-atlas__bar{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.ks-bm-atlas__bar .ks-bm-pill{white-space:nowrap;flex:0 0 auto}.ks-bm-legend{display:none}.ks-bm-sec{padding-top:40px;margin-top:32px}.ks-bm-stats{grid-template-columns:repeat(3,1fr)}.ks-bm-stats li:nth-child(4){border-left:0}.ks-bm-stats li:nth-child(n+4){border-top:1px solid var(--bm-line)}.ks-bm-stats b{font-size:24px}.ks-bm-dims,.ks-bm-cards,.ks-bm-builder,.ks-bm-routes,.ks-bm-std,.ks-bm-layers,.ks-bm-out__cols,.ks-bm-cmp__detail,.ks-bm-ef__grid{grid-template-columns:1fr}.ks-bm-layers>div{border-left:0!important;border-top:1px solid var(--bm-line)}.ks-bm-layers>div:first-child{border-top:0}.ks-bm-dim{min-height:0}.ks-bm-atlas__stage{height:520px}.ks-bm-facts{grid-template-columns:1fr 1fr}.ks-bm-std__list,.ks-bm-posts{columns:1}.ks-bm-search{top:60px}.ks-bm-calc__in{grid-template-columns:1fr 1fr}.ks-bm-calc__out{grid-template-columns:1fr 1fr}.ks-bm-calc__out div:nth-child(3){border-left:0}.ks-bm-calc__out div:nth-child(n+3){border-top:1px solid var(--bm-line)}}
@media (prefers-reduced-motion:reduce){.ks-bm *{transition:none!important}}
/* ==== /KZSL BUSINESS MODELS v1 ==== */


/* ==== KZSL INDUSTRY ATLAS v1 ==== */
.ks-ia .ks-bm-dim{min-height:0}
.ks-ia-scores{display:grid;grid-template-columns:1fr 1fr;gap:2px 14px;margin:6px 0 4px}
.ks-ia-scores div{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--stone);padding:3px 0;border-bottom:1px solid var(--bm-soft)}
.ks-ia-cmp__pick{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.ks-ia-cmp__pick select{font:inherit;font-size:15px;padding:10px 12px;border-radius:10px;border:1px solid rgba(28,25,23,.18);background:#fff;color:var(--ink);min-width:220px}
.ks-ia-ct{min-width:640px}.ks-ia-ct tbody th{white-space:normal;width:22%;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--stone);font-weight:400}.ks-ia-ct td{width:39%;font-size:13.5px}
.ks-ia-cmp__sum{margin-top:12px;border:1px solid var(--ink);border-radius:14px;padding:14px 16px;background:#fff;font-size:14.5px}.ks-ia-cmp__sum p{margin:0 0 6px}
.ks-ia-pair{display:grid;grid-template-columns:1fr 1fr 1fr;margin:0;border-top:1px solid var(--bm-soft)}.ks-ia-pair div{padding:14px 16px;border-left:1px solid var(--bm-soft);font-size:13.5px}.ks-ia-pair div:first-child{border-left:0}.ks-ia-pair dt{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone);margin-bottom:4px}.ks-ia-pair dd{margin:0}
.ks-ia-views{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ks-ia-view{border:1px solid var(--bm-line);border-radius:14px;background:#fff;padding:16px}.ks-ia-view h3{font-size:16px;margin:0 0 10px}.ks-ia-view__tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}.ks-ia-view__tabs .ks-bm-pill{font-size:12px;padding:4px 9px}.ks-ia-view__body p{font-size:14px;margin:0;background:var(--bm-paper);border-radius:10px;padding:10px 12px}
.ks-ia-ll{list-style:none;margin:0 0 10px;padding:0;font-size:13px}.ks-ia-ll li{padding:4px 0;border-bottom:1px solid var(--bm-soft)}.ks-ia-ll i{display:inline-block;width:10px;height:3px;margin-right:6px;vertical-align:middle}.ks-ia-ll .ks-bm-pill{font-size:12px;padding:2px 8px}
.ks-ia-l{stroke-width:1.4;opacity:.45}.ks-bm-atlas.is-focus .ks-ia-l.is-near{opacity:1;stroke-width:2.2}
.ks-ia-pipe{list-style:none;counter-reset:p;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:0;margin:0 0 24px}.ks-ia-pipe li{counter-increment:p;border:1px solid var(--bm-line);border-radius:12px;background:#fff;padding:12px;font-size:13px;position:relative}.ks-ia-pipe li:before{content:counter(p,decimal-leading-zero);font-family:var(--mono);font-size:11px;color:var(--accent);display:block}.ks-ia-pipe b{display:block;color:var(--ink);font-size:14px;margin:2px 0}.ks-ia-pipe span{color:var(--stone)}
@media (max-width:960px){.ks-ia-views{grid-template-columns:1fr}.ks-ia-pipe{grid-template-columns:1fr 1fr}.ks-ia-pair{grid-template-columns:1fr}.ks-ia-pair div{border-left:0;border-top:1px solid var(--bm-soft)}}
@media (max-width:640px){.ks-ia-scores{grid-template-columns:1fr}.ks-ia-pipe{grid-template-columns:1fr}.ks-ia-cmp__pick select{min-width:0;width:100%}}
/* ==== /KZSL INDUSTRY ATLAS v1 ==== */


/* ==== KZSL TECHNOLOGY ATLAS v1 — тёмный «чертёж», отличается от /models/ и /industries/ ==== */
.ks-ta{--ta-bg:#0b1016;--ta-panel:#111821;--ta-line:rgba(148,163,184,.18);--ta-soft:rgba(148,163,184,.10);--ta-txt:#cbd5e1;--ta-hi:#f8fafc;--ta-mute:#8b98a9;--ta-acc:#f97316;--ta-cy:#38bdf8;--ta-gr:#4ade80;font-size:16px;line-height:1.6;color:var(--charcoal)}
.ks-ta.alignwide{max-width:1080px!important;margin-left:auto!important;margin-right:auto!important}
.ks-ta a{color:inherit;text-underline-offset:3px}
.ks-ta h2{font-size:clamp(26px,3.3vw,38px);letter-spacing:-.025em;line-height:1.1;margin:0 0 12px;color:var(--ink);font-weight:700}
.ks-ta-k{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ta-acc);margin:0 0 10px}
.ks-ta-i{max-width:700px;color:var(--stone);margin:0 0 24px}
.ks-ta-sec{padding:56px 0 8px}
.ks-ta-dark{background:var(--ta-bg);color:var(--ta-txt);border-radius:22px;padding:44px 36px;margin-top:48px;background-image:linear-gradient(var(--ta-soft) 1px,transparent 1px),linear-gradient(90deg,var(--ta-soft) 1px,transparent 1px);background-size:32px 32px}
.ks-ta-dark h2{color:var(--ta-hi)}.ks-ta-dark .ks-ta-i{color:var(--ta-mute)}
.ks-ta-hero{position:relative;background:var(--ta-bg);color:var(--ta-txt);border-radius:24px;padding:44px 40px 32px;overflow:hidden}
.ks-ta-hero__grid{position:absolute;inset:0;background-image:linear-gradient(var(--ta-soft) 1px,transparent 1px),linear-gradient(90deg,var(--ta-soft) 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(circle at 80% 20%,#000 0,transparent 70%);-webkit-mask-image:radial-gradient(circle at 80% 20%,#000 0,transparent 70%)}
.ks-ta-hero>*{position:relative}
.ks-ta-tag{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ta-cy);margin:0 0 18px}.ks-ta-tag span{color:var(--ta-mute);margin-left:10px}
.ks-ta-hero__t{color:var(--ta-hi)!important;font-size:clamp(28px,4vw,46px)!important;max-width:820px}
.ks-ta-hero__l{max-width:760px;font-size:17px;color:var(--ta-txt)}.ks-ta-hero__l b{color:var(--ta-hi);font-weight:600}
.ks-ta-hero__stats{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--ta-line);border-radius:14px;margin:24px 0 18px}
.ks-ta-hero__stats div{padding:14px 16px;border-left:1px solid var(--ta-line)}.ks-ta-hero__stats div:first-child{border-left:0}
.ks-ta-hero__stats b{display:block;font-family:var(--mono);font-size:28px;color:var(--ta-hi);font-weight:500}.ks-ta-hero__stats span{font-size:12px;color:var(--ta-mute)}
.ks-ta-nav{display:flex;flex-wrap:wrap;gap:6px}.ks-ta-nav a{font-family:var(--mono);font-size:12px;text-decoration:none;color:var(--ta-txt);border:1px solid var(--ta-line);border-radius:8px;padding:6px 10px}.ks-ta-nav a:hover{border-color:var(--ta-acc);color:var(--ta-hi)}
.ks-ta-full{margin:16px 0 0;font-size:13px}.ks-ta-full span{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ta-acc);margin-right:10px}.ks-ta-full a{color:var(--ta-hi);margin-right:12px}
.ks-ta-table{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.ks-ta-el{display:flex;flex-direction:column;gap:4px;border:1px solid rgba(28,25,23,.14);border-radius:12px;padding:12px;background:#fff;text-decoration:none!important;min-height:200px;transition:.18s;position:relative}
.ks-ta-el:hover{border-color:var(--ink);transform:translateY(-2px)}
.ks-ta-el__n{font-family:var(--mono);font-size:11px;color:var(--stone)}.ks-ta-el__c{font-family:var(--mono);font-size:26px;font-weight:600;color:var(--ink);letter-spacing:.02em}
.ks-ta-el b{font-size:14px;color:var(--ink);line-height:1.25}.ks-ta-el i{font-style:normal;font-size:12.5px;color:var(--stone);flex:1}.ks-ta-el small{font-family:var(--mono);font-size:10.5px;color:var(--ta-acc)}
.ks-ta-ax{display:grid;grid-template-columns:1fr 320px;gap:14px}.ks-ta-ax__bar{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px}
.ks-ta-ax__bar button,.ks-ta-to__tabs button,.ks-ta-lab button{font:inherit;font-size:13px;border:1px solid var(--ta-line);background:transparent;color:var(--ta-txt);border-radius:8px;padding:6px 11px;cursor:pointer}
.ks-ta-ax__bar button[aria-pressed=true]{background:var(--ta-hi);color:var(--ta-bg);border-color:var(--ta-hi)}
.ks-ta-ax__bar .is-fail[aria-pressed=true]{background:#ef4444;border-color:#ef4444;color:#fff}
.ks-ta-ax__stage{display:flex;flex-direction:column;gap:8px}
.ks-ta-ax__layer{border:1px dashed var(--ta-line);border-radius:12px;padding:10px 12px;display:grid;grid-template-columns:150px 1fr;align-items:center;gap:10px;transition:opacity .2s}
.ks-ta-ax__layer.is-off{display:none}
.ks-ta-ax__ln{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ta-mute)}
.ks-ta-ax__row{display:flex;flex-wrap:wrap;gap:6px}
.ks-ta-comp{font:inherit;font-size:13px;background:var(--ta-panel);color:var(--ta-hi);border:1px solid var(--ta-line);border-radius:10px;padding:8px 12px;cursor:pointer;transition:.15s}
.ks-ta-comp:hover{border-color:var(--ta-cy)}.ks-ta-comp.is-sel{border-color:var(--ta-acc);box-shadow:0 0 0 2px rgba(249,115,22,.35)}
.ks-ta-comp.is-dep{border-color:var(--ta-cy);color:var(--ta-cy)}.ks-ta-comp.is-down{background:#7f1d1d;border-color:#ef4444;color:#fff}.ks-ta-comp.is-hit{background:#451a03;border-color:#f59e0b;color:#fde68a}
.ks-ta-ax__panel{background:var(--ta-panel);border:1px solid var(--ta-line);border-radius:14px;padding:16px;font-size:14px;color:var(--ta-txt)}
.ks-ta-ax__panel h4{color:var(--ta-hi);font-size:18px;margin:0 0 6px}.ks-ta-ax__panel dt{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ta-mute);margin-top:10px}.ks-ta-ax__panel dd{margin:2px 0 0}
.ks-ta-to__tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.ks-ta-to__tabs button{border-color:rgba(28,25,23,.18);color:var(--ink)}.ks-ta-to__tabs button[aria-pressed=true]{background:var(--ink);color:#fff}
.ks-ta-to__q{font-family:var(--mono);font-size:12px;color:var(--stone);margin:0 0 10px}
.ks-ta-to__opts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ks-ta-to__opt{border:1px solid rgba(28,25,23,.14);border-radius:14px;padding:16px;background:#fff}.ks-ta-to__opt h3{font-size:17px;margin:0 0 10px;color:var(--ink)}.ks-ta-to__opt p{font-size:13.5px;margin:10px 0 0}
.ks-ta-bar{display:grid;grid-template-columns:1fr 90px;align-items:center;gap:8px;font-size:12px;color:var(--stone);padding:3px 0}
.ks-ta-bar i{height:6px;border-radius:6px;background:linear-gradient(90deg,var(--ink) calc(var(--v)*20%),rgba(28,25,23,.08) 0)}
.ks-ta-labs{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ks-ta-lab{background:var(--ta-panel);border:1px solid var(--ta-line);border-radius:16px;padding:18px}.ks-ta-lab h3{color:var(--ta-hi);font-size:17px;margin:0 0 12px}
.ks-ta-lab fieldset{border:0;padding:0;margin:0 0 12px}.ks-ta-lab legend{font-size:13px;color:var(--ta-mute);margin-bottom:6px}
.ks-ta-lab button{margin:0 6px 6px 0}.ks-ta-lab button[aria-pressed=true]{background:var(--ta-acc);border-color:var(--ta-acc);color:#fff}
.ks-ta-lab__out{border-top:1px dashed var(--ta-line);padding-top:12px;font-size:14px}.ks-ta-lab__out li{margin-bottom:6px}.ks-ta-lab__out a{color:var(--ta-cy)}
.ks-ta-dom{margin:28px 0 0}.ks-ta-dom h3{display:flex;align-items:baseline;gap:12px;font-size:21px;margin:0 0 4px;color:var(--ink)}.ks-ta-dom h3 span{font-family:var(--mono);font-size:13px;color:#fff;background:var(--ink);border-radius:6px;padding:2px 7px}
.ks-ta-dom__d{color:var(--stone);font-size:14px;margin:0 0 12px}
.ks-ta-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.ks-ta-card{border:1px solid rgba(28,25,23,.14);border-left:3px solid var(--ink);border-radius:4px 12px 12px 4px;background:#fff;padding:16px 18px;font-size:14.5px;scroll-margin-top:120px}
.ks-ta-card.is-full{border-left-color:var(--ta-acc)}.ks-ta-card:target{box-shadow:0 0 0 3px rgba(249,115,22,.25)}
.ks-ta-card h4{font-size:17px;margin:4px 0 6px;color:var(--ink)}.ks-ta-card p{margin:0 0 8px}
.ks-ta-card__m{display:flex;gap:6px;flex-wrap:wrap}.ks-ta-card__m span{font-family:var(--mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;border-radius:5px;padding:2px 7px;background:#f1f5f9;color:#334155}
.ks-ta-card__m .l-found{background:#ecfdf5;color:#047857}.ks-ta-card__m .l-evol{background:#fff7ed;color:#c2410c}.ks-ta-card__m .l-tool{background:#eff6ff;color:#1d4ed8}
.ks-ta-card dl{margin:8px 0;display:grid;gap:6px}.ks-ta-card dt{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--stone)}.ks-ta-card dd{margin:0;font-size:13.5px}
.ks-ta-card__r{font-size:12.5px;color:var(--stone)}.ks-ta-card footer{display:flex;gap:14px;font-size:13.5px;font-weight:600}
.ks-ta-life{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid rgba(28,25,23,.14);border-radius:14px;overflow:hidden;margin-bottom:16px;background:#fff}.ks-ta-life div{padding:18px;border-left:1px solid rgba(28,25,23,.1)}.ks-ta-life div:first-child{border-left:0}.ks-ta-life b{color:var(--ink)}.ks-ta-life p{font-size:14px;margin:6px 0 0}
.ks-ta-kinds{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.ks-ta-kinds div{border:1px solid rgba(28,25,23,.12);border-radius:10px;padding:10px;font-size:12.5px;background:#fff;display:flex;flex-direction:column;gap:4px}.ks-ta-kinds b{color:var(--ink);font-size:13px}.ks-ta-kinds span{color:var(--charcoal)}.ks-ta-kinds i{font-style:normal;color:var(--stone)}
.ks-ta-src{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:12px}.ks-ta-src div{border-top:3px solid var(--ink);padding:10px 0 0;font-size:13.5px}.ks-ta-src b{color:var(--ink)}.ks-ta-src p{margin:4px 0 0;color:var(--stone)}
.ks-ta-facts{background:var(--ta-bg);color:var(--ta-txt);border-radius:18px;padding:22px 24px;margin:8px auto 32px!important}.ks-ta-facts dl{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 10px}.ks-ta-facts dt{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ta-mute)}.ks-ta-facts dd{margin:4px 0 0;color:var(--ta-hi);font-size:14px}.ks-ta-facts a{color:var(--ta-cy)}.ks-ta-facts .ks-ta-card__r{color:var(--ta-mute)}
@media (max-width:960px){.ks-ta-table{grid-template-columns:repeat(4,1fr)}.ks-ta-ax{grid-template-columns:1fr}.ks-ta-to__opts,.ks-ta-labs{grid-template-columns:1fr}.ks-ta-kinds{grid-template-columns:repeat(2,1fr)}.ks-ta-src{grid-template-columns:1fr 1fr}.ks-ta-hero__stats{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.ks-ta-hero{padding:28px 20px}.ks-ta-dark{padding:28px 16px}.ks-ta-table{grid-template-columns:1fr 1fr}.ks-ta-el{min-height:0}.ks-ta-cards,.ks-ta-life,.ks-ta-facts dl{grid-template-columns:1fr}.ks-ta-life div{border-left:0;border-top:1px solid rgba(28,25,23,.1)}.ks-ta-ax__layer{grid-template-columns:1fr}.ks-ta-hero__stats{grid-template-columns:1fr 1fr}.ks-ta-hero__stats div{border-left:0;border-top:1px solid var(--ta-line)}}
/* ==== /KZSL TECHNOLOGY ATLAS v1 ==== */


/* ==== KZSL OPS ATLAS v1 — «операционная доска»: клавиши, статусы, точечная сетка ==== */
.ks-ops{--o-ink:#0f2a24;--o-line:rgba(15,42,36,.16);--o-soft:rgba(15,42,36,.07);--o-bg:#eef3f0;--o-core:#16a34a;--o-niche:#d97706;--o-new:#0891b2;--o-label:#7c3aed;--o-joke:#9ca3af;--o-ref:#334155;color:#1f2a27;font-size:16px;line-height:1.6}
.ks-ops.alignwide{max-width:1080px!important;margin-left:auto!important;margin-right:auto!important}
.ks-ops h2{font-family:var(--mono);font-weight:600;letter-spacing:-.03em;font-size:clamp(24px,3.2vw,36px);line-height:1.15;color:var(--o-ink);margin:0 0 12px}
.ks-ops-k{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dark);margin:0 0 10px}
.ks-ops-i{color:#4b5b56;max-width:720px;margin:0 0 20px;font-size:15px}
.ks-ops-hero{background:var(--o-bg);background-image:radial-gradient(var(--o-line) 1px,transparent 1px);background-size:18px 18px;border:1px solid var(--o-line);border-radius:22px;padding:40px 36px 28px}
.ks-ops-l{max-width:780px;font-size:17px;color:#24312d;margin:0 0 20px}
.ks-ops-dec{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;background:var(--o-ink);border-radius:14px;padding:12px 16px;margin-bottom:16px}
.ks-ops-dec label{font-family:var(--mono);color:#86efac;font-size:20px}
.ks-ops-dec input{font-family:var(--mono)!important;font-size:16px!important;background:transparent!important;border:0!important;color:#f0fdf4!important;outline:none;width:100%;padding:6px 0!important;box-shadow:none!important}
.ks-ops-dec input::placeholder{color:#6b8f80}
.ks-ops-dec__out{grid-column:1/-1;color:#d1fae5;font-size:14px}.ks-ops-dec__out:empty{display:none}
.ks-ops-dec__out a{color:#86efac;font-family:var(--mono);margin-right:12px}
.ks-ops-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.ks-ops-legend button{font:inherit;font-size:12.5px;font-family:var(--mono);background:#fff;border:1px solid var(--o-line);border-radius:999px;padding:5px 11px;cursor:pointer;color:var(--o-ink);display:flex;align-items:center;gap:6px}
.ks-ops-legend button[aria-pressed=false]{opacity:.4;text-decoration:line-through}
.ks-ops-legend i,.ks-ops-badge{display:inline-block}
.ks-ops-legend i{width:9px;height:9px;border-radius:50%}
i.st-core{background:var(--o-core)}i.st-niche{background:var(--o-niche)}i.st-new{background:var(--o-new)}i.st-label{background:var(--o-label)}i.st-joke{background:var(--o-joke)}i.st-ref{background:var(--o-ref)}
.ks-ops-sec{padding:52px 0 6px}
.ks-ops-loop{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:0;border:1px solid var(--o-line);border-radius:16px;overflow:hidden;background:#fff;counter-reset:l}
.ks-ops-loop li{padding:16px 14px;border-left:1px solid var(--o-line);position:relative;counter-increment:l}
.ks-ops-loop li:first-child{border-left:0}
.ks-ops-loop li:after{content:"→";position:absolute;right:-8px;top:16px;color:var(--o-line);font-size:14px;z-index:1}
.ks-ops-loop li:last-child:after{content:"↺";color:var(--accent)}
.ks-ops-loop b{display:block;font-family:var(--mono);font-size:18px;color:var(--o-ink)}.ks-ops-loop span{display:block;font-size:13px;font-weight:600;color:#24312d}.ks-ops-loop i{font-style:normal;font-size:12.5px;color:#5b6b66}
.ks-ops-board{display:flex;flex-direction:column;gap:8px}
.ks-ops-lane{display:grid;grid-template-columns:230px 1fr;gap:14px;align-items:start;border:1px solid var(--o-line);border-radius:14px;background:#fff;padding:12px 14px}
.ks-ops-lane__h b{font-family:var(--mono);color:var(--accent);font-size:12px;margin-right:6px}.ks-ops-lane__h span{font-weight:700;color:var(--o-ink);font-size:14.5px}.ks-ops-lane__h i{display:block;font-style:normal;font-size:12.5px;color:#5b6b66;margin-top:2px}
.ks-ops-lane__k{display:flex;flex-wrap:wrap;gap:5px}
.ks-ops-key{font-family:var(--mono);font-size:12.5px;text-decoration:none!important;color:var(--o-ink);background:linear-gradient(#fff,#f3f6f4);border:1px solid var(--o-line);border-bottom-width:3px;border-radius:7px;padding:5px 9px 4px;position:relative;transition:transform .08s}
.ks-ops-key:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:6px;vertical-align:1px;background:var(--o-core)}
.ks-ops-key.st-niche:before{background:var(--o-niche)}.ks-ops-key.st-new:before{background:var(--o-new)}.ks-ops-key.st-label:before{background:var(--o-label)}.ks-ops-key.st-joke:before{background:var(--o-joke)}.ks-ops-key.st-ref:before{background:var(--o-ref)}
.ks-ops-key.st-joke{color:#6b7280;font-style:italic}
.ks-ops-key:hover{transform:translateY(-1px);border-color:var(--o-ink)}.ks-ops-key.is-on{background:var(--o-ink);color:#f0fdf4;border-color:var(--o-ink)}
.ks-ops-key.is-off,.ks-ops-e.is-off{display:none}
.ks-ops-panel{margin-top:12px;border:2px solid var(--o-ink);border-radius:16px;background:#fff;padding:18px 20px}
.ks-ops-panel h4{font-family:var(--mono);font-size:22px;margin:0 0 4px;color:var(--o-ink)}
.ks-ops-pairs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ks-ops-pairs div{border:1px solid var(--o-line);border-radius:12px;background:#fff;padding:14px 16px}
.ks-ops-pairs p{margin:0 0 6px;font-family:var(--mono);font-size:16px;display:flex;gap:10px;align-items:center}.ks-ops-pairs p a{color:var(--o-ink)}.ks-ops-pairs p span{color:var(--accent)}
.ks-ops-pairs i{font-style:normal;font-size:14px;color:#3d4c47}
.ks-ops-fam{margin-top:30px}.ks-ops-fam h3{font-family:var(--mono);font-size:20px;color:var(--o-ink);margin:0 0 4px;display:flex;gap:10px;align-items:baseline}.ks-ops-fam h3 span{color:var(--accent);font-size:13px}
.ks-ops-e{border:1px solid var(--o-line);border-left:4px solid var(--o-core);border-radius:4px 12px 12px 4px;background:#fff;padding:14px 18px;margin:0 0 8px;font-size:14.5px;scroll-margin-top:120px}
.ks-ops-e.st-niche{border-left-color:var(--o-niche)}.ks-ops-e.st-new{border-left-color:var(--o-new)}.ks-ops-e.st-label{border-left-color:var(--o-label)}.ks-ops-e.st-joke{border-left-color:var(--o-joke);background:#fafafa}.ks-ops-e.st-ref{border-left-color:var(--o-ref)}
.ks-ops-e:target{box-shadow:0 0 0 3px rgba(249,115,22,.3)}
.ks-ops-e header{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.ks-ops-e h4{font-family:var(--mono);font-size:17px;margin:0;color:var(--o-ink)}
.ks-ops-badge{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;border-radius:5px;padding:2px 7px;color:#fff;background:var(--o-core)}
.ks-ops-badge.st-niche{background:var(--o-niche)}.ks-ops-badge.st-new{background:var(--o-new)}.ks-ops-badge.st-label{background:var(--o-label)}.ks-ops-badge.st-joke{background:var(--o-joke)}.ks-ops-badge.st-ref{background:var(--o-ref)}
.ks-ops-e p{margin:6px 0}.ks-ops-e dl{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:8px 0;padding-top:8px;border-top:1px dashed var(--o-line)}
.ks-ops-e dt{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:#6b7b76}.ks-ops-e dd{margin:2px 0 0;font-size:13.5px}
.ks-ops-conf{background:var(--o-soft);border-radius:8px;padding:7px 10px;font-size:13.5px}
.ks-ops-note{font-size:13.5px;color:#5b6b66}
.ks-ops-rel{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0!important}.ks-ops-rel a{font-family:var(--mono);font-size:12px;border:1px solid var(--o-line);border-radius:6px;padding:2px 7px;text-decoration:none;color:var(--o-ink)}.ks-ops-rel a.ks-ops-gl{border-color:var(--accent);color:var(--accent-dark);font-family:var(--sans);font-weight:600}
@media (max-width:960px){.ks-ops-loop{grid-template-columns:repeat(3,1fr)}.ks-ops-loop li:nth-child(4){border-left:0}.ks-ops-loop li:nth-child(n+4){border-top:1px solid var(--o-line)}.ks-ops-lane{grid-template-columns:1fr}.ks-ops-e dl{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.ks-ops-hero{padding:26px 18px}.ks-ops-loop{grid-template-columns:1fr 1fr}.ks-ops-loop li{border-left:0!important;border-top:1px solid var(--o-line)}.ks-ops-loop li:after{display:none}.ks-ops-pairs,.ks-ops-e dl{grid-template-columns:1fr}}
/* ==== /KZSL OPS ATLAS v1 ==== */

/* ==== Широкая колонка для атласов (модели, отрасли, технологии, Ops, продукты) ==== */
body.page .ks-page__content:has(.ks-ops),body.page .ks-page__content:has(.ks-bm),body.page .ks-page__content:has(.ks-ta),body.page .ks-page__content:has(.ks-ia),body.page .ks-page__content:has(.ks-pa){max-width:1080px}
body.page .ks-page__content:has(.ks-ops) > :not(.alignwide),body.page .ks-page__content:has(.ks-pa) > :not(.alignwide){max-width:720px;margin-left:auto;margin-right:auto}
.ks-page__content .ks-ops a.ks-ops-key,.ks-page__content .ks-ops .ks-ops-rel a,.ks-page__content .ks-ops .ks-ops-pairs a{color:var(--o-ink)!important;text-decoration:none!important}
.ks-page__content .ks-ops .ks-ops-key.is-on{color:#f0fdf4!important}
.ks-page__content .ks-ops .ks-ops-rel a.ks-ops-gl{color:var(--accent-dark)!important}
.ks-page__content .ks-ops .ks-ops-dec__out a{color:#86efac!important}
.ks-page__content .ks-ops h2{font-size:clamp(24px,3.2vw,36px);margin:0 0 12px}
.ks-page__content .ks-ops h3{margin:0 0 4px}

body.page .ks-page-wrap:has(.ks-ops),body.page .ks-page-wrap:has(.ks-bm),body.page .ks-page-wrap:has(.ks-ta),body.page .ks-page-wrap:has(.ks-ia),body.page .ks-page-wrap:has(.ks-pa){max-width:1128px}

/* == KZSL PRODUCT ATLAS CSS v1 == */
.ks-pa{--pp:#faf7f2;--pi:#1d1a16;--pm:#6f665b;--pl:#e4dacb;--ps:#f2ece2;--pa:#d9480f;--pf:Georgia,'Times New Roman',serif;--pn:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--pi);font-size:15px;line-height:1.55}
.ks-pa a{color:var(--pi);text-decoration:underline;text-decoration-color:#cbbfae;text-underline-offset:3px}.ks-pa a:hover{text-decoration-color:var(--pa)}
.ks-pa h2,.ks-pa h3,.ks-pa h4{font-family:var(--pf);color:var(--pi);letter-spacing:-.01em;margin:0}
.ks-pa-mut{color:var(--pm);font-size:.92em}
.ks-pa-hero{position:relative;background:var(--pp);border:1px solid var(--pl);border-radius:6px;padding:40px 36px 28px;overflow:hidden;margin-bottom:18px}
.ks-pa-hero:before{content:"";position:absolute;right:-120px;top:-120px;width:460px;height:460px;background:repeating-radial-gradient(circle at 50% 50%,transparent 0 22px,rgba(111,102,91,.13) 22px 23px);border-radius:50%;pointer-events:none}
.ks-pa-kick{font-family:var(--pn);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--pm);margin:0 0 10px}
.ks-pa-h{font-size:40px!important;line-height:1.08!important;max-width:760px;margin:0 0 14px!important;font-weight:400!important}
.ks-pa-lead{max-width:680px;font-size:16.5px;color:#3d372f;margin:0 0 22px;position:relative}
.ks-pa-search{position:relative;max-width:720px}.ks-pa-search label{display:block;font-family:var(--pn);font-size:12px;color:var(--pm);margin-bottom:6px}
.ks-pa-search input{width:100%;box-sizing:border-box;font:inherit;font-size:17px;padding:15px 18px;border:1.5px solid var(--pi);border-radius:4px;background:#fff;color:var(--pi);outline:none}
.ks-pa-search input:focus{border-color:var(--pa);box-shadow:0 0 0 3px rgba(217,72,15,.15)}
.ks-pa-res{position:absolute;left:0;right:0;top:100%;z-index:20;background:#fff;border:1px solid var(--pl);border-top:0;box-shadow:0 12px 30px rgba(29,26,22,.12)}.ks-pa-res:empty{display:none}
.ks-pa-res a{display:flex;justify-content:space-between;gap:12px;padding:10px 16px;text-decoration:none;border-top:1px solid var(--ps)}.ks-pa-res a:hover,.ks-pa-res a:focus{background:var(--ps)}.ks-pa-res small{color:var(--pm)}
.ks-pa-res p{margin:0;padding:10px 16px;color:var(--pm)}
.ks-pa-tasks{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;position:relative}
.ks-pa-chip{font:inherit;font-size:13.5px;padding:7px 13px;border:1px solid var(--pl);background:#fff;border-radius:999px;color:var(--pi);cursor:pointer}.ks-pa-chip:hover{border-color:var(--pi)}.ks-pa-chip.is-on{background:var(--pi);color:#fff;border-color:var(--pi)}
.ks-pa-roles{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:22px 0 0;border-top:1px solid var(--pl);position:relative}
.ks-pa-rl{grid-column:1/-1;font-family:var(--pn);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--pm);padding:12px 0 6px}
.ks-pa .ks-pa-role{display:block;text-decoration:none;padding:10px 14px 10px 0;border-right:1px solid var(--pl);margin-right:14px}.ks-pa-role:last-child{border-right:0}
.ks-pa-role b{display:block;font-size:14px}.ks-pa-role small{display:block;color:var(--pm);font-size:12.5px;line-height:1.35}.ks-pa-role:hover b{color:var(--pa)}
.ks-pa-stats{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:20px;padding-top:14px;border-top:1px dashed var(--pl);font-family:var(--pn);font-size:12.5px;color:var(--pm)}.ks-pa-stats b{color:var(--pi);font-size:15px}
.ks-pa-toc{position:sticky;top:0;z-index:15;display:flex;gap:4px;flex-wrap:wrap;background:rgba(255,255,255,.94);backdrop-filter:blur(6px);padding:8px 0;border-bottom:1px solid var(--pl);margin-bottom:8px}
.ks-pa .ks-pa-toc a{text-decoration:none;font-size:13.5px;padding:5px 11px;border-radius:3px;color:var(--pm)}.ks-pa .ks-pa-toc a:hover{background:var(--ps);color:var(--pi)}
.ks-pa-sec{padding:34px 0 10px;scroll-margin-top:60px}
.ks-pa-sh{display:grid;grid-template-columns:64px 1fr;gap:14px;margin-bottom:20px;align-items:start}
.ks-pa-num{font-family:var(--pn);font-size:13px;color:var(--pm);border-top:2px solid var(--pi);padding-top:8px}
.ks-pa-sh h2{font-size:30px!important;font-weight:400!important;margin:0 0 6px!important}.ks-pa-sh p{margin:0;color:var(--pm);max-width:720px}
.ks-pa-filt{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;padding:12px 14px;background:var(--ps);border-radius:4px;margin-bottom:22px;font-size:13.5px}
.ks-pa-filt select{font:inherit;padding:5px 8px;border:1px solid var(--pl);border-radius:3px;background:#fff;margin-left:6px}
.ks-pa-ck input{margin-right:6px;accent-color:var(--pi)}
.ks-pa-reset{font:inherit;font-size:13px;background:none;border:0;color:var(--pm);text-decoration:underline;cursor:pointer}
.ks-pa-cnt{margin-left:auto;font-family:var(--pn);font-size:12px;color:var(--pm)}
.ks-pa-grp{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:22px 0;border-top:1px solid var(--pl)}.ks-pa-grp.is-hid{display:none}
.ks-pa-gl{position:sticky;top:60px;align-self:start}.ks-pa-gi{font-family:var(--pn);font-size:12px;color:var(--pm)}
.ks-pa-gl h3{font-size:20px!important;font-weight:400!important;margin:4px 0 6px!important;line-height:1.2!important}.ks-pa-gl p{font-size:13px;color:var(--pm);margin:0}
.ks-pa-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.ks-pa-card{background:#fff;border:1px solid var(--pl);border-radius:4px;padding:18px 18px 14px;display:flex;flex-direction:column;scroll-margin-top:70px;transition:border-color .15s,box-shadow .15s}
.ks-pa-card:hover{border-color:#c9bba6;box-shadow:0 6px 18px rgba(29,26,22,.06)}.ks-pa-card.is-hid{display:none}
.ks-pa-card.is-ref{border-top:3px double var(--pi)}.ks-pa-card.is-hit{box-shadow:0 0 0 3px rgba(217,72,15,.25)}
.ks-pa-card h3{font-size:21px!important;font-weight:400!important;margin:0!important;line-height:1.2!important}
.ks-pa-by{font-size:12.5px;color:var(--pm);margin:4px 0 10px}
.ks-pa-d{font-size:14px;margin:0 0 12px;color:#3d372f}
.ks-pa-meta{margin:0 0 12px;display:grid;gap:4px;font-size:12.5px}.ks-pa-meta div{display:grid;grid-template-columns:78px 1fr;gap:8px}.ks-pa-meta dt{color:var(--pm);font-family:var(--pn);font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding-top:2px}.ks-pa-meta dd{margin:0}
.ks-pa-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:10px;border-top:1px dashed var(--pl);font-size:13px}
.ks-pa-rs{font-family:var(--pn);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--pm)}.ks-pa-rs--ref{color:var(--pi);font-weight:600}
.ks-pa .ks-pa-go{font-weight:600;text-decoration:none;color:var(--pa)}
.ks-pa-add{margin-left:auto;font:inherit;font-size:12.5px;background:#fff;border:1px solid var(--pa);color:var(--pa);border-radius:3px;padding:4px 9px;cursor:pointer}.ks-pa-add:hover,.ks-pa-add.is-on{background:var(--pa);color:#fff}
.ks-pa-note{font-size:12.5px;background:var(--ps);padding:8px 10px;border-left:2px solid var(--pi);margin:10px 0 0}
.ks-pa-more{margin-top:10px}.ks-pa-more summary{cursor:pointer;font-size:13px;color:var(--pm);list-style:none}.ks-pa-more summary:before{content:"+ ";font-family:var(--pn)}.ks-pa-more[open] summary:before{content:"− "}
.ks-pa-std12{list-style:none;margin:12px 0 0;padding:0;counter-reset:none}.ks-pa-std12>li{display:grid;grid-template-columns:30px 1fr;gap:8px;padding:9px 0;border-top:1px solid var(--ps);font-size:13.5px;margin:0}
.ks-pa-n{font-family:var(--pn);font-size:11px;color:var(--pm);padding-top:3px}.ks-pa-std12 h4{font-family:inherit!important;font-size:12px!important;text-transform:uppercase;letter-spacing:.06em;color:var(--pm)!important;margin:0 0 3px!important;font-weight:600!important}
.ks-pa-v ul{margin:0;padding-left:18px}.ks-pa-v li{margin:0 0 2px}
.ks-pa-claims{list-style:none!important;padding:0!important;margin:0!important}.ks-pa-claims li{display:flex;gap:8px;align-items:baseline;margin:0 0 6px!important;font-size:13.5px}
.ks-pa-cl{flex:0 0 auto;font-family:var(--pn);font-size:10.5px;letter-spacing:.03em;padding:2px 7px;border-radius:2px;white-space:nowrap;border:1px solid var(--pi)}
.ks-pa-cl--doc{background:var(--pi);color:#fff}.ks-pa-cl--ind{background:#fff;color:var(--pi)}.ks-pa-cl--prac{background:#fff;color:var(--pi);border-style:dashed}.ks-pa-cl--chk{background:#fff7f2;color:#9a3412;border-color:#e7b9a2;border-style:dotted}
.ks-pa-cmpui{display:grid;grid-template-columns:300px 1fr;gap:24px;background:var(--pp);border:1px solid var(--pl);border-radius:6px;padding:22px}
.ks-pa-wts label{display:grid;grid-template-columns:1fr 90px 18px;gap:8px;align-items:center;font-size:13.5px;margin-bottom:8px}.ks-pa-wts input{accent-color:var(--pa);width:100%}.ks-pa-wts output{font-family:var(--pn);font-size:12px;text-align:right}
.ks-pa-pick{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.ks-pa-pick select{font:inherit;font-size:14px;padding:7px 10px;border:1px solid var(--pl);border-radius:3px;background:#fff;flex:1;min-width:140px}
.ks-pa-out .ks-pa-row{display:grid;grid-template-columns:150px 1fr 56px;gap:12px;align-items:center;margin-bottom:10px}
.ks-pa-bar{height:14px;background:var(--ps);border-radius:2px;position:relative;overflow:hidden}.ks-pa-bar i{position:absolute;left:0;top:0;bottom:0;background:var(--pi);border-radius:2px;transition:width .3s}.ks-pa-row.is-top .ks-pa-bar i{background:var(--pa)}
.ks-pa-out b{font-family:var(--pn);font-size:14px;text-align:right}.ks-pa-out .ks-pa-row span{font-size:14px}
.ks-pa-why{font-size:13px;color:var(--pm);margin:12px 0 0;border-top:1px dashed var(--pl);padding-top:10px}
.ks-pa-tblw{overflow-x:auto;margin-top:18px}.ks-pa-tbl{border-collapse:collapse;width:100%;font-size:13px}.ks-pa-tbl caption{text-align:left;font-family:var(--pn);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--pm);padding-bottom:8px}
.ks-pa-tbl th,.ks-pa-tbl td{border-bottom:1px solid var(--pl);padding:7px 8px;text-align:center;font-weight:400}.ks-pa-tbl thead th{font-size:11.5px;color:var(--pm);vertical-align:bottom}.ks-pa-tbl tbody th{text-align:left;white-space:nowrap}
.ks-pa-dot{display:inline-block;width:24px;height:24px;line-height:24px;border-radius:50%;font-family:var(--pn);font-size:11.5px;background:var(--ps)}.ks-pa-dot[data-v="5"]{background:var(--pi);color:#fff}.ks-pa-dot[data-v="4"]{background:#8a7f71;color:#fff}.ks-pa-dot[data-v="2"],.ks-pa-dot[data-v="1"]{background:#fff;border:1px dashed #b9ad9c}
.ks-pa-labsec .ks-pa-lab{background:var(--pi);color:#f2ece2;border-radius:6px;padding:26px}
.ks-pa-slider{display:block;margin-bottom:18px;font-family:var(--pn);font-size:13px}.ks-pa-slider b{font-size:22px;color:#fff}.ks-pa-slider input{display:block;width:100%;margin-top:8px;accent-color:var(--pa)}
.ks-pa-stages{list-style:none!important;margin:0!important;padding:0!important;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ks-pa-stage{border:1px solid #3d372f;border-radius:4px;padding:16px;opacity:.42;transition:opacity .2s,border-color .2s;margin:0!important}.ks-pa-stage.is-on{opacity:1;border-color:#f2ece2}.ks-pa-stage.is-cur{border-color:var(--pa);box-shadow:inset 0 3px 0 var(--pa)}
.ks-pa-stage h3{color:#fff!important;font-size:18px!important;font-weight:400!important;margin:0 0 8px!important}.ks-pa-stage h3 small{display:block;font-family:var(--pn);font-size:11.5px;color:#b9ad9c;margin-top:2px}
.ks-pa-stage ul{margin:0 0 10px;padding-left:18px;font-size:13.5px}.ks-pa-stage li{margin-bottom:4px}.ks-pa-stage .ks-pa-mut{color:#b9ad9c;font-size:12px;margin:0}
.ks-pa-graph{background:var(--pp);border:1px solid var(--pl);border-radius:6px;padding:14px;overflow-x:auto}.ks-pa-svg{width:100%;min-width:640px;height:auto;display:block}
.ks-pa-ln path{fill:none;stroke:#cbbfae;stroke-width:1.2;transition:stroke .15s,opacity .15s}
.ks-pa-svg text{font-size:13px;fill:var(--pi);font-family:inherit}.ks-pa-node circle{fill:var(--pi)}.ks-pa-node--t rect{fill:#fff;stroke:var(--pi)}.ks-pa-node{cursor:pointer}
.ks-pa-svg.is-f .ks-pa-ln path{opacity:.12}.ks-pa-svg.is-f .ks-pa-ln path.on{opacity:1;stroke:var(--pa);stroke-width:2}.ks-pa-svg.is-f .ks-pa-node{opacity:.35}.ks-pa-svg.is-f .ks-pa-node.on{opacity:1}
.ks-pa-scen{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border:1px solid var(--pl);border-radius:4px}.ks-pa-scen>div{padding:18px 16px;border-right:1px solid var(--pl)}.ks-pa-scen>div:last-child{border-right:0}
.ks-pa-scen span{font-family:var(--pn);font-size:12px;color:var(--pm)}.ks-pa-scen h3{font-size:19px!important;font-weight:400!important;margin:4px 0 6px!important}.ks-pa-scen p{font-size:13.5px;margin:0;color:#3d372f}
.ks-pa-stdlist{columns:2;column-gap:32px;padding-left:22px;font-size:14px}.ks-pa-stdlist li{break-inside:avoid;margin-bottom:6px}
.ks-pa-h3{font-size:20px!important;font-weight:400!important;margin:22px 0 10px!important}
.ks-pa-legend{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.ks-pa-legend>div{border:1px solid var(--pl);border-radius:4px;padding:12px}.ks-pa-legend p{font-size:13px;color:var(--pm);margin:8px 0 0}
.ks-pa-posts{list-style:none!important;padding:0!important}.ks-pa-posts li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #eee;margin:0!important}.ks-pa-posts time{color:#888;font-size:13px;white-space:nowrap}
.ks-pa-facts{background:var(--pp);border:1px solid var(--pl);border-radius:6px;padding:22px 24px;margin:0 0 28px}
.ks-pa-facts dl{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:0 0 14px}.ks-pa-facts dl div{display:grid;grid-template-columns:140px 1fr;gap:10px;padding:7px 0;border-bottom:1px solid var(--pl);font-size:14px}
.ks-pa-facts dt{font-family:var(--pn);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--pm);padding-top:3px}.ks-pa-facts dd{margin:0}
.ks-pa-fx{display:grid;gap:4px;font-size:14px;margin-bottom:14px}.ks-pa-fx b{font-weight:600;margin-right:6px}
.ks-pa-facts h4{font-size:17px!important;font-weight:400!important;margin:14px 0 10px!important}
.ks-pa-mini{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:6px 24px}.ks-pa-mini>div{display:grid;grid-template-columns:1fr 100px 14px;gap:8px;align-items:center;font-size:13px}
.ks-pa-mini i{height:6px;background:linear-gradient(90deg,var(--pi) calc(var(--v)*20%),var(--ps) 0);border-radius:3px}.ks-pa-mini b{font-family:var(--pn);font-size:12px}.ks-pa-mini p{grid-column:1/-1;margin:6px 0 0}
@media (max-width:860px){.ks-pa-roles{grid-template-columns:1fr 1fr}.ks-pa .ks-pa-role{border-right:0;border-bottom:1px solid var(--pl);margin-right:0}.ks-pa-grp{grid-template-columns:1fr;gap:12px}.ks-pa-gl{position:static}.ks-pa-cmpui{grid-template-columns:1fr}.ks-pa-stages{grid-template-columns:1fr}.ks-pa-scen{grid-template-columns:1fr}.ks-pa-scen>div{border-right:0;border-bottom:1px solid var(--pl)}.ks-pa-legend{grid-template-columns:1fr 1fr}.ks-pa-facts dl{grid-template-columns:1fr}.ks-pa-mini{grid-template-columns:1fr}}
@media (max-width:560px){.ks-pa-hero{padding:26px 18px 20px}.ks-pa-h{font-size:34px!important}.ks-pa-roles{grid-template-columns:1fr}.ks-pa-sh{grid-template-columns:1fr;gap:6px}.ks-pa-num{width:48px}.ks-pa-sh h2{font-size:25px!important}.ks-pa-stdlist{columns:1}.ks-pa-legend{grid-template-columns:1fr}.ks-pa-out .ks-pa-row{grid-template-columns:100px 1fr 44px}.ks-pa-facts dl div{grid-template-columns:110px 1fr}.ks-pa-toc{overflow-x:auto;flex-wrap:nowrap}.ks-pa .ks-pa-toc a{white-space:nowrap}}
.ks-pa .ks-pa-mat{font-size:12.5px;color:var(--pm);text-decoration:none}.ks-pa .ks-pa-mat:hover{color:var(--pi)}
.ks-pa-wts{grid-row:1/3}.ks-pa-pick{align-self:start}.ks-pa-pick select{height:auto;align-self:start}.ks-pa-out{align-self:start}.ks-pa-stage a{color:#fff!important;text-decoration-color:#8a7f71!important}
@media (max-width:860px){.ks-pa-wts{grid-row:auto}}
/* == /KZSL PRODUCT ATLAS CSS v1 == */

body.page .ks-page__content:has(.ks-va){max-width:1080px}body.page .ks-page-wrap:has(.ks-va){max-width:1128px}body.page .ks-page__content:has(.ks-va) > :not(.alignwide){max-width:720px;margin-left:auto;margin-right:auto}
/* == KZSL VENDOR ATLAS CSS v1 — «редакционный деск»: монохром + один маркер == */
.ks-va{--vk:#111;--vg:#6b6b6b;--vl:#e6e6e2;--vw:#fafaf8;--vh:#e4f222;--vm:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--vk);font-size:15px;line-height:1.55}
.ks-va a{color:var(--vk)}
.ks-va h2,.ks-va h3{font-weight:400!important;letter-spacing:-.02em;color:var(--vk);margin:0}
.ks-va-lab{font-family:var(--vm);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--vg);margin:0 0 10px}
.ks-va-hero{border-top:3px solid var(--vk);padding:26px 0 0;margin-bottom:8px}
.ks-va-h{font-size:52px!important;line-height:1.02!important;max-width:880px;margin:0 0 18px!important}
.ks-va-lead{font-size:17px;max-width:700px;color:#333;margin:0 0 24px}
.ks-va-tick{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--vk);border-bottom:1px solid var(--vk);margin:0}
.ks-va-tick div{padding:12px 14px;border-right:1px solid var(--vl)}.ks-va-tick div:last-child{border-right:0}
.ks-va-tick dt{font-family:var(--vm);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--vg)}.ks-va-tick dd{margin:2px 0 0;font-size:34px;line-height:1.1}
.ks-va-toc{display:flex;flex-wrap:wrap;gap:4px 18px;padding:12px 0;border-bottom:1px solid var(--vl)}
.ks-va .ks-va-toc a{font-size:13.5px;text-decoration:none;color:var(--vg)}.ks-va .ks-va-toc a:hover{color:var(--vk);background:var(--vh)}
.ks-va-sec{padding:40px 0 8px;scroll-margin-top:70px}
.ks-va-sh{display:grid;grid-template-columns:56px 1fr;column-gap:16px;margin-bottom:20px}
.ks-va-sh>span{font-family:var(--vm);font-size:12px;color:var(--vg);padding-top:10px;grid-row:span 2}
.ks-va-sh h2{font-size:32px!important;line-height:1.15!important}.ks-va-sh p{color:var(--vg);margin:6px 0 0;max-width:720px}
.ks-va-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:10px}
.ks-va-bar input{font:inherit;font-size:14px;padding:9px 12px;border:1px solid var(--vk);border-radius:6px;min-width:220px;background:#fff}
.ks-va-bar input:focus{outline:0;box-shadow:0 0 0 3px var(--vh)}
.ks-va-seg{display:flex;flex-wrap:wrap;gap:4px}.ks-va-seg button{font:inherit;font-size:12.5px;padding:6px 10px;border:1px solid var(--vl);background:#fff;border-radius:6px;cursor:pointer;color:var(--vk)}
.ks-va-seg button.is-on{background:var(--vh);border-color:var(--vk)}
.ks-va-bar select{font:inherit;font-size:13px;padding:7px 9px;border:1px solid var(--vl);border-radius:6px;background:#fff}
.ks-va-cnt{margin-left:auto;font-family:var(--vm);font-size:11.5px;color:var(--vg)}
.ks-va-idx{border-top:1px solid var(--vk)}
.ks-va-row{display:grid;grid-template-columns:1.3fr 1.3fr 1.4fr 1.3fr 60px;gap:12px;padding:11px 6px;border-bottom:1px solid var(--vl);align-items:baseline;font-size:14px;cursor:pointer;list-style:none}
.ks-va-row::-webkit-details-marker{display:none}
.ks-va-row--h{font-family:var(--vm);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--vg);cursor:default;border-bottom:1px solid var(--vk)}
.ks-va-row b{font-weight:600;font-size:15px}.ks-va-row span:last-child{text-align:center}
.ks-va-it summary:hover{background:var(--vw)}.ks-va-it[open]>summary{background:var(--vh)}
.ks-va-it.is-hid{display:none}.ks-va-it.is-hit>summary{background:var(--vh)}
.ks-va-dot{font-style:normal;font-size:12px}.ks-va-dot--o{color:var(--vg)}
.ks-va-card{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;padding:18px 6px 22px;border-bottom:1px solid var(--vk);background:#fff}
.ks-va-th{font-size:22px;line-height:1.25;margin:0 0 8px;letter-spacing:-.01em}
.ks-va-facts{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;margin:12px 0 0;font-size:13.5px}.ks-va-facts dt{font-family:var(--vm);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--vg)}.ks-va-facts dd{margin:0}
.ks-va-c2 ul{margin:0;padding-left:18px;font-size:14px}.ks-va-c2 li{margin-bottom:6px}
.ks-va-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;font-size:14px}
.ks-va .ks-va-btn{background:var(--vh);border:1px solid var(--vk);border-radius:6px;padding:7px 14px;text-decoration:none;font-weight:600}
.ks-va-mapw{overflow-x:auto;border:1px solid var(--vk)}
.ks-va-map{border-collapse:collapse;width:100%;min-width:900px;font-size:12.5px}
.ks-va-map th,.ks-va-map td{border:1px solid var(--vl);padding:8px;vertical-align:top;text-align:left}
.ks-va-map thead th{font-family:var(--vm);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--vg);font-weight:400;background:var(--vw)}
.ks-va-map tbody th{font-weight:600;width:150px;background:var(--vw)}
.ks-va-map td.is-e{background:repeating-linear-gradient(45deg,transparent 0 6px,#f2f2ee 6px 7px)}
.ks-va .ks-va-chip{display:inline-block;margin:0 4px 4px 0;padding:3px 7px;border:1px solid var(--vk);border-radius:4px;text-decoration:none;background:#fff;white-space:nowrap}
.ks-va .ks-va-chip:hover{background:var(--vh)}
.ks-va-note{font-size:13px;color:var(--vg);margin:12px 0 0}
.ks-va-mots{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:0;border-top:1px solid var(--vk);border-left:1px solid var(--vl)}
.ks-va-mt{padding:20px;border-right:1px solid var(--vl);border-bottom:1px solid var(--vl)}
.ks-va-n{font-family:var(--vm);font-size:12px;color:var(--vg)}.ks-va-mt h3{font-size:22px!important;margin:4px 0 12px!important}
.ks-va-mt dl{margin:0;font-size:13.5px}.ks-va-mt dt{font-family:var(--vm);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--vg);margin-top:8px}.ks-va-mt dd{margin:2px 0 0}
.ks-va-mt dd.ks-va-q{background:linear-gradient(transparent 55%,var(--vh) 55%);display:inline}
.ks-va-vs{font-size:12.5px;color:var(--vg);margin:14px 0 0;padding-top:10px;border-top:1px dashed var(--vl)}
.ks-va-fit{display:grid;grid-template-columns:1.6fr 1fr;border:1px solid var(--vk)}
.ks-va-fitl{padding:18px 20px}.ks-va-fitl label{display:grid;grid-template-columns:1fr 140px 18px;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--vl)}
.ks-va-fitl b{display:block;font-weight:600;font-size:14px}.ks-va-fitl small{display:block;color:var(--vg);font-size:12.5px;line-height:1.35}
.ks-va-fitl input{accent-color:var(--vk);width:100%}.ks-va-fitl output{font-family:var(--vm);font-size:13px}
.ks-va-fitr{background:var(--vk);color:#fff;padding:24px}.ks-va-fitr .ks-va-lab{color:#aaa}
.ks-va-score{font-size:72px;line-height:1;margin:0 0 10px}.ks-va-verd{display:inline-block;background:var(--vh);color:var(--vk);padding:4px 10px;border-radius:4px;font-weight:600;margin:0 0 12px}
.ks-va-verd.is-no{background:#fff}.ks-va-why{font-size:14px;color:#ddd;margin:0}
.ks-va-tl{list-style:none!important;margin:0 0 18px!important;padding:0!important;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--vk)}
.ks-va-tl li{padding:14px 12px 0 0;margin:0!important}.ks-va-tl time{display:block;font-size:30px}.ks-va-tl span{font-size:14px}
.ks-va-chk{margin:0;padding-left:18px;font-size:14px;columns:2;column-gap:32px}.ks-va-chk li{break-inside:avoid;margin-bottom:6px}
.ks-va-std{counter-reset:s;list-style:none!important;padding:0!important;margin:0!important;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--vk)}
.ks-va-std li{counter-increment:s;padding:12px 12px 12px 40px;position:relative;border-bottom:1px solid var(--vl);margin:0!important;font-size:14px}
.ks-va-std li:before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:13px;font-family:var(--vm);font-size:11px;color:var(--vg)}
.ks-va-std b{display:block;font-weight:600}.ks-va-std span{color:var(--vg)}
@media (max-width:860px){.ks-va-h{font-size:38px!important}.ks-va-tick{grid-template-columns:1fr 1fr}.ks-va-row{grid-template-columns:1.2fr 1fr 40px}.ks-va-row>*:nth-child(3),.ks-va-row>*:nth-child(4){display:none}.ks-va-card{grid-template-columns:1fr}.ks-va-fit{grid-template-columns:1fr}.ks-va-tl{grid-template-columns:1fr 1fr}.ks-va-std{grid-template-columns:1fr}.ks-va-chk{columns:1}}
@media (max-width:560px){.ks-va-h{font-size:31px!important}.ks-va-sh{grid-template-columns:1fr}.ks-va-sh>span{grid-row:auto;padding:0}.ks-va-fitl label{grid-template-columns:1fr 90px 14px}.ks-va-cnt{margin-left:0}}
/* == /KZSL VENDOR ATLAS CSS v1 == */

/* == KZSL BOOK GRID FIX: баннер «Продолжить чтение» не перекрывает размер шрифта; меньше пустот == */
@media (min-width:1120px){.ks-book{column-gap:56px;row-gap:18px;grid-template-areas:"toc head" "toc resume" "toc tools" "toc body"}.ks-book .ks-book__resume{grid-area:resume;margin:0}.ks-book .ks-book__head{padding-bottom:8px}}
.ks-book__resume{position:relative;z-index:1}

body.page .ks-page__content:has(.ks-wb){max-width:1080px}body.page .ks-page-wrap:has(.ks-wb){max-width:1128px}body.page .ks-page__content:has(.ks-wb) > :not(.alignwide){max-width:720px;margin-left:auto;margin-right:auto}
.ks-book .ks-book__resume{max-width:none;flex-wrap:nowrap}
/* == KZSL WORKBENCH CSS v1 — «тетрадь на столе»: бумага, цветные полки, без теней == */
.ks-wb{--wk:#191918;--wm:#615d59;--wl:#e6e3df;--wp:#f6f5f4;--wa:#ea580c;color:var(--wk);font-size:15px;line-height:1.55}
.ks-wb a{color:inherit;text-decoration:none}
.ks-wb-hero{background:var(--wp);border:1px solid var(--wl);border-radius:16px;padding:34px 34px 22px;margin-bottom:26px}
.ks-wb-pill{display:inline-block;background:#fde2d0;color:#9a3412;border-radius:999px;padding:4px 12px;font-size:12.5px;font-weight:600;margin:0 0 14px}
.ks-wb-h{font-size:44px!important;line-height:1.08!important;letter-spacing:-.03em;font-weight:700!important;margin:0 0 12px!important;max-width:820px}
.ks-wb-h em{font-style:normal;background:linear-gradient(transparent 62%,#fde2d0 62%)}
.ks-wb-lead{font-size:17px;color:#45413d;max-width:680px;margin:0 0 22px}
.ks-wb-ask{display:flex;gap:12px;align-items:flex-start;margin-bottom:10px}.ks-wb-ask>span{font-weight:700;padding-top:7px;min-width:62px}
.ks-wb-jobs,.ks-wb-roles{display:flex;flex-wrap:wrap;gap:6px}
.ks-wb-jobs button,.ks-wb-roles button{font:inherit;font-size:14px;border:1px solid var(--wl);background:#fff;border-radius:999px;padding:6px 13px;cursor:pointer;color:var(--wk);transition:all .15s}
.ks-wb-jobs button:hover,.ks-wb-roles button:hover{border-color:var(--wk)}
.ks-wb-jobs button.is-on,.ks-wb-roles button.is-on{background:var(--wk);color:#fff;border-color:var(--wk)}
.ks-wb-clear{font:inherit;font-size:13px;background:none;border:0;color:var(--wm);text-decoration:underline;cursor:pointer;margin-left:auto;padding-top:7px}
.ks-wb-hint{margin:8px 0 0;font-size:14px;color:var(--wm);min-height:1.4em}
.ks-wb-shelf{display:grid;grid-template-columns:210px 1fr;gap:20px;padding:20px 0;border-top:1px solid var(--wl)}
.ks-wb-sh h3{font-size:20px!important;font-weight:700!important;margin:0 0 6px!important;letter-spacing:-.01em}
.ks-wb-sh h3:before{content:"";display:inline-block;width:12px;height:12px;border-radius:4px;background:var(--wbc);margin-right:8px;border:1px solid rgba(0,0,0,.08)}
.ks-wb-sh p{font-size:13.5px;color:var(--wm);margin:0}
.ks-wb-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.ks-wb-card{display:flex;flex-direction:column;gap:8px;background:var(--wbc);border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:16px 16px 14px;transition:transform .2s cubic-bezier(.3,1.5,.6,1),opacity .2s,box-shadow .2s;min-height:220px}
.ks-wb-card:hover{transform:translateY(-3px) rotate(-.3deg)}
.ks-wb-card b{font-size:17px;line-height:1.25;letter-spacing:-.01em}
.ks-wb-time{align-self:flex-start;font-size:12px;font-weight:600;background:rgba(255,255,255,.75);border-radius:999px;padding:2px 9px}
.ks-wb-d{font-size:13.5px;color:#3f3b37}
.ks-wb-out{font-size:13.5px;background:rgba(255,255,255,.6);border-radius:8px;padding:8px 10px}.ks-wb-out i{display:block;font-style:normal;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--wm);margin-bottom:2px}
.ks-wb-for{font-size:12px;color:var(--wm)}
.ks-wb-go{margin-top:auto;font-weight:700;font-size:14px}
.ks-wb.is-f .ks-wb-card:not(.on){display:none}.ks-wb.is-f .ks-wb-card.on{box-shadow:0 0 0 2px var(--wk)}.ks-wb-shelf.is-e{display:none}
.ks-wb-h3{font-size:26px!important;font-weight:700!important;letter-spacing:-.02em;margin:34px 0 6px!important}
.ks-wb-sub{color:var(--wm);margin:0 0 16px}
.ks-wb-recs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ks-wb-rc{border:1px solid var(--wl);border-radius:12px;padding:16px;background:#fff}
.ks-wb-rc h4{font-size:16px!important;margin:0 0 6px!important;font-weight:700!important}.ks-wb-rc p{font-size:13px;color:var(--wm);margin:0 0 10px}
.ks-wb-rc ol{margin:0;padding-left:20px;font-size:14px}.ks-wb-rc li{margin-bottom:6px}.ks-wb-rc li a{font-weight:600;border-bottom:1px solid var(--wl)}.ks-wb-rc li a:hover{border-color:var(--wa)}.ks-wb-rc small{display:block;color:var(--wm);font-size:12px}
.ks-wb-rl{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.ks-wb-rl>div{background:var(--wp);border-radius:12px;padding:16px}
.ks-wb-rl span{display:inline-flex;width:26px;height:26px;border-radius:50%;background:var(--wk);color:#fff;align-items:center;justify-content:center;font-size:13px;font-weight:700;margin-bottom:8px}
.ks-wb-rl b{display:block;margin-bottom:4px}.ks-wb-rl p{font-size:13.5px;color:var(--wm);margin:0}
@media (max-width:900px){.ks-wb-shelf{grid-template-columns:1fr;gap:10px}.ks-wb-recs,.ks-wb-rl{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.ks-wb-hero{padding:22px 18px}.ks-wb-h{font-size:31px!important}.ks-wb-ask{flex-direction:column;gap:6px}.ks-wb-ask>span{padding:0}.ks-wb-clear{margin-left:0;padding:0}.ks-wb-recs,.ks-wb-rl{grid-template-columns:1fr}.ks-wb-card{min-height:0}}
/* KZSL WORKBENCH CSS v2 */
.ks-wb-ask>span{min-width:150px}.ks-wb-card h4{font-size:17px!important;line-height:1.25!important;margin:0!important;font-weight:700!important}.ks-wb-card h4 a{text-decoration:none}
.ks-wb-in{font-size:12.5px;color:var(--wm);margin:0}.ks-wb-in i,.ks-wb-out i{display:block;font-style:normal;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--wm);margin-bottom:2px}.ks-wb-out{margin:0}.ks-wb-d{margin:0}
.ks-wb-data{font-size:12.5px;background:rgba(255,255,255,.55);border-radius:8px;padding:6px 10px}.ks-wb-data summary{cursor:pointer;font-weight:600}.ks-wb-data p{margin:6px 0 2px;color:#3f3b37}
.ks-wb-card .ks-wb-go{text-decoration:none}.ks-wb-card:hover{transform:none}
.ks-wb-loop{list-style:none!important;padding:0!important;margin:18px 0 0!important;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.ks-wb-loop li{background:#fff;border-radius:10px;padding:10px 12px;margin:0!important;border:1px solid var(--wl)}.ks-wb-loop span{display:inline-flex;width:22px;height:22px;border-radius:50%;background:var(--wk);color:#fff;align-items:center;justify-content:center;font-size:12px;font-weight:700}.ks-wb-loop b{display:block;margin-top:4px}.ks-wb-loop em{display:block;font-style:normal;font-size:12.5px;color:var(--wm)}
.ks-wb-std{columns:2;column-gap:28px;padding-left:20px;font-size:14px}.ks-wb-std li{break-inside:avoid;margin-bottom:6px}
.ks-wb-map{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.ks-wb-map a{display:block;border:1px solid var(--wl);border-radius:10px;padding:10px 12px;background:#fff}.ks-wb-map a b{display:block}.ks-wb-map a span{font-size:13px;color:var(--wm)}.ks-wb-map a.is-here{background:var(--wk);color:#fff}.ks-wb-map a.is-here span{color:#d6d3d1}
@media (max-width:900px){.ks-wb-loop,.ks-wb-map{grid-template-columns:1fr 1fr}.ks-wb-std{columns:1}}
.ks-wb-card h4 a{color:var(--wk)!important;opacity:1!important}.ks-wb-card h4 a:hover{text-decoration:underline}
/* == /KZSL WORKBENCH CSS v1 == */

/* KZSL TAKEAWAY FIX: ярлык «Главное.» читаем на тёмном фоне */
.ks-takeaway strong,.ks-takeaway b,.ks-bm .ks-takeaway strong{color:#fdba74!important}

body.page .ks-page__content:has(.ks-so){max-width:1080px}body.page .ks-page-wrap:has(.ks-so){max-width:1128px}body.page .ks-page__content:has(.ks-so) > :not(.alignwide){max-width:720px;margin-left:auto;margin-right:auto}
/* == KZSL STARTUP OS CSS v1 — «полевой журнал»: бумага в клетку, графит, зелёные чернила; оранжевый только для действий == */
.ks-so{--sp:#f3f0e8;--si:#14211e;--sg:#1f4d45;--sm:#5d6a66;--sl:#d9d3c5;--sa:#ea580c;--sn:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--si);font-size:15px;line-height:1.55}
.ks-so a{color:var(--sg)}
.ks-so h2,.ks-so h3{color:var(--si);letter-spacing:-.015em;margin:0}
.ks-so-k{font-family:var(--sn);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sg);margin:0 0 8px}
.ks-so-muted{color:var(--sm);font-size:14px}
.ks-so-hero{background:linear-gradient(rgba(31,77,69,.07) 1px,transparent 1px) 0 0/22px 22px,linear-gradient(90deg,rgba(31,77,69,.07) 1px,transparent 1px) 0 0/22px 22px,var(--sp);border:1px solid var(--sl);border-radius:14px;padding:38px 36px 28px;margin-bottom:10px}
.ks-so-h{font-size:46px!important;line-height:1.05!important;font-weight:700!important;margin:0 0 14px!important;max-width:760px}
.ks-so-lead{font-size:17px;max-width:720px;color:#2c3a36;margin:0 0 22px}
.ks-so-entry{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:26px}
.ks-so .ks-so-door{display:block;text-decoration:none;background:#fff;border:1.5px solid var(--si);border-radius:10px;padding:16px 18px;color:var(--si);transition:transform .15s}
.ks-so .ks-so-door:hover{transform:translateY(-2px)}.ks-so-door small{display:block;font-family:var(--sn);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--sm)}.ks-so-door b{font-size:18px}
.ks-so .ks-so-door--main{background:var(--si);color:#fff}.ks-so-door--main small{color:#a7b8b3}
.ks-so-loop{list-style:none!important;margin:0!important;padding:0!important;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--sl)}
.ks-so-loop li{margin:0!important;position:relative}.ks-so-loop li:not(:first-child) a{padding-left:14px;border-left:1px solid var(--sl)}
.ks-so .ks-so-loop a{display:block;padding:14px 16px 0 0;text-decoration:none;color:var(--si)}.ks-so-loop span{font-family:var(--sn);font-size:12px;color:var(--sg)}.ks-so-loop b{display:block;font-size:16px}.ks-so-loop em{display:block;font-style:normal;font-size:13px;color:var(--sm)}.ks-so-loop small{font-family:var(--sn);font-size:11px;color:var(--sg)}
.ks-so-sec{padding:40px 0 6px;scroll-margin-top:70px}
.ks-so-sh{margin-bottom:18px;max-width:760px}.ks-so-sh>span{font-family:var(--sn);font-size:12px;color:var(--sg);letter-spacing:.08em;text-transform:uppercase}.ks-so-sh h2{font-size:30px!important;font-weight:700!important;margin:4px 0 6px!important}.ks-so-sh p{margin:0;color:var(--sm)}
.ks-so-btn{font:inherit;font-size:14px;font-weight:600;background:var(--sa);color:#fff;border:0;border-radius:8px;padding:9px 15px;cursor:pointer}.ks-so-btn:disabled{background:var(--sg);cursor:default}
.ks-so button{font-family:inherit}
.ks-so-assess{display:grid;grid-template-columns:1.55fr 1fr;gap:20px;align-items:start}
.ks-so-area{border:0;margin:0;padding:12px 0;background:linear-gradient(var(--sl),var(--sl)) top/100% 1px no-repeat}.ks-so-area legend{float:left;width:100%;padding:0;margin-bottom:6px}.ks-so-lad{clear:both}.ks-so-area legend b{display:block;font-size:15px}.ks-so-area legend span{font-size:13px;color:var(--sm)}
.ks-so-lad{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.ks-so-lad label{position:relative;display:block;cursor:pointer}.ks-so-lad input{position:absolute;opacity:0}
.ks-so-lad i{display:block;font-style:normal;font-family:var(--sn);font-size:11px;color:var(--sm)}
.ks-so-lad span{display:block;font-size:12px;line-height:1.3;border:1px solid var(--sl);border-radius:6px;padding:6px 7px;min-height:52px;background:#fff}
.ks-so-lad input:checked+i+span{background:var(--sg);color:#fff;border-color:var(--sg)}.ks-so-lad input:focus-visible+i+span{outline:2px solid var(--sa)}
.ks-so-indsel{display:block;margin-top:12px;font-size:14px}.ks-so-indsel select,.ks-so-dform select{font:inherit;font-size:14px;padding:7px 9px;border:1px solid var(--sl);border-radius:6px;background:#fff;margin-left:6px}
.ks-so-out{position:sticky;top:76px;background:var(--si);color:#e9efed;border-radius:12px;padding:20px}
.ks-so-out .ks-so-k{color:#8fd1c1}.ks-so-out .ks-so-muted,.ks-so-note{color:#a7b8b3;font-size:12.5px}.ks-so-out a{color:#fdba74}
.ks-so-stage b{display:block;font-size:24px;color:#fff}.ks-so-stage span{font-size:13px;color:#a7b8b3}
.ks-so-bars{display:grid;gap:3px;margin:14px 0}.ks-so-bars div{display:grid;grid-template-columns:1fr 90px;gap:8px;align-items:center;font-size:12px}
.ks-so-bars i{height:6px;border-radius:3px;background:linear-gradient(90deg,#8fd1c1 calc(var(--v)*25%),rgba(255,255,255,.12) 0)}
.ks-so-next{background:rgba(255,255,255,.07);border-radius:10px;padding:14px;margin:10px 0}.ks-so-next b{color:#fff;font-size:16px}.ks-so-next p{margin:6px 0;font-size:14px}.ks-so-why{color:#c9d6d2;font-size:13px!important}
.ks-so-gl{margin:0 0 10px;padding-left:18px;font-size:13px}.ks-so-indout{border-top:1px solid rgba(255,255,255,.15);padding-top:10px;font-size:13px}.ks-so-indout ul{padding-left:18px;margin:4px 0}
.ks-so-lf{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;background:#fff;border:1px solid var(--sl);border-radius:12px;padding:14px;margin-bottom:12px}
.ks-so-lf label{font-size:13px;color:var(--sm)}.ks-so-w2{grid-column:1/-1}
.ks-so-lf textarea,.ks-so-lf input,.ks-so-lf select,.ks-so-ef input,.ks-so-ef select,.ks-so-dec input,.ks-so-dec select,.ks-so-q textarea,.ks-so-dr textarea,.ks-so-it{display:block;width:100%;box-sizing:border-box;font:inherit;font-size:14px;padding:8px 10px;border:1px solid var(--sl);border-radius:6px;background:#fff;color:var(--si);margin-top:4px}
.ks-so-ltool{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:var(--sm);margin-bottom:12px}.ks-so-ltool span{margin-right:auto}
.ks-so-ltool button,.ks-so-imp,.ks-so-qn button:not(.ks-so-btn),.ks-so-dr>button{font:inherit;font-size:13px;border:1px solid var(--sl);background:#fff;border-radius:6px;padding:6px 10px;cursor:pointer;color:var(--si)}
.ks-so-imp input{display:none}.ks-so-danger{color:#b91c1c!important}
.ks-so-hyp{background:#fff;border:1px solid var(--sl);border-left:4px solid var(--sm);border-radius:10px;padding:14px 16px;margin-bottom:10px}
.ks-so-hyp.st-conf{border-left-color:#15803d}.ks-so-hyp.st-part{border-left-color:#ca8a04}.ks-so-hyp.st-ref{border-left-color:#b91c1c}
.ks-so-hyp header{display:flex;gap:8px;align-items:center;font-size:12px}.ks-so-st{font-family:var(--sn);text-transform:uppercase;letter-spacing:.06em;font-weight:700}
.ks-so-tag{background:var(--sp);border-radius:4px;padding:1px 7px}.ks-so-hyp time{color:var(--sm);margin-left:auto}
.ks-so-x{border:0;background:none;font-size:18px;line-height:1;cursor:pointer;color:var(--sm)}
.ks-so-ht{font-size:16px;font-weight:600;margin:8px 0 4px}.ks-so-rf{font-size:13px;color:var(--sm);margin:0 0 8px}
.ks-so-meter{position:relative;height:8px;border-radius:4px;background:linear-gradient(90deg,#fecaca,#f5f5f4 50%,#bbf7d0);margin:6px 0 20px}.ks-so-meter i{position:absolute;top:-4px;width:4px;height:16px;background:var(--si);border-radius:2px;transform:translateX(-2px)}
.ks-so-meter span{position:absolute;top:10px;font-size:10px;color:var(--sm)}.ks-so-meter span:last-child{right:0}
.ks-so-sc{font-size:13px;margin:0 0 6px}.ks-so-sc em{color:#b45309;font-style:normal}
.ks-so-evl{margin:0 0 8px;padding-left:0;list-style:none!important;font-size:13px}.ks-so-evl li{padding:4px 0;border-top:1px dashed var(--sl);margin:0!important}.ks-so-evl li.pos b{color:#15803d}.ks-so-evl li.neg b{color:#b91c1c}.ks-so-evl span{color:var(--sm)}.ks-so-evl button{border:0;background:none;color:var(--sm);cursor:pointer}
.ks-so-ef{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr .9fr auto;gap:6px;align-items:end;font-size:13px}.ks-so-ef button{font:inherit;font-size:13px;border:1px solid var(--sg);color:var(--sg);background:#fff;border-radius:6px;padding:8px 10px;cursor:pointer}
.ks-so-dec{display:grid;grid-template-columns:220px 1fr;gap:8px;margin-top:8px;font-size:13px;color:var(--sm)}
.ks-so-formula{margin-top:14px;font-size:14px;background:var(--sp);border-radius:10px;padding:12px 16px}.ks-so-formula summary{cursor:pointer;font-weight:600}
.ks-so-dform{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:var(--sp);border-radius:12px;padding:16px;margin-bottom:14px}.ks-so-dform label{font-size:13px;color:var(--sm)}.ks-so-dform select{display:block;width:100%;margin:4px 0 0}
.ks-so-top{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ks-so-chc{position:relative;background:#fff;border:1px solid var(--sl);border-radius:12px;padding:16px}.ks-so-rank{position:absolute;top:12px;right:14px;font-family:var(--sn);font-size:22px;color:var(--sl)}
.ks-so-chc h3{font-size:18px!important;margin:0 0 6px!important;padding-right:24px}.ks-so-chc>p{font-size:13.5px;color:#2c3a36}
.ks-so-rs{list-style:none!important;padding:0!important;margin:0 0 10px!important;font-size:12.5px}.ks-so-rs li{margin:0!important}.ks-so-rs .p{color:#15803d}.ks-so-rs .m{color:#b91c1c}
.ks-so-chc dl{font-size:13px;margin:0 0 12px}.ks-so-chc dt{font-family:var(--sn);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--sg);margin-top:6px}.ks-so-chc dd{margin:0}
.ks-so-chmap{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}.ks-so-chcat h3{font-size:15px!important;border-bottom:2px solid var(--si);padding-bottom:4px;margin-bottom:6px!important}
.ks-so-chcat ul{list-style:none!important;padding:0!important;margin:0!important}.ks-so-chcat li{font-size:13px;padding:6px 0;border-bottom:1px solid var(--sl);margin:0!important}.ks-so-chcat li b{display:block;font-size:14px}.ks-so-chcat li span{display:block;color:var(--sm)}
.ks-so-sec--disc .ks-so-disc{background:#fff;border:1px solid var(--sl);border-radius:14px;padding:22px}
.ks-so-qp{display:flex;align-items:center;gap:12px;margin-bottom:14px;font-family:var(--sn);font-size:12px;color:var(--sg)}.ks-so-qp i{display:block;height:4px;background:var(--sg);border-radius:2px;flex:0 0 auto;max-width:60%}
.ks-so-q label b{display:block;font-size:20px;line-height:1.3}.ks-so-q label small{display:block;color:var(--sm);font-size:13px;margin-top:4px}
.ks-so-tip{font-size:12.5px;color:var(--sm);margin:6px 0 12px}.ks-so-qn{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ks-so-dr h3{font-size:20px!important;margin:20px 0 4px!important}
.ks-so-idea{border:1px solid var(--sl);border-radius:10px;padding:12px;margin-bottom:10px;background:var(--sp)}
.ks-so-ih{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center}.ks-so-ih b{font-family:var(--sn);font-size:14px}.ks-so-ih button{border:0;background:none;font-size:18px;cursor:pointer;color:var(--sm)}
.ks-so-cr{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:10px 0}.ks-so-cr label{font-size:12px;color:var(--sm)}.ks-so-cr select{display:block;width:100%;font:inherit;font-size:13px;padding:4px;border:1px solid var(--sl);border-radius:4px;margin:2px 0}.ks-so-cr em{font-style:normal;font-family:var(--sn);color:var(--sg);letter-spacing:1px}
.ks-so-ck{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px}.ks-so-cap{font-size:12.5px;color:#b45309;margin:6px 0 0}.ks-so-risk{font-size:13.5px;margin:6px 0 0}
.ks-so-win{background:var(--si);color:#e9efed;border-radius:12px;padding:16px 18px;margin-top:14px}.ks-so-win .ks-so-k{color:#8fd1c1}.ks-so-win b{font-size:18px;color:#fff}.ks-so-win p{font-size:14px}
.ks-so-inds{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.ks-so-indc{border:1px solid var(--sl);border-radius:10px;background:#fff;padding:0 16px}.ks-so-indc summary{cursor:pointer;padding:12px 0;font-weight:700}.ks-so-indc h4{font-family:var(--sn);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--sg);margin:8px 0 2px}.ks-so-indc ul{margin:0 0 8px;padding-left:18px;font-size:14px}
.ks-so-stg{list-style:none!important;padding:0!important;margin:0!important;display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:2px solid var(--si)}
.ks-so-stg li{padding:12px 12px 0 0;margin:0!important}.ks-so-stg span{font-family:var(--sn);font-size:12px;color:var(--sg)}.ks-so-stg b{display:block;font-size:16px}.ks-so-stg p{font-size:13px;color:var(--sm);margin:4px 0}.ks-so-stg em{font-size:12.5px;font-style:normal;color:var(--sg)}
.ks-so-pr{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.ks-so-pr>div{background:var(--sp);border-radius:10px;padding:14px}.ks-so-pr span{font-family:var(--sn);color:var(--sg)}.ks-so-pr b{display:block;margin:4px 0}.ks-so-pr p{font-size:13px;color:var(--sm);margin:0}
.ks-so-priv{margin-top:12px;border:1px dashed var(--sg);border-radius:10px;padding:14px 16px;font-size:14px}
@media (max-width:900px){.ks-so-assess{grid-template-columns:1fr}.ks-so-out{position:static}.ks-so-top,.ks-so-chmap{grid-template-columns:1fr}.ks-so-dform{grid-template-columns:1fr 1fr}.ks-so-stg,.ks-so-pr{grid-template-columns:1fr 1fr}.ks-so-cr{grid-template-columns:repeat(3,1fr)}.ks-so-ef{grid-template-columns:1fr 1fr}.ks-so-loop{grid-template-columns:1fr 1fr}.ks-so-loop li:after{display:none}}
@media (max-width:560px){.ks-so-hero{padding:24px 18px}.ks-so-h{font-size:32px!important}.ks-so-entry,.ks-so-inds,.ks-so-dform,.ks-so-lf,.ks-so-dec{grid-template-columns:1fr}.ks-so-lad{grid-template-columns:1fr}.ks-so-lad span{min-height:0}.ks-so-stg,.ks-so-pr{grid-template-columns:1fr}.ks-so-cr{grid-template-columns:1fr 1fr}}
/* == /KZSL STARTUP OS CSS v1 == */

.ks-nav__toolslink{white-space:nowrap}

/* == KZSL PEEK CSS v1: панель справа на десктопе, нижний лист на телефоне (как в супер-приложениях) == */
html.ks-pk-lock{overflow:hidden}
.ks-pk{position:fixed;inset:0;z-index:100000;pointer-events:none}
.ks-pk-ov{position:absolute;inset:0;background:rgba(20,20,18,.42);opacity:0;transition:opacity .25s}
.ks-pk-p{position:absolute;top:0;right:0;bottom:0;width:min(560px,100%);background:#fff;box-shadow:-20px 0 60px rgba(0,0,0,.18);transform:translateX(104%);transition:transform .38s cubic-bezier(.2,.9,.25,1);display:flex;flex-direction:column;font-size:15px;line-height:1.55;color:#1c1917}
.ks-pk.is-on{pointer-events:auto}.ks-pk.is-on .ks-pk-ov{opacity:1}.ks-pk.is-on .ks-pk-p{transform:none}
.ks-pk-h{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid #eee}
.ks-pk-b{flex:0 0 auto;width:40px;height:40px;border-radius:12px;border:0;background:#f4f2ee;font-size:20px;line-height:1;cursor:pointer;color:#1c1917}
.ks-pk-b:hover{background:#e9e5de}
.ks-pk-trail{flex:1;min-width:0;display:flex;flex-wrap:nowrap;overflow:hidden;gap:6px;align-items:center;font-size:12.5px;color:#78716c;white-space:nowrap}
.ks-pk-trail span{overflow:hidden;text-overflow:ellipsis}.ks-pk-trail .is-cur{color:#1c1917;font-weight:600}.ks-pk-trail i{font-style:normal;color:#c4bfb6}
.ks-pk-c{flex:1;overflow-y:auto;padding:22px 24px 30px;outline:none;overscroll-behavior:contain}
.ks-pk-k{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ea580c;margin:0 0 6px}
.ks-pk-t{font-size:24px!important;line-height:1.2!important;margin:0 0 16px!important;font-weight:700!important;letter-spacing:-.015em}
.ks-pk-steps{list-style:none!important;padding:0!important;margin:10px 0!important}
.ks-pk-steps li{display:flex;align-items:center;gap:10px;padding:10px 0;margin:0!important;color:#78716c;opacity:0;animation:ksPkIn .35s var(--d) forwards}
.ks-pk-steps b{width:18px;height:18px;border-radius:50%;border:2px solid #e7e2da;border-top-color:#ea580c;animation:ksPkSpin .8s linear infinite}
@keyframes ksPkSpin{to{transform:rotate(360deg)}}@keyframes ksPkIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.ks-pk-m{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}
.ks-pk-m>div{background:#f7f5f2;border-radius:14px;padding:12px 10px;opacity:0;animation:ksPkIn .4s var(--d) forwards}.ks-pk-m b{display:block;font-size:22px;line-height:1.1}.ks-pk-m span{font-size:12px;color:#78716c}
.ks-pk-s{opacity:0;animation:ksPkIn .4s var(--d) forwards;margin-bottom:18px}.ks-pk-s h3,.ks-pk-local h4{font-size:13px!important;text-transform:uppercase;letter-spacing:.06em;color:#78716c;margin:0 0 6px!important;font-weight:700!important}
.ks-pk-s p{margin:0}.ks-pk-hs{margin:0;padding-left:20px}.ks-pk-hs li{margin-bottom:4px}
.ks-pk a{color:#1c1917;text-decoration:underline;text-decoration-color:#d6d3d1;text-underline-offset:3px}.ks-pk a:hover{text-decoration-color:#ea580c}
.ks-pk-rel{list-style:none!important;padding:0!important;margin:0!important}.ks-pk-rel li{margin:0!important;border-bottom:1px solid #f1efeb}
.ks-pk .ks-pk-rel a{display:block;padding:10px 0 2px;text-decoration:none;font-weight:600}.ks-pk-rel a:after{content:" →";color:#ea580c}.ks-pk-rel small{display:block;padding-bottom:8px;font-size:12px;color:#a8a29e}
.ks-pk-go{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px;opacity:0;animation:ksPkIn .4s var(--d,0ms) forwards}
.ks-pk .ks-pk-btn{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;border-radius:14px;background:#ea580c;color:#fff!important;text-decoration:none;font-weight:700;border:0;cursor:pointer;font:inherit;font-weight:700}
.ks-pk-b2{min-height:46px;padding:0 16px;border-radius:14px;border:1px solid #e7e2da;background:#fff;font:inherit;cursor:pointer;color:#1c1917}
.ks-pk-note,.ks-pk-tip{font-size:12.5px;color:#a8a29e;margin:14px 0 0}.ks-pk-lead{font-size:15.5px;margin:0 0 14px}
.ks-pk-local{animation:ksPkIn .35s forwards}.ks-pk-local ol,.ks-pk-local ul{padding-left:20px;margin:0 0 14px}.ks-pk-local li{margin-bottom:4px}
.ks-pk .ks-so-stack{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
@media (max-width:640px){.ks-pk-p{top:auto;left:0;width:100%;height:88vh;border-radius:22px 22px 0 0;transform:translateY(104%);box-shadow:0 -20px 60px rgba(0,0,0,.2)}.ks-pk-h:before{content:"";position:absolute;left:50%;top:6px;width:40px;height:4px;border-radius:2px;background:#d6d3d1;transform:translateX(-50%)}.ks-pk-h{position:relative;padding-top:16px}.ks-pk-m{grid-template-columns:1fr 1fr}.ks-pk-c{padding:18px 18px 28px}}
@media (prefers-reduced-motion:reduce){.ks-pk-p,.ks-pk-ov{transition:none}.ks-pk-steps li,.ks-pk-m>div,.ks-pk-s,.ks-pk-go,.ks-pk-local{animation:none;opacity:1}}
/* KZSL PEEK FIX1 */.ks-pk h2,.ks-pk h3,.ks-pk h4{color:#1c1917!important;font-family:inherit!important}.ks-pk .ks-pk-s h3,.ks-pk .ks-pk-local h4{color:#78716c!important}
/* == /KZSL PEEK CSS v1 == */
/* == KZSL STARTUP OS CSS v1.1 == */
.ks-so-indbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:14px}.ks-so-seg{display:flex;gap:4px;background:#ebe7de;border-radius:12px;padding:4px}
.ks-so-seg button{font:inherit;font-size:13.5px;border:0;background:none;border-radius:9px;padding:8px 12px;cursor:pointer;color:var(--si)}.ks-so-seg button.is-on{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08);font-weight:600}
#ks-so-indq{font:inherit;font-size:14px;padding:9px 12px;border:1px solid var(--sl);border-radius:10px;min-width:220px;background:#fff}
.ks-so-indg{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.ks-so-indg .ks-so-indc{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--sl);border-radius:14px;padding:14px;transition:transform .15s,box-shadow .15s}
.ks-so-indg .ks-so-indc:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(20,33,30,.07)}
.ks-so-indg .ks-so-indc.is-ai{background:linear-gradient(160deg,#fff 60%,#e7f3ef)}
.ks-so-indk{font-family:var(--sn);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--sg)}.is-ai .ks-so-indk{color:#0f766e}
.ks-so-indg h3{font-size:16px!important;margin:0!important}.ks-so-indg p{font-size:13px;color:var(--sm);margin:0;flex:1}
.ks-so-indopen{align-self:flex-start;font:inherit;font-size:13.5px;font-weight:600;border:0;background:var(--sp);border-radius:10px;padding:8px 12px;cursor:pointer;color:var(--si)}.ks-so-indopen:hover{background:var(--si);color:#fff}
.ks-so-stack{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:6px 0 10px}
.ks-so .ks-so-chip,.ks-pk .ks-so-chip{display:block;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:7px 9px;text-decoration:none;color:#fff}
.ks-pk .ks-so-chip{background:#f7f5f2;border-color:#ece7df;color:#1c1917}
.ks-so-chip b{display:block;font-size:13px}.ks-so-chip small{font-size:11.5px;opacity:.75}
.ks-so-next{animation:ksPkIn .4s both}.ks-so-stage{animation:ksPkIn .35s both}
.ks-so-pulse{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:10px;margin:0 0 12px}.ks-so-pc{background:#fff;border:1px solid var(--sl);border-radius:14px;padding:12px 14px}
.ks-so-stk{display:flex;height:12px;border-radius:6px;overflow:hidden;background:var(--sp);margin:6px 0}.ks-so-stk i{display:block;animation:ksSoGrow .6s both}.ks-so-stk .conf{background:#15803d}.ks-so-stk .part{background:#ca8a04}.ks-so-stk .open{background:#a8a29e}.ks-so-stk .ref{background:#b91c1c}
@keyframes ksSoGrow{from{transform:scaleX(0);transform-origin:left}to{transform:none}}
.ks-so-big{display:block;font-size:30px;line-height:1.1}.ks-so-spark{display:flex;align-items:flex-end;gap:4px;height:40px;margin:6px 0}.ks-so-spark i{flex:1;background:var(--sg);border-radius:3px 3px 0 0;animation:ksSoUp .5s both}
@keyframes ksSoUp{from{transform:scaleY(0);transform-origin:bottom}to{transform:none}}
@media (max-width:760px){.ks-so-pulse{grid-template-columns:1fr}}
/* == /KZSL STARTUP OS CSS v1.1 == */


/* == KZSL PROVENANCE CSS v1: «нотариальная бумага» — тонкие линии, без теней, один акцент == */
.ks-pv{--pp:#f7f5ee;--pp2:#efece2;--ink:#172033;--mu:#5d6475;--ln:#d9d4c4;--ac:#0f766e;--acs:#d6efe9;--bad:#b42318;--bads:#fde4e1;font-family:inherit;color:var(--ink);margin:8px auto 40px}
body.page .ks-page__content:has(.ks-pv){max-width:1080px}
.ks-page-wrap:has(.ks-pv){max-width:1128px}
body.page .ks-page__content:has(.ks-pv)>:not(.alignwide){max-width:720px;margin-left:auto;margin-right:auto}
.ks-pv code,.ks-pv-root,.ks-pv-line code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.ks-pv section{margin:0 0 48px}
.ks-pv-hero{display:grid;grid-template-columns:1.25fr .9fr;gap:32px;background:var(--pp);border:1px solid var(--ln);border-radius:10px;padding:40px;position:relative;overflow:hidden}
.ks-pv-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 27px,rgba(23,32,51,.045) 27px 28px);pointer-events:none}
.ks-pv-hero>*{position:relative}
.ks-pv-k{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ac);font-weight:700;margin:0 0 12px}
.ks-pv-h{font-size:clamp(26px,3.4vw,40px);line-height:1.12;margin:0 0 16px;color:var(--ink);font-weight:800;letter-spacing:-.01em}
.ks-pv-lead{font-size:17px;line-height:1.6;color:#333b4d;margin:0}
.ks-pv-seal{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px}
.ks-pv-seal__ring{width:168px;height:168px;border-radius:50%;border:1px solid var(--ac);outline:6px solid var(--pp);box-shadow:0 0 0 7px var(--ac);display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--acs);animation:ksPvSpinIn 1.1s cubic-bezier(.2,.8,.2,1) both}
.ks-pv-seal__ring span{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ac);font-weight:700}
.ks-pv-seal__ring b{font-size:40px;line-height:1;color:var(--ink);margin:4px 0}
.ks-pv-seal__ring small{font-size:12px;line-height:1.25;color:var(--mu)}
.ks-pv-seal__lbl{font-size:12px;color:var(--mu);margin:12px 0 0;text-transform:uppercase;letter-spacing:.1em}
.ks-pv-root{display:block;max-width:100%;font-size:12px;line-height:1.5;word-break:break-all;background:#fff;border:1px dashed var(--ac);border-radius:8px;padding:8px 12px;color:var(--ink)}
.ks-pv-seal__meta{font-size:13px;color:var(--mu);margin:0}
@keyframes ksPvSpinIn{from{transform:rotate(-40deg) scale(.86);opacity:0}to{transform:none;opacity:1}}
.ks-pv-sh{display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:baseline;margin:0 0 20px;border-top:1px solid var(--ink);padding-top:16px}
.ks-pv-sh span{font-family:ui-monospace,Menlo,monospace;font-size:13px;color:var(--ac);font-weight:700}
.ks-pv-sh h2{margin:0;font-size:26px;line-height:1.2;color:var(--ink)}
.ks-pv-sh p{grid-column:2;margin:8px 0 0;color:var(--mu);font-size:15px;line-height:1.55;max-width:680px}
.ks-pv-form{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.ks-pv-in{flex:1 1 360px;display:flex;flex-direction:column;gap:4px}
.ks-pv-in span{font-size:12px;color:var(--mu);text-transform:uppercase;letter-spacing:.08em}
.ks-pv-in input{font:inherit;font-size:15px;padding:12px 16px;border:1px solid var(--ink);border-radius:8px;background:#fff;color:var(--ink);min-height:48px;box-sizing:border-box}
.ks-pv-in input:focus{outline:2px solid var(--ac);outline-offset:2px}
.ks-pv-btn{font:inherit;font-weight:700;font-size:15px;min-height:48px;padding:0 24px;border-radius:8px;border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:transform .15s}
.ks-pv-btn:hover{transform:translateY(-1px)}
.ks-pv-btn--g{background:transparent;color:var(--ink)}
.ks-pv-ex{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.ks-pv-ex button{font:inherit;font-size:13px;border:1px solid var(--ln);background:var(--pp);color:var(--ink);border-radius:999px;padding:6px 12px;cursor:pointer}
.ks-pv-ex button:hover{border-color:var(--ac);color:var(--ac)}
.ks-pv-run{display:grid;grid-template-columns:minmax(240px,.8fr) 1.2fr;gap:24px;margin-top:24px;border:1px solid var(--ln);border-radius:10px;padding:24px;background:#fff}
.ks-pv-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;counter-reset:s}
.ks-pv-steps li{position:relative;padding:8px 0 12px 40px;color:var(--mu);opacity:.45;transition:opacity .3s}
.ks-pv-steps li:before{counter-increment:s;content:counter(s);position:absolute;left:0;top:6px;width:28px;height:28px;border-radius:50%;border:1px solid var(--ln);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;background:#fff}
.ks-pv-steps li:not(:last-child):after{content:"";position:absolute;left:14px;top:36px;bottom:-4px;width:1px;background:var(--ln)}
.ks-pv-steps li b{display:block;color:var(--ink);font-size:15px}
.ks-pv-steps li span{font-size:13px}
.ks-pv-steps li.is-on{opacity:1}
.ks-pv-steps li.is-on:before{border-color:var(--ac);color:var(--ac);animation:ksPvPulse 1s infinite}
.ks-pv-steps li.is-ok{opacity:1}
.ks-pv-steps li.is-ok:before{content:"✓";background:var(--ac);border-color:var(--ac);color:#fff;animation:none}
.ks-pv-steps li.is-bad:before{content:"!";background:var(--bad);border-color:var(--bad);color:#fff}
@keyframes ksPvPulse{50%{box-shadow:0 0 0 6px var(--acs)}}
.ks-pv-out{min-height:200px}
.ks-pv-verdict{display:flex;gap:16px;align-items:flex-start;padding:16px;border-radius:8px;background:var(--acs);border:1px solid var(--ac);margin:0 0 16px;animation:ksPvUp .4s both}
.ks-pv-verdict.is-bad{background:var(--bads);border-color:var(--bad)}
.ks-pv-verdict i{font-style:normal;width:40px;height:40px;flex:0 0 40px;border-radius:50%;background:var(--ac);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800}
.ks-pv-verdict.is-bad i{background:var(--bad)}
.ks-pv-verdict b{display:block;font-size:17px;margin-bottom:4px}
.ks-pv-verdict p{margin:0;font-size:14px;line-height:1.5;color:#333b4d}
.ks-pv-facts{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;font-size:13px;margin:0 0 16px}
.ks-pv-facts dt{color:var(--mu)}
.ks-pv-facts dd{margin:0;word-break:break-all}
.ks-pv-facts dd code{font-size:12px}
.ks-pv-path{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}
.ks-pv-path li{display:grid;grid-template-columns:72px 1fr;gap:8px;align-items:center;font-size:12px;opacity:0;animation:ksPvUp .35s both}
.ks-pv-path li em{font-style:normal;color:var(--mu);text-align:right}
.ks-pv-path li code{display:block;padding:4px 8px;border:1px solid var(--ln);border-radius:6px;background:var(--pp);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ks-pv-path li.is-leaf code{border-color:var(--ink);background:#fff}
.ks-pv-path li.is-root code{border-color:var(--ac);background:var(--acs);font-weight:700}
@keyframes ksPvUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.ks-pv-chainbar{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:0 0 16px;font-size:14px}
.ks-pv-blocks{list-style:none;margin:0;padding:4px 0 12px;display:flex;gap:0;overflow-x:auto;scroll-snap-type:x proximity}
.ks-pv-blocks li{flex:0 0 200px;scroll-snap-align:start;border:1px solid var(--ln);border-radius:8px;padding:12px;background:#fff;font-size:12px;position:relative;margin-right:24px}
.ks-pv-blocks li:not(:last-child):after{content:"";position:absolute;right:-25px;top:50%;width:24px;height:1px;background:var(--ink)}
.ks-pv-blocks li b{display:block;font-size:13px;margin-bottom:4px}
.ks-pv-blocks li code{display:block;font-size:11px;color:var(--mu);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ks-pv-blocks li.is-ok{border-color:var(--ac)}
.ks-pv-blocks li.is-bad{border-color:var(--bad);background:var(--bads)}
.ks-pv-blocks li.ks-pv-ph{flex-basis:100%;color:var(--mu)}
.ks-pv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ks-pv-grid article{border:1px solid var(--ln);border-radius:10px;padding:20px;background:var(--pp)}
.ks-pv-grid i{font-style:normal;font-family:ui-monospace,Menlo,monospace;color:var(--ac);font-weight:700}
.ks-pv-grid h3{margin:8px 0;font-size:17px;color:var(--ink)}
.ks-pv-grid p{margin:0;font-size:14px;line-height:1.55;color:#333b4d}
.ks-pv-honest{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}
.ks-pv-honest>div{border-top:2px solid var(--ac);padding:12px 0 0}
.ks-pv-honest>div+div{border-top-color:var(--mu)}
.ks-pv-honest h3{font-size:16px;margin:0 0 8px;color:var(--ink)}
.ks-pv-honest ul{margin:0;padding-left:18px;font-size:14px;line-height:1.6;color:#333b4d}
.ks-pv-api{font-size:13px;color:var(--mu)}
.ks-pv-api a{color:var(--ac)}
.ks-pv-wal{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:0 0 16px}
.ks-pv-wal article{border:1px solid var(--ln);border-radius:10px;padding:16px;background:#fff;display:flex;flex-direction:column;gap:4px}
.ks-pv-wal article h3{margin:0;font-size:15px;color:var(--ink)}
.ks-pv-wal article p{margin:0;font-size:13px;color:var(--mu)}
.ks-pv-wal article button{align-self:flex-start;margin-top:8px;font:inherit;font-size:13px;background:none;border:1px solid var(--ln);border-radius:6px;padding:4px 10px;cursor:pointer;color:var(--ink)}
.ks-pv-wal article button:hover{border-color:var(--bad);color:var(--bad)}
.ks-pv-wal .ks-pv-empty{grid-column:1/-1;border-style:dashed;color:var(--mu);font-size:14px}
.ks-pv-walbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:14px}
.ks-pv-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px!important;color:#6b7280;border-top:1px solid #e7e5e4;padding-top:12px;margin-top:32px!important}
.ks-pv-line code{font-size:12px;background:#f5f5f4;padding:2px 6px;border-radius:4px}
.ks-pv-line a{color:#0f766e}
.ks-pv-dot{width:8px;height:8px;border-radius:50%;background:#0f766e;display:inline-block}
.ks-pk-pv{border:1px solid #cfe7e1;background:#f2faf8;border-radius:10px;padding:12px 14px;margin:16px 0 0;font-size:13px;color:#334155;animation:ksPvUp .4s both}
.ks-pk-pv b{color:#0f766e}
.ks-pk-pv code{font-size:12px}
.ks-pk-pv a{color:#0f766e}
@media (max-width:860px){.ks-pv-hero{grid-template-columns:1fr;padding:24px}.ks-pv-grid{grid-template-columns:1fr 1fr}.ks-pv-run{grid-template-columns:1fr}.ks-pv-honest{grid-template-columns:1fr}}
@media (max-width:520px){.ks-pv-grid{grid-template-columns:1fr}.ks-pv-sh{grid-template-columns:1fr}.ks-pv-sh p{grid-column:1}.ks-pv-btn{width:100%;justify-content:center}.ks-pv-seal__ring{width:136px;height:136px}.ks-pv-seal__ring b{font-size:32px}}
@media (prefers-reduced-motion:reduce){.ks-pv *{animation:none!important;transition:none!important}.ks-pv-path li{opacity:1}}
/* == /KZSL PROVENANCE CSS v1 == */

.ks-pv .ks-pv-h{font-size:clamp(28px,3.6vw,42px)!important;line-height:1.1!important;font-weight:800!important;margin:0 0 16px!important;color:#172033!important}.ks-pv .ks-pv-sh h2{font-size:clamp(22px,2.4vw,28px)!important}

/* == KZSL OSS DECK CSS v1: тёмная «командная палуба» — стекло, фиолетовый ореол, один зелёный акцент == */
.ks-osd{--void:#0d1117;--edge:#21262d;--fog:#484f58;--pearl:#a4aea6;--snow:#fff;--green:#08872b;--phos:#5fed83;--uv:#8c93fb;--sky:#8dd6ff;background:var(--void);color:var(--snow);border-radius:24px;padding:64px 48px;margin:0 auto 56px;position:relative;overflow:hidden;font-feature-settings:"ss01","cv11"}
body.page .ks-page__content:has(.ks-osd){max-width:1200px}
.ks-page-wrap:has(.ks-osd){max-width:1248px}
body.page .ks-page__content:has(.ks-osd)>:not(.alignwide){max-width:720px;margin-left:auto;margin-right:auto}
.ks-osd .ks-osd-mono,.ks-osd-k{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--pearl);font-weight:500;margin:0}
.ks-osd section{position:relative;z-index:1}
.ks-osd-hero{text-align:center;padding:16px 0 56px}
.ks-osd-halo{position:absolute;left:50%;top:-80px;width:820px;height:520px;transform:translateX(-50%);background:radial-gradient(closest-side,rgba(167,162,255,.5),transparent);filter:blur(60px);opacity:.55;pointer-events:none;animation:ksOsdBreath 9s ease-in-out infinite alternate}
@keyframes ksOsdBreath{to{opacity:.8;transform:translateX(-50%) scale(1.08)}}
.ks-osd-k{color:var(--phos)!important;margin-bottom:20px!important}
.ks-osd .ks-osd-h{font-size:clamp(32px,5.2vw,60px)!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:500!important;color:var(--snow)!important;margin:0 auto 20px!important;max-width:900px}
.ks-osd-sub{font-size:18px;line-height:1.5;color:var(--pearl);max-width:640px;margin:0 auto 40px}
.ks-osd-term{max-width:880px;margin:0 auto;text-align:left;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:24px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);overflow:hidden}
.ks-osd-term__bar{display:flex;align-items:center;gap:8px;padding:12px 20px;border-bottom:1px solid var(--edge)}
.ks-osd-term__bar i{width:10px;height:10px;border-radius:50%;background:var(--fog)}
.ks-osd-term__bar span{margin-left:8px;font:12px ui-monospace,Menlo,monospace;color:var(--pearl)}
.ks-osd-chips{display:flex;flex-wrap:wrap;gap:8px;padding:20px}
.ks-osd-chip{font:inherit;font-size:14px;color:var(--snow);background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:60px;padding:8px 16px;cursor:pointer;transition:transform .2s ease,opacity .2s ease}
.ks-osd-chip:hover{transform:translateY(-1px)}
.ks-osd-chip.is-on{background:var(--snow);color:var(--void);border-color:var(--snow)}
.ks-osd-out{border-top:1px solid var(--edge);padding:20px;min-height:180px;font:14px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--pearl)}
.ks-osd-prompt{margin:0}
.ks-osd-prompt b{color:var(--phos)}
.ks-osd-caret{display:inline-block;width:8px;height:16px;background:var(--phos);margin-left:6px;vertical-align:-3px;animation:ksOsdBlink 1s steps(1) infinite}
@keyframes ksOsdBlink{50%{opacity:0}}
.ks-osd-res{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.ks-osd-res li{opacity:0;transform:translateY(6px);animation:ksOsdIn .4s cubic-bezier(.16,1,.3,1) forwards}
.ks-osd-res a{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding:12px 16px;border:1px solid var(--edge);border-radius:12px;color:var(--snow)!important;text-decoration:none!important;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;transition:transform .2s ease}
.ks-osd-res a:hover{transform:translateX(4px);border-color:var(--uv)}
.ks-osd-res b{font-size:16px;font-weight:600}
.ks-osd-res small{grid-column:1/-1;color:var(--pearl);font-size:13px;line-height:1.45}
.ks-osd-res em{font-style:normal;font:12px ui-monospace,Menlo,monospace;color:var(--sky);align-self:center}
@keyframes ksOsdIn{to{opacity:1;transform:none}}
.ks-osd-cta{display:inline-flex;margin-top:16px;background:var(--green);color:#fff!important;border-radius:6px;padding:8px 20px;font:500 15px system-ui,-apple-system,sans-serif;text-decoration:none!important}
.ks-osd-viz{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:16px;margin:0 0 64px}
.ks-osd-card,.ks-osd-glass{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:24px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.ks-osd-donut{display:flex;align-items:center;gap:16px;margin:16px 0}
.ks-osd-donut svg{width:140px;height:140px;flex:0 0 140px}
.ks-osd-seg{transition:stroke-dasharray 1.1s cubic-bezier(.16,1,.3,1)}
.ks-osd-dn{fill:#fff;font:600 30px system-ui,sans-serif}
.ks-osd-dl{fill:#a4aea6;font:11px system-ui,sans-serif}
.ks-osd-donut ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:14px;color:var(--pearl)}
.ks-osd-donut li{display:flex;align-items:center;gap:8px}
.ks-osd-donut li i{width:10px;height:10px;border-radius:50%}
.ks-osd-donut li b{color:#fff;margin-left:auto;padding-left:12px}
.ks-osd-note{font-size:13px;line-height:1.5;color:var(--pearl);margin:8px 0 0}
.ks-osd-bars{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}
.ks-osd-bars li{display:grid;grid-template-columns:150px 1fr 28px;gap:12px;align-items:center;font-size:13px;color:var(--pearl)}
.ks-osd-bars i{height:8px;border-radius:9999px;background:rgba(255,255,255,.08);overflow:hidden}
.ks-osd-bars i b{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,rgba(140,147,251,.6),var(--uv));transition:width 1s cubic-bezier(.16,1,.3,1)}
.ks-osd.is-vis .ks-osd-bars i b{width:var(--w)}
.ks-osd-bars em{font-style:normal;color:#fff;text-align:right}
.ks-osd-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:end;height:170px;margin:16px 0 0}
.ks-osd-step{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:6px}
.ks-osd-step i{width:100%;height:0;border-radius:12px 12px 4px 4px;background:linear-gradient(180deg,rgba(95,237,131,.55),rgba(95,237,131,.08));transition:height 1s cubic-bezier(.16,1,.3,1)}
.ks-osd-step:nth-child(2) i{background:linear-gradient(180deg,rgba(141,214,255,.55),rgba(141,214,255,.08))}
.ks-osd-step:nth-child(3) i{background:linear-gradient(180deg,rgba(240,163,94,.55),rgba(240,163,94,.08))}
.ks-osd.is-vis .ks-osd-step i{height:calc(var(--h) * .7)}
.ks-osd-step b{font-size:22px;color:#fff;font-weight:600}
.ks-osd-step span{font-size:14px;color:#fff}
.ks-osd-step small{font-size:12px;color:var(--pearl);text-align:center}
.ks-osd-sh{margin:0 0 24px}
.ks-osd .ks-osd-sh h3{font-size:clamp(24px,3vw,36px)!important;font-weight:500!important;letter-spacing:-.02em!important;color:#fff!important;margin:8px 0 0!important;line-height:1.2!important}
.ks-osd-new{margin:0 0 64px}
.ks-osd-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ks-osd-grid--3{grid-template-columns:repeat(3,1fr)}
.ks-osd-glass{display:flex;flex-direction:column;gap:8px;color:#fff!important;text-decoration:none!important;transition:transform .2s ease}
a.ks-osd-glass:hover{transform:translateY(-3px)}
.ks-osd-glass.is-feat{border-color:var(--uv)}
.ks-osd-glass b{font-size:18px;font-weight:600;color:#fff}
.ks-osd-d{font-size:14px;line-height:1.5;color:var(--pearl)}
.ks-osd-st{margin-top:auto!important;color:var(--sky)!important;font-size:11px!important}
.ks-osd-tag{align-self:flex-start;font:12px ui-monospace,Menlo,monospace;border-radius:9999px;padding:2px 10px;border:1px solid rgba(255,255,255,.2);color:var(--pearl)}
.ks-osd-tag--free{color:var(--phos);border-color:rgba(95,237,131,.4)}
.ks-osd-tag--copy{color:var(--uv);border-color:rgba(140,147,251,.45)}
.ks-osd-tag--rest{color:#f0a35e;border-color:rgba(240,163,94,.45)}
.ks-osd-lnk{margin-top:auto;color:var(--sky)!important;font-size:14px;text-decoration:none!important}
.ks-osd-lnk:after{content:" →"}
.ks-osd [data-rv]{opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}
.ks-osd [data-rv].is-in{opacity:1;transform:none}
@media (max-width:960px){.ks-osd{padding:40px 20px;border-radius:16px}.ks-osd-viz{grid-template-columns:1fr}.ks-osd-grid{grid-template-columns:1fr 1fr}.ks-osd-grid--3{grid-template-columns:1fr}}
@media (max-width:560px){.ks-osd-grid{grid-template-columns:1fr}.ks-osd-bars li{grid-template-columns:110px 1fr 24px}.ks-osd-chips{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory}.ks-osd-chip{flex:0 0 auto;scroll-snap-align:start}.ks-osd-sub{font-size:16px}}
@media (prefers-reduced-motion:reduce){.ks-osd *{animation:none!important;transition:none!important}.ks-osd [data-rv]{opacity:1;transform:none}.ks-osd-res li{opacity:1;transform:none}}
/* == /KZSL OSS DECK CSS v1 == */


/* == KZSL PEEK HOVER CSS v1 == */
.ks-hv{position:fixed;z-index:99990;width:320px;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.92);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(28,25,23,.1);box-shadow:0 18px 50px -18px rgba(28,25,23,.35);opacity:0;transform:translateY(6px) scale(.98);pointer-events:none;transition:opacity .18s ease,transform .22s cubic-bezier(.16,1,.3,1);font-family:inherit}
.ks-hv.is-on{opacity:1;transform:none;pointer-events:auto}
.ks-hv-k{margin:0 0 6px!important;font:600 11px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em;text-transform:uppercase;color:#ea580c}
.ks-hv-t{display:block;font-size:16px;line-height:1.3;color:#1c1917;margin:0 0 6px}
.ks-hv-l{margin:0!important;font-size:14px!important;line-height:1.5!important;color:#44403c!important}
.ks-hv-f{margin:10px 0 0!important;padding-top:8px;border-top:1px solid #e7e5e4;font-size:12px!important;color:#78716c!important}
.ks-hv-sk{height:14px;border-radius:6px;background:linear-gradient(90deg,#eee 0,#f7f7f7 50%,#eee 100%);background-size:200% 100%;animation:ksHvSk 1s linear infinite;margin:8px 0}
.ks-hv-sk--s{width:60%}
@keyframes ksHvSk{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.ks-hv{transition:none}.ks-hv-sk{animation:none}}
/* == /KZSL PEEK HOVER CSS v1 == */

.ks-osd .ks-osd-sub{margin:0 auto 40px!important;text-align:center}.ks-osd .ks-osd-res,.ks-osd .ks-osd-bars,.ks-osd .ks-osd-donut ul{padding-left:0!important;margin-left:0!important}.ks-osd .ks-osd-res li,.ks-osd .ks-osd-bars li,.ks-osd .ks-osd-donut li{margin-left:0!important;list-style:none!important}.ks-osd p{max-width:none}

/* == KZSL VS-01 EVIDENCE UNIVERSE CSS == */
.ks-vs1{background:#0e1116;color:#e7e9ee;border-radius:20px;padding:24px;margin:16px 0 28px;position:relative;overflow:hidden}
.ks-vs1:before{content:"";position:absolute;left:30%;top:-120px;width:520px;height:360px;background:radial-gradient(closest-side,rgba(15,118,110,.35),transparent);filter:blur(50px);pointer-events:none}
.ks-vs1>*{position:relative}
.ks-vs1-h{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-end;margin-bottom:12px}
.ks-vs1 .ks-vs1-k{margin:0!important;font:600 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;color:#5eead4}
.ks-vs1 h3{margin:4px 0!important;font-size:24px!important;color:#fff!important;font-weight:600!important}
.ks-vs1 .ks-vs1-s{margin:0!important;font-size:14px!important;line-height:1.5!important;color:#a3aab8!important;max-width:560px}
.ks-vs1-ctl{display:flex;gap:8px;flex-wrap:wrap}
.ks-vs1-ctl select,.ks-vs1-ctl button{font:inherit;font-size:13px;min-height:36px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff;padding:0 14px;cursor:pointer;max-width:280px}
.ks-vs1-ctl select option{color:#111}
.ks-vs1-ctl button:hover{border-color:#5eead4}
.ks-vs1-body{display:grid;grid-template-columns:1.6fr 1fr;gap:16px}
.ks-vs1-stage{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:8px 8px 28px}
.ks-vs1-svg{width:100%;height:auto;display:block}
.ks-vs1-orb{fill:none;stroke:rgba(94,234,212,.22);stroke-dasharray:2 6}
.ks-vs1-orb--o{stroke:rgba(255,255,255,.1)}
.ks-vs1-ax{fill:#7d8597;font:11px ui-monospace,Menlo,monospace}
.ks-vs1-ln{stroke:#34d399;stroke-width:1.6;opacity:0;animation:ksVsIn .5s var(--d,0ms) forwards}
.ks-vs1-ln--wk{stroke-dasharray:4 4;stroke:#6ee7b7;opacity:.6}
.ks-vs1-ln--ag{stroke:#f87171}
.ks-vs1-ln--gap{stroke:#6b7280;stroke-dasharray:2 5;opacity:.6;animation:none}
.ks-vs1-n{opacity:0;animation:ksVsPop .55s cubic-bezier(.16,1,.3,1) var(--d,0ms) forwards;cursor:help;outline:none}
.ks-vs1-n circle{fill:#10b981;stroke:#0e1116;stroke-width:2}
.ks-vs1-n.is-wk circle{fill:#0e1116;stroke:#6ee7b7;stroke-width:2}
.ks-vs1-n.is-ag circle{fill:#ef4444}
.ks-vs1-n.is-ag.is-wk circle{fill:#0e1116;stroke:#f87171}
.ks-vs1-n.is-rep circle{opacity:.55}
.ks-vs1-n:focus circle,.ks-vs1-n:hover circle{stroke:#fff}
.ks-vs1-n text,.ks-vs1-gap text{fill:#c3c9d4;font:11px system-ui,sans-serif}
.ks-vs1-gap circle{fill:none;stroke:#6b7280;stroke-dasharray:3 4}
.ks-vs1-gap text{fill:#8b93a3}
.ks-vs1-core circle{fill:#1f2937;stroke:#9ca3af;stroke-width:2;transition:r .5s}
.ks-vs1-core .ks-vs1-halo{fill:none;stroke-width:1;opacity:.5;animation:ksVsHalo 2.6s ease-in-out infinite}
.ks-vs1-core.st-ok circle{stroke:#2dd4bf}.ks-vs1-core.st-ok .ks-vs1-halo{stroke:#2dd4bf}
.ks-vs1-core.st-part circle{stroke:#f59e0b}.ks-vs1-core.st-part .ks-vs1-halo{stroke:#f59e0b}
.ks-vs1-core.st-ref circle{stroke:#ef4444}.ks-vs1-core.st-ref .ks-vs1-halo{stroke:#ef4444}
.ks-vs1-cs{fill:#fff;font:700 20px system-ui,sans-serif}
.ks-vs1-cl{fill:#a3aab8;font:10px system-ui,sans-serif}
.ks-vs1-contra{fill:none;stroke:#f87171;stroke-width:2;stroke-dasharray:6 6;animation:ksVsSpin 12s linear infinite;transform-origin:360px 220px}
@keyframes ksVsIn{to{opacity:1}}
@keyframes ksVsPop{from{opacity:0;transform-box:fill-box}to{opacity:1}}
@keyframes ksVsHalo{50%{opacity:.1}}
@keyframes ksVsSpin{to{transform:rotate(360deg)}}
.ks-vs1-track{position:relative;height:6px;margin:8px 16px 0;border-radius:6px;background:linear-gradient(90deg,#7f1d1d 0 16.7%,#374151 16.7% 44.4%,#78350f 44.4% 66.7%,#134e4a 66.7% 100%)}
.ks-vs1-track span{position:absolute;top:10px;font:10px ui-monospace,Menlo,monospace;color:#7d8597;white-space:nowrap}
.ks-vs1-track .m1{left:16.7%}.ks-vs1-track .m2{left:44.4%}.ks-vs1-track .m3{left:66.7%}
.ks-vs1-dot{position:absolute;top:-5px;width:16px;height:16px;margin-left:-8px;border-radius:50%;border:2px solid #fff;transition:left .6s cubic-bezier(.16,1,.3,1),background .3s}
.ks-vs1-z{display:none}
.ks-vs1-ex{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px;font-size:14px;line-height:1.5}
.ks-vs1 .ks-vs1-ht{margin:4px 0 12px!important;color:#fff!important;font-size:15px!important;font-weight:600}
.ks-vs1-dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0 0 12px;font-size:13px}
.ks-vs1-dl dt{color:#8b93a3}.ks-vs1-dl dd{margin:0;color:#fff;font-weight:600}
.ks-vs1 .ks-vs1-p{margin:0 0 8px!important;color:#d1d5db!important;font-size:14px!important}
.ks-vs1 .ks-vs1-p b{color:#fff}
.ks-vs1 .ks-vs1-warn{margin:0 0 10px!important;padding:8px 10px;border-radius:10px;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.4);color:#fecaca!important;font-size:13px!important}
.ks-vs1 .ks-vs1-demo{margin:0 0 10px!important;padding:8px 10px;border-radius:10px;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.4);color:#fde68a!important;font-size:13px!important}
.ks-vs1 .ks-vs1-f{margin:8px 0 0!important;font-size:12px!important;color:#7d8597!important}
.ks-vs1-leg{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;font-size:12px;color:#a3aab8}
.ks-vs1-leg i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:-1px}
.lg-st{background:#10b981}.lg-wk{border:2px solid #6ee7b7}.lg-ag{background:#ef4444}.lg-gap{border:1px dashed #9ca3af}.lg-rep{background:#10b981;opacity:.5}
@media (max-width:820px){.ks-vs1{padding:16px;border-radius:16px}.ks-vs1-body{grid-template-columns:1fr}.ks-vs1-ctl select{max-width:100%;flex:1 1 100%}.ks-vs1-track span.m1{display:none}}
@media (prefers-reduced-motion:reduce){.ks-vs1 *{animation:none!important;transition:none!important}.ks-vs1-n,.ks-vs1-ln{opacity:1}}
/* == /KZSL VS-01 CSS == */


/* == KZSL VS-02 DISTRIBUTION UNIVERSE CSS: «карта мореплавателя» — светлая бумага, сектора, поток точек == */
.ks-vs2{background:#fbfaf6;border:1px solid #e3ded1;border-radius:20px;padding:24px;margin:20px 0 28px;color:#1f2937}
.ks-vs2-h{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-end;margin-bottom:8px}
.ks-vs2 .ks-vs2-k{margin:0!important;font:600 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;color:#1d4ed8}
.ks-vs2 h3{margin:4px 0!important;font-size:24px!important;color:#111827!important}
.ks-vs2 .ks-vs2-s{margin:0!important;font-size:14px!important;line-height:1.5!important;color:#4b5563!important;max-width:600px}
.ks-vs2-score{font-size:13px;color:#4b5563;background:#fff;border:1px solid #e3ded1;border-radius:999px;padding:6px 14px}
.ks-vs2-score b{color:#111827}
.ks-vs2-body{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;align-items:start}
.ks-vs2-svg{width:100%;height:auto;display:block}
.ks-vs2-sec{fill:#f3efe4;stroke:#e3ded1}
.ks-vs2-sec.alt{fill:#efeadc}
.ks-vs2-ring{fill:none;stroke:#c9c1ad;stroke-dasharray:2 5}
.ks-vs2-rl{fill:#9a917c;font:10px ui-monospace,Menlo,monospace}
.ks-vs2-cat{fill:#57534e;font:600 12px system-ui,sans-serif}
.ks-vs2-path{fill:none;stroke:#2563eb;stroke-width:1.5;stroke-dasharray:3 4;opacity:.55}
.ks-vs2-dot{fill:#2563eb}
.ks-vs2-n{cursor:pointer;outline:none;opacity:0;animation:ksVs2In .5s cubic-bezier(.16,1,.3,1) var(--d,0ms) forwards}
.ks-vs2-n circle{stroke:#fff;stroke-width:2;transition:r .3s}
.ks-vs2-n.c-g circle{fill:#16a34a}.ks-vs2-n.c-m circle{fill:#d97706}.ks-vs2-n.c-b circle{fill:#a8a29e}
.ks-vs2-n.is-top circle{stroke:#1d4ed8;stroke-width:3}
.ks-vs2-n.is-sel circle{stroke:#111827;stroke-width:3}
.ks-vs2-n text{fill:#374151;font:11px system-ui,sans-serif}
.ks-vs2-n.c-b text{fill:#a8a29e}
.ks-vs2-n:hover circle,.ks-vs2-n:focus circle{stroke:#111827}
.ks-vs2-core circle{fill:#1d4ed8}
.ks-vs2-core text{fill:#fff;font:700 13px system-ui,sans-serif}
.ks-vs2-core text.sub{font:400 10px system-ui,sans-serif;fill:#dbeafe}
@keyframes ksVs2In{to{opacity:1}}
.ks-vs2-ex{background:#fff;border:1px solid #e3ded1;border-radius:16px;padding:16px;font-size:14px}
.ks-vs2 .ks-vs2-ex h4{margin:4px 0 8px!important;font-size:18px!important;color:#111827!important}
.ks-vs2 .ks-vs2-p{margin:0 0 10px!important;font-size:14px!important;color:#4b5563!important;line-height:1.5!important}
.ks-vs2 .ks-vs2-r{list-style:none!important;margin:0 0 12px!important;padding:0!important;display:grid;gap:4px}
.ks-vs2 .ks-vs2-r li{margin:0!important;font-size:13px;display:flex;gap:8px;align-items:baseline;color:#374151}
.ks-vs2-r li b{min-width:28px;font:600 12px ui-monospace,Menlo,monospace}
.ks-vs2-r li.p b{color:#16a34a}.ks-vs2-r li.m b{color:#dc2626}
.ks-vs2-dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0 0 12px;font-size:13px}
.ks-vs2-dl dt{color:#78716c}.ks-vs2-dl dd{margin:0;color:#1f2937}
.ks-vs2-go{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13px}
.ks-vs2-btn{font:inherit;font-weight:600;font-size:13px;border:0;border-radius:10px;background:#1d4ed8;color:#fff;padding:9px 14px;cursor:pointer}
.ks-vs2-btn:disabled{background:#93c5fd;cursor:default}
.ks-vs2 .ks-vs2-f{margin:12px 0 0!important;font-size:12px!important;color:#78716c!important}
@media (max-width:860px){.ks-vs2{padding:16px}.ks-vs2-body{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.ks-vs2 *{animation:none!important;transition:none!important}.ks-vs2-n{opacity:1}}

/* == KZSL VS-03 BUSINESS MODEL MACHINE CSS: «инженерный стенд» — графит, моно, тёплые потоки == */
.ks-vs3{background:#18181b!important;color:#e4e4e7;border-radius:24px;padding:32px!important;margin:32px 0!important}
.ks-vs3 .ks-vs3-k{margin:0!important;font:600 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;color:#fbbf24}
.ks-vs3 h2{color:#fafafa!important;margin:6px 0 8px!important}
.ks-vs3 .ks-vs3-s{color:#a1a1aa!important;max-width:680px;margin:0 0 20px!important;font-size:15px!important;line-height:1.55!important}
.ks-vs3-types{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.ks-vs3-types button{font:inherit;font-size:13px;color:#e4e4e7;background:transparent;border:1px solid #3f3f46;border-radius:999px;padding:8px 14px;cursor:pointer;transition:transform .2s}
.ks-vs3-types button:hover{transform:translateY(-1px);border-color:#fbbf24}
.ks-vs3-types button.is-on{background:#fbbf24;border-color:#fbbf24;color:#18181b;font-weight:600}
.ks-vs3-grid{display:grid;grid-template-columns:300px 1fr;gap:20px}
.ks-vs3-in{background:#27272a;border:1px solid #3f3f46;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:14px;align-self:start}
.ks-vs3 .ks-vs3-d{margin:0!important;font-size:13px!important;color:#a1a1aa!important;line-height:1.45!important}
.ks-vs3-f1{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#d4d4d8}
.ks-vs3-f1 span{display:flex;justify-content:space-between;gap:8px}
.ks-vs3-f1 output{font:600 12px ui-monospace,Menlo,monospace;color:#fbbf24}
.ks-vs3-f1 input[type=range]{width:100%;accent-color:#fbbf24}
.ks-vs3-main{display:flex;flex-direction:column;gap:14px;min-width:0}
.ks-vs3-flow,.ks-vs3-line{width:100%;height:auto;display:block;background:#1f1f23;border:1px solid #3f3f46;border-radius:16px}
.ks-vs3-pipe{fill:none;stroke-linecap:round;opacity:.85;transition:stroke-width .5s cubic-bezier(.16,1,.3,1)}
.p-acq{stroke:#f87171}.p-rev{stroke:#fbbf24}.p-gp{stroke:#a3e635}.p-pos{stroke:#34d399}.p-neg{stroke:#ef4444}
.ks-vs3-leak{fill:none;stroke:#ef4444;opacity:.35;stroke-linecap:round}
.ks-vs3-lt{fill:#fca5a5;font:11px ui-monospace,Menlo,monospace}
.ks-vs3-dot{fill:#fff}
.ks-vs3-node rect{fill:#27272a;stroke:#52525b}
.ks-vs3-node.n-pos rect{stroke:#34d399}.ks-vs3-node.n-neg rect{stroke:#ef4444}.ks-vs3-node.n-rev rect{stroke:#fbbf24}
.ks-vs3-node .v{fill:#fafafa;font:600 12px ui-monospace,Menlo,monospace}
.ks-vs3-node .l{fill:#a1a1aa;font:10px system-ui,sans-serif}
.ks-vs3-cap{fill:#71717a;font:11px ui-monospace,Menlo,monospace}
.ks-vs3-kpi{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.ks-vs3-kpi div{background:#27272a;border:1px solid #3f3f46;border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}
.ks-vs3-kpi b{font:600 16px ui-monospace,Menlo,monospace;color:#fafafa}
.ks-vs3-kpi span{font-size:11px;color:#a1a1aa;line-height:1.3}
.ks-vs3-kpi .g{border-color:#166534}.ks-vs3-kpi .g b{color:#4ade80}
.ks-vs3-kpi .m{border-color:#854d0e}.ks-vs3-kpi .m b{color:#fbbf24}
.ks-vs3-kpi .b{border-color:#7f1d1d}.ks-vs3-kpi .b b{color:#f87171}
.ks-vs3-chart{position:relative}
.ks-vs3-sc{position:absolute;right:12px;top:10px;display:flex;gap:12px;font-size:11px;color:#a1a1aa}
.ks-vs3-sc input{accent-color:#fbbf24;vertical-align:-2px}
.ks-vs3-l{fill:none;stroke-width:2.5}
.l-base{stroke:#fbbf24}.l-opt{stroke:#4ade80;stroke-dasharray:6 4;stroke-width:1.6}.l-pes{stroke:#f87171;stroke-dasharray:6 4;stroke-width:1.6}
.ks-vs3-zero{stroke:#52525b;stroke-dasharray:3 4}
.ks-vs3-ax{fill:#71717a;font:10px ui-monospace,Menlo,monospace}
.ks-vs3-be{stroke:#4ade80;stroke-dasharray:2 3}
.ks-vs3-bt{fill:#4ade80;font:10px ui-monospace,Menlo,monospace}
.ks-vs3-ex{background:#27272a;border:1px solid #3f3f46;border-radius:16px;padding:14px 16px}
.ks-vs3 .ks-vs3-ex p{margin:0 0 8px!important;font-size:14px!important;color:#d4d4d8!important;line-height:1.5!important}
.ks-vs3 .ks-vs3-ex b{color:#fafafa}
.ks-vs3 .ks-vs3-f{margin:14px 0 0!important;font-size:12px!important;color:#71717a!important}
@media (max-width:980px){.ks-vs3{padding:20px!important}.ks-vs3-grid{grid-template-columns:1fr}.ks-vs3-kpi{grid-template-columns:repeat(2,1fr)}}
@media (prefers-reduced-motion:reduce){.ks-vs3 *{transition:none!important}}
/* == /KZSL VS-02/03 CSS == */

.ks-vs3-sc{position:static!important;justify-content:flex-end;margin:0 0 6px}.ks-vs3-flow{overflow:visible}

/* == KZSL SIGNATURES CSS v1 == */
.ks-sg{margin:28px auto 36px;border-radius:20px;padding:24px}
.ks-sg .ks-sg-k{margin:0!important;font:600 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase}
.ks-sg h2{margin:6px 0 6px!important;font-size:clamp(22px,2.6vw,30px)!important}
.ks-sg .ks-sg-h p{margin:0 0 16px!important;font-size:14px!important;line-height:1.5!important;max-width:640px}
.ks-sg .ks-sg-load{font-size:13px;opacity:.7}
.ks-sg .ks-sg-note{margin:12px 0 0!important;font-size:12px!important;opacity:.75}
.ks-sg-list{list-style:none!important;margin:0!important;padding:0!important;display:grid;gap:2px}
.ks-sg-list li{margin:0!important;padding:8px 0;border-bottom:1px solid #eee}
.ks-sg-list a{text-decoration:none;font-weight:500}
/* frameworks — «лабораторная таблица» */
.ks-sg-fw{background:#fff;border:1px solid #e7e5e4}
.ks-sg-fw .ks-sg-k{color:#7c3aed}
.ks-sg-heat{display:grid;gap:6px}
.ks-sg-row{display:grid;grid-template-columns:minmax(150px,1.2fr) repeat(3,minmax(70px,1fr)) minmax(120px,1.4fr);gap:6px;align-items:center;font-size:13px;opacity:0;transform:translateX(-8px);transition:all .5s cubic-bezier(.16,1,.3,1) calc(var(--i,0)*45ms)}
.ks-sg-heat.is-in .ks-sg-row,.ks-sg-hd{opacity:1;transform:none}
.ks-sg-hd b{font:600 11px ui-monospace,Menlo,monospace;color:#78716c;text-transform:uppercase;text-align:center}
.ks-sg-hd b:last-child{text-align:left}
.ks-sg-row>span{color:#292524;font-weight:500}
.ks-sg-cell{height:38px;border:0;border-radius:8px;cursor:pointer;background:rgba(124,58,237,calc(.07 + var(--v)*.85));color:#fff;font:600 13px ui-monospace,Menlo,monospace;transition:transform .2s}
.ks-sg-cell em{font-style:normal;color:#fff;mix-blend-mode:normal}
.ks-sg-cell[style*="--v:0.0"],.ks-sg-cell[style*="--v:0.1"],.ks-sg-cell[style*="--v:0.2"]{color:#5b21b6}
.ks-sg-cell[style*="--v:0.0"] em,.ks-sg-cell[style*="--v:0.1"] em,.ks-sg-cell[style*="--v:0.2"] em{color:#5b21b6}
.ks-sg-cell:hover:not(:disabled){transform:scale(1.06)}
.ks-sg-cell:disabled{cursor:default;background:#f5f5f4}
.ks-sg-cell:disabled em{color:#d6d3d1}
.ks-sg-row>i{display:block;height:10px;border-radius:99px;background:#f5f3ff;position:relative}
.ks-sg-row>i:before{content:"";position:absolute;inset:0 auto 0 0;width:0;border-radius:inherit;background:#7c3aed;transition:width .8s cubic-bezier(.16,1,.3,1) calc(var(--i,0)*45ms + .2s)}
.ks-sg-heat.is-in .ks-sg-row>i:before{width:var(--w)}
.ks-sg-row>i em{position:absolute;right:-30px;top:-4px;font:600 12px ui-monospace,Menlo,monospace;color:#5b21b6;font-style:normal}
/* glossary — «типографская полоса» */
.ks-sg-gl{background:#111827;color:#e5e7eb;max-width:1080px}
.ks-sg-gl .ks-sg-k{color:#fbbf24}.ks-sg-gl h2{color:#fff!important}.ks-sg-gl .ks-sg-h p{color:#9ca3af!important}
.ks-sg-bars{display:flex;align-items:flex-end;gap:4px;height:180px;overflow-x:auto;padding-bottom:4px}
.ks-sg-bars button{flex:1 0 26px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;background:none;border:0;cursor:pointer;color:#e5e7eb;padding:0}
.ks-sg-bars i{display:block;width:100%;height:0;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#fbbf24,#b45309);transition:height .7s cubic-bezier(.16,1,.3,1) calc(var(--i)*25ms)}
.ks-sg-abc.is-in .ks-sg-bars i{height:calc(var(--h)*.72)}
.ks-sg-bars b{font:700 15px Georgia,serif}
.ks-sg-bars em{font:11px ui-monospace,Menlo,monospace;color:#9ca3af;font-style:normal}
.ks-sg-bars button:hover i{background:linear-gradient(180deg,#fde68a,#f59e0b)}
/* sales os — «кольцо» */
.ks-sg-os{background:linear-gradient(135deg,#fff7ed,#ffffff);border:1px solid #fed7aa;display:grid;grid-template-columns:1fr 1.1fr;gap:24px;align-items:center}
.ks-sg-os .ks-sg-k{color:#ea580c}
.ks-sg-os svg{width:100%;height:auto}
.ks-sg-os .ring{fill:none;stroke:#fdba74;stroke-width:2;stroke-dasharray:3 6}
.ks-sg-os .run{fill:none;stroke:#ea580c;stroke-width:3;stroke-dasharray:60 900;stroke-linecap:round;animation:ksSgRun 6s linear infinite;transform-origin:200px 190px}
@keyframes ksSgRun{to{stroke-dashoffset:-960}}
.ks-sg-os .nd circle{fill:#fff;stroke:#ea580c;stroke-width:2;transition:all .2s}
.ks-sg-os .nd:hover circle{fill:#ea580c}
.ks-sg-os .nd:hover .num{fill:#fff}
.ks-sg-os .num{fill:#ea580c;font:700 12px system-ui,sans-serif}
.ks-sg-os .lb{fill:#44403c;font:12px system-ui,sans-serif}
.ks-sg-os .c1{fill:#1c1917;font:700 18px system-ui,sans-serif}
.ks-sg-os .c2{fill:#78716c;font:11px system-ui,sans-serif}
.ks-sg-os .nd{opacity:0;transition:opacity .4s calc(var(--i)*70ms)}
.ks-sg-os.is-in .nd{opacity:1}
/* voprosy — «плитки-вопросы» */
.ks-sg-vq{background:#ecfeff;border:1px solid #a5f3fc}
.ks-sg-vq .ks-sg-k{color:#0e7490}
.ks-sg-tiles{display:flex;flex-wrap:wrap;gap:8px}
.ks-sg-tiles a{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid #cffafe;text-decoration:none!important;color:#164e63!important;flex:1 1 calc(160px*var(--s));min-width:140px;opacity:0;transform:scale(.96);transition:all .45s cubic-bezier(.16,1,.3,1) calc(var(--i)*50ms)}
.ks-sg-vq.is-in .ks-sg-tiles a{opacity:1;transform:none}
.ks-sg-tiles a:hover{border-color:#06b6d4;transform:translateY(-2px)}
.ks-sg-tiles b{font:700 calc(18px*var(--s) + 6px) system-ui,sans-serif;color:#0e7490}
.ks-sg-tiles span{font-size:13px;line-height:1.35}
@media (max-width:760px){.ks-sg{padding:16px}.ks-sg-os{grid-template-columns:1fr}.ks-sg-row{grid-template-columns:110px repeat(3,1fr) 70px;font-size:12px}.ks-sg-row>i em{display:none}}
@media (prefers-reduced-motion:reduce){.ks-sg *{animation:none!important;transition:none!important}.ks-sg-row,.ks-sg-os .nd,.ks-sg-tiles a{opacity:1;transform:none}}
/* == /KZSL SIGNATURES CSS v1 == */

body.page .ks-page__content:has(.ks-sg-os){max-width:1080px}.ks-page-wrap:has(.ks-sg-os){max-width:1128px}body.page .ks-page__content:has(.ks-sg-os)>:not(.alignwide){max-width:720px;margin-left:auto;margin-right:auto}.ks-sg-os .run{transform-origin:280px 190px}.ks-sg-os .lb{font-size:13px}.ks-sg-os{grid-template-columns:.8fr 1.4fr}

/* == KZSL SIGNATURES CSS v2 == */
body.page .ks-page__content:has(.ks-sg2){max-width:1080px}
.ks-page-wrap:has(.ks-sg2){max-width:1128px}
body.page .ks-page__content:has(.ks-sg2)>:not(.alignwide){max-width:720px;margin-left:auto;margin-right:auto}
.ks-sg2{margin:28px auto 36px;border-radius:20px;padding:24px}
.ks-sg2 .ks-sg2-k{margin:0!important;font:600 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase}
.ks-sg2 h2{margin:6px 0!important;font-size:clamp(22px,2.6vw,30px)!important}
.ks-sg2 .ks-sg2-h p{margin:0 0 16px!important;font-size:14px!important;line-height:1.5!important;max-width:640px}
/* A метро */
.ks-sg2-lp{background:#fff;border:1px solid #e5e7eb}
.ks-sg2-lp .ks-sg2-k{color:#2563eb}
.ks-sg2-metro{display:grid;gap:10px}
.ks-sg2-line{display:grid;grid-template-columns:minmax(180px,280px) 1fr 70px;gap:14px;align-items:center;text-decoration:none!important;color:#111827!important;padding:4px 0}
.ks-sg2-line .nm{font-size:13px;font-weight:600;line-height:1.3}
.ks-sg2-line .tr{display:block}
.ks-sg2-line .rail{position:relative;display:flex;justify-content:space-between;align-items:center;height:14px;width:0;transition:width .9s cubic-bezier(.16,1,.3,1) calc(var(--i)*60ms)}
.ks-sg2-lp.is-in .rail{width:var(--w)}
.ks-sg2-line .rail:before{content:"";position:absolute;left:0;right:0;top:5px;height:4px;border-radius:4px;background:var(--c)}
.ks-sg2-line .rail i{position:relative;width:8px;height:8px;border-radius:50%;background:#fff;border:2px solid var(--c)}
.ks-sg2-line .rail i.b{width:12px;height:12px;border-width:3px}
.ks-sg2-line em{font:600 12px ui-monospace,Menlo,monospace;color:#6b7280;font-style:normal}
.ks-sg2-line:hover .nm{color:var(--c)}
/* B курсы */
.ks-sg2-cr{background:#0f172a;color:#e2e8f0}
.ks-sg2-cr .ks-sg2-k{color:#38bdf8}.ks-sg2-cr h2{color:#fff!important}.ks-sg2-cr .ks-sg2-h p{color:#94a3b8!important}
.ks-sg2-time{display:flex;gap:6px;flex-wrap:wrap}
.ks-sg2-time a{flex-basis:160px;min-height:120px;display:flex;flex-direction:column;gap:6px;justify-content:flex-end;padding:14px;border-radius:14px;background:linear-gradient(160deg,color-mix(in srgb,var(--c) 75%,#0f172a),#0f172a);border:1px solid color-mix(in srgb,var(--c) 60%,transparent);color:#fff!important;text-decoration:none!important;opacity:0;transform:translateY(10px);transition:all .5s cubic-bezier(.16,1,.3,1) calc(var(--i)*80ms)}
.ks-sg2-cr.is-in .ks-sg2-time a{opacity:1;transform:none}
.ks-sg2-time b{font:700 22px ui-monospace,Menlo,monospace}
.ks-sg2-time span{font-size:14px;font-weight:600;line-height:1.3}
.ks-sg2-time small{font-size:12px;color:#cbd5e1}
.ks-sg2-time a:hover{transform:translateY(-3px)}
/* C библиотека */
.ks-sg2-lib{background:#fefce8;border:1px solid #fde68a}
.ks-sg2-lib .ks-sg2-k{color:#a16207}
.ks-sg2-lib svg{width:100%;height:auto}
.ks-sg2-lib .ln{fill:none;stroke:var(--c);stroke-width:1.4;opacity:.35;transition:opacity .25s,stroke-width .25s;stroke-dasharray:900;stroke-dashoffset:900}
.ks-sg2-lib.is-in .ln{animation:ksSg2Draw 1.4s cubic-bezier(.16,1,.3,1) forwards}
@keyframes ksSg2Draw{to{stroke-dashoffset:0}}
.ks-sg2-lib.is-f .ln{opacity:.06}.ks-sg2-lib .ln.on{opacity:.9;stroke-width:2.4}
.ks-sg2-lib .rl{cursor:pointer;outline:none}
.ks-sg2-lib .rl text{font:600 13px system-ui,sans-serif;fill:#422006}
.ks-sg2-lib .rl.on text{fill:#000}
.ks-sg2-lib .rt circle{fill:#a16207}
.ks-sg2-lib .rt text{font:12px system-ui,sans-serif;fill:#57534e}
.ks-sg2-lib.is-f .rt text{fill:#d6d3d1}.ks-sg2-lib .rt.on text{fill:#1c1917;font-weight:600}
.ks-sg2-lib .rt:hover text{fill:#a16207}
/* D стартапы */
.ks-sg2-st{background:linear-gradient(135deg,#f0fdf4,#fff);border:1px solid #bbf7d0}
.ks-sg2-st .ks-sg2-k{color:#15803d}
.ks-sg2-stg{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px;position:relative}
.ks-sg2-stg button{font:inherit;font-size:13px;display:flex;align-items:center;gap:8px;border:1px solid #bbf7d0;background:#fff;color:#14532d;border-radius:999px;padding:6px 14px 6px 6px;cursor:pointer;transition:all .2s}
.ks-sg2-stg button b{width:24px;height:24px;border-radius:50%;background:#dcfce7;display:flex;align-items:center;justify-content:center;font-size:12px}
.ks-sg2-stg button.is-on{background:#15803d;color:#fff;border-color:#15803d}
.ks-sg2-stg button.is-on b{background:#fff;color:#15803d}
.ks-sg2-sb{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}
.ks-sg2-bars2{display:grid;gap:8px}
.ks-sg2-bars2 .br{display:grid;grid-template-columns:150px 1fr 24px;gap:10px;align-items:center;font-size:13px;color:#14532d}
.ks-sg2-bars2 i{height:12px;border-radius:99px;background:#dcfce7;overflow:hidden}
.ks-sg2-bars2 i b{display:block;height:100%;width:0;border-radius:inherit;background:#22c55e;transition:width .6s cubic-bezier(.16,1,.3,1)}
.ks-sg2-bars2 .br.up i b{background:#15803d;box-shadow:0 0 0 2px #86efac}
.ks-sg2-bars2 .br.zero span{color:#86efac}
.ks-sg2-bars2 em{font:600 12px ui-monospace,Menlo,monospace;font-style:normal}
.ks-sg2-sx{background:#fff;border:1px solid #bbf7d0;border-radius:14px;padding:14px 16px;font-size:14px}
.ks-sg2 .ks-sg2-sx h3{margin:4px 0 8px!important;font-size:18px!important}
.ks-sg2 .ks-sg2-sx p{margin:0 0 8px!important;font-size:14px!important;line-height:1.5!important}
.ks-sg2 .ks-sg2-cta{margin:16px 0 0!important}
.ks-sg2-cta a{display:inline-flex;background:#15803d;color:#fff!important;border-radius:10px;padding:10px 16px;font-weight:600;text-decoration:none!important}
/* E слой знаний */
.ks-sg2-kn{background:#0b0f19;color:#e5e7eb}
.ks-sg2-kn .ks-sg2-k{color:#a78bfa}.ks-sg2-kn h2{color:#fff!important}.ks-sg2-kn .ks-sg2-h p{color:#9ca3af!important}.ks-sg2-kn .ks-sg2-h a{color:#a78bfa}
.ks-sg2-tm{position:relative;height:320px;border-radius:14px;overflow:hidden}
.ks-sg2-tm a{position:absolute;box-sizing:border-box;padding:12px;border:2px solid #0b0f19;background:color-mix(in srgb,var(--c) 70%,#0b0f19);color:#fff!important;text-decoration:none!important;display:flex;flex-direction:column;justify-content:flex-end;gap:2px;opacity:0;transition:opacity .5s calc(var(--i)*90ms),filter .2s}
.ks-sg2-kn.is-in .ks-sg2-tm a{opacity:1}
.ks-sg2-tm a:hover{filter:brightness(1.15)}
.ks-sg2-tm b{font:700 26px ui-monospace,Menlo,monospace}
.ks-sg2-tm span{font-size:13px;font-weight:600}
.ks-sg2-tm small{font-size:11px;opacity:.75}
@media (max-width:760px){.ks-sg2{padding:16px}.ks-sg2-line{grid-template-columns:1fr;gap:4px}.ks-sg2-line em{display:none}.ks-sg2-sb{grid-template-columns:1fr}.ks-sg2-bars2 .br{grid-template-columns:110px 1fr 20px}.ks-sg2-tm{height:420px}}
@media (prefers-reduced-motion:reduce){.ks-sg2 *{animation:none!important;transition:none!important}.ks-sg2-time a,.ks-sg2-tm a{opacity:1;transform:none}.ks-sg2-line .rail{width:var(--w)}.ks-sg2-lib .ln{stroke-dashoffset:0}}
/* == /KZSL SIGNATURES CSS v2 == */

.ks-sg2 .ks-sg2-gr{margin:0!important;padding-left:18px!important;font-size:13px;line-height:1.45}.ks-sg2 .ks-sg2-gr li{margin:0 0 4px!important}
/* == KZSL CLOUD STAGE v1 == */
body.page .ks-page__content:has(.ks-cl){max-width:1180px}
.ks-page-wrap:has(.ks-cl){max-width:1228px}
body.page .ks-page__content:has(.ks-cl)>:not(.alignwide){max-width:720px;margin-left:auto;margin-right:auto}
body:has(.ks-cl) .wp-block-post-featured-image,body:has(.ks-cl) .ks-page__cover{display:none!important}
body:has(.ks-cl) h1.wp-block-post-title,body:has(.ks-cl) .ks-page__title{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ks-cl.alignwide{max-width:1180px!important;width:100%}
.ks-cl{--v1:#0ea5b7;--v2:#22d3ee;--or:#f59e0b;--ink:#e6f6f8;--mut:#9db4bb;--line:rgba(255,255,255,.09);position:relative;margin:8px auto 40px;background:radial-gradient(1100px 560px at 85% -10%,rgba(245,158,11,.16) 0%,transparent 60%),radial-gradient(900px 600px at -10% 20%,rgba(34,211,238,.14) 0%,transparent 60%),radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px) 0 0/22px 22px,#04131a;color:var(--ink);border-radius:28px;overflow:hidden;padding:0 0 56px;isolation:isolate}
.ks-cl a{color:inherit}
.ks-cl h2{color:#fff!important;font-size:clamp(28px,3.4vw,42px)!important;line-height:1.1!important;margin:6px 0 10px!important;letter-spacing:-.01em}
.ks-cl h3{color:#fff!important;margin:0!important}
.ks-cl p{color:var(--mut)}
.ks-cl-sec{position:relative;padding:72px clamp(20px,5vw,64px) 0}
.ks-cl-label{display:flex;align-items:center;gap:12px;margin:0!important;font:600 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.14em;text-transform:uppercase;color:#67e8f9!important}
.ks-cl-label:before{content:"";width:34px;height:2px;background:linear-gradient(90deg,var(--or),transparent)}
.ks-cl-sub{max-width:680px;font-size:16px!important;line-height:1.6!important;margin:0 0 28px!important}
/* hero */
.ks-cl-hero{position:relative;padding:72px clamp(20px,5vw,64px) 40px;min-height:520px}
.ks-cl-beams{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden}
.ks-cl-beams i{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;animation:ksClDrift 16s ease-in-out infinite alternate}
.ks-cl-beams i:nth-child(1){width:520px;height:220px;left:52%;top:-60px;background:#0891b2}
.ks-cl-beams i:nth-child(2){width:380px;height:180px;left:70%;top:120px;background:#f59e0b;opacity:.28;animation-delay:-6s}
.ks-cl-beams i:nth-child(3){width:300px;height:160px;left:-80px;top:260px;background:#155e75;animation-delay:-3s}
.ks-cl-beams i:nth-child(4),.ks-cl-beams i:nth-child(5){display:none}
@keyframes ksClDrift{from{transform:translate(0,0) scale(1)}to{transform:translate(-80px,30px) scale(1.15)}}
.ks-cl-curve{position:absolute;right:0;bottom:30px;width:62%;height:auto;z-index:-1;opacity:.9;pointer-events:none}
.ks-cl-curve path.l{fill:none;stroke:url(#ksClG);stroke-width:2.5;stroke-dasharray:1400;stroke-dashoffset:1400;animation:ksClDraw 3.2s cubic-bezier(.16,1,.3,1) .4s forwards}
.ks-cl-curve path.f{fill:url(#ksClF);opacity:0;animation:ksClFade 1.6s ease 2s forwards}
.ks-cl-curve circle{fill:#fbbf24;opacity:0;animation:ksClFade .6s ease 3.2s forwards}
@keyframes ksClDraw{to{stroke-dashoffset:0}}@keyframes ksClFade{to{opacity:1}}
.ks-cl-kick{margin:0 0 18px!important;font:600 13px/1 ui-monospace,Menlo,monospace!important;letter-spacing:.16em;text-transform:uppercase;color:#67e8f9!important}
.ks-cl-giant{margin:0 0 26px!important;display:flex;flex-direction:column;font-family:"Inter Tight",Inter,system-ui,sans-serif;font-weight:900;text-transform:uppercase;line-height:.92;letter-spacing:-.02em}
.ks-cl-giant .a{font-size:clamp(64px,11vw,148px);background:linear-gradient(180deg,#ffffff 30%,#a5f3fc);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-.03em}
.ks-cl-giant .b{font-size:clamp(30px,5.4vw,72px);color:transparent;-webkit-text-stroke:1.5px #fbbf24;letter-spacing:.01em}
.ks-cl .ks-answer{max-width:620px;margin:0 0 30px!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
.ks-cl .ks-answer p{color:#d6d3f0!important;font-size:18px!important;line-height:1.6!important;margin:0!important}
.ks-cl-hero__row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.ks-cl-when{margin:0!important;text-align:right;display:flex;flex-direction:column;gap:4px}
.ks-cl-when b{color:#fff;font-size:14px}.ks-cl-when span{font-size:13px;color:var(--mut)}
.ks-cl-hero__line{height:2px;width:240px;margin-top:40px;background:linear-gradient(90deg,var(--or),var(--v2),transparent);animation:ksClLine 3s ease-in-out infinite alternate}
@keyframes ksClLine{to{width:420px}}
.ks-cl-btns{display:flex;gap:12px;flex-wrap:wrap}
.ks-cl-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;font:700 13px/1 system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;text-decoration:none!important;color:#1a1205!important;background:linear-gradient(135deg,#fbbf24,#f97316);border:1px solid transparent;transition:transform .2s,box-shadow .2s}
.ks-cl-btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px -8px rgba(245,158,11,.7)}
.ks-cl-btn--o{background:transparent;border-color:rgba(255,255,255,.35);color:#fff!important}
.ks-cl-btn--o:hover{border-color:#22d3ee;box-shadow:0 0 0 1px #22d3ee inset}
/* stats */
.ks-cl-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:8px clamp(20px,5vw,64px) 0}
.ks-cl-stat{position:relative;padding:22px 20px;border:1px solid var(--line);background:rgba(255,255,255,.02);text-align:center}
.ks-cl-stat:before{content:"";position:absolute;left:20%;right:20%;top:-1px;height:2px;background:linear-gradient(90deg,transparent,#22d3ee,transparent)}
.ks-cl-stat b{display:block;font:800 44px/1 system-ui,sans-serif;background:linear-gradient(180deg,#fde68a,#f59e0b);-webkit-background-clip:text;background-clip:text;color:transparent}
.ks-cl-stat span{display:block;margin-top:8px;font:600 11px/1.3 ui-monospace,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
/* bento */
.ks-cl-bento{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ks-cl-card{position:relative;padding:24px;border:1px solid var(--line);background:radial-gradient(400px circle at var(--mx,50%) var(--my,-20%),rgba(34,211,238,.14),transparent 45%),rgba(255,255,255,.02);transition:border-color .25s,transform .25s;min-height:150px}
.ks-cl-card:hover{border-color:rgba(34,211,238,.45);transform:translateY(-3px)}
.ks-cl-card.w2{grid-column:span 2}.ks-cl-card.w3{grid-column:span 3}
.ks-cl-card .ix{display:block;margin-bottom:22px;font:600 12px ui-monospace,Menlo,monospace;color:#22d3ee}
.ks-cl-card h3{font-size:20px!important;line-height:1.25!important}
.ks-cl-card p{margin:10px 0 0!important;font-size:15px!important;line-height:1.55!important}
.ks-cl-card--no{min-height:0;background:repeating-linear-gradient(-45deg,rgba(255,255,255,.015) 0 10px,transparent 10px 20px)}
.ks-cl-card--no .ix{color:#f97316}
/* timeline */
.ks-cl-tl{list-style:none!important;margin:0!important;padding:0!important;display:grid;gap:14px}
.ks-cl-tl li{display:grid;grid-template-columns:140px 1fr;gap:22px;align-items:start;margin:0!important;position:relative}
.ks-cl-tl time{position:relative;padding-top:18px;font:700 15px ui-monospace,Menlo,monospace;color:#fff;text-align:right;padding-right:26px}
.ks-cl-tl time:after{content:"";position:absolute;right:0;top:22px;width:10px;height:10px;border-radius:50%;border:2px solid #f59e0b;background:#04131a}
.ks-cl-slot{display:grid;grid-template-columns:1fr auto;gap:6px 18px;align-items:center;padding:20px 24px;border:1px solid var(--line);background:rgba(255,255,255,.025);text-decoration:none!important;transition:all .2s}
.ks-cl-slot small{grid-column:1/-1;font:600 11px ui-monospace,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.ks-cl-slot b{font-size:18px;color:#fff;line-height:1.35}
.ks-cl-slot em{font-style:normal;font-size:13px;font-weight:700;color:#fbbf24;white-space:nowrap}
.ks-cl-slot:hover{border-color:rgba(34,211,238,.5);background:rgba(34,211,238,.06);transform:translateX(4px)}
.ks-cl-head{position:relative;overflow:hidden;padding:30px 30px 26px;background:linear-gradient(115deg,#fef3c7,#fde68a 55%,#fdba74);color:#1c1405}
.ks-cl-head .wm{position:absolute;right:-20px;top:-10px;font:900 160px/1 system-ui,sans-serif;color:rgba(146,64,14,.12);letter-spacing:-.04em;pointer-events:none}
.ks-cl-head small{font:700 12px ui-monospace,Menlo,monospace;letter-spacing:.08em;color:#92400e}
.ks-cl-head h3{color:#1c1405!important;font-size:clamp(24px,3vw,34px)!important;line-height:1.1!important;margin:10px 0 10px!important;max-width:620px}
.ks-cl-head p{color:#44330f!important;max-width:640px;font-size:15px!important;line-height:1.55!important;margin:0 0 18px!important;position:relative}
.ks-cl-parts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;position:relative}
.ks-cl-parts a{display:flex;gap:12px;align-items:flex-start;padding:14px;background:rgba(255,255,255,.65);border:1px solid rgba(146,64,14,.18);text-decoration:none!important;color:#1c1405!important;font-weight:700;font-size:14px;line-height:1.35;transition:all .2s}
.ks-cl-parts a:hover{background:#fff;transform:translateY(-2px);box-shadow:0 8px 20px -10px rgba(146,64,14,.5)}
.ks-cl-parts i{flex:none;width:28px;height:28px;border-radius:50%;background:#04131a;color:#fbbf24;font:700 13px/28px system-ui;text-align:center;font-style:normal}
.ks-cl-tl--next time{color:var(--mut)}
.ks-cl-soon{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ks-cl-soon p{margin:0!important;padding:16px 18px;border:1px dashed rgba(255,255,255,.18);font-size:14px!important;line-height:1.45!important;color:#cfcbe8!important}
.ks-cl-soon span{display:block;margin-bottom:6px;font:600 10px ui-monospace,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:#f97316}
/* stage */
.ks-cl-stage:before{content:"";position:absolute;inset:40px 10% auto;height:300px;background:radial-gradient(closest-side,rgba(34,211,238,.16),transparent);z-index:-1}
.ks-cl-mini{margin:6px 0 14px!important;font:600 12px ui-monospace,Menlo,monospace!important;letter-spacing:.1em;text-transform:uppercase;color:#fbbf24!important}
.ks-cl-topics{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.ks-cl-topic{position:relative;display:flex;flex-direction:column;gap:10px;padding:20px 18px 18px;min-height:210px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(14,165,183,.14),rgba(255,255,255,.01));text-decoration:none!important;overflow:hidden;transition:all .25s}
.ks-cl-topic:after{content:"";position:absolute;left:50%;top:-60%;width:70%;height:100%;transform:translateX(-50%);background:radial-gradient(closest-side,rgba(251,191,36,.3),transparent);opacity:0;transition:opacity .3s}
a.ks-cl-topic:hover{border-color:rgba(251,191,36,.55);transform:translateY(-4px)}
a.ks-cl-topic:hover:after{opacity:1}
.ks-cl-topic i{font:800 30px/1 system-ui;font-style:normal;color:transparent;-webkit-text-stroke:1px #22d3ee}
.ks-cl-topic b{color:#fff;font-size:16px;line-height:1.3}
.ks-cl-topic span{margin-top:auto;font-size:12px;color:var(--mut)}
div.ks-cl-topic{border-style:dashed}
.ks-cl-invite{margin-top:16px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:22px 24px;border:1px solid rgba(34,211,238,.3);background:rgba(34,211,238,.05)}
.ks-cl-invite p{margin:0!important;font-size:15px!important;color:var(--mut)!important}
.ks-cl-invite b{display:block;color:#fff;font-size:18px;margin-bottom:4px}
.ks-cl br,.ks-cl p:empty{display:none}
.ks-cl .ks-cl-stamp br{display:block}
.ks-cl .ks-faq{max-width:none!important}
.ks-cl-talks:not([hidden]){display:grid;gap:12px;margin-bottom:22px}
.ks-cl-talk{display:grid;grid-template-columns:140px 1fr;gap:22px;padding:18px 22px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.ks-cl-talk time{font:700 15px ui-monospace,Menlo,monospace;color:#fff}
.ks-cl-talk small{display:block;font:600 11px ui-monospace,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;color:#22d3ee}
.ks-cl-talk b{display:block;color:#fff;font-size:18px;margin:4px 0 8px}
.ks-cl-talk span{display:flex;gap:16px}.ks-cl-talk a{font-weight:700;font-size:13px;color:#fbbf24!important}
/* proof */
.ks-cl-proof{position:relative;padding:36px 40px;background:#f7f4ec;color:#1c1917;border:1px solid #e7e0cf;box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.ks-cl-proof h2{color:#1c1917!important}
.ks-cl-proof p{color:#44403c!important;max-width:720px;font-size:16px!important;line-height:1.65!important}
.ks-cl-proof .ks-cl-label{color:#0e7490!important}
.ks-cl-proof__l a{font-weight:700;color:#0e7490!important}
.ks-cl-stamp{position:absolute;right:34px;top:30px;width:112px;height:112px;border-radius:50%;border:3px double #b91c1c;color:#b91c1c;display:flex;align-items:center;justify-content:center;text-align:center;font:800 12px/1.3 ui-monospace,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;transform:rotate(-12deg);opacity:.75}
/* join */
.ks-cl-join{position:relative;padding:56px 32px;text-align:center;border:1px solid rgba(34,211,238,.35);background:rgba(2,12,16,.6);box-shadow:0 0 0 1px rgba(255,255,255,.03) inset}
.ks-cl-join:after{content:"";position:absolute;right:-1px;bottom:-1px;width:260px;height:120px;border-right:2px solid #fde68a;border-bottom:2px solid #fde68a;filter:drop-shadow(0 0 10px #f59e0b);opacity:.8;animation:ksClGlow 4s ease-in-out infinite alternate}
@keyframes ksClGlow{from{width:140px;opacity:.4}to{width:320px;opacity:.9}}
.ks-cl-join .ks-cl-label{justify-content:center}
.ks-cl-join__t{margin:14px 0 14px!important;font:900 clamp(32px,4.4vw,54px)/1.02 system-ui,sans-serif!important;text-transform:uppercase;color:#fff!important}
.ks-cl-join__t span{background:linear-gradient(90deg,#67e8f9,#fbbf24,#f97316);-webkit-background-clip:text;background-clip:text;color:transparent}
.ks-cl-join>p:not(.ks-cl-label):not(.ks-cl-join__t){max-width:560px;margin:0 auto 24px!important;font-size:16px!important;line-height:1.6!important}
.ks-cl-join .ks-cl-btns{justify-content:center}
/* en */
.ks-cl-en p{max-width:760px;font-size:16px!important;line-height:1.65!important}
.ks-cl-enl{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}
.ks-cl-enl a{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--line);text-decoration:none!important;color:var(--mut)!important;font-size:13px;line-height:1.4;transition:all .2s}
.ks-cl-enl a b{color:#fff;font-size:16px}
.ks-cl-enl a:hover{border-color:rgba(34,211,238,.5);background:rgba(34,211,238,.06)}
/* faq on dark */
.ks-cl .ks-faq{display:grid;gap:8px}
.ks-cl .ks-faq__item{background:rgba(255,255,255,.025)!important;border:1px solid var(--line)!important;border-radius:0!important;padding:18px 22px!important;margin:0!important}
.ks-cl .ks-faq__q{color:#fff!important;font-weight:700;font-size:17px}
.ks-cl .ks-faq__a{color:var(--mut)!important;font-size:15px;line-height:1.6;margin-top:8px}
.ks-cl-close{margin:64px clamp(20px,5vw,64px) 0!important;padding-top:28px;border-top:1px solid var(--line);font-size:clamp(20px,2.4vw,28px)!important;line-height:1.4!important;color:#e9e5ff!important;max-width:900px}
/* reveal */
.ks-cl [data-rv]{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.ks-cl [data-rv].is-in{opacity:1;transform:none}
@media (max-width:900px){.ks-cl-stats{grid-template-columns:repeat(2,1fr)}.ks-cl-bento{grid-template-columns:1fr 1fr}.ks-cl-card.w3{grid-column:span 2}.ks-cl-topics{grid-template-columns:1fr 1fr}.ks-cl-enl{grid-template-columns:1fr 1fr}.ks-cl-parts{grid-template-columns:1fr}.ks-cl-soon{grid-template-columns:1fr}}
@media (max-width:640px){.ks-cl{border-radius:18px}.ks-cl-hero{min-height:0;padding-top:48px}.ks-cl-bento{grid-template-columns:1fr}.ks-cl-card.w2,.ks-cl-card.w3{grid-column:auto}.ks-cl-tl li{grid-template-columns:1fr;gap:8px}.ks-cl-tl time{text-align:left;padding:0}.ks-cl-tl time:after{display:none}.ks-cl-topics{grid-template-columns:1fr}.ks-cl-topic{min-height:0}.ks-cl-stamp{width:80px;height:80px;font-size:10px;right:14px;top:14px}.ks-cl-proof{padding:28px 22px}.ks-cl-when{text-align:left}.ks-cl-enl{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.ks-cl *{animation:none!important;transition:none!important}.ks-cl [data-rv]{opacity:1;transform:none}}
/* == /KZSL CLOUD STAGE v1 == */

