/* Страница «Доступ для центров» /kak-vojti/ (task1683). Классы kv-* из утверждённого макета. */
.kv-choose{ display:grid; grid-template-columns:1fr; gap:12px; margin:8px 0 22px; }
@media(min-width:620px){ .kv-choose{ grid-template-columns:1fr 1fr; } }
@media(min-width:1000px){ .kv-choose{ grid-template-columns:repeat(4,1fr); } }
.kv-choose a{ display:block; background:var(--paper); border:1px solid var(--line); padding:14px; color:var(--ink); text-decoration:none; min-height:var(--tap); }
.kv-choose a:hover{ border-color:var(--ink); }
.kv-choose b{ display:block; font-family:'PT Serif',serif; font-size:1.05rem; margin-bottom:4px; }
.kv-choose span{ color:var(--ink-soft); font-size:.9rem; }
.kv-sec{ background:var(--paper); border:1px solid var(--line); padding:18px; margin:0 0 var(--gap); scroll-margin-top:12px; }
.kv-sec h2{ margin-top:0; }
.kv-steps{ counter-reset:s; list-style:none; padding:0; margin:0 0 12px; }
.kv-steps > li{ counter-increment:s; position:relative; padding:0 0 12px 40px; }
.kv-steps > li::before{ content:counter(s); position:absolute; left:0; top:0; width:28px; height:28px; border:2px solid var(--ink); font-weight:700; text-align:center; line-height:24px; }
.kv-steps a, .kv-sec p a, .kv-table a{ color:var(--red); }
.kv-hint{ background:var(--muted-bg); padding:10px 12px; font-size:.95rem; margin:8px 0; }
.kv-hint a, details.kv-faq a{ color:var(--red); }
.kv-actions{ display:flex; flex-wrap:wrap; gap:10px; margin-top:6px; }
.kv-slot{ border:2px dashed var(--line); padding:14px; color:var(--ink-soft); margin:8px 0; }
.kv-table{ width:100%; border-collapse:collapse; font-size:.93rem; }
.kv-table th, .kv-table td{ border:1px solid var(--line); padding:8px 10px; text-align:left; vertical-align:top; }
.kv-table th{ background:var(--muted-bg); }
details.kv-faq{ border-top:1px solid var(--line); padding:10px 0; }
details.kv-faq summary{ cursor:pointer; font-weight:700; min-height:var(--tap); display:flex; align-items:center; }
