/* Languages, Sanskrit, Preschool, TOEFL and Entrance (.cs-* and .ph-*), on top of code.css */
.cs-native{font-style:normal;font-weight:700;color:var(--muted);font-size:.86em}
.cs-page h1 .cs-native{font-size:.6em;display:inline-block;margin-left:6px}
.cs-method{background:var(--card);border-radius:20px;padding:16px 20px;box-shadow:var(--shadow);margin:16px 0 4px;border-left:6px solid var(--grape,#7b5cff)}
.cs-method h2{margin:0 0 8px}
.cs-method ol{margin:0;padding-left:20px}
.cs-method li{margin:5px 0}
.cs-note{color:var(--muted);font-weight:700;font-size:.9rem;margin:10px 0 0}

/* a phrase: the words, how to say them, what they mean */
.ph-list{list-style:none;margin:0;padding:0;counter-reset:ph}
.ph-list li{display:grid;gap:2px;padding:12px 0 12px 44px;border-bottom:1px solid rgba(27,42,87,.1);position:relative;counter-increment:ph}
[data-theme=dark] .ph-list li{border-color:rgba(255,255,255,.1)}
.ph-list li:last-child{border-bottom:0}
.ph-list li::before{content:counter(ph);position:absolute;left:0;top:12px;width:28px;height:28px;border-radius:50%;background:var(--c,#7b5cff);color:#fff;font-weight:900;font-size:.8rem;display:grid;place-items:center}
.ph-x{font-size:1.3rem;font-weight:800;color:var(--head);line-height:1.4}
.ph-say{font-weight:800;color:var(--c,#7b5cff);font-size:.94rem}
.ph-mean{font-weight:700}
.ph-note{color:var(--muted);font-size:.9rem}

.cs-sounds{width:100%;border-collapse:collapse}
.cs-sounds th{text-align:left;padding:7px 10px 7px 0;font-weight:800;color:var(--head);white-space:nowrap;vertical-align:top}
.cs-sounds td{padding:7px 10px 7px 0;vertical-align:top}
.cs-sounds tr+tr th,.cs-sounds tr+tr td{border-top:1px solid rgba(27,42,87,.1)}
[data-theme=dark] .cs-sounds tr+tr th,[data-theme=dark] .cs-sounds tr+tr td{border-color:rgba(255,255,255,.1)}
.cs-say{color:var(--c,#7b5cff);font-weight:800;white-space:nowrap}
.cs-ex{margin:8px 0 0;padding-left:20px}
.cs-ex li{margin:4px 0;font-weight:700}

.cs-nav{display:flex;justify-content:space-between;gap:10px;margin:18px 0 8px;flex-wrap:wrap}
.cs-nav a{background:var(--card);border-radius:999px;padding:9px 18px;font-weight:800;text-decoration:none;color:var(--head);box-shadow:var(--shadow)}
.cs-nav a.next{background:var(--c,#7b5cff);color:#fff}

@media (max-width:760px){
  .cs-page h1 .cs-native{display:block;margin:2px 0 0}
  .ph-x{font-size:1.15rem}
}

/* Sanskrit (.sk-*) */
.sk-hero{--h1:#c9772f;--h2:#8f4f9d}
.sk-tabs{margin:16px 0 4px}
.sk-honest{background:var(--soft);border-radius:14px;padding:11px 15px;margin:4px 0 12px}
.sk-dev{font-size:1.15rem;line-height:2;color:var(--head);font-weight:700;margin:6px 0}
.sk-dev span{display:block}
.sk-dev.big{font-size:1.5rem;line-height:2.1}
.sk-full{background:var(--card);border-radius:20px;padding:18px 22px;box-shadow:var(--shadow);margin:12px 0;border-left:6px solid var(--c,#c9772f)}
.sk-iast{color:var(--muted);font-style:italic;margin:6px 0 2px}
.sk-say{color:var(--c,#c9772f);font-weight:800;margin:2px 0 0}
.sk-card .sk-dev{font-size:1rem;line-height:1.8;margin:2px 0 4px}
.sk-verse h2,.sk-sci h2{margin:4px 0 6px}
.sk-mean{font-weight:800;color:var(--head);font-size:1.05rem}
.sk-why{color:var(--muted)}
.sk-evid,.sk-limit{margin:8px 0 0}
.sk-limit{color:var(--muted)}
.sk-care{border-left:6px solid #e0a33d}
.sk-care ul{margin:6px 0 0;padding-left:20px}
.sk-care li{margin:5px 0}

/* Preschool (.ps-*) */
.ps-hero{--h1:#e07a9f;--h2:#8f6fd6}
.ps-band{max-width:none}
.ps-h{margin:14px 0 2px}
.ps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin:12px 0}
.ps-grid h3,.ps-watch h3,.ps-support h3{margin:0 0 6px;color:var(--head)}
.ps-list,.ps-watch ul,.ps-support ul{margin:0;padding-left:19px}
.ps-list li,.ps-watch li,.ps-support li{margin:5px 0}
.ps-watch{border-left:6px solid #e07a3f}
.ps-support{border-left:6px solid #06d6a0}
@media (max-width:760px){.ps-grid{grid-template-columns:1fr}}

/* TOEFL and Entrance practice (.tf-*, .tq-*) */
.tf-hero{--h1:#3b6fe0;--h2:#8f6fd6}
.tf-disc{background:var(--soft);border-radius:14px;padding:11px 15px}
.tf-page{max-width:820px}
.tf-passage{background:var(--card);border-radius:18px;padding:16px 20px;box-shadow:var(--shadow);margin:12px 0;line-height:1.75}
.tf-passage p{margin:0 0 13px;position:relative}
.tf-para{display:inline-block;min-width:22px;height:22px;border-radius:50%;background:var(--soft);color:var(--muted);font-size:.72rem;font-weight:900;text-align:center;line-height:22px;margin-right:8px;vertical-align:1px}
.tf-script,.tf-model{background:var(--card);border-radius:16px;padding:10px 16px;box-shadow:var(--shadow);margin:12px 0}
.tf-script summary,.tf-model summary{cursor:pointer;font-weight:800;color:var(--head)}
.tf-src{background:var(--soft);border-radius:16px;padding:12px 16px;margin:12px 0}
.tf-src p{margin:6px 0}
.tf-board{display:grid;gap:10px;margin:12px 0}
.tf-post{background:var(--soft);border-radius:16px;padding:11px 15px;border-left:4px solid var(--c,#3b6fe0)}
.tf-post b{color:var(--head)}
.tf-post p{margin:4px 0 0}
.tf-answer{line-height:1.75}
.tf-task{border-left:6px solid var(--c,#3b6fe0)}
.tf-task h2{font-size:1.15rem;margin:6px 0 8px}
.tf-task h3{margin:14px 0 4px}

.tq-list{list-style:none;margin:0;padding:0;counter-reset:tq}
.tq{background:var(--card);border-radius:18px;padding:14px 18px;box-shadow:var(--shadow);margin:12px 0;border-left:6px solid transparent}
.tq.ok{border-left-color:#06d6a0}
.tq.no{border-left-color:#e05a5a}
.tq-q{margin:0 0 10px;font-weight:700;color:var(--head)}
.tq-opts{display:grid;gap:6px}
.tq-opt{display:flex;gap:9px;align-items:flex-start;padding:7px 11px;border-radius:12px;cursor:pointer;background:var(--soft)}
.tq-opt input{margin-top:3px}
.tq-opt b{color:var(--muted);margin-right:5px}
.tq-opt.is-right{background:rgba(6,214,160,.18)}
.tq-opt.is-right b{color:#059e77}
.tq-opt.is-wrong{background:rgba(224,90,90,.16)}
.tq-why{display:none;margin:10px 0 0;padding:10px 13px;border-radius:12px;background:var(--soft);color:var(--muted)}
.tq.shown .tq-why{display:block}
.tq-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:16px 0 8px;position:sticky;bottom:10px}
.tq-score{font-weight:900;color:var(--head)}

/* Entrance (.en-*) */
.en-hero{--h1:#3b6fe0;--h2:#e05a7a}
.en-weight h2{margin:4px 0 4px}
.en-table{width:100%;border-collapse:collapse;margin-top:8px}
.en-table th{text-align:left;padding:7px 10px 7px 0;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}
.en-table td{padding:9px 10px 9px 0;vertical-align:top;border-top:1px solid rgba(27,42,87,.1)}
[data-theme=dark] .en-table td{border-color:rgba(255,255,255,.1)}
.en-pc{white-space:nowrap;font-weight:900;color:var(--c,#3b6fe0)}
.en-step{border-left:6px solid #3b6fe0}
.en-step h3{margin:0 0 5px;color:var(--head)}
.en-care{border-left:6px solid #e0a33d}
.en-help{border-left:6px solid #06d6a0;background:rgba(6,214,160,.08)}
.tq-tag{margin:0 0 6px;font-size:.76rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
@media (max-width:760px){
  .en-table,.en-table tbody,.en-table tr,.en-table td{display:block;width:100%}
  .en-table thead{display:none}
  .en-table tr{border-top:1px solid rgba(27,42,87,.1);padding:8px 0}
  .en-table td{border:0;padding:2px 0}
}

/* On a phone the two-column tables stack; nowrap cells were widening the whole page. */
@media (max-width:760px){
  .cs-sounds,.cs-sounds tbody,.cs-sounds tr,.cs-sounds th,.cs-sounds td{display:block;width:100%}
  .cs-sounds th{white-space:normal;padding:0}
  .cs-sounds tr{padding:9px 0;border-top:1px solid rgba(27,42,87,.1)}
  [data-theme=dark] .cs-sounds tr{border-color:rgba(255,255,255,.1)}
  .cs-sounds tr:first-child{border-top:0}
  .cs-sounds tr+tr th,.cs-sounds tr+tr td{border-top:0}
  .cs-sounds td{padding:2px 0}
  .cs-say{white-space:normal}
}

/* Scratch inside Code Master (.sc-*) */
.sc-hero{--h1:#4c97ff;--h2:#ff9f1c}
.sc-free{background:rgba(6,214,160,.12);border-radius:14px;padding:11px 15px;font-weight:700}
.sc-note h2{margin:2px 0 6px}
.sc-get h2{margin:2px 0 6px}
.sc-out{font-weight:800;color:var(--c,#4c97ff);word-break:break-word}
.sc-group h2{display:flex;align-items:center;gap:8px;margin:2px 0 2px}
.sc-dot{width:14px;height:14px;border-radius:50%;background:var(--c);display:inline-block;flex:none}
.sc-block{display:inline-block;background:var(--c,#4c97ff);color:#fff;border-radius:999px;padding:3px 12px;font:inherit;font-size:.86rem;font-weight:800;white-space:nowrap}
.sc-blocks{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 0}
.cs-sounds th .sc-block{white-space:normal}
