/* P-114 — заявка на подключение организации. Классы и значения из
   docs/html/v91/pages/public/AMAN_P-114_Org-Application_RU.html —
   токены (--r-*, --sp-*) совпадают с public.css дословно. Сегменты
   выбора (.seg) в прототипе — JS-кнопки с aria-pressed; здесь настоящие
   radio, стилизованные через :has(input:checked) (тот же приём, что и
   .tool/.roleopt/.pill в crm-screens.css), не хуже без JS-состояния. */

.lead { margin-bottom: var(--sp-6); }
.lead h1.page { font-size: 22px; letter-spacing: -.02em; margin: 0 0 var(--sp-2); }
.lead p { font-size: 15px; color: var(--ink-2); margin: 0; max-width: none; }

.steps { background: var(--surface); border-radius: var(--r-md); padding: var(--sp-5); margin-bottom: var(--sp-6); }
.steps ol { counter-reset: s; list-style: none; padding: 0; margin: 0; }
.steps li { counter-increment: s; position: relative; padding-inline-start: 34px; margin-bottom: var(--sp-4); font-size: 13.5px; color: var(--ink-2); line-height: 1.55; }
.steps li:last-child { margin-bottom: 0; }
.steps li::before { content: counter(s); position: absolute; inset-inline-start: 0; top: 0; width: 22px; height: 22px; border-radius: 50%; background: var(--primary); color: #fff; display: grid; place-items: center; font-size: 12px; font-weight: 700; }
.steps b { color: var(--ink); }

.card { background: var(--paper); border: 1px solid var(--line); border-radius: var(--r-md); padding: var(--sp-5); margin-bottom: var(--sp-5); }
.two { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-4); }
@media (max-width: 560px) { .two { grid-template-columns: 1fr; } }

.field { margin-bottom: var(--sp-4); }
.field:last-child { margin-bottom: 0; }
.field label { display: block; font-size: 13px; font-weight: 600; margin-bottom: 5px; }
.field .input, .field textarea, .field select { width: 100%; border: 1px solid var(--line-strong); border-radius: var(--r-sm); padding: 10px 12px; font: inherit; font-size: 14.5px; background: var(--paper); color: var(--ink); }
.field textarea { min-height: 84px; resize: vertical; }
.hint { font-size: 12.5px; color: var(--ink-2); margin: var(--sp-2) 0 0; }

.seg { display: flex; gap: var(--sp-2); flex-wrap: wrap; }
.seg label { display: inline-flex; align-items: center; font-size: 13px; padding: 8px 13px; border-radius: var(--r-sm); border: 1px solid var(--line-strong); background: var(--paper); color: var(--ink-2); cursor: pointer; }
.seg label:has(input:checked) { border-color: var(--primary); background: var(--primary-tint); color: var(--primary); font-weight: 600; }
.seg input { position: absolute; opacity: 0; width: 1px; height: 1px; }

.note { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-sm); padding: var(--sp-4); font-size: 13px; color: var(--ink-2); display: flex; gap: 9px; align-items: flex-start; line-height: 1.55; margin-bottom: var(--sp-4); }
.note svg { flex: none; margin-top: 2px; }
.note b { color: var(--ink); }

.formerr { font-size: 13.5px; color: var(--crisis); background: var(--crisis-tint); border: 1px solid var(--crisis-line); border-radius: var(--r-sm); padding: 10px 13px; margin: 0 0 var(--sp-4); }

.done { border: 1px solid var(--positive-line); background: var(--positive-tint); border-radius: var(--r-md); padding: var(--sp-6); text-align: center; }
.done h2 { font-size: 19px; color: var(--positive); margin-bottom: var(--sp-3); }
.done p { font-size: 14.5px; color: var(--ink-2); }
.done .num { font-family: var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace); font-size: 17px; font-weight: 600; color: var(--ink); background: var(--paper); border-radius: var(--r-sm); padding: 6px 14px; display: inline-block; margin: var(--sp-3) 0; }
.done .fine { font-size: 13px; color: var(--ink-3); margin: 0; }
