/* Local learning screens: share FKE's existing theme and spacing. */
.fl-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 24px;padding:0 0 14px;border-bottom:1px solid var(--border)}
.fl-toolbar [data-fl-status]{margin-left:auto;font-size:12px;max-width:340px}
.fl-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.fl-card,.fl-tour{padding:24px;margin:18px 0;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-card);min-width:0}
.fl-grid>.fl-card{margin:9px 0}.fl-tour{border-left:3px solid var(--accent);background:var(--accent-soft)}
.fl-card h2,.fl-tour h3{margin:4px 0 14px}.fl-card p,.fl-tour p{line-height:1.7;margin:12px 0}
.fl-kicker{text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:var(--fg-dim);font-weight:700}
.fl-muted{font-size:13px;color:var(--fg-dim);line-height:1.6}.fl-error{color:var(--miss)!important;font-weight:700}
.fl-actions,.fl-heading,.fl-saved{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.fl-heading,.fl-saved{justify-content:space-between}
.fl-actions{margin-top:18px}.fl-actions label{cursor:pointer}.fl-actions input[type=file]{display:block;max-width:210px;font:12px var(--sans);margin-top:8px}
.fl-link{border:0;background:none;color:var(--accent-strong);padding:4px 0;cursor:pointer;text-align:left;font:600 14px var(--sans);text-decoration:underline;text-underline-offset:3px}
.fl-stat{font-size:44px;font-weight:800;margin:12px 0}.fl-stat small{font-size:18px;font-weight:500}
.fl-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.fl-weekday{font-size:11px;color:var(--fg-dim);text-align:center;padding:8px 0}
.fl-day{min-height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;font-size:12px}.fl-complete{background:var(--accent-soft);color:var(--accent-strong);font-weight:800}.fl-current{outline:1px solid var(--accent)}.fl-outside{opacity:.4}
.fl-saved{padding:12px 0;border-bottom:1px solid var(--border)}.fl-saved .fl-link{max-width:75%;overflow-wrap:anywhere}
.fl-review{border-top:1px solid var(--border);padding:20px 0}.fl-reading{font-size:22px;line-height:1.8!important;max-width:760px}.fl-sequence{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.fl-sequence button{min-width:42px}.fl-sequence button:disabled{opacity:.45;cursor:default}
.fl-choice{display:block;padding:12px;border:1px solid var(--border);border-radius:6px;margin:10px 0;cursor:pointer}.fl-choice input{margin-right:8px;accent-color:var(--accent)}
.fl-answer{display:block;box-sizing:border-box;width:100%;max-width:600px;padding:12px 14px;margin:10px 0;background:var(--surface-raised);border:1px solid var(--border);border-radius:6px;color:var(--fg);font:18px var(--sans)}
#companionAnswer>.btn,[data-review-form]>.btn{margin-top:16px}.fl-feedback{line-height:1.6;margin-top:12px}#learningHelp{scroll-margin-top:20px}
.fl-done{border-left:3px solid var(--accent)}.fl-card details{padding:10px 0;color:var(--fg-dim)}.fl-card summary{cursor:pointer}.fl-card button:focus-visible,.fl-toolbar button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:700px){.fl-grid{grid-template-columns:1fr}.fl-card,.fl-tour{padding:18px}.fl-toolbar [data-fl-status]{margin-left:0;max-width:none;width:100%}.fl-reading{font-size:20px}.fl-saved .fl-link{max-width:65%}.fl-stat{font-size:36px}}

.fl-actions label.btn{height:auto;min-height:40px;box-sizing:border-box;padding:10px 14px;flex-wrap:wrap}.fl-actions .btn{max-width:100%;white-space:normal}.fl-card label{line-height:1.5}

/* 25 Sep (Puii): learning controls back to FKE blue (--accent); the My FKE gold stays for Companion. --fl-raspberry is kept as the variable name for compatibility and now points at blue. */
:root,[data-theme="dark"],[data-theme="light"]{--fl-raspberry:var(--accent-strong);--fl-raspberry-soft:var(--accent-soft)}
.fl-paid,#screen-companion{--accent:var(--ab-gold);--accent-strong:var(--ab-gold);--accent-soft:var(--ab-gold-soft)}
.nav-item[data-screen="companion"],.nav-item[data-screen="companion"].active{color:var(--ab-gold)}
.nav-item[data-screen="learning"].active{color:var(--fl-raspberry)}
.fl-toolbar{border-bottom:0;gap:14px;margin-top:18px;margin-bottom:20px}.fl-toolbar .btn{border-radius:999px;border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}
.fl-toolbar .btn[aria-pressed=true]{color:var(--fl-raspberry);background:var(--fl-raspberry-soft)}
.fl-card{border-radius:16px}.fl-grid>.fl-card:first-child{background:linear-gradient(145deg,var(--accent-soft),var(--surface-card) 65%)}
.fl-card .fl-kicker{color:var(--accent-strong)}.fl-card .btn{border-radius:999px}.fl-card .btn-primary{box-shadow:0 3px 12px color-mix(in srgb,var(--accent) 16%,transparent)}
.fl-stat{color:var(--fl-raspberry)}.fl-stat small{color:var(--fg)}.fl-complete{border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}
.fl-sequence button{border-radius:999px}.fl-done{border-left-width:2px}.fl-answer:focus{outline:2px solid var(--accent);outline-offset:2px}
.fke-help-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;padding:7px;border:1px solid var(--border);border-radius:50%;background:transparent;color:var(--fl-raspberry);cursor:pointer}
.fke-help-icon svg{width:20px;height:20px;pointer-events:none}.fke-help-icon:hover{border-color:var(--accent);background:var(--fl-raspberry-soft)}.fke-help-icon:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.fl-tour-dialog{position:fixed;inset:0;box-sizing:border-box;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;margin:auto;overflow:auto;border:1px solid var(--border);border-radius:20px;background:var(--surface-card);color:var(--fg);box-shadow:0 24px 90px rgba(0,0,0,.45)}
.fl-tour-dialog[data-kind="fke"]{width:min(520px,calc(100vw - 32px))}
.fl-tour-dialog:not([open]){display:none}.fl-tour-dialog::backdrop{background:rgba(5,3,3,.5);backdrop-filter:blur(3px)}
.fl-tour-dialog .fl-tour{border:0;border-top:4px solid var(--accent);border-radius:0;padding:26px;margin:0;background:linear-gradient(145deg,var(--accent-soft),var(--surface-card) 65%)}
.fl-tour-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.fl-tour-top .fl-kicker{font-size:10px;color:var(--accent-strong)}
.fl-tour-close{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 30px;padding:0;border:0;background:transparent;border-radius:50%;color:var(--fg-dim);font:24px var(--sans);cursor:pointer}.fl-tour-close:hover{background:var(--accent-soft)}
.fl-tour-dialog h2{font-size:24px;line-height:1.25;letter-spacing:-.025em;margin:18px 0 14px;font-weight:750}.fl-tour-dialog p{font-size:15px;line-height:1.7;margin:12px 0}
.fl-tour-dialog .fl-actions{gap:10px;margin-top:24px}.fl-tour-dialog .btn{border-radius:999px;height:40px;padding:0 18px;font-size:13px}
.fl-tour-dialog .fl-tour-hint{font-size:12px;color:var(--fg-dim);margin:20px 0 0}.fl-tour-dots{display:flex;gap:5px;margin-top:18px}.fl-tour-dots span{height:4px;width:20px;border-radius:9px;background:var(--border-strong)}.fl-tour-dots span.active{background:var(--accent);width:36px}
.fl-tour-dialog button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:700px){.topbar-right{grid-template-columns:minmax(0,1fr) 34px auto;gap:8px}.topbar-right .search-wrap{grid-column:1/-1}.fl-toolbar{gap:10px}.fl-tour-dialog .fl-tour{padding:22px}.fl-tour-dialog h2{font-size:22px}}


#screen-member{--accent:var(--ab-gold);--accent-strong:var(--ab-gold);--accent-soft:var(--ab-gold-soft)}
.dt-list-row:has(.k-locked){border-left:2px solid var(--ab-gold)}

/* Learning highlights use FKE blue (25 Sep). */
.fl-tour-example{display:block;width:100%;text-align:left;padding:12px 14px;margin:18px 0 0;border:1px solid var(--accent);border-radius:10px;color:var(--accent-strong);background:var(--accent-soft);font:600 14px var(--sans);cursor:pointer}
.fl-tour-example span{float:right}.fl-tour-dialog .fl-actions{flex-wrap:wrap}.fl-tour-dialog button:disabled{opacity:.4;cursor:default}
.fl-tour-coach{padding:14px 18px;margin:0 0 20px;background:var(--fl-raspberry-soft);border:1px solid var(--accent);border-radius:12px;font-size:14px;line-height:1.6}
.fl-tour-coach[hidden]{display:none}.fl-tour-coach p{margin:5px 0 12px}.fl-tour-coach .fl-actions{margin:0}.fl-tour-coach.fl-paid{background:var(--ab-gold-soft);border-color:var(--ab-gold)}
[data-tour-spotlight]{outline:3px solid var(--accent)!important;outline-offset:6px;scroll-margin:90px 20px}
#screen-companion [data-tour-spotlight],#screen-today [data-tour-spotlight]{outline-color:var(--ab-gold)!important}

.fl-tour-coach.fl-paid{--accent:var(--ab-gold);--accent-strong:var(--ab-gold);--accent-soft:var(--ab-gold-soft)}
/* 26 Sep (Puii): anything that belongs to paid Study Companions is gold, like My FKE; free tools stay blue. */
.fl-paid-eyebrow,.fl-paid-note{color:var(--ab-gold)}
#screen-companion .eyebrow{color:var(--ab-gold)}
.gmvp-free-note{display:inline-flex;align-items:center;gap:6px;margin:10px 0 4px;padding:6px 12px;border-radius:999px;border:1px solid var(--ab-gold);background:var(--ab-gold-soft);color:var(--ab-gold);font-size:12.5px;font-weight:600}
.gmvp-free-note[hidden]{display:none}
.gmvp-limit{align-items:flex-start;color:var(--fg);line-height:1.55}.gmvp-limit b{color:var(--ab-gold)}
.nav-item[data-screen="companion"].active{background:var(--ab-gold-soft)}

