:root{--bg:#f7f8fa;--white:#fff;--ink:#202c3a;--muted:#818895;--line:#e9ecf0;--navy:#16253b;--lime:#c6ed87;--green:#527c2d;--lavender:#ede9fc;--radius:17px;--font:'Plus Jakarta Sans',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button{border:0;background:none;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #7f96d1;outline-offset:4px}input:focus,textarea:focus,select:focus{outline:3px solid #c6ed8780;border-color:#83a95a!important}input,textarea,select{color:var(--ink)}button:disabled{cursor:not-allowed;opacity:.5}.icon{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.skip-link{position:fixed;top:-60px;left:20px;z-index:100;background:var(--lime);padding:12px}.skip-link:focus{top:10px}.layout{display:flex;min-height:100vh}.sidebar{width:230px;position:fixed;inset:0 auto 0 0;background:white;border-right:1px solid var(--line);padding:34px 22px 22px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;letter-spacing:-.9px;padding:0 4px}.brand-mark{width:36px;height:36px;background:var(--lime);border-radius:11px;display:grid;place-items:center;color:#223c2f}.brand-mark .icon{width:24px;height:24px}.brand-dot{color:#8db75d}.nav-caption{font-size:9px;letter-spacing:1.65px;font-weight:750;color:#9a9eaa;margin:48px 0 16px 13px}.nav-items{display:grid;gap:7px}.nav-link{width:100%;display:flex;align-items:center;gap:12px;padding:14px 13px;border-radius:10px;text-align:left;font-size:12px;font-weight:650;color:#7c8490;transition:background .2s,color .2s}.nav-link .icon{width:19px;height:19px}.nav-link:hover{background:#f5f7f3;color:var(--ink)}.nav-link.active{background:#edf5e4;color:#37572a}.nav-link.active .nav-dot{width:5px;height:5px;background:#6e9b40;border-radius:50%;margin-left:auto}.nav-link .small-badge{font-size:9px;padding:1px 6px;background:#f1f2f6;border-radius:4px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:60px}.level-card{padding:17px 14px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(130deg,#fafbf7,#fff)}.level-top{display:flex;align-items:center;gap:10px}.level-icon{background:#f1edfc;width:35px;height:35px;display:grid;place-items:center;border-radius:10px;color:#9b8bc0}.level-card strong{display:block;font-size:11px}.level-card small{font-size:10px;color:var(--muted)}.progress-track{background:#edf0f1;border-radius:9px;overflow:hidden;height:5px}.progress-track>span{height:100%;background:#acd476;display:block;border-radius:9px}.level-card .progress-track{margin:14px 0 6px}.level-meta{display:flex;justify-content:space-between;font-size:9px;color:#9a9da5}.help-link{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);padding:21px 13px 0}.help-link .icon{width:16px}.app-area{margin-left:230px;width:calc(100% - 230px)}.topbar{height:86px;background:#fff;border-bottom:1px solid var(--line);padding:0 38px;display:flex;align-items:center;justify-content:space-between;gap:20px}.breadcrumb{display:flex;align-items:center;gap:11px;color:#9096a0;font-size:11px}.breadcrumb .icon{width:15px;height:15px}.breadcrumb strong{font-weight:600;color:#68717e}.topbar-actions{display:flex;align-items:center;gap:23px}.top-stat{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700}.top-stat.flame{color:#c98749}.top-stat.xp{color:#8d80bd}.top-stat .icon{width:18px}.separator{height:24px;width:1px;background:var(--line)}.avatar{width:35px;height:35px;border-radius:50%;background:#e9eddf;display:grid;place-items:center;font-size:12px;font-weight:800;border:3px solid #fff;box-shadow:0 0 0 1px var(--line)}.mobile-menu{display:none}.content{max-width:1410px;padding:34px 38px 30px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.eyebrow{font-size:10px;letter-spacing:1.3px;font-weight:700;color:#9299a3;margin:0 0 6px}.page-heading h1{font-size:27px;line-height:1.35;letter-spacing:-1px;margin:0;font-weight:800}.heading-star{display:inline-flex;color:#c4a46b;vertical-align:middle;margin-left:6px}.heading-star .icon{width:23px;height:23px}.page-heading p{font-size:11px;color:var(--muted);margin:7px 0 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:9px;padding:12px 18px;font-size:11px;font-weight:750;min-height:42px;transition:background .2s,transform .2s,box-shadow .2s;white-space:nowrap}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(1px)}.button .icon{width:16px;height:16px}.button.primary{background:var(--lime);color:#2d4321;box-shadow:0 3px 0 #a5cd6c}.button.primary:hover{background:#b9e776}.button.secondary{background:white;border:1px solid #e2e6ea;color:#57616e;box-shadow:0 2px 0 #eef0f3}.button.navy{background:var(--navy);color:white;box-shadow:0 3px 0 #0c192c}.button.ghost{padding:9px 12px;color:#79818e}.button.danger{color:#bc514e;background:#fff1ef}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 256px;gap:25px;align-items:start}.primary-column{min-width:0}.hero{background:var(--navy);border-radius:18px;min-height:261px;position:relative;overflow:hidden;padding:29px 30px;isolation:isolate;color:#fff}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 67% 85%,#263651 0,transparent 65%)}.hero-copy{position:relative;z-index:2;max-width:65%}.mission-label{font-size:8px;font-weight:750;letter-spacing:1.8px;color:#c8dfa3;display:flex;gap:7px;align-items:center}.mission-label .icon{height:13px;width:13px}.hero h2{font-size:29px;line-height:1.33;letter-spacing:-.9px;font-weight:750;margin:12px 0 10px}.hero p{font-size:10px;line-height:1.8;color:#aab6c9;margin:0 0 21px;max-width:270px}.hero .button{padding:10px 17px;min-height:39px;font-size:10px}.hero-actions{display:flex;align-items:center;gap:13px}.hero-time{font-size:8px;color:#aebace;display:flex;align-items:center;gap:4px}.hero-time .icon{width:12px;height:12px}.hero-art{position:absolute;width:56%;height:105%;object-fit:contain;right:-23px;top:-4px;z-index:1}.hero-small-star{position:absolute;left:47%;bottom:23px;color:#8b9a7c}.hero-small-star .icon{width:14px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:29px 0 14px}.section-heading h2{font-size:16px;font-weight:800;letter-spacing:-.4px;margin:0}.section-heading h2 small{color:#9ba1aa;font-size:10px;font-weight:500;margin-left:6px}.text-link{color:#79818d;font-size:10px;display:inline-flex;align-items:center;gap:5px;font-weight:600}.text-link .icon{width:13px}.text-link:hover{color:#37572a}.filter-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;gap:12px}.tabs{display:flex;gap:5px;flex-wrap:wrap}.tab{font-size:9px;font-weight:600;color:#89909b;padding:6px 11px;border-radius:6px;min-height:30px}.tab:hover{background:#eff1f3}.tab.active{background:white;color:#36434f;box-shadow:0 1px 4px #1224320b;border:1px solid #e5e8ec;padding:5px 10px}.view-toggle{display:flex;gap:2px;padding:3px;background:#eef0f2;border-radius:6px}.view-toggle button{padding:4px 6px;display:grid;place-items:center;border-radius:4px;color:#9aa1aa}.view-toggle .icon{width:12px;height:12px}.view-toggle button.active{background:#fff;color:#58616c;box-shadow:0 1px 3px #0001}.deck-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.deck-card{background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden;transition:transform .2s,box-shadow .2s;cursor:pointer;position:relative;min-width:0;text-align:left;padding:0;width:100%}.deck-card:hover{transform:translateY(-4px);box-shadow:0 9px 22px #253a5010}.deck-art{height:96px;position:relative;display:grid;place-items:center;overflow:hidden}.deck-art:before,.deck-art:after{content:'';width:100px;height:100px;border:1px solid #fff7;border-radius:50%;position:absolute;right:-19px;top:25px}.deck-art:after{width:150px;height:150px;top:0;right:-44px}.mint{--art-bg:#e4eedb;--art-ink:#83a96c}.lavender{--art-bg:#eae6f7;--art-ink:#a49bc7}.peach{--art-bg:#f8e9de;--art-ink:#d5a181}.blue{--art-bg:#dfeaf4;--art-ink:#7fabc7}.deck-art{background:var(--art-bg);color:var(--art-ink)}.mini-space{width:107px;height:93px;filter:drop-shadow(0 4px 3px #35462c0b);position:relative;z-index:1}.deck-lang{position:absolute;left:12px;top:11px;display:flex;align-items:center;gap:4px;background:#fffc;padding:3px 6px;border-radius:5px;font-size:8px;font-weight:650;color:#59646c;z-index:2}.flag{width:13px;height:9px;display:inline-block;border-radius:2px;overflow:hidden;position:relative;flex-shrink:0;box-shadow:0 0 0 1px #0001}.flag.en{background:linear-gradient(0deg,transparent 34%,#fff 34% 66%,transparent 66%),linear-gradient(90deg,transparent 35%,#fff 35% 65%,transparent 65%),linear-gradient(33deg,transparent 43%,#fff 43% 57%,transparent 57%),linear-gradient(-33deg,#324678 43%,#fff 43% 57%,#324678 57%)}.flag.en:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,transparent 42%,#cf6b70 42% 58%,transparent 58%),linear-gradient(90deg,transparent 43%,#cf6b70 43% 57%,transparent 57%)}.flag.de{background:linear-gradient(#38404b 33%,#bb6464 33% 66%,#e3c57b 66%)}.flag.es{background:linear-gradient(#ce7b77 25%,#eed08d 25% 75%,#ce7b77 75%)}.flag.fr{background:linear-gradient(90deg,#7894bd 33%,#fff 33% 66%,#ce8b8b 66%)}.flag.it{background:linear-gradient(90deg,#7da78a 33%,#fff 33% 66%,#ce8b8b 66%)}.flag.other{background:#a69dc7}.deck-body{padding:14px 13px 12px}.deck-meta{display:flex;align-items:center;gap:5px;font-size:8px;color:#9298a1;margin-bottom:7px}.deck-meta .icon{width:11px;height:11px}.deck-meta .dot{margin:0 1px}.deck-card h3{font-size:12px;letter-spacing:-.3px;line-height:1.5;margin:0 0 13px;font-weight:750}.deck-footer{display:flex;align-items:center;justify-content:space-between;font-size:8px;color:#9299a3;margin-top:7px}.deck-footer .icon{width:13px;height:13px;color:#7b8a76}.deck-card .progress-track{height:4px;background:#f1f3f3}.deck-card .progress-track>span{background:#b4d696}.add-deck-card{border:1px dashed #d7dce1;border-radius:13px;background:#fafbfa;min-height:202px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#909b89;cursor:pointer}.add-deck-card span{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#edf2e9}.add-deck-card strong{font-size:11px}.add-deck-card small{font-size:9px;color:#a4aba1}.context-banner{margin-top:24px;background:#f0f1eb;border:1px solid #e9ebe0;border-radius:13px;padding:21px 22px;display:flex;gap:23px;align-items:center}.context-icon{width:42px;height:42px;border-radius:12px;background:#e3e8d7;color:#85966c;display:grid;place-items:center;flex-shrink:0}.context-icon .icon{width:22px;height:22px}.context-banner h3{font-size:12px;letter-spacing:-.2px;margin:0 0 4px}.context-banner p{font-size:9px;color:#92998c;margin:0;line-height:1.7}.context-example{margin-left:auto;background:#fff;padding:15px;border-radius:9px;color:#70786d;font-size:10px;white-space:nowrap;transform:rotate(-3deg);box-shadow:0 3px 9px #373f2310}.context-example span{display:inline-block;border-bottom:2px solid #a9c182;color:#67804b;margin:0 4px;min-width:54px;text-align:center;background:#f0f5e9;padding:0 6px;border-radius:3px}.right-rail{display:grid;gap:18px}.rail-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px}.rail-title{display:flex;align-items:center;justify-content:space-between;gap:9px}.rail-title h2{font-size:12px;font-weight:750;letter-spacing:-.2px;margin:0}.rail-title .icon{width:16px;height:16px;color:#b0b6bd}.rail-title button{color:#9ba2ab;font-size:9px}.goal-ring{width:134px;height:134px;margin:19px auto 13px;position:relative;display:grid;place-items:center}.goal-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.goal-ring circle{fill:none;stroke:#edf1e8;stroke-width:9}.goal-ring circle:last-child{stroke:#bfdf90;stroke-linecap:round;stroke-dasharray:351.86;stroke-dashoffset:calc(351.86 - 351.86 * var(--progress));transition:stroke-dashoffset .3s}.goal-number{text-align:center;line-height:1.5}.goal-number strong{font-size:25px;letter-spacing:-1px;font-weight:800}.goal-number span{font-size:14px;color:#a5abb0}.goal-number small{display:block;font-size:9px;color:#90988e}.goal-caption{text-align:center;font-size:10px;color:#9aa08f;margin:0 0 18px}.goal-card .button{width:100%;font-size:10px;min-height:36px;padding:8px;background:#f1f5eb;border:1px solid #e9efde;color:#6f8654;box-shadow:none}.streak-big{display:flex;align-items:center;gap:10px;margin-top:16px}.flame-box{width:36px;height:40px;color:#d6a774;display:grid;place-items:center}.flame-box .icon{width:30px;height:30px}.streak-big strong{display:block;font-size:19px;font-weight:800;line-height:1.3}.streak-big small{font-size:9px;color:#a0a5ac}.week{display:flex;justify-content:space-between;margin-top:18px}.week-day{font-size:8px;text-align:center;color:#a0a5ac}.day-dot{width:24px;height:24px;border-radius:50%;background:#f4f5f6;display:grid;place-items:center;margin-bottom:6px;color:#a5b18f}.day-dot .icon{width:12px;height:12px}.week-day.today .day-dot{border:1.5px solid #d9bc99;background:#fff8ef;color:#be976c}.week-day.done .day-dot{background:#e4efd6;color:#7a9e4d;border:0}.streak-message{margin:14px 0 0;font-size:9px;color:#a0a5ad;line-height:1.8}.tip-card{background:#eff0f7;border-color:#e6e7f0;position:relative;overflow:hidden;padding:18px 20px}.tip-label{font-size:8px;letter-spacing:1px;font-weight:700;color:#9b98b5;display:flex;align-items:center;gap:6px}.tip-label .icon{width:13px;height:13px}.tip-card h3{font-size:12px;color:#676981;margin:11px 0 5px;letter-spacing:-.2px}.tip-card p{font-size:9px;color:#9698aa;line-height:1.8;margin:0}.tip-star{position:absolute;right:14px;top:16px;color:#c2bed5}.tip-star .icon{height:21px;width:21px}.footer-note{display:flex;justify-content:space-between;align-items:center;color:#b4b9c0;font-size:8px;margin-top:27px}.footer-note span{display:flex;align-items:center;gap:5px}.footer-note .icon{width:11px;height:11px}.search-row{display:flex;gap:14px;align-items:center;margin-bottom:22px}.search-input{position:relative;flex:1}.search-input>.icon{position:absolute;left:14px;top:13px;color:#a1a8b0;width:17px;height:17px}.search-input input{width:100%;background:#fff;border:1px solid #e4e8ed;border-radius:9px;min-height:44px;padding:10px 14px 10px 42px;font-size:12px}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.library-grid .deck-art{height:138px}.library-grid .deck-body{padding:20px}.library-grid h3{font-size:15px}.library-grid .deck-meta,.library-grid .deck-footer{font-size:10px}.deck-description{font-size:11px;color:#9198a2;margin:-3px 0 17px;line-height:1.8}.deck-grid.list{grid-template-columns:1fr}.deck-grid.list .deck-card{display:flex;align-items:stretch}.deck-grid.list .deck-art{width:150px;min-width:150px;height:auto;min-height:125px}.deck-grid.list .deck-body{flex:1;padding:20px}.deck-grid.list h3{font-size:14px}.deck-grid.list .deck-description{margin-bottom:10px}.empty-state{text-align:center;padding:55px 24px;background:white;border:1px dashed #dfe5d7;border-radius:15px;grid-column:1/-1}.empty-state .icon{width:40px;height:40px;color:#b4c795}.empty-state h2{font-size:18px}.empty-state p{color:var(--muted);font-size:12px;margin-bottom:24px}.explore-hero{background:#e9eef2;border-radius:17px;padding:32px;margin-bottom:28px;position:relative;overflow:hidden}.explore-hero h2{font-size:25px;letter-spacing:-1px;margin:0 0 10px}.explore-hero p{font-size:12px;color:#82909b;max-width:420px;margin:0}.explore-hero .mini-space{position:absolute;right:35px;top:0;width:180px;height:155px;color:#92a8b8}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:19px;margin-bottom:25px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:23px}.stat-card .icon{color:#91aa73;width:22px;height:22px}.stat-card strong{display:block;font-size:30px;letter-spacing:-1px;margin:16px 0 3px}.stat-card small{font-size:11px;color:var(--muted)}.stats-main{display:grid;grid-template-columns:1.7fr 1fr;gap:24px}.chart-card,.mastery-card{background:white;border:1px solid var(--line);border-radius:15px;padding:25px}.chart-card h2,.mastery-card h2{font-size:15px;margin:0 0 6px}.chart-card p{font-size:11px;color:var(--muted)}.chart{height:230px;display:flex;justify-content:space-around;align-items:flex-end;gap:15px;padding-top:20px;margin-top:20px}.chart-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:8px;max-width:55px}.chart-bar{width:100%;min-height:4px;background:#e7f0dc;border-radius:7px 7px 3px 3px}.chart-col.today .chart-bar{background:#b6db86}.chart-col span{font-size:10px;color:#929aa4}.chart-col strong{font-size:10px;color:#7b8c68}.mastery-item{margin-top:25px}.mastery-item>div:first-child{display:flex;justify-content:space-between;font-size:11px;margin-bottom:10px}.mastery-item .progress-track{height:6px}.badge-row{margin-top:26px;padding:20px;background:#f1f3ec;border-radius:12px;display:flex;align-items:center;gap:15px}.badge-row .icon{color:#9eb979;width:30px;height:30px}.badge-row p{margin:3px 0 0;font-size:11px;color:#8b9582}.badge-row strong{font-size:12px}.modal-backdrop{position:fixed;inset:0;background:#12203573;backdrop-filter:blur(5px);z-index:50;display:flex;align-items:center;justify-content:center;padding:28px;animation:fade-in .18s ease-out}.modal{background:#fff;border:1px solid #ffffff80;border-radius:21px;width:100%;max-width:720px;max-height:90dvh;overflow:auto;box-shadow:0 25px 90px #101e4033;position:relative;overscroll-behavior:contain}.modal.wide{max-width:850px}.modal.small{max-width:440px}.modal-header{padding:25px 28px 19px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:start;gap:20px}.modal-header h2{font-size:20px;letter-spacing:-.7px;margin:0}.modal-header p{font-size:11px;color:var(--muted);margin:5px 0 0}.icon-button{display:inline-grid;place-items:center;min-width:34px;min-height:34px;border-radius:8px;color:#8c96a1;flex-shrink:0}.icon-button:hover{background:#f0f3ee;color:#506342}.icon-button .icon{width:17px;height:17px}.modal-body{padding:25px 28px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:18px 28px;border-top:1px solid var(--line);position:sticky;bottom:0;background:#fff;z-index:2}.field{display:grid;gap:7px;margin-bottom:18px}.field label{font-size:11px;font-weight:700}.field input,.field textarea,.field select{width:100%;padding:11px 12px;border:1px solid #e1e5ea;background:#fff;border-radius:8px;font-size:12px;line-height:1.6}.field textarea{min-height:79px;resize:vertical}.field small{font-size:10px;color:#9aa2ad;line-height:1.6}.field-grid{display:grid;grid-template-columns:2fr 1fr;gap:17px}.editor-explainer{background:#f1f5e9;border:1px solid #e6eddb;border-radius:10px;padding:13px 15px;display:flex;gap:11px;margin:5px 0 22px;color:#71815d;font-size:11px;line-height:1.8}.editor-explainer .icon{width:19px;height:19px;margin-top:3px}.card-editor{background:#fbfcfd;border:1px solid #e6e9ed;border-radius:13px;padding:17px;margin-bottom:17px}.card-editor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.card-editor-header strong{font-size:10px;color:#859080}.card-editor .field{margin-bottom:13px}.card-editor .field-grid{grid-template-columns:1fr 1.3fr}.card-preview{padding:12px 13px;background:#f0f2ed;border-radius:7px;font-size:12px;line-height:1.9;color:#6e7b65;overflow-wrap:anywhere}.card-preview .gap{padding:2px 10px;display:inline-block;min-width:65px;background:#e1ebd1;border-bottom:2px solid #9bb875;color:#638144;border-radius:4px;letter-spacing:2px}.card-preview.invalid{font-size:10px;color:#969f91}.field-error{color:#bc5656;font-size:11px;margin:10px 0 0}.color-picker{display:flex;gap:8px;align-items:center}.color-choice{width:28px;height:28px;border-radius:50%;background:var(--art-bg);border:3px solid white;box-shadow:0 0 0 1px #e1e7dc}.color-choice.selected{box-shadow:0 0 0 2px #819772}.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px}.detail-hero{position:relative;padding:26px;background:var(--art-bg);overflow:hidden}.detail-hero .mini-space{position:absolute;right:20px;top:2px;width:170px;height:145px;color:var(--art-ink)}.detail-hero h2{position:relative;max-width:70%;font-size:24px;letter-spacing:-.7px;margin:13px 0}.detail-hero .icon-button{position:absolute;right:15px;top:10px;z-index:2;background:#fff8}.detail-info{font-size:11px;color:#6f7a80;max-width:70%;position:relative}.detail-action-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:25px}.detail-action-row .button.danger{margin-left:auto}.detail-card{display:flex;gap:16px;border-top:1px solid var(--line);padding:18px 0;align-items:baseline}.detail-card-number{font-size:10px;color:#a3aab1;min-width:18px}.detail-card p{margin:0;font-size:13px;line-height:1.9}.detail-card mark{background:#edf4e3;color:#547b35;padding:2px 6px;border-radius:4px}.detail-card small{color:#929ba5;font-size:11px}.mastered-dot{display:flex;align-items:center;margin-left:auto;color:#96b675}.mastered-dot .icon{width:15px;height:15px}.study-modal{max-width:800px;background:#f8f9fb}.study-top{padding:24px 30px;background:white;border-bottom:1px solid var(--line)}.study-top-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:17px}.study-top-row h2{font-size:13px;font-weight:700;margin:0}.study-top-row small{font-size:10px;color:#939ba4}.study-progress{display:flex;align-items:center;gap:14px}.study-progress .progress-track{flex:1;height:7px}.study-progress small{font-size:10px;color:#8f99a4}.study-body{padding:34px 48px 27px;text-align:center}.study-kicker{font-size:9px;letter-spacing:1.7px;color:#8b9980;font-weight:700}.study-sentence{margin:25px auto 19px;background:white;border:1px solid #e5e9ee;border-radius:15px;padding:35px 20px;font-size:25px;font-weight:600;letter-spacing:-.6px;line-height:1.9;overflow-wrap:anywhere;min-height:151px;display:flex;align-items:center;justify-content:center}.study-sentence .blank{display:inline-block;min-width:95px;line-height:1.5;border-bottom:3px solid #b1cf8e;border-radius:5px;background:#f0f6e7;color:#9dba7b;padding:0 10px;font-size:20px;letter-spacing:5px}.study-answer{text-align:left}.study-answer label{font-size:11px;font-weight:650;display:block;margin-bottom:8px}.study-answer input{padding:15px;border:1px solid #dce2e8;border-radius:10px;width:100%;font-size:15px;background:#fff}.study-hint{font-size:11px;color:#a0a9b1;margin-top:15px;min-height:30px;display:flex;align-items:center;justify-content:center;gap:7px}.study-hint .icon{width:14px;height:14px}.hint-text{color:#6e7d62}.study-controls{padding:18px 31px;display:flex;justify-content:space-between;align-items:center;background:white;border-top:1px solid var(--line);gap:15px}.study-controls small{font-size:10px;color:#a0a7af}.study-feedback{text-align:left;padding:16px 18px;border-radius:10px;margin-top:17px;background:#eaf2df;color:#66834b}.study-feedback.wrong{background:#fcf0e8;color:#ac795a}.study-feedback strong{font-size:12px;display:flex;align-items:center;gap:7px}.study-feedback p{font-size:12px;margin:6px 0 0}.study-feedback .icon{width:16px;height:16px}.summary{text-align:center;padding:30px 35px 35px}.summary-emblem{width:90px;height:90px;margin:0 auto 20px;background:#edf5e2;border-radius:27px;color:#9cbf71;display:grid;place-items:center}.summary-emblem .icon{width:45px;height:45px}.summary h2{font-size:28px;letter-spacing:-1px;margin:0}.summary>p{font-size:12px;color:var(--muted);margin:9px 0 25px}.summary-stats{display:flex;justify-content:center;gap:40px;margin:25px 0 30px}.summary-stats strong{display:block;font-size:23px;letter-spacing:-.5px}.summary-stats small{font-size:10px;color:#99a28f}.summary-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.goal-options{display:grid;gap:10px}.goal-option{border:1px solid var(--line);border-radius:10px;padding:15px;text-align:left;display:flex;align-items:center;justify-content:space-between}.goal-option strong{display:block;font-size:12px}.goal-option small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.goal-option.selected{border-color:#afcb8b;background:#f6f9f0}.goal-option .icon{color:#96b770}.help-content h3{font-size:13px;margin:20px 0 8px}.help-content p{font-size:12px;color:#87929c;line-height:1.9}.help-content code{background:#eff5e8;color:#6b8655;padding:2px 6px;border-radius:4px}.help-content .sample{font-size:16px;background:#f5f7f1;padding:15px;border-radius:10px;color:#6f805f}.confirm-body p{font-size:12px;color:#8b939d;line-height:1.8}.storage-note{font-size:10px;color:#919aa3;margin:20px 0 0;line-height:1.8}#toast{position:fixed;bottom:24px;left:calc(50% + 115px);transform:translate(-50%,25px);background:#20333a;color:#f6ffe9;box-shadow:0 5px 24px #15253620;padding:13px 22px;border-radius:10px;font-size:12px;z-index:100;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:calc(100vw - 30px)}#toast.show{opacity:1;transform:translate(-50%,0)}body.modal-open{overflow:hidden}.save-notice{background:#fff0df;color:#8c5b2d;border:1px solid #eed4b7;padding:12px;border-radius:9px;font-size:11px;margin-bottom:17px}@keyframes fade-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.content{padding-top:42px}.hero{min-height:290px;padding:34px}.hero h2{font-size:34px}.hero p{font-size:12px}.hero-art{width:60%}.deck-art{height:116px}.deck-card h3{font-size:14px}.deck-body{padding:17px}.rail-card{padding:24px}.goal-ring{margin-top:26px;margin-bottom:19px}.section-heading{margin-top:35px}.context-banner{padding:25px}.context-banner h3{font-size:14px}.context-banner p{font-size:11px}.context-example{font-size:12px}.page-heading h1{font-size:31px}}
@media(max-width:1230px){.sidebar{width:204px;padding-left:17px;padding-right:17px}.brand{font-size:18px;gap:8px}.brand-mark{width:32px;height:32px}.app-area{margin-left:204px;width:calc(100% - 204px)}.topbar{padding:0 26px;height:77px}.content{padding:28px 26px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 222px;gap:20px}.hero{padding:26px;min-height:250px}.hero h2{font-size:26px}.hero-copy{max-width:66%}.hero-art{right:-41px;width:61%}.hero-time{display:none}.deck-grid{gap:10px}.deck-body{padding:12px 10px}.deck-card h3{font-size:11px;letter-spacing:-.3px}.deck-art{height:83px}.rail-card{padding:17px}.context-example{display:none}.context-banner{gap:15px}.context-banner h3{font-size:12px}.page-heading h1{font-size:25px}.library-grid{gap:17px}.library-grid .deck-body{padding:15px}.library-grid h3{font-size:13px}#toast{left:calc(50% + 102px)}}
@media(max-width:1050px){.sidebar{width:185px;padding-left:13px;padding-right:13px}.brand{font-size:16px}.brand-mark{width:31px;height:31px;border-radius:9px}.nav-caption{font-size:8px;margin-left:10px}.nav-link{font-size:10px;padding:13px 10px;gap:9px}.nav-link .icon{width:17px;height:17px}.app-area{margin-left:185px;width:calc(100% - 185px)}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.right-rail{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.goal-ring{width:100px;height:100px;margin-top:12px;margin-bottom:9px}.goal-caption{margin-bottom:12px;font-size:9px}.goal-number strong{font-size:21px}.goal-number small{font-size:8px}.rail-card{padding:17px}.streak-big{margin-top:22px}.week{margin-top:25px}.day-dot{width:21px;height:21px}.tip-card h3{margin-top:25px}.tip-card p{font-size:10px}.hero-art{right:0;width:54%}.hero-copy{max-width:62%}.hero h2{font-size:30px}.hero p{font-size:11px}.hero-time{display:flex}.deck-art{height:109px}.deck-card h3{font-size:12px}.deck-body{padding:16px}.stats-grid{grid-template-columns:repeat(2,1fr)}.stats-main{grid-template-columns:1fr}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#toast{left:calc(50% + 92px)}}
@media(max-width:760px){.sidebar{width:210px;transform:translateX(-100%);transition:transform .22s;box-shadow:20px 0 70px #18263b20}.sidebar.open{transform:translateX(0)}.sidebar.open:after{content:'';position:fixed;left:210px;top:0;width:calc(100vw - 210px);height:100dvh;background:#13213055}.brand{font-size:18px}.sidebar .nav-link{font-size:12px}.app-area{margin:0;width:100%}.topbar{height:69px;padding:0 20px}.mobile-menu{display:grid;place-items:center;padding:0;width:25px;height:35px}.breadcrumb{gap:8px;font-size:10px}.breadcrumb>.icon,.breadcrumb>span{display:none}.topbar-actions{gap:13px}.top-stat{font-size:10px}.top-stat .icon{width:16px}.topbar-actions .separator{display:none}.avatar{width:31px;height:31px;font-size:10px}.content{padding:25px 20px}.page-heading{margin-bottom:22px;align-items:start}.page-heading h1{font-size:23px;letter-spacing:-.8px}.page-heading p{font-size:10px;max-width:240px;line-height:1.8}.eyebrow{font-size:9px}.page-heading>.button{font-size:0;padding:10px;min-width:39px;margin-top:19px}.page-heading>.button .icon{width:17px;height:17px}.hero{padding:27px 23px;min-height:270px}.hero h2{font-size:29px}.hero-copy{max-width:68%}.hero p{font-size:10px;max-width:220px}.hero-art{width:57%;right:-43px;top:20px;height:90%}.mission-label{font-size:7px;letter-spacing:1.5px}.hero-actions{gap:10px}.hero-time{display:none}.dashboard-grid{gap:22px}.section-heading{margin-top:27px}.section-heading h2{font-size:16px}.deck-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.deck-grid:not(.library-grid)>.deck-card:nth-child(3){display:none}.deck-art{height:105px}.deck-body{padding:15px 12px}.deck-card h3{font-size:12px}.deck-meta{font-size:8px}.context-banner{margin-top:20px;padding:20px 17px}.context-icon{width:34px;height:34px;border-radius:9px}.context-banner h3{font-size:11px}.context-banner p{font-size:9px}.right-rail{grid-template-columns:1fr 1fr;gap:13px}.tip-card{grid-column:1/-1;padding:20px}.tip-card h3{margin:10px 0 4px}.tip-card p{font-size:11px}.goal-card .button{font-size:9px}.rail-title h2{font-size:11px}.rail-title button{font-size:8px}.streak-big strong{font-size:17px}.streak-big small{font-size:8px}.day-dot{width:18px;height:18px}.week{gap:2px}.week-day{font-size:7px}.streak-message{font-size:8px}.footer-note{font-size:7px}.footer-note>span:last-child{display:none}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.library-grid .deck-art{height:120px}.library-grid h3{font-size:12px}.library-grid .deck-body{padding:14px 12px}.deck-description{font-size:10px}.search-row{gap:8px;flex-wrap:wrap}.search-input{min-width:100%;margin-bottom:5px}.explore-hero{padding:25px 20px}.explore-hero h2{font-size:22px;max-width:70%}.explore-hero p{font-size:10px;max-width:63%}.explore-hero .mini-space{width:130px;right:-10px;top:20px}.stats-grid{gap:13px}.stat-card{padding:18px}.stat-card strong{font-size:27px}.stat-card small{font-size:10px}.chart-card,.mastery-card{padding:20px}.chart{gap:10px}.modal-backdrop{padding:12px}.modal{max-height:94dvh;border-radius:17px}.modal-header{padding:20px}.modal-header h2{font-size:18px}.modal-header p{font-size:10px}.modal-body{padding:20px}.modal-footer{padding:16px 20px}.field-grid{grid-template-columns:1fr}.card-editor .field-grid{grid-template-columns:1fr}.field input,.field textarea,.field select{font-size:16px}.field label{font-size:11px}.card-editor{padding:14px}.editor-explainer{font-size:10px}.study-top{padding:19px 20px}.study-body{padding:28px 20px}.study-sentence{font-size:22px;padding:28px 15px;margin-top:20px}.study-controls{padding:16px 20px}.study-controls small{display:none}.study-controls .button{font-size:11px}.summary{padding:27px 20px}.summary h2{font-size:25px}.summary-stats{gap:25px}.detail-hero{padding:23px}.detail-hero h2{font-size:21px;max-width:80%}.detail-hero .mini-space{right:-15px;opacity:.5}.detail-action-row .button{font-size:10px;padding:10px 12px}.detail-card p{font-size:12px}.detail-card{gap:10px}.form-bottom{align-items:start;flex-direction:column;gap:15px}#toast{left:50%;font-size:11px}.deck-grid.list .deck-art{width:95px;min-width:95px}.deck-grid.list .deck-body{padding:14px}.deck-grid.list .deck-description{font-size:10px}.deck-grid.list h3{font-size:12px}}
@media(max-width:380px){.content{padding:22px 15px}.topbar{padding:0 15px}.topbar-actions{gap:9px}.top-stat{font-size:9px}.hero{padding:24px 20px}.hero h2{font-size:26px}.hero-copy{max-width:78%}.hero-art{right:-55px;width:63%;opacity:.85}.hero p{max-width:185px;font-size:9px}.deck-card h3{font-size:11px}.deck-body{padding:12px 10px}.rail-card{padding:14px}.rail-title h2{font-size:10px}.goal-number strong{font-size:22px}.library-grid .deck-body{padding:13px 10px}.summary-stats{gap:20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Readable secondary text and generous touch targets. */
:root{--muted:#687380}
.nav-link,.breadcrumb,.breadcrumb strong,.help-link,.eyebrow,.nav-caption,.page-heading p,.text-link,.tab,.deck-meta,.deck-footer,.deck-description,.rail-title button,.goal-caption,.streak-big small,.streak-message,.week-day,.footer-note,.level-card small,.level-meta,.field small,.study-top-row small,.study-progress small,.study-hint,.study-controls small,.storage-note,.chart-card p,.stat-card small,.chart-col span,.detail-card small,.detail-info{color:#687380}
.deck-meta,.deck-footer{font-size:10px}
.page-heading p{font-size:12px}
.tab{font-size:10px;min-height:36px}
.hero p{font-size:11px}
.mission-label{font-size:9px}
.context-banner p,.context-banner .text-link{color:#68735e;font-size:10px}
.tip-card p{color:#71738b;font-size:10px}
.tip-label{color:#75728f;font-size:9px}
.tip-card h3{color:#5c6078}
.goal-number small{color:#707967}
.goal-caption,.streak-message{font-size:10px}
.week-day{color:#707a84}
.goal-card .button{color:#607a43}
.deck-lang{color:#4e5d69}
.goal-option small{color:#687380}
.add-deck-card small{color:#737e69}
.summary-stats small{color:#68785a}
.card-preview.invalid{color:#717c69}
.editor-explainer{color:#60744c}
#main{outline:none}
@media(max-width:760px){
 .heading-star{display:none}
 .page-heading h1{font-size:22px;letter-spacing:-.8px}
 .page-heading p{font-size:11px}
 .hero h2{font-size:27px}
 .hero p{font-size:11px}
 .hero-copy{max-width:76%}
 .hero-art{right:-34px;top:30px;width:57%;height:89%}
 .mission-label{font-size:8px;letter-spacing:1.1px}
 .filter-bar{align-items:start}
 .tabs{gap:2px}
 .tab{min-height:44px;padding:6px 9px;font-size:10px}
 .tab.active{padding:5px 8px}
 .view-toggle button{min-height:38px;width:27px}
 .view-toggle{margin-top:1px}
 .rail-title h2{font-size:11px}
 .rail-title button{min-height:22px}
 .streak-big{gap:7px}
 .streak-big strong{font-size:20px}
 .streak-big small{font-size:9px}
 .flame-box{width:27px}
 .flame-box .icon{width:25px;height:25px}
 .goal-caption,.streak-message{font-size:9px}
 .context-banner p{font-size:10px}
 .tip-card p{font-size:11px}
 .icon-button{min-width:44px;min-height:44px}
 .mobile-menu{min-width:32px;min-height:44px}
 .library-grid .deck-meta,.library-grid .deck-footer{font-size:9px}
 .study-controls .button{min-height:44px;padding:10px 13px}
}
@media(max-width:380px){.tab{padding:6px 7px;font-size:9px}.tab.active{padding:5px 6px}.hero h2{font-size:25px}.hero-copy{max-width:80%}.page-heading h1{font-size:20px}.deck-meta,.deck-footer{font-size:9px}}
@media(max-width:760px){.sidebar{visibility:hidden}.sidebar.open{visibility:visible}}
.brand-mark .brand-logo{width:78%;height:78%}

.deck-visibility{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:14px;display:grid;gap:12px}
.deck-visibility legend{padding:0 6px;font-weight:700;font-size:13px}
.deck-visibility label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;padding:8px;border-radius:8px}
.deck-visibility label:has(input:checked){background:var(--bg)}
.deck-visibility input{margin-top:3px;accent-color:var(--green)}
.deck-visibility strong,.deck-visibility small{display:block}
.deck-visibility small{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.5}
#catalog-status{margin-top:20px}
