/* Електронна співбесіда для кандидата (Вадим 12.11): кольори CRM. */
*{box-sizing:border-box}
body{margin:0;background:var(--bg,#FBFCFD);color:var(--text,#111);font-family:"Golos Text",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.6}
.jn{max-width:820px;margin:0 auto;padding:0 16px 48px}
.jn-head{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.jn-logo{height:36px;width:auto}
.jn-brand{font-size:18px;color:#04254E}
.jn-lang{display:flex;gap:4px;background:#fff;border:1px solid var(--border,#E3E8EF);border-radius:var(--radius,7px);padding:3px}
.jn-lang a{padding:4px 10px;border-radius:5px;color:#667085;text-decoration:none;font-size:13px;font-weight:600}
.jn-lang a.is-on{background:#3585F5;color:#fff}
.jn-main h1{font-size:28px;line-height:1.25;color:#04254E;margin:8px 0 20px}
.jn-card{background:var(--surface,#fff);border:1px solid var(--border,#E3E8EF);border-radius:var(--radius-xl,16px);padding:24px;margin-bottom:12px}
.jn-card h2{font-size:17px;font-weight:600;color:#04254E;margin:0 0 16px}
.jn-video{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000;margin-bottom:14px}
.jn-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.jn-body img{max-width:100%;border-radius:12px}
.jn-body ul{padding-left:20px}
.jn-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.jn-form label{display:flex;flex-direction:column;gap:6px;min-width:0}
.jn-form label>span{font-size:13px;color:var(--text-muted,#5A6679);font-weight:500}
.jn-form label>span b{color:#E5484D;font-weight:600}
.jn-form input,.jn-form textarea{font:inherit;font-size:15px;color:var(--text,#111);border:1px solid var(--border,#E3E8EF);border-radius:var(--input-radius,7px);padding:0 12px;height:40px;background:#fff;width:100%;transition:border-color .15s,background-color .15s}
.jn-form textarea{height:auto;padding:10px 12px}
.jn-form input::placeholder,.jn-form textarea::placeholder{color:var(--text-subtle,#6B7280);opacity:.7}
.jn-form input:hover,.jn-form textarea:hover{border-color:var(--field-active,#A9CFF8)}
.jn-form input:focus,.jn-form textarea:focus{outline:none;border-color:var(--field-active,#A9CFF8);background:var(--field-active-bg,#F1F7FF);box-shadow:var(--focus-ring,0 0 0 3px rgba(53,133,245,.28))}
.jn-q{margin-top:14px}
.jn-q>span{display:flex;gap:10px;color:#1D2939 !important;font-size:15px !important}
.jn-q i{flex:none;width:24px;height:24px;border-radius:50%;background:#E8F1FE;color:#3585F5;font-style:normal;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.jn-btn{margin-top:16px;width:100%;height:44px;border:0;border-radius:var(--btn-radius,7px);background:#3585F5;color:#fff;font:inherit;font-weight:600;font-size:16px;cursor:pointer}
.jn-btn:hover{background:#2A6FD1}
.jn-note{font-size:13px;color:#667085;text-align:center;margin:10px 0 0}
.jn-err{background:#FDECEC;color:#C0362C;border-radius:var(--radius,7px);padding:10px 12px;margin-bottom:12px}
.jn-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.jn-done{text-align:center;padding:40px 24px}
.jn-done__ico{width:56px;height:56px;border-radius:50%;background:#E6F4EE;color:#1F8A5B;font-size:28px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:10px}
@media (max-width:640px){.jn-grid{grid-template-columns:1fr}.jn-main h1{font-size:22px}.jn-card{padding:18px}}
.jn--wide{max-width:1320px}
.jn-who{font-size:14px;color:#667085;font-weight:500}
.jn-lead{color:#667085;margin:-10px 0 20px}
.jn-qhead{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px}
.jn-qhead i{flex:none;width:28px;height:28px;border-radius:50%;background:#E8F1FE;color:#3585F5;font-style:normal;font-weight:700;font-size:13px;display:inline-flex;align-items:center;justify-content:center}
.jn-qhead b{display:block;font-size:16px;line-height:1.45;color:#04254E}
.jn-qhead small{display:block;margin-top:4px;color:#667085;font-size:14px;line-height:1.45}
.jn-qhead>div{flex:1}
.jn-req{color:#E5484D;font-size:22px;line-height:1;font-weight:700}
.jn-qcard{padding:20px 24px}
/* Відповідь на запитання: поля й кнопки як у CRM (Вадим 13.11). */
.jn .rec textarea{border:1px solid var(--border,#E3E8EF);border-radius:var(--input-radius,7px);font-size:15px;min-height:96px}
.jn .rec textarea:hover{border-color:var(--field-active,#A9CFF8)}
.jn .rec textarea:focus{border-color:var(--field-active,#A9CFF8);background:var(--field-active-bg,#F1F7FF);box-shadow:var(--focus-ring,0 0 0 3px rgba(53,133,245,.28))}
.jn .rec-btn{height:36px;border-radius:var(--btn-radius,7px)}
.jn .rec-panel,.jn .rec-item{border-color:var(--border,#E3E8EF);border-radius:var(--radius-lg,8px)}
/* Кроки анкети (Вадим 13.11). */
.jn-steps{display:flex;gap:8px;list-style:none;padding:0;margin:0 0 14px}
.jn-steps li{flex:1;display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border,#E3E8EF);border-radius:var(--radius-lg,8px);background:#fff;font-size:14px;font-weight:600;color:var(--text-muted,#5A6679)}
.jn-steps i{flex:none;width:24px;height:24px;border-radius:50%;background:#EEF3F9;color:#46617F;font-style:normal;font-size:12px;display:inline-flex;align-items:center;justify-content:center}
.jn-steps li.is-on{border-color:var(--field-active,#A9CFF8);background:var(--field-active-bg,#F1F7FF);color:#04254E}
.jn-steps li.is-on i{background:#3585F5;color:#fff}
.jn-steps li.is-done i{background:#1F8A5B;color:#fff}
.jn-grid--3{grid-template-columns:1fr 1fr 1fr;margin-bottom:14px}
.jn-lead2{margin:-8px 0 16px;color:var(--text-muted,#5A6679);font-size:14px}
.jn-actions{display:grid;grid-template-columns:1fr 2fr;gap:10px}
.jn-btn--ghost{background:#fff;color:#04254E;border:1px solid var(--border,#E3E8EF)}
.jn-btn--ghost:hover{background:var(--field-active-bg,#F1F7FF)}
@media (max-width:640px){.jn-grid--3{grid-template-columns:1fr}.jn-actions{grid-template-columns:1fr}}
.jn-cover{aspect-ratio:16/9;border-radius:var(--card-radius,8px);background:#04254E center/cover no-repeat;margin:0 0 14px;border:1px solid var(--border,#E3E8EF)}
/* Підтвердження телефону в Telegram (Вадим 13.11). */
.jn-verify{display:flex;flex-direction:column;gap:6px;margin-top:8px}
.jn-verify__btn{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border:1px solid #BFD6FB;border-radius:var(--btn-radius,7px);background:#F1F7FF;color:#1E5FBF;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.jn-verify__btn:hover{background:#E4EFFF}
.jn-verify__state{font-size:12px;color:var(--text-muted,#5A6679)}
.jn-verify.is-ok .jn-verify__state{color:#1F8A5B;font-weight:600;font-size:13px}
.jn-verify.is-other .jn-verify__state,.jn-verify.is-expired .jn-verify__state,.jn-verify.is-need .jn-verify__state{color:#C0362C}
.jn-btn:disabled{opacity:.5;cursor:not-allowed}

/* Телефон з прапорцем країни на всю ширину поля, як у CRM. */
.jn-form .iti{display:block;width:100%}
/* Сторінка співбесіди не хитається вліво-вправо на телефоні (Вадим 14.11):
   нічого ширшого за екран, ширина за вмістом обрізається. */
html,body{max-width:100%;overflow-x:hidden}
.jn-page,.jn-form,.jn-card,.jn-qcard{max-width:100%;box-sizing:border-box;min-width:0}
.jn-card img,.jn-card video,.jn-card audio,.jn-card iframe,.rec-item video,.rec-item audio,.rec-preview{max-width:100%}
.rec-item audio{width:100%}
.jn-grid,.jn-grid--3{min-width:0}
.jn-grid > *,.jn-grid--3 > *{min-width:0}
.jn-grid input,.jn-grid--3 input{max-width:100%;box-sizing:border-box}
.rec-btns,.rec-actions{flex-wrap:wrap}