/* HIJK-01 find-the-mistake step (2026-09-29) */
.fl-find-lead{font-weight:600;margin:.4rem 0}
.fl-find{font-size:1.15rem;line-height:2.2;margin:.2rem 0}
.fl-word{font:inherit;color:inherit;background:none;border:0;border-bottom:1px dashed var(--border-strong,#bbb);padding:0 1px;margin:0;cursor:pointer;min-height:32px}
.fl-word:hover:not(:disabled),.fl-word:focus-visible{background:var(--accent-soft,rgba(47,72,196,.08));outline:none}
.fl-word:disabled{cursor:default}
.fl-word.fl-found{background:rgba(214,158,46,.22);border-bottom:2px solid var(--review,#b7791f);font-weight:700}
.fl-word.fl-wrong-pick{text-decoration:line-through;color:var(--miss,#b42318)}
.fl-find-msg{font-size:.9rem;color:var(--fg-dim,#666);min-height:1.2em}

/* Four-week route. Completion represents practice, not language mastery. */
.fl-path{padding:clamp(18px,3vw,30px);border:1px solid var(--ab-gold);border-radius:16px;margin:20px 0 28px;background:var(--surface)}
.fl-path-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.fl-path h2{font-size:27px;line-height:1.2;margin:8px 0 12px}.fl-path h3{font-size:18px;line-height:1.35;margin:8px 0}
.fl-path p{line-height:1.65;margin:10px 0}.fl-path-total{font-size:36px;font-weight:700;white-space:nowrap;color:var(--ab-gold)}.fl-path-total small{display:block;font-size:12px;color:var(--fg-dim);font-weight:400}
.fl-path-next{padding:20px;margin:22px 0;border:1px solid var(--border);border-radius:12px;background:var(--surface-raised)}
.fl-path-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}
.fl-path-week{border:1px solid var(--border);padding:18px;border-radius:12px;min-width:0}.fl-path-week.is-complete{border-color:var(--ab-gold)}
.fl-path-week>p{font-size:14px;color:var(--fg-dim)}.fl-path-week ol{list-style:none;padding:0;margin:18px 0;display:grid;gap:8px}
.fl-path-week li{margin:0}.fl-path-week li button{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px 0;border:0;background:none;color:var(--fg);font:inherit;font-size:14px;line-height:1.45;cursor:pointer}
.fl-path-week li button:disabled{opacity:.6;cursor:default}.fl-path-week li button:focus-visible{outline:2px solid var(--ab-gold);outline-offset:3px;border-radius:4px}.fl-path-week small{display:block;color:var(--fg-dim);font-size:12px;margin-top:5px}
.fl-path-node{display:grid;place-items:center;flex:0 0 32px;height:32px;border:1px solid var(--ab-gold);border-radius:50%;color:var(--ab-gold);font-weight:600}
.fl-path-summary,.fl-preview-wrap{padding:16px 0;border-top:1px solid var(--border)}.fl-path-summary summary,.fl-preview-wrap summary{cursor:pointer;font-weight:600;line-height:1.5}.fl-preview-wrap #companionContent{margin-top:20px}
.fl-path-context{border-left:3px solid var(--ab-gold);padding:12px 18px;margin-bottom:20px;background:var(--surface-raised)}.fl-path-context p{line-height:1.6;margin:8px 0}
@media(max-width:650px){.fl-path-map{grid-template-columns:1fr}.fl-path-heading{flex-direction:column;gap:12px}.fl-path-total small{display:inline;margin-left:8px}.fl-path{padding:16px}.fl-path-week{padding:14px}}

html.has-companion [data-sc-signup],html.has-companion .fl-paid-note{display:none!important}
#dtIntInput{display:block;width:100%;margin:12px 0;box-sizing:border-box}
#dtIntReference[hidden]{display:none}
/* Daily guidance and optional browser-local practice tools. */
.fl-time-choices{border:0;padding:0;margin:16px 0;display:flex;gap:8px;flex-wrap:wrap}.fl-time-choices legend{font-weight:600;margin-bottom:8px}.fl-time-choices [aria-pressed="true"]{outline:2px solid var(--accent-strong);outline-offset:2px}.fl-time-table{width:100%;border-collapse:collapse;margin:16px 0}.fl-time-table th,.fl-time-table td{text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid var(--border)}.fl-time-table th{min-width:90px}.fl-tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.fl-practice-tools select,.fl-practice-tools input{font:inherit;padding:8px;max-width:100%;background:var(--surface-raised);color:var(--fg);border:1px solid var(--border)}.fl-practice-tools label{display:block;margin:8px 0}.fl-clock{font-size:32px;font-variant-numeric:tabular-nums}.fl-practice-tools audio{width:100%;margin:12px 0}.fl-practice-tools [hidden]{display:none!important}.fl-practice-tools h4{margin:8px 0}.fl-practice-tools p{line-height:1.6}@media(max-width:650px){.fl-tools-grid{grid-template-columns:1fr}.fl-time-table th,.fl-time-table td{padding:8px}}

/* Calm entry: one decision first, with optional learning records below. */
#screen-learning,#screen-companion{max-width:900px;margin-inline:auto;padding-top:48px}#screen-learning h1,#screen-companion h1{max-width:720px;line-height:1.2;margin-bottom:16px}.fl-start-choices{display:grid;gap:12px;margin:40px 0 48px}.fl-start-choices button{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;padding:24px 28px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-card);color:var(--fg);text-align:left;cursor:pointer;font:inherit}.fl-start-choices button span{font-size:19px;font-weight:600}.fl-start-choices button small{font-size:14px;color:var(--fg-dim);line-height:1.5}.fl-start-choices button:hover{border-color:var(--accent-strong);background:var(--surface-raised)}.fl-start-choices button:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px}.fl-quiet-details{margin:20px 0;padding:16px 0;border-top:1px solid var(--border)}.fl-quiet-details>summary{cursor:pointer;color:var(--fg-dim);font-size:15px;padding:8px 0}.fl-quiet-details[open]>summary{margin-bottom:24px}.fl-storage-footnote{font-size:12px;max-width:640px}.fl-path-heading{margin-top:24px}.fl-path-map{grid-template-columns:1fr}.fl-path-context{margin-bottom:40px;padding:20px 0}.fl-practice-tools{margin-top:36px}.fl-practice-tools>.fl-quiet-details{margin:0;border:0}.fl-preview-wrap{margin-top:28px}@media(max-width:600px){#screen-learning,#screen-companion{padding-top:24px}.fl-start-choices button{align-items:flex-start;flex-direction:column;gap:8px;padding:22px}.fl-start-choices{margin-top:28px}}

.fl-guided-start{padding:48px 0 40px;max-width:620px}.fl-guided-start h2{font-size:28px;line-height:1.3;margin-bottom:18px}.fl-guided-start p{line-height:1.8;color:var(--fg-dim);margin-bottom:28px}.fl-guided-start .btn{padding:14px 24px}.member-card.fl-quiet-details>summary{font-weight:600;color:var(--fg)}#practiceThisTopic[hidden]{display:none!important}

/* Floating welcome and reference-inspired countdown. */
.fl-member-subnav{display:flex;gap:24px;border-bottom:1px solid var(--border);margin:24px 0 32px;padding-bottom:16px}.fl-member-subnav button,.fl-member-tabs button{font:inherit;background:none;border:0;color:var(--fg-dim);cursor:pointer;padding:8px 0}.fl-member-subnav button:hover{color:var(--fg)}.fl-member-dialog{box-sizing:border-box;width:min(720px,calc(100vw - 32px));max-height:85vh;overflow:auto;border:1px solid var(--border);border-radius:24px;padding:48px;background:var(--surface-card);color:var(--fg);box-shadow:0 32px 120px #0005}.fl-member-dialog::backdrop{background:#0007;backdrop-filter:blur(5px)}.fl-member-dialog h2{font-size:clamp(28px,4vw,38px);line-height:1.15;letter-spacing:-.025em;max-width:500px;margin:20px 0 16px}.fl-member-lead{color:var(--fg-dim);line-height:1.7}.fl-member-close{position:absolute;top:18px;right:20px;width:40px;height:40px;border:1px solid var(--border);border-radius:50%;background:var(--surface-raised);color:var(--fg);font:28px/1 var(--sans);cursor:pointer}.fl-member-tabs{display:flex;gap:28px;margin:28px 0;border-bottom:1px solid var(--border)}.fl-member-tabs button{padding:12px 0}.fl-member-tabs [aria-selected="true"]{color:var(--fg);border-bottom:2px solid var(--accent-strong)}.fl-member-dialog #memberBenefits,.fl-member-dialog #memberProfileDetails{border:0;padding:0;margin:0!important;background:none}.fl-member-dialog #memberBenefits>summary,.fl-member-dialog #memberProfileDetails>summary{display:none}.fl-member-dialog p{line-height:1.75}.fl-member-dialog .member-profile-grid{gap:22px;margin-top:20px}.fl-member-dialog-footer{display:flex;align-items:center;gap:20px;margin-top:32px;padding-top:24px;border-top:1px solid var(--border)}.fl-member-dialog-footer span{font-size:12px;color:var(--fg-dim)}.fl-member-dialog [hidden]{display:none!important}.fl-countdown-stage{display:flex;justify-content:space-between;align-items:stretch;gap:24px;background:#171713;color:#f4f3b8;border-radius:18px;padding:30px 24px;margin:24px 0;min-height:200px}.fl-countdown-stage .fl-clock{font-size:clamp(48px,6vw,80px);font-weight:800;line-height:1;letter-spacing:-.05em;margin:20px 0}.fl-countdown-stage .fl-kicker,.fl-countdown-caption{color:#d5d4b3}.fl-countdown-caption{display:block;font-size:13px;line-height:1.7;max-width:200px}.fl-time-track{width:9px;min-width:9px;border-radius:8px;background:#f4f3b826;position:relative;overflow:hidden;min-height:180px}.fl-time-track span{position:absolute;bottom:0;left:0;width:100%;height:100%;background:#f4f3b8;border-radius:8px;transition:height .25s linear}.fl-member-dialog button:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px}@media(prefers-reduced-motion:reduce){.fl-time-track span{transition:none}}@media(max-width:600px){.fl-member-dialog{padding:40px 24px 28px}.fl-member-dialog-footer{align-items:flex-start;flex-direction:column}.fl-member-dialog .member-profile-grid{grid-template-columns:1fr}.fl-countdown-stage{min-height:170px}.fl-countdown-stage .fl-clock{font-size:56px}}
/* One-place guided lesson, with connected stage dots. */
.gs-in-session > :is(#companionPath,.fl-preview-wrap,[data-sc-signup],.screen-sub){display:none!important}
#guidedSession{max-width:760px;margin:20px auto 32px;color:var(--fg)}
#guidedSession[hidden]{display:none}
.gs-start .gs-time{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.gs-time [aria-pressed=true],.gs-tabs [aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent-strong);color:var(--accent-strong)}
.gs-topic{margin-top:18px}.gs-topic label{display:block;margin:12px 0}.gs-topic select{display:block;width:100%;max-width:440px;padding:10px;margin-top:6px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-page);color:inherit}
.gs-progress{padding:20px 18px;border:1px solid var(--border);background:var(--surface-raised);border-radius:16px;margin-bottom:16px;color:var(--fg)}
.gs-progress>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:14px}
.gs-progress ol{display:flex;list-style:none;margin:24px 0 14px;padding:0}
.gs-progress li{position:relative;flex:1;text-align:center;font-size:12px;font-weight:600;min-width:0;color:var(--fg-dim)}
.gs-progress li:not(:last-child)::after{content:'';position:absolute;top:10px;left:calc(50% + 12px);width:calc(100% - 24px);height:2px;background:var(--border-strong)}
.gs-progress li.is-done::after{background:var(--accent-strong)}
.gs-dot{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:22px;height:22px;margin:0 auto 8px;border:2px solid var(--border-strong);background:var(--surface-raised);border-radius:50%;font-size:12px;box-sizing:border-box}
.is-current .gs-dot{border-color:var(--accent-strong);box-shadow:0 0 0 4px var(--accent-soft);background:var(--accent-strong)}.is-current{color:var(--accent-strong)!important}.is-done .gs-dot{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--surface-page)}
.gs-card{background:var(--surface-card);border:1px solid var(--border,#d8dfd8);border-radius:16px;padding:28px;line-height:1.7}.gs-card h2{font-size:25px;line-height:1.3;margin:6px 0 20px}.gs-card h2:focus{outline:none}.gs-card p{overflow-wrap:anywhere}
.gs-card button{margin-top:8px}.gs-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.gs-tabs button{font-size:13px;padding:8px 12px}.gs-concept{min-height:130px}.gs-prompt{font-size:19px;line-height:1.6}.gs-card fieldset{border:0;padding:0;margin:0}.gs-choice{display:flex;gap:12px;align-items:center;border:1px solid var(--border-strong);border-radius:10px;padding:12px 16px;margin:8px 0;cursor:pointer}.gs-choice:has(input:checked){background:var(--accent-soft);border-color:var(--accent-strong)}.gs-choice input{accent-color:var(--accent-strong)}.gs-card input.fl-answer{display:block;width:100%;max-width:100%;box-sizing:border-box;margin:8px 0 12px}.gs-feedback{background:var(--accent-soft);border-left:3px solid var(--accent-strong);border-radius:8px;padding:16px 20px;margin:18px 0;color:var(--fg)}.gs-help,.gs-card details{margin-top:22px}.gs-card summary{cursor:pointer;font-weight:600}.gs-writing{display:block;margin:18px 0}.gs-card textarea{display:block;width:100%;box-sizing:border-box;font:inherit;resize:vertical;padding:12px;border:1px solid var(--border-strong);border-radius:10px;margin-top:8px;background:var(--surface-page);color:inherit}.gs-save{font-size:12px;color:var(--fg-dim);margin:14px 0}.gs-switch h2{font-size:22px;line-height:1.3;margin:8px 0}.gs-switch p{line-height:1.6;margin:0 0 16px}.gs-switch-actions{display:flex;flex-wrap:wrap;gap:10px}.gs-switch-actions .btn{min-height:44px}.gs-in-session>.fo-path-heading{display:none!important}.gs-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.gs-concept-overview{display:grid;gap:14px;min-height:0}.gs-concept-panel{padding:16px 18px;border:1px solid var(--border);border-radius:12px;background:var(--surface-raised)}.gs-concept-panel p{margin:8px 0 0;line-height:1.6}.gs-concept-panel p+p{margin-top:10px}.gs-concept-label{display:block;font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-strong)}.gs-concept-idea{border-left:4px solid var(--accent)}.gs-concept-examples{background:var(--surface-card)}.gs-example-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.gs-example-grid article{padding:12px 14px;border-radius:9px;background:var(--accent-soft)}.gs-example-grid article>span{font-size:11px;font-weight:700;color:var(--accent-strong)}.gs-example-grid article p{font-size:17px}.gs-verb-table-wrap{overflow-x:auto;margin-top:10px}.gs-verb-table{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;font-size:14px}.gs-verb-table th,.gs-verb-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.gs-verb-table thead th{background:var(--accent-soft);font-size:12px;color:var(--accent-strong)}.gs-verb-table tbody th{font-weight:750}.gs-concept-watch{border-left:4px solid var(--tip);background:var(--tip-soft)}.gs-concept-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.gs-concept-actions .btn{margin-top:0}
.pt-guide{display:grid;gap:16px;margin:20px 0;max-width:1100px}.pt-panel{padding:22px;border:1px solid var(--border);border-radius:16px;background:var(--surface-card);min-width:0}.pt-panel h3,.pt-panel h4{margin:0 0 12px;font-size:14px;font-weight:750;color:var(--accent-strong)}.pt-panel h3{text-transform:uppercase;letter-spacing:.08em}.pt-panel p{margin:8px 0;max-width:68ch;line-height:1.65;overflow-wrap:anywhere}.pt-panel small{display:block;color:var(--fg-dim);font-size:13px;line-height:1.5}.pt-idea{background:var(--accent-soft);border-left:4px solid var(--accent)}.pt-formula,.pt-timeline{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pt-formula li,.pt-timeline li{padding:16px;background:var(--surface-raised);border:1px solid var(--border);border-radius:10px;min-width:0}.pt-formula strong,.pt-timeline strong{display:block;font-size:19px;margin:4px 0 8px;overflow-wrap:anywhere}.pt-formula li+li::before{content:'+';display:block;color:var(--accent-strong);font-size:18px}.pt-timeline{grid-template-columns:repeat(2,minmax(0,1fr));counter-reset:step}.pt-timeline li>span{font-size:12px;font-weight:750;color:var(--accent-strong)}.pt-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pt-examples article{padding:16px;background:var(--surface-raised);border-radius:12px}.pt-examples article>p:first-child{font-size:19px}.pt-translation{font-size:14px;color:var(--fg-dim)}.pt-guide mark{background:var(--accent-soft);color:var(--accent-strong);border-radius:4px;padding:2px 4px;font-weight:650;box-decoration-break:clone}.pt-note{font-size:14px;color:var(--fg-dim)}.pt-watch{border-left:4px solid var(--tip);background:var(--tip-soft)}.pt-correction{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.pt-correction p{padding:12px;background:var(--surface-card);border-radius:10px}.pt-correction span{display:block;color:var(--fg-dim);font-size:12px;margin-bottom:5px}.pt-choice{border-top:1px solid var(--border);padding-top:18px;margin-top:18px}.pt-choice h4:not(:first-child){margin-top:22px}.gs-example-grid .gs-example-translation{font-size:14px;color:var(--fg-dim)}
@media(max-width:650px){.pt-panel{padding:18px}.pt-formula,.pt-timeline,.pt-examples,.pt-correction{grid-template-columns:1fr}.pt-formula li+li::before{content:'+'}.pt-timeline li+li::before{content:'↓ Then';display:block;color:var(--accent-strong);font-size:12px;margin-bottom:8px}}

/* Operators sit between cards, never above just some of their headings.
   Shared heading/description tracks keep wrapped text aligned too. */
.pt-formula { column-gap:32px; row-gap:8px; }
.pt-formula li { position:relative; display:grid; grid-template-rows:minmax(28px,auto) auto; gap:8px; align-content:start; }
.pt-formula strong { margin:0; }
.pt-formula small { display:block; font-size:13px; line-height:1.5; color:var(--fg-dim); }
.pt-formula li+li::before { position:absolute; left:-27px; top:18px; width:20px; line-height:28px; text-align:center; }
@supports (grid-template-rows:subgrid) {
 .pt-formula li { grid-row:span 2; grid-template-rows:subgrid; }
}
@media(max-width:650px) {
 .pt-formula { row-gap:32px; }
 .pt-formula li { grid-row:auto; grid-template-rows:auto auto; }
 .pt-formula li+li::before { left:calc(50% - 10px); top:-30px; }
}
@media(max-width:520px){.gs-card{padding:20px 16px}.gs-card h2{font-size:22px}.gs-progress{padding:16px 10px}.gs-progress li{font-size:11px}.gs-tabs .btn{flex:1;padding:8px 6px}.gs-example-grid{grid-template-columns:1fr}.gs-concept-panel{padding:14px}.gs-progress>div:first-child{font-size:13px}}
/* Compact learning hub and warm, quiet feedback. */
.gs-hub-nav{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--border);padding:0 0 12px;margin-bottom:22px}
.gs-hub-nav button{font:inherit;font-size:14px;color:var(--fg-dim);background:transparent;border:1px solid transparent;border-radius:999px;padding:9px 15px;cursor:pointer}
.gs-hub-nav button[aria-selected=true]{color:var(--accent-strong);background:var(--accent-soft);border-color:var(--accent-strong)}
.gs-hub [hidden]{display:none!important}.gs-hub [role=tabpanel]{min-width:0}.gs-hub .gs-start{margin-top:0}
.gs-start select{display:block;width:100%;max-width:520px;background:var(--surface-raised);color:var(--fg);padding:12px;border:1px solid var(--border-strong);border-radius:8px;margin:10px 0}
.gs-start [data-name-form]{padding:14px 0}.gs-start [data-name-form] label{display:block;font-size:14px}.gs-start [data-name-form] input{margin:8px 10px 8px 0;max-width:260px;width:100%;padding:10px;border-radius:8px;border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--fg);font:inherit}
.gs-encouragement{font-size:13px!important;font-style:italic;line-height:1.6!important;color:var(--fg-dim);margin:12px 0 0!important;font-weight:400}
.gs-week-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.gs-week-nav [aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent-strong);color:var(--accent-strong)}
.gs-week-lessons{padding-left:24px}.gs-week-lessons li{padding:12px 0;border-bottom:1px solid var(--border)}.gs-week-lessons b,.gs-week-lessons small,.gs-week-lessons .fl-kicker{display:block}.gs-week-lessons small{font-size:14px;line-height:1.6;color:var(--fg-dim);margin-top:5px}
.gs-own-work{border-top:1px solid var(--border);margin-top:20px;padding-top:12px}.gs-own-work blockquote{margin:12px 0;padding:10px 16px;border-left:3px solid var(--accent-strong);background:var(--surface-raised);overflow-wrap:anywhere}
.gs-account{margin:16px 0}.gs-lesson-nav{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px}.gs-lesson-nav button{font-size:13px}
.gs-progress li button{border:0;padding:0 4px;background:transparent;color:inherit;font:inherit;cursor:pointer;position:relative;z-index:2}.gs-progress li button:disabled{cursor:default;opacity:1}.gs-progress li button:focus-visible{outline:2px solid var(--accent-strong);outline-offset:5px;border-radius:5px}
@media(max-width:520px){.gs-hub-nav{gap:4px}.gs-hub-nav button{font-size:12px;padding:8px 10px}.gs-week-nav{gap:5px}.gs-week-nav button{padding:8px 10px;font-size:12px}.gs-lesson-nav button{padding:8px 10px}.gs-progress li button{font-size:11px;padding:0 1px}}
#memberSignOut[hidden]{display:none!important}
.gs-hub .fl-guided-start{padding:12px 0 8px}.gs-hub .fl-guided-start h2{margin:8px 0 12px}.gs-hub .fl-guided-start p{margin:12px 0}.gs-hub .fl-guided-start .btn{padding:10px 18px}.gs-hub .fl-start-choices{margin:16px 0}.gs-hub-nav{margin-bottom:14px}
.gs-lesson-nav{position:sticky;top:8px;z-index:10;background:var(--surface-page);padding:8px 0;border-radius:10px}
html.tv-on::before{display:none}
#memberProfileDetails>label{display:block;font-size:12px;color:var(--fg-dim)}#memberName{display:block;box-sizing:border-box;width:100%;max-width:400px;font:inherit;font-size:14px;color:var(--fg);background:var(--surface-raised);border:1px solid var(--border);border-radius:6px;padding:11px 12px;margin-top:7px}
.gs-lesson-nav button:disabled{opacity:.45;cursor:default}

/* Shared navigation and readable lesson choices. */
.fl-toolbar{position:sticky;top:0;z-index:65;background:var(--surface-card);padding:12px 16px;border:1px solid var(--border);border-radius:12px;box-shadow:0 3px 12px #0002}
.fl-toolbar .fl-link{font-size:15px;padding:8px 6px;text-decoration:none}.fl-toolbar .fl-link:hover{text-decoration:underline}
#learningSavedPanel,#learningReviewPanel,#learningHelp,#guidedSession,.gs-hub{scroll-margin-top:130px}
.gs-lesson-nav{top:105px}
.gs-start select[data-session-topic]{display:block;box-sizing:border-box;width:100%;min-height:56px;padding:12px 16px;margin:12px 0 18px;font:500 18px/1.5 var(--sans);color:var(--fg);background:var(--surface-card);border:1px solid var(--border);border-radius:10px}
.gs-day-link{display:block;width:100%;text-align:left;padding:12px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--fg);font:inherit;cursor:pointer}
.gs-day-link:hover,.gs-day-link:focus-visible{background:var(--accent-soft);border-color:var(--accent-strong)}
.gs-day-link b{font-size:18px}.gs-day-link small{font-size:16px}.gs-day-action{display:block;color:var(--accent-strong);font-size:14px;margin-top:10px;font-weight:600}
@media(max-width:600px){.fl-toolbar{gap:4px;padding:8px}.fl-toolbar .fl-link{font-size:14px}.fl-toolbar [data-fl-status]:empty{display:none}.gs-lesson-nav{position:static}.gs-start select[data-session-topic]{font-size:17px}}

.gs-week-lessons{list-style:none;padding-left:0}

/* Keep lesson actions next to the learner's answer, without covering content. */
.gs-lesson-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:24px 0;position:static}
/* All lesson controls share one row and the same vertical metrics. */
.gs-card .gs-lesson-actions > .btn{height:40px;margin-top:0;margin-bottom:0;justify-content:center}
.gs-lesson-actions .btn-primary{margin-left:auto}.gs-deeper{display:block;margin-top:24px}
.gs-start select[data-session-topic]{min-height:68px;padding:18px 48px 18px 20px;line-height:1.6;margin:16px 0 24px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='12'%3E%3Cpath d='m2 2 7 7 7-7' fill='none' stroke='%23999' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 20px center}
.gs-card{padding:clamp(24px,4vw,44px)}.gs-card input,.gs-card textarea{box-sizing:border-box;max-width:100%}.gs-bonus{margin-top:28px;padding-top:24px;border-top:1px solid var(--border)}
@media(max-width:600px){.gs-lesson-actions .btn-primary{margin-left:0}.gs-lesson-actions{gap:10px}}

.member-greeting{margin-top:18px}.member-greeting h2{margin:0 0 8px;font-size:22px}.member-greeting p{margin:0 0 16px;color:var(--fg-dim)}
#memberDashboard>.member-card:first-child:not(:has(*)){display:none}#memberDashboard:has(>.member-card:first-child:not(:has(*))){grid-template-columns:1fr}
.gs-learning-summary{margin-top:24px;border-top:1px solid var(--border);padding-top:20px}.gs-learning-summary summary{font-size:18px;font-weight:700;cursor:pointer}
.fl-reflection-week{padding:20px 0;border-bottom:1px solid var(--border)}.fl-reflection-week h3{margin:0 0 18px}.fl-reflection-week h4{margin:20px 0 8px;font-size:16px}.fl-reflection-week p,.fl-reflection-week li{font-size:16px;line-height:1.7}

#screen-member .member-greeting{margin:12px 0}#screen-member .member-greeting h2{font-size:26px;margin:0}
#screen-member .member-hero{flex-wrap:wrap}#screen-member .member-hero>div{flex:1 1 auto;min-width:0}
#screen-member .member-hero .screen-sub{font-size:12px;line-height:1.6;max-width:none;margin-top:12px}
#fkeReturnOrigin[hidden]{display:none}

/* Right-hand daily pace and compact timer while exploring. */
.member-hero>div:first-child{flex:1;min-width:0}
.fke-pace{flex:0 0 280px;padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--surface-card);max-width:100%;box-sizing:border-box}
.fke-pace label{font-size:18px;font-weight:700}.fke-pace-hint,.fke-pace-note{font-size:13px;line-height:1.5;color:var(--fg-dim);margin:8px 0 12px}
.fke-pace select{width:100%;font:inherit;min-height:44px;padding:8px 12px;background:var(--surface-raised);color:var(--fg);border:1px solid var(--border);border-radius:8px}
.fke-pace-clock{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0}.fke-pace-clock output{font-size:44px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}
.fke-pace-track{width:5px;height:66px;background:var(--border);border-radius:8px;overflow:hidden;display:flex;align-items:flex-end}.fke-pace-track span{display:block;width:100%;background:var(--ab-gold);min-height:0}
.fke-pace-actions{display:flex;flex-wrap:wrap;gap:8px}.fke-pace-actions .btn,.fke-pace-mini .btn{min-height:40px;padding:8px 12px;font-size:14px}.fke-pace-note{margin-bottom:0}
.fke-pace-mini{position:fixed;right:20px;bottom:20px;z-index:90;display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--surface-card);border:1px solid var(--ab-gold);border-radius:14px;box-shadow:0 4px 24px #0003;font-size:14px}.fke-pace-mini output{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.fke-pace-mini[hidden]{display:none}
@media(max-width:760px){.fke-pace{flex:auto;width:100%}.fke-pace-mini{right:8px;bottom:8px;max-width:calc(100vw - 16px);box-sizing:border-box;flex-wrap:wrap}.fke-pace-mini>span{display:none}}
.member-hero:has(.fke-pace){align-items:center}.fke-pace{flex-basis:320px}.fke-pace-mini{bottom:88px}
@media(max-width:760px){.member-hero:has(.fke-pace){align-items:stretch}.fke-pace{flex-basis:auto}.fke-pace-mini{bottom:76px}}
#screen-member .member-hero:has(.fke-pace)>div:first-child{flex:1 1 420px}
@media(max-width:760px){#screen-member .member-hero:has(.fke-pace)>div:first-child{flex:auto}}

/* Quiet typography-led pace control. */
.fke-pace{--pace-yellow:#f5f5b5;flex-basis:340px;padding:8px 0 8px 24px;border:0;border-radius:0;background:transparent;box-shadow:none}
.fke-pace-clock{margin:0 0 12px;gap:18px;justify-content:flex-start}.fke-pace-clock output{font-family:var(--sans);font-size:clamp(68px,7.5vw,104px);font-weight:800;letter-spacing:-.065em;line-height:1;color:var(--pace-yellow)}
.fke-pace-track{height:78px;width:4px;flex-shrink:0;background:color-mix(in srgb,var(--pace-yellow) 18%,transparent)}.fke-pace-track span{background:var(--pace-yellow)}
.fke-pace-title{font-size:21px;font-weight:500;line-height:1.3;margin:0 0 4px;letter-spacing:-.02em}.fke-pace-hint{margin:0 0 24px;font-size:14px}
.fke-pace label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:var(--fg-dim);margin-bottom:6px}
.fke-pace select{background:transparent;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:8px 2px;font-size:16px;min-height:44px}.fke-pace select option{background:var(--surface-card);color:var(--fg)}
.fke-pace-actions{margin-top:14px;gap:8px}.fke-pace-actions .btn{border:0;background:transparent;padding:9px 12px;border-radius:24px;box-shadow:none;font-weight:500}.fke-pace-actions [data-pace-toggle]{background:var(--pace-yellow);color:#222214;padding-inline:18px}.fke-pace-actions .btn:hover{background:color-mix(in srgb,var(--pace-yellow) 15%,transparent)}.fke-pace-actions [data-pace-toggle]:hover{background:#ffffcf}
.fke-pace-note{font-size:12px;max-width:30ch;margin-top:14px}.fke-pace-mini output{color:#f5f5b5}

@media(max-width:760px){.fke-pace{padding:16px 0 0;flex-basis:auto}.fke-pace-clock output{font-size:clamp(64px,18vw,92px)}}

/* Clear pace setting, aligned with the member greeting. */
#screen-member .member-hero:has(.fke-pace){align-items:flex-start}
.fke-pace{flex-basis:380px;padding-top:0}.fke-pace-title{margin-bottom:24px}
.fke-pace select{border:1px solid color-mix(in srgb,var(--fg) 45%,var(--border));border-radius:8px;padding:10px 14px;background:color-mix(in srgb,var(--surface-raised) 55%,transparent)}
.fke-pace label{font-size:12px;color:var(--fg);margin-bottom:8px}
.fke-pace-note{max-width:none;white-space:nowrap}.fke-pace-actions{gap:5px}.fke-pace-actions .btn{padding-inline:10px}.fke-pace-actions [data-pace-toggle]{padding-inline:16px}
.fke-pace-actions button:disabled,.fke-pace-mini button:disabled{opacity:.4;cursor:default}
@media(max-width:760px){.fke-pace{flex-basis:auto;padding-top:16px}.fke-pace-note{white-space:normal}}

/* Align the timer, setting and actions to the same two edges. */
.fke-pace{--pace-ink:#222214;--pace-hover:#ffffcf}
.fke-pace-clock{justify-content:space-between;gap:12px;margin-bottom:16px}
.fke-pace-clock output{margin-left:-.035em;letter-spacing:-.055em;min-width:0}
.fke-pace-track{margin-right:0;align-self:center}
.fke-pace-title{margin-bottom:26px}.fke-pace select{box-sizing:border-box}
.fke-pace-actions{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;align-items:center;gap:4px;margin-top:16px}
.fke-pace-actions .btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;padding:10px 6px;white-space:nowrap;text-align:center}
.fke-pace-actions [data-pace-toggle]{padding-inline:12px;color:var(--pace-ink)}
.fke-pace-actions [data-pace-toggle]:hover{background:var(--pace-hover)}
.fke-pace-note{margin-top:16px;line-height:1.5;text-align:center}
[data-theme="light"] .fke-pace,[data-theme="light"] .fke-pace-mini{--pace-yellow:#716bc4;--pace-ink:#252044;--pace-hover:#dcd9ff}
[data-theme="light"] .fke-pace-actions [data-pace-toggle]{background:#d4d0fa}
[data-theme="light"] .fke-pace-actions [data-pace-toggle]:hover{background:var(--pace-hover)}
[data-theme="light"] .fke-pace select{border-color:#a5a0c6;background:rgba(226,223,249,.25)}
[data-theme="light"] .fke-pace-mini{border-color:#a5a0c6}
[data-theme="light"] .fke-pace-mini output{color:#716bc4}
@media(max-width:380px){.fke-pace-actions{grid-template-columns:1fr 1fr}.fke-pace-clock output{font-size:clamp(54px,17vw,68px)}}

/* One quiet melody control; retain the existing timer and action layout. */
.fke-pace-title{position:relative;padding-right:52px}
.fke-pace-title .fke-pace-sound{position:absolute;right:8px;top:50%;transform:translateY(-50%)}
.fke-pace-sound{appearance:none;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;min-height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--pace-yellow,#f5f5b5);font:18px/1 var(--sans);cursor:pointer;position:relative}
.fke-pace-sound:hover{background:color-mix(in srgb,var(--pace-yellow,#f5f5b5) 12%,transparent)}
.fke-pace-sound[aria-pressed="false"]{color:var(--fg-dim)}
.fke-pace-sound[aria-pressed="false"]::after{content:"";position:absolute;width:17px;height:1.5px;background:currentColor;transform:rotate(-45deg)}
.fke-pace-mini .fke-pace-sound{width:40px;min-height:40px;color:var(--fg)}
@media(pointer:coarse){.fke-pace-sound,.fke-pace-mini .fke-pace-sound{width:44px;min-height:44px}}

/* In-lesson timer stays in the lesson flow and echoes the member timer. */
.fke-pace-mini{--pace-yellow:#f5f5b5;--pace-ink:#222214;--pace-hover:#ffffcf;--pace-button:#f5f5b5;position:static;z-index:auto;display:flex;flex-direction:column;align-items:stretch;gap:12px;width:min(100%,760px);max-width:100%;box-sizing:border-box;margin:0 auto 18px;padding:16px 20px;border:1px solid color-mix(in srgb,#f5f5b5 28%,transparent);border-radius:16px;background:#2b2923;color:#f4f0df;box-shadow:0 4px 18px #0002;font-size:14px}
.fke-pace-mini[hidden]{display:none}
.fke-pace-mini-clock{display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0}
.fke-pace-mini output{min-width:0;color:var(--pace-yellow);font-family:var(--sans);font-size:clamp(52px,8vw,76px);font-weight:800;letter-spacing:-.055em;line-height:1;font-variant-numeric:tabular-nums}
.fke-pace-mini .fke-pace-track{width:4px;height:64px;flex:0 0 4px;margin:0;background:color-mix(in srgb,var(--pace-yellow) 18%,transparent)}
.fke-pace-mini .fke-pace-track span{background:var(--pace-yellow)}
.fke-pace-mini-actions{display:flex;align-items:center;gap:8px}
.fke-pace-mini-actions button{appearance:none;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:44px;min-height:44px;padding:0 10px;border:1px solid color-mix(in srgb,var(--pace-yellow) 24%,transparent);border-radius:24px;background:transparent;color:var(--pace-yellow);font:500 14px/1 var(--sans);cursor:pointer}
.fke-pace-mini-actions button:hover{background:color-mix(in srgb,var(--pace-yellow) 12%,transparent)}
.fke-pace-mini-actions button:focus-visible{outline:2px solid var(--pace-yellow);outline-offset:2px}
.fke-pace-mini-actions button:disabled{opacity:.4;cursor:default}
.fke-pace-mini-actions [data-pace-toggle],.fke-pace-mini-actions [data-pace-reset]{width:44px;padding:0}
.fke-pace-mini-actions [data-pace-toggle]{background:var(--pace-button);color:var(--pace-ink);border-color:var(--pace-button)}
.fke-pace-mini-actions [data-pace-toggle]:hover{background:var(--pace-hover)}
.fke-pace-mini-actions svg{display:block;width:20px;height:20px;fill:currentColor}
.fke-pace-mini-actions [data-pace-reset] svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#memberDashboard{align-items:stretch}
#memberDashboard>.member-card{box-sizing:border-box;align-self:stretch;margin:0;padding:22px;border:1px solid var(--border);border-radius:16px;background:var(--surface-card)}
#fkeAccountProgress>h3{margin:0;font-size:18px;font-weight:800;color:var(--fg)}
#fkeAccountProgress>[data-account-sync-status]{margin:5px 0 18px;font-size:13.5px;line-height:1.55;color:var(--fg-dim)}
@media(max-width:700px){.fke-pace-mini{margin-bottom:14px;padding:14px 16px}.fke-pace-mini output{font-size:clamp(48px,15vw,64px)}#memberDashboard>.member-card{padding:18px}}

[data-theme="light"] .fke-pace-mini{--pace-button:#d4d0fa;background:#f0eefb;color:#252044;border-color:#a5a0c6;box-shadow:0 4px 18px #716bc410}

/* A compact study timer follows the learner between pages. */
.fke-pace-mini.fke-pace-overlay{position:fixed;top:100px;right:max(16px,env(safe-area-inset-right));bottom:auto;z-index:95;width:280px;max-width:calc(100vw - 24px);margin:0;padding:12px 16px;gap:8px;box-shadow:0 5px 24px #0003}
.fke-pace-overlay .fke-pace-mini-label{display:block;font-size:11px;font-weight:700;letter-spacing:.04em}
.fke-pace-overlay .fke-pace-mini-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.fke-pace-overlay .fke-pace-hide{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;padding:6px;background:transparent;color:inherit;border:1px solid var(--border);border-radius:50%;cursor:pointer}
.fke-pace-overlay .fke-pace-hide svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.fke-pace-overlay .fke-pace-hide:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.fke-pace-mini.fke-pace-overlay.is-minimized{width:160px;padding:12px 16px}
.fke-pace-overlay.is-minimized>:not(.fke-pace-mini-heading){display:none}
.fke-pace-overlay output{font-size:32px;letter-spacing:-.03em}
.fke-pace-overlay .fke-pace-track{height:32px}
.fke-pace-overlay .fke-pace-mini-actions{gap:4px;justify-content:space-between;flex-wrap:nowrap}
.fke-pace-overlay .fke-pace-mini-actions button{flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:50%;font-size:13px}
.fke-pace-overlay .fke-pace-mini-actions .fke-pace-sound{font-size:19px}
.fke-pace-overlay .fke-pace-sound[aria-pressed="false"]{opacity:.55;text-decoration:line-through}
.fke-pace-overlay .fke-pace-mini-status{margin:0;font-size:12px;line-height:1.5}
.fke-pace-overlay .fke-pace-dismiss{align-self:flex-end;min-height:36px;padding:6px 12px;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;font:inherit;font-size:12px;cursor:pointer}
.fke-pace-overlay .fke-pace-dismiss:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.fke-pace-overlay .fke-pace-dismiss[hidden]{display:none}
.fke-pace-overlay.is-complete{border-color:var(--pace-yellow)}
.fl-modal-save{margin:0 0 20px}
.fl-toolbar[hidden],.fl-toolbar [hidden]{display:none!important}
.fl-toolbar.fkd-home-toolbar:has(> :not([hidden])){margin-block:8px}
.fl-toolbar.fkd-home-toolbar:not(:has(> :not([hidden]))){display:none}

/* Adjustable task limits keep format and duration aligned on small screens. */
.fl-exam-time{display:grid;grid-template-columns:minmax(0,2fr) minmax(100px,1fr);gap:12px;max-width:650px}.fl-exam-time label{display:flex;flex-direction:column;gap:8px;min-width:0}.fl-exam-time select,.fl-exam-time input{width:100%;box-sizing:border-box;min-height:44px;padding:10px;font:inherit;background:var(--surface-raised);color:var(--fg);border:1px solid var(--border-strong);border-radius:var(--r-sm)}.fl-exam-note{max-width:650px;line-height:1.6}@media(max-width:520px){.fl-exam-time{grid-template-columns:1fr}}

/* Keep task context and the actual countdown visible above the response. */
.fl-path-context{padding:18px 20px;margin-bottom:16px}
.fl-practice-tools{margin:0 0 20px;padding:16px 20px}
.fl-task-timer{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.fl-task-timer-label{display:grid;gap:4px;flex:1;min-width:170px}
.fl-task-timer .fl-clock{margin:0;font-size:32px;line-height:1.2;font-weight:750}
.fl-task-timer .fl-timer-actions{display:flex;gap:8px;margin:0}
.fl-task-timer .btn{min-height:44px}
.fl-practice-tools>[data-timer-status]{margin:8px 0;color:var(--fg-dim);font-size:12px}
.fl-practice-tools>.fl-quiet-details{padding:4px 0}
.fl-practice-tools>.fl-quiet-details>summary{padding:6px 0;font-size:13px}
@media(max-width:600px){.fl-path-context,.fl-practice-tools{padding:14px 16px}.fl-task-timer{gap:12px}.fl-task-timer-label{flex-basis:100%}.fl-task-timer .fl-timer-actions{margin-left:auto}}

.fl-launch-notice{display:grid;gap:8px;margin:16px 0;padding:0;background:none;border:0;border-radius:0}
.fl-launch-notice strong{color:var(--ab-gold);font-size:18px}
.fl-launch-notice a{justify-self:start;color:var(--ab-gold);background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:3px}
.ab-kb-label time{display:inline-block;margin-left:8px;color:var(--fg-dim);font-weight:500;white-space:nowrap}

.fl-member-tabs{gap:20px;flex-wrap:nowrap;overflow-x:auto}
.fl-member-tabs button{min-height:44px;flex-shrink:0;white-space:nowrap}
@media(max-width:480px){.fl-member-tabs{gap:14px}.fl-member-tabs button{font-size:13px}}

/* Account copy must size to its content when the hero stacks on phones. */
@media(max-width:760px){#screen-member .member-hero>div{flex:0 1 auto}}

/* Situation task controls share height and reading edges with their scene. */
.fl-practice-tools{padding:var(--sp-4)}
.fl-practice-tools .fl-exam-time{align-items:start}
.fl-practice-tools .fl-exam-time label{margin:0;line-height:1.5}
.fl-practice-tools .fl-exam-time select,.fl-practice-tools .fl-exam-time input{display:block;height:48px;min-height:48px;margin:0;padding:10px 12px;line-height:1.5}
@media(max-width:600px){.fl-practice-tools{padding:var(--sp-4)}}

.fke-pace-clock-icon{width:16px;height:16px;vertical-align:middle;margin:0 3px;fill:none;stroke:#eab308;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.fke-pace-overlay .fke-pace-hide{flex-basis:44px;width:44px;height:44px;min-width:44px;min-height:44px}

/* Explicit reference-reading self-assessment; independent of practice scores. */
.fl-reading-controls{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;margin:4px 0 4px 8px;vertical-align:middle}
.fl-reading-controls[hidden]{display:none}
.fl-reading-controls button{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:6px 8px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--fg-dim);font:400 12px/1.4 var(--sans);cursor:pointer}
.fl-reading-controls button[aria-pressed="true"]{border-color:var(--border);color:var(--fg);background:var(--surface-raised)}
.fl-reading-controls button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.fl-reading-dot{display:inline-block;flex:0 0 9px;width:9px;height:9px;min-width:9px;border:1px solid currentColor;border-radius:50%;margin-left:6px;vertical-align:middle}
.fl-reading-dot.understood{background:currentColor}
.fl-reading-dot.revisit{background:linear-gradient(90deg,currentColor 50%,transparent 50%)}
.fl-reading-controls .fl-reading-dot,.connector-tags .fl-reading-dot{margin-left:0}
.fl-reading-revisit{margin-top:18px;border-top:1px solid var(--border);padding-top:14px}
@media(max-width:600px){.fl-reading-controls{margin-left:0;gap:3px}.fl-reading-controls button{min-height:36px}}

/* End-of-card reflections and readable learner explanations. */
.fl-reading-bottom{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:28px;padding-top:18px;border-top:1px solid var(--border,#ddd);width:100%;}
#tenseCardBody p,#referenceDetail p,#compareDetail p,#patternsDetail p,.verb-reference-note p{max-width:72ch;text-wrap:pretty;overflow-wrap:break-word;}
#tenseCardBody h2,#referenceDetail h2,#compareDetail h2,#patternsDetail h2{text-wrap:balance;}
#tenseCardBody .mistake,#referenceDetail .mistake,#compareDetail .mistake{line-height:1.6;}
.bottom-practice{margin-top:28px;padding-top:20px;border-top:1px solid var(--border,#ddd);}
#gmvpItemMount .oc-practice-sentence,#gmvpFeedback{max-width:72ch;text-wrap:pretty;}

.mistake-row .mistake-wrong,.mistake-row .mistake-right{padding-inline-start:1.5em;text-indent:-1.5em;text-wrap:pretty;}

/* Opaque topic choices; native selection and all topic options are preserved. */
select[data-fkd-topic],select[data-fkd-topic] option,select[data-fkd-topic] optgroup{background-color:#fff;color:#252536;opacity:1;}
[data-theme="dark"] select[data-fkd-topic],[data-theme="dark"] select[data-fkd-topic] option,[data-theme="dark"] select[data-fkd-topic] optgroup{background-color:#262633;color:#f5f5fa;}
@supports (appearance:base-select){select[data-fkd-topic],select[data-fkd-topic]::picker(select){appearance:base-select;}select[data-fkd-topic]::picker(select){background:#fff;color:#252536;border:1px solid #aaa;box-shadow:0 8px 24px #0003;opacity:1;}[data-theme="dark"] select[data-fkd-topic]::picker(select){background:#262633;color:#f5f5fa;}select[data-fkd-topic] option{padding:8px 12px;}}

.fkd-topic-picker{position:relative;max-width:640px;margin:8px 0 16px;}.fkd-topic-picker>summary{padding:12px 14px;background:#fff;color:#252536;border:1px solid #aaa;border-radius:8px;cursor:pointer;}.fkd-topic-popup{position:absolute;top:100%;left:0;right:0;z-index:100;background:#fff;color:#252536;border:1px solid #aaa;border-radius:8px;box-shadow:0 12px 30px #0003;max-height:52vh;overflow:auto;opacity:1;padding:10px;}.fkd-topic-popup fieldset{border:0;margin:0;padding:0;}.fkd-topic-popup legend{padding:8px;font-weight:700;}.fkd-topic-popup label{display:flex;gap:12px;align-items:flex-start;padding:10px;border-radius:6px;cursor:pointer;}.fkd-topic-popup label:focus-within,.fkd-topic-popup label:hover{background:#ededf8;}.fkd-topic-popup small{display:block;font-size:12px;}.fkd-topic-popup input{margin-top:4px;flex:none;}.fkd-topic-popup span{line-height:1.5;text-wrap:pretty;}[data-theme="dark"] .fkd-topic-picker>summary,[data-theme="dark"] .fkd-topic-popup{background:#262633;color:#f5f5fa;}[data-theme="dark"] .fkd-topic-popup label:focus-within,[data-theme="dark"] .fkd-topic-popup label:hover{background:#414153;}.mistake-context{font-weight:500;margin:0 0 12px;}.mistake-note{line-height:1.65;text-wrap:pretty;}

/* Familiar select silhouette; opaque authored menu keeps browser keyboard radios. */
.fkd-topic-picker>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;font:inherit;line-height:1.4;border-color:var(--border-strong,#aaa);border-radius:8px;list-style:none;}
.fkd-topic-picker>summary::-webkit-details-marker{display:none;}.fkd-topic-picker>summary::marker{content:"";}.fkd-topic-picker>summary::after{content:"▾";font-size:12px;flex:none;}
.fkd-topic-popup{padding:4px;border-radius:6px;}.fkd-topic-popup legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0;}
.fkd-topic-popup label{position:relative;display:block;padding:8px 12px 8px 32px;border-radius:3px;}.fkd-topic-popup input{position:absolute;width:1px;height:1px;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.fkd-topic-popup label:has(input:checked)::before{content:"✓";position:absolute;left:11px;top:8px;font-weight:700;}.fkd-topic-popup label:focus-within{outline:2px solid var(--accent);outline-offset:-2px;}
.relationship-choices{display:grid;grid-template-columns:1fr;gap:14px;margin:14px 0;}.relationship-choice{padding:16px 18px;border-radius:10px;border:1px solid var(--border);border-inline-start:4px solid var(--relationship-accent);background:var(--surface-card);}
.relationship-choice .relationship-pattern{margin:0 0 8px;font-weight:750;color:var(--fg);line-height:1.5;text-wrap:pretty;}.relationship-choice .relationship-tag{display:inline-block;font:700 11px/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase;border-radius:5px;padding:4px 7px;margin-bottom:9px;background:color-mix(in srgb,var(--relationship-accent) 18%,var(--surface-card));color:var(--fg);}
.relationship-choice .relationship-meaning{color:var(--fg-dim);margin:0 0 10px;line-height:1.6;}.relationship-choice .relationship-example{margin:0;padding:11px 13px;border-radius:6px;background:var(--surface-raised);color:var(--fg);font-weight:500;line-height:1.65;text-wrap:pretty;}
.relationship-choice[data-relationship="role"]{--relationship-accent:#8c75cf;}.relationship-choice[data-relationship="overlap"]{--relationship-accent:#2a9295;}.relationship-choice[data-relationship="condition"]{--relationship-accent:#bd8b35;}.relationship-choice[data-relationship="endpoint"]{--relationship-accent:#c86878;}
@media(max-width:500px){.relationship-choice{padding:14px;}.relationship-choice .relationship-example{padding:10px;}}

/* Compact menu rows follow the familiar dropdown density. */
.fkd-topic-popup label{box-sizing:border-box;min-height:32px;padding:6px 12px 6px 32px;font-size:15px;line-height:1.3;}
.fkd-topic-popup span{line-height:1.3;}.fkd-topic-popup small{display:inline;margin-inline-start:8px;font-size:11px;white-space:nowrap;}
.fkd-topic-popup label:has(input:checked)::before{top:50%;transform:translateY(-50%);}
@media(max-width:700px){.fkd-topic-popup label{min-height:44px;padding-block:11px;}}

@media(min-width:760px){.relationship-choices{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* Override the study-topic form's generic label spacing inside the popup. */
.fkd-practice-topic .fkd-topic-popup label{margin:0;box-sizing:border-box;min-height:32px;padding:6px 12px 6px 32px;font-size:15px;line-height:1.3;}
.fkd-practice-topic .fkd-topic-popup label span{line-height:1.3;}
@media(max-width:700px){.fkd-practice-topic .fkd-topic-popup label{min-height:44px;padding-block:11px;}}

/* Month navigation and titles-only preview. */
.fkd-month-circles{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0;}.fkd-month-circles button{width:44px;height:44px;min-width:44px;border-radius:50%;display:inline-grid;place-items:center;padding:0;background:var(--surface-card);border:1px solid var(--border-strong);color:var(--fg);font-weight:750;}.fkd-month-circles button[aria-pressed="true"]{background:var(--accent);color:#fff;border-color:var(--accent);}.fkd-month-preview-locked li{display:flex;gap:12px;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border);}.fkd-locked-label{color:var(--fg-dim);font-size:12px;white-space:nowrap;}.fkd-learning-month[hidden],.fkd-month-preview-locked[hidden],#fkd-month-1[hidden]{display:none!important;}
/* Quiet hierarchy: neutral panels, one existing accent, clear labels. */
#referenceDetail .dt-pattern,#compareDetail .dt-pattern,#referenceDetail .dt-explain,#compareDetail .dt-explain,#referenceDetail .dt-example,#compareDetail .dt-example{border-inline-start:0;background:var(--surface-card);color:var(--fg);border-bottom:1px solid var(--border);line-height:1.65;}
#referenceDetail .dt-pattern,#compareDetail .dt-pattern{font-weight:650;}
#referenceDetail .dt-example,#compareDetail .dt-example{background:var(--surface-raised);}
#referenceDetail .cmp-group,#compareDetail .cmp-group,#referenceDetail .cmp-group.secondary,#compareDetail .cmp-group.secondary{border-inline-start:0;padding-inline-start:0;}
#referenceDetail .lesson-example,#compareDetail .lesson-example{border-inline-start:0;background:var(--surface-raised);padding:12px 14px;border-radius:6px;color:var(--fg);}
#referenceDetail .knowledge-cell-label,#compareDetail .knowledge-cell-label{display:block;margin-bottom:8px;color:var(--accent-strong);font-size:12px;font-weight:700;}.decision-table .dt-explain p{margin-bottom:10px;}.decision-table .dt-example .cmp-example-actions{margin-top:12px;}
#referenceDetail .decision-table td,#compareDetail .decision-table td{border-block-end:1px solid var(--border);}
/* Two-form comparisons keep each decision together rather than in narrow columns. */
#compareDetail .decision-table.comparison-choices{display:block;min-width:0;width:100%;border:0;}#compareDetail .comparison-choices thead{display:none;}#compareDetail .comparison-choices tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}#compareDetail .comparison-choices tr{display:flex;flex-direction:column;min-width:0;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-card);gap:12px;}#compareDetail .comparison-choices td{display:block;width:auto!important;border-block:0;padding:12px 14px;overflow-wrap:anywhere;}#compareDetail .comparison-choices .dt-vocab{order:0;padding:0 0 4px;font-size:20px;font-weight:750;background:none;}#compareDetail .comparison-choices .dt-vocab .knowledge-cell-label{display:none;}#compareDetail .comparison-choices .dt-pattern{order:1;}#compareDetail .comparison-choices .dt-explain{order:2;}#compareDetail .comparison-choices .dt-example{order:3;}#compareDetail .comparison-choices .knowledge-cell-label{font-size:12px;letter-spacing:.02em;}@media(max-width:700px){#compareDetail .comparison-choices tbody{grid-template-columns:1fr;}#compareDetail .comparison-choices tr{padding:12px;}}

/* Quiet separators also override legacy stacked-table rules at every width. */
#referenceDetail .decision-table tbody tr td,#compareDetail .decision-table tbody tr td{border-block-start:1px solid var(--border);border-block-end:1px solid var(--border);}
#compareDetail .decision-table.comparison-choices tbody tr td{border-block-start:0;border-block-end:0;}

/* Simple numbered outlines; selection adds weight rather than a filled disc. */
.fkd-month-circles button,.fkd-month-circles button[aria-pressed="true"]{background:transparent;color:var(--fg);border:1px solid var(--border-strong);font-weight:500;}.fkd-month-circles button[aria-pressed="true"]{border:2px solid var(--accent-strong);font-weight:750;}.fkd-locked-lesson{cursor:default;opacity:.8;}
#referenceDetail .cmp-understand-note,#compareDetail .cmp-understand-note,#referenceDetail .cmp-decision-line,#compareDetail .cmp-decision-line,#referenceDetail .cmp-focus-card,#compareDetail .cmp-focus-card,#referenceDetail .cmp-focus-warning,#compareDetail .cmp-focus-warning,#referenceDetail .decision-cue,#compareDetail .decision-cue{background:var(--surface-raised);border:1px solid var(--border);border-inline-start:1px solid var(--border);color:var(--fg);box-shadow:none;}
#referenceDetail .cmp-understand-token,#compareDetail .cmp-understand-token,#referenceDetail .cmp-decision-token,#compareDetail .cmp-decision-token,#referenceDetail .cmp-focus-expression,#compareDetail .cmp-focus-expression{color:var(--accent-strong);}

#referenceDetail .cmp-cue,#compareDetail .cmp-cue{background:var(--surface-raised);border:1px solid var(--border);border-inline-start:1px solid var(--border);color:var(--fg);box-shadow:none;}#referenceDetail .cmp-cue>b,#compareDetail .cmp-cue>b{color:var(--accent-strong)!important;}

.fkd-root .fkd-month-nav.fkd-month-circles button{box-sizing:border-box;width:44px;height:44px;min-width:44px;max-width:44px;min-height:44px;padding:0;border-radius:50%;}.fkd-root .fkd-month-nav.fkd-month-circles button[aria-pressed="true"]{background:transparent;color:var(--fg);border:2px solid var(--accent-strong);}

/* Balanced understand cards and aligned minimal pairs. */
#referenceDetail .cmp-understand-lines,#compareDetail .cmp-understand-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:none;align-items:stretch;}#referenceDetail .cmp-understand-line,#compareDetail .cmp-understand-line{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--surface-card);height:100%;box-sizing:border-box;}#referenceDetail .cmp-understand-note,#compareDetail .cmp-understand-note{grid-column:1/-1;}
#compareDetail .decision-table.comparison-choices,#compareDetail .decision-table.comparison-choices tbody{border:0;box-shadow:none;border-collapse:separate;}#compareDetail .decision-table.comparison-choices tbody tr{border:1px solid var(--border);box-shadow:none;}#compareDetail .decision-table.comparison-choices tbody tr td,#compareDetail .decision-table.comparison-choices tbody tr:first-child td{border:0!important;box-shadow:none;}
#compareDetail .minimal-pairs-grid{grid-template-columns:1fr;max-width:none;}#compareDetail .minimal-pair-row{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:start;gap:16px;}#compareDetail .minimal-pair-side{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px;}#compareDetail .minimal-pair-side .icon-btn{order:-1;margin-top:2px;}#compareDetail .minimal-pair-side span{min-width:0;}#compareDetail .minimal-pair-vs{text-align:center;padding-top:3px;}
@media(max-width:700px){#referenceDetail .cmp-understand-lines,#compareDetail .cmp-understand-lines{grid-template-columns:1fr;}#compareDetail .minimal-pair-row{grid-template-columns:1fr;gap:10px;}#compareDetail .minimal-pair-vs{text-align:left;padding-inline-start:34px;}}

/* Keep comparison reading measures coherent and let peer cards share row tracks. */
#compareDetail .cmp-page{max-width:100%;margin-inline:0;}#compareDetail .knowledge-table-scroll:has(.comparison-choices){border:0;background:transparent;border-radius:0;overflow:visible;}#compareDetail .comparison-choices tbody{grid-template-rows:auto auto auto auto;}#compareDetail .comparison-choices tbody tr{display:grid;grid-row:span 4;grid-template-rows:subgrid;gap:12px;}#compareDetail .comparison-choices tbody tr td{width:auto;align-self:start;}#compareDetail .comparison-choices .dt-vocab{grid-row:1;}#compareDetail .comparison-choices .dt-pattern{grid-row:2;}#compareDetail .comparison-choices .dt-explain{grid-row:3;}#compareDetail .comparison-choices .dt-example{grid-row:4;}
@media(max-width:700px){#compareDetail .comparison-choices tbody{grid-template-rows:none;}#compareDetail .comparison-choices tbody tr{display:flex;grid-row:auto;}}

#compareDetail .cmp-understand-note,#compareDetail .cmp-focus-warning,#compareDetail .cmp-focus-intro,#compareDetail .cmp-core-text{max-width:100%!important;width:100%;box-sizing:border-box;}

#compareDetail .cmp-focus-grid,#compareDetail .cmp-understand-lines{max-width:100%!important;width:100%;box-sizing:border-box;}

/* Phone account settings: readable fields and consistent touch targets. */
@media(max-width:600px){
  .fl-member-dialog{max-height:calc(100dvh - 32px);padding:56px 20px 24px}
  .fl-member-close{width:44px;height:44px;top:12px;right:12px}
  .fl-member-dialog h2{line-height:1.4;margin:12px 0}
  .fl-member-dialog .fl-kicker{padding-right:32px}
  .fl-member-tabs{gap:12px;margin:20px 0;overflow-x:visible;flex-wrap:wrap}
  .fl-member-tabs button{flex:1;white-space:normal;line-height:1.6;text-align:center;min-height:48px}
  .fl-member-dialog #memberProfileDetails label{display:block;min-width:0;line-height:1.7}
  .fl-member-dialog #memberProfileDetails input,.fl-member-dialog #memberProfileDetails select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;font-size:16px;margin-top:6px}
  .fl-member-dialog .member-profile-grid{gap:16px}
  .fl-member-dialog .btn{min-height:44px;white-space:normal;line-height:1.6}
  .fl-member-dialog #memberProfileSave,.fl-member-dialog-footer .btn{width:100%}
  .fl-member-dialog-footer{gap:12px;margin-top:24px;padding-top:20px}
  .fl-member-dialog-footer span{line-height:1.7}
}

@media(max-width:600px){
  .progress-concept-row{grid-template-columns:minmax(0,1fr) auto}
  .progress-concept-name{overflow-wrap:anywhere;line-height:1.7}
}
/* Keep feedback available at the end of the dialog, clear of form actions. */
.fl-member-dialog #hhFab{position:static;margin:16px 0 0 auto;transform:none}

/* Phone review: readable Thai tour controls and a full-width payment form. */
@media(max-width:760px){
  .screen .fo-payment-choices p{font-size:14px;line-height:1.7}
  .screen .fo-payment-choices p+p{margin-top:8px}
  .ab-involve-grid{grid-template-columns:minmax(0,1fr)}
  .ab-gi-card{min-width:0;padding:16px}
  .ab-qr-card.revealed{width:100%;max-width:none;box-sizing:border-box;padding:16px}
  .ab-membership-claim{margin-top:20px;padding-top:18px}
  .ab-membership-claim strong{font-size:15px;line-height:1.6}
  .ab-membership-claim p,.ab-membership-claim label{font-size:14px;line-height:1.7}
  .ab-membership-claim input{min-height:44px;font-size:16px;min-width:0}
  .fl-tour-dialog .fl-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .fl-tour-dialog .fl-actions [data-tour-skip]{grid-column:1/-1}
  .fl-tour-dialog .btn{height:auto;min-height:44px;padding:10px 14px;white-space:normal;line-height:1.5;text-align:center;justify-content:center}
  .fl-tour-close{width:44px;height:44px;flex-basis:44px}
  .fl-tour-dialog h2{line-height:1.5;letter-spacing:normal}
  .fl-tour-dialog .fl-kicker{letter-spacing:normal;line-height:1.6}
  .fl-tour-example{display:flex;justify-content:space-between;align-items:center;gap:12px;line-height:1.6}
  .fl-tour-example span{float:none;flex-shrink:0}
}

/* Stacked knowledge cells must release their desktop column widths. */
@media(max-width:640px){
 #compareDetail .decision-table td,#referenceDetail .decision-table td {width:auto;min-width:0;box-sizing:border-box;}
}
@media(max-width:900px){
 #compareDetail .decision-table.has-pattern td,#referenceDetail .decision-table.has-pattern td {width:auto;min-width:0;box-sizing:border-box;}
}
#compareDetail .cmp-example-actions .icon-btn {min-width:44px;min-height:44px;font-size:16px!important;}
#compareDetail .dt-vocab .fb-link {display:inline-flex;align-items:center;min-height:44px;padding:6px 10px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-raised);color:var(--accent-strong);font:inherit;line-height:1.5;white-space:normal;text-align:left;}

.fke-content-error{display:flex;flex-wrap:wrap;gap:12px;padding:20px;border:1px solid var(--border);border-radius:12px;background:var(--surface-raised)}
.fke-content-error p{flex-basis:100%;margin:0;line-height:1.7}.fke-content-error .btn{min-height:44px;white-space:normal}.fkd-self-directed{min-height:44px;margin-top:10px}
@media(max-width:640px){.fke-content-error .btn{width:100%;box-sizing:border-box}.gs-card textarea{font-size:16px;line-height:1.7}.gs-card .fl-actions{flex-wrap:wrap;gap:10px}}

@media(max-width:640px){.gs-card .btn,.gs-card .gs-lesson-actions>.btn{min-height:44px;height:auto}.gs-card .gs-choice{min-height:44px;box-sizing:border-box}.gs-card .gs-feedback{padding:16px;line-height:1.7}}

.ab-subscription-choice{margin:16px 0;padding:16px;border:1px solid var(--ab-gold);border-radius:12px}.ab-subscription-choice h3{margin:0 0 10px}.ab-subscription-choice p{line-height:1.65}.ab-subscription-choice .btn{white-space:normal;min-height:44px;max-width:100%}

@media(max-width:640px){#guidedSession button{min-height:44px;min-width:44px}}

/* Checked-writing review: keep hints and long answers readable on narrow screens. */
.gs-building-task{margin-block:24px;padding-block:4px}
.gs-card summary{min-height:44px;display:flex;align-items:center;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.gs-writing-hint p,.gs-answer-reveal p{line-height:1.7}
.gs-feedback [lang="fr"]{overflow-wrap:anywhere;margin-inline:0}
.gs-writing-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
@media(max-width:640px){.gs-writing-actions .btn{width:100%;margin:0}.gs-building-task{margin-block:20px}.gs-answer-reveal{margin-block:12px}}

.gs-writing-hint summary::before,.gs-answer-reveal summary::before{content:"▸";margin-right:8px;flex:none}.gs-writing-hint[open]>summary::before,.gs-answer-reveal[open]>summary::before{content:"▾"}

/* Knowledge-card answers need comfortable touch targets and room for full sentences. */
@media(max-width:640px){
  #gmvpItemMount [data-gmvp-choice]{min-height:44px;min-width:44px;max-width:100%;height:auto;white-space:normal;overflow-wrap:anywhere;text-align:left;box-sizing:border-box}
}

/* Companion readings use one French text followed by the shared translation pattern. */
#screen-reading .reading-intro{width:min(900px,100%);box-sizing:border-box;margin:0 0 26px}
#screen-reading .reading-intro h1{max-width:24ch;margin:0;font-size:clamp(30px,4vw,44px);line-height:1.12;letter-spacing:-.035em}
#screen-reading .reading-intro .screen-sub{max-width:72ch;margin:14px 0 0;line-height:1.7}
#screen-reading .reading-intro .fl-muted{max-width:72ch;margin:10px 0 0}
.fl-reading-missions{width:min(900px,100%);box-sizing:border-box;margin:0 0 36px;scroll-margin-top:90px;overflow-wrap:anywhere}
.fl-reading-missions [id]{scroll-margin-top:95px}
.fl-reading-missions .fl-card{min-width:0;max-width:100%;box-sizing:border-box}
.fl-reading-missions .rm-catalog-card{padding:24px 26px;margin:0;border-radius:16px}
.fl-reading-missions .rm-catalog-card + .rm-catalog-card{margin-top:18px}
.fl-reading-missions .rm-catalog-card .fl-kicker{margin-bottom:8px}
.fl-reading-missions .rm-catalog-card h2{font-size:clamp(22px,2.5vw,28px);line-height:1.28;letter-spacing:-.02em;margin:0 0 10px;overflow-wrap:anywhere}
.fl-reading-missions .rm-catalog-card>p{max-width:68ch;line-height:1.65;margin:0 0 16px}
.fl-reading-missions .rm-catalog-card .btn{min-height:46px;padding:10px 18px;white-space:normal;line-height:1.35}
.fl-reading-missions>h3{margin:30px 0 14px;font-size:clamp(20px,2.2vw,25px);line-height:1.3;letter-spacing:-.015em}
.fl-reading-missions .rm-heading{padding:22px 26px;margin:0 0 22px}
.fl-reading-missions .rm-heading h2{font-size:clamp(26px,3.2vw,36px);line-height:1.2;letter-spacing:-.03em;margin:14px 0 10px}
.fl-reading-missions .rm-heading>p{max-width:68ch;line-height:1.65}
.fl-reading-missions .rm-french{font-size:1.1rem;line-height:1.85}
.fl-reading-missions .rm-audio{margin:0 0 20px;padding:12px;border:1px solid var(--border,#e4dfe0);border-radius:12px;background:var(--surface-raised,#fff)}
.fl-reading-missions .rm-audio-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.fl-reading-missions .rm-audio-actions .rm-audio-icon{display:inline-flex;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;align-items:center;justify-content:center;padding:0;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));border-radius:50%;background:var(--accent-soft);color:var(--accent-strong);font-size:18px;line-height:1}
.fl-reading-missions .rm-audio-actions .rm-audio-icon:hover:not(:disabled){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface-card))}
.fl-reading-missions .rm-audio-actions .rm-audio-icon:disabled{opacity:.42;cursor:not-allowed}
.fl-reading-missions .rm-audio-actions select{min-height:44px;padding:6px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-card);color:var(--fg);font:inherit}
.fl-reading-missions .rm-audio-speed-label{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-left:auto;color:var(--fg-dim);font-size:13px}
.fl-reading-missions .rm-audio-selection-hint{margin:8px 0 0;color:var(--fg-dim);font-size:12px;line-height:1.5}
.fl-reading-missions .rm-audio-status:empty{display:none}
.fl-reading-missions .rm-audio-status{margin:4px 0 0;color:var(--fg-dim);font-size:11px;line-height:1.4}
.fl-reading-missions .rm-news-sources{margin-block:20px}
.fl-reading-missions .rm-news-sources h3{margin-top:0}
.fl-reading-missions .rm-news-sources li{margin-block:8px;overflow-wrap:anywhere}
.fl-reading-missions .rm-paragraph-sources{display:flex;flex-wrap:wrap;gap:6px 14px;padding:0;margin:0 0 12px;list-style:none;font-size:12px;line-height:1.5;color:var(--fg-dim)}
.fl-reading-missions .rm-paragraph-sources:empty{display:none}
.fl-reading-missions .rm-paragraph-sources a{color:var(--accent-strong);font-weight:650;text-decoration:underline;text-underline-offset:2px}
.fl-reading-missions .rm-paragraph{margin:0 0 1.15em;white-space:pre-line}
.fl-reading-missions .rm-paragraph:last-child{margin-bottom:0}
.fl-reading-missions .rm-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.fl-reading-missions .rm-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;max-width:100%;box-sizing:border-box;padding:8px 14px;border:1px solid var(--border);border-radius:999px;background:var(--surface-raised,var(--surface-card));color:var(--fg);font-size:14px;font-weight:650;line-height:1.35;text-decoration:none;overflow-wrap:anywhere}
.fl-reading-missions .rm-nav a:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}
.fl-reading-missions .rm-translation-toggle{min-height:44px;margin-top:12px;text-align:start}
.fl-reading-missions .rm-translation[hidden]{display:none!important}
.fl-reading-missions .rm-translation p{margin:0 0 1em;line-height:1.75}
.fl-reading-missions .rm-translation p:last-child{margin-bottom:0}
.fl-reading-missions .rm-translation-note{font-style:normal;font-size:.85em;margin-top:16px}
.fl-reading-missions .rm-reference-explanation{margin:12px 0 0;line-height:1.75}
.fl-reading-missions .rm-reference h3{margin:0 0 14px;color:var(--fg);font-size:clamp(20px,2vw,25px);line-height:1.3}
.fl-reading-missions .rm-reference-more{display:inline-flex;align-items:center;min-height:36px;margin-top:14px;padding:0;border:0;background:none;color:var(--muted,var(--fg-muted));font:inherit;font-size:12px;font-weight:650;line-height:1.4;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 42%,transparent);text-underline-offset:4px;cursor:pointer}
.fl-reading-missions .rm-reference-more:hover{color:var(--fg)}
.fl-reading-missions .rm-catalog-pages{display:flex;justify-content:center;align-items:center;gap:8px;margin:22px 0 0}
.fl-reading-missions .rm-catalog-pages button{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:6px;border:1px solid var(--border);border-radius:999px;background:var(--surface-card);color:var(--fg);font:inherit;font-size:13px;font-weight:650;text-align:center}
.fl-reading-missions .rm-catalog-pages button[aria-current=page]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}
.fl-reading-missions .rm-reading-confidence{margin-top:24px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-raised)}
.fl-reading-missions .rm-reading-confidence>strong,.fl-reading-missions .rm-reading-confidence>span{display:block}
.fl-reading-missions .rm-reading-confidence>span{margin-top:4px;color:var(--muted,var(--fg-muted));font-size:12px}
.fl-reading-missions .rm-reading-confidence>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.fl-reading-missions .rm-reading-confidence button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:7px 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface-card);color:var(--fg);font:inherit;font-size:13px;font-weight:650}
.fl-reading-missions .rm-reading-confidence button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}
.fl-reading-missions .rm-reading-confidence .fl-reading-dot{flex:0 0 auto}
.fl-reading-missions .fl-choice{display:flex;align-items:flex-start;gap:10px;min-height:44px;white-space:normal;line-height:1.65}
.fl-reading-missions .fl-choice input{flex:0 0 auto;margin-top:7px}
.fl-reading-missions button{min-height:44px;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:start}
.fl-reading-missions textarea{display:block;width:100%;box-sizing:border-box;min-height:180px;font:inherit;line-height:1.7;padding:12px;margin-top:8px;border:1px solid var(--border,#b8c3ba);border-radius:8px}
.fl-reading-missions mark.rm-evidence{color:var(--accent-strong);background:var(--accent-soft);border:0;border-radius:5px;padding:1px 3px;font-weight:650;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.fl-reading-missions .rm-paragraph.rm-evidence{outline:0;border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:var(--surface-raised)}
.fl-reading-missions .fl-feedback:empty{display:none}
.fl-reading-missions .fl-feedback{line-height:1.75;margin-top:14px}
.fl-reading-missions a:focus-visible,.fl-reading-missions button:focus-visible{outline:3px solid #a47a22;outline-offset:3px}
@media(max-width:600px){#screen-reading .reading-intro,.fl-reading-missions{width:100%}#screen-reading .reading-intro{margin-bottom:20px}.fl-reading-missions .rm-catalog-card{padding:18px}.fl-reading-missions .rm-heading{padding:18px;margin-bottom:18px}.fl-reading-missions>h3{margin-top:24px}}
@media(max-width:420px){#screen-reading .reading-intro,.fl-reading-missions{width:100%}#screen-reading .reading-intro h1{font-size:30px}.fl-reading-missions .fl-card{padding:14px}.fl-reading-missions .rm-catalog-card{padding:16px}.fl-reading-missions .rm-heading{padding:16px}.fl-reading-missions fieldset{margin-inline:0}.fl-reading-missions .rm-french{font-size:1rem}.fl-reading-missions .rm-audio{padding:8px}.fl-reading-missions .rm-audio-actions{gap:6px}.fl-reading-missions .rm-audio-speed-label{flex:1 0 100%;margin-left:0}.fl-reading-missions .rm-audio-speed-label select{flex:1}.fl-reading-missions .rm-nav{gap:7px}.fl-reading-missions .rm-nav a{flex:1 1 auto;min-width:calc(50% - 7px);padding-inline:10px;font-size:13px}}

/* Reading catalogue and split study workspace. */
#screen-reading.rm-detail-open .reading-intro{display:none}
#screen-reading .fl-reading-missions{width:100%;max-width:1300px;margin-inline:0}
#screen-reading.rm-detail-open .fl-reading-missions{width:100%;max-width:1300px}
.fl-reading-missions .rm-catalog-head{margin:0 0 20px;max-width:none}
.fl-reading-missions .rm-catalog-head h2{margin:0 0 8px;font-size:clamp(26px,3vw,36px)}
.fl-reading-missions .rm-catalog-head p{margin:0;color:var(--muted,var(--fg-muted))}
.fl-reading-missions .rm-catalog-filters{max-width:none;margin:0 0 22px;display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.fl-reading-missions .rm-catalog-filters label{display:grid;gap:6px;font-weight:650;font-size:14px}
.fl-reading-missions .rm-catalog-filters select{min-height:44px;min-width:155px;padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-card);color:var(--fg);font:inherit}
.fl-reading-missions .rm-catalog-count{margin:0 0 8px auto;color:var(--muted,var(--fg-muted))}
.fl-reading-missions .rm-catalog-grid{max-width:none;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.fl-reading-missions .rm-catalog-card{padding:0;overflow:hidden;display:flex;flex-direction:column;background:var(--surface-card)}
.fl-reading-missions .rm-catalog-card + .rm-catalog-card{margin-top:0}

.fl-reading-missions .rm-catalog-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:18px}
.fl-reading-missions .rm-catalog-tags{display:flex;flex-wrap:wrap;align-items:center;gap:7px;color:var(--muted,var(--fg-muted));font-size:12px}
.fl-reading-missions .rm-catalog-tags>span,.fl-reading-missions .rm-theme-chip{min-height:30px;padding:5px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface-raised);color:inherit;font-size:12px;line-height:1.2}
.fl-reading-missions .rm-catalog-tags .rm-catalog-access{color:var(--accent-strong);font-weight:750;text-transform:uppercase;letter-spacing:.05em}
.fl-reading-missions .rm-theme-chip{cursor:pointer}
.fl-reading-missions .rm-catalog-copy h2{margin:14px 0 16px;font-size:clamp(19px,2vw,24px);line-height:1.25}
.fl-reading-missions .rm-catalog-copy .btn,.fl-reading-missions .rm-catalog-locked{margin-top:auto}
.fl-reading-missions .rm-catalog-empty{grid-column:1/-1;padding:28px;border:1px dashed var(--border);border-radius:14px;text-align:center}
.fl-reading-missions .rm-heading{max-width:1300px;margin:0 0 16px;padding:14px 18px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.fl-reading-missions .rm-heading .rm-heading-main{min-width:0}
.fl-reading-missions .rm-heading [data-reading-close]{min-height:36px;padding:4px 0}
.fl-reading-missions .rm-heading .fl-kicker{margin:4px 0}
.fl-reading-missions .rm-heading h2{margin:4px 0;font-size:clamp(20px,2.2vw,28px);line-height:1.25}
.fl-reading-missions #rm-progress{margin:6px 0 0;font-size:13px;color:var(--muted,var(--fg-muted))}
.fl-reading-missions .rm-heading .rm-nav{justify-content:flex-end;max-width:390px;margin:0}
.fl-reading-missions .rm-heading .rm-nav a{min-height:36px;padding:6px 10px;font-size:12px}
.fl-reading-missions .rm-workspace{max-width:1300px;margin:0;display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,.9fr);gap:16px;align-items:stretch}
.fl-reading-missions .rm-reader-pane,.fl-reading-missions .rm-task-pane{height:clamp(500px,70vh,780px);min-height:0;overflow:auto;overscroll-behavior:contain;border:1px solid var(--border);border-radius:16px;background:var(--surface-card);scrollbar-gutter:stable}
.fl-reading-missions .rm-reader-pane{padding:clamp(16px,2vw,28px)}
.fl-reading-missions .rm-reader-pane>h3{margin:0 0 14px;font-size:18px}
.fl-reading-missions .rm-reader-pane .rm-text{margin:0;padding:0;border:0;border-radius:0;background:transparent}
.fl-reading-missions .rm-task-pane{display:flex;flex-direction:column;position:relative}
.fl-reading-missions .rm-task-tabs{position:sticky;top:0;z-index:5;isolation:isolate;flex:0 0 auto;min-height:62px;box-sizing:border-box;display:flex;flex-wrap:wrap;align-content:center;gap:6px;overflow:visible;padding:10px;background:var(--surface-card);border-bottom:1px solid var(--border)}
.fl-reading-missions .rm-task-tabs [role=tab]{flex:1 1 21%;min-width:max-content;min-height:42px;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-raised);color:var(--fg);font:inherit;font-size:13px;font-weight:650;text-align:center}
.fl-reading-missions .rm-task-tabs [role=tab][aria-selected=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}
.fl-reading-missions [data-reading-panel]{padding:4px 16px 20px}
.fl-reading-missions [data-reading-panel][hidden],.fl-reading-missions [data-reading-question-page][hidden]{display:none!important}
.fl-reading-missions [data-reading-panel]>h3{font-size:19px}
.fl-reading-missions .rm-question{margin:0 0 14px;padding:16px}
.fl-reading-missions .rm-question-pager{position:sticky;bottom:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;background:var(--surface-card);border-top:1px solid var(--border)}
.fl-reading-missions .rm-question-pager span{font-size:13px;color:var(--muted,var(--fg-muted));text-align:center}
.fl-reading-missions .rm-question-pager button{min-height:40px;padding:7px 12px}
.fl-reading-missions .rm-sentence{border-radius:4px;transition:background-color .15s ease,box-shadow .15s ease}
.fl-reading-missions .rm-sentence.rm-speaking{background:color-mix(in srgb,var(--accent-soft) 78%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 28%,transparent);border-radius:5px}
@media(max-width:1050px){.fl-reading-missions .rm-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){
 .fl-reading-missions .rm-workspace{grid-template-columns:minmax(0,1fr)}
 .fl-reading-missions .rm-reader-pane,.fl-reading-missions .rm-task-pane{height:auto;max-height:none;overflow:visible;scrollbar-gutter:auto}
 .fl-reading-missions .rm-reader-pane{padding:18px}
 .fl-reading-missions .rm-task-pane{display:block}
 .fl-reading-missions .rm-task-tabs{position:relative;flex:none;min-height:0;flex-wrap:wrap;overflow:visible}
 .fl-reading-missions .rm-task-tabs [role=tab]{flex:1 1 42%;white-space:normal}
 .fl-reading-missions .rm-question-pager{position:relative}
}
@media(max-width:600px){
 .fl-reading-missions .rm-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .fl-reading-missions .rm-catalog-copy{padding:12px}
 .fl-reading-missions .rm-catalog-copy h2{font-size:17px}
 .fl-reading-missions .rm-catalog-tags{gap:4px}
 .fl-reading-missions .rm-catalog-tags>span,.fl-reading-missions .rm-theme-chip{font-size:10px;padding-inline:7px}
 .fl-reading-missions .rm-heading{grid-template-columns:1fr;padding:12px}
 .fl-reading-missions .rm-heading .rm-nav{justify-content:flex-start;max-width:none;margin:4px 0 0}
 .fl-reading-missions .rm-catalog-filters{align-items:stretch}
 .fl-reading-missions .rm-catalog-filters label{flex:1 1 40%}
 .fl-reading-missions .rm-catalog-filters select{min-width:0;width:100%}
 .fl-reading-missions .rm-catalog-count{width:100%;margin:0}
}
@media(max-width:390px){.fl-reading-missions .rm-catalog-grid{grid-template-columns:1fr}}

/* Align language and appearance controls in one deliberate mobile toolbar row. */
@media(max-width:700px){
 .topbar-right{grid-template-columns:minmax(0,1fr) 40px auto auto;gap:8px;align-items:center}
 .topbar-right .member-entry{grid-column:1;white-space:nowrap}
 .topbar-right .fke-help-icon{grid-column:2;justify-self:center}
 .topbar-right .theme-toggle{grid-column:3;justify-self:end}
 .topbar-right .fke-language-toggle{grid-column:4;justify-self:end}
}
@media(max-width:420px){
 .topbar-right{grid-template-columns:minmax(0,1fr) 36px auto auto;gap:5px}
 .topbar-right .member-entry{padding-inline:8px;font-size:12px}
 .topbar-right .theme-toggle .theme-btn,.topbar-right .fke-language-toggle button{padding-inline:6px;font-size:11px}
}

.fl-reading-missions .rm-question-pager button:disabled{opacity:.4;cursor:default}
.fl-reading-missions .rm-catalog-tags .rm-theme-chip{min-height:44px}
/* Keep the question controls clear of the persistent feedback button. */
@media(min-width:961px){.fl-reading-missions .rm-question-pager{padding-inline-end:78px}}

/* Calm editorial cards: stable level colours, compact metadata, equal actions. */
.fl-reading-missions .rm-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.fl-reading-missions .rm-catalog-grid .rm-catalog-card{--rm-card-bg:#e4e7e6;background:var(--rm-card-bg);border:0;border-radius:22px;color:#22272c;box-shadow:none}
.fl-reading-missions .rm-catalog-card[data-level="A2"]{--rm-card-bg:#dbe8ed}
.fl-reading-missions .rm-catalog-card[data-level="A2+/B1"]{--rm-card-bg:#f5d9bf}
.fl-reading-missions .rm-catalog-card[data-level="B1"]{--rm-card-bg:#ddd2eb}
.fl-reading-missions .rm-catalog-card .rm-catalog-copy{box-sizing:border-box;min-height:340px;padding:28px 20px;gap:20px;align-items:center;text-align:center}
.fl-reading-missions .rm-catalog-card .rm-catalog-copy h2{flex:1;display:flex;align-items:center;justify-content:center;color:inherit;margin:0;max-width:19ch;font-family:Georgia,"Times New Roman",serif;font-size:clamp(23px,2vw,29px);line-height:1.15;letter-spacing:-.035em;font-weight:500}
.fl-reading-missions .rm-catalog-card .rm-catalog-tags{width:100%;display:flex;justify-content:center;align-items:center;gap:4px 12px;margin:0;color:#303642}
.fl-reading-missions .rm-catalog-tags .rm-catalog-access{flex-basis:100%;border:0;background:none;padding:0;min-height:0;color:#34394f;font-size:10px;line-height:1.4;letter-spacing:.09em;font-weight:700}
.fl-reading-missions .rm-catalog-tags>span:not(.rm-catalog-access){display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:2px 8px;box-sizing:border-box;border:1px solid rgba(34,39,44,.24);border-radius:5px;background:transparent;color:inherit;font-size:12px;line-height:1.4;white-space:nowrap}
.fl-reading-missions .rm-catalog-tags .rm-theme-chip{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:4px 0;border:0;border-radius:0;background:none;color:inherit;font:inherit;font-size:12px;line-height:1.4;text-decoration:underline;text-decoration-color:rgba(34,39,44,.3);text-underline-offset:4px;white-space:normal}
.fl-reading-missions .rm-catalog-card .rm-catalog-copy .btn{margin:0;width:100%;min-height:44px;padding:10px 12px;background:#252729;border:0;border-radius:999px;color:#fff;box-shadow:none;font-size:13px;line-height:1.4;font-weight:600}
.fl-reading-missions .rm-catalog-card .rm-catalog-copy .btn:hover{background:#3b3e42}
.fl-reading-missions .rm-catalog-card .rm-catalog-locked{box-sizing:border-box;margin:0;width:100%;min-height:44px;padding:10px 12px;border:1px solid rgba(34,39,44,.24);border-radius:999px;color:inherit;font-size:13px;line-height:1.4;font-weight:600}
@media(min-width:1280px){.fl-reading-missions .rm-catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:960px){.fl-reading-missions .rm-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639px){
 .fl-reading-missions .rm-catalog-grid{grid-template-columns:minmax(0,1fr);gap:14px}
 .fl-reading-missions .rm-catalog-card .rm-catalog-copy{min-height:290px;padding:24px;gap:16px}
 .fl-reading-missions .rm-catalog-card .rm-catalog-copy h2{font-size:28px}
 .fl-reading-missions .rm-task-tabs{padding:8px;gap:6px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .fl-reading-missions .rm-task-tabs [role=tab]{min-width:0;width:100%;min-height:44px;padding:8px;font-size:12px;box-sizing:border-box}
 .fl-reading-missions .rm-reader-pane{padding:16px}
 .fl-reading-missions [data-reading-panel]{padding:4px 12px 16px}
 .fl-reading-missions .rm-question{padding:12px}
 .fl-reading-missions .rm-question-pager{padding:10px 12px 72px;gap:6px}
 .fl-reading-missions .rm-question-pager button{min-height:44px;padding:8px 10px;font-size:13px}
 .fl-reading-missions .rm-audio{padding:10px}
 .fl-reading-missions .rm-audio-actions{gap:6px;justify-content:flex-start}
 .fl-reading-missions .rm-audio-actions .rm-audio-icon{width:40px;height:40px;min-width:40px;min-height:40px;flex:0 0 40px}
 .fl-reading-missions .rm-audio-speed-label{flex:1 0 100%;margin:2px 0 0;justify-content:space-between}
 .fl-reading-missions .rm-audio-speed-label select{flex:0 0 90px;width:90px}
 .fl-reading-missions .rm-audio-selection-hint,.fl-reading-missions .rm-audio-status{font-size:12px;line-height:1.5}
}
@media(max-width:639px){
 .fl-reading-missions .rm-question-pager{display:grid;grid-template-columns:1fr 1fr}
 .fl-reading-missions .rm-question-pager span{grid-column:1/-1;grid-row:1;font-size:12px}
 .fl-reading-missions .rm-question-pager button{grid-row:2;white-space:nowrap}
}
@media(max-width:360px){
 .fl-reading-missions .rm-reader-pane{padding:12px}
 .fl-reading-missions .rm-audio{padding:8px}
 .fl-reading-missions .rm-audio-actions{gap:4px}
}

/* Compact catalogue controls; retain accessible names and native select menus. */
.fl-reading-missions .rm-catalog-card .rm-catalog-copy h2{font-family:inherit;font-weight:650;letter-spacing:-.025em;font-size:clamp(22px,1.8vw,27px);line-height:1.2}
.fl-reading-missions .rm-catalog-card .rm-catalog-copy .btn{width:auto;min-width:150px;min-height:36px;padding:7px 16px;border:1px solid rgba(34,39,44,.55);background:transparent;color:#22272c;font-size:12px;line-height:1.5;display:inline-flex;align-items:center;justify-content:center;text-align:center}
.fl-reading-missions .rm-catalog-card .rm-catalog-copy .btn:hover{background:rgba(255,255,255,.28)}
.fl-reading-missions .rm-catalog-tags{gap:0 8px}
.fl-reading-missions .rm-catalog-tags .rm-level-chip,.fl-reading-missions .rm-catalog-tags .rm-theme-chip{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:36px;margin:0;padding:6px 0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#303642;font:inherit;font-size:12px;line-height:1.5;text-decoration:underline;text-decoration-color:rgba(34,39,44,.3);text-underline-offset:4px;cursor:pointer}
.fl-reading-missions .rm-catalog-tags>span.rm-meta-divider{min-height:0;padding:0;border:0;border-radius:0;background:none;font-size:12px;color:#59616a}
.fl-reading-missions .rm-catalog-filters{align-items:center;gap:10px}
.fl-reading-missions .rm-catalog-filters label{display:block}
.fl-reading-missions .rm-catalog-filters select{appearance:none;-webkit-appearance:none;min-height:38px;padding:8px 34px 8px 12px;line-height:1.4;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23747b85' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px}
.fl-reading-missions .rm-catalog-filters [data-reading-filter-reset]{min-height:36px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;font-size:12px;line-height:1.5;box-shadow:none}
.fl-reading-missions .rm-catalog-count{margin:0 0 0 auto;font-size:13px}
@media(max-width:600px){.fl-reading-missions .rm-catalog-count{margin:0;width:auto}.fl-reading-missions .rm-catalog-filters select{font-size:16px}.fl-reading-missions .rm-catalog-filters label{flex:1 1 42%}}

/* Compact aligned cards and a task viewport that never clips form controls. */
.fl-reading-missions .rm-catalog-card .rm-catalog-copy{display:grid;grid-template-rows:minmax(76px,1fr) auto auto;justify-items:center;align-items:center;min-height:244px;height:100%;padding:20px;gap:12px}
.fl-reading-missions .rm-catalog-card .rm-catalog-copy h2{align-self:stretch;width:100%;max-width:20ch;font-size:clamp(21px,1.7vw,25px)}
.fl-reading-missions .rm-catalog-card .rm-catalog-tags{align-self:end}
.fl-reading-missions .rm-heading{grid-template-columns:minmax(0,1fr)}
.fl-reading-missions .rm-reader-pane .rm-audio{border:0;border-radius:0;background:transparent;padding:0;margin:0 0 20px;box-shadow:none}
@media(min-width:961px){
 .fl-reading-missions .rm-reader-pane,.fl-reading-missions .rm-task-pane{height:clamp(680px,82vh,960px)}
 .fl-reading-missions .rm-task-pane{overflow:hidden}
 .fl-reading-missions [data-reading-panel]{flex:1 1 auto;min-height:0;overflow:auto;box-sizing:border-box}
 .fl-reading-missions #rm-panel-questions{display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}
 .fl-reading-missions #rm-panel-questions>h3{flex:0 0 auto;margin:16px 0}
 .fl-reading-missions #rm-panel-questions .rm-question{flex:1 1 auto;min-height:0;overflow:auto;box-sizing:border-box;margin-bottom:12px;padding-bottom:24px;scrollbar-gutter:stable}
 .fl-reading-missions .rm-question-pager{position:static;flex:0 0 auto;margin-inline:-16px}
}
@media(max-width:639px){.fl-reading-missions .rm-catalog-card .rm-catalog-copy{min-height:224px;padding:18px 22px;gap:10px}.fl-reading-missions .rm-catalog-card .rm-catalog-copy h2{font-size:24px}}

/* Study panels share compact, balanced navigation; long Thai content can scroll. */
.fl-reading-missions .rm-catalog-card .rm-catalog-copy{min-height:280px}
.fl-reading-missions [data-reading-reference-page][hidden]{display:none!important}
.fl-reading-missions #rm-writing,.fl-reading-missions #rm-follow-up{margin:0;padding:8px 0 16px;border:0;border-radius:0;background:transparent;box-shadow:none;min-width:0}
.fl-reading-missions #rm-draft{box-sizing:border-box;width:100%;max-width:100%;min-height:180px}
.fl-reading-missions .rm-question-pager{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;width:calc(100% - 48px);max-width:360px;margin:0 auto;padding:10px 0 14px;border:0;background:transparent}
.fl-reading-missions .rm-question-pager button{grid-row:1;min-height:36px;width:auto;min-width:0;padding:6px 4px;border:0;border-radius:4px;box-shadow:none;background:transparent;color:var(--fg);font-size:12px;line-height:1.5;white-space:nowrap}
.fl-reading-missions .rm-question-pager button:first-child{justify-self:start}
.fl-reading-missions .rm-question-pager button:last-child{justify-self:end}
.fl-reading-missions .rm-question-pager span{grid-row:1;grid-column:2;font-size:12px}
.fl-reading-missions .rm-question-pager button:hover:not(:disabled){text-decoration:underline;text-underline-offset:4px}
@media(min-width:961px){
 .fl-reading-missions #rm-panel-language{display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}
 .fl-reading-missions #rm-panel-language>h3{flex:0 0 auto;margin:16px 0}
 .fl-reading-missions #rm-panel-language .rm-reference{flex:1 1 auto;min-height:0;overflow:auto;margin:0 0 12px;padding:16px;box-sizing:border-box;scrollbar-gutter:stable}
}
@media(max-width:960px){.fl-reading-missions .rm-reference{margin:0 0 12px}}
@media(max-width:639px){
 .fl-reading-missions .rm-catalog-card .rm-catalog-copy{min-height:260px}
 .fl-reading-missions .rm-question-pager{width:100%;max-width:360px;padding-bottom:68px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
 .fl-reading-missions .rm-question-pager button{font-size:11px}
 .fl-reading-missions .rm-question-pager span{font-size:11px}
}
@media(min-width:961px) and (max-width:1100px){
 .fl-reading-missions .rm-task-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .fl-reading-missions .rm-task-tabs [role=tab]{min-width:0;width:100%;box-sizing:border-box;white-space:normal}
}

/* Keep rate next to playback instead of stretching it across the toolbar. */
.fl-reading-missions .rm-audio-actions{gap:8px;justify-content:flex-start}
.fl-reading-missions .rm-audio-speed-label{flex:0 0 auto;margin:0 0 0 6px;gap:6px;justify-content:flex-start;font-size:12px}
.fl-reading-missions .rm-audio-speed-label select{flex:0 0 auto;width:72px;min-height:36px;padding:6px 8px;font-size:13px}
.fl-reading-missions .rm-audio-speed-label{font-size:0}
.fl-reading-missions .rm-audio-speed-label select{font-size:13px}
.fl-reading-missions .rm-task-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.fl-reading-missions .rm-task-tabs [role=tab]{min-width:0;width:100%;box-sizing:border-box;white-space:normal}
.fl-reading-missions .rm-review{max-width:760px;margin:0;padding:24px}
.fl-reading-missions .rm-review>h2{margin:12px 0 20px}
.fl-reading-missions .rm-review>[data-reading-transfer]{margin-top:20px}
@media(max-width:639px){.fl-reading-missions .rm-audio-actions{gap:5px}.fl-reading-missions .rm-audio-speed-label{margin-left:0}.fl-reading-missions .rm-audio-speed-label select{width:64px}.fl-reading-missions .rm-task-tabs [role=tab]{font-size:11px;padding:8px 4px}.fl-reading-missions .rm-review{padding:18px}}

/* Consistent peer heights in the global account/theme/language toolbar. */
header.topbar .topbar-right{align-items:center}
header.topbar .topbar-right .member-entry,header.topbar .topbar-right .fke-help-icon{height:36px;min-height:36px;box-sizing:border-box}
header.topbar .topbar-right .fke-help-icon{width:36px;flex-basis:36px}
header.topbar .topbar-right .theme-toggle,header.topbar .topbar-right .fke-language-toggle{height:36px;padding:2px;box-sizing:border-box;align-items:stretch;gap:2px}
header.topbar .topbar-right .theme-btn,header.topbar .topbar-right .fke-language-toggle button{height:30px;min-height:30px;padding:4px 10px;box-sizing:border-box;line-height:1;font-size:12px}
@media(max-width:700px){header.topbar .topbar-right .member-entry,header.topbar .topbar-right .fke-help-icon,header.topbar .topbar-right .theme-toggle,header.topbar .topbar-right .fke-language-toggle{height:40px;min-height:40px}header.topbar .topbar-right .fke-help-icon{width:40px;flex-basis:40px}header.topbar .topbar-right .theme-btn,header.topbar .topbar-right .fke-language-toggle button{height:34px;min-height:34px;padding-inline:7px}}
@media(max-width:420px){header.topbar .topbar-right{grid-template-columns:minmax(0,1fr) 36px auto auto;gap:4px}header.topbar .topbar-right .member-entry,header.topbar .topbar-right .fke-help-icon,header.topbar .topbar-right .theme-toggle,header.topbar .topbar-right .fke-language-toggle{height:36px;min-height:36px}header.topbar .topbar-right .fke-help-icon{width:36px;flex-basis:36px}header.topbar .topbar-right .member-entry{padding-inline:6px;font-size:11px}header.topbar .topbar-right .theme-btn,header.topbar .topbar-right .fke-language-toggle button{height:30px;min-height:30px;font-size:10px;padding-inline:5px}}

/* Leave a clear side gutter for the floating feedback button on tablet readers. */
@media(min-width:961px) and (max-width:1280px){.fl-reading-missions .rm-question-pager{width:calc(100% - 128px)}}

/* Answer feedback: the judgement and learner answer carry the result colour. */
.gs-feedback[data-answer-result="correct"]>b,.gs-feedback[data-answer-result="correct"]>p:first-of-type,
[data-building-result="correct"]>h4,[data-building-result="correct"]>.gs-result-text{color:#167044}
.gs-feedback[data-answer-result="incorrect"]>b,.gs-feedback[data-answer-result="shaky"]>b,
.gs-feedback[data-answer-result="incorrect"]>p:first-of-type,.gs-feedback[data-answer-result="shaky"]>p:first-of-type,
[data-building-result]:not([data-building-result="correct"])>h4,[data-building-result]:not([data-building-result="correct"])>.gs-result-text{color:#b42332}
[data-theme="dark"] .gs-feedback[data-answer-result="correct"]>b,[data-theme="dark"] .gs-feedback[data-answer-result="correct"]>p:first-of-type,
[data-theme="dark"] [data-building-result="correct"]>h4,[data-theme="dark"] [data-building-result="correct"]>.gs-result-text{color:#6ee7a0}
[data-theme="dark"] .gs-feedback[data-answer-result="incorrect"]>b,[data-theme="dark"] .gs-feedback[data-answer-result="shaky"]>b,
[data-theme="dark"] .gs-feedback[data-answer-result="incorrect"]>p:first-of-type,[data-theme="dark"] .gs-feedback[data-answer-result="shaky"]>p:first-of-type,
[data-theme="dark"] [data-building-result]:not([data-building-result="correct"])>h4,[data-theme="dark"] [data-building-result]:not([data-building-result="correct"])>.gs-result-text{color:#fda4af}

.gs-card input.fl-answer[data-answer-result="correct"],.gs-feedback[data-answer-result] p strong[lang="fr"]{color:#167044;-webkit-text-fill-color:#167044;opacity:1}
.gs-card input.fl-answer[data-answer-result="incorrect"],.gs-card input.fl-answer[data-answer-result="shaky"]{color:#b42332;-webkit-text-fill-color:#b42332;opacity:1}
[data-theme="dark"] .gs-card input.fl-answer[data-answer-result="correct"],[data-theme="dark"] .gs-feedback[data-answer-result] p strong[lang="fr"]{color:#6ee7a0;-webkit-text-fill-color:#6ee7a0}
[data-theme="dark"] .gs-card input.fl-answer[data-answer-result="incorrect"],[data-theme="dark"] .gs-card input.fl-answer[data-answer-result="shaky"]{color:#fda4af;-webkit-text-fill-color:#fda4af}

.rm-written-label{display:block;margin:16px 0}.rm-written-label>label{display:block;margin-bottom:8px}.rm-written-label textarea{display:block;width:100%;box-sizing:border-box;font:inherit;line-height:1.6;padding:12px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-page);color:var(--fg);resize:vertical}.rm-model{margin:16px 0;padding:12px;background:var(--surface-page);border:1px solid var(--border);border-radius:8px}.rm-self-actions{display:flex;gap:10px;flex-wrap:wrap}.rm-self-actions .btn{white-space:normal;text-align:left;height:auto;min-height:44px}

@media(max-width:640px){#companionReadingMissions[data-reading-question-count="10"] .rm-question-pager{padding-inline-end:48px}}

.rm-self-actions [aria-pressed="true"]{background:var(--accent-soft);border-color:var(--accent-strong);font-weight:600}

/* Lesson reference: familiar FKE surfaces, clear French and quieter meanings. */
.gs-concept-panel.gs-phrase-panel,.gs-concept-panel.gs-reading-panel{padding:24px;background:var(--surface-card);border:1px solid var(--border);border-radius:18px;min-width:0}
.gs-reference-heading{display:flex;align-items:center;gap:14px;min-width:0}
.gs-reference-heading>div{min-width:0;flex:1}
.gs-reference-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:13px;background:var(--accent-soft);color:var(--accent-strong)}
.gs-reference-icon svg{width:24px;height:24px}
.gs-reference-kicker{display:block;margin-bottom:5px;color:var(--fg-dim);font-size:11px;letter-spacing:.09em;font-weight:650;line-height:1.5}
.gs-concept-panel .gs-reference-heading h3{margin:0;font-size:23px;line-height:1.3;overflow-wrap:anywhere}
.gs-concept-panel .gs-reference-intro{margin:18px 0 20px;color:var(--fg-dim);font-size:15px;line-height:1.65}
.gs-phrase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.gs-phrase-card{padding:18px;border:1px solid var(--border);border-radius:13px;background:var(--surface-page);min-width:0}
.gs-phrase-card dt{display:flex;align-items:flex-start;gap:10px;margin:0;line-height:1.5}
.gs-phrase-number{flex:0 0 24px;padding-top:3px;color:var(--accent-strong);font-size:12px;font-weight:650;font-variant-numeric:tabular-nums}
.gs-phrase-card dt strong{font-size:20px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.gs-phrase-card dd{margin:9px 0 0 34px;color:var(--fg-dim);font-size:15px;line-height:1.65;overflow-wrap:anywhere}
.gs-reading-count{flex:0 0 auto;border:1px solid var(--border);border-radius:999px;padding:5px 10px;color:var(--fg-dim);font-size:12px;white-space:nowrap}
.gs-reading-text{max-width:64ch;margin:20px 0 0;padding:0;border:0}
.gs-concept-panel .gs-reading-text p{margin:0 0 1em;font-size:19px;line-height:1.9;overflow-wrap:anywhere;color:var(--fg)}
.gs-reading-text p:last-child{margin-bottom:0}
@media(max-width:600px){.gs-concept-panel.gs-phrase-panel,.gs-concept-panel.gs-reading-panel{padding:18px;border-radius:14px}.gs-reference-heading{gap:10px;flex-wrap:wrap}.gs-reference-icon{flex-basis:38px;height:38px;border-radius:11px}.gs-reference-icon svg{width:22px;height:22px}.gs-concept-panel .gs-reference-heading h3{font-size:20px}.gs-reference-kicker{font-size:10px}.gs-reading-count{margin-left:48px}.gs-phrase-grid{grid-template-columns:minmax(0,1fr);gap:10px}.gs-phrase-card{padding:15px}.gs-phrase-card dt strong{font-size:18px}.gs-phrase-card dd{font-size:14px}.gs-reading-text{padding:0}.gs-concept-panel .gs-reading-text p{font-size:18px;line-height:1.85}}

@media(max-width:600px){.gs-reading-panel .gs-reference-heading>div{flex:1 1 calc(100% - 54px)}}


.gs-reading-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.gs-reading-kicker{display:flex;align-items:center;gap:8px;color:var(--fg-dim);font-size:11px;letter-spacing:.04em;line-height:1.5}
.gs-reading-kicker svg{width:18px;height:18px;flex:none;color:var(--accent-strong)}
.gs-concept-panel .gs-reading-heading h3{grid-column:1/-1;margin:0;font-size:24px;line-height:1.4;overflow-wrap:anywhere}
.gs-reading-heading .gs-reading-count{margin:0;padding:4px 9px}
@media(max-width:600px){.gs-concept-panel .gs-reading-heading h3{font-size:21px}.gs-reading-kicker{font-size:10px}}

/* Story titles stay readable headings; the explicit story action carries the CTA. */
.fl-reading-missions .rm-catalog-copy h2 a,.fl-reading-missions .rm-catalog-copy h2 a:visited,.fl-reading-missions .rm-catalog-copy h2 a:hover{color:inherit;text-decoration:none}
.fl-reading-missions .rm-catalog-copy h2 a:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:3px}
.gs-reading-heading .gs-reference-translate{grid-column:2;grid-row:1;justify-self:end;min-height:44px;margin:0;padding:6px 8px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--fg-dim);font:inherit;font-size:13px;line-height:1.4;cursor:pointer}
.gs-reference-translate:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.gs-reading-text .gs-dialogue-turn,.gs-reference-translation .gs-dialogue-turn{display:flex;align-items:baseline;gap:12px}
.gs-dialogue-turn>span:last-child{flex:1;min-width:0}
.gs-dialogue-dot{display:inline-block;flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:var(--accent-strong);align-self:flex-start;margin-top:.75em}
.gs-dialogue-turn[data-turn="1"] .gs-dialogue-dot{background:var(--m-part)}
.gs-reference-translation{max-width:64ch;padding-top:20px;margin-top:24px;border-top:1px solid var(--border);color:var(--fg-dim)}
.gs-reference-translation[hidden]{display:none}.gs-reference-translation h4{font-size:14px;margin:0 0 16px;color:var(--fg-dim)}
.gs-reference-translation p{font-size:16px;line-height:1.85;margin:0 0 1em}

.fl-reading-missions>.fl-card>ul>li>a[href^="/reading/"]{color:inherit;text-decoration:none;font-weight:600}.fl-reading-missions>.fl-card>ul>li>a[href^="/reading/"]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}

/* Shared French read-aloud controls: presentation only, never learning progress. */
.gs-reference-audio{display:flex;align-items:center;flex-wrap:wrap;gap:8px;grid-column:1/-1;min-width:0;margin-top:4px}
.gs-reference-audio .gs-audio-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;padding:8px;border:1px solid var(--border);border-radius:50%;background:transparent;color:var(--fg);font:inherit;cursor:pointer}
.gs-reference-audio .gs-audio-button:disabled{opacity:.4;cursor:default}.gs-reference-audio .gs-audio-button:focus-visible,.gs-reference-audio select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.gs-reference-audio label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--fg-dim)}.gs-reference-audio select{min-height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface-card);color:var(--fg);padding:5px}
.gs-audio-status{flex-basis:100%;font-size:12px;line-height:1.6;color:var(--fg-dim)}.gs-audio-status:empty{display:none}
.gs-phrase-card dt{position:relative;padding-right:46px}.gs-reference-audio-compact{position:absolute;right:0;top:0;margin:0}.gs-reference-audio-compact .gs-audio-button{width:36px;height:36px;min-width:36px}

/* A lesson grid must shrink before its wide conjugation table can scroll. */
#guidedSession,.gs-card,.gs-concept-overview,.gs-concept-panel,.gs-example-grid,.gs-example-grid>article { min-width:0; }
.gs-concept-overview { grid-template-columns:minmax(0,1fr); }
.gs-concept-panel,.gs-verb-table-wrap { box-sizing:border-box; max-width:100%; }
.gs-verb-table-wrap { min-width:0; width:100%; overscroll-behavior-x:contain; }
.gs-verb-table-wrap:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.gs-concept-panel :is(p,li,strong),.gs-choice>span,.gs-progress b,.gs-progress>div>span { overflow-wrap:anywhere; }
@media(max-width:600px) {
 #guidedSession .gs-card { padding:20px 16px; }
 .gs-concept-panel { padding:14px; }
 .gs-example-grid { grid-template-columns:minmax(0,1fr); }
 .gs-concept-actions .btn,.gs-lesson-actions .btn { max-width:100%; white-space:normal; }
 .gs-progress>div:first-child { flex-wrap:wrap; }
}

/* Compact authored reference beside practice and writing. */
.gs-lesson-reference{margin:0 0 1.25rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-card);color:var(--fg)}
.gs-lesson-reference summary{padding:.85rem 1rem;font-weight:700;cursor:pointer}
.gs-lesson-reference summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.gs-lesson-reference>div{padding:0 1rem 1rem;line-height:1.65;overflow-wrap:anywhere}
.gs-lesson-reference h3{font-size:.95rem;margin:.85rem 0 .3rem}
.gs-lesson-reference p{margin:.4rem 0}
.gs-mistake-recap{margin:1.25rem 0;padding:1rem;border:1px solid var(--border);border-radius:12px}
.gs-mistake-practice>.fl-link{margin-top:1rem}

.gs-lesson-reference summary,.gs-lesson-reference h3,.gs-lesson-reference p,.gs-lesson-reference [data-fke-rich-copy],.gs-mistake-recap{color:var(--fg)}
