/* «Граф Колесов» — стили раздела: магазины (/magaziny/) и «Партнёрам». Подключается после grafkolesov.css ({% block css %}); порядок правил — как в исходном общем файле, правила общего файла, которые должны перебивать правила раздела, повторены здесь (ТЗ-14). */
.gk-hero-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:48px;align-items:center}
@media (max-width:1023px){.gk-hero-grid{grid-template-columns:minmax(0,1fr)}}
.gk-split--even{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
@media (max-width:1023px){.gk-split--even{grid-template-columns:minmax(0,1fr)}}
.gk-points{display:flex;flex-direction:column}
.gk-point{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--gk-line)}
.gk-point i{width:12px;height:12px;margin-top:6px;border-radius:50%;background:var(--gk-ok);flex-shrink:0}
.gk-point i.pickup{background:var(--gk-acc)}
/* колонки сеток не растягиваются под ширину SVG: иначе на 390 px появляется горизонтальная прокрутка */
.gk-hero-grid>*,.gk-split--even>*{min-width:0}
.gk-drawing,.gk-dial,.gk-car,.gk-map{display:block;width:100%;height:auto}
.gk-dial{max-width:520px}
.gk-errors{color:var(--gk-err);font-size:14px;font-weight:500}
/* отзывы и вопросы */
.gk-reviews{max-width:900px}
.gk-review{padding:16px 0;border-bottom:1px solid var(--gk-line);display:flex;flex-direction:column;gap:6px}
.gk-review header{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.gk-review p{margin:0}
.gk-review blockquote{margin:6px 0 0;padding:10px 14px;border-left:3px solid var(--gk-acc);background:var(--gk-card)}
.gk-rating{display:inline-flex;gap:8px;align-items:center;font-size:18px}
.gk-rate-input{display:flex;gap:8px;flex-wrap:wrap}
.gk-rate-input label{display:flex;gap:6px;align-items:center;padding:8px 12px;border:1px solid var(--gk-line);background:var(--gk-card);cursor:pointer;min-height:44px}
.gk-hero-grid{gap:32px}
.gk-dial{max-width:440px}
.gk-demo{font:600 11px 'JetBrains Mono',monospace;padding:2px 6px;background:var(--gk-neutral);color:var(--gk-on-neutral);letter-spacing:.08em}
/* === UX карточки товара: блоки явно разделены (замечание владельца 25.09) === */
.gk-block{background:var(--gk-card);border:1px solid var(--gk-line);padding:20px;display:flex;flex-direction:column;gap:14px;min-width:0}
.gk-block-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--gk-line)}
.gk-block-head h2{font-size:20px;margin:0}
.gk-block.gk-reviews{padding:20px}
.gk-form-toggle>summary{list-style:none;display:inline-flex;cursor:pointer}
.gk-form-toggle[open]>summary{margin-bottom:12px}
/* похожие товары на карточке: те же карточки, что в каталоге; на телефоне — лента вбок */
.gk-grid--similar{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1100px){.gk-grid--similar{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.gk-grid--similar{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gk-grid--similar .gk-rise{animation:none;opacity:1;transform:none}
@media (max-width:640px){.gk-grid--similar{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -16px;padding:0 16px 6px}.gk-grid--similar>.gk-card{flex:0 0 72%;scroll-snap-align:start}}
:where(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:var(--gk-acc);outline:none;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--gk-acc) 22%,transparent)}
/* ---------- блоки перелинковки: виджет с отступом от каталога ---------- */
.gk-linkgrid{margin-top:40px;padding:20px 22px 22px;background:var(--gk-card);border:1px solid var(--gk-line)}
.gk-lg-tile{position:relative;display:flex;flex-direction:column;gap:3px;height:100%;padding:11px 12px 13px;border:1px solid var(--gk-line);
  background:var(--gk-bg);text-decoration:none;color:var(--gk-ink);transition:border-color .15s,transform .15s;overflow:hidden}
/* внутри карточки товара блок уже в рамке */
.gk-block .gk-linkgrid{margin-top:0;padding:0;border:0;background:none}
.gk-block .gk-linkgrid+.gk-linkgrid{margin-top:22px}
@media (max-width:560px){.gk-linkgrid{padding:16px;margin-left:-16px;margin-right:-16px;border-left:0;border-right:0}}
.gk-brand-tiles2{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}
.gk-brand-tile2-logo{display:grid;place-items:center;height:64px;background:var(--gk-photo-bg);margin:-11px -12px 8px;padding:8px 12px}
.gk-brand-tile2-logo img{max-height:44px;width:auto;max-width:100%;object-fit:contain}
.gk-brand-tile2-logo b{color:var(--gk-on-photo)}
.gk-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--gk-line);font-size:14px;color:var(--gk-ink);text-decoration:none}
/* ---------- шинный калькулятор ---------- */
.gk-calc{display:grid;gap:20px;margin-top:20px}
.gk-calc{gap:28px}
.gk-calc+.gk-linkgrid{margin-top:32px}
.gk-home-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.gk-home-head h2{margin:0}
.gk-side-card{padding:16px 18px;border:1px solid var(--gk-line);background:var(--gk-card)}
.gk-captcha{display:grid;gap:8px;padding:12px;border:1px solid var(--gk-acc);background:var(--gk-card)}
/* ---------- документы, контакты, согласие, cookie ---------- */
.gk-todo{background:color-mix(in srgb,var(--gk-acc) 18%,transparent);color:var(--gk-acc-text);padding:1px 6px;font-size:.9em}
.gk-foot-cookie{border:0;background:none;padding:0;font:inherit;font-size:13px;color:var(--gk-panel-mute);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.gk-cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:50;max-width:720px;margin:0 auto;display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;
  padding:16px 18px;background:var(--gk-card);border:1px solid var(--gk-line);box-shadow:0 18px 40px rgba(0,0,0,.35);font-size:14px;line-height:1.5}
