/* ==================================================================
   TGBLAST — страница гайдов. Наследует токены body.lp из landing.css.
   ================================================================== */

body.lp.gd{scroll-padding-top:96px}
.gd .lp-links a.on{color:var(--accent);background:var(--panel-2)}

/* ---- шапка страницы ---- */
.gd-hero{padding:46px 0 28px;border-bottom:1px solid var(--line);background:#0c0c0d}
.gd-hero h1{margin:12px 0 0;font-size:clamp(27px,3.6vw,40px);font-weight:800;letter-spacing:-.8px;line-height:1.12}
.gd-hero .lp-lead{margin-top:14px;max-width:660px}
.gd-crumbs{margin:0 0 10px;font-size:13px;color:var(--ink-soft)}
.gd-crumbs a{color:inherit}
.gd-crumbs a:hover{color:var(--accent)}
.gd-updated{margin:6px 0 0;font-size:13px;color:var(--ink-soft)}

/* ---- поиск ---- */
.gd-search{position:relative;margin-top:22px;max-width:520px}
.gd-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--ink-faint);fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}
.gd-search input{width:100%;box-sizing:border-box;padding:13px 14px 13px 42px;border:1px solid var(--line);background:var(--panel);border-radius:var(--r-sm);color:var(--ink);font-family:inherit;font-size:14.5px;outline:0;caret-color:var(--accent);transition:border-color .15s}
.gd-search input:focus{border-color:var(--accent)}
.gd-search input::placeholder{color:var(--ink-faint)}
.gd-search input::-webkit-search-cancel-button{filter:invert(.6)}

/* ---- сетка: оглавление + контент ---- */
.gd-layout{display:grid;grid-template-columns:260px 1fr;gap:44px;align-items:start;padding-top:36px;padding-bottom:64px}
.gd-toc{position:sticky;top:84px;max-height:calc(100vh - 110px);overflow:auto;padding-right:6px}
.gd-toc h4,.gd-toc-t{margin:0 0 12px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-faint)}
.gd-toc nav{display:flex;flex-direction:column;border-left:1px solid var(--line)}
.gd-toc nav a{padding:8px 12px;font-size:13.5px;color:var(--ink-soft);border-left:2px solid transparent;margin-left:-1px;line-height:1.35;transition:color .14s, border-color .14s, background .14s}
.gd-toc nav a:hover{color:var(--ink);background:var(--panel)}
.gd-toc nav a.on{color:var(--accent);border-left-color:var(--accent);background:var(--panel)}
.gd-toc-help{margin-top:20px;padding:14px;border:1px solid var(--line);border-radius:var(--r);background:var(--panel)}
.gd-toc-help span{display:block;font-size:12.5px;color:var(--ink-faint);margin-bottom:6px}
.gd-toc-help a{font-size:13px;color:var(--accent);font-weight:600}

/* ---- секции гайдов ---- */
.gd-main{min-width:0}
.gd-sec{padding:0 0 46px;margin-bottom:46px;border-bottom:1px solid var(--line)}
.gd-sec:last-of-type{border-bottom:0}
.gd-sec-h{display:flex;align-items:flex-start;gap:16px;margin-bottom:14px}
.gd-ico{width:44px;height:44px;flex:none;border-radius:var(--r-sm);display:grid;place-items:center;color:var(--accent);background:var(--panel-2);border:1px solid var(--line)}
.gd-ico svg{width:21px;height:21px}
.gd-sec-h h2{margin:6px 0 0;font-size:clamp(20px,2.4vw,27px);font-weight:800;letter-spacing:-.5px;line-height:1.2}
.gd-routes{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.gd-routes span{font-family:var(--mono);font-size:11px;color:var(--ink-faint);background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:3px 8px}
.gd-summary{margin:0 0 26px;font-size:15px;line-height:1.65;color:var(--ink-soft)}
.gd-back{display:block;margin-top:8px;font-size:13.5px;color:var(--ink-faint)}
.gd-back a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.gd-back a:hover{color:var(--accent-dim)}
.gd-sec h3{margin:26px 0 14px;font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}

/* ---- шаги ---- */
.gd-steps{list-style:none;margin:0;padding:0;counter-reset:s}
.gd-step{display:grid;grid-template-columns:40px 1fr;gap:14px;padding:14px 0;border-top:1px solid var(--line-2)}
.gd-step:first-child{border-top:0;padding-top:0}
.gd-step .n{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--accent);padding-top:2px}
/* шаги быстрого старта — h3 внутри .gd-step, но оформление как у h4:
   .gd-sec h3 (моно/аксент/капс) здесь перебивается специфичностью */
.gd-sec .gd-step h3,.gd-step h4{margin:0 0 5px;font-family:inherit;font-size:15px;font-weight:700;letter-spacing:-.15px;line-height:1.3;text-transform:none;color:var(--ink)}
.gd-step p{margin:0;font-size:14px;line-height:1.62;color:var(--ink-soft)}

/* ---- две колонки: поля / советы ---- */
.gd-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;margin-top:8px}
.gd-cols>div{min-width:0}

.gd-fields{margin:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r);background:var(--panel);overflow:hidden}
.gd-fields>div{padding:12px 16px;border-top:1px solid var(--line-2)}
.gd-fields>div:first-child{border-top:0}
.gd-fields dt{font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:3px}
.gd-fields dd{margin:0;font-size:13px;line-height:1.55;color:var(--ink-soft)}

.gd-tips,.gd-pit{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.gd-tips li,.gd-pit li{position:relative;padding-left:20px;font-size:13.5px;line-height:1.55;color:var(--ink-soft)}
.gd-tips li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:2px;background:var(--accent)}
.gd-pit li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:2px;background:var(--warm)}

/* ---- словарь ---- */
.gd-gloss{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gd-term{padding:14px 16px;border:1px solid var(--line);border-radius:var(--r);background:var(--panel)}
.gd-term dt{font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:5px}
.gd-term dd{margin:0;font-size:13px;line-height:1.6;color:var(--ink-soft)}

/* ---- поиск: пусто ---- */
.gd-empty{padding:18px 20px;margin-bottom:24px;border:1px solid var(--line);border-radius:var(--r);background:var(--panel);color:var(--ink-soft);font-size:14px}
.gd-empty a{color:var(--accent)}
.gd-hit{background:var(--accent-soft);color:var(--accent);border-radius:3px;padding:0 2px}

.gd-cta{margin-top:10px}

@media (max-width:1080px){
  .gd-layout{grid-template-columns:220px 1fr;gap:30px}
  .gd-cols{grid-template-columns:1fr;gap:0}
  .gd-gloss{grid-template-columns:1fr}
}
@media (max-width:820px){
  .gd-layout{grid-template-columns:1fr;gap:0}
  .gd-toc{position:static;max-height:none;margin-bottom:28px;padding:16px;border:1px solid var(--line);border-radius:var(--r);background:var(--panel)}
  .gd-toc nav{display:grid;grid-template-columns:1fr 1fr;border-left:0;gap:2px}
  .gd-toc nav a{border-left:0;border-radius:var(--r-sm);padding:8px 10px}
  .gd-toc nav a.on{border-left:0;box-shadow:inset 2px 0 0 var(--accent)}
}
@media (max-width:560px){
  .gd-step{grid-template-columns:30px 1fr;gap:10px}
  .gd-toc nav{grid-template-columns:1fr}
  .gd-sec-h{gap:12px}
  .gd-ico{width:38px;height:38px}
}
