@font-face{font-family:Baloo;src:url('../download/assets/baloo-2-latin.woff2') format('woff2');font-weight:600 800;font-display:swap}
@font-face{font-family:DM;src:url('../download/assets/dm-sans-latin.woff2') format('woff2');font-weight:400 700;font-display:swap}
:root{--cream:#fbf3ea;--ink:#1c2b3f;--muted:#756e67;--purple:#6924d6;--purple-dark:#5016b6;--orange:#f5701a;--line:#e8dcd0;--pale-purple:#f0e9fc}
*{box-sizing:border-box}html{background:var(--cream);-webkit-text-size-adjust:100%}body{margin:0;color:var(--ink);font-family:DM,system-ui,sans-serif;line-height:1.5;background:radial-gradient(ellipse at 4% 42%,#ffe4c855,transparent 52%),var(--cream)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}h2:focus{outline:none}[hidden]{display:none!important}.wrap{max-width:1100px;width:calc(100% - 64px);margin-inline:auto}.site-header{min-height:108px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.logo{display:block;width:215px;height:auto;mix-blend-mode:multiply}.header-note{font-size:13px;color:var(--muted)}.header-note span{color:var(--orange);margin-right:8px}.experience{display:grid;grid-template-columns:1fr 450px;gap:70px;align-items:center;padding:42px 0 44px;min-height:740px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;color:#a6420b;margin:0 0 20px}h1{font-family:Baloo,system-ui,sans-serif;font-size:76px;line-height:1.02;letter-spacing:-.035em;margin:0}h1 span{color:var(--purple)}.intro-copy{font-size:19px;line-height:1.55;color:var(--muted);margin:24px 0 18px}.promise{font-size:13px;color:#5d5550;display:flex;align-items:center;gap:8px}.promise>span:first-child{color:#30735a}.dot{opacity:.5}.desktop-note{display:flex;align-items:center;gap:15px;margin-top:50px}.desktop-note p{margin:0;font-size:13px;line-height:1.6;color:var(--muted)}.desktop-note strong{font-weight:500;color:var(--ink)}.spark{font-size:37px;color:var(--orange)}.practice-area{width:100%;max-width:450px;min-width:0}.progress-label{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;color:var(--muted);margin:0 6px 9px}.progress{display:flex;gap:6px;margin-bottom:17px}.progress span{height:5px;flex:1;background:#e6dacf;border-radius:20px;transition:background .2s}.progress span.done{background:var(--purple)}.progress span.active{background:#c9adef}.flashcard{border:1px solid #e2d5c8;background:#fffdf9;border-radius:25px;padding:20px 25px 18px;box-shadow:0 8px 0 #e9dece,0 18px 44px #6039270b;text-align:center;position:relative}.card-heading{display:flex;justify-content:space-between;align-items:center}.tag{font-size:10px;letter-spacing:.09em;font-weight:700;color:#915028;background:#fff0df;border:1px solid #f5e2ce;padding:5px 10px;border-radius:20px}.card-number{font-size:13px;color:#a39588;font-variant-numeric:tabular-nums}.card-image{width:235px;max-width:85%;height:235px;object-fit:contain;display:block;margin:2px auto 0;mix-blend-mode:multiply}.card-question{margin:9px 0 3px;color:var(--muted);font-size:13px}.flashcard h2{font-family:Baloo,system-ui,sans-serif;font-size:37px;line-height:1.13;letter-spacing:-.02em;margin:0 0 8px}.scene{font-size:12px;color:var(--muted);margin:0 0 24px;min-height:18px}.button{display:flex;justify-content:center;align-items:center;gap:12px;min-height:50px;padding:12px 18px;font-size:14px;font-weight:700;border-radius:13px;text-decoration:none;border:1px solid transparent;transition:background .15s,transform .15s,box-shadow .15s}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(1px)}.primary{color:white;background:var(--purple);width:100%;box-shadow:0 4px 0 #491498}.primary:hover{background:var(--purple-dark)}.button span{font-size:19px}.tiny-note{color:var(--muted);font-size:11px;margin:12px 0 0}.base-word{margin:8px 0 3px;font-size:13px;font-weight:700;color:var(--purple)}.base-word span{font-weight:400;color:var(--muted)}#english-phrase{color:var(--purple);margin-bottom:2px}.translation{font-size:14px;margin:0 0 9px;color:var(--muted)}.listen{color:var(--purple);background:var(--pale-purple);border:0;border-radius:24px;padding:9px 14px;display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700}.listen svg{width:17px;height:17px}.listen:hover{background:#e6d9fc}.audio-status{color:var(--muted);font-size:11px;margin:5px 0 0;min-height:0}.audio-status:empty{display:none}.self-check{font-size:12px;color:var(--muted);margin:15px 0 8px}.rating-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.secondary{background:#fff9f2;border-color:#e7d8c9;color:#6b5543}.remembered{color:var(--purple);background:var(--pale-purple);border-color:#d8c4f6}.method-note{text-align:center;color:var(--muted);font-size:11px;margin:22px 0 0;word-spacing:3px}.method-note span{color:var(--purple);font-weight:700}.site-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:11px;color:var(--muted);padding:20px 0 28px;border-top:1px solid var(--line)}.site-footer a{text-underline-offset:3px}.result{background:#fffdf9;border:1px solid #e2d5c8;border-radius:25px;box-shadow:0 8px 0 #e9dece,0 18px 44px #6039270b;text-align:center;padding:25px}.result-eyebrow{font-size:10px;letter-spacing:.1em;color:#397257;font-weight:700}.result-eyebrow span{margin-left:5px}.celebration{width:120px;height:115px;object-fit:contain;display:block;margin:10px auto 3px;mix-blend-mode:multiply}.result h2{font-family:Baloo,system-ui,sans-serif;font-size:33px;letter-spacing:-.025em;line-height:1.1;margin:0}.score{font-size:13px;color:var(--muted);margin:12px 0 18px}.phrase-recap{text-align:left;border-block:1px solid var(--line);padding:8px 0}.recap-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0}.recap-row strong{font-size:14px;color:var(--purple);display:block}.recap-row small{font-size:11px;color:var(--muted)}.recap-audio{width:35px;height:35px;flex-shrink:0;border-radius:50%;background:var(--pale-purple);border:0;color:var(--purple)}.recap-audio svg{width:17px;height:17px;vertical-align:middle}.continue-copy{font-size:13px;margin:18px 0;line-height:1.6}.download-note{font-size:11px;color:var(--muted);margin:14px 0 12px}.restart{background:none;border:0;color:var(--purple);font-size:12px;text-decoration:underline;text-underline-offset:4px;padding:8px 15px}.result-disclaimer{color:var(--muted);font-size:10px;margin:8px 0 0}.noscript-note{background:#fff2d8;padding:15px;border-radius:12px;font-size:14px}.animate-in{animation:appear .23s ease-out}@keyframes appear{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.wrap{width:calc(100% - 36px);max-width:500px}.site-header{min-height:72px}.logo{width:163px}.header-note{font-size:10px}.header-note span{display:none}.experience{display:flex;flex-direction:column;gap:25px;min-height:0;padding:26px 0 28px}.introduction{text-align:center;width:100%}.eyebrow{font-size:10px;margin-bottom:9px;letter-spacing:.14em}h1{font-size:43px;line-height:1.05}h1 br{display:none}.intro-copy{font-size:14px;margin:10px 0}.desktop-break{display:none}.promise{font-size:11px;justify-content:center}.desktop-note{display:none}.practice-area{max-width:410px}.flashcard{padding:16px 20px}.card-image{height:202px;width:202px}.flashcard h2{font-size:33px}.scene{font-size:11px;margin-bottom:20px}.card-question{font-size:12px}.site-footer{font-size:10px}.site-footer span{max-width:230px}.result{padding:22px}.result h2{font-size:32px}}
@media(max-width:380px){.header-note{max-width:95px;text-align:right}.wrap{width:calc(100% - 28px)}h1{font-size:37px}.experience{padding-top:22px;gap:22px}.card-image{height:178px;width:178px}.flashcard{padding-inline:17px}.flashcard h2{font-size:31px}.button{font-size:13px}.promise{gap:6px}.site-footer{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.card-image{border-radius:14px}.usage-tip{font-size:11px;line-height:1.5;color:#6c635b;background:#fff3e5;border-radius:10px;padding:9px 11px;margin:12px 0 0}.flashcard h2{overflow-wrap:normal}#english-phrase{font-size:33px}.base-word span{font-size:11px}.recap-row strong{line-height:1.35}
@media(max-width:900px){#english-phrase{font-size:30px}.flashcard h2{font-size:31px}.usage-tip{font-size:10px}.scene{line-height:1.4}}
@media(max-width:380px){#english-phrase,.flashcard h2{font-size:28px}.rating-actions .button{padding-inline:8px}}