@media (max-width:767px){.gk-cookie{left:0;right:0;bottom:0;padding:10px 16px;gap:8px 12px;font-size:13px;line-height:1.4}}
.gk-cars-what{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}
.gk-cars-what p{margin:0;font-size:15px;line-height:1.55}
@media (max-width:860px){.gk-cars-what{grid-template-columns:minmax(0,1fr)}}
/* список магазинов */
.gk-shop-grid{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}
.gk-shop-card{display:flex;gap:16px;align-items:center;padding:18px;border:1px solid var(--gk-line);background:var(--gk-card);text-decoration:none;color:var(--gk-ink);
  transition:border-color .15s,transform .15s;height:100%}
.gk-shop-card:hover{border-color:var(--gk-acc);transform:translateY(-2px)}
.gk-shop-avatar{flex:none;width:56px;height:56px;display:grid;place-items:center;background:var(--gk-panel);border:1px solid var(--gk-line);
  font:800 24px Onest,sans-serif;color:var(--gk-acc-text)}
.gk-shop-body{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}
.gk-shop-body>b{font-size:19px}
.gk-shop-counts{display:flex;gap:14px;font-size:14px;color:var(--gk-mute)}
.gk-shop-counts em{font-style:normal;font-family:'JetBrains Mono',monospace;color:var(--gk-ink)}
.gk-shop-tags{display:flex;flex-wrap:wrap;gap:6px}
.gk-shop-tags .gk-tag{font-size:12px;padding:3px 8px}
.gk-shop-go{font-size:22px;color:var(--gk-mute)}
.gk-partner-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 24px;align-items:center;margin-top:24px;padding:22px 24px;
  border:1px solid var(--gk-acc);background:color-mix(in srgb,var(--gk-acc) 7%,var(--gk-card));text-decoration:none;color:var(--gk-ink)}
