:root{--bg:#f7f8fa;--paper:#fff;--ink:#202a2b;--muted:#7c8587;--line:#e8eceb;--green:#214e3f;--green-dark:#153b2e;--lime:#d9ee9d;--sage:#e9f1ea;--sidebar:236px;--shadow:0 8px 30px #172c2310;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;font-size:14px}
*{box-sizing:border-box}body{margin:0}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:disabled{cursor:not-allowed;opacity:.52}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #7da98c;outline-offset:4px}input:focus,textarea:focus,select:focus{outline:none;border-color:#6d967a;box-shadow:0 0 0 3px #dae9df}svg{display:block}button svg,a svg{flex-shrink:0}.icon{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.icon.sm{width:15px;height:15px}.icon.lg{width:25px;height:25px}.boot{display:grid;place-content:center;height:100vh;text-align:center;justify-items:center;color:var(--muted)}.brand-symbol{display:grid;place-items:center;width:37px;height:37px;background:var(--green-dark);border-radius:11px;color:var(--lime);font-size:28px;font-weight:800;line-height:1}.shell{min-height:100vh}.sidebar{position:fixed;z-index:25;inset:0 auto 0 0;width:var(--sidebar);padding:30px 19px 20px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;margin:0 10px 36px}.brand strong{font-size:23px;letter-spacing:-1.2px;line-height:1}.brand small{display:block;font-size:10px;font-weight:600;letter-spacing:2.6px;margin-top:6px;color:#7e8984}.nav-label{font-size:9px;letter-spacing:1.7px;font-weight:700;color:#9bA39f;text-transform:uppercase;padding:0 14px;margin:10px 0 12px}.nav{display:grid;gap:5px}.nav a{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:8px;font-size:13px;font-weight:500;color:#78827e;transition:.15s}.nav a:hover{background:#f5f7f5;color:var(--green)}.nav a.active{color:var(--green);background:#edf3ed;font-weight:650}.nav-count{margin-left:auto;font-size:9px;padding:2px 6px;background:#dce9d8;border-radius:4px;letter-spacing:.4px}.sidebar-divider{height:1px;background:var(--line);margin:24px 13px 14px}.mini-lessons{display:grid;gap:6px;max-height:38vh;overflow:auto}.mini-lesson{font-size:11px;line-height:1.5;padding:8px 12px;display:flex;gap:9px;color:#849089;border-radius:6px}.mini-lesson.active{background:#f0f5ef;color:var(--green);font-weight:600}.mini-number{flex-shrink:0;width:20px;height:20px;border:1px solid #e5ebe5;border-radius:50%;display:grid;place-items:center;font-size:9px}.mini-lesson.active .mini-number{background:var(--green);color:white;border-color:var(--green)}.sidebar-bottom{margin-top:auto;padding-top:25px}.project-card{margin:0 4px 19px;padding:16px 13px;background:#f7f8f5;border:1px solid #e9ede3;border-radius:10px}.project-top{display:flex;gap:7px;align-items:center;font-size:10px;color:#808b76}.project-card p{font-size:12px;font-weight:550;line-height:1.6;margin:8px 0 13px}.text-button{border:0;background:none;padding:0;color:var(--green);display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:650}.sidebar-footer{display:flex;align-items:center;gap:10px;padding:10px 12px;color:#909995;font-size:11px}.status-dot{width:6px;height:6px;border-radius:50%;background:#879b7b;flex-shrink:0}.status-dot.connected{background:#3b9474}.workspace{margin-left:var(--sidebar)}.topbar{height:79px;border-bottom:1px solid var(--line);background:#ffffffbd;display:flex;align-items:center;justify-content:space-between;padding:0 38px;gap:15px}.breadcrumb{display:flex;align-items:center;gap:11px;color:#929a97;font-size:11px}.breadcrumb .current{color:#3a443f}.top-actions{display:flex;align-items:center;gap:20px}.search-trigger{border:1px solid #edf0ed;background:#fff;display:flex;align-items:center;gap:10px;color:#929b96;border-radius:7px;padding:8px 11px;font-size:11px}.search-trigger kbd{border:1px solid #e6ebe6;border-radius:3px;padding:2px 4px;color:#a5ada8;font-size:9px;margin-left:27px}.top-divider{width:1px;height:23px;background:var(--line)}.icon-btn{display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:white;width:34px;height:34px}.icon-btn:hover{background:#f3f6f3}.avatar{width:33px;height:33px;display:grid;place-items:center;background:#f0e9dc;color:#796c4e;border:3px solid white;border-radius:50%;font-size:10px;font-weight:650;box-shadow:0 0 0 1px #e8eae4}.mobile-menu{display:none}.content{max-width:1440px;margin:auto;padding:39px 38px 40px}.eyebrow{text-transform:uppercase;font-size:9px;letter-spacing:1.7px;font-weight:700;color:#89958b}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:27px}.page-heading h1{font-size:29px;letter-spacing:-1.1px;line-height:1.3;font-weight:600;margin:10px 0 9px}.page-heading p{font-size:12px;color:var(--muted);line-height:1.7;margin:0}.date-badge{font-size:10px;color:#8c9690;display:flex;gap:7px;align-items:center;padding-top:11px;white-space:nowrap}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 252px;gap:23px}.hero{position:relative;overflow:hidden;min-height:248px;border:1px solid #dae5d6;border-radius:13px;padding:29px 28px;background:linear-gradient(105deg,#eef4e9 0%,#e6eedf 100%);display:grid;grid-template-columns:1.1fr .9fr;gap:12px}.hero-copy{position:relative;z-index:1}.hero-label{display:inline-flex;align-items:center;gap:7px;color:#57744e;font-size:9px;font-weight:700;letter-spacing:1px}.hero h2{font-size:25px;line-height:1.35;letter-spacing:-.75px;font-weight:600;max-width:330px;margin:16px 0 11px}.hero p{max-width:310px;color:#7b8975;font-size:11px;line-height:1.75;margin:0 0 22px}.hero-actions{display:flex;gap:15px;align-items:center}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;border-radius:7px;border:1px solid #dfe6df;padding:11px 16px;background:white;font-size:11px;font-weight:600;line-height:1.35;transition:.15s;white-space:nowrap}.btn:hover{transform:translateY(-1px);box-shadow:0 3px 9px #163c3010}.btn.primary{background:var(--green);border-color:var(--green);color:white}.btn.lime{background:var(--lime);border-color:var(--lime);color:var(--green-dark)}.btn.ghost{background:transparent}.btn.small{padding:8px 12px;font-size:10px}.btn.full{width:100%}.duration{display:flex;align-items:center;gap:5px;color:#8b9884;font-size:10px;white-space:nowrap}.hero-art{position:relative;display:grid;place-items:center;min-width:0}.hero-art:before{content:'';position:absolute;width:270px;height:270px;border:1px solid #cfdcc6;border-radius:50%;opacity:.6}.hero-art:after{content:'';position:absolute;width:200px;height:200px;border:1px solid #cfdcc6;border-radius:50%;opacity:.8}.system-graphic{width:100%;max-width:290px;height:220px;z-index:1;overflow:visible}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 28px}.stat{background:white;border:1px solid var(--line);border-radius:9px;padding:15px 17px}.stat-top{display:flex;gap:7px;align-items:center;color:#89958f;font-size:10px;margin-bottom:10px}.stat-number{font-size:21px;letter-spacing:-.7px;font-weight:600}.stat-number small{font-size:11px;color:#a3aaa6;font-weight:400;letter-spacing:0;margin-left:3px}.stat-bottom{font-size:9px;color:#9ca69f;margin-top:4px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 14px}.section-heading h2{font-size:16px;font-weight:600;letter-spacing:-.3px;margin:0}.section-heading .muted{font-size:10px}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.module-card{display:block;border:1px solid var(--line);border-radius:10px;background:#fff;padding:19px 19px 16px;transition:.18s}.module-card:hover{border-color:#becfbd;box-shadow:var(--shadow);transform:translateY(-2px)}.module-top{display:flex;align-items:center;justify-content:space-between}.module-icon{width:35px;height:35px;border-radius:8px;display:grid;place-items:center}.module-icon.blue{background:#edf1f8;color:#7186a0}.module-icon.violet{background:#f0edf7;color:#8d7eaa}.module-icon.green{background:#edf3e9;color:#7b9668}.module-icon.amber{background:#f8f2e6;color:#ad996d}.pill{border:1px solid #e6eae5;border-radius:20px;padding:4px 8px;font-size:8px;color:#92a08e;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.pill.green{color:#4c7a4e;background:#f0f6ea;border-color:#e1ecd7}.pill.purple{color:#8b78a7;background:#f4f0fa;border-color:#e9e1f2}.module-card h3{font-size:14px;font-weight:600;margin:15px 0 7px;letter-spacing:-.2px}.module-card p{font-size:10px;line-height:1.7;color:#8f9992;min-height:33px;margin:0 0 18px}.module-meta{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:#a1aaa3;margin-bottom:9px}.progress-track{height:4px;border-radius:9px;overflow:hidden;background:#edf0ea}.progress-track>span{display:block;height:100%;background:#9cb88a;border-radius:9px}.dashboard-aside{display:flex;flex-direction:column;gap:18px}.aside-card{border:1px solid var(--line);border-radius:11px;background:white;padding:20px}.aside-heading{font-size:13px;font-weight:600;margin:0 0 5px;display:flex;align-items:center;justify-content:space-between;gap:5px}.aside-subtitle{font-size:10px;color:#98a099;line-height:1.6;margin:0 0 20px}.plan-step{display:flex;align-items:flex-start;gap:10px;position:relative;margin-bottom:23px}.plan-step:last-child{margin-bottom:0}.plan-step:not(:last-child):after{content:'';position:absolute;left:11px;top:29px;height:25px;width:1px;background:#e6ebe3}.step-dot{display:grid;place-items:center;border:1px solid #e5ebe1;width:24px;height:24px;border-radius:50%;font-size:9px;color:#9ba893;flex-shrink:0}.plan-step:first-of-type .step-dot{background:#f0f5e9;color:#6c8a5c;border-color:#d7e4cb}.step-text strong{font-size:10px;font-weight:600;display:block;margin:4px 0 4px}.step-text span{font-size:9px;color:#9ba498}.mentor-card{background:var(--green-dark);color:#edf4e9;border:0;position:relative;overflow:hidden;padding-top:23px}.mentor-card .sparkle-box{background:#ffffff0a;border:1px solid #ffffff19;width:37px;height:37px;border-radius:10px;display:grid;place-items:center;color:#d7ebaa;margin-bottom:16px}.mentor-card h3{font-size:17px;letter-spacing:-.3px;margin:0 0 10px;font-weight:500}.mentor-card p{font-size:10px;color:#a8bcb0;line-height:1.85;margin:0 0 20px}.mentor-card:after{content:'✧';position:absolute;font-size:160px;font-weight:200;line-height:1;right:-25px;top:-10px;color:#ffffff05;pointer-events:none}.mentor-card .btn{font-size:10px}.source-card{background:#fbfbf8;padding:17px 18px}.source-card p{font-size:10px;color:#8e978b;line-height:1.8;margin:9px 0 13px}.source-icons{display:flex;gap:5px;margin-top:14px}.source-icons span{border:1px solid #e8eade;background:#fff;padding:5px 6px;border-radius:5px;color:#7f8978;font-size:8px}.bottom-note{color:#a4ada5;font-size:9px;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:27px}.muted{color:var(--muted)}.filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:22px 0}.filter-chip{padding:8px 12px;border:1px solid var(--line);border-radius:6px;background:#fff;color:#7e8c83;font-size:11px}.filter-chip.active{background:var(--green);border-color:var(--green);color:#fff}.lesson-list{display:grid;gap:11px}.lesson-row{display:grid;grid-template-columns:43px 1fr auto;gap:16px;align-items:center;background:white;border:1px solid var(--line);border-radius:10px;padding:21px}.lesson-row:hover{border-color:#c6d7c5}.lesson-row-number{font-size:16px;color:#afbbb2;font-weight:500}.lesson-row h3{font-size:14px;letter-spacing:-.2px;margin:7px 0 6px;font-weight:600}.lesson-row p{font-size:11px;color:#8e9891;line-height:1.6;margin:0;max-width:690px}.row-meta{display:flex;gap:10px;align-items:center;margin-top:12px;font-size:9px;color:#98a497}.lesson-row-end{display:flex;gap:13px;align-items:center}.search-field{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:white;border-radius:8px;padding:12px 14px;color:#94a095}.search-field input{border:0;background:none;width:100%;font-size:12px;outline:0;box-shadow:none;color:var(--ink)}.library-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center}.library-toolbar .search-field{width:330px;max-width:100%}.empty-state{padding:55px 25px;text-align:center;border:1px dashed #d9e3d8;border-radius:12px;background:#fff;color:#8a978d}.empty-state h3{color:#45584b;font-weight:500}.empty-state p{font-size:12px;line-height:1.8}.lesson-layout{display:flex;align-items:stretch;min-height:calc(100vh - 79px)}.lesson-content{flex:1;min-width:0;padding:31px 36px 55px;max-width:980px;margin:0 auto}.back-link{display:inline-flex;gap:6px;align-items:center;font-size:10px;color:#85948a;margin-bottom:23px}.lesson-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:10px;color:#8c9b8f}.lesson-title{font-size:30px;font-weight:600;letter-spacing:-1px;line-height:1.3;margin:15px 0 12px}.lesson-summary{font-size:12px;color:#87948a;line-height:1.85;max-width:680px}.lesson-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.lesson-title-row .icon-btn{margin-top:15px;flex-shrink:0}.bookmark.active{color:#7d9960;background:#f1f6e9}.lesson-tabs{display:flex;align-items:center;gap:24px;border-bottom:1px solid #dfe6e0;margin:26px 0;overflow-x:auto;white-space:nowrap}.lesson-tabs button{border:0;border-bottom:2px solid transparent;background:none;padding:0 0 14px;color:#919b95;display:flex;gap:7px;align-items:center;font-size:11px}.lesson-tabs button.active{color:var(--green);border-bottom-color:var(--green);font-weight:600}.objectives{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px 21px;margin-bottom:24px}.objectives h3{font-size:11px;display:flex;align-items:center;gap:7px;font-weight:600;margin:0 0 12px}.objective-item{display:flex;align-items:flex-start;gap:9px;color:#819080;font-size:11px;line-height:1.7;margin:7px 0}.objective-item .icon{color:#8aa777;margin-top:2px;flex-shrink:0}.diagram-card{background:#f0f4ed;border:1px solid #dfe8db;border-radius:11px;padding:20px;margin:24px 0}.diagram-head{display:flex;align-items:center;gap:7px;font-size:10px;color:#73856a;margin-bottom:23px}.diagram-nodes{display:flex;align-items:stretch;justify-content:center;gap:5px}.diagram-node{flex:1;max-width:160px;min-width:0;background:#fff;border:1px solid #dbe4d7;border-radius:8px;box-shadow:0 4px 10px #60734b08;display:flex;flex-direction:column;align-items:center;text-align:center;padding:14px 7px}.diagram-node .icon{color:#86a272;margin-bottom:10px}.diagram-node strong{font-size:10px;font-weight:600;color:#4a5b43}.diagram-node span{font-size:8px;line-height:1.5;color:#9aa591;margin-top:5px}.diagram-arrow{display:flex;align-items:center;color:#a3b797}.diagram-caption{font-size:9px;color:#92a087;line-height:1.6;margin:17px 0 0;text-align:center}.article-section{margin:27px 0}.article-section h2{font-size:18px;font-weight:600;letter-spacing:-.35px;line-height:1.4;margin:0 0 13px}.article-section p{font-size:13px;color:#66776b;line-height:1.95;white-space:pre-line;margin:12px 0}.takeaway-box{border-left:3px solid #a9c78d;background:#eef4e8;padding:18px 21px;margin:28px 0;border-radius:0 8px 8px 0}.takeaway-box h3{font-size:12px;font-weight:600;margin:0 0 10px;color:#506746}.takeaway-box ul{padding-left:17px;margin:0;color:#7a8d6d;font-size:11px;line-height:1.9}.sources{border-top:1px solid var(--line);padding-top:19px;margin-top:25px}.sources h3{font-size:10px;font-weight:500;color:#97a294;margin:0 0 12px}.source-link{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#68805a;font-size:11px;padding:9px 0}.source-link:hover{text-decoration:underline}.lesson-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:30px 0 0;padding-top:20px;border-top:1px solid var(--line)}.tutor-panel{width:310px;flex-shrink:0;border-left:1px solid var(--line);background:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:calc(100vh - 79px);align-self:flex-start}.tutor-header{display:flex;justify-content:space-between;align-items:center;padding:21px 19px;border-bottom:1px solid var(--line)}.tutor-identity{display:flex;align-items:center;gap:10px}.tutor-identity .sparkle-box{width:32px;height:32px;display:grid;place-items:center;background:#eef4e8;color:#779565;border-radius:9px}.tutor-identity strong{font-size:12px;font-weight:600;display:block}.tutor-identity small{display:flex;align-items:center;gap:5px;color:#9da794;font-size:9px;margin-top:4px}.tutor-context{padding:14px 19px;background:#fbfcfa;border-bottom:1px solid var(--line)}.tutor-context span{font-size:8px;text-transform:uppercase;letter-spacing:1px;color:#a2ad9e}.tutor-context p{font-size:10px;line-height:1.6;color:#829574;margin:7px 0 0}.chat-messages{flex:1;overflow-y:auto;padding:20px 18px;scroll-behavior:smooth}.chat-intro .chat-orb{height:47px;width:47px;margin:7px auto 17px;border-radius:15px;background:linear-gradient(130deg,#e1edce,#f7f9f2);display:grid;place-items:center;color:#829969}.chat-intro h3{text-align:center;font-size:14px;font-weight:500;margin:0 0 9px}.chat-intro p{text-align:center;color:#9ca694;font-size:10px;line-height:1.8;margin:0 5px 18px}.connection-notice{border:1px solid #ece9df;background:#faf8f1;border-radius:8px;padding:12px;color:#a0926c;font-size:10px;line-height:1.7}.connection-notice strong{display:block;color:#8d7d53;font-weight:600;margin-bottom:5px}.connection-notice .text-button{color:#8d7d53;margin-top:9px}.chat-message{padding:12px 13px;border-radius:9px;font-size:11px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:12px;background:#f3f6ee;color:#66745e}.chat-message.user{background:#edf3ec;color:#526a4b;margin-left:21px}.chat-message.assistant{margin-right:8px;background:#f7f8f5}.chat-message small{display:block;font-size:8px;color:#9ba690;margin-bottom:6px}.chat-suggestions{padding:8px 17px;display:flex;flex-direction:column;align-items:flex-start;gap:7px}.chat-suggestions button{font-size:9px;background:white;border:1px solid #e8eee3;border-radius:6px;padding:7px 9px;color:#899b7d}.chat-suggestions button:hover{background:#f4f7ef}.chat-form{margin:9px 16px 17px;border:1px solid #e2e8dc;border-radius:9px;background:#fafbf7;padding:11px}.chat-form textarea{resize:none;width:100%;border:0;background:transparent;height:52px;font-size:10px;line-height:1.7;box-shadow:none;outline:0;color:#566e4a}.chat-form-bottom{display:flex;justify-content:space-between;align-items:center;gap:6px}.chat-form-bottom span{font-size:8px;color:#b0b8a8}.chat-send{border:0;border-radius:6px;background:var(--green);color:white;width:29px;height:28px;display:grid;place-items:center}.quiz-intro h2,.practice-content h2,.notes-content h2{font-size:21px;font-weight:600;letter-spacing:-.5px;margin:0 0 11px}.quiz-intro>p,.practice-content>p,.notes-content>p{font-size:12px;color:#8c9a8b;line-height:1.8}.question-card{border:1px solid var(--line);background:#fff;padding:21px;border-radius:10px;margin:17px 0}.question-number{font-size:9px;color:#9ca993;letter-spacing:1px;text-transform:uppercase}.question-card h3{font-size:13px;font-weight:550;line-height:1.7;margin:10px 0 15px}.quiz-option{display:flex;align-items:flex-start;gap:10px;border:1px solid #e8ece4;border-radius:7px;padding:12px;color:#889681;font-size:11px;line-height:1.7;margin-top:8px;cursor:pointer}.quiz-option:hover{background:#f8faf5}.quiz-option.selected{border-color:#a7bc95;background:#f3f7ed;color:#5d774e}.quiz-option input{accent-color:#3c6a4c;flex-shrink:0;margin-top:3px}.quiz-option.correct{border-color:#9fc391;background:#eff8e9}.quiz-option.wrong{border-color:#dfb9a7;background:#fff5ed}.explanation{font-size:11px;line-height:1.8;color:#859a72;margin-top:13px;background:#f3f7ed;padding:12px;border-radius:7px}.quiz-result{border:1px solid #d6e4c8;background:#edf5e5;border-radius:10px;padding:22px;display:flex;align-items:center;gap:16px;margin-bottom:20px}.quiz-score{width:54px;height:54px;display:grid;place-items:center;border:2px solid #acc795;border-radius:50%;font-size:17px;font-weight:600;flex-shrink:0;color:#5d7d4c}.quiz-result h3{font-size:14px;font-weight:600;margin:0 0 6px}.quiz-result p{font-size:11px;color:#8b9b7c;line-height:1.7;margin:0}.quiz-result.retry{background:#faf6ec;border-color:#e8ddbf}.practice-scenario{border:1px solid var(--line);background:#fff;padding:22px;border-radius:9px;margin:22px 0}.practice-scenario label{font-size:9px;color:#91a281;letter-spacing:1px;text-transform:uppercase;display:block;margin-bottom:10px}.practice-scenario p{font-size:12px;color:#6d7d63;line-height:1.9;white-space:pre-line;margin:0}.practice-scenario h3{font-size:13px;margin:21px 0 10px;font-weight:600}.checklist{padding:0;list-style:none;margin:14px 0 0}.checklist li{display:flex;gap:8px;font-size:11px;color:#899b7b;line-height:1.9;margin:7px 0}.checklist li .icon{flex-shrink:0;margin-top:3px}.field-label{font-size:11px;color:#778c6a;font-weight:600;display:block;margin-bottom:9px}.textarea{width:100%;min-height:180px;resize:vertical;border:1px solid #dde5d6;background:white;border-radius:9px;padding:16px;font-size:12px;line-height:1.9;color:#596f4c}.field-note{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#a4ae9a;margin:9px 0 16px;gap:10px}.feedback-card{margin-top:24px;padding:22px;border:1px solid #dfe7d6;border-radius:10px;background:#f3f7ed}.feedback-card h3{font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px}.feedback-card p{font-size:12px;line-height:1.9;color:#829370;white-space:pre-wrap}.feedback-card li{font-size:11px;color:#829370;line-height:1.9}.notes-content .textarea{min-height:340px}.radar-status{padding:13px 17px;background:#eff4e9;border:1px solid #e0e8d7;border-radius:8px;color:#82936f;font-size:10px;line-height:1.7;display:flex;gap:9px;align-items:flex-start;margin-bottom:24px}.radar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.radar-card{padding:23px;background:#fff;border:1px solid var(--line);border-radius:10px}.radar-card h3{font-size:16px;font-weight:550;line-height:1.55;margin:14px 0 10px;letter-spacing:-.2px}.radar-card p{font-size:11px;line-height:1.8;color:#8b9a80;margin:0 0 19px}.radar-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:#a0ab96}.radar-card-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.settings-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;max-width:1000px}.panel{padding:27px;background:#fff;border:1px solid var(--line);border-radius:11px}.panel h2{font-size:17px;font-weight:600;margin:0 0 9px;letter-spacing:-.3px}.panel>p{font-size:11px;line-height:1.8;color:#8e9c85}.form-field{margin:22px 0}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #e1e8da;background:#fcfdf9;border-radius:7px;padding:12px;font-size:12px;color:#657958}.form-field textarea{min-height:100px;resize:vertical;line-height:1.8}.settings-info{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #eff2eb;font-size:11px}.settings-info span{color:#99a58e}.settings-info strong{font-size:10px;font-weight:500;word-break:break-all}.settings-note{padding:15px;border:1px solid #e4eadb;background:#f7f9f2;border-radius:7px;font-size:11px;line-height:1.9;color:#8f9c7e;margin:22px 0}.settings-note code{font-size:10px;background:#edf1e5;padding:2px 4px;border-radius:3px;color:#7f916d}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#1c302b66;backdrop-filter:blur(5px);display:grid;place-items:center;padding:24px}.modal{width:560px;max-width:100%;max-height:90vh;overflow:auto;background:#fff;border:1px solid #e2e8dc;border-radius:15px;box-shadow:0 24px 100px #0e261c30;padding:27px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.modal h2{font-size:21px;font-weight:600;letter-spacing:-.6px;margin:0}.modal>p{font-size:12px;color:#94a088;line-height:1.9}.modal .search-field{margin-top:20px}.search-results{margin-top:12px;max-height:360px;overflow:auto}.search-result{display:block;padding:14px 6px;border-bottom:1px solid var(--line)}.search-result strong{font-size:12px;display:block;font-weight:500;margin-bottom:5px}.search-result span{font-size:10px;color:#9aa790}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(ellipse at top,#e3edda,#f8faf5 70%)}.login-box{width:380px;max-width:100%;padding:35px;background:white;border:1px solid #dfe8d7;border-radius:16px;box-shadow:var(--shadow)}.login-box .brand{margin:0 0 30px}.login-box h1{font-size:24px;font-weight:550;letter-spacing:-.7px}.login-box p{font-size:12px;color:#8e9c81;line-height:1.8}.error{color:#b3765c;font-size:11px;line-height:1.7}.toast-visible{opacity:1!important;transform:translate(-50%,0)!important}#toast{position:fixed;z-index:150;left:50%;bottom:26px;transform:translate(-50%,12px);background:#263f31;box-shadow:0 5px 25px #18271c30;color:#edf4e5;padding:13px 20px;border-radius:9px;max-width:90vw;font-size:12px;line-height:1.6;opacity:0;pointer-events:none;transition:.2s}.spinner{width:16px;height:16px;border:2px solid #c9d7be;border-top-color:#48733b;border-radius:50%;display:inline-block;animation:spin .8s linear infinite;vertical-align:middle}.loading-block{display:flex;align-items:center;gap:12px;justify-content:center;min-height:180px;color:#91a082;font-size:12px}.hidden{display:none!important}.saved-indicator{color:#84a066}.review-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e1e6cf;background:#f7f8ee;padding:14px 18px;border-radius:9px;margin-bottom:19px;font-size:11px;color:#91a178}.practice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.practice-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:23px}.practice-card h3{font-size:16px;line-height:1.5;letter-spacing:-.2px;font-weight:550;margin:14px 0 10px}.practice-card p{font-size:11px;line-height:1.8;color:#8d9b82;min-height:62px}.practice-card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:10px}.progress-overview{display:flex;gap:25px;align-items:center;padding:20px 25px;background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:25px}.progress-overview .progress-track{flex:1;height:6px}.progress-overview strong{font-size:13px;font-weight:500}.progress-overview span{font-size:10px;color:#93a086}.screen-reader{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}input[type=range]{accent-color:var(--green)}.offline-banner{background:#fbf3e8;color:#9f865c;font-size:11px;padding:13px 20px;border-bottom:1px solid #efdfc5}
@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1600px){.content{padding-top:45px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 280px;gap:28px}.hero{min-height:285px;padding:36px}.hero h2{font-size:29px}.module-card{padding:24px}.tutor-panel{width:350px}.lesson-content{padding:40px 54px}}
@media(max-width:1200px){:root{--sidebar:205px}.sidebar{padding:26px 13px 18px}.topbar{padding:0 25px}.content{padding:30px 25px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 225px;gap:18px}.hero{padding:25px 23px;grid-template-columns:1.2fr .8fr}.hero h2{font-size:22px}.hero-art{opacity:.9}.system-graphic{height:190px}.hero-art:before{width:210px;height:210px}.hero-art:after{width:160px;height:160px}.lesson-content{padding:28px 26px}.tutor-panel{width:280px}.lesson-title{font-size:26px}.diagram-node{padding:12px 4px}.diagram-node strong{font-size:9px}.diagram-node span{font-size:7px}}
@media(max-width:1050px){.dashboard-grid{grid-template-columns:1fr}.dashboard-aside{display:grid;grid-template-columns:repeat(3,1fr);align-items:stretch}.aside-card{padding:18px}.hero{grid-template-columns:1.25fr 1fr;min-height:260px}.hero h2{font-size:27px}.hero-art{max-width:320px;justify-self:end;width:100%}.system-graphic{height:220px}.tutor-panel{position:fixed;top:79px;right:0;z-index:40;width:325px;box-shadow:-15px 0 50px #1d352117;height:calc(100dvh - 79px)}.lesson-content{max-width:900px;width:100%}.settings-grid{grid-template-columns:1fr 1fr}.date-badge{display:none}.source-card p{margin-bottom:19px}}
@media(max-width:780px){:root{--sidebar:0px}.sidebar{width:236px;transform:translateX(-100%);transition:transform .2s;box-shadow:15px 0 40px #213b2412}.sidebar.open{transform:translateX(0)}.mobile-menu{display:inline-grid}.topbar{height:66px;padding:0 20px}.top-actions{gap:12px}.top-divider{display:none}.search-trigger{padding:7px}.search-trigger span,.search-trigger kbd{display:none}.breadcrumb{font-size:10px;gap:7px}.content{padding:29px 20px}.page-heading h1{font-size:27px}.dashboard-aside{grid-template-columns:1fr 1fr}.dashboard-aside .source-card{display:none}.hero h2{font-size:24px}.hero{padding:24px}.stats{gap:9px}.stat{padding:14px}.tutor-panel{top:66px;height:calc(100dvh - 66px);width:min(360px,100vw)}.lesson-layout{min-height:calc(100vh - 66px)}.lesson-content{padding:25px 21px}.lesson-title{font-size:27px}.lesson-tabs{gap:22px}.settings-grid{grid-template-columns:1fr}.lesson-row{padding:18px;gap:9px;grid-template-columns:30px 1fr auto}.lesson-row .duration{display:none}.radar-grid{gap:12px}.radar-card{padding:18px}.library-toolbar{align-items:stretch}.library-toolbar .search-field{width:auto;flex:1}.mobile-nav-shade{position:fixed;z-index:24;inset:0;background:#243b2c55}.topbar .btn{font-size:10px;padding:8px}.practice-grid{gap:12px}.practice-card{padding:20px}}
@media(max-width:520px){.content{padding:26px 17px}.page-heading{gap:10px;flex-wrap:wrap}.page-heading h1{font-size:25px}.page-heading p{font-size:11px}.hero{grid-template-columns:1fr;min-height:235px;padding:26px 22px}.hero h2{max-width:230px;font-size:25px}.hero p{max-width:225px}.hero-art{position:absolute;right:-60px;top:35px;width:200px;opacity:.38;pointer-events:none}.hero-copy{padding-right:30px}.hero-actions{gap:12px}.hero .btn{font-size:10px}.stats{gap:7px;margin:13px 0 24px}.stat{padding:12px 10px}.stat-top{font-size:8px;gap:4px}.stat-top .icon{width:12px;height:12px}.stat-number{font-size:19px}.stat-number small{font-size:9px}.stat-bottom{font-size:8px}.module-grid{gap:10px}.module-card{padding:15px 13px}.module-card h3{font-size:12px}.module-card p{font-size:9px;min-height:47px}.module-meta{font-size:8px}.module-icon{width:31px;height:31px}.module-card .pill{font-size:7px;padding:3px 5px}.dashboard-aside{gap:11px;margin-top:0}.aside-card{padding:17px 14px}.aside-heading{font-size:12px}.aside-subtitle{font-size:9px}.mentor-card h3{font-size:16px}.mentor-card p{font-size:9px}.mentor-card .btn{font-size:9px;padding:10px}.topbar{padding:0 15px}.breadcrumb .breadcrumb-home{display:none}.top-actions{gap:9px}.topbar .tutor-label{display:none}.topbar .btn{padding:8px}.library-toolbar{flex-wrap:wrap}.library-toolbar .search-field{width:100%;flex:auto}.library-toolbar .btn{width:100%}.filter-bar{gap:6px}.filter-chip{font-size:9px;padding:7px 9px}.lesson-row{grid-template-columns:22px 1fr 20px;padding:16px 12px}.lesson-row h3{font-size:13px}.lesson-row p{font-size:10px}.lesson-row-number{font-size:13px}.lesson-row .bookmark{display:none}.lesson-row .pill{font-size:7px}.lesson-row-end{gap:0}.lesson-title{font-size:25px}.lesson-tabs{gap:17px}.lesson-tabs button{font-size:10px}.lesson-tabs .icon{width:14px}.objectives{padding:16px}.diagram-card{padding:18px 12px}.diagram-nodes{flex-direction:column;align-items:center;gap:7px}.diagram-node{flex:initial;width:100%;max-width:100%;display:grid;grid-template-columns:25px 1fr;gap:4px;text-align:left;padding:12px 16px;align-items:center}.diagram-node .icon{margin:0;grid-row:1/3}.diagram-node strong{font-size:11px}.diagram-node span{font-size:9px;margin:0}.diagram-arrow{transform:rotate(90deg)}.diagram-arrow .icon{width:14px;height:14px}.diagram-head{font-size:9px}.article-section p{font-size:12px}.article-section h2{font-size:17px}.lesson-bottom{flex-wrap:wrap;gap:12px}.lesson-bottom .btn{flex:1}.radar-grid,.practice-grid{grid-template-columns:1fr}.radar-card h3{font-size:16px}.practice-card p{min-height:0}.modal-backdrop{padding:15px}.modal{padding:22px}.progress-overview{padding:16px;gap:12px;flex-wrap:wrap}.progress-overview .progress-track{min-width:100%;order:3}.panel{padding:23px}.question-card{padding:17px}.quiz-result{padding:17px}.quiz-option{font-size:10px}.bottom-note{font-size:8px}.nav-label{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.connection-notice .text-button{display:flex;width:fit-content}
