

.cena-stroka {
  font-family: 'JetBrains Mono', monospace;
  font-size: 14px;
  color: var(--ink-soft);
  letter-spacing: .02em;
  margin: 18px 0 22px;
  text-align: left;
}


.kal-shapka-stroka {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; margin-bottom: 16px; max-width: 420px;
}
.kal-knopka { font-size: 15px; padding: 12px 18px; }
.kal-mesyac { font-family: 'Manrope', sans-serif; font-weight: 700; font-size: clamp(17px, 2.4vw, 21px); }

.kal-ryad { display: grid; gap: 22px; align-items: start; }
@media (min-width: 860px) { .kal-ryad { grid-template-columns: 420px 1fr; gap: 36px; } }

.kalendar {
  display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px;
  max-width: 420px;
}
.kal-shapka {
  font-family: 'JetBrains Mono', monospace; font-size: 13px; color: var(--ink-soft);
  text-align: center; padding-bottom: 4px;
}
.kal-pusto { min-height: var(--tap); }
.kal-den {
  min-height: var(--tap);
  border: 1.5px solid transparent;
  border-radius: 10px;
  background: #fff;
  color: var(--ink-soft);
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  cursor: default;
}
.kal-den[disabled] { background: #fff; color: #b3b8bf; }
.kal-den.kal-est {
  background: #DDF2E3; border-color: #8fcaa4; color: #1f6b3f; font-weight: 600; cursor: pointer;
}
.kal-den.kal-est:hover { background: #c9e9d3; }
.kal-den.kal-est:focus-visible { outline: 3px solid var(--accent-ink); outline-offset: 2px; }
.kal-den[aria-expanded="true"] { background: var(--ink); border-color: var(--ink); color: #fff; }

.chasy-blok { border: 1px solid var(--line); border-radius: var(--radius); padding: 18px; background: #fff; }
.chasy-zagolovok { font-family: 'Manrope', sans-serif; font-weight: 700; font-size: 18px; margin-bottom: 12px; text-align: left; }
.chasy-spisok { display: flex; flex-wrap: wrap; gap: 8px; }

.slot {
  min-height: var(--tap);
  min-width: 132px;
  border: 1.5px solid var(--ink);
  border-radius: 12px;
  background: #fff;
  color: var(--ink);
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  transition: background .15s ease, color .15s ease;
}
.slot:hover { background: var(--panel); }
.slot:focus-visible { outline: 3px solid var(--accent-ink); outline-offset: 2px; }
.slot[aria-pressed="true"] { background: var(--ink); color: #fff; }

.setka-legenda { color: var(--ink-soft); font-size: 15px; margin: 16px 0 0; }
.setka-remarka { color: var(--ink-soft); font-size: 15px; margin: 8px 0 0; }


.vybor-panel {
  margin-top: 22px;
  border: 1.5px solid var(--ink);
  border-radius: var(--radius);
  padding: 22px;
  background: var(--panel);
}
.vybor-slot {
  font-family: 'Manrope', sans-serif;
  font-weight: 700;
  font-size: clamp(19px, 3vw, 24px);
  margin: 6px 0 16px;
  text-align: left;
}
.vybor-knopki { display: flex; flex-wrap: wrap; gap: 12px; }
.vybor-pod { font-size: 15px; color: var(--ink-soft); margin-top: 14px; }
.vybor-oferta { font-size: 13px; color: var(--ink-soft); margin-top: 10px; line-height: 1.55; }
.vybor-oferta a { color: var(--accent-ink); }


.posle-oplaty {
  margin-top: 22px;
  border: 1.5px solid var(--accent-ink);
  border-radius: var(--radius);
  padding: 22px;
  background: #fff;
}
.posle-oplaty h3 {
  font-family: 'Manrope', sans-serif;
  font-size: clamp(19px, 3vw, 24px);
  margin-bottom: 10px;
}
.posle-knopki { display: flex; flex-wrap: wrap; gap: 12px; margin: 14px 0; }


.kak-rabotaet { border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }
.kak-rabotaet summary {
  cursor: pointer;
  padding: 18px 22px;
  min-height: var(--tap);
  font-family: 'Manrope', sans-serif;
  font-weight: 700;
  font-size: clamp(17px, 2.6vw, 21px);
}
.kak-rabotaet summary:focus-visible { outline: 3px solid var(--accent-ink); outline-offset: -3px; }
.kak-telo { padding: 0 22px 20px; }
.kak-telo ol { margin: 0 0 12px 20px; }
.kak-telo li { margin-bottom: 8px; }


.bezopasno { border-left: 3px solid var(--accent); background: var(--panel); border-radius: var(--radius); padding: 22px 24px; }
.bezopasno h2 { font-size: clamp(19px, 3vw, 24px); margin-bottom: 12px; }
.bezopasno ul { list-style: none; }
.bezopasno li { position: relative; padding-left: 18px; margin-bottom: 9px; }
.bezopasno li::before { content: ''; position: absolute; left: 0; top: 10px; width: 7px; height: 7px; border-radius: 50%; background: var(--accent); }


.usl-grid { display: grid; gap: 22px; }
@media (min-width: 860px) { .usl-grid { grid-template-columns: 1fr 1fr; gap: 32px; } }
.usl-blok h3 { font-family: 'Manrope', sans-serif; font-size: 19px; margin-bottom: 10px; }
.usl-blok ul { margin: 0 0 12px 18px; }
.usl-blok li { margin-bottom: 7px; }
.usl-blok p { font-size: 15px; color: var(--ink-soft); margin-bottom: 10px; }

@media (prefers-reduced-motion: reduce) {
  .slot { transition: none; }
  .slot:hover { transform: none; }
}




.setka-beda {
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: var(--radius);
  border: 1px solid #e0b4b4;
  background: #fdf3f3;
  color: #7a2e2e;
  text-align: left;
  hyphens: none;
  -webkit-hyphens: none;
}

.perehod-k-banku { margin: 18px 0 22px; }

.kod-broni {
  font-family: 'JetBrains Mono', monospace;
  font-size: 16px;
  margin-bottom: 14px;
  text-align: left;
  hyphens: none;
  -webkit-hyphens: none;
}


.domen-banka {
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
  color: var(--ink-soft);
  margin-top: 10px;
  text-align: left;
  hyphens: none;
  -webkit-hyphens: none;
}


.oferta-u-knopki {
  margin: 0 0 16px;
  font-size: 15px;
  color: var(--ink-soft);
  text-align: left;
  max-width: 62ch;
}


.dokumenty-do-knopki {
  margin: 0 0 14px;
  font-size: 15px;
  line-height: 1.55;
  color: var(--ink-soft);
  max-width: 62ch;
}

.dokumenty-do-knopki a { color: var(--accent-ink); }


.predupr-vpn {
  margin: 12px 0 0;
  padding: 10px 14px;
  border-left: 3px solid var(--accent-ink);
  background: var(--tint-soft, rgba(0, 0, 0, 0.04));
  font-size: 15px;
  line-height: 1.5;
  max-width: 62ch;
}
