.kg-guide { --kg-ink:#2B333D; --kg-muted:#5C6571; --kg-line:#d5dfe1; --kg-red:#C50B0E; color:var(--kg-ink); padding:28px 0 80px; font-family:"Mulish",sans-serif; user-select:text; }
.kg-guide * { box-sizing:border-box; }
.kg-guide ::selection { background:#f2d3d3; color:var(--kg-ink); }
.kg-guide svg { width:18px; height:18px; flex-shrink:0; }
.kg-breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; font-size:12px; color:var(--kg-muted); margin-bottom:24px; }
.kg-breadcrumbs a { color:inherit; }
.kg-breadcrumbs a:hover { color:var(--kg-red); }
.kg-draft { display:flex; align-items:center; gap:14px; font-size:12px; color:var(--kg-muted); margin-bottom:38px; }
.kg-draft > span { white-space:nowrap; font-weight:700; }
.kg-draft p { margin:0; }
.kg-hero { max-width:none; margin-bottom:32px; }
.kg-guide h1 { color:var(--kg-ink); font-size:clamp(32px,3.4vw,48px); font-weight:400; line-height:1.15; letter-spacing:-.025em; margin:0 0 16px; text-wrap:wrap; }
.kg-guide h1 strong { font-weight:700; }
.kg-subtitle { font-size:23px; line-height:1.4; margin:0 0 22px; }
.kg-intro { max-width:none; color:var(--kg-muted); font-size:16px; line-height:1.7; }
.kg-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; margin-top:26px; }
.kg-guide .kg-primary { display:inline-block; margin:0; padding:6px 0; font:inherit; font-size:14px; line-height:1.4; color:var(--kg-red); text-decoration:underline; text-underline-offset:4px; }
.kg-guide .kg-primary:hover { color:#E31E24; }
.kg-secondary { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:var(--kg-ink); font-size:14px; }
.kg-secondary:hover { color:var(--kg-red); }
.kg-note { display:block; background:#fff; border:0; border-left:3px solid var(--kg-line); border-radius:0; padding:20px 24px; margin:26px 0; }
.kg-guide .kg-note h3 { margin:0 0 9px; color:var(--kg-ink); font-size:14px; font-weight:700; letter-spacing:0; }
.kg-guide .kg-note p { max-width:none; margin:0; font-size:15px; line-height:1.65; }
.kg-layout { display:grid; grid-template-columns:190px minmax(0,1fr); gap:34px; align-items:start; margin-top:52px; }
.kg-content { min-width:0; }
.kg-toc { position:sticky; top:68px; }
.kg-toc h2 { font-size:14px; font-weight:700; margin:0 0 16px; }
.kg-toc ol { list-style:none; margin:0; padding:0; }
.kg-toc li { margin:0; }
.kg-toc li a { display:flex; align-items:center; min-height:44px; padding:10px 0 10px 12px; margin:0; border-left:2px solid transparent; font-size:13px; line-height:1.5; color:var(--kg-muted); }
.kg-toc li a:hover { color:var(--kg-ink); border-left-color:var(--kg-line); }
.kg-toc li a[aria-current="location"] { color:var(--kg-red); border-left-color:var(--kg-red); font-weight:700; }
.kg-toc-catalog { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:22px; padding:16px 12px; border-top:1px solid var(--kg-line); font-size:13px; color:var(--kg-ink); }
.kg-section { border-top:1px solid var(--kg-line); padding:38px 0 48px; scroll-margin-top:64px; }
.kg-section:first-child { border-top:0; padding-top:0; }
.kg-section h2 { max-width:none; margin:0 0 24px; color:var(--kg-ink); font-size:30px; font-weight:600; line-height:1.3; letter-spacing:-.015em; text-wrap:wrap; }
.kg-section h3 { font-size:19px; font-weight:700; line-height:1.4; margin:28px 0 12px; }
.kg-section > p { max-width:none; font-size:16px; line-height:1.7; margin:0 0 18px; }
.kg-product-link { color:var(--kg-red); text-decoration:underline; text-decoration-color:#dca3a4; text-decoration-thickness:1px; text-underline-offset:3px; }
.kg-product-link:hover { color:var(--kg-red); text-decoration-color:var(--kg-red); }
.kg-table-heading { display:flex; justify-content:space-between; align-items:baseline; flex-wrap:wrap; gap:6px 20px; margin:24px 0 10px; }
.kg-table-heading > span { font-size:13px; font-weight:700; color:var(--kg-muted); }
.kg-table-heading small { font-size:11px; color:var(--kg-muted); }
.kg-table-wrap { width:100%; overflow:auto; background:#fff; border:1px solid var(--kg-line); border-radius:4px; margin:0 0 24px; overscroll-behavior-x:contain; scrollbar-color:#a5b4b8 #e7eef0; scrollbar-width:thin; }
.kg-table { width:100%; min-width:780px; border-collapse:separate; border-spacing:0; font-size:14px; line-height:1.55; }
.kg-table caption { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.kg-table th, .kg-table td { text-align:left; vertical-align:top; padding:17px 18px; border-bottom:1px solid #e4ebed; }
.kg-table thead th { color:var(--kg-ink); background:#e2ebed; font-size:12px; line-height:1.4; font-weight:700; vertical-align:middle; }
.kg-table tbody th { font-weight:700; min-width:160px; }
.kg-table tbody tr:nth-child(even) > * { background:#f6f9fa; }
.kg-table tbody tr:nth-child(odd) > * { background:#fff; }
.kg-table tbody tr:hover > * { background:#eef4f5; }
.kg-table tbody tr:last-child > * { border-bottom:0; }
.kg-table .kg-product-link { color:var(--kg-ink); text-decoration-color:#b2c0c4; }
.kg-table .kg-product-link:hover { color:var(--kg-red); text-decoration-color:var(--kg-red); }
.kg-table td { min-width:110px; }
.kg-unit { display:block; margin-top:4px; color:var(--kg-muted); font-size:11px; font-weight:400; letter-spacing:0; }
.kg-products { min-width:1080px; }
#kg-product-table { max-height:760px; }
.kg-products thead th { position:sticky; top:0; z-index:2; }
.kg-products tr > :first-child { width:225px; min-width:225px; position:sticky; left:0; z-index:1; box-shadow:1px 0 0 var(--kg-line); }
.kg-products thead tr > :first-child { z-index:3; }
.kg-products tbody th { font-size:15px; font-weight:700; vertical-align:middle; }
.kg-products tbody th a { display:block; text-decoration:none; }
.kg-products tbody th a:hover { text-decoration:underline; }
.kg-products td { vertical-align:middle; padding-top:18px; padding-bottom:18px; }
.kg-products thead th:nth-child(4), .kg-products thead th:nth-child(5), .kg-products thead th:nth-child(7) { text-align:center; }
.kg-products .kg-numeric { text-align:center; font-variant-numeric:tabular-nums; white-space:nowrap; }
.kg-value { font-size:16px; font-weight:600; }
.kg-nlgi { color:var(--kg-ink); font-size:14px; font-weight:600; font-variant-numeric:tabular-nums; }
.kg-thickener { font-size:13px; line-height:1.5; }
.kg-base { font-size:13px; }
.kg-temperature { font-weight:600; white-space:nowrap; font-variant-numeric:tabular-nums; }
.kg-extra { display:block; margin-top:5px; font-size:11px; color:var(--kg-muted); white-space:nowrap; }
.kg-matrix { min-width:1180px; }
.kg-matrix thead th { text-align:center; min-width:95px; max-width:120px; }
.kg-matrix tr > :first-child { text-align:left; min-width:170px; position:sticky; left:0; z-index:1; box-shadow:1px 0 0 var(--kg-line); }
.kg-matrix thead tr > :first-child { background:#e2ebed; z-index:2; }
.kg-matrix .kg-compat { padding:12px; vertical-align:middle; text-align:center; }
.kg-state { display:inline-flex; align-items:center; justify-content:center; min-width:24px; height:24px; font-size:17px; font-weight:600; }
.kg-state-yes { color:#215b44; }
.kg-state-test { color:#70550a; font-size:12px; }
.kg-state-no { color:#a02020; }
.kg-ratings { min-width:1000px; }
.kg-rating { font-size:13px; font-weight:500; }
.kg-rating-fair, .kg-rating-good { color:#495963; }
.kg-rating-very-good { color:#375565; }
.kg-rating-excellent { color:#2c6048; }
.kg-rating-best { color:#21533c; }
.kg-guide .kg-footnote { color:var(--kg-muted); font-size:13px; line-height:1.6; }
.kg-guide .kg-scale { max-width:none; font-size:12px; color:var(--kg-muted); }
.kg-scale-separator { display:inline-block; padding:0 7px; color:#adb8bc; }
.kg-formula { background:#fff; border-radius:4px; padding:26px 28px; margin:24px 0; }
.kg-formula strong { display:block; font-size:28px; font-weight:600; font-variant-numeric:tabular-nums; margin-bottom:12px; }
.kg-formula p { max-width:none; margin:0; font-size:14px; line-height:1.65; color:var(--kg-muted); }
.kg-list { list-style:disc; padding-left:22px; margin:16px 0 24px; max-width:none; }
.kg-list li { font-size:16px; line-height:1.7; margin-bottom:12px; padding-left:4px; }
.kg-list li::marker { color:#899ba1; }
.kg-product-cards { display:none; margin:0 0 24px; }
.kg-product-card { border:0; border-bottom:1px solid var(--kg-line); padding:24px 0; background:transparent; }
.kg-section .kg-product-card h3 { font-size:19px; line-height:1.4; margin:0 0 8px; }
.kg-product-card h3 .kg-product-link { color:var(--kg-ink); text-decoration:none; }
.kg-product-card h3 .kg-product-link:hover { color:var(--kg-red); text-decoration:underline; }
.kg-card-thickener { margin:0 0 20px; font-size:12px; color:var(--kg-muted); }
.kg-product-card dl { display:grid; grid-template-columns:1fr 1fr; gap:18px 16px; margin:0; }
.kg-product-card dt { color:var(--kg-muted); font-size:11px; font-weight:400; margin:0 0 5px; }
.kg-product-card dd { color:var(--kg-ink); font-size:15px; font-weight:600; font-variant-numeric:tabular-nums; margin:0; }
.kg-product-card .kg-unit { display:inline; font-size:11px; font-weight:400; }
.kg-product-card .kg-card-temp { grid-column:1/-1; border-top:1px solid #e4ebed; padding-top:16px; }
.kg-product-card .kg-extra { display:inline; margin:0; }
.kg-back { display:inline-flex; align-items:center; gap:12px; min-height:44px; margin-top:16px; color:var(--kg-muted); font-size:13px; }
.kg-guide [hidden] { display:none !important; }
.kg-guide a:focus-visible, .kg-guide button:focus-visible, .kg-guide input:focus-visible, .kg-guide select:focus-visible, .kg-table-wrap:focus-visible { outline:2px solid var(--kg-red); outline-offset:3px; }
@media (max-width:1100px) { .kg-layout { grid-template-columns:170px minmax(0,1fr); gap:26px; } }
@media (max-width:767px) {
  .kg-guide { padding:20px 0 48px; }
  .kg-breadcrumbs { font-size:11px; margin-bottom:22px; }
  .kg-draft { align-items:start; flex-direction:column; gap:8px; font-size:11px; margin-bottom:28px; }
  .kg-subtitle { font-size:19px; line-height:1.5; }
  .kg-intro { font-size:15px; }
  .kg-actions { gap:10px 20px; }
  .kg-guide .kg-primary { font-size:14px; padding:6px 0; }
  .kg-note { padding:21px; }
  .kg-guide .kg-note p { font-size:14px; }
  .kg-layout { display:block; margin-top:34px; }
  .kg-toc { position:static; margin-bottom:38px; }
  .kg-toc ol { display:grid; grid-template-columns:1fr 1fr; gap:0 8px; }
  .kg-toc li a { font-size:12px; min-height:48px; padding:10px 8px; }
  .kg-toc-catalog { margin-top:8px; }
  .kg-section { padding:28px 0 34px; }
  .kg-section h2 { font-size:25px; line-height:1.3; margin-bottom:20px; }
  .kg-section h3 { font-size:18px; }
  .kg-section > p, .kg-list li { font-size:15px; }
  .kg-table th, .kg-table td { padding:14px; }
  .kg-products tr > :first-child { min-width:180px; width:180px; }
  .kg-product-cards { display:block; }
  #kg-product-table, #kg-product-table-heading { display:none; }
  .kg-product-card { padding:24px 0; }
  .kg-formula { padding:22px; }
  .kg-formula strong { font-size:24px; }
}

.kg-catalog-reference { margin:16px 0 24px; font-size:14px; }
.kg-catalog-reference a { color:var(--kg-red); text-decoration:underline; text-underline-offset:3px; }
.kg-criteria-wrap { margin-top:24px; }
.kg-criteria { min-width:0; }
.kg-criteria th:first-child { width:28%; min-width:0; }
.kg-criteria td { min-width:0; }
.kg-table[data-source-table="20"], .kg-table[data-source-table="51"] { min-width:1000px; table-layout:fixed; }
.kg-table[data-source-table="47"] { min-width:1000px; table-layout:fixed; }
.kg-table .kg-product-link { white-space:nowrap; }
.kg-secondary { text-decoration:underline; text-underline-offset:4px; min-height:0; padding:6px 0; }
.kg-guide h1, .kg-section h2, .kg-section > p, .kg-list { overflow-wrap:normal; hyphens:none; }
@media (max-width:767px) {
  .kg-criteria, .kg-criteria tbody { display:block; }
  .kg-criteria thead { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
  .kg-criteria tr { display:block; padding:16px; border-bottom:1px solid #e4ebed; }
  .kg-criteria tr:last-child { border-bottom:0; }
  .kg-criteria tbody tr:nth-child(even) { background:#f6f9fa; }
  .kg-criteria th:first-child, .kg-criteria td { display:block; width:100%; padding:0; border:0; font-size:14px; background:transparent; }
  .kg-criteria td { margin-top:8px; }
  .kg-toc ol { display:block; }
  .kg-toc li a { min-height:40px; }
  .kg-product-card:first-child { padding-top:0; }
  .kg-section .kg-product-card h3 { font-size:17px; }
  .kg-product-card h3 a { text-decoration:underline; text-decoration-color:#b2c0c4; }
}
