.learning-coach,.spl-explainer{margin-top:18px;padding-top:14px;border-top:1px solid var(--ui-line);min-width:0}
.source-task>.spl-dictionary,.practice-task>.spl-dictionary{margin-top:0;padding-top:0;border-top:0}
.learning-reference,.learning-secondary{margin-top:16px;padding-top:14px;border-top:1px solid var(--ui-line);min-width:0}
:is(.learning-coach,.learning-reference,.learning-secondary,.spl-dictionary)>summary{cursor:pointer;font-size:14px;font-weight:650;line-height:1.7}
.learning-reference button,.spl-dictionary-related button{margin:5px 4px 0 0;padding:7px 9px;border:1px solid var(--ui-line);border-radius:7px;background:var(--ui-raised);color:var(--ui-text);cursor:pointer;max-width:100%;overflow-wrap:anywhere}
.spl-dictionary-related{display:flex;flex-wrap:wrap;gap:3px}.spl-dictionary-related button{font:12px/1.5 Consolas,monospace;text-align:left}
.spl-dictionary-example{white-space:pre-wrap;overflow-wrap:anywhere;padding:10px;background:var(--ui-raised);color:var(--ui-text);font:12px/1.7 Consolas,monospace;border-radius:7px}
.spl-dictionary-friendly{padding:10px 12px;background:var(--ui-raised);border-left:3px solid var(--ui-accent);border-radius:0 7px 7px 0;line-height:1.85!important}
.learning-task-brief{font-size:14px!important;line-height:1.7;margin:8px 0!important}
/* A compact workbench: one control row, one brief, then the code. */
.learning-layout .learning-editor{padding:0;min-width:0}
.learning-tools{padding:18px!important;min-width:0}
.learning-tools>.spl-dictionary{margin-top:0;padding-top:0;border-top:0}
.learning-heading #practiceLessonTitle{font-size:26px;margin:8px 0 18px;line-height:1.4}
.learning-heading{display:block}
.learning-editor>.practice-note{margin:0;padding:10px 18px;font-size:12px;color:var(--ui-dim);line-height:1.7}
.learning-layout .learning-editor-brief .learning-task-brief{padding:0}
.learning-editor .integration-compare{padding:0}
.learning-editor [hidden]{display:none!important}
.learning-editor .learning-modes button{border-radius:8px;line-height:1.5}
.learning-editor #integrationTabs{padding:10px 18px;margin:0;border-bottom:1px solid var(--ui-line)}
@media(min-width:1100px){
 .learning-layout{grid-template-columns:320px minmax(0,1fr)!important;gap:20px}
}
.source-sidebar{gap:12px;scrollbar-width:thin}
.source-sidebar-title{display:none}
.source-task,.source-observe{padding:18px}
.source-task>details{margin-top:12px;padding-top:12px}
.source-task>.spl-dictionary{margin-top:0;padding-top:0}
.source-task p.coach-note{margin:9px 0}
.learning-editor{overflow:hidden}
.learning-editor .practice-writing-toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:12px 18px;margin:0;border-bottom:1px solid var(--ui-line)}
.learning-editor .practice-writing-toolbar .learning-modes{display:flex;align-items:center;gap:12px;margin:0!important;padding-right:16px;border-right:1px solid var(--ui-line)}
.learning-editor .learning-modes button{padding:7px 10px;font-size:12px}
.learning-editor .source-integration-start{font-size:12px;text-decoration:none}
.learning-editor .practice-writing-switch button{padding:7px 12px;font-size:12px}
.learning-editor .practice-writing-status{margin-left:auto}
.learning-editor-brief{padding:12px 18px;background:var(--ui-raised);border-bottom:1px solid var(--ui-line)}
.learning-layout .learning-editor-brief .learning-task-brief{margin:0!important;font-size:13px!important;line-height:1.7}
.learning-layout .learning-editor-brief .practice-writing-note{margin:4px 0 0;font-size:12px;line-height:1.6;color:var(--ui-dim)}
.learning-editor .editor-header{padding:10px 18px;min-height:48px;gap:10px}
.learning-layout .learning-editor .editor-wrap{height:clamp(340px,48vh,680px)}
.learning-editor .practice-actions{padding:12px 18px;border-top:1px solid var(--ui-line);margin:0}
.source-compare-control[hidden]{display:none!important}
@media(max-width:760px){
 .learning-editor .practice-writing-toolbar{gap:10px;padding:10px 12px}
 .learning-editor .practice-writing-status{display:none}
 .learning-editor .practice-writing-toolbar .learning-modes{padding-right:10px}
 .learning-editor-brief{padding:10px 12px}
 .learning-layout .learning-editor .editor-wrap{height:420px}
}
.learning-coach h2{font-size:14px!important;margin:0 0 7px!important}.learning-coach button,.practice-studio-links button,.coach-actions button{border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-raised);color:var(--ui-text);font:600 12px/1.5 var(--ui-font,system-ui);padding:9px 12px;cursor:pointer}
.learning-coach button:hover,.coach-actions button:hover{border-color:var(--ui-accent)}.coach-note{font:12px/1.65 var(--ui-font,system-ui)!important;color:var(--ui-dim);overflow-wrap:anywhere}.spl-explainer :is(input,select){width:100%;min-width:0;margin:5px 0;padding:8px;border-radius:7px;border:1px solid var(--ui-line);background:var(--ui-panel);color:var(--ui-text);font:12px/1.4 Consolas,monospace}.spl-explanation{font-size:13px;line-height:1.7;overflow-wrap:anywhere}.spl-explanation>strong{display:block;margin-top:12px;color:var(--ui-accent);font:600 13px/1.5 Consolas,monospace}.spl-explanation p{font-size:13px!important}.spl-explanation ol{padding-left:20px}.spl-explanation li{margin:7px 0}.coach-caution{padding:10px;border-left:2px solid #c39748;background:var(--ui-raised)}
.coach-dialog{width:min(820px,calc(100vw - 24px));max-height:92dvh;padding:24px;border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-panel);color:var(--ui-text);box-shadow:0 30px 90px #0007}.coach-dialog::backdrop{background:#07111bc7;backdrop-filter:blur(5px)}.coach-dialog h2{font-size:22px;margin:0 0 10px}.coach-dialog>p{font-size:13px;line-height:1.7}.coach-dialog>label{font-size:13px}.coach-dialog textarea{display:block;width:100%;height:48dvh;min-height:180px;resize:vertical;margin:14px 0;padding:14px;background:var(--ui-raised);color:var(--ui-text);border:1px solid var(--ui-line);border-radius:8px;font:13px/1.65 var(--ui-font,system-ui)}.coach-actions{display:flex;gap:8px;flex-wrap:wrap}.coach-dialog button:disabled{opacity:.5}.coach-dialog :focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}
.spl-dictionary-search{display:flex;gap:5px;align-items:center;min-width:0}.spl-dictionary-search input{flex:1;width:0}.spl-dictionary-lookup{flex:none;border:1px solid var(--ui-line);border-radius:7px;background:var(--ui-raised);color:var(--ui-text);font:600 12px/1.4 system-ui;padding:8px;cursor:pointer}.spl-dictionary :focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}
.spl-dictionary-results{display:grid;gap:5px;max-height:330px;overflow:auto}.spl-dictionary-results:empty{display:none}.spl-dictionary-results button{display:block;width:100%;min-width:0;padding:9px;text-align:left;border:1px solid var(--ui-line);border-radius:7px;background:var(--ui-raised);color:var(--ui-text);cursor:pointer}.spl-dictionary-results button:hover{border-color:var(--ui-accent)}.spl-dictionary-results code{display:block;color:var(--ui-accent);font:600 12px/1.5 Consolas,monospace;overflow-wrap:anywhere;white-space:normal}.spl-dictionary-results span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font:12px/1.5 system-ui;margin-top:3px;color:var(--ui-dim)}
.spl-dictionary .spl-explanation>details{margin:10px 0;border-top:1px solid var(--ui-line);padding-top:9px}.spl-dictionary .spl-explanation>details>summary{font:600 12px/1.6 system-ui;cursor:pointer}.spl-dictionary .spl-explanation>details>code{display:block;margin:9px 0;padding:9px;border:1px solid var(--ui-line);border-radius:6px;background:var(--ui-raised);font:12px/1.6 Consolas,monospace;white-space:normal;overflow-wrap:anywhere}.spl-dictionary dl{margin:10px 0}.spl-dictionary dt{font:600 12px/1.5 Consolas,monospace;color:var(--ui-accent);overflow-wrap:anywhere}.spl-dictionary dd{margin:3px 0 12px;font:12px/1.65 system-ui}.spl-dictionary-options{color:var(--ui-dim);overflow-wrap:anywhere}.spl-dictionary-original{padding:8px;background:var(--ui-raised);color:var(--ui-text);max-height:260px;overflow:auto;white-space:pre-wrap;font:12px/1.5 Consolas,monospace;overflow-wrap:anywhere}.spl-dictionary .coach-caution{font-size:12px!important}
