/* IELTS overview: one calm visual hierarchy for study, progress and goals. */
.ielts-start{position:relative;overflow:hidden;border:1px solid #cfe0d7;border-radius:20px;background:linear-gradient(120deg,#f7fbf8 0%,#e9f3ed 100%);padding:clamp(20px,4vw,34px);box-shadow:0 12px 32px rgba(40,90,72,.07)}.ielts-start:after{content:"";position:absolute;width:220px;height:220px;right:-85px;top:-120px;border-radius:50%;background:rgba(80,143,111,.12);pointer-events:none}.ielts-start-copy{position:relative;z-index:1;max-width:680px}.ielts-start h1{max-width:540px;margin:5px 0 9px;font-size:clamp(27px,4vw,39px);line-height:1.14}.ielts-start-copy>p:not(.eyebrow){max-width:580px;color:var(--ds-muted);font-size:15px}.ielts-start-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px}.ielts-start-actions form{margin:0}.ielts-start-actions>a{font-weight:700;font-size:14px;text-decoration:none}.ielts-today{position:absolute;z-index:1;right:clamp(20px,4vw,34px);bottom:clamp(20px,4vw,30px);width:210px;padding:16px;border:1px solid rgba(40,90,72,.14);border-radius:14px;background:rgba(255,255,255,.78);backdrop-filter:blur(8px)}.ielts-today>span{font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--ds-primary)}.ielts-today strong{display:block;margin:3px 0;font-size:29px;line-height:1;color:var(--ds-primary)}.ielts-today strong small{font-size:13px;font-weight:600;color:var(--ds-muted)}.ielts-today p{margin:7px 0 10px;color:var(--ds-muted);font-size:12px}.ielts-today a{font-size:12px;font-weight:750}.ielts-quick-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0 22px}.ielts-quick-nav a{display:flex;align-items:center;gap:9px;min-width:0;padding:13px 14px;border:1px solid var(--ds-line);border-radius:12px;background:var(--ds-surface);color:var(--ds-text);font-size:13px;font-weight:750;text-decoration:none}.ielts-quick-nav a:hover{border-color:#a8c8b5;background:#f7fbf8}.ielts-quick-nav i{color:var(--ds-primary);font-size:17px}.goal-strip{padding:12px 15px;border:1px solid var(--ds-line);border-radius:12px;background:var(--ds-surface);margin:0 0 18px}.goal-strip strong{font-variant-numeric:tabular-nums}.roadmap-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.roadmap-stage{transition:transform .16s ease,box-shadow .16s ease}.roadmap-stage:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(40,90,72,.08)}.goal-form select{width:100%}@media(max-width:800px){.ielts-today{position:relative;right:auto;bottom:auto;width:min(100%,320px);margin-top:20px}.ielts-quick-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.ielts-start{border-radius:16px;padding:20px}.ielts-start h1{font-size:28px}.ielts-quick-nav{gap:8px}.ielts-quick-nav a{padding:11px;font-size:12px}.goal-strip{font-size:13px}.roadmap-heading h2{font-size:21px}}
/* Shared surface, typography and navigation system. Loaded after page styles. */
.learning-journey{padding:clamp(16px,3vw,26px);margin-bottom:20px;border:1px solid #d6e3eb;border-radius:16px;background:linear-gradient(125deg,#f3f8fc,#fff);color:#18374b;min-width:0}.learning-journey h2{font-size:clamp(19px,3vw,25px);color:#18374b}.learning-journey p{font-size:14px;line-height:1.65}.learning-journey>small{display:block;font-size:12px;color:#546b7a}.learning-journey progress{display:block;width:100%;height:9px;margin:12px 0;accent-color:#245d7e}.journey-stats{display:flex;flex-wrap:wrap;gap:20px}.journey-stats span{font-size:12px}.journey-stats strong{display:block;font-size:25px}.journey-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.journey-actions a{display:flex;flex-direction:column;gap:5px;padding:12px;border:1px solid #d6e3eb;border-radius:12px;background:#fff;color:#18374b;text-decoration:none;min-width:0;overflow-wrap:anywhere}.journey-actions small{font-size:12px}.answer-feedback{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.feedback-row{padding:16px;background:#fff9f0;border:1px solid #ead9bd;border-radius:12px;overflow-wrap:anywhere}.feedback-row.is-correct{background:#f0f8f6;border-color:#c5ddd5}.feedback-row h3{font-size:16px}.feedback-row p{margin-bottom:7px}@media(max-width:600px){.answer-feedback{grid-template-columns:1fr}.journey-actions{grid-template-columns:1fr}.journey-actions a{padding:10px 12px}.learning-journey{border-radius:12px}}
.roadmap-card{margin:20px 0;padding:clamp(18px,3vw,28px);border:1px solid #d9e4df;border-radius:20px;background:linear-gradient(145deg,#f5faf7,#fff);box-shadow:0 8px 24px rgba(37,70,56,.045)}.roadmap-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.roadmap-heading h2{margin:4px 0 6px;color:#29443a;font-size:clamp(20px,3vw,27px)}.roadmap-heading p:not(.eyebrow){max-width:700px;margin:0;color:#687a70;font-size:.88rem;line-height:1.55}.roadmap-time{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:8px 11px;border-radius:999px;background:#e8f2e9;color:#47705a;font-size:.75rem;font-weight:750}.roadmap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:20px}.roadmap-stage{padding:15px;border:1px solid #dce9df;border-radius:15px;background:#fff;min-width:0}.roadmap-stage--core{border-color:#d9e2f1;background:#fbfcff}.roadmap-stage--advanced{border-color:#eadcc9;background:#fffdf9}.roadmap-stage-top{display:flex;align-items:center;gap:8px;color:#718078;font-size:.72rem;font-weight:750}.roadmap-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#e6f2e9;color:#3e7753}.roadmap-stage--core .roadmap-icon{background:#e8effb;color:#416ca5}.roadmap-stage--advanced .roadmap-icon{background:#fff0d9;color:#a46c24}.roadmap-stage>strong{display:block;margin-top:12px;color:#315b47;font-size:1.05rem}.roadmap-stage h3{font-size:1rem;margin:4px 0 7px;color:#314357}.roadmap-stage p{min-height:70px;margin:0 0 10px;color:#697a72;font-size:.79rem;line-height:1.55}.roadmap-stage small{display:block;color:#526b5c;font-size:.72rem;line-height:1.45}.roadmap-stage small i{color:#4d875e}@media(max-width:800px){.roadmap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roadmap-heading{display:block}.roadmap-time{margin-top:12px}}@media(max-width:575px){.roadmap-card{border-radius:14px;padding:16px}.roadmap-grid{grid-template-columns:1fr;gap:8px}.roadmap-stage p{min-height:0}.roadmap-stage{padding:13px}}
:root{--ds-bg:#f5f7f6;--ds-surface:#fff;--ds-soft:#edf3ef;--ds-text:#1f2937;--ds-muted:#53645d;--ds-line:#dce5df;--ds-primary:#285a48;--ds-hover:#1e4638;--ds-accent:#a84730;--moc-bg:var(--ds-bg);--moc-surface:var(--ds-surface);--moc-ink:var(--ds-text);--moc-muted:var(--ds-muted);--moc-line:var(--ds-line)}
[data-bs-theme=dark]{--ds-bg:#111b18;--ds-surface:#192722;--ds-soft:#24382e;--ds-text:#e5eee9;--ds-muted:#b3c3ba;--ds-line:#3a5044;--ds-primary:#87c9aa;--ds-hover:#a3ddc2;--ds-accent:#f0ab95;--moc-bg:var(--ds-bg);--moc-surface:var(--ds-surface);--moc-ink:var(--ds-text)}
body{background:var(--ds-bg);color:var(--ds-text);font-size:16px;letter-spacing:0;line-height:1.6}
[data-bs-theme=dark] body{background:var(--ds-bg);color:var(--ds-text)}
.brand-mark{background:var(--ds-primary);color:var(--ds-surface)}
h1,h2,h3{color:var(--ds-text);letter-spacing:-.025em}h1{font-size:clamp(26px,3vw,34px);font-weight:750}h2{font-size:20px;font-weight:700}h3{font-size:17px}
a{color:var(--ds-primary)}a:hover{color:var(--ds-hover)}.muted,.meta,.eyebrow,.form-text{color:var(--ds-muted)}.eyebrow{font-size:11px;letter-spacing:.1em}
.btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:14px;border-radius:9px;font-weight:650;white-space:normal}
.btn-primary,.studio-primary,.btn-dark{background:var(--ds-primary);border-color:var(--ds-primary);color:#fff}
.btn-primary:hover,.studio-primary:hover,.btn-dark:hover{background:var(--ds-hover);border-color:var(--ds-hover);color:#fff}
[data-bs-theme=dark] .btn-primary,[data-bs-theme=dark] .studio-primary,[data-bs-theme=dark] .btn-dark{color:#12261c}
.btn-outline-secondary,.btn-light{color:var(--ds-text);border-color:var(--ds-line);background:var(--ds-surface)}
.form-control,.form-select{min-height:44px;background-color:var(--ds-surface);color:var(--ds-text);border-color:var(--ds-line);font-size:15px}
.form-control:focus,.form-select:focus{border-color:var(--ds-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--ds-primary) 20%,transparent)}
:focus-visible{outline:3px solid var(--ds-primary);outline-offset:3px}
.errorlist{color:#b42318;margin:6px 0;padding-left:20px}[data-bs-theme=dark] .errorlist{color:#fda29b}
.app-nav,.mobile-nav{background:var(--ds-surface)!important;border-color:var(--ds-line)!important}
.nav-link,.mobile-nav a,.profile-trigger,.action-circle{color:var(--ds-muted)!important}.navbar-brand{color:var(--ds-text)!important}
.nav-search,.action-circle{background:var(--ds-soft)}.nav-search input{color:var(--ds-text)}
.entry-content,.detail-content{color:var(--ds-text);font-size:16px}.meta{font-size:13px}.entry-card h2{font-size:21px}
.entry-card,.side-card,.compose-card,.auth-card,.family-card,.notification-page,.quick-ielts-post,.news-entry,.studio-workspace,.studio-panel{background:var(--ds-surface);border-color:var(--ds-line);box-shadow:none;border-radius:14px}
.learning-nav{position:fixed;left:0;top:68px;bottom:0;width:232px;padding:24px 16px;background:var(--ds-surface);border-right:1px solid var(--ds-line);overflow:auto;z-index:100}
.learning-nav a{display:flex;align-items:center;gap:12px;padding:11px 13px;color:var(--ds-muted);text-decoration:none;font-size:14px;border-radius:9px}
.learning-nav a:hover,.learning-nav [aria-current=page]{background:var(--ds-soft);color:var(--ds-primary)}
.learning-nav [aria-current=page]{font-weight:750}.learning-nav .learning-logo{padding:4px 7px 22px;color:var(--ds-text);font-weight:750;font-size:15px}
.learning-logo span{display:grid;place-items:center;width:32px;height:32px;background:var(--ds-primary);color:var(--ds-surface);border-radius:10px;font-size:23px}
.nav-caption{font-size:10px;font-weight:750;letter-spacing:.12em;color:var(--ds-muted);margin:16px 12px 6px}
.nav-secondary{margin-top:22px;border-top:1px solid var(--ds-line);padding-top:10px}.nav-secondary a{font-size:13px}.nav-footnote{margin:35px 12px 15px;color:var(--ds-muted);font-size:13px}
.learning-shell main.container{padding:30px 32px!important}
.learning-shell .navbar-collapse{justify-content:space-between}
@media(min-width:992px){.learning-shell .nav-main{display:flex!important}.learning-shell .nav-search{display:flex!important}}
.page-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.page-top h1{margin:3px 0 7px}.page-top p{margin:0;color:var(--ds-muted)}.page-top .btn{flex-shrink:0}
.ds-card{padding:23px;background:var(--ds-surface);border:1px solid var(--ds-line);border-radius:14px;min-width:0;margin-bottom:20px}
.goal-strip{display:flex;gap:20px;flex-wrap:wrap;align-items:center;font-size:14px;color:var(--ds-muted);margin-bottom:24px}.goal-strip strong{color:var(--ds-text)}.goal-strip a{margin-left:auto}
.resume-card{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--ds-soft);padding:28px;border:1px solid var(--ds-line);border-radius:16px;margin-bottom:22px}
.practice-onboarding{display:grid;grid-template-columns:minmax(0,1.5fr) auto auto;align-items:center;gap:18px;margin:0 0 22px;padding:20px 22px;border:1px solid #cfe1d8;border-radius:16px;background:linear-gradient(135deg,#f7fcf8,#edf6ef);box-shadow:0 8px 22px rgba(40,90,72,.05)}.practice-onboarding__badge{display:inline-flex;align-items:center;gap:6px;color:var(--ds-primary);font-size:11px;font-weight:800;letter-spacing:.08em}.practice-onboarding h2{margin:5px 0;font-size:20px}.practice-onboarding p{max-width:590px;margin:0;color:var(--ds-muted);font-size:14px}.practice-onboarding__steps{display:grid;gap:7px;color:var(--ds-muted);font-size:12px}.practice-onboarding__steps span{display:flex;align-items:center;gap:7px;white-space:nowrap}.practice-onboarding__steps b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--ds-primary);color:#fff;font-size:11px}.practice-onboarding__actions{display:grid;gap:8px}.practice-onboarding__actions form{margin:0}.practice-onboarding__actions .btn{width:100%;white-space:nowrap}.practice-onboarding>small{grid-column:1/-1;color:var(--ds-muted);font-size:11px}.score-result{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:4px 14px;margin:0 0 14px;padding:15px 17px;border:1px solid #cfe1d8;border-radius:12px;background:#f4faf5}.score-result>span{grid-column:1/-1;color:var(--ds-primary);font-size:11px;font-weight:800;letter-spacing:.08em}.score-result>strong{font-size:29px;line-height:1;color:var(--ds-primary)}.score-result p{margin:0;color:var(--ds-muted);font-size:13px}.score-result small{grid-column:1/-1;color:var(--ds-muted);font-size:11px;line-height:1.45}.prompt-reader{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px;padding:11px 12px;border:1px solid var(--ds-line);border-radius:10px;background:var(--ds-soft)}.prompt-reader .btn{min-height:38px}.prompt-reader small{color:var(--ds-muted);font-size:12px}
.resume-card h2{font-size:25px;margin:7px 0}.resume-card p{margin:0;color:var(--ds-muted)}.resume-card .btn{flex-shrink:0}
.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.metric-grid .ds-card>span{font-size:14px;color:var(--ds-muted)}.metric-grid strong{display:block;font-size:34px;margin:8px 0 3px;line-height:1.3}.metric-grid strong small{font-size:15px;font-weight:500}.metric-grid p{margin:0;font-size:13px;color:var(--ds-muted)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:20px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.card-heading h2{margin:0}.card-heading>a{font-size:13px}
.attempt-row{display:flex;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid var(--ds-line);color:var(--ds-text);text-decoration:none}.attempt-row:last-child{border:0}.attempt-title{flex:1;min-width:0}.attempt-title strong{display:block;overflow-wrap:anywhere;font-size:15px}.attempt-title small{display:block;font-size:13px;color:var(--ds-muted)}
.skill-icon{display:grid;place-items:center;width:38px;height:42px;background:var(--ds-soft);color:var(--ds-primary);border-radius:9px;flex-shrink:0}
.status-pill{display:inline-flex;align-items:center;background:var(--ds-soft);color:var(--ds-primary);padding:4px 9px;border-radius:6px;font-size:12px;white-space:nowrap}
.task-link{display:flex;align-items:center;gap:12px;color:var(--ds-text);text-decoration:none;padding:14px 0;border-bottom:1px solid var(--ds-line)}.task-link>span{flex:1}.task-link small{display:block;color:var(--ds-muted);font-size:13px}
.week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin:18px 0}.week-grid>div{text-align:center;padding:8px 2px;border-radius:8px}.week-grid small{font-size:10px;display:block;color:var(--ds-muted)}.week-grid strong{font-size:16px}.week-grid .is-today{background:var(--ds-soft)}
.score-row{display:flex;gap:14px;align-items:center;margin:18px 0}.score-row>span{width:85px;font-size:14px}.score-row meter{flex:1;min-width:0;accent-color:var(--ds-primary)}
.goal-form{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:20px}.goal-form label{font-size:13px}.goal-form .btn{align-self:end}
details:target{scroll-margin-top:140px}details>summary{cursor:pointer}
.ds-empty{text-align:center;padding:30px 15px}.ds-empty>i{font-size:32px;color:var(--ds-primary)}.ds-empty h3{margin:12px 0}.ds-empty p{color:var(--ds-muted);font-size:14px}
.library-search{display:flex;align-items:center;gap:12px;background:var(--ds-surface);padding:10px 14px;border:1px solid var(--ds-line);border-radius:10px;margin-bottom:22px}
.library-search input{flex:1;border:0;background:transparent;color:var(--ds-text);min-width:0;outline:0}.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.exam-tile{display:flex;flex-direction:column;margin:0}.exam-tile p{color:var(--ds-muted);flex:1}.exam-tile h2{font-size:19px;overflow-wrap:anywhere}
.form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.editor-card{max-width:850px}.form-field{margin:0 0 18px}.form-field label{display:block;font-weight:650;font-size:14px;margin-bottom:6px}.form-field small{display:block;margin-top:5px}
.inline-note{background:var(--ds-soft);color:var(--ds-text);border-left:3px solid var(--ds-primary);padding:13px 16px;border-radius:6px;font-size:14px}
.focus-shell .app-nav,.focus-shell .learning-nav,.focus-shell .mobile-nav,.focus-shell .scroll-top{display:none!important}
.focus-shell main.container{padding:20px 24px!important}
.workspace-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.workspace-header h1{font-size:20px;margin:0;overflow-wrap:anywhere}.workspace-header>div:nth-child(2){flex:1}
.exam-timer{display:flex;align-items:center;gap:10px;border:1px solid var(--ds-line);background:var(--ds-surface);padding:9px 12px;border-radius:10px;flex-shrink:0}.exam-timer strong{font-size:22px;font-variant-numeric:tabular-nums}.exam-timer button{border:0;color:var(--ds-text);background:var(--ds-soft);border-radius:6px;width:40px;height:40px}
.exam-timer.warning{color:#a84730;border-color:#c67660}[data-bs-theme=dark] .exam-timer.warning{color:#f0ab95}
.workspace-notice{font-size:13px;color:var(--ds-muted)}.workspace-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ds-line);border-radius:14px;background:var(--ds-surface);overflow:hidden}
.exam-prompt,.answer-area{padding:26px;min-width:0;height:calc(100dvh - 180px);min-height:400px;overflow:auto}.exam-prompt{border-right:1px solid var(--ds-line);background:var(--ds-surface)}.exam-prompt h2,.answer-area h2{font-size:18px}
.prompt-content{white-space:normal;overflow-wrap:anywhere;line-height:1.85}.answer-area{display:flex;flex-direction:column;background:var(--ds-surface)}
.answer-area textarea{flex:1;resize:none;width:100%;border:0;outline:none;padding:16px 0;min-height:200px;background:transparent;color:var(--ds-text);font-size:16px;line-height:1.85}.answer-area textarea:focus-visible{outline:2px solid var(--ds-line);outline-offset:4px}
.answer-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:16px;border-top:1px solid var(--ds-line);margin-top:12px}.answer-area [data-save-state]{color:var(--ds-muted);font-size:12px}
.listening-player{background:var(--ds-soft);border:1px solid var(--ds-line);border-radius:12px;padding:16px;margin:18px 0 24px}.listening-player .card-heading{font-size:13px;flex-wrap:wrap}.audio-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.audio-controls label,.audio-controls span{font-size:12px}.audio-controls select{background:var(--ds-surface);color:var(--ds-text);border:1px solid var(--ds-line);border-radius:6px;min-height:36px}.listening-player progress{display:block;width:100%;height:6px;margin-top:16px;accent-color:var(--ds-primary)}
.prompt-reader{display:grid;gap:15px;margin:18px 0 24px;padding:18px;border:1px solid #b9d7d3;border-radius:14px;background:linear-gradient(135deg,#f4fbfa,#edf6f8);box-shadow:0 8px 20px rgba(29,91,98,.07)}.prompt-reader__head{display:flex;gap:12px;align-items:flex-start}.prompt-reader__icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:#176f6b;color:#fff;font-size:20px}.prompt-reader__head strong,.prompt-reader__head small{display:block}.prompt-reader__head strong{color:#174b4b;font-size:14px}.prompt-reader__head small,.prompt-reader__status{margin-top:3px;color:#517072;font-size:12px;line-height:1.55}.prompt-reader__controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.prompt-reader__controls .btn{display:inline-flex;align-items:center;gap:6px;min-height:42px}.prompt-reader__controls label{display:flex;gap:7px;align-items:center;color:#365d60;font-size:12px;font-weight:700}.prompt-reader__controls select{min-height:42px;padding:0 10px;border:1px solid #a9c9c8;border-radius:9px;background:#fff;color:#174b4b;font:inherit}.prompt-reader__controls select:focus-visible,.prompt-reader__controls .btn:focus-visible{outline:3px solid rgba(23,111,107,.25);outline-offset:2px}.prompt-reader__status{margin:0}.dropdown-menu{border:1px solid rgba(38,78,72,.16);border-radius:14px;box-shadow:0 16px 38px rgba(20,54,50,.18);padding:8px;z-index:1250}.dropdown-menu .dropdown-item{min-height:42px;border-radius:9px;display:flex;align-items:center;gap:7px}.dropdown-menu .dropdown-item:focus-visible{outline:3px solid rgba(35,105,115,.24);outline-offset:1px}
.transcript{margin-top:25px;padding-top:18px;border-top:1px solid var(--ds-line)}.transcript summary{cursor:pointer;font-weight:650}.transcript p{white-space:pre-wrap;margin-top:12px}.workspace-tabs{display:none}
.community-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,1fr);gap:24px}.community-layout .news-entry{padding:22px}.community-layout .news-entry h2{font-size:21px}
.post-composer textarea{min-height:120px}.post-composer .form-actions{flex-wrap:wrap}.post-composer label{font-size:14px}.privacy-fields{margin-top:15px;display:grid;gap:14px}
.vocab-row{font-size:14px}.vocab-row small,.session-list small,.panel-intro{font-size:13px}.flashcard{max-width:750px;margin:auto}
[data-bs-theme=dark] .vocab-table,[data-bs-theme=dark] .vocab-search,[data-bs-theme=dark] .flashcard-front,[data-bs-theme=dark] .flashcard-back,[data-bs-theme=dark] .scan-upload,[data-bs-theme=dark] .scan-result,[data-bs-theme=dark] .review-complete,[data-bs-theme=dark] .revision-paper,[data-bs-theme=dark] .mistake-card,[data-bs-theme=dark] .studio-panel,[data-bs-theme=dark] .study-block{background:var(--ds-surface);color:var(--ds-text);border-color:var(--ds-line)}
[data-bs-theme=dark] .vocab-head,[data-bs-theme=dark] .grade-grid button,[data-bs-theme=dark] .practice-guide{background:var(--ds-soft);color:var(--ds-text)}
[data-bs-theme=dark] .studio-panel h2,[data-bs-theme=dark] .step-heading h3,[data-bs-theme=dark] .revision-heading h1,[data-bs-theme=dark] .mistake-card h2{color:var(--ds-text)}
@media(max-width:1150px){.learning-nav{width:205px}.learning-shell main.container{margin-left:205px;width:calc(100% - 205px);padding:25px!important}.dashboard-grid{grid-template-columns:1fr}.community-layout{grid-template-columns:1fr}.community-layout aside{display:none}.focus-shell main.container{margin:0;width:100%}}
@media(max-width:991px){.learning-nav{position:sticky;top:68px;width:100%;height:auto;display:flex;overflow:auto;padding:7px 12px;border-right:0;border-bottom:1px solid var(--ds-line);gap:4px;white-space:nowrap}.learning-nav a{flex-shrink:0;padding:9px 11px;font-size:13px}.learning-nav .learning-logo,.learning-nav .nav-caption,.nav-secondary,.nav-footnote{display:none}.learning-shell main.container{margin:0;width:100%;padding:24px 18px!important}.learning-shell .mobile-nav{display:none!important}.learning-shell{padding-bottom:0}.goal-form{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.page-top{align-items:flex-start;flex-direction:column;gap:12px}.page-top h1{font-size:27px}.resume-card{align-items:flex-start;flex-direction:column;padding:22px}.resume-card h2{font-size:22px}.practice-onboarding{grid-template-columns:1fr;gap:13px;padding:17px}.practice-onboarding h2{font-size:18px}.practice-onboarding__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.practice-onboarding__steps span{display:grid;justify-items:center;gap:4px;text-align:center;font-size:10px;white-space:normal}.metric-grid{grid-template-columns:1fr;gap:0}.metric-grid .ds-card{margin-bottom:12px;padding:18px}.metric-grid strong{font-size:28px}.library-grid{grid-template-columns:1fr}.goal-strip{gap:10px}.goal-strip a{margin-left:0}.ds-card{padding:18px}.attempt-row{gap:8px;flex-wrap:wrap}.attempt-row>.skill-icon{display:none}.attempt-title{min-width:120px}.goal-form{grid-template-columns:1fr}.workspace-header{flex-wrap:wrap}.workspace-header>div:nth-child(2){order:-1;width:100%;flex:auto}.workspace-tabs{display:flex;gap:8px;margin:14px 0}.workspace-tabs button{flex:1;border:1px solid var(--ds-line);border-radius:8px;padding:10px;background:var(--ds-surface);color:var(--ds-text)}.workspace-tabs [aria-pressed=true]{background:var(--ds-soft);border-color:var(--ds-primary)}.workspace-grid{grid-template-columns:1fr}.workspace-grid[data-active-panel=prompt] .answer-area,.workspace-grid[data-active-panel=answer] .exam-prompt{display:none}.exam-prompt,.answer-area{height:calc(100dvh - 270px);padding:20px;min-height:350px}.focus-shell main.container{padding:16px!important}.exam-prompt{border:0}.answer-actions .btn{flex:1}.status-pill{font-size:11px}}
/* Compact IELTS community composer; form fields and submission behavior remain unchanged. */
.learning-shell .post-composer{padding:0!important;overflow:hidden;border:1px solid #d8e5e6!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 22px rgba(18,52,68,.05)!important}.learning-shell .post-composer>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:72px;padding:13px 16px;cursor:pointer;list-style:none}.learning-shell .post-composer>summary::-webkit-details-marker{display:none}.ielts-compose-summary{display:flex;align-items:center;gap:12px;min-width:0}.ielts-compose-summary__icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:#e8f3f5;color:#316a85;font-size:18px}.ielts-compose-summary strong,.ielts-compose-summary small{display:block}.ielts-compose-summary strong{color:#203f52;font-size:14px;font-weight:750}.ielts-compose-summary small{margin-top:3px;color:#728894;font-size:12px}.ielts-compose-chevron{color:#6c8794;transition:transform .18s ease}.learning-shell .post-composer[open] .ielts-compose-chevron{transform:rotate(180deg)}.learning-shell .post-composer form{margin:0!important;padding:0 16px 16px;border-top:1px solid #e6eef0}.learning-shell .post-composer .composer-presets{display:flex;gap:6px;overflow-x:auto;padding:12px 0 10px}.learning-shell .post-composer .composer-presets button{flex:0 0 auto;border:1px solid #dbe7ea;border-radius:999px;background:#f8fbfc;color:#55707e;font-size:12px;font-weight:650;padding:6px 10px}.learning-shell .post-composer .composer-writing{padding:11px 12px 7px!important;border:1px solid #d9e6e9!important;border-radius:12px!important;background:#fcfefe!important}.learning-shell .post-composer .composer-writing textarea{min-height:118px!important;font-size:14px!important;line-height:1.65!important}.learning-shell .post-composer .composer-extra{margin-top:9px!important;border:1px solid #e2ebed!important;border-radius:10px!important;background:#fbfdfd}.learning-shell .post-composer .composer-drop{margin-top:9px!important;padding:11px!important;border-radius:10px!important}.learning-shell .post-composer .composer-privacy{margin-top:9px!important;padding:9px 0!important;border-top:1px solid #e6eef0}.learning-shell .post-composer .form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px!important;padding-top:12px!important;border-top:1px solid #e6eef0}.learning-shell .post-composer .form-actions .muted{font-size:12px}.learning-shell .post-composer .form-actions .muted i{color:#628392}.learning-shell .post-composer .form-actions .btn{min-height:38px;padding:8px 13px;border-radius:10px;font-size:13px;font-weight:700}@media(max-width:575px){.learning-shell .post-composer>summary{min-height:68px;padding:12px}.learning-shell .post-composer form{padding:0 12px 13px}.ielts-compose-summary small{font-size:11px}.learning-shell .post-composer .composer-writing textarea{min-height:104px!important}.learning-shell .post-composer .form-actions .muted{display:none}}
