/* LessonSky RC127: premium local practice labs, accessible without remote assets. */
.sk127-experiment,.sk127-meaning{--sk127-bg:#f5f9ff;--sk127-card:#ffffff;--sk127-text:#172d4b;--sk127-muted:#435872;--sk127-border:#b9cfe5;--sk127-accent:#155eaa;--sk127-focus:#0b7ed5;color:var(--sk127-text)!important;background:var(--sk127-bg)!important;border:1px solid var(--sk127-border)!important;box-shadow:0 14px 36px rgba(20,51,91,.07);border-radius:25px!important;padding:clamp(16px,3vw,28px)!important;margin:21px 0;min-width:0;overflow-wrap:anywhere}
.sk127-experiment *,.sk127-meaning *{box-sizing:border-box}
.sk127-kicker{display:block;font-size:.74rem;letter-spacing:.12em;font-weight:850;color:var(--sk127-accent)!important}
.sk127-experiment h2,.sk127-meaning h3{font-size:clamp(1.35rem,2.6vw,1.9rem);line-height:1.3;color:var(--sk127-text)!important;margin:9px 0}
.sk127-experiment p,.sk127-meaning p,.sk127-experiment small,.sk127-meaning small{color:var(--sk127-muted)!important;line-height:1.65}
.sk127-experiment :is(strong,h3,label,summary),.sk127-meaning :is(strong,summary){color:var(--sk127-text)!important}
.sk127-experiment :focus-visible,.sk127-meaning :focus-visible{outline:3px solid var(--sk127-focus)!important;outline-offset:3px}
.sk127-experiment-select{display:flex;flex-direction:column;gap:8px;font-weight:750;margin:21px 0}
.sk127-experiment select,.sk127-experiment textarea,.sk127-meaning button{font:inherit}
.sk127-experiment select,.sk127-experiment textarea{color:var(--sk127-text)!important;background:var(--sk127-card)!important;border:1px solid #829fbd!important;border-radius:12px;padding:12px;max-width:100%;width:100%;min-height:46px}
.sk127-experiment textarea{resize:vertical;min-height:105px;line-height:1.5}
.sk127-experiment-case{background:var(--sk127-card);border:1px solid var(--sk127-border);border-radius:18px;padding:18px;margin:15px 0}
.sk127-experiment-case>span{font-size:.75rem;color:var(--sk127-accent);font-weight:900;letter-spacing:.12em}
.sk127-experiment-case h3{font-size:1.18rem;margin:8px 0 10px}
.sk127-experiment details{padding:13px 15px;margin:12px 0;border:1px solid var(--sk127-border);border-radius:13px;background:var(--sk127-card)}
.sk127-experiment summary{cursor:pointer;font-weight:760}
.sk127-experiment-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:20px 0}
.sk127-experiment-field{display:flex;flex-direction:column;gap:9px;padding:15px;border-radius:16px;border:1px solid var(--sk127-border);background:var(--sk127-card);min-width:0}
.sk127-experiment-field>span{background:#d9edff;color:#15508c;border-radius:10px;width:35px;height:35px;display:grid;place-items:center;font-weight:900}
.sk127-experiment-meter,.sk127-meaning-progress{height:12px;border-radius:999px;background:#d4e4f3;overflow:hidden;margin:14px 0}
.sk127-experiment-meter>span,.sk127-meaning-progress>span{display:block;width:0;height:100%;background:linear-gradient(90deg,#1769be,#12876e);transition:width .18s ease}
.sk127-experiment-feedback,.sk127-meaning [data-sk127-result]{background:var(--sk127-card);border:1px solid var(--sk127-border);border-radius:12px;padding:14px!important;color:var(--sk127-text)!important;font-weight:650}
.sk127-experiment-actions,.sk127-meaning-audio{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:15px 0}
.sk127-experiment button,.sk127-meaning button{background:#155ca5!important;color:#fff!important;border:1px solid #155ca5!important;border-radius:12px!important;padding:11px 16px!important;min-height:44px;cursor:pointer;font-weight:740;max-width:100%}
.sk127-experiment button[data-sk127-clear],.sk127-meaning button[data-sk127-restart]{background:var(--sk127-card)!important;color:var(--sk127-text)!important;border-color:var(--sk127-border)!important}
.sk127-experiment-output{display:flex;flex-direction:column;gap:8px;margin-top:17px;font-weight:700}
.sk127-experiment-output[hidden]{display:none}
.sk127-meaning-term{display:block;font-size:clamp(1.5rem,3vw,2.3rem);padding:16px;border-radius:17px;background:var(--sk127-card);border:1px solid var(--sk127-border);margin:16px 0;color:var(--sk127-text)!important}
.sk127-meaning-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:13px 0}
.sk127-meaning button.sk127-meaning-choice{background:var(--sk127-card)!important;color:var(--sk127-text)!important;border-color:var(--sk127-border)!important;min-height:56px;text-align:left;overflow-wrap:anywhere}
.sk127-meaning button.sk127-meaning-choice.is-correct{border:2px solid #0f895f!important;background:#d8f4e6!important;color:#0c603d!important}
.sk127-meaning button.sk127-meaning-choice.is-wrong{border:2px solid #ab3b49!important;background:#fce8e9!important;color:#7d1d2c!important}
.sk127-experiment button:disabled,.sk127-meaning button:disabled{opacity:.65;cursor:default}
.sk127-experiment .sk127-privacy,.sk127-meaning .sk127-privacy{font-size:.84rem;margin:14px 0 0}
:is(html.lessonsky-dark,html[data-theme=dark],body.lessonsky-dark,body.sk-dark,body.lessonsky-theme-dark) :is(.sk127-experiment,.sk127-meaning){--sk127-bg:#122238;--sk127-card:#203853;--sk127-text:#f3f7fd;--sk127-muted:#c9dcf0;--sk127-border:#587597;--sk127-accent:#a8d4ff;--sk127-focus:#88c7ff;box-shadow:none}
:is(html.lessonsky-dark,html[data-theme=dark],body.lessonsky-dark,body.sk-dark,body.lessonsky-theme-dark) .sk127-experiment-field>span{background:#315b83;color:#e7f4ff}
:is(html.lessonsky-dark,html[data-theme=dark],body.lessonsky-dark,body.sk-dark,body.lessonsky-theme-dark) :is(.sk127-experiment,.sk127-meaning) button:not(.sk127-meaning-choice){border-color:#8ab7ec!important}
@media(max-width:850px){.sk127-experiment-fields{grid-template-columns:1fr}}
@media(max-width:540px){.sk127-experiment,.sk127-meaning{border-radius:17px!important;padding:15px!important}.sk127-meaning-options{grid-template-columns:1fr}.sk127-experiment-actions button{width:100%}}
@media(prefers-reduced-motion:reduce){.sk127-experiment-meter>span,.sk127-meaning-progress>span{transition:none}}
/* Full-catalog listening note cards use the same locally rendered theme tokens. */
.sk127-notebook{--sk127-bg:#f5f9ff;--sk127-card:#fff;--sk127-text:#172d4b;--sk127-muted:#435872;--sk127-border:#b9cfe5;--sk127-accent:#155eaa;--sk127-focus:#0b7ed5;background:var(--sk127-bg)!important;color:var(--sk127-text)!important;border:1px solid var(--sk127-border)!important;border-radius:25px!important;padding:clamp(16px,3vw,28px)!important;margin:21px 0;overflow-wrap:anywhere;min-width:0}
.sk127-notebook *{box-sizing:border-box}
.sk127-notebook h3{font-size:clamp(1.35rem,2.6vw,1.9rem);color:var(--sk127-text)!important;margin:9px 0}
.sk127-notebook p,.sk127-notebook small{color:var(--sk127-muted)!important;line-height:1.65}
.sk127-notebook :focus-visible{outline:3px solid var(--sk127-focus)!important;outline-offset:3px}
.sk127-notebook-task,.sk127-notebook-source{padding:15px;border:1px solid var(--sk127-border);background:var(--sk127-card);border-radius:13px;color:var(--sk127-text)!important}
.sk127-notebook-meter{height:12px;border-radius:999px;background:#d4e4f3;overflow:hidden;margin:16px 0 10px}
.sk127-notebook-meter>span{display:block;background:linear-gradient(90deg,#1769be,#12876e);height:100%;width:0;transition:width .18s ease}
.sk127-notebook-field{font-weight:750;display:flex;flex-direction:column;gap:10px;margin:16px 0;color:var(--sk127-text)!important}
.sk127-notebook textarea{border:1px solid #829fbd!important;background:var(--sk127-card)!important;color:var(--sk127-text)!important;border-radius:12px;font:inherit;line-height:1.55;padding:13px;max-width:100%;resize:vertical}
.sk127-notebook :is([data-sk127-notebook-reveal],[data-sk127-notebook-next],[data-sk127-notebook-reset],[data-sk127-notebook-rate]){font:inherit;font-weight:750;border:1px solid var(--sk127-border)!important;background:var(--sk127-card)!important;color:var(--sk127-text)!important;padding:12px 15px!important;border-radius:12px;cursor:pointer;min-height:44px}
.sk127-notebook [data-sk127-notebook-reveal],.sk127-notebook [data-sk127-notebook-rate="understood"]{background:#185b9e!important;color:#fff!important;border-color:#185b9e!important}
.sk127-notebook [data-sk127-notebook-next]:disabled{opacity:.57;cursor:default}
.sk127-notebook-review,.sk127-notebook-actions{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}
.sk127-notebook-feedback{padding:13px;border:1px solid var(--sk127-border);border-radius:12px;background:var(--sk127-card);font-weight:680;color:var(--sk127-text)!important}
:is(html.lessonsky-dark,html[data-theme=dark],body.lessonsky-dark,body.sk-dark,body.lessonsky-theme-dark) .sk127-notebook{--sk127-bg:#122238;--sk127-card:#203853;--sk127-text:#f3f7fd;--sk127-muted:#c9dcf0;--sk127-border:#587597;--sk127-accent:#a8d4ff;--sk127-focus:#88c7ff}
:is(html.lessonsky-dark,html[data-theme=dark],body.lessonsky-dark,body.sk-dark,body.lessonsky-theme-dark) :is(.sk127-notebook [data-sk127-notebook-reveal],.sk127-notebook [data-sk127-notebook-rate="understood"]){border-color:#8ab7ec!important}
@media(max-width:540px){.sk127-notebook{border-radius:17px!important;padding:15px!important}.sk127-notebook-review button{width:100%}}
@media(prefers-reduced-motion:reduce){.sk127-notebook-meter>span{transition:none}}
/* Hidden states must remain hidden even though the surrounding layouts use flex. */
.sk127-notebook-review[hidden],.sk127-notebook-source[hidden],.sk127-experiment-output[hidden]{display:none!important}
