    :root{--ink:#14253e;--muted:#718098;--paper:#f7f7f3;--card:#fffefa;--line:#e6e7df;--blue:#2452c6;--lime:#d8f45d;--orange:#ffb058;--purple:#7765d8;--green:#4aaf7e;--red:#e47b75;--radius:20px;--shadow:0 12px 32px rgba(28,45,70,.08)}
    *{box-sizing:border-box} body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,sans-serif;font-size:14px} button,input{font:inherit}button{cursor:pointer;border:0}.app{min-height:100vh;display:flex}.side{width:255px;background:#fcfcf8;border-right:1px solid var(--line);padding:27px 16px 20px;display:flex;flex-direction:column;position:fixed;height:100vh;z-index:3}.brand{display:flex;align-items:center;gap:10px;padding:0 10px 33px;font-weight:800;font-size:20px;letter-spacing:-1px}.brand-mark{width:28px;height:28px;border-radius:9px;background:var(--blue);display:grid;place-items:center;color:white}.brand-mark i{width:17px}.nav{display:grid;gap:5px}.nav button{background:none;text-align:left;color:#637189;padding:11px 12px;border-radius:10px;display:flex;align-items:center;gap:12px;font-weight:700}.nav button i{width:18px}.nav button.active,.nav button:hover{background:#e9efff;color:var(--blue)}.side-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:15px}.language{background:#f1f3ec;padding:10px;border-radius:12px;display:flex;align-items:center;gap:9px;margin-bottom:10px}.language span:first-child{font-size:19px}.language small{display:block;color:var(--muted);font-size:10px}.avatar{width:34px;height:34px;border-radius:50%;background:#f2c8ab;color:#8b5038;display:grid;place-items:center;font-weight:800}.profile{display:flex;align-items:center;gap:9px;padding:7px}.profile strong{font-size:12px}.profile span{font-size:10px;color:var(--muted);display:block}.main{margin-left:255px;flex:1;padding:30px 44px 48px;max-width:1600px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.eyebrow{font:500 10px 'DM Mono';letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}h1{font-family:'Playfair Display',serif;font-size:35px;letter-spacing:-1.6px;line-height:1.05;margin:6px 0 0}.top-actions{display:flex;gap:11px;align-items:center}.icon-btn{width:40px;height:40px;border-radius:50%;background:var(--card);border:1px solid var(--line);display:grid;place-items:center;color:var(--ink)}.icon-btn i{width:18px}.mini-avatar{width:39px;height:39px;border-radius:50%;background:#f2c8ab;display:grid;place-items:center;font-size:16px}.dashboard{display:grid;grid-template-columns:minmax(400px,1.45fr) minmax(285px,.8fr);gap:20px}.section-title{font-size:16px;font-weight:800;margin:0 0 13px;letter-spacing:-.4px}.continue{padding:26px 27px;background:var(--blue);color:white;min-height:282px;position:relative;overflow:hidden;border-radius:var(--radius);box-shadow:0 15px 30px #2452c62b}.continue:after{content:'ACHIEVE';position:absolute;right:-27px;bottom:-40px;font:700 80px 'DM Mono';color:#ffffff13;letter-spacing:-7px}.continue .eyebrow{color:#c7d4ff}.continue h2{font-size:28px;letter-spacing:-1.3px;line-height:1.17;max-width:360px;margin:8px 0 17px;position:relative}.continue p{color:#d6e0ff;margin:0 0 20px}.progress-line{height:7px;border-radius:10px;background:#ffffff2e;margin:6px 0 19px;max-width:390px}.progress-line span{display:block;width:62%;height:100%;background:var(--lime);border-radius:inherit}.btn{padding:12px 16px;border-radius:11px;font-weight:800;transition:.2s}.btn-primary{background:var(--lime);color:#193047}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 5px 12px #12285738}.btn-white{background:white;color:var(--blue)}.continue .btn{position:relative}.goal{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:23px;min-height:282px;position:relative;overflow:hidden}.goal h3{margin:7px 0 1px;font-size:19px;letter-spacing:-.7px}.ring{width:135px;height:135px;margin:21px auto 7px;border-radius:50%;background:conic-gradient(var(--lime) 0 60%,#edf0e7 60%);position:relative;display:grid;place-items:center}.ring:after{content:'';position:absolute;width:104px;height:104px;border-radius:50%;background:var(--card)}.ring b,.ring span{z-index:1;text-align:center}.ring b{font-size:25px;letter-spacing:-1px}.ring span{font-size:10px;color:var(--muted);margin-top:40px;position:absolute}.goal-stat{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:13px;font-size:11px}.goal-stat b{display:block;font-size:15px}.practice-section{grid-column:1/-1;margin-top:7px}.practice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.practice-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;min-height:157px;position:relative;transition:.2s}.practice-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.practice-card .round-icon{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;margin-bottom:20px}.round-icon i{width:19px}.bg-blue{background:#e6edff;color:#315bc6}.bg-purple{background:#eeeaff;color:#7162ca}.bg-orange{background:#fff0dc;color:#e88926}.bg-green{background:#e3f5eb;color:#339166}.practice-card h3{font-size:13px;margin:0 0 5px}.practice-card p{font-size:11px;line-height:1.5;color:var(--muted);margin:0}.lower{grid-column:1/-1;display:grid;grid-template-columns:1.42fr .9fr;gap:20px;margin-top:4px}.attention,.ai-tip{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px}.word-row{display:grid;grid-template-columns:1.2fr 1fr 1.5fr 30px;gap:12px;align-items:center;border-top:1px solid var(--line);padding:11px 0;font-size:12px}.word-row:first-of-type{border:0}.word-row b{font-family:'DM Mono';font-size:12px}.word-row span{color:var(--muted)}.memory{height:6px;background:#edf0e7;border-radius:5px}.memory i{display:block;height:100%;background:var(--orange);border-radius:5px}.quick{background:#eff3ff;color:var(--blue);width:28px;height:28px;border-radius:8px;display:grid;place-items:center}.quick i{width:14px}.ai-tip{background:#f0effe;border-color:#e0dcfb}.ai-tip .ai-head{display:flex;gap:10px;align-items:center}.ai-orb{width:32px;height:32px;background:var(--purple);color:white;border-radius:11px;display:grid;place-items:center}.ai-orb i{width:17px}.ai-tip p{font-size:12px;line-height:1.6;color:#4e4a76;margin:17px 0}.text-link{background:none;color:#4b3eb1;font-size:12px;font-weight:800;padding:0}.text-link i{width:14px;vertical-align:middle}.mobile-nav{display:none}.screen{display:none}.screen.active{display:block}.study-wrap{max-width:780px;margin:0 auto}.study-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.study-progress{width:220px}.study-progress .progress-line{background:#dfe3e5;margin:7px 0 0}.study-progress .progress-line span{background:var(--blue);width:27%}.stat-pills{display:flex;gap:9px}.pill{border:1px solid var(--line);background:var(--card);border-radius:10px;padding:8px 10px;font:500 10px 'DM Mono';color:var(--muted)}.pill b{color:var(--ink)}.card-scene{perspective:1200px;height:397px;margin-bottom:25px}.flashcard{height:100%;position:relative;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.8,.2,1);cursor:pointer}.flashcard.flipped{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:25px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);padding:37px 43px;display:flex;flex-direction:column}.card-front:before{content:'';width:42px;height:5px;border-radius:5px;background:var(--lime);position:absolute;top:0;left:42px}.card-back{transform:rotateY(180deg);padding:30px 42px}.word-type{display:flex;justify-content:space-between;color:var(--muted);font:500 11px 'DM Mono';letter-spacing:.4px}.word-type .level{color:#4a865d;background:#e4f3e7;padding:4px 7px;border-radius:5px}.word{font:700 62px 'Playfair Display';letter-spacing:-3px;margin:33px 0 5px}.phonetic{font:500 15px 'DM Mono';color:var(--muted)}.sound{width:40px;height:40px;border-radius:50%;background:#eaf0ff;color:var(--blue);display:grid;place-items:center;margin-top:auto}.sound i{width:19px}.flip-note{position:absolute;bottom:37px;right:42px;color:var(--muted);font-size:11px}.translation{font:700 42px 'Playfair Display';letter-spacing:-1.7px;margin:10px 0}.definition{color:var(--muted);font-size:13px;margin:0 0 13px}.example{border-left:3px solid var(--lime);padding:5px 0 5px 13px;margin-top:auto}.example b{font:600 16px 'Playfair Display';display:block}.example span{color:var(--muted);font-size:11px;display:block;margin-top:4px}.forms{color:#506178;font:11px 'DM Mono';margin-top:16px}.rating{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.rating button{padding:13px 5px;background:var(--card);border:1px solid var(--line);border-radius:12px;font-size:12px;font-weight:800}.rating button:nth-child(1){color:#b95d5b}.rating button:nth-child(2){color:#c17a31}.rating button:nth-child(3){color:#337d61}.rating button:nth-child(4){color:#1b55bd}.ai-explain{margin-top:21px;text-align:center}.ai-explain button{background:none;color:var(--purple);font-size:12px;font-weight:800}.ai-drawer{position:fixed;right:20px;top:20px;bottom:20px;width:340px;z-index:6;background:#fbfaff;border:1px solid #e3dffb;border-radius:22px;padding:25px;box-shadow:-10px 8px 40px #3d2d7730;transform:translateX(380px);transition:.35s}.ai-drawer.open{transform:none}.ai-drawer h2{font-size:20px;margin:15px 0 8px}.ai-drawer p{color:#56547a;font-size:12px;line-height:1.6}.drawer-close{float:right;background:none;color:var(--muted)}.mini-example{padding:12px;background:white;border:1px solid #eceafa;border-radius:11px;margin:11px 0;font-size:12px}.exercise{max-width:720px;margin:10px auto}.exercise-card{background:var(--card);border:1px solid var(--line);border-radius:25px;padding:35px;box-shadow:var(--shadow)}.exercise-card h2{font:700 29px 'Playfair Display';margin:12px 0 7px}.question{font-size:25px;letter-spacing:-1px;margin:28px 0}.options{display:grid;grid-template-columns:1fr 1fr;gap:11px}.option{background:#fafbf7;border:1px solid var(--line);padding:14px;border-radius:11px;text-align:left;font-weight:700}.option:hover{border-color:var(--blue);background:#eef3ff}.result-box{display:none;background:#eaf7ee;color:#286b50;padding:14px;border-radius:11px;margin-top:15px;font-size:12px;line-height:1.5}.result-box.show{display:block}.finish{text-align:center;max-width:600px;margin:60px auto}.finish .medal{width:78px;height:78px;border-radius:50%;background:var(--lime);margin:auto;display:grid;place-items:center;font-size:35px}.finish h1{font-size:40px;margin:22px 0 10px}.finish p{color:var(--muted)}.result-stats{display:flex;justify-content:space-around;background:var(--card);border:1px solid var(--line);border-radius:17px;padding:20px;margin:25px 0}.result-stats b{font-size:22px;display:block}.result-stats span{font-size:11px;color:var(--muted)}.chat-layout{display:grid;grid-template-columns:220px 1fr;height:calc(100vh - 90px);background:var(--card);border:1px solid var(--line);border-radius:22px;overflow:hidden}.chat-history{background:#f5f5f0;border-right:1px solid var(--line);padding:20px}.chat-history h3{font-size:12px}.chat-history button{width:100%;padding:10px;background:none;text-align:left;border-radius:8px;font-size:11px;color:#536177}.chat-history button:first-of-type{background:#e9efff;color:var(--blue)}.chat-main{padding:22px 7%;display:flex;flex-direction:column}.modes{display:flex;gap:7px;margin-bottom:20px}.modes button{font-size:10px;padding:7px 9px;border-radius:7px;background:#f2f3ef;color:var(--muted)}.modes button:first-child{background:#e9efff;color:var(--blue)}.messages{display:grid;gap:15px;overflow:auto}.message{max-width:78%;padding:12px 14px;border-radius:14px;font-size:12px;line-height:1.55}.message.user{margin-left:auto;background:var(--blue);color:white;border-bottom-right-radius:3px}.message.bot{background:#f0effe;color:#3f3b68;border-bottom-left-radius:3px}.message.bot b{display:block;margin-bottom:5px}.quick-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:15px}.quick-actions button{font-size:10px;padding:7px 9px;border-radius:20px;background:#fafbf7;border:1px solid var(--line);color:#536177}.chat-input{display:flex;gap:8px;margin-top:13px}.chat-input input{flex:1;border:1px solid var(--line);border-radius:11px;padding:12px;background:#fafbf7;outline-color:var(--blue)}.send{width:41px;background:var(--blue);color:white;border-radius:11px}.progress-page{max-width:1050px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:17px}.metric span{font-size:11px;color:var(--muted)}.metric b{font:700 25px 'Playfair Display';display:block;margin-top:8px}.chart-card,.skills-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;margin-top:18px}.bar-chart{height:135px;display:flex;align-items:end;gap:14px;padding-top:20px}.bar{flex:1;background:#e7ecfb;border-radius:6px 6px 0 0;position:relative}.bar:nth-child(3),.bar:nth-child(6){background:var(--blue)}.bar label{position:absolute;bottom:-21px;left:50%;transform:translateX(-50%);font-size:10px;color:var(--muted)}.skill-row{display:grid;grid-template-columns:150px 1fr 35px;gap:12px;align-items:center;margin:15px 0;font-size:12px}.skill-row .memory i{background:var(--purple)}.talk{text-align:center;max-width:700px;margin:10px auto}.talk-card{background:var(--card);border:1px solid var(--line);padding:35px;border-radius:25px}.talk-avatar{width:80px;height:80px;background:#e7e3ff;border-radius:30px;display:grid;place-items:center;color:#6956cb;margin:auto}.talk-avatar i{width:39px;height:39px}.talk h2{font:700 30px 'Playfair Display';margin:19px 0 8px}.talk .question{background:#f2f0ff;border-radius:15px;padding:16px;font-size:17px;color:#4a437f}.record{width:65px;height:65px;border-radius:50%;background:var(--blue);color:white;margin-top:18px;box-shadow:0 0 0 9px #e4ebff}.record i{width:24px}.created{position:fixed;right:16px;bottom:15px;font:9px 'DM Mono';color:#8d98a4;text-decoration:none;z-index:9}.created:hover{color:var(--blue)}
    .memory-page{max-width:1050px}.memory-hero{background:#14253e;color:white;border-radius:23px;padding:29px;position:relative;overflow:hidden}.memory-hero:after{content:'MEMORY';position:absolute;right:-4px;bottom:-28px;font:700 72px 'DM Mono';letter-spacing:-7px;color:#ffffff0d}.memory-hero h2{font:700 34px 'Playfair Display';margin:9px 0 6px}.memory-hero p{color:#c4cfe0;max-width:540px;font-size:12px;line-height:1.6;margin:0}.memory-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:18px;margin-top:18px}.memory-profile,.memory-timeline{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:21px}.memory-word{font:700 39px 'Playfair Display';letter-spacing:-1.7px;margin:7px 0 2px}.memory-status{display:inline-flex;gap:6px;align-items:center;background:#fff0df;color:#af661a;padding:6px 8px;border-radius:7px;font:10px 'DM Mono';margin-top:14px}.memory-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:20px;border-top:1px solid var(--line);padding-top:16px;gap:8px}.memory-stats b{font-size:18px;display:block}.memory-stats span{font-size:10px;color:var(--muted);line-height:1.35;display:block}.timeline-item{position:relative;border-left:2px solid #e7e8e1;padding:0 0 21px 17px;margin-left:5px;font-size:12px}.timeline-item:before{content:'';position:absolute;width:9px;height:9px;background:var(--lime);border:2px solid var(--card);border-radius:50%;left:-6px;top:2px}.timeline-item:last-child{padding-bottom:0}.timeline-item small{color:var(--muted);display:block;font:10px 'DM Mono';margin-bottom:3px}.memory-callout{margin-top:18px;padding:17px;background:#f0effe;border:1px solid #e1dffc;border-radius:15px;font-size:12px;color:#49446f;line-height:1.55}.memory-callout b{display:block;margin-bottom:4px}.memory-actions{display:flex;gap:10px;margin-top:18px}.memory-actions .btn{background:var(--blue);color:white}.memory-actions .btn:nth-child(2){background:#e9efff;color:var(--blue)}
    @media(max-width:800px){.side{display:none}.main{margin:0;padding:22px 16px 86px}.topbar{margin-bottom:23px}.topbar h1{font-size:28px}.top-actions .icon-btn{display:none}.dashboard{display:block}.goal{margin-top:15px;min-height:205px}.ring{float:right;margin:-20px 10px 0 0;width:108px;height:108px}.ring:after{width:84px;height:84px}.continue{min-height:255px;padding:23px}.continue h2{font-size:25px}.practice-section,.lower{margin-top:22px}.practice-grid{grid-template-columns:1fr 1fr;gap:10px}.practice-card{min-height:138px;padding:15px}.practice-card .round-icon{margin-bottom:15px}.lower{display:block}.ai-tip{margin-top:15px}.attention{padding:17px}.word-row{grid-template-columns:1fr 1fr 1fr 27px;gap:7px}.mobile-nav{position:fixed;display:flex;z-index:5;bottom:0;left:0;right:0;height:66px;background:#fffffc;border-top:1px solid var(--line);justify-content:space-around;padding:7px}.mobile-nav button{background:none;color:#8390a0;display:grid;place-items:center;gap:3px;font-size:9px}.mobile-nav button.active{color:var(--blue)}.mobile-nav i{width:19px}.study-top{margin-bottom:20px}.study-progress{width:125px}.stat-pills .pill:last-child{display:none}.card-scene{height:425px}.card-face{padding:28px}.word{font-size:52px;margin-top:54px}.card-back{padding:25px}.translation{font-size:36px}.rating{grid-template-columns:1fr 1fr}.ai-drawer{left:12px;right:12px;top:auto;bottom:11px;width:auto;height:430px;transform:translateY(470px)}.chat-layout{display:block;height:calc(100vh - 114px)}.chat-history{display:none}.chat-main{padding:18px;height:100%}.metrics{grid-template-columns:1fr 1fr}.skill-row{grid-template-columns:106px 1fr 28px}.exercise-card{padding:24px}.options{grid-template-columns:1fr}.talk-card{padding:26px 18px}.created{bottom:73px}.memory-grid{grid-template-columns:1fr}.memory-hero h2{font-size:28px}.memory-actions{flex-wrap:wrap}}
