.practice-intro{padding:24px;display:grid;gap:16px;justify-items:start}.practice-dialog{width:min(780px,calc(100vw - 24px));max-height:90dvh;border:1px solid #cfe2dc;border-radius:24px;padding:0;color:#153e3b;background:#fbfdfc}.practice-dialog::backdrop{background:#163b36a6}.practice-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid #deebe7;position:sticky;top:0;background:#fbfdfc;z-index:1}.practice-header h2{font-size:24px;margin:0}.practice-body{padding:24px;display:flex;flex-direction:column;gap:16px}.practice-toolbar{display:flex;flex-wrap:wrap;gap:12px}.practice-field{display:grid;gap:8px;flex:1 1 140px;font-size:14px;font-weight:600}.practice-field select,.practice-field input{min-width:0;width:100%;padding:12px;border:1px solid #bdd5cc;border-radius:12px;background:white;font:inherit;color:inherit}.practice-field:first-child{flex-basis:280px}.practice-tabs,.practice-navigation{display:flex;gap:10px;flex-wrap:wrap}.practice-tabs [aria-pressed=true]{background:#187a61;color:white}.practice-counter{font-size:14px;color:#5c7b71;margin:0}.practice-sentence{font-size:clamp(22px,3vw,32px);line-height:1.5;padding:24px;background:#eaf5ee;border-radius:16px;margin:0}.practice-translation{margin:0;color:#506d66;font-size:17px;line-height:1.5}.practice-body textarea{resize:vertical;width:100%;box-sizing:border-box;font:inherit;font-size:19px;line-height:1.7;padding:16px;border:1px solid #bdd5cc;border-radius:14px;background:white;color:#173e3b}.practice-body button{min-height:48px;font-size:16px}.practice-body>.primary-button{align-self:start}.practice-status{font-size:14px;color:#537369;margin:0;min-height:20px}.practice-feedback[data-correct=true]{color:#137158}.practice-feedback[data-correct=false]{color:#9f521b}.practice-body small{font-size:13px;color:#637f75;line-height:1.6}.practice-photo{object-fit:contain;max-height:220px;border-radius:16px}.practice-writing-prompt{line-height:1.7;margin:0}.practice-dialog [hidden]{display:none!important}@media(max-width:600px){.practice-body,.practice-header{padding:18px}.practice-header h2{font-size:21px}.practice-toolbar{flex-direction:column}.practice-field,.practice-field:first-child{flex-basis:auto}.practice-dialog{border-radius:18px}}

.category-dictation-hint{font-size:15px;line-height:1.5;margin:0 12px 12px;color:#426c62}.selection-chip-handle[aria-disabled=true]{cursor:default}.practice-item-kind{align-self:flex-start;background:#e7f3ec;color:#276052;padding:5px 12px;border-radius:999px;font-size:14px;font-weight:600}
.practice-dialog:has(.practice-dictation){width:min(1100px,calc(100vw - 32px));max-height:94dvh}.practice-dialog:has(.practice-dictation) .practice-header{padding:20px 26px}.practice-dictation{padding:26px;gap:18px}.practice-dictation .practice-toolbar{flex-direction:row;align-items:center}.practice-dictation .practice-field,.practice-dictation .practice-field:first-child{flex:1 1 150px;max-width:300px}.practice-review-progress{display:flex;gap:10px;align-items:center;margin-left:auto}.practice-review-progress .practice-item-kind{align-self:auto}.practice-answer-actions{display:flex;gap:10px;flex-wrap:wrap}.practice-answer-actions button{flex:1}.practice-dictation .practice-feedback{margin:0;line-height:1.5}.practice-dictation .practice-status:empty,.practice-dictation .practice-feedback:empty{display:none}.practice-dictation .practice-sentence{font-size:clamp(20px,2.5vw,26px);padding:18px}.practice-dictation .practice-navigation{justify-content:space-between}.practice-dictation .practice-writing-prompt{font-size:16px;line-height:1.6}.practice-checklist{display:grid;gap:12px;font-size:16px}.practice-checklist label{display:flex;align-items:center;gap:10px;line-height:1.5;min-height:40px}.practice-checklist input{width:21px;height:21px;accent-color:#187a61;flex-shrink:0}@media(max-width:600px){.practice-dictation .practice-review-progress{flex:0 0 auto}.practice-dictation,.practice-dialog:has(.practice-dictation) .practice-header{padding:18px}.practice-answer-actions button{flex:1 1 130px}}
/* Interpreting shares the main learning workspace instead of the modal layer. */
.workspace[data-view=practice]{display:block;max-width:1360px}.workspace[data-view=practice] .reading-main{padding:32px clamp(18px,3vw,40px) 40px}.practice-workspace{min-width:0;color:var(--ink,#153e3b)}.practice-workspace[hidden],.practice-workspace [hidden]{display:none!important}.practice-workspace-path{margin-bottom:18px}.practice-workspace-path button{min-height:44px;font-size:15px}.practice-workspace-header{margin-bottom:24px}.practice-workspace-header h1{margin:0 0 8px;font-size:clamp(30px,3vw,40px);line-height:1.35;letter-spacing:-.8px}.practice-workspace-header p{margin:0;color:var(--muted,#506d66);font-size:16px;line-height:1.7}.practice-interpreting{padding:0;gap:20px}.practice-material h2{margin:0;font-size:clamp(23px,2.2vw,30px);line-height:1.5;overflow-wrap:anywhere;word-break:keep-all}.practice-interpreting .practice-toolbar{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(110px,1fr));gap:16px;padding:20px;background:var(--surface,#fff);border:1px solid var(--line,#bdd5cc);border-radius:16px}.practice-interpreting .practice-field{min-width:0;gap:8px;font-size:15px}.practice-interpreting .practice-field select{box-sizing:border-box;padding:12px;min-height:48px;font-size:16px}.practice-direction-row{display:flex;align-items:flex-end;gap:24px}.practice-direction-row .practice-field{flex:1;max-width:440px}.practice-workspace-progress{display:grid;gap:9px;align-self:center;margin-left:auto;min-width:180px;text-align:right}.practice-workspace-progress .practice-counter{font-size:15px;font-weight:600}.practice-workspace-progress progress{display:block;width:100%;height:7px;border:0;border-radius:999px;overflow:hidden;accent-color:var(--pine,#187a61)}.practice-workspace-progress progress::-webkit-progress-bar{background:#dceae3}.practice-workspace-progress progress::-webkit-progress-value{background:var(--pine,#187a61)}.practice-learning-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;align-items:start}.practice-source-panel,.practice-response-panel{min-width:0;padding:26px;border:1px solid var(--line,#bdd5cc);border-radius:18px}.practice-source-panel{background:#edf6ef;min-height:290px}.practice-source-panel h3,.practice-response-panel h3{margin:0;font-size:18px;line-height:1.5}.practice-source-panel h3{margin-bottom:22px;color:#376959}.practice-source-row{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.practice-source-row .practice-sentence{min-width:0;padding:0;background:transparent;border-radius:0;font-size:clamp(26px,2.8vw,34px);line-height:1.65;overflow-wrap:anywhere;word-break:keep-all}.practice-source-row button{min-height:48px;font-size:16px}.practice-response-panel{display:flex;flex-direction:column;gap:16px;background:var(--surface,#fff)}.practice-interpreting textarea{font-size:21px;line-height:1.65;padding:18px;min-height:176px}.practice-interpreting .practice-status:empty,.practice-interpreting .practice-feedback:empty{display:none}.practice-source-panel .practice-status{margin-top:14px}.practice-interpreting .practice-writing-prompt{font-size:15px;line-height:1.6;color:var(--muted,#506d66)}.practice-interpreting .practice-feedback{font-size:15px;line-height:1.6;margin:0;color:#365e55}.practice-model-answer{padding:20px;display:grid;gap:14px;border:1px solid #c6dfd2;background:#f2f8f3;border-radius:14px}.practice-model-answer strong{font-size:16px}.practice-model-answer .practice-translation{font-size:22px;color:#153e3b;line-height:1.6;overflow-wrap:anywhere}.practice-model-answer button{justify-self:start}.practice-interpreting .practice-navigation{justify-content:space-between;padding:22px 0 0;border-top:1px solid var(--line,#bdd5cc)}.practice-interpreting .practice-navigation button{min-width:130px}.practice-interpreting .practice-answer-actions button{min-width:0;line-height:1.5;font-size:16px;min-height:50px}
@media(max-width:900px){.practice-learning-grid{grid-template-columns:minmax(0,1fr)}.practice-source-panel{min-height:0}.practice-source-row{gap:18px}.practice-source-row .practice-sentence{font-size:28px}}
@media(max-width:600px){.workspace[data-view=practice] .reading-main{padding:20px 16px 32px}.practice-workspace-header{margin-bottom:22px}.practice-workspace-header h1{font-size:32px}.practice-workspace-header p{font-size:15px}.practice-interpreting{gap:18px}.practice-interpreting .practice-toolbar{grid-template-columns:1fr 1fr;padding:16px;gap:14px}.practice-interpreting .practice-toolbar .practice-field:first-child{grid-column:1/-1}.practice-direction-row{align-items:center;gap:14px}.practice-direction-row .practice-field{max-width:none}.practice-workspace-progress{min-width:65px;max-width:82px}.practice-learning-grid{gap:18px}.practice-source-panel,.practice-response-panel{padding:20px}.practice-source-panel h3{margin-bottom:16px}.practice-source-row .practice-sentence{font-size:26px;line-height:1.6}.practice-interpreting textarea{font-size:20px;padding:14px;min-height:155px}.practice-model-answer{padding:16px}.practice-model-answer .practice-translation{font-size:21px}.practice-interpreting .practice-navigation button{min-width:0;min-height:48px}}

/* A visible route through each exercise keeps the large workspace welcoming. */
.practice-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0}.practice-steps li{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#f3f7f5;border:1px solid #dbe7e1;border-radius:14px;color:#536f65;font-size:15px;font-weight:600;line-height:1.5;min-width:0}.practice-step-number{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#e2eae5;color:#4b6b5f;font-size:14px}.practice-steps li[data-state=current]{background:#eef8f1;border-color:#72aa91;color:#155b45;box-shadow:0 2px 8px #184e3610}.practice-steps li[data-state=current] .practice-step-number{background:#187a61;color:white}.practice-steps li[data-state=complete]{color:#24644c;background:#f5faf6}.practice-steps li[data-state=complete] .practice-step-number{background:#cde9d7;color:#155b45}.practice-completion-count{font-size:12px;line-height:1.5;color:#526d63;white-space:nowrap}.practice-keyboard-hint{margin-top:-6px;color:#61786d}.practice-result-header{padding:26px;border-radius:20px;background:linear-gradient(125deg,#e8f5eb,#f5f8ed);border:1px solid #cde3d3;display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px 16px;align-items:center}.practice-result-icon{grid-row:1/3;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#187a61;color:white;font-size:30px}.practice-result-header h2{margin:0;font-size:27px;line-height:1.4}.practice-result-header p{margin:0;color:#466b5a;line-height:1.6;font-size:16px}.practice-body .coach-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.practice-body .coach-stats p{display:flex;flex-direction:column;gap:10px;margin:0;padding:18px;border:1px solid #dce8df;border-radius:16px;background:white;color:#426655;line-height:1.5;font-size:15px}.practice-body .coach-stats strong{font-size:30px;color:#153e3b;line-height:1.2}.practice-result-actions{display:flex;flex-wrap:wrap;gap:12px}.practice-result-actions button{min-width:170px}.practice-review-list{border:1px solid #dce8df;border-radius:16px;background:white;overflow:hidden}.practice-review-list summary{padding:18px;font-weight:600;cursor:pointer;min-height:48px;box-sizing:border-box}.practice-review-list ul{list-style:none;padding:0 18px;margin:0 0 8px}.practice-review-list li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-top:1px solid #e5eee8;line-height:1.6;overflow-wrap:anywhere}.practice-review-tag{flex:0 0 auto;font-size:13px;color:#815224;background:#fcf1dd;border-radius:999px;padding:4px 10px}.practice-correction{padding:20px;border:1px solid #e6cfad;border-radius:16px;background:#fffaf1}.practice-correction h3{font-size:17px;margin:0 0 16px;color:#80532b}.practice-correction>p{font-size:14px;line-height:1.6;margin:14px 0 0;color:#775d3e}.practice-correction-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.practice-correction-row{min-width:0;padding:16px;background:white;border-radius:12px;border:1px solid #eee3d0}.practice-correction-label{display:block;font-size:13px;font-weight:600;color:#6b6352;margin-bottom:10px}.practice-correction-phrase{margin:0;font-size:22px;line-height:1.8;overflow-wrap:anywhere;color:#243c35}.practice-difference{border-radius:4px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.practice-difference.actual{background:#ffedda;text-decoration:underline dotted #a55e25;text-underline-offset:5px}.practice-difference.reference{background:#e0f3e5;text-decoration:underline solid #33815b;text-underline-offset:5px}.practice-body :is(button,select,textarea,summary):focus-visible{outline:3px solid #187a61;outline-offset:3px}
@media(max-width:600px){.practice-steps{gap:7px}.practice-steps li{padding:11px 8px;gap:7px;font-size:12px;align-items:flex-start;flex-direction:column;overflow-wrap:anywhere}.practice-step-number{flex-basis:26px;width:26px;height:26px;font-size:13px}.practice-result-header{padding:20px;grid-template-columns:40px minmax(0,1fr);gap:8px 12px}.practice-result-icon{width:40px;height:40px;font-size:24px}.practice-result-header h2{font-size:23px}.practice-result-header p{font-size:14px}.practice-body .coach-stats{gap:8px}.practice-body .coach-stats p{padding:12px 10px;font-size:12px}.practice-body .coach-stats strong{font-size:26px}.practice-result-actions button{flex:1 1 160px;min-width:0}.practice-review-list li{align-items:flex-start}.practice-correction{padding:16px}.practice-correction-rows{grid-template-columns:minmax(0,1fr);gap:10px}.practice-correction-phrase{font-size:20px}.practice-completion-count{font-size:11px;white-space:normal}}
@media(hover:none){.practice-keyboard-hint{display:none}}
