*{box-sizing:border-box} :root{--ink:#22352e;--forest:#153f35;--green:#2e6c53;--lime:#d7f56b;--bg:#f6f7f3;--paper:#fff;--line:#e6e9e1;--muted:#818a81;--soft:#eef3eb;--radius:18px;--font:'IBM Plex Sans Thai','Inter',sans-serif}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.65 var(--font);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0;color:inherit}button:disabled{cursor:not-allowed;opacity:.45}button,a,select,input{outline-offset:4px}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #81b9a2}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}svg{flex-shrink:0}.icon{width:20px;height:20px;vertical-align:middle;stroke-width:1.7;flex-shrink:0}.icon.small{width:16px;height:16px}.muted{color:var(--muted)}.small-text{font-size:12px}.eyebrow{font:650 10px/1.4 'Inter',sans-serif;letter-spacing:2.1px;color:#718b76}.skip-link{position:fixed;left:20px;top:-60px;background:var(--forest);color:white;padding:12px 20px;z-index:100}.skip-link:focus{top:10px}.sidebar{width:228px;background:#fff;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;border-right:1px solid var(--line);z-index:30;padding:31px 20px 18px}.brand{display:flex;align-items:center;gap:10px;padding:0 9px}.brand-mark{width:37px;height:39px;background:var(--forest);border-radius:12px;display:grid;place-items:center;transform:rotate(-5deg);color:var(--lime)}.brand-mark .icon{width:25px;height:25px;stroke-width:2.5;transform:rotate(5deg)}.brand-name{font-size:25px;font-weight:700;letter-spacing:-1.1px;line-height:1.25}.brand-name span{color:#91af66}.brand-sub{font:500 8px/1.5 'Inter',sans-serif;letter-spacing:1.8px;color:#8b948d;margin-top:4px}.side-label{font-size:10px;font-weight:500;color:#939a92;margin:39px 15px 13px}.side-nav{display:grid;gap:7px}.nav-link{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:9px;color:#788079;font-size:13px;font-weight:500;transition:.2s}.nav-link:hover{background:#f6f8f4;color:var(--forest)}.nav-link.active{background:#edf3e9;color:var(--forest);font-weight:600}.nav-link.active:after{content:'';width:6px;height:6px;border-radius:50%;background:#73a34d;margin-left:auto}.nav-count{margin-left:auto;font:600 11px 'Inter',sans-serif;color:#7e8e77}.sidebar-bottom{margin-top:auto;padding-top:24px}.side-note{border:1px solid #e6ecd9;border-radius:13px;padding:15px;background:#f7f9ee;position:relative;overflow:hidden}.side-note .sparkle{color:#809441}.side-note strong{display:block;font-size:12px;margin:7px 0 3px}.side-note p{font-size:10px;color:#8a9278;line-height:1.8}.side-note button{background:none;font-size:11px;font-weight:600;padding:9px 0 0;color:var(--green)}.profile{border-top:1px solid var(--line);display:flex;align-items:center;gap:10px;padding:20px 5px 1px;margin-top:21px;background:white;width:100%;text-align:left}.avatar{height:35px;width:35px;border-radius:50%;background:#eeeee6;color:#6f7d62;display:grid;place-items:center;font-weight:600;flex-shrink:0}.profile-name{font-size:12px;font-weight:600;max-width:118px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-sub{font-size:10px;color:#9aa096}.profile>.icon{margin-left:auto;width:15px}.shell{margin-left:228px}.topbar{height:79px;background:rgba(255,255,255,.86);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 36px;gap:20px}.breadcrumbs{display:flex;align-items:center;gap:12px;font-size:11px;white-space:nowrap}.breadcrumbs span{color:#959c94}.breadcrumbs .icon{width:13px;color:#a8ada5}.top-search{margin-left:auto;position:relative;width:290px}.top-search input{width:100%;height:38px;border:1px solid #eceee7;border-radius:8px;background:#f9faf7;padding:0 42px 0 38px;font-size:11px;color:var(--ink)}.top-search>.icon{position:absolute;left:13px;top:11px;width:16px;height:16px;color:#9ba393}.shortcut{position:absolute;right:10px;top:9px;border:1px solid #e6e8df;border-radius:4px;font:10px 'Inter';color:#a3aa9e;padding:3px 5px}.prototype-pill{font-size:10px;color:#6b8067;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:6px 10px;border:1px solid #e1e9d7;border-radius:30px;background:#f7faef}.prototype-pill:before{content:'';width:5px;height:5px;background:#84a750;border-radius:50%}.mobile-menu{display:none;background:none;padding:3px}.main{max-width:1510px;margin:auto;padding:33px 36px 25px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:25px}.page-heading h1{font-size:27px;font-weight:600;letter-spacing:-.6px;line-height:1.5;margin:5px 0 3px}.page-heading p{font-size:12px;color:#91988c}.btn{display:inline-flex;gap:9px;align-items:center;justify-content:center;padding:11px 18px;border-radius:9px;font-size:12px;font-weight:600;min-height:42px;transition:transform .18s,background .18s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--forest);color:white}.btn-primary:hover{background:#24624b}.btn-lime{background:var(--lime);color:var(--forest)}.btn-light{background:white;border:1px solid #e1e6d9}.btn-ghost{background:transparent;color:var(--green)}.btn-outline-light{background:transparent;border:1px solid #527267;color:#eef9e9}.btn .icon{width:17px;height:17px}.btn-full{width:100%}.text-link{background:none;color:var(--green);padding:0;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600}.text-link .icon{height:15px;width:15px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 259px;gap:25px;align-items:start}.hero{background:var(--forest);min-height:283px;border-radius:19px;position:relative;overflow:hidden;display:flex;align-items:center}.hero:after{content:'';width:400px;height:400px;position:absolute;right:-90px;bottom:-230px;border:1px solid #426854;border-radius:50%;pointer-events:none;opacity:.6}.hero-copy{padding:29px 0 27px 30px;position:relative;z-index:2;width:61%}.hero-label{font:500 9px/1.6 'Inter';letter-spacing:1.65px;color:#c9dfa9;display:flex;align-items:center;gap:6px}.hero-label .icon{width:13px;height:13px}.hero h2{font-size:31px;line-height:1.5;font-weight:500;letter-spacing:-.6px;color:#fff;margin:12px 0 10px}.hero h2 em{font-style:normal;color:var(--lime);position:relative;white-space:nowrap}.hero p{color:#a8c3ad;font-size:11px;line-height:1.9;max-width:290px}.hero-actions{display:flex;gap:13px;align-items:center;margin:22px 0 0}.hero-actions .btn{font-size:11px;padding:11px 14px}.hero-actions .text-link{color:#e1ecda;font-size:10px}.hero-art{width:46%;position:absolute;right:-1%;top:50%;transform:translateY(-45%);z-index:1;pointer-events:none}.hero-feature{display:flex;gap:6px;align-items:center;color:#aac1a5;font-size:9px;margin-top:15px}.hero-feature .icon{width:12px;height:12px}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:17px 0 29px}.stat{border:1px solid var(--line);border-radius:12px;background:#fff;padding:15px;display:flex;align-items:center;gap:12px}.stat-icon{width:37px;height:38px;border-radius:10px;background:#f2f5eb;color:#7b9760;display:grid;place-items:center}.stat:nth-child(2) .stat-icon{background:#f0edf8;color:#9381b2}.stat:nth-child(3) .stat-icon{background:#f8efe4;color:#ba9b69}.stat-value{font:650 22px 'Inter',var(--font);letter-spacing:-.5px}.stat-value span{font:400 10px var(--font);color:#8c9485;margin-left:6px;letter-spacing:0}.stat-caption{font-size:9px;color:#9aa18f;margin-top:5px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 15px}.section-heading h2{font-size:18px;font-weight:600;letter-spacing:-.3px}.section-heading p{font-size:11px;color:var(--muted);margin-top:3px}.section-heading .icon{width:14px;height:14px}.tabs{display:flex;gap:7px;overflow:auto;scrollbar-width:none;margin-bottom:19px;padding-bottom:2px}.tab{font-size:10px;font-weight:500;padding:7px 12px;border-radius:7px;background:transparent;color:#8c9485;white-space:nowrap;border:1px solid transparent;transition:.2s}.tab:hover{background:#ecefe6}.tab.active{background:#e7efdf;border-color:#dce7d4;color:#46653d}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.exam-card{border:1px solid var(--line);background:#fff;border-radius:13px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.exam-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px #22352e08}.card-body{padding:17px 17px 15px;flex:1}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.subject-icon{width:41px;height:41px;border-radius:11px;display:grid;place-items:center;background:#edf4e7;color:#7a9c61}.subject-icon .icon{width:22px;height:22px}.subject-icon.blue{background:#edf1fc;color:#7890be}.subject-icon.violet{background:#f1edfa;color:#9a82bc}.subject-icon.amber{background:#fff2df;color:#c09d5c}.subject-icon.rose{background:#fceeed;color:#bf8d86}.subject-icon.sky{background:#e9f5f4;color:#6caaa7}.icon-btn{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:transparent;color:#b5bcb0}.icon-btn:hover{background:#f2f5eb;color:var(--green)}.icon-btn .icon{width:17px;height:17px}.icon-btn.saved{color:#729547;background:#f0f5e8}.icon-btn.saved svg{fill:#72954722}.card-tag{display:inline-flex;align-items:center;gap:5px;font-size:9px;color:#94a47c;margin-bottom:6px}.card-tag:before{content:'';width:4px;height:4px;background:#a6b98d;border-radius:50%}.exam-card h3{font-size:14px;font-weight:600;line-height:1.7;min-height:24px;margin-bottom:5px;letter-spacing:-.2px}.card-desc{font-size:10px;line-height:1.8;color:#98a08e;height:36px;overflow:hidden}.card-meta{display:flex;align-items:center;gap:12px;font-size:9px;color:#919a85;margin-top:16px}.card-meta span{display:flex;align-items:center;gap:5px}.card-meta .icon{width:12px;height:12px}.card-source{font-size:9px;color:#a5ac9a;display:flex;align-items:center;gap:5px;margin-top:7px;white-space:nowrap;overflow:hidden}.card-source .icon{width:11px;height:11px}.card-footer{background:#fcfdf9;border-top:1px solid #f0f2eb;padding:10px 17px;display:flex;justify-content:space-between;align-items:center}.level{font-size:9px;color:#93a07f;display:flex;align-items:center;gap:5px}.level-bars{display:inline-flex;align-items:flex-end;gap:2px;height:11px}.level-bars i{width:3px;background:#9eaf8b;border-radius:1px;height:4px}.level-bars i:nth-child(2){height:7px}.level-bars i:nth-child(3){height:10px;background:#e0e5d7}.card-footer .text-link{font-size:10px}.right-rail{display:grid;gap:18px}.rail-card{border:1px solid var(--line);background:white;border-radius:15px;padding:20px}.rail-card h3{font-size:13px;font-weight:600}.rail-top{display:flex;justify-content:space-between;align-items:center}.rail-top .icon{width:17px;height:17px;color:#899b72}.rail-sub{font-size:10px;color:#9ba48e;margin-top:4px}.goal-ring{width:137px;height:137px;position:relative;margin:21px auto 15px}.goal-ring>svg{width:137px;height:137px;transform:rotate(-90deg)}.goal-ring circle{fill:none;stroke-width:9;stroke:#f0f3e9}.goal-ring circle.progress{stroke:#a9c95e;stroke-linecap:round;transition:stroke-dashoffset .5s}.goal-ring-value{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.goal-ring-value strong{font:600 32px 'Inter';letter-spacing:-1px}.goal-ring-value strong span{font-size:14px;color:#a2aa95;font-weight:400;letter-spacing:0}.goal-ring-value small{font-size:9px;color:#9ca58e;margin-top:8px}.goal-description{text-align:center;font-size:10px;color:#929c82;line-height:1.9}.goal-description strong{color:#5f7652;font-weight:500}.goal-card .btn{margin-top:17px;min-height:35px;padding:7px;font-size:10px;background:#f2f5e9;color:#647c48}.daily-tip{background:#edf2e5;border-color:#e7eddf;padding:16px 18px}.daily-tip h3{font-size:11px;display:flex;gap:7px;align-items:center;color:#6b8058}.daily-tip h3 .icon{width:17px;height:17px}.daily-tip p{font-size:10px;color:#92a080;line-height:1.9;margin-top:9px}.source-mini{display:flex;gap:9px;align-items:center;margin-top:17px}.source-avatar{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;color:#8b9b70;background:#f2f5e9;font-size:11px;font-weight:600}.source-mini:nth-child(3) .source-avatar{color:#9a8bba;background:#f3f0f9}.source-mini:nth-child(4) .source-avatar{color:#be9c6b;background:#faf3e8}.source-mini strong{font-size:10px;font-weight:500;display:block}.source-mini span{font-size:9px;color:#a2ab95}.source-card .text-link{margin-top:19px;font-size:10px}.rail-caption{text-align:center;font-size:9px;color:#a5ad99;line-height:1.9;padding:0 10px}.site-footer{margin-top:29px;padding-top:15px;border-top:1px solid var(--line);font-size:9px;color:#a0a792;display:flex;justify-content:space-between;gap:15px}.site-footer span{display:flex;align-items:center;gap:5px}.site-footer .icon{width:12px;height:12px}.filter-panel{display:flex;gap:12px;background:#fff;padding:16px;border:1px solid var(--line);border-radius:13px;margin-bottom:20px;align-items:center}.search-field{flex:1;position:relative}.search-field>.icon{position:absolute;left:12px;top:12px;width:17px;height:17px;color:#9aa28e}.search-field input{width:100%;border:1px solid var(--line);height:42px;border-radius:8px;padding:0 12px 0 38px;background:#fbfcf9;color:var(--ink);font-size:12px}.filter-panel select{max-width:220px;height:42px;border:1px solid var(--line);border-radius:8px;padding:0 30px 0 12px;background:#fbfcf9;color:#7e8b72;font-size:11px}.results-label{font-size:11px;color:#94a087;margin:0 0 15px}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.library-grid .card-body{padding:23px}.library-grid .exam-card h3{font-size:17px}.library-grid .card-desc{font-size:12px;height:44px}.library-grid .card-meta,.library-grid .card-source{font-size:10px}.library-grid .card-footer{padding:13px 23px}.library-grid .card-footer .text-link{font-size:12px}.library-grid .subject-icon{width:48px;height:48px}.empty-state{background:#fff;border:1px dashed #dce4d4;border-radius:16px;text-align:center;padding:60px 25px;grid-column:1/-1}.empty-icon{width:64px;height:64px;background:#f1f5e9;display:grid;place-items:center;border-radius:20px;color:#8ba666;margin:0 auto 19px}.empty-icon .icon{width:29px;height:29px}.empty-state h2{font-size:20px;margin-bottom:10px}.empty-state p{font-size:12px;color:#96a187;margin-bottom:22px}.source-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.source-full{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px}.source-full .source-avatar{height:50px;width:50px;font-size:20px;border-radius:14px;margin-bottom:22px}.source-full h2{font-size:18px;margin-bottom:10px}.source-full p{font-size:11px;color:#91a082;line-height:1.9}.source-count{display:flex;gap:30px;margin:28px 0}.source-count strong{font:600 25px 'Inter'}.source-count span{display:block;color:#9da98f;font-size:10px;margin-top:6px}.notice{background:#eff4e8;border:1px solid #e3ebd9;border-radius:11px;padding:14px 18px;color:#7c8e69;font-size:11px;display:flex;gap:10px;margin-bottom:22px}.notice .icon{width:17px;height:17px}.modal-backdrop{position:fixed;inset:0;background:#102b255c;backdrop-filter:blur(5px);display:grid;place-items:center;z-index:100;padding:20px;animation:fadein .15s}.modal{max-width:510px;width:100%;max-height:90vh;overflow:auto;background:#fcfdf9;border-radius:22px;padding:29px;box-shadow:0 30px 100px #102b252e;position:relative;animation:risein .2s}.modal-close{position:absolute;right:19px;top:18px}.modal .eyebrow{margin-bottom:10px}.modal h2{font-size:23px;line-height:1.5;font-weight:600;margin:0 26px 6px 0}.modal-lead{font-size:12px;color:#91a080;margin-bottom:22px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.modal-actions .btn{flex:1}.form-label{display:block;font-size:12px;font-weight:500;margin:20px 0 10px}.form-input{height:44px;border-radius:8px;border:1px solid #dce4d4;background:white;padding:0 13px;width:100%;color:var(--ink)}.mode-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mode-option{position:relative;border:1px solid #e0e7d8;border-radius:12px;padding:15px;text-align:left;cursor:pointer;display:block;background:#fff}.mode-option:has(input:checked){border-color:#82a35c;box-shadow:0 0 0 1px #82a35c;background:#f1f6e9}.mode-option input{position:absolute;right:12px;top:14px;accent-color:#517b3e}.mode-option>.icon{width:22px;height:22px;color:#7d9762;margin-bottom:8px}.mode-option strong{font-size:12px;display:block;font-weight:500}.mode-option small{display:block;font-size:10px;color:#99a68b;margin-top:4px}.shuffle-note{font-size:11px;color:#819267;background:#f0f4e8;padding:11px 13px;border-radius:8px;display:flex;align-items:center;gap:9px;margin-top:20px}.shuffle-note .icon{width:17px;height:17px}.toast{position:fixed;bottom:25px;left:calc(50% + 100px);transform:translate(-50%,20px);border:1px solid #456c51;background:#163f32;color:#f7f9ed;box-shadow:0 8px 30px #153f351f;border-radius:12px;padding:12px 23px;font-size:12px;z-index:130;opacity:0;pointer-events:none;transition:.25s;max-width:90vw}.toast.show{opacity:1;transform:translate(-50%,0)}.exam-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px}.back-link{background:none;display:flex;align-items:center;gap:8px;color:#8a987c;padding:0;font-size:11px}.exam-time{display:flex;align-items:center;gap:8px;border:1px solid #dee7d3;background:#f0f5e8;padding:9px 15px;border-radius:8px;font-size:12px;color:#6f865b}.exam-time strong{font:600 15px 'Inter'}.exam-time.warning{color:#bd744f;background:#fff0e5;border-color:#f0d5be}.exam-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:25px}.exam-heading{margin-bottom:20px}.exam-heading h1{font-size:24px;margin-bottom:6px;font-weight:600}.exam-heading p{font-size:11px;color:#94a184}.question-card{background:white;border:1px solid var(--line);border-radius:18px;padding:29px}.question-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:20px;border-bottom:1px solid #edf0e7;margin-bottom:24px}.question-number{font-size:11px;color:#8fa276}.question-number strong{color:var(--forest);font:600 25px 'Inter';margin-right:7px}.question-source{font-size:10px;color:#a0ab92;display:flex;gap:5px;align-items:center}.question-source .icon{width:13px;height:13px}.question-text{font-size:21px;line-height:1.9;font-weight:500;white-space:pre-line;letter-spacing:-.2px;margin-bottom:26px}.answer-options{display:grid;gap:11px}.answer-option{background:#fcfdf9;border:1px solid #e5eadc;border-radius:11px;padding:14px 17px;display:flex;align-items:center;gap:14px;text-align:left;width:100%;font-size:14px;transition:.15s}.answer-option:hover{background:#f3f7ec;border-color:#c1d1b2}.answer-option.selected{background:#eef5e5;border-color:#8ba768;box-shadow:0 0 0 1px #8ba768}.answer-letter{width:31px;height:31px;display:grid;place-items:center;background:white;border:1px solid #e6ebdf;border-radius:8px;font:500 12px 'Inter';color:#93a17f;flex-shrink:0}.selected .answer-letter{background:#648d44;color:white;border-color:#648d44}.answer-option .icon{margin-left:auto;color:#648d44;width:18px;height:18px}.question-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:27px;gap:10px}.flag-btn{display:flex;align-items:center;gap:6px;background:none;padding:6px 0;color:#a1aa94;font-size:11px}.flag-btn.flagged{color:#c79740}.flag-btn .icon{width:16px;height:16px}.question-buttons{display:flex;gap:9px}.question-buttons .btn{min-height:39px;font-size:11px;padding:9px 13px}.question-hint{font-size:10px;color:#a6b196;margin-top:16px;text-align:center}.question-nav{background:white;border:1px solid var(--line);border-radius:15px;padding:22px;position:sticky;top:24px}.question-nav h3{font-size:14px;font-weight:600}.completion-label{display:flex;justify-content:space-between;color:#96a783;font-size:10px;margin:13px 0 8px}.progress-track{height:5px;background:#edf2e5;border-radius:10px;overflow:hidden}.progress-track i{display:block;background:#9fbf60;height:100%;border-radius:10px;transition:width .25s}.question-dots{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:22px 0}.question-dot{aspect-ratio:1;background:#f7f9f1;border:1px solid #e5eadb;border-radius:8px;font:500 12px 'Inter';color:#a0aa8f;position:relative}.question-dot.answered{background:#eaf2de;border-color:#d5e2c4;color:#678549}.question-dot.current{background:var(--forest);border-color:var(--forest);color:#fff}.question-dot.flagged:after{content:'';width:6px;height:6px;border-radius:50%;background:#dfb85c;position:absolute;top:5px;right:5px}.dot-legend{display:flex;flex-wrap:wrap;gap:10px;font-size:9px;color:#a0ab91}.dot-legend span{display:flex;align-items:center;gap:5px}.dot-legend i{display:inline-block;width:7px;height:7px;border-radius:2px;background:#dcebc8}.dot-legend span:nth-child(2) i{background:#f0f2ec;border:1px solid #e1e6d9}.dot-legend span:nth-child(3) i{background:#dfb85c;border-radius:50%}.question-nav .btn{margin-top:25px;font-size:11px}.exam-note{font-size:10px;color:#a3ae93;line-height:1.9;padding:17px 12px}.result-hero{background:var(--forest);border-radius:20px;padding:32px 37px;display:flex;align-items:center;gap:30px;color:#fff;margin-bottom:25px}.result-score{height:130px;width:130px;flex-shrink:0;display:flex;align-items:center;justify-content:center;flex-direction:column;border:8px solid #d7f56b;border-radius:50%;font:600 36px 'Inter';color:var(--lime)}.result-score span{font:400 10px var(--font);color:#bed0a8;margin-top:8px}.result-content .eyebrow{color:#b7cf98}.result-content h1{font-size:26px;font-weight:500;margin:8px 0}.result-content p{font-size:12px;color:#b0c7a4}.result-actions{margin-left:auto;display:flex;flex-direction:column;gap:10px}.result-actions .btn{font-size:11px}.result-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:30px}.result-stat{background:white;border:1px solid var(--line);border-radius:12px;padding:19px}.result-stat strong{font:600 24px 'Inter';display:block;color:#6f8f4f}.result-stat span{font-size:10px;color:#98a68b}.result-stat:nth-child(2) strong{color:#bc8774}.result-stat:nth-child(3) strong{color:#a4ad95}.review-list{display:grid;gap:16px}.review-card{border:1px solid var(--line);border-radius:14px;background:white;padding:22px}.review-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#9aa98a;margin-bottom:13px}.review-state{display:flex;align-items:center;gap:5px;font-size:10px;color:#789957}.review-state.wrong{color:#be8b76}.review-state .icon{width:15px;height:15px}.review-card h3{font-size:16px;font-weight:500;margin-bottom:16px;line-height:1.8;white-space:pre-line}.review-choices{display:grid;grid-template-columns:1fr 1fr;gap:9px}.review-choice{border:1px solid #e9ede2;border-radius:8px;padding:10px 12px;font-size:12px;display:flex;gap:9px;color:#8b9980}.review-choice.correct{background:#eff6e6;border-color:#c9dab6;color:#658648}.review-choice.wrong{background:#fdf0e9;border-color:#efd3c2;color:#b07e69}.review-choice .icon{width:15px;height:15px;margin-left:auto}.explanation{font-size:11px;color:#8c9e79;background:#f8faf3;border-radius:9px;line-height:1.9;padding:13px 15px;margin-top:14px}.explanation strong{color:#67804e;font-weight:500}.review-source{font-size:9px;color:#a8b497;margin-top:12px}.history-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:25px}.history-stat{background:white;border:1px solid var(--line);border-radius:13px;padding:22px}.history-stat strong{font:600 28px 'Inter';color:#6e8c4c}.history-stat p{font-size:11px;color:#9ba78b;margin-top:8px}.history-list{display:grid;gap:12px}.history-item{display:flex;align-items:center;gap:18px;border:1px solid var(--line);background:white;border-radius:12px;padding:18px 22px;text-align:left;width:100%}.history-item:hover{border-color:#c2d2b2}.history-score{width:50px;height:50px;background:#f0f5e7;border-radius:12px;display:grid;place-items:center;font:600 17px 'Inter';color:#72914f}.history-item h3{font-size:14px;font-weight:500}.history-item p{font-size:10px;color:#9ba98b;margin-top:4px}.history-item>.icon{margin-left:auto;color:#9db18a}.history-tags{margin-left:auto;font-size:10px;color:#96a789}.review-filters{display:flex;gap:8px;margin-bottom:18px}.review-filters .tab{font-size:11px}.help-steps{display:grid;gap:18px;margin-top:23px}.help-step{display:flex;gap:14px;align-items:start}.step-number{width:27px;height:27px;border-radius:8px;background:#eaf2df;color:#7b9a58;display:grid;place-items:center;font:500 11px 'Inter';flex-shrink:0}.help-step h3{font-size:13px;font-weight:500}.help-step p{font-size:11px;color:#99a98b;margin-top:3px;line-height:1.8}.mobile-overlay{display:none}.mobile-close{display:none}.space-top{margin-top:20px}.result-count{font-size:11px;color:#a0ae91}.empty-review{padding:28px;text-align:center;color:#8ea375;background:#eff6e7;border-radius:12px;font-size:12px}.setting-caption{font-size:10px;color:#a1ac94;line-height:1.8;margin-top:10px}.required{color:#8aa663}.large-number{font-family:Inter,sans-serif}.goal-picks{display:flex;gap:10px;margin:12px 0}.goal-picks button{padding:7px 14px;border-radius:7px;background:#f0f5e7;border:1px solid #e2e8d9;font-size:12px;color:#7d9562}.modal-input-error{font-size:11px;color:#b4735e;margin-top:8px;min-height:18px}@keyframes fadein{from{opacity:0}to{opacity:1}}@keyframes risein{from{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}@media(min-width:1600px){.main{padding-top:40px}.hero{min-height:318px}.hero h2{font-size:38px}.hero-copy{padding-left:36px}.hero-art{width:43%}.dashboard-grid{grid-template-columns:minmax(0,1fr) 280px}.card-body{padding:23px}.exam-card h3{font-size:17px}.card-desc{font-size:11px;height:40px}.hero p{font-size:12px;max-width:350px}.hero-actions .btn{font-size:12px}.card-source,.card-meta{font-size:10px}.card-footer{padding:12px 23px}.hero-label{font-size:10px}.rail-card{padding:23px}.rail-card h3{font-size:14px}.rail-sub,.goal-description{font-size:11px}}@media(max-width:1220px){.sidebar{width:205px;padding-left:14px;padding-right:14px}.shell{margin-left:205px}.topbar{padding:0 25px}.main{padding:27px 25px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 220px;gap:19px}.hero-copy{padding-left:24px;width:68%}.hero h2{font-size:27px}.hero-art{width:42%;right:-2%}.hero p{max-width:230px;font-size:10px}.hero-actions{gap:9px}.hero-actions .text-link{font-size:9px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{padding:12px 10px;gap:8px}.stat-icon{width:29px;height:32px}.stat-icon .icon{width:16px;height:16px}.stat-value{font-size:20px}.stat-caption{font-size:8px}.stat-value span{font-size:8px}.rail-card{padding:18px 16px}.hero-feature{font-size:8px}.page-heading h1{font-size:25px}.source-grid{gap:13px}.source-full{padding:22px}.source-full h2{font-size:16px}.exam-layout{grid-template-columns:minmax(0,1fr) 220px;gap:18px}.question-card{padding:23px}.result-hero{padding:28px}.result-content h1{font-size:22px}.result-actions .btn{font-size:10px;padding:9px 13px}.top-search{width:250px}}@media(max-width:1020px){.right-rail{display:none}.hero h2{font-size:34px}.hero-copy{width:62%;padding-left:31px}.hero-art{width:43%;right:0}.dashboard-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.top-search{width:215px}.topbar{gap:15px}.breadcrumbs{font-size:10px}.prototype-pill{padding:5px 8px;font-size:9px}.sidebar{width:195px}.shell{margin-left:195px}.stat-caption{font-size:9px}.stat-icon{width:35px;height:37px}.stat-value{font-size:22px}.stat{padding:15px}.stat-value span{font-size:10px}.source-grid{grid-template-columns:1fr}.source-full{display:grid;grid-template-columns:60px 1fr;column-gap:20px}.source-full .source-avatar{grid-row:1/3;margin:0}.source-full .source-count,.source-full .btn{grid-column:2}.source-count{margin:17px 0}.exam-layout{grid-template-columns:1fr}.exam-aside{display:none}.result-hero{flex-wrap:wrap}.result-actions{margin:0;flex-direction:row;width:100%}.result-actions .btn{font-size:12px}.hero p{font-size:11px;max-width:300px}.hero-feature{font-size:9px}.hero-actions .text-link{font-size:10px}}@media(max-width:800px){.sidebar{width:205px;transform:translateX(-100%);transition:transform .2s;z-index:70}.sidebar.open{transform:translateX(0)}.mobile-overlay.open{display:block;position:fixed;inset:0;background:#18382e66;z-index:60;backdrop-filter:blur(2px)}.mobile-close{display:grid;position:absolute;right:7px;top:7px;width:25px;height:25px}.shell{margin-left:0}.topbar{height:66px;padding:0 24px;gap:14px}.mobile-menu{display:grid}.breadcrumbs{font-size:10px}.top-search{width:260px}.main{padding:27px 24px}.toast{left:50%}.page-heading h1{font-size:27px}.hero h2{font-size:33px}.source-full{max-width:100%}.filter-panel{flex-wrap:wrap}.search-field{flex-basis:100%}.filter-panel select{flex:1;max-width:none}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){body{font-size:13px}.topbar{padding:0 18px;gap:12px;height:62px}.top-search{display:none}.prototype-pill{margin-left:auto}.main{padding:24px 18px 20px}.page-heading{align-items:flex-start;margin-bottom:20px;gap:10px}.page-heading .eyebrow{font-size:8px;letter-spacing:1.6px}.page-heading h1{font-size:22px;line-height:1.65;letter-spacing:-.7px}.page-heading p{font-size:10px;max-width:235px;line-height:1.8}.page-heading>.btn{font-size:0;padding:10px;width:38px;min-height:38px;gap:0;margin-top:15px}.page-heading>.btn .icon{width:18px;height:18px}.hero{min-height:290px;border-radius:15px;align-items:flex-start}.hero-copy{width:71%;padding:24px 0 24px 22px}.hero h2{font-size:26px;line-height:1.55;margin:11px 0 10px}.hero p{font-size:10px;max-width:210px;line-height:1.9}.hero-label{font-size:8px;letter-spacing:1.2px}.hero-art{width:41%;top:auto;bottom:34px;right:-3%;transform:translateY(0)}.hero-actions{margin-top:20px;flex-wrap:wrap;gap:10px}.hero-actions .btn{font-size:10px;padding:9px 11px;min-height:38px}.hero-actions .text-link{font-size:9px}.hero-feature{font-size:8px;margin-top:16px;gap:4px;white-space:nowrap}.stats-row{gap:8px;margin:12px 0 25px}.stat{padding:13px 9px;display:block}.stat-icon{width:26px;height:26px;border-radius:7px;margin-bottom:9px}.stat-icon .icon{width:15px;height:15px}.stat-value{font-size:22px}.stat-value span{font-size:8px;margin-left:4px}.stat-caption{font-size:8px;white-space:nowrap;margin-top:4px}.section-heading{margin-bottom:13px}.section-heading h2{font-size:17px}.section-heading .text-link{font-size:10px}.tabs{gap:4px;margin-bottom:15px}.tab{padding:7px 11px;font-size:10px}.card-grid,.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.card-body,.library-grid .card-body{padding:14px 12px 12px}.subject-icon,.library-grid .subject-icon{height:34px;width:34px;border-radius:9px}.subject-icon .icon{height:19px;width:19px}.card-top{margin-bottom:12px}.exam-card h3,.library-grid .exam-card h3{font-size:12px;line-height:1.75;min-height:42px;letter-spacing:-.3px}.card-desc,.library-grid .card-desc{font-size:9px;line-height:1.8;height:33px}.card-tag{font-size:8px}.card-meta,.library-grid .card-meta{font-size:8px;gap:9px;margin-top:13px}.card-meta .icon{width:11px;height:11px}.card-source,.library-grid .card-source{font-size:8px;margin-top:6px}.card-footer,.library-grid .card-footer{padding:10px 12px;gap:5px;align-items:center}.card-footer .level{font-size:8px}.level-bars{display:none}.card-footer .text-link,.library-grid .card-footer .text-link{font-size:9px;gap:3px}.card-footer .text-link .icon{width:12px;height:12px}.site-footer{font-size:8px;flex-wrap:wrap;margin-top:24px;gap:7px}.site-footer span:last-child{display:none}.filter-panel{padding:12px;gap:10px}.filter-panel select{width:40%;padding-right:12px;font-size:10px}.source-full{padding:21px;column-gap:15px;grid-template-columns:46px 1fr}.source-full .source-avatar{width:43px;height:43px}.source-full h2{font-size:17px}.source-full p{font-size:10px}.source-count strong{font-size:23px}.notice{font-size:10px;padding:13px;line-height:1.9}.modal{padding:25px 22px;max-height:calc(100dvh - 32px);border-radius:18px}.modal h2{font-size:21px}.modal-lead{font-size:11px}.mode-option{padding:13px 11px}.mode-option strong{font-size:11px}.mode-option small{font-size:9px}.shuffle-note{font-size:10px}.exam-heading h1{font-size:21px}.exam-time{font-size:9px;padding:7px 10px}.exam-time .icon{width:14px;height:14px}.exam-time strong{font-size:12px}.back-link{font-size:10px;gap:4px}.back-link .icon{width:14px;height:14px}.exam-top{gap:8px}.question-card{padding:20px 17px}.question-text{font-size:18px;line-height:1.9}.answer-option{padding:12px 10px;font-size:12px;gap:10px}.answer-letter{width:28px;height:28px;font-size:11px;border-radius:7px}.question-source{font-size:8px}.question-number strong{font-size:21px}.question-top{margin-bottom:20px;padding-bottom:17px}.question-buttons{gap:6px}.question-buttons .btn{padding:8px 10px;min-height:36px;font-size:10px}.question-buttons .btn .icon{width:13px;height:13px}.flag-btn{font-size:9px}.question-hint{display:none}.question-nav{padding:18px}.exam-aside{display:block}.exam-aside .question-nav{position:static}.exam-note{display:none}.question-dots{grid-template-columns:repeat(6,1fr);gap:8px;margin:17px 0}.question-nav .btn{margin-top:18px}.result-hero{display:block;text-align:center;padding:28px 20px}.result-score{margin:0 auto 22px;height:117px;width:117px;font-size:31px;border-width:7px}.result-content h1{font-size:24px}.result-content p{font-size:11px}.result-actions{justify-content:center;margin-top:23px;flex-wrap:wrap}.result-actions .btn{font-size:10px;min-height:38px}.result-stats{grid-template-columns:repeat(2,1fr);gap:10px}.result-stat{padding:15px 17px}.result-stat strong{font-size:23px}.review-card{padding:18px 15px}.review-card h3{font-size:14px}.review-choices{grid-template-columns:1fr;gap:7px}.review-choice{font-size:11px}.explanation{font-size:10px;padding:12px}.review-top{font-size:9px}.review-source{font-size:8px}.history-stats{gap:9px}.history-stat{padding:15px 11px}.history-stat strong{font-size:23px}.history-stat p{font-size:9px}.history-item{padding:14px;gap:12px}.history-item h3{font-size:12px}.history-item p{font-size:9px}.history-tags{display:none}.history-score{width:43px;height:43px;font-size:14px;flex-shrink:0}.history-item>.icon{width:16px;height:16px}.empty-state{padding:43px 19px}.empty-state h2{font-size:19px}.empty-state p{font-size:11px}.toast{font-size:11px;padding:11px 17px;max-width:90vw;white-space:nowrap}.goal-picks{gap:8px}.goal-picks button{padding:7px 12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Final readability adjustments. */
.page-heading p,.rail-sub,.goal-description,.card-desc,.card-meta,.card-source,.daily-tip p,.stat-caption,.section-heading p,.source-mini span,.source-full p,.results-label,.site-footer{color:#6f7c66}
.card-tag,.level{color:#73875e}.card-source{color:#7a876e}.rail-caption{color:#839078}.hero p{color:#c1d2bb}.hero-feature{color:#b6cba9}.brand-sub{font-size:7.5px;letter-spacing:1.3px;white-space:nowrap}
@media(min-width:561px){.card-desc{font-size:11px;height:40px}.card-meta,.card-source{font-size:10px}.rail-sub,.goal-description,.daily-tip p{font-size:11px}.source-mini strong{font-size:11px}.source-mini span{font-size:10px}.stat-caption{font-size:10px}.stat-value span{font-size:11px}.card-footer .text-link,.level{font-size:11px}.section-heading .text-link{font-size:12px}.tab{font-size:11px}}

.dashboard-grid>div{min-width:0}.hero-art{height:auto}.exam-card{min-width:0}
@media(max-width:1020px){.dashboard-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:800px){.sidebar{visibility:hidden}.sidebar.open{visibility:visible}}
@media(max-width:560px){.hero-copy{width:100%;padding-right:18px}.hero h2{font-size:25px}.hero-art{width:32%;right:-1%;bottom:50px;opacity:.95}.hero-actions{max-width:250px}.hero p{max-width:220px}.hero-feature{font-size:7.5px}}
