.member-link,.member-button{font:inherit;font-weight:800;border:1px solid #e5d9df;border-radius:12px;padding:10px 15px;background:white;color:#352630;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px}.member-link:hover,.member-button:hover{border-color:#c82065;background:#fff5f9}.member-button.primary{background:#cb2368;color:white;border-color:#cb2368}.member-button:disabled{opacity:.55;cursor:not-allowed}.member-link:focus-visible,.member-button:focus-visible,.member-modal input:focus-visible,.member-page input:focus-visible,.member-page textarea:focus-visible{outline:3px solid #322553;outline-offset:3px}.member-panel{background:#fff;border:1px solid #eadfe5;padding:20px;border-radius:18px;margin-bottom:16px}.member-panel h2{font-size:20px;margin:0 0 12px}.member-panel p{line-height:1.8}.member-muted{color:#665d64;font-size:14px}.member-panel progress{display:block;width:100%;height:10px;accent-color:#cb2368;margin:12px 0}.member-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.member-status{font-size:14px;line-height:1.7;white-space:pre-wrap;color:#6b3350;min-height:1.7em}.member-modal{border:1px solid #eadfe5;border-radius:22px;max-width:460px;width:calc(100% - 32px);padding:28px;color:#30252d;background:#fff;max-height:90dvh;overflow:auto}.member-modal::backdrop{background:#25182488}.member-modal h2{margin:12px 0}.member-modal label,.member-page label{font-size:14px;font-weight:700;display:block;margin:14px 0 6px}.member-modal input,.member-page input,.member-page textarea{box-sizing:border-box;display:block;width:100%;font:inherit;border:1px solid #b9aeb5;border-radius:10px;padding:12px;background:white;color:#30252d}.member-modal .member-button{width:100%;margin-top:12px}.member-modal .member-close{width:auto;float:right;margin:0;padding:4px 12px}.member-divider{text-align:center;color:#736971;margin:18px 0}.member-page{font-family:Nunito,system-ui,-apple-system,'Hiragino Kaku Gothic ProN',sans-serif;background:#faf8fa;color:#30252d;margin:0}.member-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 5%;background:white;border-bottom:1px solid #eadfe5}.member-header a{color:inherit;text-decoration:none;font-weight:900}.member-main{max-width:1060px;margin:32px auto;padding:0 20px;display:block}.member-main h1{font-size:32px;margin:8px 0}.member-eyebrow{color:#aa1b54;font-weight:800;font-size:13px;letter-spacing:.08em}.member-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.member-stat{font-size:32px;font-weight:900;margin:10px 0}.member-wide{grid-column:1/-1}.member-summary{padding:18px 0;border-bottom:1px solid #eadfe5}.member-summary:last-child{border:0}.member-summary h3{margin:0 0 8px;font-size:17px}.member-summary p{margin:6px 0}.member-english{font-weight:850;font-size:20px;overflow-wrap:anywhere}.member-feedback{padding:16px;background:#fff6f9;border-radius:12px;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0}.member-feedback h3{font-size:15px;margin:16px 0 4px}.member-feedback p{margin:0}.member-price{font-size:30px;font-weight:900}.member-price small{display:inline-block;font-size:14px;font-weight:600}.member-check{color:#584351;font-size:13px}.member-course-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.member-footer{padding:32px;text-align:center;font-size:13px}.member-footer a{color:inherit;margin:6px}#member-session-retry[hidden],.member-page [hidden],.member-modal [hidden],.member-panel [hidden]{display:none!important}.member-progress-card .member-button{width:100%;box-sizing:border-box}.member-completion{display:block;margin-top:5px;font-size:11px;font-weight:800;line-height:1.5;color:#665d64}.member-table{width:100%;border-collapse:collapse}.member-table td,.member-table th{padding:12px;text-align:left;border-bottom:1px solid #eadfe5;font-size:14px}.member-plus .affiliate-section,.member-plus .affiliate-disclosure{display:none!important}.member-danger{color:#a01932}.member-note{border-left:3px solid #cb2368;padding-left:12px}.member-report{display:flex;gap:20px;flex-wrap:wrap}.member-report strong{display:block;font-size:26px}.member-page .brand-name{font-size:20px}.member-page .brand-en{font-size:11px;color:#776771}.member-modal a{color:#9e1d53}
@media(max-width:760px){.member-grid{grid-template-columns:1fr}.member-wide{grid-column:auto}.member-main{margin:24px auto;padding:0 14px}.member-main h1{font-size:27px}.member-header{padding:15px}.member-panel{padding:18px}.member-table td,.member-table th{padding:8px;font-size:12px}.topbar{flex-wrap:wrap}.topbar>.member-link{margin-left:auto;font-size:12px}.member-modal{padding:22px}.member-actions .member-button{flex:1;min-width:120px}}
html[data-appearance="contrast"] .member-button.primary{background:#111;color:#fff;border-color:#111}html[data-appearance="contrast"] .member-panel,html[data-appearance="contrast"] .member-feedback{border-color:#111;background:#fff;color:#111}
@font-face{font-family:Nunito;src:url('./nunito-900.ttf') format('truetype');font-style:normal;font-weight:900;font-display:swap}.member-course-title>div{min-width:0}.member-course-title>.member-button{flex-shrink:0;white-space:nowrap}#member-identity{overflow-wrap:anywhere}.member-price,.member-stat,.member-english{font-family:Nunito,system-ui,sans-serif;font-weight:900}

.member-header{flex-wrap:wrap}.member-header>a:first-child{margin-right:auto}.member-header .member-button{font-size:12px}html[data-appearance="contrast"] .member-eyebrow,html[data-appearance="contrast"] .member-status,html[data-appearance="contrast"] .member-link,html[data-appearance="contrast"] .member-muted{color:#111}html[data-appearance="contrast"] .member-link,html[data-appearance="contrast"] .member-button{border-color:#111}html[data-appearance="contrast"] .member-panel progress{accent-color:#111}

/* The same conversation component is mounted in lessons and on the dashboard. */
.member-chat{margin-top:24px;min-width:0;box-sizing:border-box;scroll-margin-top:24px;text-align:left;color:#30252d;font-family:system-ui,-apple-system,'Hiragino Kaku Gothic ProN',sans-serif}
.member-chat-heading{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap}.member-chat-heading h2{font-size:22px;line-height:1.5;margin:4px 0}.member-chat-heading .member-eyebrow{margin:0}.member-chat-badge{font-size:12px;font-weight:800;padding:6px 10px;border:1px solid #ca2368;border-radius:8px;color:#ad1754;background:#fff5f9}
.member-chat-context{font-size:13px;border-left:3px solid #cb2368;padding:8px 12px;background:#faf7f9;overflow-wrap:anywhere}
.member-chat-log{max-height:530px;min-height:110px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #e5d9df;border-radius:14px;padding:16px;background:#fcfafb;scrollbar-gutter:stable}
.member-chat-empty{color:#665d64;font-size:14px;margin:20px 0;text-align:center}.member-chat-user{margin:8px 0 18px 12%;padding:12px 16px;background:#fce6ef;border:1px solid #edc2d4;border-radius:16px 16px 3px 16px;white-space:pre-wrap;overflow-wrap:anywhere}.member-chat-user strong,.member-chat-assistant>strong{font-size:12px}.member-chat-user p{margin:4px 0 0;line-height:1.7}.member-chat-assistant{margin:0 4% 22px 0}.member-chat-assistant>.member-feedback{margin:5px 0 0;background:white;border:1px solid #e5d9df}.member-chat .member-english{font-family:system-ui,sans-serif;font-weight:800;font-size:20px}
.member-chat label{display:block;margin:16px 0 8px;font-size:14px;font-weight:700}.member-chat textarea{display:block;box-sizing:border-box;width:100%;min-height:105px;resize:vertical;border:1px solid #a99ba4;border-radius:12px;padding:14px;background:#fff;color:#30252d;font:inherit;line-height:1.7}.member-chat textarea:focus-visible,.member-chat-log:focus-visible{outline:3px solid #713060;outline-offset:3px}.member-chat textarea:disabled{background:#f6f4f5}.member-chat-history a{color:#a61b54;text-decoration:underline}.member-chat [hidden]{display:none!important}.member-chat .member-status{margin:8px 0}.member-grid:has(>.member-chat){grid-template-columns:1fr}.member-grid>.member-chat{margin-top:0}
html[data-appearance="contrast"] .member-chat-context,html[data-appearance="contrast"] .member-chat-badge,html[data-appearance="contrast"] .member-chat-user,html[data-appearance="contrast"] .member-chat-log{background:#fff;color:#111;border-color:#111}html[data-appearance="contrast"] .member-chat-assistant>.member-feedback,html[data-appearance="contrast"] .member-chat textarea{border-color:#111}html[data-appearance="contrast"] .member-chat-history a{color:#111}html[data-appearance="contrast"] .member-chat-user{border-width:2px}html[data-appearance="contrast"] .member-chat textarea:focus-visible,html[data-appearance="contrast"] .member-chat-log:focus-visible{outline-color:#111}
@media(max-width:600px){.member-chat{padding:16px}.member-chat-heading h2{font-size:20px}.member-chat-log{padding:10px;max-height:430px}.member-chat-user{margin-left:6%}.member-chat-assistant{margin-right:0}.member-chat .member-feedback{padding:12px}.member-chat .member-actions .member-button{font-size:12px;padding:10px}.member-chat #member-correct{width:100%;white-space:normal}.member-chat .member-english{font-size:18px}}

/* A clear first action, followed by honest previews of registration and Plus. */
.growth-start{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;align-items:center;padding:32px;border:1px solid #e4bdce;border-radius:20px;background:#fff;margin-top:32px}.growth-start h2{font-size:26px;line-height:1.5;margin:8px 0 12px}.growth-start p{margin:12px 0;color:#65555f}.growth-start .growth-note{font-size:12px;margin-bottom:0}.growth-start .growth-primary{min-height:48px;box-sizing:border-box}.growth-sentence{background:#fff0f6;border:1px solid #ecc6d6;border-radius:16px;padding:24px}.growth-sentence>span{font-size:12px;color:#67545f;display:block}.growth-sentence p[lang=en]{font:900 clamp(24px,4vw,38px)/1.5 Nunito,system-ui,sans-serif;color:#30252d;margin:14px 0}.growth-sentence strong{color:#b51c5b}.growth-primary:focus-visible{outline:3px solid #322553;outline-offset:4px}.growth-registration>h2{font-size:28px}.member-sample{margin:24px 0 16px;padding:24px;background:#fff5f9;border:1px solid #e8c8d5;border-radius:16px}.member-sample h3,.member-review-sample h3{font-size:21px;line-height:1.6;margin:8px 0 16px}.member-sample-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.member-sample-pair>div{min-width:0;background:#fff;border:1px solid #e5d9df;border-radius:12px;padding:16px}.member-sample-label{font-size:12px;color:#665d64}.member-sample-pair strong{color:#b31f5b;text-decoration:underline;text-underline-offset:5px}.member-sample-roles{display:flex;flex-wrap:wrap;gap:8px}.member-sample-roles span{border:1px solid #e3c6d3;padding:6px 10px;font-size:12px;border-radius:8px;background:#fff}.member-sample-roles b{margin-right:5px}.member-review-sample{background:#fcf8fa;border:1px solid #eadfe5;border-radius:16px;margin:24px 0;padding:24px}.member-review-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-left:22px}.member-review-steps li{padding-left:2px;line-height:1.8}.member-review-steps p{font-size:14px}.member-review-steps li::marker{font-weight:900;color:#a91f56}.member-review-sample details{border-top:1px solid #dac5ce;padding-top:8px}.member-review-sample summary{font-weight:700;cursor:pointer;min-height:44px;display:list-item;line-height:1.8}.member-review-sample summary:focus-visible{outline:3px solid #322553;outline-offset:3px}.member-modal .member-close{min-width:44px;min-height:44px}.member-button,.member-link{min-height:44px;box-sizing:border-box}#member-plan-login{margin-top:12px}#plans{scroll-margin-top:24px}.growth-registration .member-actions{margin-top:20px}
@media(max-width:760px){.growth-start{grid-template-columns:1fr;gap:20px;padding:22px}.growth-start h2{font-size:23px}.growth-start .growth-primary{width:100%;font-size:14px!important}.growth-sentence{padding:20px}.member-sample-pair,.member-review-steps{grid-template-columns:1fr}.member-sample,.member-review-sample{padding:18px}.member-review-steps{gap:10px}.growth-registration .member-actions{display:grid;grid-template-columns:1fr}.growth-registration .member-actions>*{width:100%;text-align:center}.member-sample h3,.member-review-sample h3{font-size:19px}#member-plan-login{width:100%;white-space:normal}}
html[data-appearance="contrast"] .member-sample,html[data-appearance="contrast"] .member-review-sample,html[data-appearance="contrast"] .member-sample-pair>div,html[data-appearance="contrast"] .member-sample-roles span{background:#fff;border-color:#111;color:#111}html[data-appearance="contrast"] .member-sample strong,html[data-appearance="contrast"] .member-sample-label,html[data-appearance="contrast"] .member-review-steps li::marker{color:#111}

@media(max-width:760px){#member-checkout-actions{display:grid;grid-template-columns:1fr}}

/* Registration stays free; pricing and real examples have separate, reachable decisions. */
.member-text-link{display:inline-flex;align-items:center;min-height:44px;max-width:100%;color:#a61b54;text-decoration:underline;text-underline-offset:4px;font-size:.875rem;line-height:1.7;overflow-wrap:anywhere}.member-text-link:focus-visible,.member-preview>summary:focus-visible,.plus-questions summary:focus-visible{outline:3px solid #322553;outline-offset:3px}.member-registration-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:18px 0;list-style:none;border-block:1px solid #eadfe5;margin:20px 0}.member-registration-benefits li{min-width:0}.member-registration-benefits strong,.member-registration-benefits span{display:block}.member-registration-benefits strong{font-size:.95rem;line-height:1.7}.member-registration-benefits span{color:#665d64;font-size:.8rem;margin-top:6px;line-height:1.8}.member-preview{border-top:1px solid #eadfe5;margin-top:20px}.member-preview>summary,.plus-questions summary{cursor:pointer;padding:14px 0;min-height:44px;font-size:.9rem;font-weight:700;line-height:1.8}.member-preview[open]>div{animation:member-preview-in 160ms ease-out}.member-preview .member-sample{margin-top:4px}.member-plus-invite{border-left:3px solid #cb2368}.member-plus-invite .member-eyebrow{margin-top:0}.member-plus-invite .member-link{margin-top:4px}.member-rail-plus{margin-top:12px;font-size:.8rem}
.plus-plans{padding:28px;scroll-margin-top:20px}.plus-plans>h2{font-size:clamp(1.4rem,3vw,1.8rem);line-height:1.6}.plus-purchase{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:28px;padding:24px;background:#fff5f9;border:1px solid #e4b8cc;border-top:4px solid #ba1c5c;border-radius:14px;margin:22px 0}.plus-purchase>div{min-width:0}.plus-plan-label{font-weight:750;font-size:.85rem;margin:0}.plus-price-block .member-price{font-size:clamp(2.5rem,5vw,3.5rem);line-height:1.25;margin:10px 0 20px;overflow-wrap:anywhere}.plus-price-block .member-price small{font-family:system-ui,sans-serif;line-height:1.6}.plus-annual{margin:0;font-size:.9rem}.plus-value-list{padding-left:22px;margin:0 0 14px;font-size:.9rem;line-height:2}.plus-choice .member-button{width:100%;white-space:normal;text-align:center}.plus-choice #member-checkout-actions{display:grid;grid-template-columns:1fr;gap:10px}.plus-choice #member-plan-login{margin:0}.plus-choice>.member-muted:last-child{font-size:.75rem;margin-bottom:0}.plus-free-choice{padding:18px 0;border-block:1px solid #eadfe5;margin:24px 0}.plus-free-choice strong{font-size:1rem}.plus-free-choice p{margin:6px 0;font-size:.9rem}.plus-comparison{table-layout:fixed;margin:22px 0 12px}.plus-comparison caption{text-align:left;font-size:1.15rem;font-weight:800;padding:8px 0 16px}.plus-comparison th:first-child{width:40%}.plus-comparison th,.plus-comparison td{font-size:.85rem;line-height:1.8;vertical-align:top;overflow-wrap:anywhere;padding:13px 10px}.plus-comparison thead th{background:#faf3f7}.plus-comparison thead th:last-child{border-top:3px solid #ba1c5c;color:#9d1c50}.plus-comparison tbody th{font-weight:650}.plus-cell-note{display:block;font-size:.7rem;color:#665d64;margin-top:5px}.plus-questions{margin:26px 0 20px}.plus-questions h3{font-size:1.05rem;margin:0 0 4px}.plus-questions details{border-bottom:1px solid #eadfe5}.plus-questions details p{font-size:.875rem;margin:4px 0 16px}.plus-plans #member-plan-terms{font-size:.8rem;line-height:1.9}.plus-plans #member-plan-terms a{color:#a61b54;display:inline-block;min-height:24px}.member-plus-continuation{margin:18px 0;padding:18px;border:1px solid #e4b8cc;border-left:4px solid #b91c5b;border-radius:10px;background:#fff5f9}.member-plus-continuation h3{font-size:1rem;line-height:1.8;margin:0 0 8px}.member-plus-continuation>p{font-size:.875rem;margin:8px 0}.member-plus-continuation>.member-muted{font-size:.75rem}.member-plus-continuation .member-link{font-size:.875rem;text-align:center;white-space:normal}.daily-registration-prompt{padding:18px;margin-top:24px;border:1px solid #e4b8cc;border-radius:12px;background:#fff5f9}.daily-registration-prompt h3{font-size:1.05rem;margin:0 0 10px}.daily-registration-prompt>p{font-size:.875rem;line-height:1.9}.daily-registration-prompt .member-button{width:100%;white-space:normal;text-align:center}.daily-plus-link{font-size:.875rem;line-height:1.9;margin:16px 0}.daily-plus-link>a{font-size:inherit}
.plus-plans .member-button,.growth-registration .member-button,.member-plus-continuation .member-link{transition:background-color 140ms ease,box-shadow 140ms ease}.plus-plans .member-button:active:not(:disabled),.growth-registration .member-button:active:not(:disabled),.member-plus-continuation .member-link:active{box-shadow:inset 0 3px 5px #30252d33;transition-duration:90ms}
@keyframes member-preview-in{from{opacity:.4}to{opacity:1}}
@media(max-width:760px){.member-registration-benefits{grid-template-columns:1fr;gap:14px}.member-registration-benefits span{margin-top:2px}.plus-plans{padding:20px 16px}.plus-purchase{grid-template-columns:1fr;gap:10px;padding:20px 16px}.plus-price-block .member-price{margin-bottom:12px}.plus-price-block>.member-muted{margin-bottom:8px}.plus-value-list{margin-bottom:8px}.plus-comparison th,.plus-comparison td{font-size:.8rem;padding:12px 6px}.plus-comparison th:first-child{width:38%}.member-plus-continuation{padding:14px}.member-plus-continuation .member-link{width:100%}.daily-registration-prompt{padding:16px}.daily-plus-link>a{display:block}}
html[data-appearance=contrast] .member-text-link,html[data-appearance=contrast] .member-registration-benefits span,html[data-appearance=contrast] .plus-comparison thead th:last-child,html[data-appearance=contrast] .plus-cell-note,html[data-appearance=contrast] .plus-plans #member-plan-terms a{color:#111}html[data-appearance=contrast] .plus-purchase,html[data-appearance=contrast] .member-plus-continuation,html[data-appearance=contrast] .daily-registration-prompt,html[data-appearance=contrast] .plus-comparison thead th{background:#fff;color:#111;border-color:#111}html[data-appearance=contrast] .member-plus-invite,html[data-appearance=contrast] .member-registration-benefits,html[data-appearance=contrast] .member-preview,html[data-appearance=contrast] .plus-free-choice,html[data-appearance=contrast] .plus-questions details{border-color:#111}
@media(prefers-reduced-motion:reduce){.member-preview[open]>div{animation:none}.plus-plans .member-button,.growth-registration .member-button,.member-plus-continuation .member-link{transition:none}}
@media(max-width:760px){#member-plans-title>span{display:block}}

/* Conversation: English first, explanations on demand. */
.member-chat{max-width:760px;width:100%;justify-self:center;border-radius:20px;overflow:hidden;background:#fff;padding:22px!important}.member-chat-heading{justify-content:flex-start;flex-wrap:nowrap;gap:11px}.member-chat-heading h2{font-size:19px;margin:0}.member-chat-heading .member-eyebrow{font-size:10px}.member-chat-heading .member-muted{font-size:11px;margin:2px 0 0}.member-chat-avatar{width:40px;height:40px;border-radius:50%;background:#faedf3;color:#bd175f;font-size:25px;font-weight:850;display:grid;place-items:center;flex-shrink:0}.member-chat .conversation-toggle{display:flex;align-items:center;gap:5px;font-size:11px;margin:0 0 0 auto;white-space:nowrap}.conversation-toggle input{width:16px;height:16px;accent-color:#bd175f}.member-chat #member-usage{font-size:11px;margin:12px 0}.member-chat-options{font-size:12px;margin:8px 0 14px}.member-chat-options summary{cursor:pointer;color:#76606b;min-height:32px;display:list-item}.member-chat-options select{font:inherit;width:100%;min-height:44px;border:1px solid #cdbac4;border-radius:8px;background:#fff;padding:8px;color:inherit}.member-chat-log{min-height:240px;max-height:480px;border-color:#eee3e9;background:#fbf7f9;border-radius:15px;padding:20px 18px;scrollbar-width:thin;scrollbar-gutter:auto}.member-chat-user{width:fit-content;max-width:88%;margin:0 0 22px auto;padding:12px 16px;background:#fbe7ef;border:1px solid #f2d3e1;border-radius:18px 3px 18px 18px;white-space:normal}.member-chat-user>strong,.member-chat-assistant>strong{font-size:10px;font-weight:500;color:#6c6067;display:block;margin-bottom:6px}.member-chat-assistant{width:fit-content;max-width:94%;margin:0 auto 22px 0;padding:12px 16px;border:1px solid #ede5e9;background:#fff;border-radius:3px 18px 18px 18px;animation:member-chat-reveal .16s ease-out}.member-chat-assistant>.member-feedback{border:0;padding:0;margin:0;background:transparent}.member-chat-english{font-size:18px;line-height:1.7;margin:0;overflow-wrap:anywhere;white-space:pre-wrap;font-weight:400}.member-chat .member-chat-user .member-chat-english{line-height:1.7;margin:0}.member-chat-meaning{display:block;background:none;color:#73606c;border:0;text-decoration:underline;text-underline-offset:3px;font-size:11px;min-height:32px;padding:5px 0 0;cursor:pointer}.member-chat-translation{font-size:12px;line-height:1.8;color:#6b5d66;border-top:1px solid #eadfe5;margin:8px 0 0;padding:8px 0 0;white-space:pre-wrap}.member-chat-feedback-detail{font-size:12px;border-top:1px solid #eee2e8;margin-top:9px;padding-top:8px}.member-chat-feedback-detail summary{cursor:pointer;min-height:32px}.member-chat-feedback-detail h3{font-size:13px;margin:12px 0 3px}.member-chat .member-actions{margin:8px 0}.member-chat .member-actions .member-button{font-size:11px;min-height:38px;padding:7px 11px}.member-chat #member-chat-guest{padding:16px 0 5px}.member-chat #member-chat-guest>p{font-size:13px}.member-chat #member-practice-form{padding-top:10px;border-top:1px solid #eee2e8}.member-chat #member-practice-form>label{font-size:11px;font-weight:500;color:#6c6067;margin:0 0 7px}.member-chat-writing-row{display:flex;gap:10px;align-items:flex-end}.conversation-writing{position:relative;min-width:0;flex:1;border:1px solid #cdbac4;border-radius:14px;overflow:hidden;background:#fff}.conversation-writing:focus-within{border-color:#bd175f;box-shadow:0 0 0 2px #bd175f16}.member-chat .conversation-writing textarea,.conversation-ghost{box-sizing:border-box;width:100%;font:inherit;font-size:17px;line-height:1.7;letter-spacing:normal;padding:12px 14px;border:0;white-space:pre-wrap;overflow-wrap:break-word;word-break:normal;margin:0;border-radius:0}.member-chat .conversation-writing textarea{position:relative;background:transparent;display:block;resize:none;min-height:54px;max-height:160px}.member-chat .conversation-writing textarea:focus-visible{outline:none}.conversation-ghost{position:absolute;inset:0;color:#7d7078;pointer-events:none;overflow:hidden}.conversation-typed{color:transparent}.conversation-next-role{font-size:14px}.member-chat .member-chat-send,.member-chat #member-correct{height:46px;width:46px;min-height:46px;min-width:46px;padding:0;flex-shrink:0;border-radius:50%;font-size:0;line-height:1;margin:0 0 4px;background:#bd175f;color:white;border:0;transition:transform .09s}.member-chat-send::after{content:'↑';font-size:26px;font-weight:500}.member-chat-send[data-pending=true]::after{content:'…'}.member-chat .member-chat-send:disabled{background:#e8d7df;color:#8c687a}.member-chat-send:active:enabled{transform:scale(.95)}.conversation-support{display:flex;gap:8px;align-items:flex-start;margin:10px 2px 0}.conversation-coach-icon{border:1px solid #d9bdcb;color:#a62159;border-radius:50%;width:17px;height:17px;flex-shrink:0;font-size:10px;display:grid;place-items:center;margin-top:2px}.conversation-support #member-writing-hint{font-size:11px;line-height:1.8;margin:0}.member-chat-writing-foot{display:flex;justify-content:space-between;gap:9px;margin-top:9px}.member-chat-writing-foot .member-muted{font-size:9px;margin:0}.member-chat #member-ai-state,.member-chat .member-chat-history{font-size:10px;line-height:1.8}.member-chat-word{font:inherit;letter-spacing:inherit;line-height:inherit;vertical-align:baseline;color:inherit;border:0;border-bottom:1px dotted #d8c5cf;background:none;border-radius:2px;padding:0;min-height:0;display:inline;cursor:help}.member-chat-word:hover,.member-chat-word:focus-visible{background:#f4d6e5;border-bottom-color:#bd175f}.member-chat-word:focus-visible,.member-chat-meaning:focus-visible,.member-chat-send:focus-visible,.conversation-toggle input:focus-visible{outline:2px solid #84234f;outline-offset:3px}.member-word-tip{position:fixed;z-index:10000;width:260px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);overflow:auto;background:#fff;color:#30252d;border:1px solid #dac4d0;border-radius:14px;padding:17px 19px;box-shadow:0 10px 32px #4a223323;font-family:system-ui,-apple-system,sans-serif;animation:member-chat-reveal .12s ease-out}.member-word-tip[hidden]{display:none}.member-word-label{font-size:10px;color:#947886}.member-word-word{font-size:21px;font-weight:750;margin:3px 0}.member-word-meaning{font-size:15px;color:#9e235b;font-weight:700;margin-top:5px}.member-word-note{font-size:12px;color:#6b6268;line-height:1.8;margin-top:9px}@keyframes member-chat-reveal{from{opacity:.2;transform:translateY(3px)}to{opacity:1;transform:none}}html[data-appearance=contrast] .member-chat-assistant,html[data-appearance=contrast] .conversation-writing,html[data-appearance=contrast] .member-word-tip{background:white;color:#111;border-color:#111}html[data-appearance=contrast] .member-chat-meaning,html[data-appearance=contrast] .member-word-meaning{color:#111}html[data-appearance=contrast] .member-chat-word{border-color:#111}html[data-appearance=contrast] .member-chat-word:focus-visible,html[data-appearance=contrast] .member-chat-word:hover{background:#ddd}@media(max-width:600px){.member-chat{padding:14px!important}.member-chat-heading{gap:8px}.member-chat-heading h2{font-size:15px}.member-chat-heading .member-eyebrow{font-size:9px}.member-chat-heading .member-muted{font-size:10px}.member-chat-avatar{width:32px;height:32px;font-size:21px}.member-chat .conversation-toggle{font-size:10px;gap:3px}.member-chat-log{padding:15px 12px;min-height:230px;max-height:400px}.member-chat-assistant{max-width:95%;padding:11px 13px}.member-chat-user{max-width:92%;padding:11px 13px}.member-chat-english{font-size:16px}.member-chat .conversation-writing textarea,.conversation-ghost{font-size:16px;padding:10px 11px}.conversation-next-role{font-size:12px}.member-chat #member-correct{height:44px;width:44px;min-height:44px;min-width:44px}.member-chat-writing-row{gap:8px}.member-chat-writing-foot{flex-direction:column;gap:3px}.member-chat .member-feedback{padding:0}.member-chat .member-actions .member-button{min-height:38px;padding:7px 10px}}@media(prefers-reduced-motion:reduce){.member-chat-assistant,.member-word-tip{animation:none}.member-chat-send{transition:none}}
/* Approved homepage: learning flows into conversation; the example stays local. */
.home-conversation{--home-pink:#bd175f;background:#fffdfd}.home-conversation main{max-width:1160px;padding-top:35px}.home-conversation .top-inner{max-width:1160px}.home-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:center;margin-top:0!important;padding-bottom:26px}.home-copy h1{font-size:clamp(34px,3.6vw,48px);line-height:1.5;letter-spacing:-.04em;margin:18px 0 22px}.home-copy h1 em{font-style:normal;color:var(--home-pink)}.home-lead{font-size:14px;line-height:2.1;color:#6b6268;max-width:400px}.home-action{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin:25px 0 20px}.home-action .start{min-height:50px;font-size:14px;background:var(--home-pink)}.home-secondary{font-size:12px;color:#6b6268;text-underline-offset:5px}.home-access{list-style:none;padding:0;margin:20px 0 0;font-size:11px;color:#6b6268;display:grid;gap:7px}.home-access li::before{content:'✓';color:var(--home-pink);font-weight:700;margin-right:8px}.home-chat-preview{margin:0;min-width:0;background:#fff;border:1px solid #dfd3da;border-radius:20px;overflow:hidden;box-shadow:0 12px 45px #4822360c;color:#302b30;font-family:system-ui,-apple-system,sans-serif;line-height:1.7}.home-preview-heading{display:flex;align-items:center;gap:11px;padding:18px 20px;border-bottom:1px solid #e8dfe4}.home-preview-heading h2{font-size:16px;margin:0;line-height:1.5}.home-preview-heading p{font-size:10px;color:#6b6268;margin:3px 0 0}.home-help{margin-left:auto;font-size:10px;display:flex;align-items:center;gap:4px;white-space:nowrap;min-height:44px}.home-help input{accent-color:#bd175f}.home-preview-log{background:#fbf7f9;padding:20px 18px 8px;max-height:400px;min-height:280px;overflow:auto;scrollbar-width:thin}.home-preview-log .member-chat-english{font-size:17px}.home-preview-log .member-chat-assistant{max-width:96%}.home-preview-log .member-chat-user{max-width:92%}.home-preview-composer{padding:16px 18px 8px;border-top:1px solid #e8dfe4}.home-preview-composer>label{display:block;font-size:11px;color:#6b6268;margin-bottom:6px}.home-preview-composer textarea{font:inherit;font-size:17px;line-height:1.7;box-sizing:border-box;width:100%;padding:12px 14px;border:0;position:relative;background:transparent;display:block;resize:none;margin:0;min-height:54px;max-height:130px}.home-preview-composer textarea:focus-visible{outline:2px solid #84234f;outline-offset:-2px}.home-preview-composer [data-home-hint]{font-size:11px;color:#6b6268;margin:9px 0 0;line-height:1.8}.home-chat-preview figcaption{font-size:10px;color:#6b6268;margin:0;padding:6px 18px 15px;line-height:1.8}.home-learning-path{border-top:1px solid #e8dfe4;padding-top:38px;margin-top:24px}.home-learning-path h2{font-size:27px;margin:10px 0 25px}.home-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.home-path article{border-top:2px solid #e9d6e0;padding-top:17px}.home-path small{font-size:11px;color:#bd175f;font-weight:700}.home-path h3{font-size:17px;margin:10px 0}.home-path p{font-size:13px;color:#6b6268;line-height:1.9;margin:0}.home-hero [hidden]{display:none!important}@media(max-width:950px){.home-hero{gap:28px}.home-copy h1{font-size:34px}.home-preview-heading{padding:15px 13px;gap:8px}.home-preview-heading h2{font-size:14px}.home-preview-log{padding:17px 13px 5px}.home-preview-log .member-chat-english{font-size:16px}}@media(max-width:760px){.home-conversation main{padding-top:24px}.home-hero{grid-template-columns:1fr;gap:28px}.home-copy h1{font-size:34px;margin:12px 0 15px}.home-lead{font-size:13px;max-width:none}.home-action{margin:20px 0 15px}.home-access{font-size:10px;gap:5px}.home-preview-heading h2{font-size:15px}.home-preview-log .member-chat-english{font-size:16px}.home-preview-composer{padding:14px 12px 8px}.home-preview-composer textarea,.home-preview-composer .conversation-ghost{font-size:16px;padding:10px 11px}.home-chat-preview figcaption{padding-inline:12px}.home-learning-path h2{font-size:23px}.home-path{grid-template-columns:1fr;gap:22px}.home-path article{padding-top:13px}.home-path h3{margin:7px 0}.home-help{font-size:10px}.home-hero .member-chat-avatar{width:33px;height:33px;font-size:21px}}html[data-appearance=contrast] .home-chat-preview,html[data-appearance=contrast] .home-preview-log{background:white;color:#111;border-color:#111}
/* Account-owned icons and the live home conversation share existing chat styles. */
.member-avatar{display:inline-grid;place-items:center;flex:none;width:38px;height:38px;border:1px solid #e7cbd9;border-radius:50%;background:#fbeaf2;color:#a82360}
.member-avatar svg{width:25px;height:25px}.member-avatar[data-avatar=moon],.member-avatar[data-avatar=mountain]{background:#eeedf8;color:#4f5184}.member-avatar[data-avatar=sprout],.member-avatar[data-avatar=bird]{background:#eaf4ed;color:#326b49}.member-avatar[data-avatar=sun],.member-avatar[data-avatar=star]{background:#fff2dc;color:#805617}
#member-nav{display:inline-flex;align-items:center;justify-content:center;gap:9px}#member-nav small{display:block;font-size:10px;line-height:1.4;color:#736a74}#member-profile-edit{margin-top:12px}
.member-profile fieldset{border:0;padding:0;margin:24px 0}.member-profile legend{font-weight:700;margin-bottom:12px}.member-avatar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.member-avatar-grid label{position:relative;display:grid;justify-items:center;gap:7px;padding:12px 4px;border:2px solid #eadfe6;border-radius:14px;font-size:12px;cursor:pointer;transition:background-color .15s,border-color .15s}.member-avatar-grid input{accent-color:#bc1962;margin:0}.member-avatar-grid label:has(input:checked){border-color:#b91c61;background:#fff0f7}.member-avatar-grid label:focus-within{outline:3px solid #35303c;outline-offset:2px}.member-avatar-grid label:active .member-avatar{transform:scale(.96)}.member-avatar-grid .member-avatar{transition:transform .12s}
.home-hero>[data-home-live]{min-width:0;margin:0;padding:22px;align-self:start}.home-hero>[data-home-live] .member-chat-heading{flex-wrap:wrap}.home-hero>[data-home-live] .member-chat-heading>div{min-width:0;flex:1}.home-hero>[data-home-live] .member-chat-log{height:340px;min-height:220px}.home-hero>[data-home-live] .member-chat-heading h2{font-size:21px}.home-hero>[data-home-live] .member-chat-english{font-size:19px}.home-hero>[data-home-live] .member-chat-history{margin-top:16px}.home-hero>[data-home-live] .member-chat-heading .conversation-toggle{margin-left:auto}
[data-home-chat][hidden],[data-home-live][hidden]{display:none!important}
[data-appearance=contrast] .member-avatar{background:#fff!important;color:#111!important;border-color:#111}[data-appearance=contrast] .member-avatar-grid label:has(input:checked){background:#ddd;border-color:#111}
@media(max-width:520px){.home-hero>[data-home-live]{padding:16px}.member-avatar-grid{gap:7px}.member-profile{padding:22px 18px}.member-avatar-grid label{padding:10px 2px}}
@media(prefers-reduced-motion:reduce){.member-avatar-grid label,.member-avatar-grid .member-avatar{transition:none}.member-avatar-grid label:active .member-avatar{transform:none}}

.member-account-menu{position:relative;flex:none}.member-account-menu summary{list-style:none;cursor:pointer}.member-account-menu summary::-webkit-details-marker{display:none}.member-account-dropdown{position:absolute;z-index:40;top:calc(100% + 8px);right:0;min-width:220px;max-width:calc(100vw - 24px);padding:8px;background:#fff;border:1px solid #ead5df;border-radius:14px;box-shadow:0 12px 32px #30232b18}.member-account-dropdown a,.member-account-dropdown button{display:block;width:100%;border:0;border-radius:8px;background:#fff;color:#30232b;padding:12px;text-align:left;font:inherit;font-size:13px;min-height:44px;text-decoration:none}.member-account-dropdown a:hover,.member-account-dropdown button:hover{background:#fff0f7}.member-account-menu summary:focus-visible{outline:3px solid #35303c;outline-offset:3px}.home-hero>[data-home-live] .member-chat-log{height:280px;min-height:200px}
/* Home-only fit: preserve the original hero, scroll messages rather than the whole card. */
.home-hero>[data-home-live]{display:flex;flex-direction:column;gap:0;padding:0;border:1px solid #dfd3da;box-shadow:0 12px 45px #4822360c;line-height:1.7}
.home-hero>[data-home-live] .member-chat-heading{flex:none;flex-wrap:nowrap;padding:16px 18px 10px;margin:0;gap:11px}
.home-hero>[data-home-live] .member-chat-heading .member-eyebrow{display:none}
.home-hero>[data-home-live] .member-chat-heading h2{font-size:16px;line-height:1.5;margin:0}
.home-hero>[data-home-live] .member-chat-heading .member-muted{font-size:10px;margin:3px 0 0}
.home-hero>[data-home-live] .home-chat-toolbar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;padding:0 18px 8px;font-size:11px;color:#786a73}
.home-hero>[data-home-live] #member-usage{font-size:10px;margin:0}
.home-hero>[data-home-live] .member-chat-options{margin:0;padding:0;position:static;flex:none}
.home-hero>[data-home-live] .member-chat-options>summary{font-size:11px;min-height:36px;display:flex;align-items:center;cursor:pointer}
.home-chat-options-content{position:absolute;z-index:6;right:12px;top:calc(100% - 4px);width:310px;max-width:calc(100% - 24px);max-height:280px;overflow:auto;padding:16px;border:1px solid #dfd3da;border-radius:12px;background:white;box-shadow:0 8px 24px #30232b18}
.home-chat-options-content p{font-size:11px!important;line-height:1.7}.home-chat-options-content .member-actions{margin:12px 0 0}.home-chat-options-content #member-context{margin:12px 0;padding:10px;font-size:11px}
.home-hero>[data-home-live] .member-chat-log{flex:1 1 0;min-height:90px;height:auto;max-height:none;margin:0;border:0;border-block:1px solid #eee5eb;border-radius:0;padding:16px 18px;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain}
.home-hero>[data-home-live] .member-chat-english{font-size:17px}
.home-hero>[data-home-live] .home-chat-composer{flex:none;padding:12px 18px 10px;min-width:0}
.home-hero>[data-home-live] #member-practice-form{padding:0;border:0;margin:0}
.home-hero>[data-home-live] #member-practice-form>label{font-size:10px;margin:0 0 6px;display:block}
.home-hero>[data-home-live] .member-chat-writing-row{margin:0;align-items:flex-end}
.home-hero>[data-home-live] .conversation-support{margin-top:6px}
.home-hero>[data-home-live] .conversation-support #member-writing-hint{font-size:10px;line-height:1.6}
.home-hero>[data-home-live] .member-chat-writing-foot{margin-top:6px}
.home-hero>[data-home-live] .member-chat-writing-foot p{font-size:9px;line-height:1.6}
.home-hero>[data-home-live] #member-chat-upgrade{margin:8px 0 0;padding:8px 0 0;border:0;border-top:1px solid #eee5eb;background:none;border-radius:0;display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}
.home-hero>[data-home-live] #member-chat-upgrade h3{font-size:10px;line-height:1.6;margin:0;font-weight:500}
.home-hero>[data-home-live] #member-chat-upgrade a{font-size:10px;color:#a62159;text-underline-offset:3px}
.home-hero>[data-home-live] #member-practice-status{font-size:11px;line-height:1.6;margin:6px 0 0;max-height:90px;overflow:auto}
.home-hero>[data-home-live] #member-practice-status:empty{display:none}
.home-chat-information{margin-top:4px;font-size:10px;color:#786a73}.home-chat-information>summary{cursor:pointer;min-height:32px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:3px}.home-chat-information>div{max-height:130px;overflow:auto}.home-hero>[data-home-live] .home-chat-information p{font-size:10px;line-height:1.7;margin:6px 0}
@media(min-width:761px) and (min-height:650px){.home-hero>[data-home-live]{height:min(640px,calc(100vh - 160px))}}
@media(min-width:761px) and (max-height:649px){.home-hero>[data-home-live] .member-chat-log{flex:none;height:180px}}
@media(max-width:760px){.home-hero>[data-home-live]{height:590px;max-height:none}.home-hero>[data-home-live] .member-chat-heading{padding:14px 12px 8px}.home-hero>[data-home-live] .home-chat-toolbar{padding-inline:12px}.home-hero>[data-home-live] .home-chat-composer{padding:12px}.home-hero>[data-home-live] .member-chat-log{padding:14px 12px}.home-hero>[data-home-live] .member-chat-english{font-size:16px}.home-hero>[data-home-live] .conversation-toggle{font-size:10px}}
html[data-appearance=contrast] .home-chat-options-content{background:#fff;color:#111;border-color:#111}

.home-hero>[data-home-live] #home-chat-notice{font-size:11px;line-height:1.6;margin:6px 0 0;max-height:70px;overflow:auto}.home-hero>[data-home-live] .home-chat-information>summary{display:list-item;list-style-position:inside;line-height:32px}
@media(prefers-reduced-motion:reduce){.home-hero>[data-home-live] #member-correct{transition:none}}
.home-hero>[data-home-live]{padding:0!important}.home-hero>[data-home-live] .member-chat-options>summary{display:list-item;list-style-position:inside;line-height:36px}
.member-profile-languages{display:flex;gap:12px;flex-wrap:wrap}.member-profile-languages label{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:2px solid #eadfe6;border-radius:12px;cursor:pointer;transition:background-color 140ms,border-color 140ms}.member-profile-languages label:has(input:checked){border-color:#b91c61;background:#fff0f7}.member-profile-languages label:focus-within{outline:3px solid #35303c;outline-offset:2px}.member-profile-languages input{width:auto;margin:0}.member-profile button.primary{transition:box-shadow 140ms}.member-profile button.primary:active:enabled{box-shadow:inset 0 3px 5px #30252d33}.member-profile-saved{animation:member-profile-confirm 180ms ease-out}@keyframes member-profile-confirm{from{opacity:.4}to{opacity:1}}@media(prefers-reduced-motion:reduce){.member-profile-languages label,.member-profile button.primary{transition:none}.member-profile-saved{animation:none}}

.writing-level{margin:28px 0;padding:30px;border:1px solid #e9dfe5;border-radius:24px;background:var(--member-surface,#fff);color:inherit}.writing-level h2{font-size:26px;margin:4px 0 16px}.writing-level h3{font-size:25px;line-height:1.4;margin:12px 0}.writing-level h4{margin:12px 0}.writing-eyebrow{font-size:12px;letter-spacing:.08em;font-weight:700;color:#ab1455}.writing-muted{font-size:14px;color:#695e66}.writing-level button,.writing-level a.member-button{min-height:48px;white-space:normal;transition:transform 120ms ease}.writing-level button:active:not(:disabled){transform:scale(.98)}.writing-level :is(button,a,textarea):focus-visible{outline:3px solid #64254a;outline-offset:3px}.writing-level label{display:block;font-weight:700;margin:18px 0 8px}.writing-level textarea{display:block;width:100%;box-sizing:border-box;min-height:155px;padding:16px;border:1px solid #aa8e9e;border-radius:12px;font:16px/1.65 system-ui;resize:vertical;background:inherit;color:inherit}.writing-level progress{display:block;width:100%;height:8px;accent-color:#b91460}.writing-prompt{font-size:22px;line-height:1.5}.writing-controls{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.writing-note{padding:16px;background:#faf0f5;border-radius:12px}.writing-split{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;align-items:start}.writing-metric{border-bottom:1px solid #e9dfe5;padding:10px 0 20px}.writing-level blockquote{border-left:3px solid #d891b3;padding-left:15px;margin:16px 0;font:19px/1.6 Georgia,serif;overflow-wrap:anywhere}.writing-level p{overflow-wrap:anywhere}.writing-level table{width:100%;border-collapse:collapse;font-size:14px}.writing-level th,.writing-level td{text-align:left;padding:8px 4px;overflow-wrap:anywhere}.writing-level summary{min-height:48px;cursor:pointer;padding-top:12px}.writing-history{display:flex;gap:8px;margin:10px 0}.writing-history button:first-child{flex:1;text-align:left}.writing-arrive{animation:writing-arrive 180ms ease-out}@keyframes writing-arrive{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}[data-appearance=contrast] .writing-level{background:#fff;color:#191919;border-color:#222}[data-appearance=contrast] .writing-level .writing-muted{color:#333}[data-appearance=contrast] .writing-note{background:#eee}@media(max-width:650px){.writing-level{padding:22px 16px}.writing-split{grid-template-columns:1fr;gap:18px}.writing-level h3{font-size:22px}.writing-level .writing-prompt{font-size:19px}}@media(prefers-reduced-motion:reduce){.writing-level *{animation:none!important;transition:none!important}.writing-level button:active:not(:disabled){transform:none}}

/* Keep the same tap targets and reading order across all learning pages. */
header.topbar .course-nav a,
header.top .nav a {
 display:flex;
 align-items:center;
 justify-content:center;
 min-height:44px;
 line-height:1.5;
 text-align:center;
}
@media (max-width:1150px) {
 header.topbar,
 header.top .top-inner {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:center;
  gap:12px 10px;
  height:auto;
  min-height:0;
  padding:16px;
 }
 header.topbar > .brand,
 header.top .top-inner > .brand {
  grid-column:1/-1;
  min-width:0;
  order:0;
 }
 header.topbar > .course-nav,
 header.top .top-inner > .nav {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  grid-column:1/-1;
  width:100%;
  min-width:0;
  order:0;
 }
 header.topbar .course-nav a,
 header.top .nav a {
  box-sizing:border-box;
  min-width:0;
  padding:10px 6px;
  font-size:12px;
  font-weight:700;
  white-space:normal;
  overflow-wrap:break-word;
  border-radius:10px;
 }
 header.topbar .course-nav a:last-child:nth-child(odd),
 header.top .nav a:last-child:nth-child(odd) {grid-column:1/-1}
 header.topbar > .appearance-toggle,
 header.topbar > .member-link,
 header.top .top-inner > .member-link {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:44px;
  margin:0;
  padding:9px 6px;
  order:0;
  font-size:11px;
  line-height:1.5;
  border-radius:10px;
 }
 header.topbar > .appearance-toggle {gap:5px}
 header.topbar .appearance-label small {font-size:8px}
 header.top .top-inner > .member-link {grid-column:1/-1}
}
@media (min-width:761px) and (max-width:1150px) {
 header.topbar > .course-nav,
 header.top .top-inner > .nav {grid-template-columns:repeat(5,minmax(0,1fr))}
 header.topbar .course-nav a:last-child:nth-child(odd),
 header.top .nav a:last-child:nth-child(odd) {grid-column:auto}
}
@media (max-width:760px) {
 .workspace,main,.intro > div,.crumb,.section-title h2,.affiliate-copy {min-width:0}
 .intro h1,.chunk strong,.chunk-en,.word-en {overflow-wrap:anywhere}
 .lesson-number {flex-shrink:0}
 .section-title {flex-wrap:wrap;align-items:flex-start}
 .word {max-width:100%;box-sizing:border-box;flex-wrap:wrap}
 .word-ja {overflow-wrap:anywhere}
 .mobile-open,.mobile-close {min-height:44px}
 .sidebar {transition:transform .2s}
 .sidebar .side-heading {flex-wrap:wrap;gap:8px}
 .lesson-tabs button,.exercise-tabs button,.quiz-choices button {min-height:44px}
 .lab-modes {flex-wrap:wrap}
 .lab-modes button {min-width:0;min-height:44px}
 .member-panel,.member-feedback,.learning-notes article {min-width:0}
}

.daily-page{background:#fffafd}.daily-page .member-main{max-width:1080px}.daily-intro{padding:20px 0 28px}.daily-intro h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.3;margin:10px 0 18px;letter-spacing:.02em}.daily-intro p{max-width:700px}.daily-dashboard{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:20px 24px;background:#fff0f6;border:1px solid #e7c9d6;border-radius:16px;margin-bottom:24px}.daily-dashboard strong{color:#ad1a54;font-size:1.25rem}.daily-dashboard progress{width:100%;accent-color:#d91d6b}.daily-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:start}.daily-steps{display:flex;flex-direction:column;gap:8px}.daily-steps button{text-align:left;white-space:normal;min-height:48px;line-height:1.5}.daily-steps [aria-pressed=true]{background:#fff0f6;border:2px solid #b41a57;color:#991446;font-weight:900}.daily-work{margin-top:0!important;min-width:0}.daily-heading{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}.daily-work h2{font-size:clamp(1.35rem,4vw,1.9rem);line-height:1.6}.daily-work label{font-weight:800;display:block;margin:16px 0 8px}.daily-work textarea{display:block;width:100%;resize:vertical;font-size:1.125rem;line-height:1.7;border:1px solid #8d7480;border-radius:10px;background:#fff;color:#30232b;padding:14px;min-height:100px;font-family:inherit}.daily-work details{margin:16px 0}.daily-work summary,.daily-record summary{cursor:pointer;padding:12px 0}.daily-work button,.daily-record button{min-height:48px}.daily-work .member-button{margin-top:12px;white-space:normal}.daily-answer{border-top:1px solid #dcc7d1;margin-top:24px;padding-top:20px}.daily-answer .member-english{overflow-wrap:anywhere}.daily-answer a{display:block}.daily-record{padding:18px 4px}.daily-skip{position:absolute;left:16px;top:-100px;padding:10px;background:#fff;z-index:10}.daily-skip:focus{top:10px}.daily-page :focus-visible{outline:3px solid #8e1546;outline-offset:4px}.daily-page fieldset{border:1px solid #bca3af;border-radius:12px;padding:16px;margin:16px 0}.daily-page fieldset label{display:flex;align-items:center;gap:12px;min-height:48px;margin:8px 0;cursor:pointer}.daily-page input[type=radio]{width:20px;height:20px;accent-color:#b41a57;flex-shrink:0}#daily-import-description{overflow-wrap:anywhere}#daily-finish .member-button{display:inline-flex;text-decoration:none}#daily-finish-title:focus{outline:none}.daily-page .member-status,.daily-record p{overflow-wrap:anywhere}[data-appearance=contrast] .daily-dashboard,[data-appearance=contrast] .daily-steps [aria-pressed=true]{background:#fff;color:#111;border:2px solid #111}[data-appearance=contrast] .daily-dashboard strong{color:#111}[data-appearance=contrast] .daily-page{background:#fff;color:#111}
@media(max-width:700px){.daily-layout{grid-template-columns:1fr;gap:16px}.daily-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.daily-steps button{font-size:.85rem;padding:10px;overflow-wrap:anywhere}.daily-dashboard{padding:16px;gap:10px;font-size:.9rem}.daily-work{padding:20px!important}.daily-page .member-header{flex-wrap:wrap}.daily-page .member-main{padding:24px 16px}.daily-page .member-actions{align-items:stretch}.daily-page .member-actions button{flex:1 1 180px}.daily-record{padding:16px 0}}

.daily-completion-ads{margin-top:32px;border-top:1px solid #dcc7d1;padding-top:20px}.daily-completion-ads .affiliate-grid{display:grid;grid-template-columns:1fr;gap:16px}.daily-completion-ads .affiliate-card{border:1px solid #eadfe5;padding:16px;border-radius:12px}.daily-completion-ads img:not([width="1"]){max-width:100%;height:auto}.daily-completion-ads .affiliate-category,.daily-completion-ads .affiliate-link-hint,.daily-completion-ads .affiliate-note{font-size:.8rem}.member-plus .daily-completion-ads{display:none}.daily-page [hidden]{display:none!important}

.daily-step-picker summary{cursor:pointer;padding:12px;font-weight:800;line-height:1.5;border:1px solid #bda6b1;border-radius:10px;min-height:48px;margin-bottom:10px}.daily-step-picker{min-width:0}@media(min-width:701px){.daily-step-picker summary{font-size:.85rem}}@media(max-width:700px){.daily-page .member-main{margin:16px auto;padding:0 16px}.daily-intro{padding:8px 0 12px}.daily-intro p{margin:8px 0}.daily-intro .member-eyebrow{font-size:.7rem}.daily-dashboard{margin-bottom:16px}.daily-steps{padding-bottom:8px}.daily-work h2{margin-top:8px}.daily-work{padding:16px!important}.daily-layout{gap:6px}}

.home-course-picker{min-width:0}.home-course-picker summary{cursor:pointer;min-height:48px;padding:10px 12px;border:1px solid #d5bdc9;border-radius:10px;font-size:.85rem;font-weight:800}@media(min-width:761px){.home-course-picker summary{display:none}}@media(max-width:760px){.top-inner:has(.home-course-picker){display:grid;grid-template-columns:1fr auto;gap:8px}.top-inner:has(.home-course-picker)>.brand{grid-column:1/-1}.home-course-picker .nav{padding-top:8px;display:grid;grid-template-columns:1fr}.home-course-picker #member-nav{white-space:normal}.top-inner:has(.home-course-picker) #member-nav{font-size:.8rem;min-height:48px;padding:10px}.home-course-picker .nav a{min-height:44px;display:flex;align-items:center;justify-content:center}body:has(.home-course-picker) main{padding-top:28px}.growth-start{margin-top:28px}}

@media(max-width:760px){.top-inner:has(.home-course-picker) #member-nav{grid-column:auto;width:auto}.top-inner:has(.home-course-picker) .member-link{flex-basis:auto}body:has(.home-course-picker) .growth-start{margin-top:16px}body:has(.home-course-picker) .hero{padding-bottom:16px}}
@media(max-width:700px){.daily-page #member-nav{font-size:.75rem;padding:10px;min-height:44px}.daily-page .member-header{gap:8px}.daily-intro h1{margin:8px 0;font-size:1.85rem}.daily-dashboard{padding:12px;margin-bottom:12px}.daily-heading{margin-bottom:8px}}

.learning-metrics-choice label{display:flex;align-items:center;gap:10px;min-height:48px;cursor:pointer}.learning-metrics-choice input{width:20px;height:20px;flex-shrink:0;accent-color:#b41a57}.daily-answer{animation:daily-answer-in .2s ease-out}.daily-work button{transition:transform .12s}.daily-work button:active{transform:translateY(1px)}@keyframes daily-answer-in{from{opacity:.6;transform:translateY(3px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.daily-answer{animation:none}.daily-work button{transition:none}.daily-work button:active{transform:none}}

/* Feedback follows confirmed progress; native progress remains the accessible source. */
.daily-progress{position:relative;width:100%;height:16px;display:flex;align-items:center}.daily-progress progress{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.daily-progress-track{display:block;width:100%;height:8px;background:#e7c9d6;border-radius:4px;overflow:hidden}#daily-progress-fill{display:block;height:100%;background:#d91d6b;transform:scaleX(0);transform-origin:left}.daily-progress-ready{transition:transform .35s ease-out}.daily-completion-check{display:none;width:24px;height:24px;vertical-align:middle;margin-right:8px}.daily-completion-check path{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}.daily-celebrate{animation:daily-finish-in .2s ease-out}.daily-celebrate .daily-completion-check{display:inline-block}.daily-celebrate .daily-completion-check path{animation:daily-check-in .24s ease-out}.daily-work a.member-button{transition:transform .12s}.daily-work a.member-button:active{transform:translateY(1px)}@keyframes daily-finish-in{from{opacity:.6}to{opacity:1}}@keyframes daily-check-in{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}[data-appearance=contrast] .daily-progress-track{background:#ddd}[data-appearance=contrast] #daily-progress-fill{background:#111}@media(prefers-reduced-motion:reduce){.daily-progress-ready,.daily-work a.member-button{transition:none}.daily-celebrate,.daily-celebrate .daily-completion-check path{animation:none}.daily-work a.member-button:active{transform:none}}

/* Compact native language links: keep the chat card dimensions unchanged. */
.locale-control{display:flex;align-items:center;gap:2px;font:600 12px/1.25 system-ui,sans-serif;flex-shrink:0;position:relative;isolation:isolate}
.locale-control>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 7px;border-radius:7px;color:inherit;text-decoration:none;transition:transform 90ms ease,background-color 140ms ease}
.locale-control>a[aria-current]{text-decoration:underline;text-underline-offset:4px}
.locale-control>a:hover{background:#ad24621a}.locale-control>a:active{transform:scale(.97)}
.locale-control>a:focus-visible{outline:3px solid #e71970;outline-offset:1px}
.locale-status:empty{display:none}.locale-status:not(:empty){position:absolute;top:100%;right:0;width:min(300px,80vw);padding:10px;background:#fff;border:1px solid #ad2462;color:#302b33;z-index:20;border-radius:8px}
html[lang=ko] body{font-family:system-ui,-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;word-break:keep-all;overflow-wrap:anywhere}
html[lang=ko] [lang=en],html[lang=ko] .english,html[lang=ko] .member-english{font-family:var(--rounded,"Nunito"),system-ui,sans-serif;word-break:normal}
.locale-support{font-size:12px;line-height:1.7;overflow-wrap:anywhere}
@media(max-width:760px){.topbar>.locale-control{margin-inline-start:auto;grid-column:1/-1;justify-content:flex-end}.top>.locale-control,.member-header>.locale-control{margin-inline-start:auto}.v-top .locale-control{margin-inline-start:auto}}
@media(prefers-reduced-motion:reduce){.locale-control>a{transition:none}.locale-control>a:active{transform:none}}
header .top-inner,header .v-top-inner{flex-wrap:wrap}.top-inner>.locale-control,.v-top-inner>.locale-control{margin-inline-start:auto}

/* Approved learning-workbook direction. Review based on unslop by Damir Sokolovsky,
   https://github.com/heydamir/unslop (CC BY 4.0). */
:root{--learning-accent:#c41461;--learning-ink:#29262d;--learning-muted:#625b64}
.topbar.compact-course-header,.v-top-inner.compact-course-header{display:flex;align-items:center;gap:16px;min-height:72px;height:auto;padding:12px 24px;overflow:visible}
.compact-course-header .brand{flex:none;margin-right:auto;white-space:nowrap;min-width:max-content}
.compact-course-header .brand-name{white-space:nowrap;font:600 20px/1.4 system-ui,sans-serif}
.compact-course-header .brand-en{font-size:11px;font-weight:500;color:var(--learning-muted)}
.compact-course-header .brand:before{width:36px;height:36px;font-size:25px;border:0;background:none}
.compact-course-header>.course-picker{order:1}.compact-course-header>.course-settings{order:2}
.compact-course-header>#member-nav,.compact-course-header>.member-account-menu{order:3;flex:none;margin:0;font-size:13px}
.compact-course-header>#member-session-retry{order:4}
.course-picker,.course-settings{position:relative;font:500 13px/1.5 system-ui,sans-serif}
.course-picker>summary,.course-settings>summary{cursor:pointer;min-height:44px;padding:10px 12px;border:1px solid #e1dce0;border-radius:8px;box-sizing:border-box;white-space:nowrap;color:var(--learning-ink);background:white}
.header-disclosure-content{position:absolute;z-index:100;right:0;top:calc(100% + 8px);width:260px;max-width:calc(100vw - 32px);padding:12px;background:#fff;border:1px solid #ddd7dc;border-radius:12px;box-shadow:0 8px 24px #0000000f}
.compact-course-header .header-disclosure-content>:is(.course-nav,.v-nav){display:grid!important;grid-template-columns:1fr!important;gap:4px;margin:0;width:auto}
.compact-course-header :is(.course-nav,.v-nav) a{grid-column:auto!important;display:flex;justify-content:flex-start;gap:4px;min-height:44px;padding:10px 12px;border:0;border-radius:8px;font-size:14px;white-space:nowrap}
.header-disclosure-content .appearance-toggle{width:100%;margin:0 0 8px;border-radius:8px;min-height:44px}
.header-disclosure-content .locale-control{justify-content:flex-start}
.course-top-next{display:none}
body .word[aria-pressed=true],body .level[aria-pressed=true],body .utility-rail .next{background:var(--learning-accent);border-color:var(--learning-accent);color:white}
body .slot{color:var(--learning-accent)}
body .word[aria-pressed=true] .word-ja{color:white}
body .word .word-en,body .sentence,body .template-en{font-family:system-ui,-apple-system,sans-serif;font-weight:600}
body .word{border-width:1px;border-radius:10px;padding:12px 16px;transition:background-color 150ms ease-out,border-color 150ms ease-out,transform 150ms ease-out}
body .word:active,.course-top-next:active{transform:scale(.98)}
body .template-en{font-size:16px}
body .word-help-hint{font-size:12px;color:var(--learning-muted)}
body .brand-tag,body .brand-en{letter-spacing:0}
body .member-link,body .member-button{font-weight:600;border-radius:8px;min-height:44px;box-sizing:border-box}
body .utility-rail .member-progress-card{padding:20px;border-radius:14px}
body .utility-rail .member-progress-card h2{font-size:18px;font-weight:600}
body .utility-rail .member-progress-card .member-actions{margin:12px 0}
body .utility-rail .member-progress-card #member-complete{background:#fff;color:var(--learning-accent);border-color:#cbbac3}
body .utility-rail .member-progress-card p{font-size:13px}
body .utility-rail .member-progress-card .member-text-link{font-size:12px}
body .member-eyebrow{letter-spacing:0;font-weight:500}
.member-page .member-main{font-family:system-ui,-apple-system,'Hiragino Kaku Gothic ProN',sans-serif}
.member-page .member-main h1,.member-page .member-main h2,.member-page .member-main h3{font-weight:600}
.member-page .member-main>.member-eyebrow{display:none}
.member-page .member-header>a{font-weight:600}
body.home-conversation .home-hero{align-items:center;gap:40px}
body.home-conversation .home-copy h1{font-weight:600;letter-spacing:0;line-height:1.4}
body.home-conversation .home-access{font-size:12px;gap:4px;margin-top:16px}
body.home-conversation .home-lead{font-size:15px;line-height:1.85}
body.home-conversation .home-preview-heading{padding:12px 16px}
body.home-conversation .home-preview-log{height:260px;overflow:auto;padding:12px 16px;overscroll-behavior:contain}
body.home-conversation .home-preview-log .member-chat-message{margin-top:8px;margin-bottom:12px}
body.home-conversation .home-preview-composer{padding:12px 16px 4px}
body.home-conversation .home-chat-preview figcaption{font-size:12px;padding:8px 16px 12px;line-height:1.6}
body.home-conversation .home-help,body.home-conversation .home-preview-heading p,body.home-conversation .home-preview-composer>label,body.home-conversation .home-preview-composer [data-home-hint]{font-size:12px}
body.home-conversation .home-hero>[data-home-live] .member-chat-heading .member-muted,body.home-conversation .home-hero>[data-home-live] #member-usage,body.home-conversation .home-hero>[data-home-live] .conversation-support #member-writing-hint{font-size:12px}
body.home-conversation .course h3,body.home-conversation main h2{font-weight:600}
:where(.course-picker,.course-settings,.course-top-next):focus-visible,:where(.course-picker,.course-settings)>summary:focus-visible{outline:3px solid #302832;outline-offset:3px}
@media(max-width:760px){
 .topbar.compact-course-header,.v-top-inner.compact-course-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px 16px;min-height:0}
 .compact-course-header .brand{grid-column:1;grid-row:1;min-width:0;gap:6px}
 .compact-course-header .brand-name{font-size:16px}.compact-course-header .brand:before,.compact-course-header .brand-en{display:none}
 .compact-course-header>#member-nav,.compact-course-header>.member-account-menu{grid-column:2;grid-row:1;font-size:12px;padding:0;max-width:178px}
 .compact-course-header>#member-nav{padding:8px}.compact-course-header .member-avatar{width:30px;height:30px}
 .compact-course-header>.course-picker{grid-column:1;grid-row:2}.compact-course-header>.course-settings{grid-column:2;grid-row:2}
 .course-picker>summary,.course-settings>summary{font-size:12px;padding:10px 8px;min-height:40px}
 .course-picker .header-disclosure-content{left:0;right:auto}
 .course-settings .header-disclosure-content{right:0}
 body .course-top-next{display:block;width:max-content;margin:0 0 16px auto;min-height:44px;padding:10px 16px;border:1px solid var(--learning-accent);border-radius:8px;background:var(--learning-accent);color:white;font:600 14px/1.5 system-ui,sans-serif;cursor:pointer;transition:background-color 150ms ease-out,transform 150ms ease-out}
 body .workspace .intro{margin-bottom:8px}
 body .word .word-en{font-size:20px}body .word{min-height:48px}
 body.home-conversation .home-hero{gap:24px}
 body.home-conversation .top-inner{padding:12px 16px;gap:8px}
 body.home-conversation .home-copy h1{font-size:34px}
 body.home-conversation .home-preview-log{height:240px}
 body.home-conversation .home-action{margin:16px 0}
}
html[data-appearance=contrast] .course-top-next,html[data-appearance=contrast] .word[aria-pressed=true],html[data-appearance=contrast] .level[aria-pressed=true],html[data-appearance=contrast] .utility-rail .next{background:#111;color:#fff;border-color:#111}
html[data-appearance=contrast] .header-disclosure-content,html[data-appearance=contrast] .course-settings>summary,html[data-appearance=contrast] .course-picker>summary{background:#fff;color:#111;border-color:#111}
html[data-appearance=contrast] .slot{color:#111}
@media(prefers-reduced-motion:reduce){body .word,body .course-top-next{transition:none}body .word:active,body .course-top-next:active{transform:none}}

.v-top .compact-course-header{padding:0;min-height:48px;width:100%}.v-top .compact-course-header .v-brand{margin-right:auto;white-space:nowrap;font-weight:600;font-size:16px}.v-top .v-brand-mark{font-size:24px;padding:0 8px;border:0;background:none}.v-top .compact-course-header .v-nav{display:grid;gap:4px}.v-top .compact-course-header .v-nav a{min-height:44px}.v-top .compact-course-header #member-nav{font-size:12px}.v-top .compact-course-header .course-picker>summary,.v-top .compact-course-header .course-settings>summary{font-size:12px}
@media(max-width:760px){.v-top{padding:12px 16px}.v-top .compact-course-header .v-brand{grid-column:1;grid-row:1;font-size:14px}.v-top .compact-course-header .v-brand-mark{display:none}}

body.home-conversation .home-hero>[data-home-live] #member-practice-form>label,body.home-conversation .home-hero>[data-home-live] .member-chat-writing-foot p,body.home-conversation .home-hero>[data-home-live] .home-chat-information,body.home-conversation .home-hero>[data-home-live] .home-chat-information p{font-size:12px;line-height:1.6}
html[data-appearance=contrast] body .course-top-next{background:#111!important;color:#fff!important;border-color:#111!important}
.course-picker[open]>.header-disclosure-content,.course-settings[open]>.header-disclosure-content{animation:learning-disclosure 160ms ease-out}
@keyframes learning-disclosure{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.course-picker[open]>.header-disclosure-content,.course-settings[open]>.header-disclosure-content{animation:none}}
