@font-face{font-family:DM;src:url('/download/assets/dm-sans-latin.woff2') format('woff2');font-display:swap;font-weight:100 900}
@font-face{font-family:Baloo;src:url('/download/assets/baloo-2-latin.woff2') format('woff2');font-display:swap;font-weight:400 800}
:root{--paper:#fff8f0;--ink:#192438;--purple:#50209b;--orange:#ff7411;--muted:#756d65;--line:#e9ddd0;--white:#fff;--lavender:#f0e8fa;--width:1140px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.65 DM,system-ui,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1,h2{font-family:Baloo,DM,system-ui,sans-serif;font-weight:800}h1{font-size:clamp(42px,5.2vw,72px)}h2{font-size:clamp(32px,3.6vw,48px)}h3{font-size:22px;font-weight:750;letter-spacing:-.02em}p+p{margin-top:16px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:5px}a:hover{text-decoration-color:var(--orange)}.wrap{max-width:var(--width);margin:auto;padding:0 24px}.skip{position:fixed;top:-100px;left:12px;background:white;padding:12px;z-index:100}.skip:focus{top:12px}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,248,240,.96);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:78px}.brand{display:flex;align-items:center;gap:10px;font-size:26px;font-weight:850;letter-spacing:-1px;white-space:nowrap}.brand img{width:35px;height:35px}.brand b{color:var(--orange)}.nav-links,.nav-actions{display:flex;align-items:center;gap:25px}.nav-links a{font-size:15px;font-weight:650}.nav-links a:hover{color:var(--purple)}.nav-actions{gap:12px}.language{position:relative}.language summary{list-style:none;cursor:pointer;font-size:14px;font-weight:700;padding:10px 5px;white-space:nowrap}.language summary::-webkit-details-marker{display:none}.language summary::after{content:'⌄';padding-left:6px}.language-menu{position:absolute;top:100%;right:0;background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 16px 50px #19243818;width:275px;display:grid;grid-template-columns:1fr 1fr;padding:10px;z-index:40}.language-menu a{padding:8px;font-size:14px;border-radius:8px}.language-menu a:hover{background:var(--lavender)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;gap:9px;border:0;border-radius:14px;padding:12px 23px;font-size:16px;line-height:1.4;font-weight:750;background:var(--purple);color:white;cursor:pointer;transition:transform .15s,background .15s;text-align:center}.btn:hover{background:#3e137e;transform:translateY(-1px)}.btn.secondary{background:white;color:var(--ink);border:1px solid var(--line)}.btn.small{min-height:43px;padding:10px 16px;font-size:14px}.btn.orange{background:var(--orange);color:#251606}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.12em;font-weight:750;color:var(--purple);margin-bottom:18px}.hero{padding:60px 0 42px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.hero h1 em{font-style:normal;color:var(--purple)}.intro{font-size:20px;line-height:1.6;color:var(--muted);margin-top:21px;max-width:520px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}.note{color:var(--muted);font-size:14px;margin-top:13px}.store-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:22px}.store-badge{display:block}.store-badge img{height:42px;width:auto;max-width:152px}.hero-art{position:relative;max-width:320px;justify-self:center;margin:0}.device{border:8px solid #1b1622;border-radius:37px;overflow:hidden;background:var(--paper);box-shadow:0 24px 55px #2411391f;max-width:280px;margin:auto}.device img{width:100%;aspect-ratio:390/700;object-fit:cover;object-position:top}.hero-art .mascot{position:absolute;width:104px;bottom:62px;right:-60px;filter:drop-shadow(0 8px 7px #28144013);pointer-events:none}.screen-caption{font-size:12px;color:var(--muted);line-height:1.45;text-align:center;margin-top:14px;max-width:270px}.quick-facts{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;margin-top:48px}.quick-facts p{font-size:15px;color:var(--muted);margin:0}.quick-facts strong{color:var(--ink);font-size:19px;margin-right:8px}.section{padding:66px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.section-head h2{max-width:680px}.section-head p{max-width:510px;color:var(--muted);margin-top:13px}.text-link{font-size:15px;color:var(--purple);font-weight:750;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.step{border-top:2px solid var(--line);padding-top:20px}.step-number{font-size:14px;font-weight:800;color:var(--purple);margin-bottom:16px}.step p{color:var(--muted);margin-top:12px}.showcase{display:grid;grid-template-columns:1fr 1fr;gap:32px}.showcase-card{display:grid;grid-template-columns:1fr 190px;gap:20px;align-items:center;border-radius:24px;padding:32px;background:white;border:1px solid var(--line);overflow:hidden}.showcase-card:nth-child(2){background:var(--lavender);border-color:transparent}.showcase-card h3{font-size:25px}.showcase-card p{font-size:16px;color:var(--muted);margin-top:14px}.screen-peek{height:280px;overflow:hidden;border:5px solid #211928;border-radius:22px 22px 0 0;align-self:end;transform:translateY(34px);background:var(--paper)}.screen-peek img{width:100%}.language-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.language-card{display:block;background:white;border:1px solid var(--line);padding:26px;border-radius:20px;transition:transform .15s,border-color .15s}.language-card:hover{transform:translateY(-3px);border-color:var(--purple)}.flag{font-size:32px;margin-bottom:12px}.language-card p{font-size:16px;color:var(--muted);margin-top:10px}.language-card .text-link{display:inline-block;margin-top:18px}.other-languages{display:flex;flex-wrap:wrap;gap:12px 23px;margin-top:24px;color:var(--muted);font-size:15px}.other-languages span{white-space:nowrap}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.guide-card{display:block}.guide-card:hover h3{text-decoration:underline;text-decoration-color:var(--purple);text-underline-offset:5px}.guide-cover{height:205px;border-radius:20px;position:relative;overflow:hidden;background:#f1e5d3;margin-bottom:19px;display:flex;align-items:center;justify-content:space-around;padding:24px}.guide-cover img{height:158px;width:auto;max-width:48%;object-fit:contain}.guide-cover .cover-type{font-family:Baloo,system-ui,sans-serif;font-size:35px;font-weight:800;line-height:1.2;color:var(--purple);max-width:50%}.guide-cover.two{background:#e8e2f6}.guide-cover.pinyin{background:#f8e1cb}.guide-card .tag,.tag{font-size:13px;color:var(--purple);font-weight:750;text-transform:uppercase;letter-spacing:.07em;margin-bottom:10px}.guide-card h3{font-size:23px;line-height:1.25}.guide-card p{font-size:16px;color:var(--muted);margin-top:12px}.guide-meta{font-size:13px!important;margin-top:15px!important}.faq{max-width:800px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:19px 0}.faq summary{font-weight:700;cursor:pointer;font-size:18px;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';color:var(--purple);font-size:25px;line-height:1}.faq details[open] summary::after{content:'−'}.faq details p{padding-top:15px;color:var(--muted)}.final-cta{border-radius:28px;background:var(--purple);color:white;padding:42px 48px;display:flex;align-items:center;justify-content:space-between;gap:35px}.final-cta h2{max-width:590px}.final-cta p{margin-top:12px;color:#f1e5ff}.final-cta .actions{margin-top:0;flex-shrink:0}.final-cta .btn{background:white;color:var(--purple)}.site-footer{margin-top:55px;padding:36px 0;border-top:1px solid var(--line)}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer-links{display:flex;gap:22px;flex-wrap:wrap;font-size:14px}.legal{font-size:12px;color:var(--muted);border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.page-top{padding:46px 0 36px}.breadcrumbs{font-size:14px;color:var(--muted);margin-bottom:28px;display:flex;gap:10px;flex-wrap:wrap}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.page-top h1{max-width:920px;font-size:clamp(38px,4.7vw,62px)}.page-top .intro{max-width:730px}.article-layout{display:grid;grid-template-columns:minmax(0,740px) 260px;gap:75px;align-items:start}.article-body{font-size:18px;line-height:1.8}.article-body h2{font-size:33px;margin-top:45px;margin-bottom:18px}.article-body h3{font-size:23px;margin-top:28px;margin-bottom:12px}.article-body ul,.article-body ol{padding-left:23px}.article-body li+li{margin-top:10px}.article-body a{color:var(--purple);text-decoration:underline;text-underline-offset:3px}.article-body .guide-cover{height:260px;margin:0 0 28px}.article-body .guide-cover img{height:210px}.article-body .guide-cover .cover-type{font-size:54px}.article-body table{border-collapse:collapse;width:100%;margin:25px 0;font-size:16px;line-height:1.5}.article-body th,.article-body td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line);vertical-align:top}.article-body th{background:#f2eade}.article-body .answer-box{background:white;border-left:4px solid var(--purple);padding:23px 25px;border-radius:0 16px 16px 0;margin-bottom:30px}.article-body .aside-note{font-size:15px;color:var(--muted);background:#f1e8dd;padding:18px;border-radius:12px}.article-aside{position:sticky;top:110px;padding:24px;border:1px solid var(--line);border-radius:18px;background:white;font-size:15px}.article-aside h2{font-size:21px;margin-bottom:14px}.article-aside a{display:block;padding:7px 0;color:var(--muted)}.article-aside a:hover{color:var(--purple)}.article-aside .btn{color:white;margin-top:18px;padding:12px}.source-list{font-size:15px}.author{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px;margin-top:24px}.author img{width:28px;height:28px}.course-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:65px;align-items:center}.course-example{background:white;border:1px solid var(--line);border-radius:24px;padding:40px;text-align:center}.course-example .original{font-size:38px;color:var(--purple);font-weight:800;line-height:1.3;margin-bottom:10px}.course-example .romanization{font-size:24px;color:var(--muted);margin-bottom:15px}.course-body{max-width:820px}.course-body h2{margin-top:40px;margin-bottom:18px}.course-body p,.course-body ul{color:var(--muted)}.audio-example{display:flex;align-items:center;justify-content:space-between;background:var(--lavender);border-radius:17px;padding:22px;gap:20px;margin-top:22px}.audio-example strong{display:block;font-size:21px}.audio-example button{flex-shrink:0}.audio-status{font-size:14px;color:var(--muted)}.empty-page{min-height:55vh;display:grid;place-content:center;text-align:center;padding:50px 24px}.empty-page .actions{justify-content:center}
@media(max-width:1100px){.nav-links{gap:16px}.hero-grid{gap:30px}.hero-art .mascot{right:-25px}.showcase-card{grid-template-columns:1fr 140px;padding:24px}.screen-peek{height:240px}.article-layout{gap:35px;grid-template-columns:minmax(0,1fr) 230px}}
@media(max-width:850px){.nav-links{display:none}.hero{padding:38px 0 28px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero h1{max-width:620px}.hero-art{max-width:260px}.device{max-width:228px}.hero-art .mascot{width:80px;right:-35px}.quick-facts{margin-top:30px;gap:14px}.steps{gap:20px}.showcase{grid-template-columns:1fr}.showcase-card{grid-template-columns:1fr 185px;padding:30px}.language-grid,.guide-grid{grid-template-columns:1fr}.language-card{padding:23px}.language-card .flag{float:right;margin-left:15px}.guide-card{display:grid;grid-template-columns:210px 1fr;gap:23px}.guide-card .guide-cover{margin:0;height:200px}.guide-card .guide-copy{padding:8px 0}.section{padding:42px 0}.section-head{align-items:start;flex-direction:column;gap:18px}.final-cta{padding:30px;flex-direction:column;align-items:start}.article-layout{display:block}.article-aside{position:static;margin-bottom:30px}.article-body{font-size:17px}.course-hero{grid-template-columns:1fr;gap:30px}.course-example{max-width:500px}.page-top{padding-top:30px}}
@media(max-width:520px){.wrap{padding:0 21px}.nav{gap:10px;min-height:69px}.brand{font-size:22px;gap:7px}.brand img{width:30px;height:30px}.nav-actions{gap:7px}.nav-actions>.btn{display:none}.language summary{font-size:13px}.hero h1{font-size:46px;line-height:1.05}.eyebrow{font-size:12px;margin-bottom:13px}.intro{font-size:18px;margin-top:17px}.hero .actions{gap:10px;margin-top:23px}.hero .btn{padding:13px 16px;font-size:15px}.store-row{gap:12px;margin-top:18px}.store-badge img{height:37px;max-width:130px}.hero-art{margin-top:3px}.quick-facts{display:grid;grid-template-columns:1fr 1fr;font-size:14px;row-gap:14px}.quick-facts p{font-size:13px}.quick-facts strong{display:block;font-size:18px}.quick-facts p:last-child{grid-column:1/-1}.quick-facts p:last-child strong{display:inline}.steps{grid-template-columns:1fr;gap:24px}.step{padding-top:16px}.step-number{margin-bottom:10px}.step p{font-size:16px}.showcase-card{padding:23px 20px;grid-template-columns:1fr 115px;gap:17px}.showcase-card h3{font-size:22px}.showcase-card p{font-size:15px}.screen-peek{height:235px;transform:translateY(26px);border-width:4px;border-radius:16px 16px 0 0}.guide-card{display:block}.guide-card .guide-cover{height:190px;margin-bottom:18px}.guide-card .guide-copy{padding:0}.guide-grid{gap:34px}.guide-cover img{height:150px}.faq summary{font-size:17px}.faq details p{font-size:16px}.article-body h2{font-size:29px}.article-body .guide-cover{height:205px}.article-body .guide-cover img{height:160px}.article-body .guide-cover .cover-type{font-size:38px}.article-body table{font-size:14px}.article-body th,.article-body td{padding:10px 7px}.article-body .answer-box{padding:18px}.audio-example{align-items:start;flex-direction:column}.final-cta{padding:29px 24px}.footer-row{align-items:start;flex-direction:column}.footer-links{gap:14px 20px}.site-footer{margin-top:35px}.course-example{padding:30px 22px}.course-example .original{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Real app details stay large enough to read at mobile widths. */
.showcase-card{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:26px}.screen-detail{width:100%;max-width:440px;align-self:center;overflow:hidden;border-radius:20px;background:white}.screen-detail img{width:100%;height:auto}.showcase-card:nth-child(2) .screen-detail{margin:auto 0}.language .language-code{display:none}.mobile-nav{display:none}.page-top.wrap{padding-left:24px;padding-right:24px}.text-link{white-space:normal}.hero h1{overflow-wrap:anywhere}
@media(max-width:850px){.showcase{grid-template-columns:1fr 1fr}.showcase-card{padding:24px 20px}.showcase-card p{font-size:16px}.page-top.wrap{padding-left:24px;padding-right:24px}}
@media(max-width:650px){.showcase{grid-template-columns:1fr}.showcase-card{padding:24px 20px}.screen-detail{border-radius:16px}.page-top.wrap{padding-left:21px;padding-right:21px}}

@media(max-width:850px){.mobile-nav{display:block}.mobile-nav summary{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px}.mobile-nav summary::after{content:none}.mobile-nav .language-menu{width:230px;grid-template-columns:1fr}.language .language-name{display:none}.language .language-code{display:inline}.nav-actions>.language:not(.mobile-nav) summary{min-width:44px;text-align:center}}

@media(max-width:350px){.hero-art .mascot{right:-18px}}

/* Keep both app choices in the header and in the compact navigation. */
@media(min-width:851px) and (max-width:1250px){.nav-links{display:none}.mobile-nav{display:block}.mobile-nav summary{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px}.mobile-nav summary::after{content:none}.mobile-nav .language-menu{width:230px;grid-template-columns:1fr}}

@media(max-width:680px){.nav-actions>.btn{display:none}}
.review-invite{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;margin-bottom:30px;padding-bottom:26px;border-bottom:1px solid var(--line)}.review-invite p{font-weight:650}

/* Memory, current plans and the future conversation feature. */
.memory-section{background:#f6f0e8;border-block:1px solid var(--line)}
.memory-layout{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:64px}
.memory-copy h2{max-width:440px;margin-bottom:22px}.memory-copy>p:not(.eyebrow){color:var(--muted)}
.memory-copy .memory-app{color:var(--purple)!important;font-weight:650;padding-left:18px;border-left:3px solid var(--orange)}
.memory-figure{margin:0;min-width:0;background:white;padding:26px;border:1px solid var(--line);border-radius:24px}
.memory-controls{display:flex;gap:5px;padding:5px;margin-bottom:22px;border-radius:13px;background:var(--paper)}.memory-controls[hidden]{display:none}
.memory-controls button{flex:1;min-width:0;min-height:44px;padding:9px 10px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:650 15px/1.35 DM,system-ui,sans-serif;cursor:pointer}
.memory-controls button[aria-pressed=true]{color:white;background:var(--purple)}
.memory-axis{font-size:14px;color:var(--muted)}.memory-time{text-align:right;margin-top:-8px}
.memory-figure svg{display:block;width:100%;height:auto;overflow:visible}.memory-grid{stroke:var(--line);stroke-width:1;fill:none}
.memory-forgetting{stroke:#9b938a;stroke-width:4;stroke-dasharray:7 8;fill:none;stroke-linecap:round}
.memory-area{fill:#ff741115}.memory-review-line{stroke:var(--orange);stroke-width:5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.memory-markers circle{fill:var(--purple);stroke:white;stroke-width:3}.memory-markers text{font:700 24px DM,system-ui,sans-serif;fill:white;text-anchor:middle}
.memory-reviews{transition:opacity .2s}.memory-figure[data-mode=without] .memory-reviews{opacity:0}
.memory-legend{display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:center;margin:18px 0;font-size:14px;font-weight:600}
.memory-legend span{display:inline-flex;align-items:center;gap:8px}.memory-legend i{display:inline-block;width:20px;border-top:3px solid var(--orange)}.memory-legend .legend-without{border-color:#9b938a;border-top-style:dashed}
.memory-explanation{font-size:16px;line-height:1.5;min-height:3em;color:var(--purple);font-weight:600}
.memory-figure figcaption{margin-top:15px;padding-top:15px;border-top:1px solid var(--line);font-size:13px;line-height:1.55;color:var(--muted)}.memory-figure figcaption a{display:inline-block;text-decoration:underline;text-underline-offset:3px}
.plans-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.plan{background:white;border:1px solid var(--line);border-radius:24px;padding:32px;display:flex;flex-direction:column;align-items:flex-start}.plan h3{font-size:30px}.plan-subtitle{color:var(--muted);margin-top:8px}.plan-premium{border:2px solid var(--purple);background:#faf7fe}.plan-premium h3{color:var(--purple)}
.plan-features{list-style:none;padding:0;margin:28px 0;flex:1}.plan-features li{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px;line-height:1.5}.plan-features li:last-child{margin-bottom:0}.plan-features svg{flex:0 0 20px;margin-top:3px;color:var(--purple)}.plan .btn{width:100%}.plan-billing{color:var(--muted);font-size:14px;line-height:1.65;max-width:800px;margin:20px auto 0;text-align:center}
.ai-section{padding-top:0}.ai-preview{display:grid;grid-template-columns:1fr 190px;align-items:center;gap:48px;padding:42px 48px;background:var(--lavender);border-radius:24px}.ai-preview h2{font-size:clamp(30px,3.2vw,42px);margin:14px 0}.ai-preview>div>p:not(.coming-badge){max-width:650px}.coming-badge{display:inline-flex;border:1px solid #d8c7ed;background:white;border-radius:100px;padding:5px 13px;font-size:14px;font-weight:700;color:var(--purple)}.ai-note{font-size:14px;color:var(--muted);margin-top:14px}.ai-preview img{width:190px;height:auto}
@media(max-width:850px){.memory-layout{grid-template-columns:1fr;gap:30px}.memory-copy h2{max-width:600px}.memory-figure{max-width:620px;width:100%;justify-self:center}.ai-preview{padding:32px;gap:24px;grid-template-columns:1fr 140px}.ai-preview img{width:140px}}
@media(max-width:650px){.memory-figure{padding:20px 16px;border-radius:20px}.memory-controls button{font-size:14px}.memory-explanation{min-height:4.5em}.plans-grid{grid-template-columns:1fr;gap:18px}.plan{padding:26px 23px}.plan h3{font-size:28px}.plan-billing{text-align:left}.ai-preview{padding:28px 24px;grid-template-columns:1fr;gap:20px}.ai-preview img{width:100px;justify-self:end}.ai-preview h2{max-width:350px}}

/* Article language links remain readable outside the article body. */
/* Long German words must not widen the weekly-plan table on small phones. */
html[lang="de"] .article-body th,html[lang="de"] .article-body td{hyphens:auto;overflow-wrap:anywhere}
.guide-translations{margin-top:18px;font-size:14px;color:var(--muted)}
.guide-translations a{color:var(--purple);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.guide-translations a[aria-current="page"]{font-weight:750;text-decoration:none}

/* Keep Korean words together where space permits, including narrow guide layouts. */
html[lang="ko"] main{word-break:keep-all;overflow-wrap:anywhere}
