/* Экзамены: общие стили поверх player.css */
.exam-head{display:flex;align-items:center;justify-content:space-between;gap:14px;max-width:1060px;margin:0 auto;padding:20px 20px 6px}
.exam-logo{font-family:var(--font-d);font-weight:600;font-size:1rem;white-space:nowrap}
.exam-logo em{font-style:normal;color:var(--gold)}
.exam-back{display:inline-flex;align-items:center;gap:8px;color:var(--ink-dim);font-size:.9063rem;font-weight:600;transition:color .4s var(--ease)}
.exam-back:hover{color:var(--ink)}
.exam-back svg{width:15px;height:15px}

.exam-wrap{max-width:1060px;margin:0 auto;padding:0 20px 80px}
.exam-hero{text-align:center;padding:34px 0 14px}
.exam-hero h1{font-family:var(--font-d);font-weight:700;font-size:clamp(1.9rem,5.4vw,3rem);line-height:1.1;letter-spacing:-.015em;margin:18px auto 14px;max-width:18ch}
.exam-hero p{color:var(--ink-dim);font-size:1.0313rem;max-width:52ch;margin:0 auto}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;border-radius:999px;background:var(--glass);box-shadow:inset 0 0 0 1px var(--line-strong);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}

.exam-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:44px 0 10px}
.exam-card{display:flex}
.exam-card .core{padding:28px 26px;display:flex;flex-direction:column;gap:12px;width:100%}
.exam-tag{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.exam-card h3{font-family:var(--font-d);font-weight:600;font-size:1.375rem;letter-spacing:-.01em}
.exam-card .desc{color:var(--ink-dim);font-size:.9375rem;flex:1}
.exam-card ul{list-style:none;display:grid;gap:9px;margin:4px 0 10px;padding:0}
.exam-card li{position:relative;padding-left:24px;color:var(--ink-dim);font-size:.875rem}
.exam-card li::before{content:"";position:absolute;left:2px;top:7px;width:8px;height:8px;border-radius:3px;background:linear-gradient(135deg,#F6C271,#EBA746)}
.exam-price{display:flex;align-items:baseline;gap:8px;margin-top:2px}
.exam-price b{font-family:var(--font-d);font-weight:700;font-size:1.5rem}
.exam-price s{text-decoration:none;color:var(--ink-faint);font-size:.8125rem}
.price-note{font-size:.75rem;color:var(--ink-faint)}

.exam-section{margin-top:64px}
.exam-section>h2{font-family:var(--font-d);font-weight:600;font-size:clamp(1.4rem,3.4vw,2rem);letter-spacing:-.01em;margin:14px 0 8px}
.exam-section>.sub{color:var(--ink-dim);max-width:60ch;margin-bottom:26px}

.fmt-table{width:100%;border-collapse:collapse;font-size:.9063rem;overflow:hidden;border-radius:18px}
.fmt-wrap{overflow-x:auto;border-radius:18px;box-shadow:inset 0 0 0 1px var(--line)}
.fmt-table th{font-family:var(--font-d);font-weight:600;font-size:.8125rem;text-align:left;color:var(--gold);padding:14px 16px;background:rgba(255,255,255,.04)}
.fmt-table td{padding:13px 16px;color:var(--ink-dim);border-top:1px solid var(--line);vertical-align:top}
.fmt-table td b{color:var(--ink)}

.acc-list{display:grid;gap:12px}
.acc-item{overflow:hidden}
.acc-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;text-align:left;font-family:var(--font-d);font-weight:600;font-size:1rem;letter-spacing:-.01em}
.acc-ic{position:relative;flex:none;width:32px;height:32px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line-strong);transition:transform .6s var(--ease)}
.acc-ic::before,.acc-ic::after{content:"";position:absolute;left:50%;top:50%;background:var(--ink);border-radius:2px;transition:transform .6s var(--ease)}
.acc-ic::before{width:13px;height:2px;transform:translate(-50%,-50%)}
.acc-ic::after{width:2px;height:13px;transform:translate(-50%,-50%)}
.acc-item.open .acc-ic{transform:rotate(90deg)}
.acc-item.open .acc-ic::after{transform:translate(-50%,-50%) scaleY(0)}
.acc-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .7s var(--ease)}
.acc-a>div{overflow:hidden}
.acc-body{padding:0 24px 24px;color:var(--ink-dim);font-size:.9375rem;line-height:1.65}
.acc-item.open .acc-a{grid-template-rows:1fr}
.acc-body .tpl{margin:12px 0;padding:16px 18px;border-radius:14px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line)}
.acc-body .tpl b{color:var(--gold);font-weight:700}
.acc-body .en{color:var(--ink);font-style:italic}
.acc-body ol{padding-left:20px;display:grid;gap:8px;margin:10px 0}
.acc-body blockquote{margin:12px 0;padding:14px 18px;border-radius:14px;background:rgba(124,140,255,.07);box-shadow:inset 0 0 0 1px rgba(124,140,255,.22);font-size:.9063rem}