.gk-partner-cta b{font-size:20px}
.gk-partner-cta span{grid-column:1;color:var(--gk-mute);font-size:15px}
.gk-partner-cta em{grid-column:2;grid-row:1/3;font-style:normal;font-weight:700;color:var(--gk-acc-text);white-space:nowrap}
@media (max-width:640px){.gk-partner-cta{grid-template-columns:minmax(0,1fr)}.gk-partner-cta em{grid-column:1;grid-row:auto}}
/* ---------- Лендинги: партнёрам, покупателям, магазины (27.09). Цифры — из базы (apps/pages/landing.py) ---------- */
.gk-meters{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));border-top:1px solid var(--gk-line);border-left:1px solid var(--gk-line)}
.gk-meter{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border-right:1px solid var(--gk-line);border-bottom:1px solid var(--gk-line);min-width:0}
.gk-meter b{font:700 clamp(28px,3.4vw,48px)/1 'JetBrains Mono',monospace;letter-spacing:-.02em}
.gk-meter b small{font-size:.45em;font-weight:500;color:var(--gk-mute);margin-left:4px}
.gk-meter span{font-size:14px;color:var(--gk-mute)}
.gk-meter--acc b{color:var(--gk-acc-text)}
.gk-track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,5),minmax(0,1fr));position:relative;counter-reset:none}
.gk-track::before{content:"";position:absolute;left:0;right:0;top:11px;height:2px;background:var(--gk-line)}
.gk-track li{position:relative;padding:34px 18px 0 0;display:flex;flex-direction:column;gap:6px}
.gk-track li::before{content:"";position:absolute;top:4px;left:0;width:16px;height:16px;background:var(--gk-bg);border:2px solid var(--gk-line)}
.gk-track li b{font-size:17px}
.gk-track li p{margin:0;font-size:14px;color:var(--gk-mute);line-height:1.5}
.gk-track li .gk-mono{font-size:13px;color:var(--gk-mute)}
.gk-track li.is-mark::before{background:var(--gk-acc);border-color:var(--gk-acc)}
.gk-track li.is-mark b{color:var(--gk-acc-text)}
.gk-track li.is-done::before{background:var(--gk-ink);border-color:var(--gk-ink)}
.gk-track li em{font-style:normal;font:600 12px/1.2 'JetBrains Mono',monospace;color:var(--gk-acc-text);text-transform:uppercase;letter-spacing:.08em}
@media (max-width:767px){.gk-track{grid-template-columns:minmax(0,1fr);padding-left:28px}.gk-track::before{left:7px;right:auto;top:0;bottom:0;width:2px;height:auto}.gk-track li{padding:0 0 22px}.gk-track li::before{left:-28px;top:3px}}
.gk-bars{display:flex;flex-direction:column;gap:8px}
.gk-bar-row{display:grid;grid-template-columns:64px minmax(0,1fr) 200px;gap:14px;align-items:center;color:var(--gk-ink);text-decoration:none}
.gk-bar-row b{font:600 15px 'JetBrains Mono',monospace}
.gk-bar-row i{display:block;height:14px;background:linear-gradient(90deg,var(--gk-acc),var(--gk-acc-2));width:var(--w)}
.gk-bar-row span{font:500 13px 'JetBrains Mono',monospace;color:var(--gk-mute);text-align:right;white-space:nowrap}
a.gk-bar-row:hover b{color:var(--gk-acc-text)}
@media (max-width:767px){.gk-bar-row{grid-template-columns:44px minmax(0,1fr) auto;gap:8px}.gk-bar-row span{font-size:12px}}
.gk-terms{display:grid;grid-template-columns:minmax(140px,220px) minmax(0,1fr);margin:0;border-top:1px solid var(--gk-line)}
.gk-terms dt,.gk-terms dd{margin:0;padding:12px 0;border-bottom:1px solid var(--gk-line)}
.gk-terms dt{color:var(--gk-mute);font-size:14px;padding-right:16px}
.gk-terms dd{font-size:16px}
@media (max-width:767px){.gk-terms{grid-template-columns:minmax(0,1fr)}.gk-terms dt{border-bottom:0;padding-bottom:0}.gk-terms dd{padding-top:4px}}
.gk-duo{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.gk-duo>.gk-card{padding:22px;gap:12px}
.gk-duo ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:8px;font-size:16px;line-height:1.5}
.gk-calc{display:flex;flex-direction:column;gap:14px}
.gk-calc-line{font:600 clamp(18px,2vw,24px)/1.3 'JetBrains Mono',monospace}
.gk-calc-line small{font-size:.65em;color:var(--gk-mute);font-weight:500}
.gk-calc-split{display:flex;height:22px;border:1px solid var(--gk-line)}
.gk-calc-split i{display:block;background:var(--gk-line)}
.gk-calc-split i.is-fee{background:var(--gk-acc)}
.gk-calc-legend{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font:500 13px 'JetBrains Mono',monospace;color:var(--gk-mute)}
.gk-calc-legend b{color:var(--gk-acc-text)}
.gk-lead-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.gk-lead-grid .gk-card h3{margin:0;font-size:18px}
.gk-lead-grid .gk-card p{margin:0;color:var(--gk-mute);font-size:15px;line-height:1.55}
.gk-flow{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr) 40px minmax(0,1fr);align-items:stretch;gap:8px}
.gk-flow>.gk-card{gap:8px}
.gk-flow-arrow{align-self:center;justify-self:center;color:var(--gk-acc);font:700 24px 'JetBrains Mono',monospace}
.gk-flow code,.gk-flow .gk-mono{font-size:13px;word-break:break-word}
.gk-flow .is-key{color:var(--gk-acc-text);font-weight:700}
@media (max-width:1023px){.gk-flow{grid-template-columns:minmax(0,1fr)}.gk-flow-arrow{transform:rotate(90deg)}}
.gk-shop-share{display:block;height:6px;background:var(--gk-line)}
.gk-shop-share i{display:block;height:100%;width:var(--w);background:var(--gk-acc)}
.gk-shop-stock{font-size:13px;color:var(--gk-mute)}
.gk-hero-grid .gk-meters{grid-template-columns:repeat(2,minmax(0,1fr))}
/* группы галочек плитками (заявка магазина: товары / услуги) */
.gk-choice-group{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.gk-choice-group legend{font-size:14px;color:var(--gk-mute);padding:0;margin-bottom:10px}
.gk-chips-check{display:flex;flex-wrap:wrap;gap:8px}
.gk-chips-check label{position:relative;cursor:pointer}
.gk-chips-check input{position:absolute;opacity:0;width:1px;height:1px}
.gk-chips-check span{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--gk-line);background:var(--gk-card);font-size:15px;color:var(--gk-ink);transition:border-color .15s,background-color .15s}
.gk-chips-check span::before{content:"";width:14px;height:14px;border:1.5px solid var(--gk-mute);flex:none}
.gk-chips-check input:checked+span{border-color:var(--gk-acc);background:color-mix(in srgb,var(--gk-acc) 10%,var(--gk-card))}
.gk-chips-check input:checked+span::before{background:var(--gk-acc);border-color:var(--gk-acc);box-shadow:inset 0 0 0 2px var(--gk-card)}
.gk-chips-check input:focus-visible+span{outline:2px solid var(--gk-acc);outline-offset:2px}
/* схема «как заявка доходит» — на телефоне списком */
.gk-flow-m{display:none;list-style:none;margin:0;padding:0;counter-reset:f}
.gk-flow-m li{counter-increment:f;display:grid;grid-template-columns:36px 1fr;gap:2px 12px;padding:12px 14px;border:1px solid var(--gk-line);background:var(--gk-card);position:relative}
.gk-flow-m li+li{margin-top:18px}
.gk-flow-m li+li::after{content:"";position:absolute;left:31px;top:-19px;height:18px;border-left:2px solid var(--gk-acc)}
.gk-flow-m li::before{content:counter(f);grid-row:span 2;font:700 18px 'JetBrains Mono',monospace;color:var(--gk-acc-text)}
.gk-flow-m li.is-acc{border-color:var(--gk-acc);border-width:2px}
.gk-flow-m span{color:var(--gk-mute);font-size:14px}
@media (max-width:767px){.gk-flow-m{display:block}.gk-flow-svg{display:none}}
.gk-shop-body .gk-ya-rating{margin-left:0}
/* источник рейтинга подсвечен: значок «Я» и подпись — рейтинг не наш, а с Яндекс Карт */
.gk-ya-src{display:inline-flex;align-items:center;gap:4px;padding:1px 6px 1px 2px;border:1px solid var(--gk-line);background:var(--gk-card);color:var(--gk-ink);font-size:12px}
.gk-ya-mark{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--gk-err);color:var(--gk-on-ok);font:700 11px/1 Onest,sans-serif}
.gk-bar-row>b{white-space:nowrap}
/* ================= аудит 02.10: дизайн, телефон, доступность ================= */
/* фокус: янтарь на светлом фоне ~2:1 — двойное кольцо (тёмное + янтарное) читается на любом фоне (WCAG 1.4.11) */
:where(input,select,textarea,button,summary,a):focus-visible{outline:2px solid var(--gk-acc-text);outline-offset:2px;box-shadow:0 0 0 4px color-mix(in srgb,var(--gk-acc) 35%,transparent)}
.gk-chips-check input:focus-visible+span{outline-color:var(--gk-acc-text)}
/* рамки полей и «призрачных» кнопок — цветом полей (≥3:1 по DESIGN.md), а не линией разделителя (~1,4:1) */
.gk-form textarea,.gk-form input,.gk-btn--ghost{border-color:var(--gk-field-line)}
/* капча — над согласием, рамка обычная, подложка как у фото */
.gk-captcha{border-color:var(--gk-field-line)}
.gk-lg-note,.gk-ya-src,.gk-side-card>b{font-size:13px}
.gk-tag{font-size:13px}
/* ---------- телефон ---------- */
@media (max-width:560px){.gk-shop-body .gk-ya-rating{white-space:normal;flex-wrap:wrap}.gk-shop-stock{font-family:Onest,sans-serif}}
/* списки на «Партнёрам» — те же янтарные ромбы, что в статьях и длинных текстах */
.gk-duo ul{list-style:none;padding-left:0}
.gk-duo ul>li{position:relative;padding-left:26px}
.gk-duo ul>li::before{content:"";position:absolute;left:4px;top:.72em;width:8px;height:8px;background:var(--gk-acc);transform:rotate(45deg)}
.gk-shop-body .gk-ya-rating{margin-left:0}
