/* Шрифт берём из веб-корня — те же файлы, что у лендинга и страниц
   резюме (`/fonts/<семейство>-<начертание>-<подмножество>.woff2`). Своей
   копии не заводим: тридцать два файла в двух местах разъедутся молча.
   Диапазоны символов — те же, что в `web._SUBSETS`: без них браузер
   возьмёт последний объявленный файл на все буквы, и кириллица поедет. */
@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/onest-400-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/onest-400-cyrillic-ext.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/onest-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/onest-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/onest-500-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/onest-500-cyrillic-ext.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/onest-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/onest-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/onest-600-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/onest-600-cyrillic-ext.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/onest-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/onest-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* Стиль приложения. Отдельный от страниц резюме намеренно: те — витрина
   человека и меняются под его палитру, а это интерфейс, и подстраивать
   его под чужую палитру нечего. Общее у них только семейство шрифтов,
   которое и так стоит в веб-корне. */
:root{
  --ink:#1a1a1a; --dim:#5c5c5c; --line:#e3e0dc;
  --bg:#fbfaf8; --card:#fff; --mark:#a8380a;
  --w:52rem;
}
*{box-sizing:border-box}
html{font-size:16px}
body{margin:0;background:var(--bg);color:var(--ink);
  font:400 1rem/1.55 Onest,-apple-system,Segoe UI,Roboto,sans-serif;
  display:flex;flex-direction:column;min-height:100vh}
a{color:inherit}
.top,.foot{max-width:var(--w);width:100%;margin:0 auto;padding:1.25rem 1.25rem;
  display:flex;gap:1.25rem;align-items:baseline}
.top{justify-content:space-between}
.brand{font-weight:600;text-decoration:none;letter-spacing:-.01em}
.brand span{color:var(--mark)}
.wrap{max-width:var(--w);width:100%;margin:0 auto;padding:1rem 1.25rem 3rem;flex:1}
h1{font-size:1.9rem;line-height:1.15;letter-spacing:-.02em;margin:.5rem 0 1rem}
/* Мера строки: длиннее 75 знаков глаз теряет начало следующей. */
.lead{max-width:38rem;color:var(--dim)}
.btn{display:inline-block;padding:.6rem 1.1rem;border-radius:.4rem;
  background:var(--ink);color:#fff;text-decoration:none}
.btn:hover{background:var(--mark)}
.foot{color:var(--dim);font-size:.85rem;border-top:1px solid var(--line);
  margin-top:auto;gap:1.5rem}
.foot a{text-decoration:none}
.foot a:hover{text-decoration:underline}

/* вход, согласие, заглушка кабинета */
.step{margin:1.5rem 0}
.small{color:var(--dim);font-size:.9rem}
.warn{max-width:38rem;padding:.75rem 1rem;border-left:3px solid var(--mark);
  background:#fff;color:var(--ink)}
.link{background:none;border:0;padding:0;color:var(--dim);font:inherit;
  text-decoration:underline;cursor:pointer}
.link:hover{color:var(--mark)}
.row{display:flex;gap:1.25rem;align-items:center;margin-top:1.5rem}
.terms{max-width:38rem;padding-left:1.1rem;color:var(--ink)}
.terms li{margin:.5rem 0}
h2{font-size:1.15rem;margin:2rem 0 .5rem;letter-spacing:-.01em}
.pages{list-style:none;padding:0;max-width:38rem}
.pages li{padding:.5rem 0;border-bottom:1px solid var(--line)}
.dim{color:var(--dim)}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}
.pages li{display:flex;gap:.6rem;align-items:baseline}
.when{margin-left:auto;color:var(--dim);font-size:.85rem;white-space:nowrap}
.tag{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--mark);border:1px solid var(--line);padding:.1rem .4rem;
  border-radius:.2rem}

/* онбординг */
textarea,input[type=text]{width:100%;max-width:38rem;font:inherit;padding:.6rem;
  border:1px solid var(--line);border-radius:.3rem;background:var(--card);
  color:var(--ink)}
textarea{resize:vertical}
input[type=file]{font:inherit;max-width:100%}
.q{margin:1.5rem 0;max-width:38rem}
.q label{display:block;font-weight:500;margin-bottom:.3rem}
.q .small{margin:.2rem 0 .5rem}
fieldset.q{border:1px solid var(--line);border-radius:.3rem;padding:1rem}
legend{padding:0 .4rem;font-weight:500}
.opt{display:block;font-weight:400;margin:.35rem 0}
.opts{margin-top:.5rem}
.quiz{margin:2rem 0;max-width:38rem}
.quiz summary{cursor:pointer;font-weight:500;padding:.5rem 0}
.summary{max-width:38rem;background:var(--card);padding:1rem 1.25rem;
  border-radius:.3rem;border:1px solid var(--line);line-height:1.5}
.summary b{font-weight:600}
.crop{width:200px;height:200px;border-radius:.3rem;display:block;margin:.5rem 0}
hr{border:0;border-top:1px solid var(--line);margin:2rem 0;max-width:38rem}

/* вакансия и результат */
.btn.ghost{background:none;color:var(--ink);border:1px solid var(--ink)}
.btn.ghost:hover{background:var(--ink);color:#fff}
.letter{max-width:38rem;background:var(--card);border:1px solid var(--line);
  border-radius:.3rem;padding:1rem 1.25rem;white-space:pre-wrap;line-height:1.55}
.tips{list-style:none;padding:0;max-width:38rem}
.tips li{border-top:1px solid var(--line);padding:.75rem 0}
.tips p{margin:0 0 .4rem}

/* итог обновления профиля: суть строкой, подробности по просьбе */
.upd{max-width:38rem;padding:.7rem 1rem;background:var(--card);
  border-left:3px solid var(--mark);border-radius:0 .3rem .3rem 0}
.more{max-width:38rem;margin:.5rem 0 1.5rem}
.more summary{cursor:pointer;color:var(--dim);font-size:.9rem}
.more pre{white-space:pre-wrap;font:inherit;font-size:.9rem;color:var(--ink);
  background:var(--card);border:1px solid var(--line);border-radius:.3rem;
  padding:.75rem 1rem;margin:.5rem 0 0;overflow-x:auto}

/* главное меню кабинета: одно действие главное, остальные рядом */
.menu{display:grid;gap:.75rem;max-width:38rem;margin:1.5rem 0}
.act{display:block;padding:.9rem 1.1rem;border:1px solid var(--line);
  border-radius:.4rem;background:var(--card);text-decoration:none;color:inherit}
.act b{display:block;font-weight:600}
.act span{color:var(--dim);font-size:.9rem}
.act:hover{border-color:var(--mark)}
.act-main{background:var(--ink);color:#fff;border-color:var(--ink)}
.act-main span{color:#d8d4d0}
.act-main:hover{background:var(--mark);border-color:var(--mark)}
.who{color:var(--dim);font-size:.9rem;margin-right:.75rem}
