/* Тренажёр и банк заданий тестовой части. Токены те же, что на главной. */
:root{
  --bg:#FBF7F2; --sf:#F7F0E7; --sf2:#F3EADF;
  --ln:#E7DACA; --ln2:#F0E6DA;
  --tx:#2B1F17; --tx2:#6E5D50; --tx3:#A29283;
  --ac:#6F4630; --ac2:#58361F; --acs:#F3E6D8;
  --ok:#5E8259; --oks:#EAF1E6;
  --dn:#B0513A; --dns:#F8E6E0;
  --g0:#6F4630; --g1:#2B1F17;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{background:var(--sf);color:var(--tx);
  font-family:'Segoe UI',-apple-system,BlinkMacSystemFont,Roboto,'Helvetica Neue',sans-serif;
  font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--ac)}a:hover{color:var(--ac2)}
button,input{font:inherit;color:inherit}
:focus-visible{outline:3px solid #E2B98F;outline-offset:2px}
.wrap{width:100%;max-width:780px;margin:0 auto;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}

/* шапка */
.bnav{position:sticky;top:0;z-index:20;background:rgba(251,247,242,.92);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--ln)}
.bnav-in{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:12px}
.logo{display:flex;align-items:center;gap:9px;font-weight:700;font-size:17px;color:var(--tx);text-decoration:none}
.logo:hover{color:var(--tx)}
.mark{width:28px;height:28px;border-radius:8px;background:var(--ac);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}
.bnav-l{display:flex;gap:4px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.bnav-l a{font-size:14px;color:var(--tx2);text-decoration:none;padding:8px 10px;border-radius:8px}
.bnav-l a:hover{background:var(--sf);color:var(--tx)}
.bnav-l a.cur{color:var(--tx);font-weight:600}

main{padding-block:24px 48px}
.crumbs{font-size:13px;color:var(--tx2);margin-bottom:10px}
.crumbs a{color:var(--tx2)}
h1.bh{font-size:clamp(24px,5vw,32px);line-height:1.18;font-weight:700;letter-spacing:-.3px;text-wrap:balance}
.lede{margin-top:8px;color:var(--tx2);max-width:60ch}

/* переключатель частей */
.tabs{display:flex;gap:6px;margin-top:16px;padding:4px;background:#fff;border:1px solid var(--ln);border-radius:12px;width:fit-content;max-width:100%}
.tabs a{padding:8px 14px;border-radius:9px;font-size:14px;font-weight:600;color:var(--tx2);text-decoration:none}
.tabs a.cur{background:var(--tx);color:#fff}

/* блоки */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.chip{min-height:40px;padding:8px 14px;border-radius:20px;border:1.5px solid var(--ln);
  background:#fff;font-size:14px;font-weight:500;cursor:pointer}
.chip-err{border-color:#EFC9BC;color:var(--dn)}
.chip[aria-pressed="true"]{background:var(--tx);border-color:var(--tx);color:#fff}
.lines{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.lchip{min-width:44px;min-height:36px;padding:6px 10px;border-radius:9px;border:1.5px solid var(--ln);
  background:#fff;font-size:14px;cursor:pointer;font-variant-numeric:tabular-nums}
.lchip[aria-pressed="true"]{border-color:var(--ac);background:var(--acs);color:var(--ac2);font-weight:600}
.prog{display:flex;justify-content:space-between;font-size:13px;color:var(--tx2);margin-top:18px}
.prog b{font-variant-numeric:tabular-nums;font-weight:600;color:var(--tx)}
.bar{height:6px;border-radius:3px;background:var(--ln);overflow:hidden;margin-top:6px}
.bar i{display:block;height:100%;background:var(--ac);border-radius:3px;transition:width .2s}

/* карточка задания */
.tk{background:#fff;border:1px solid var(--ln);border-radius:16px;padding:20px 18px;
  display:flex;flex-direction:column;gap:14px;margin-top:14px}
.tk-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:13px;color:var(--tx2)}
.tk-line{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ac);
  background:var(--acs);padding:5px 9px;border-radius:6px}
.tk-text{font-size:17px;line-height:1.5;font-weight:500}
h1.tk-text{font-size:17px;letter-spacing:0}
.tk-cap{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--tx2);margin-bottom:6px}
.tk-opts,.tk-rows,.tk-legend{list-style:none;display:flex;flex-direction:column;gap:8px}
.tk-opt{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:12px;border:1.5px solid var(--ln2)}
.tk-num{flex:none;width:26px;height:26px;border-radius:8px;background:var(--sf2);display:flex;
  align-items:center;justify-content:center;font-weight:700;font-size:14px}
.tk-otext{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.tk-note{font-size:14px;color:var(--tx2)}
.tk-opt.is-hit{border-color:var(--ok);background:var(--oks)}
.tk-opt.is-hit .tk-num{background:var(--ok);color:#fff}
.tk-opt.is-miss{border-color:var(--ok);border-style:dashed}
.tk-opt.is-miss .tk-num{background:#fff;color:var(--ok);box-shadow:inset 0 0 0 1.5px var(--ok)}
.tk-opt.is-bad{border-color:var(--dn);background:var(--dns)}
.tk-opt.is-bad .tk-num{background:var(--dn);color:#fff}
.tk-opt.is-rest{color:var(--tx2)}
.tk-opt.is-hit .tk-note,.tk-opt.is-miss .tk-note{color:var(--ok)}
.tk-opt.is-bad .tk-note{color:var(--dn)}
.tk-cols{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:18px}
.tk-row{display:flex;flex-direction:column;gap:2px;padding-bottom:8px;border-bottom:1px solid var(--ln2)}
.tk-row b{font-weight:700}
.tk-mark{font-size:13px;font-weight:600}
.tk-row.is-hit .tk-mark{color:var(--ok)}
.tk-row.is-bad .tk-mark{color:var(--dn)}
.tk-legend li{padding:6px 10px;background:var(--sf);border-radius:8px}
.tk-hint{font-size:14px;color:var(--tx2)}

.tk-form{display:flex;gap:8px;align-items:stretch}
.tk-input{flex:1;min-width:0;display:flex;align-items:center;gap:10px;min-height:52px;padding:0 14px;
  border:1.5px solid var(--ln);border-radius:12px;background:#fff;cursor:text}
.tk-input-l{font-weight:600}
.tk-input input{flex:1;min-width:0;border:0;outline:none;background:transparent;font-size:20px;
  font-weight:600;letter-spacing:.14em;font-variant-numeric:tabular-nums}
.tk-input input::placeholder{color:var(--tx3);font-weight:500}
.tk-check{min-height:52px;padding:0 20px;border:0;border-radius:12px;background:var(--ac);color:#fff;
  font-weight:600;cursor:pointer}
.tk-check:hover{background:var(--ac2)}
.tk-empty .tk-input{border-color:var(--dn)}
.tk-ok .tk-input{border-color:var(--ok)}
.tk-no .tk-input{border-color:var(--dn)}
.tk-result{display:flex;flex-direction:column;gap:14px}
.tk-verdict{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:12px}
.tk-ok .tk-verdict{background:var(--oks);color:#2F4A2B}
.tk-no .tk-verdict{background:var(--dns);color:#7A2E1F}
.tk-v-t{font-size:16px}
.tk-v-a{letter-spacing:.08em}
.tk-why p{max-width:65ch}
.tk-retry{align-self:flex-start;min-height:44px;padding:0 16px;border-radius:12px;border:1.5px solid var(--ln);
  background:#fff;font-weight:600;cursor:pointer}

/* диаграмма */
.ch{border:1px solid var(--ln2);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px}
.ch-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;color:var(--tx2)}
.ch-key{display:inline-flex;align-items:center;gap:6px}
.ch-sw{width:12px;height:12px;border-radius:3px;display:inline-block}
.ch-row{display:flex;flex-direction:column;gap:4px}
.ch-cat{font-size:14px}
.ch-bar-line{display:flex;align-items:center;gap:8px}
.ch-bar{height:14px;border-radius:3px;display:block}
.ch-g0{background:var(--g0)}
.ch-g1{background:var(--g1)}
.ch-val{font-size:13px;font-variant-numeric:tabular-nums;color:var(--tx2);min-width:34px}
.ch-cap{font-size:12px;color:var(--tx3)}

.sh{margin:4px 0}
.sh svg{display:block;width:100%;max-width:260px;color:#1b1b1b;background:#fff}

/* навигация по заданиям */
.tnav{display:flex;gap:8px;margin-top:14px}
.tnav a,.tnav button{flex:1;display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 14px;
  border-radius:12px;font-weight:600;text-decoration:none;cursor:pointer;border:1.5px solid var(--ln);background:#fff;color:var(--tx)}
.tnav .pri{flex:2;background:var(--ac);border-color:var(--ac);color:#fff}
.tnav .pri:hover{background:var(--ac2);color:#fff}
.tnav [aria-disabled="true"]{opacity:.45;pointer-events:none}

/* каталог */
.cat-block{margin-top:28px}
.cat-block h2{font-size:21px;line-height:1.25}
.cat-line{margin-top:14px}
.cat-line h3{font-size:15px;color:var(--tx2);font-weight:600;margin-bottom:6px}
.cat-list{list-style:none;display:flex;flex-direction:column;background:#fff;border:1px solid var(--ln);border-radius:12px;overflow:hidden}
.cat-list a{display:flex;gap:12px;padding:11px 14px;color:var(--tx);text-decoration:none;border-top:1px solid var(--ln2);font-size:15px}
.cat-list li:first-child a{border-top:0}
.cat-list a:hover{background:var(--sf)}
.cat-n{flex:none;color:var(--tx3);font-variant-numeric:tabular-nums;min-width:42px}

.promo{margin-top:28px;padding:18px;border-radius:16px;background:var(--tx);color:#fff;display:flex;flex-direction:column;gap:10px}
.promo p{max-width:60ch;color:#EAD7C4}
.promo a{align-self:flex-start;display:inline-flex;align-items:center;min-height:46px;padding:0 18px;border-radius:12px;
  background:#fff;color:var(--tx);font-weight:600;text-decoration:none}
.bfoot{border-top:1px solid var(--ln);padding-block:22px;font-size:13px;color:var(--tx2)}
.bfoot a{color:var(--tx2)}

@media (max-width:560px){
  .tk{padding:16px 14px;border-radius:14px}
  .tk-cols{grid-template-columns:1fr}
  .tk-form{flex-wrap:wrap}
  .tk-check{flex:1}
  .bnav-l a.hide-s{display:none}
}
@media (prefers-reduced-motion:reduce){.bar i{transition:none}}

/* страницы заданий второй части и страницы номеров */
.tk2{display:flex;flex-direction:column;gap:14px}
.tk2 .tk-label{font-size:15px;font-weight:600}
.tk2 .p2-text{border-left:3px solid var(--ln);padding:2px 0 2px 14px;font-size:15px;line-height:1.6}
.tk2 .p2-text p{margin:0 0 8px}
.tk2 .p2-task{background:var(--sf);border-radius:12px;padding:12px 16px;line-height:1.55}
.tk2 .p2-input{width:100%;min-height:150px;padding:12px 14px;border:1.5px solid var(--ln);border-radius:12px;font:inherit;font-size:16px;line-height:1.5;resize:vertical;background:#fff;color:var(--tx)}
.tk2 .p2-input:focus{outline:none;border-color:var(--ac)}
.tk2 .tk-show{align-self:flex-start;min-height:48px;padding:0 20px;border:0;border-radius:12px;background:var(--ac);color:#fff;font-weight:600;cursor:pointer}
.tk2 .p2-ans{border:1.5px solid var(--ok);background:var(--oks);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:8px}
.tk2 .p2-ans .tk-cap{color:var(--ok)}
.tk2 .p2-ans ol{padding-left:22px;display:flex;flex-direction:column;gap:6px}
.tk2 .p2-ans p{margin:0}
.tk2 .ask{color:var(--tx2);font-style:italic}
.tk2 .self{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.tk2 .self-q{font-size:14px;color:var(--tx2)}
.tk2 .self-b{display:flex;gap:8px;flex-wrap:wrap}
.tk2 .self-b button{flex:1;min-height:44px;padding:0 12px;border-radius:12px;border:1.5px solid var(--ln);background:#fff;font-weight:600;cursor:pointer}
.tk2 .self-b button[aria-pressed="true"][data-r="ok"]{border-color:var(--ok);background:var(--oks);color:#2F4A2B}
.tk2 .self-b button[aria-pressed="true"][data-r="part"]{border-color:#C98A1B;background:#FDF4E3;color:#6E4A0B}
.tk2 .self-b button[aria-pressed="true"][data-r="no"]{border-color:var(--dn);background:var(--dns);color:#7A2E1F}
.nm-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.nm-facts span{background:#fff;border:1px solid var(--ln);border-radius:12px;padding:8px 12px;font-size:14px;color:var(--tx2)}
.nm-facts b{color:var(--tx)}
.nm-sec{margin-top:26px}
.nm-sec h2{font-size:22px;line-height:1.25;margin-bottom:10px}
.nm-sec ul{padding-left:20px;display:flex;flex-direction:column;gap:6px}
.nm-trap{background:var(--wrs,#FBEFD9);border-radius:14px;padding:14px 18px;margin-top:12px}
.nm-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:16px}
.nm-grid a{display:flex;flex-direction:column;gap:2px;padding:14px;border-radius:14px;background:#fff;border:1px solid var(--ln);text-decoration:none;color:var(--tx)}
.nm-grid a:hover{border-color:var(--ac)}
.nm-grid b{font-size:22px}.nm-grid small{font-size:12.5px;color:var(--tx2);line-height:1.3}
.nm-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.nm-cta a{display:inline-flex;align-items:center;min-height:48px;padding:0 18px;border-radius:12px;font-weight:600;text-decoration:none;border:1.5px solid var(--ln);background:#fff;color:var(--tx)}
.nm-cta a.pri{background:var(--ac);border-color:var(--ac);color:#fff}
@media (max-width:640px){.nm-grid{grid-template-columns:repeat(3,1fr)}}
.tk2 summary.tk-show{display:inline-flex;align-items:center;list-style:none;width:auto;user-select:none}
.tk2 summary.tk-show::-webkit-details-marker{display:none}
.tk2 details[open] summary.tk-show{background:var(--sf);color:var(--tx);border:1.5px solid var(--ln)}