/* калькулятор */
.calc{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.calc-inputs{display:grid;gap:16px}
.calc-row label{display:block;font-size:.8438rem;font-weight:700;color:var(--ink-dim);margin-bottom:8px;letter-spacing:.04em}
.calc-row input,.calc-row select{
  width:100%;padding:13px 16px;border-radius:14px;border:0;
  background:rgba(255,255,255,.06);color:var(--ink);font:inherit;font-weight:700;
  box-shadow:inset 0 0 0 1px var(--line-strong),inset 0 1px 0 rgba(255,255,255,.06);
  outline:none;transition:box-shadow .4s var(--ease);
}
.calc-row input:focus,.calc-row select:focus{box-shadow:inset 0 0 0 1px rgba(240,178,84,.6),0 0 22px -8px rgba(240,178,84,.5)}
.calc-verdict .core{padding:30px;display:flex;flex-direction:column;gap:14px;text-align:center;align-items:center}
.calc-big{font-family:var(--font-d);font-weight:700;font-size:3.4rem;line-height:1;color:var(--gold);font-variant-numeric:tabular-nums}
.calc-line{color:var(--ink-dim);font-size:.9375rem}
.calc-line b{color:var(--mint)}
.calc-bands{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}
.calc-bands span{padding:9px 4px;border-radius:12px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px var(--line);font-size:.8125rem;color:var(--ink-dim)}
.calc-bands b{display:block;font-family:var(--font-d);color:var(--ink);font-size:1.0625rem}

/* speaking-тренажёр */
.spk{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:stretch}
.cue-card .core{padding:28px;display:flex;flex-direction:column;gap:12px}
.cue-card h4{font-family:var(--font-d);font-weight:600;font-size:1.0625rem}
.cue-card ul{padding-left:20px;display:grid;gap:7px;color:var(--ink-dim);font-size:.9375rem}
.spk-timer{font-family:var(--font-d);font-weight:700;font-size:2rem;font-variant-numeric:tabular-nums;color:var(--ink)}
.spk-timer.warn{color:var(--rose)}
.spk-phase{font-size:.8125rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700}
.spk-stage .core{padding:28px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;justify-content:center}
.spk-transcript{min-height:44px;font-size:.9063rem;color:var(--ink-dim);max-width:44ch}
.spk-transcript .heard{color:var(--mint)}

/* словарь */
.wordbank{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.wb-item{display:flex;align-items:center;gap:12px;padding:13px 16px;border-radius:16px;background:rgba(255,255,255,.045);box-shadow:inset 0 0 0 1px var(--line);text-align:left;transition:box-shadow .4s var(--ease),transform .4s var(--ease)}
.wb-item:hover{box-shadow:inset 0 0 0 1px rgba(240,178,84,.4),0 0 24px -12px rgba(240,178,84,.5)}
.wb-item:active{transform:scale(.97)}
.wb-item b{font-family:var(--font-d);font-weight:600;font-size:.9375rem;display:block}
.wb-item s{text-decoration:none;color:var(--ink-faint);font-size:.8125rem;display:block}
.wb-play{flex:none;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--gold-soft);color:var(--gold)}
.wb-play svg{width:14px;height:14px}

/* AI-собеседник */
.ai-box{display:grid;grid-template-columns:1.2fr 1fr;gap:26px;align-items:start}
.chatdemo{display:grid;gap:10px;margin-top:6px}
.chatdemo .msg{max-width:88%;padding:12px 17px;border-radius:16px;font-size:.9063rem;line-height:1.5}
.chatdemo .m-ai{background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px var(--line);border-bottom-left-radius:6px;justify-self:start}
.chatdemo .m-user{background:rgba(124,140,255,.13);box-shadow:inset 0 0 0 1px rgba(124,140,255,.3);border-bottom-right-radius:6px;justify-self:end}
.toggle-row{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line)}
.toggle-row p{flex:1;font-size:.875rem;color:var(--ink-dim)}
.toggle-row p b{color:var(--ink)}
.switch{position:relative;flex:none;width:52px;height:30px;border-radius:999px;background:rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.4);cursor:pointer;transition:background .4s var(--ease)}
.switch::after{content:"";position:absolute;left:3px;top:3px;width:24px;height:24px;border-radius:50%;background:#cfcabb;transition:transform .4s var(--ease),background .4s var(--ease)}
.switch.on{background:linear-gradient(180deg,#F6C271,#EBA746)}
.switch.on::after{transform:translateX(22px);background:#231708}

.soon-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:rgba(124,140,255,.1);box-shadow:inset 0 0 0 1px rgba(124,140,255,.3);color:var(--indigo);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

/* reading-тренажёр */
.rt-pass{padding:22px 24px;border-radius:18px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-dim);font-size:.9375rem;line-height:1.7;margin-bottom:16px}
.rt-timerbar{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.rt-note{font-size:.8125rem;color:var(--ink-faint)}

@media (max-width:900px){
  .exam-cards{grid-template-columns:1fr;max-width:460px;margin-left:auto;margin-right:auto}
  .calc,.spk,.ai-box{grid-template-columns:1fr}
  .wordbank{grid-template-columns:1fr 1fr}
}
@media (max-width:520px){
  .wordbank{grid-template-columns:1fr}
  .calc-bands{grid-template-columns:repeat(2,1fr)}
}
