*,:after,:before{box-sizing:border-box}:root{--background:#f5f8ff;--background-soft:#eef3fb;--surface:#fff;--surface-soft:#f8faff;--text:#172033;--text-secondary:#64748b;--text-light:#8a98ad;--border:#e3e9f3;--border-strong:#d5deed;--primary:#4f46e5;--primary-dark:#3730a3;--blue:#2563eb;--sky:#38bdf8;--violet:#8b5cf6;--teal:#14b8a6;--green:#10b981;--amber:#f59e0b;--amber-light:#fff6dc;--coral:#f97360;--red:#ef476f;--shadow-small:0 8px 24px rgba(32,54,92,.06);--shadow:0 18px 50px rgba(32,54,92,.09);--shadow-strong:0 22px 60px rgba(31,49,99,.14)}body,html{width:100%;min-width:0;max-width:100%;min-height:100%;margin:0;padding:0;overflow-x:hidden}html{scroll-behavior:smooth}body{color:var(--text);background:radial-gradient(circle at 8% 8%,rgba(56,189,248,.08),transparent 26%),radial-gradient(circle at 94% 18%,rgba(139,92,246,.07),transparent 28%),var(--background);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}button:hover:not(:disabled){transform:translateY(-1px)}button:disabled{opacity:.55;cursor:not-allowed}img{display:block;max-width:100%}.app-page{width:100%;min-width:0;min-height:100vh;padding:0 24px 80px}.app-shell{width:min(1180px,100%);min-width:0;margin:0 auto}.section-eyebrow{margin-bottom:7px;color:#71809a;font-size:12px;font-weight:800;letter-spacing:1.25px;text-transform:uppercase}.btn{min-height:42px;padding:10px 16px;border:0;border-radius:13px;cursor:pointer;font-weight:800}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--primary),var(--blue));box-shadow:0 10px 22px rgba(79,70,229,.22)}.btn-primary:hover:not(:disabled){box-shadow:0 14px 28px rgba(79,70,229,.3)}.btn-soft{color:#52627d;background:#edf2f8}.form-field{width:100%;min-width:0;display:grid;grid-gap:7px;gap:7px}.form-label{color:#53617a;font-size:13px;font-weight:800}.input,.select,.textarea{width:100%;min-width:0;border:1px solid var(--border-strong);border-radius:14px;color:var(--text);background:#fff}.input,.select{min-height:46px;padding:11px 13px}.textarea{padding:14px;resize:vertical;line-height:1.6}.input:focus,.select:focus,.textarea:focus{outline:3px solid rgba(79,70,229,.12);border-color:#9b9ff3}.app-header{width:100%;min-width:0;min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}.new-app-header{border-bottom:1px solid rgba(218,226,240,.65)}.app-brand{min-width:0;display:flex;align-items:center;gap:11px}.app-logo{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(145deg,var(--primary),var(--violet));box-shadow:0 10px 22px rgba(79,70,229,.2)}.app-brand-name,.app-logo{font-size:19px;font-weight:900}.app-brand-name{letter-spacing:-.4px}.app-brand-subtitle{margin-top:2px;color:var(--text-secondary);font-size:11px}.home-desktop-nav{display:flex;align-items:center;gap:4px;padding:5px;border:1px solid var(--border);border-radius:16px;background:hsla(0,0%,100%,.78);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.home-nav-link{min-height:40px;padding:8px 13px;display:flex;align-items:center;gap:7px;border-radius:12px;color:#71809a;font-size:13px;font-weight:750}.home-nav-link span{font-size:16px}.home-nav-link.active{color:var(--primary);background:#edf0ff}.home-header-account{display:flex;align-items:center;gap:9px}.home-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--primary);background:#e9edff;font-weight:900}.home-heading,.practice-page-heading,.progress-page-heading,.tutor-page-heading{width:100%;min-width:0;margin-top:32px;display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.home-title,.practice-page-heading h1,.progress-page-heading h1,.tutor-page-heading h1{margin:0;font-size:clamp(34px,5vw,52px);line-height:1.04;letter-spacing:-1.8px}.home-subtitle,.practice-page-heading p,.progress-page-heading p,.tutor-page-heading p{margin:10px 0 0;color:var(--text-secondary);font-size:16px;line-height:1.6}.home-quote-card,.progress-heading-message,.tutor-heading-message{max-width:280px;padding:16px 19px;display:grid;grid-gap:3px;gap:3px;border:1px solid #e4e7fb;border-radius:18px;background:linear-gradient(135deg,#f8f9ff,#eff1ff);color:#697895;line-height:1.45}.home-quote-card strong,.progress-heading-message strong{color:var(--primary)}.tutor-heading-message strong{color:var(--violet)}.home-level-strip{width:100%;min-width:0;margin-top:25px;padding:18px;display:grid;grid-template-columns:auto auto minmax(190px,1fr) auto auto;grid-gap:18px;gap:18px;align-items:center;border:1px solid var(--border);border-radius:22px;background:#fff;box-shadow:var(--shadow-small)}.home-level-badge{width:56px;height:56px;display:grid;place-items:center;border-radius:18px;color:#fff;background:linear-gradient(145deg,var(--primary),var(--violet));box-shadow:inset 0 0 0 5px hsla(0,0%,100%,.13);font-size:20px;font-weight:900}.home-level-copy{display:grid;grid-gap:3px;gap:3px}.home-level-copy span{color:var(--text-secondary);font-size:11px}.home-level-copy strong{font-size:17px}.home-level-progress{min-width:0;display:grid;grid-gap:7px;gap:7px}.home-level-progress-top{display:flex;justify-content:space-between;gap:10px;color:var(--text-secondary);font-size:11px}.home-level-progress-top strong{color:var(--primary)}.home-progress-track{width:100%;height:10px;overflow:hidden;border-radius:999px;background:#edf1f7}.home-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--blue))}.home-level-progress small{color:var(--text-light);font-size:10px}.home-level-stat{min-width:120px;display:grid;grid-template-columns:36px 1fr;grid-gap:9px;gap:9px;align-items:center}.home-level-stat>div:last-child{display:grid;grid-gap:2px;gap:2px}.home-level-stat strong{font-size:14px}.home-level-stat span{color:var(--text-secondary);font-size:10px}.home-stat-symbol{width:36px;height:36px;display:grid;place-items:center;border-radius:50%}.home-stat-symbol.xp{color:#bd7600;background:#fff2ce}.home-stat-symbol.streak{background:#fff0e8}.home-continue-card{position:relative;width:100%;min-width:0;margin-top:18px;padding:35px;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:30px;gap:30px;align-items:center;border-radius:28px;color:#fff;background:radial-gradient(circle at 83% 18%,rgba(139,92,246,.95),transparent 37%),linear-gradient(135deg,#1748c9,#435be8);box-shadow:0 24px 55px rgba(48,70,180,.22)}.home-light-eyebrow{color:#ccd6ff}.home-continue-copy h2{margin:0;font-size:clamp(31px,4vw,45px);letter-spacing:-1px}.home-continue-copy p{max-width:610px;margin:13px 0 22px;color:#e0e6ff;line-height:1.65}.home-primary-light-button{width:-moz-fit-content;width:fit-content;min-height:45px;padding:12px 17px;display:inline-flex;align-items:center;gap:10px;border-radius:13px;color:var(--primary);background:#fff;font-weight:850}.home-continue-art{position:relative;min-height:170px}.home-notebook{position:absolute;width:190px;min-height:140px;right:75px;top:7px;padding:22px;display:grid;grid-gap:6px;gap:6px;border-radius:20px;color:#29439e;background:#fff;box-shadow:0 18px 38px rgba(16,28,88,.24);transform:rotate(-7deg);font-weight:800}.home-notebook strong{color:var(--green);font-size:25px}.home-calculator{position:absolute;width:104px;height:120px;right:0;bottom:6px;display:grid;place-items:center;border-radius:20px;color:#fff;background:linear-gradient(145deg,#17285e,#2a459c);box-shadow:0 18px 35px rgba(16,28,88,.3);transform:rotate(8deg);font-size:43px}.home-dashboard-grid{width:100%;min-width:0;margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.home-card{min-width:0;padding:24px;border:1px solid var(--border);border-radius:23px;background:#fff;box-shadow:var(--shadow-small)}.home-card-header{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.home-card-header h2{margin:0;font-size:24px;letter-spacing:-.6px}.home-card-header>div:first-child>span{color:var(--text-secondary);font-size:12px}.home-card-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;font-size:21px}.home-card-icon.goal{background:#fff0f0}.home-card-icon.recommended{color:var(--amber);background:#fff7df}.home-card-icon.mission{color:var(--blue);background:#edf4ff}.home-big-progress-track{width:100%;height:11px;margin-top:20px;overflow:hidden;border-radius:999px;background:#edf1f7}.home-big-progress-fill{height:100%;border-radius:inherit}.home-big-progress-fill.blue{background:linear-gradient(90deg,var(--primary),var(--blue))}.home-big-progress-fill.green{background:linear-gradient(90deg,var(--teal),var(--green))}.home-goal-message{margin-top:17px;padding:12px 13px;display:flex;align-items:center;gap:9px;border-radius:13px;color:#5c6b81;background:#f8faff;font-size:12px;line-height:1.4}.home-card-description{min-height:40px;margin:14px 0 0;color:var(--text-secondary);line-height:1.5}.home-card-button{min-height:45px;margin-top:18px;display:flex;justify-content:center;border-radius:13px;color:#fff;background:linear-gradient(135deg,var(--primary),var(--blue));font-weight:850}.home-card-button,.home-mission-row{width:100%;align-items:center;gap:10px}.home-mission-row{min-width:0;margin-top:10px;padding:12px 13px;display:grid;grid-template-columns:25px minmax(0,1fr) auto;grid-gap:10px;border:1px solid var(--border);border-radius:14px;color:#56647c;background:#fbfcff;font-size:13px}.home-mission-row.completed{color:#315b50;background:#f3fdfa}.home-mission-check{width:24px;height:24px;display:grid;place-items:center;border:2px solid #ccd6e6;border-radius:7px;color:#fff;font-weight:900}.home-mission-row.completed
.home-mission-check{border-color:var(--green);background:var(--green)}.home-mission-row strong{color:#d98500;font-size:11px}.home-weekly-xp{color:var(--primary);font-size:13px}.home-week-chart{height:185px;margin-top:19px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.home-week-column{height:100%;flex:1 1;min-width:0;display:grid;grid-template-rows:auto 1fr auto;grid-gap:6px;gap:6px;justify-items:center}.home-week-column>span{color:var(--text-secondary);font-size:10px}.home-week-bar-track{width:min(34px,100%);height:100%;display:flex;align-items:flex-end;overflow:hidden;border-radius:8px 8px 0 0;background:#edf1f7}.home-week-bar{width:100%;min-height:6px;border-radius:8px 8px 0 0;background:linear-gradient(180deg,var(--sky),var(--primary))}.home-week-column small{color:var(--text-secondary);font-size:10px}.home-skill-summary{width:100%;min-width:0;margin-top:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.home-skill-summary>div{padding:17px;display:grid;grid-gap:4px;gap:4px;border:1px solid var(--border);border-radius:17px;background:#fff;text-align:center}.home-skill-summary span{color:var(--text-secondary);font-size:11px;text-transform:uppercase;letter-spacing:.6px}.home-skill-summary strong{font-size:25px}.practice-status-pills{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.practice-status-pill{min-height:48px;padding:9px 13px;display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:15px;background:#fff;box-shadow:var(--shadow-small)}.practice-status-pill>div{display:grid;grid-gap:2px;gap:2px}.practice-status-pill strong{font-size:12px}.practice-status-pill span{color:var(--text-secondary);font-size:9px}.practice-toolbar-new{width:100%;min-width:0;margin-top:22px;padding:18px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:end;border:1px solid var(--border);border-radius:20px;background:#fff;box-shadow:var(--shadow-small)}.practice-start-button{min-width:150px}.practice-skill-card{width:100%;min-width:0;margin-top:18px;padding:20px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:16px;gap:16px;align-items:center;border:1px solid #d9eee8;border-radius:22px;background:linear-gradient(135deg,#f5fffc,#fff);box-shadow:var(--shadow-small)}.practice-skill-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;color:#fff;background:linear-gradient(145deg,var(--teal),var(--green));font-size:25px;font-weight:900}.practice-skill-copy>span{color:var(--text-secondary);font-size:11px}.practice-skill-copy h2{margin:3px 0;font-size:25px}.practice-skill-copy p{margin:0;color:var(--text-secondary);font-size:12px}.practice-xp-badge{padding:10px 13px;display:grid;justify-items:center;border-radius:14px;color:#b77400;background:var(--amber-light);font-size:12px}.practice-xp-badge strong{margin-top:2px;font-size:13px}.practice-xp-badge span{margin-top:1px;font-size:9px}.practice-question-card{width:100%;min-width:0;margin-top:18px;padding:27px;border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:var(--shadow)}.practice-question-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.practice-question-top>div:first-child{display:flex;align-items:center;gap:10px}.practice-question-label{font-weight:850}.practice-mark-pill{padding:6px 10px;border-radius:999px;color:#5c6980;background:#f0f3f8;font-size:11px;font-weight:750}.practice-hint-label{color:var(--text-secondary);font-size:11px}.practice-question-text{margin:28px 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:clamp(21px,3vw,30px);font-weight:750;line-height:1.55}.practice-adaptive-note{margin:-9px 0 21px;padding:13px 15px;display:grid;grid-gap:4px;gap:4px;border-radius:14px;color:#56647d;background:#f5f7ff;font-size:12px;line-height:1.45}.practice-answer-box{min-height:170px}.practice-upload-zone{width:100%;min-width:0;margin-top:14px;padding:16px;display:flex;align-items:center;justify-content:center;gap:12px;border:1px dashed #b9c8df;border-radius:15px;color:#47556f;background:#f8fbff;cursor:pointer}.practice-upload-icon{font-size:25px}.practice-upload-zone>div:last-child{display:grid;grid-gap:3px;gap:3px;text-align:left}.practice-upload-zone span{color:var(--text-secondary);font-size:10px}.practice-image-selected{width:100%;min-width:0;margin-top:12px;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-gap:12px;gap:12px;align-items:center;border:1px solid var(--border);border-radius:14px;background:#fbfcff}.practice-image-file{min-width:0;display:grid;grid-gap:3px;gap:3px}.practice-image-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.practice-image-file span{color:var(--green);font-size:11px}.practice-answer-preview{width:68px;height:68px;border-radius:10px;object-fit:cover}.practice-no-preview{max-width:130px;color:var(--text-secondary);font-size:10px;text-align:center}.practice-check-button,.practice-next-button{width:100%;min-height:52px;margin-top:18px;font-size:15px}.practice-result-card{width:100%;min-width:0;margin-top:18px;padding:24px;border:1px solid;border-radius:24px;box-shadow:var(--shadow-small)}.practice-result-card.success{border-color:#cceee1;background:linear-gradient(135deg,#f3fff9,#fff)}.practice-result-card.developing{border-color:#f3ddad;background:linear-gradient(135deg,#fff9ec,#fff)}.practice-result-top{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:15px;gap:15px;align-items:center}.practice-result-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--green);font-size:28px;font-weight:900}.practice-result-copy>span{color:var(--text-secondary);font-size:11px}.practice-result-copy h2{margin:4px 0;font-size:27px}.practice-result-copy p{margin:0;color:var(--text-secondary);font-size:12px}.practice-result-xp{padding:10px 13px;display:grid;justify-items:center;border-radius:14px;color:#b77400;background:var(--amber-light)}.practice-result-xp strong{font-size:14px}.practice-result-xp span{margin-top:2px;font-size:9px}.practice-mastery-change{margin-top:20px;padding:15px;border-radius:16px;background:#fff}.practice-mastery-change-top{display:flex;justify-content:space-between;gap:12px;font-size:13px}.practice-mastery-change-top span{color:var(--green);font-weight:850}.practice-mastery-track{width:100%;height:11px;margin-top:11px;overflow:hidden;border-radius:999px;background:#edf1f7}.practice-mastery-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--green))}.practice-feedback-card{width:100%;min-width:0;margin-top:18px;padding:24px;border:1px solid var(--border);border-radius:22px;background:#fff;box-shadow:var(--shadow-small)}.practice-feedback-card h2{margin:0 0 13px}.practice-feedback-content{white-space:pre-wrap;overflow-wrap:anywhere;color:#44526a;line-height:1.65}.practice-empty-new{width:100%;min-width:0;margin-top:18px;padding:70px 24px;display:grid;justify-items:center;border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:var(--shadow-small);text-align:center}.practice-empty-icon{width:62px;height:62px;margin-bottom:14px;display:grid;place-items:center;border-radius:20px;color:var(--primary);background:#edf0ff;font-size:29px}.practice-empty-new h2{margin:0;font-size:29px}.practice-empty-new p{max-width:520px;margin:12px auto 20px;color:var(--text-secondary);line-height:1.6}.tutor-page{background:radial-gradient(circle at 96% 20%,rgba(139,92,246,.09),transparent 27%),var(--background)}.tutor-ai-badge,.tutor-page-heading{align-items:center}.tutor-ai-badge{min-width:154px;padding:12px 15px;display:flex;gap:10px;border:1px solid #e7e2fb;border-radius:17px;background:linear-gradient(135deg,#fbfaff,#f4f1ff);box-shadow:var(--shadow-small)}.tutor-ai-badge>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(145deg,var(--violet),var(--primary));font-size:18px}.tutor-ai-badge>div{display:grid;grid-gap:2px;gap:2px}.tutor-ai-badge strong{font-size:13px}.tutor-ai-badge small{color:var(--text-secondary);font-size:10px}.tutor-layout{width:100%;min-width:0;margin-top:22px;display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-gap:18px;gap:18px;align-items:flex-start}.tutor-chat-card{min-width:0;padding:20px;border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:var(--shadow-small)}.tutor-chat-header{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:14px}.tutor-chat-header>div:first-child{display:flex;align-items:center;gap:8px}.tutor-online-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(16,185,129,.12)}.tutor-hint-toggle{min-height:36px;padding:7px 12px;border:1px solid #dfd8ff;border-radius:999px;color:#6553aa;background:#f6f2ff;cursor:pointer;font-size:11px;font-weight:800}.tutor-hint-toggle.active{color:#fff;border-color:var(--violet);background:var(--violet)}.tutor-messages{min-height:470px;max-height:720px;margin-top:16px;padding:20px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:12px;border:1px solid #edf0f8;border-radius:20px;background:linear-gradient(180deg,#fbfcff,#f7f8ff)}.tutor-welcome{width:min(520px,100%);margin:auto;padding:34px 18px;text-align:center}.tutor-welcome-icon{width:67px;height:67px;margin:0 auto 15px;display:grid;place-items:center;border-radius:22px;color:#fff;background:linear-gradient(145deg,var(--primary),var(--violet));font-size:29px;box-shadow:0 14px 30px rgba(79,70,229,.19)}.tutor-welcome h2{margin:0;font-size:29px}.tutor-welcome p{max-width:470px;margin:12px auto 18px;color:var(--text-secondary);line-height:1.6}.tutor-suggestion-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px}.tutor-quick-prompts button,.tutor-suggestion-grid button{width:100%;min-width:0;padding:11px 12px;border:1px solid #e7e5f8;border-radius:12px;color:#505171;background:#faf9ff;cursor:pointer;font-size:12px;font-weight:750;text-align:left}.tutor-quick-prompts button:hover:not(:disabled),.tutor-suggestion-grid button:hover:not(:disabled){border-color:#cec8f4;background:#f4f1ff}.tutor-message{width:-moz-fit-content;width:fit-content;max-width:84%;padding:14px 16px;border-radius:18px;line-height:1.6}.tutor-message.user{margin-left:auto;color:#24375c;background:#eaf2ff;border-radius:18px 18px 5px 18px}.tutor-message.assistant{margin-right:auto;border:1px solid #e9e6fb;background:#fff;border-radius:18px 18px 18px 5px;box-shadow:0 6px 18px rgba(45,55,90,.04)}.tutor-message-role{display:block;margin-bottom:6px;color:#7c899f;font-size:9px;font-weight:850;letter-spacing:.8px;text-transform:uppercase}.tutor-message-content{white-space:pre-wrap;overflow-wrap:anywhere}.tutor-typing{min-width:58px;padding:3px 0;display:flex;align-items:center;gap:5px}.tutor-typing span{width:7px;height:7px;border-radius:50%;background:var(--violet)}.tutor-selected-image{width:100%;min-width:0;margin-top:12px;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-gap:12px;gap:12px;align-items:center;border:1px solid var(--border);border-radius:15px;background:#fbfcff}.tutor-selected-image>div:first-child{min-width:0;display:grid;grid-gap:3px;gap:3px}.tutor-selected-image strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tutor-selected-image span{color:var(--green);font-size:10px}.tutor-selected-image img{width:72px;height:72px;border-radius:11px;object-fit:cover}.tutor-composer{margin-top:14px;padding:14px;border:1px solid var(--border);border-radius:18px;background:#fbfcff}.tutor-composer textarea{width:100%;min-width:0;min-height:104px;padding:13px 14px;resize:vertical;border:1px solid var(--border-strong);border-radius:14px;outline:none;color:var(--text);background:#fff;line-height:1.55}.tutor-composer textarea:focus{border-color:#9b9ff3;box-shadow:0 0 0 3px rgba(79,70,229,.11)}.tutor-composer-actions{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:12px}.tutor-composer-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tutor-side-column{min-width:0;display:grid;grid-gap:14px;gap:14px}.tutor-side-card{width:100%;min-width:0;padding:20px;border:1px solid var(--border);border-radius:21px;background:#fff;box-shadow:var(--shadow-small)}.tutor-side-card.violet{border-color:#e5defd;background:linear-gradient(145deg,#fbfaff,#f4f0ff)}.tutor-side-card h3{margin:0 0 8px;font-size:17px}.tutor-side-card p{margin:8px 0 14px;color:var(--text-secondary);font-size:12px;line-height:1.55}.tutor-side-icon{width:42px;height:42px;margin-bottom:11px;display:grid;place-items:center;border-radius:13px;background:#f0edff;font-size:20px}.tutor-side-card>.btn{max-width:100%}.tutor-history-list,.tutor-quick-prompts{display:grid;grid-gap:8px;gap:8px}.tutor-history-list{max-height:340px;margin-top:16px;padding-right:4px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.tutor-history-list::-webkit-scrollbar{width:7px}.tutor-history-list::-webkit-scrollbar-track{background:transparent}.tutor-history-list::-webkit-scrollbar-thumb{border-radius:999px;background:#d7deeb}.tutor-history-list::-webkit-scrollbar-thumb:hover{background:#bcc7d8}.tutor-side-card
.btn.btn-primary,.tutor-side-card
.btn.btn-soft{display:flex;align-items:center;justify-content:center}.tutor-side-card
button[style*=justify-content]{justify-content:flex-start!important}@media (max-width:1000px){.tutor-layout{grid-template-columns:minmax(0,1fr)}.tutor-side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.tutor-side-column .tutor-side-card:first-child{grid-column:1/-1}}@media (max-width:700px){.tutor-page-heading{align-items:flex-start}.tutor-ai-badge{width:100%}.tutor-chat-card{padding:15px}.tutor-messages{min-height:390px;max-height:none;padding:14px}.tutor-suggestion-grid{grid-template-columns:minmax(0,1fr)}.tutor-composer-actions{align-items:stretch;flex-direction:column}.tutor-composer-tools{width:100%}.tutor-composer-tools .btn{flex:1 1 auto}.tutor-composer-actions>.btn{width:100%}.tutor-selected-image{grid-template-columns:minmax(0,1fr) auto}.tutor-selected-image img{grid-column:2;grid-row:1/span 2}.tutor-selected-image .btn{grid-column:1/-1}.tutor-side-column{grid-template-columns:minmax(0,1fr)}.tutor-side-column .tutor-side-card:first-child{grid-column:auto}}@media (max-width:480px){.tutor-chat-card{padding:12px}.tutor-chat-header{align-items:flex-start;flex-direction:column}.tutor-hint-toggle{width:100%}.tutor-welcome{padding:24px 8px}.tutor-welcome h2{font-size:26px}.tutor-composer{padding:10px}}.progress-stat-grid{width:100%;min-width:0;margin-top:22px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}.progress-stat-card{min-width:0;padding:20px;display:grid;border:1px solid var(--border);border-radius:20px;background:#fff;box-shadow:var(--shadow-small)}.progress-stat-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;font-weight:900}.progress-stat-icon.blue{color:var(--primary);background:#e9efff}.progress-stat-icon.green{color:#078d63;background:#ddf8ee}.progress-stat-icon.amber{color:#be7800;background:#fff2cf}.progress-stat-icon.violet{color:var(--violet);background:#eee9ff}.progress-stat-value{margin-top:13px;font-size:31px;letter-spacing:-.7px}.progress-stat-label{margin-top:4px;color:#53627b;font-size:12px;font-weight:750}.progress-stat-helper{margin-top:4px;color:var(--text-light);font-size:10px}.progress-achievement-card,.progress-history-card,.progress-mastery-card,.progress-next-card,.progress-skills-card,.progress-week-card{width:100%;min-width:0;border:1px solid var(--border);border-radius:23px;background:#fff;box-shadow:var(--shadow-small)}.progress-mastery-card{margin-top:18px;padding:24px}.progress-section-header{min-width:0;display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.progress-section-header h2{margin:0;letter-spacing:-.4px}.progress-text-link{color:var(--primary);font-size:12px;font-weight:850}.progress-mastery-grid{width:100%;min-width:0;margin-top:20px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:11px;gap:11px}.progress-mastery-bucket{min-width:0;padding:18px;display:grid;grid-gap:4px;gap:4px;border-radius:18px;text-align:center}.progress-mastery-bucket strong{font-size:30px}.progress-mastery-bucket span{font-weight:850}.progress-mastery-bucket small{margin-top:4px;color:#66758c;font-size:10px;line-height:1.35}.progress-mastery-bucket.weak{color:#d23d55;background:#fff0f2}.progress-mastery-bucket.developing{color:#b66d00;background:#fff5dc}.progress-mastery-bucket.secure{color:#1767c9;background:#eaf4ff}.progress-mastery-bucket.mastered{color:#087e5a;background:#e4faf1}.progress-main-grid{width:100%;min-width:0;margin-top:18px;display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-gap:18px;gap:18px;align-items:flex-start}.progress-skills-card{padding:24px}.progress-skill-list{margin-top:20px;display:grid;grid-gap:17px;gap:17px}.progress-skill-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 100px;grid-gap:8px 12px;gap:8px 12px;align-items:center}.progress-skill-top{display:flex;justify-content:space-between;gap:12px;font-size:13px}.progress-skill-track{width:100%;height:9px;overflow:hidden;border-radius:999px;background:#edf1f7}.progress-skill-fill{height:100%;border-radius:inherit}.progress-skill-fill.weak{background:linear-gradient(90deg,#ef476f,var(--coral))}.progress-skill-fill.developing{background:linear-gradient(90deg,#efa628,var(--amber))}.progress-skill-fill.secure{background:linear-gradient(90deg,var(--blue),var(--sky))}.progress-skill-fill.mastered{background:linear-gradient(90deg,var(--teal),var(--green))}.progress-status-chip{grid-column:2;grid-row:1/span 2;padding:7px 8px;border-radius:999px;text-align:center;font-size:10px;font-weight:850}.progress-status-chip.weak{color:#cc3e54;background:#fff0f2}.progress-status-chip.developing{color:#ad6c05;background:#fff5dc}.progress-status-chip.secure{color:#1767c9;background:#eaf4ff}.progress-status-chip.mastered{color:#07815b;background:#e4faf1}.progress-empty-message{padding:45px 20px;display:grid;justify-items:center;text-align:center}.progress-empty-message>div:first-child{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;color:var(--primary);background:#edf0ff;font-size:25px}.progress-empty-message h3{margin:14px 0 0}.progress-empty-message p{max-width:400px;color:var(--text-secondary);line-height:1.55}.progress-side-column{min-width:0;display:grid;grid-gap:18px;gap:18px}.progress-achievement-card,.progress-next-card{padding:21px}.progress-achievement-card h2,.progress-next-card h2{margin:0}.progress-achievement-row{margin-top:13px;padding:11px;display:grid;grid-template-columns:39px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;border-radius:13px;background:#fafbff}.progress-achievement-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:12px}.progress-achievement-icon.fire{background:#fff0e8}.progress-achievement-icon.mastered{color:var(--green);background:#e4faf1}.progress-achievement-icon.questions{color:#ba7900;background:#fff3d2}.progress-achievement-row>div:last-child{display:grid;grid-gap:3px;gap:3px}.progress-achievement-row span{color:var(--text-secondary);font-size:10px}.progress-next-card{background:linear-gradient(145deg,#fbfaff,#f3f0ff)}.progress-violet-eyebrow{color:var(--violet)}.progress-next-card p{color:var(--text-secondary);line-height:1.55}.progress-next-value{margin:13px 0;padding:11px;display:flex;align-items:center;justify-content:space-between;border-radius:13px;background:#fff}.progress-next-value strong{color:var(--violet);font-size:23px}.progress-next-value span{color:var(--text-secondary);font-size:11px}.progress-next-button{width:100%;display:flex;align-items:center;justify-content:center}.progress-history-card,.progress-week-card{margin-top:18px;padding:24px}.progress-week-total{display:grid;justify-items:end}.progress-week-total strong{color:var(--primary);font-size:22px}.progress-week-total span{color:var(--text-secondary);font-size:10px}.progress-week-chart{height:230px;margin-top:20px;padding:12px 12px 0;display:flex;align-items:flex-end;justify-content:space-around;gap:15px;border-radius:18px;background:#f8faff}.progress-week-column{height:100%;flex:1 1;min-width:0;display:grid;grid-template-rows:auto 1fr auto;grid-gap:7px;gap:7px;justify-items:center}.progress-week-column>span{color:var(--text-secondary);font-size:10px}.progress-week-bar-track{width:min(50px,100%);height:100%;display:flex;align-items:flex-end;overflow:hidden;border-radius:10px 10px 0 0;background:#eaf0f8}.progress-week-bar{width:100%;min-height:6px;border-radius:10px 10px 0 0;background:linear-gradient(180deg,var(--sky),var(--primary))}.progress-week-column small{color:var(--text-secondary);font-size:10px}.progress-table-wrapper{width:100%;max-width:100%;margin-top:18px;overflow-x:auto;-webkit-overflow-scrolling:touch}.progress-results-table{width:100%;min-width:680px;border-collapse:collapse}.progress-results-table th{padding:11px 12px;border-bottom:1px solid #dfe6f1;color:#77859c;font-size:10px;letter-spacing:.6px;text-align:left;text-transform:uppercase}.progress-results-table td{padding:13px 12px;border-bottom:1px solid #edf1f6;font-size:12px}.progress-results-table tbody tr:hover{background:#fafbff}.progress-result-percentage{padding:5px 8px;border-radius:999px;font-size:10px;font-weight:850}.progress-result-percentage.high{color:#087e59;background:#e5faf1}.progress-result-percentage.medium{color:#1767c9;background:#eaf4ff}.progress-result-percentage.low{color:#ca4256;background:#fff0f2}.progress-history-empty{color:var(--text-secondary)}.home-mobile-nav{display:none}.loading-page{min-height:100vh;padding:24px;display:grid;place-items:center}.loading-card{width:min(390px,100%);padding:32px;display:grid;justify-items:center;border:1px solid var(--border);border-radius:22px;background:#fff;box-shadow:var(--shadow);text-align:center}.loading-card h2{margin:15px 0 0}.login-page{width:100%;min-width:0;min-height:100vh;padding:28px;display:grid;place-items:center;background:radial-gradient(circle at 8% 12%,rgba(56,189,248,.1),transparent 28%),radial-gradient(circle at 92% 86%,rgba(139,92,246,.09),transparent 30%),var(--background)}.login-shell{width:min(1160px,100%);min-width:0;min-height:680px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);overflow:hidden;border:1px solid var(--border);border-radius:28px;background:#fff;box-shadow:0 25px 70px rgba(24,41,78,.13)}.login-brand-panel{min-width:0;padding:36px 44px 42px;display:flex;flex-direction:column;color:#fff;background:radial-gradient(circle at 82% 12%,rgba(56,189,248,.22),transparent 31%),linear-gradient(145deg,#203ba8,#3d57df 56%,#7658e8)}.login-brand-top{display:flex;align-items:center;gap:12px}.login-brand-panel
.app-logo{background:hsla(0,0%,100%,.15);border:1px solid hsla(0,0%,100%,.16);box-shadow:none}.login-brand-name{font-size:20px;font-weight:900}.login-brand-tagline{margin-top:2px;color:#d2dcff;font-size:11px}.login-brand-content{max-width:560px;margin:auto 0;padding:50px 0 25px}.hero-eyebrow{margin-bottom:8px;color:#cbd6ff;font-size:11px;font-weight:850;letter-spacing:1.2px;text-transform:uppercase}.login-brand-title{margin:0;font-size:clamp(42px,4.5vw,62px);line-height:1.03;letter-spacing:-1.8px}.login-brand-description{max-width:540px;margin:19px 0 0;color:#e1e7ff;font-size:15px;line-height:1.7}.login-benefits{margin-top:32px;display:grid;grid-gap:16px;gap:16px}.login-benefit{display:grid;grid-template-columns:35px minmax(0,1fr);grid-gap:12px;gap:12px}.login-benefit-icon{width:35px;height:35px;display:grid;place-items:center;border:1px solid hsla(0,0%,100%,.15);border-radius:11px;background:hsla(0,0%,100%,.12);font-weight:900}.login-benefit-title{font-size:14px;font-weight:850}.login-benefit-description{margin-top:3px;color:#d4ddff;font-size:12px;line-height:1.45}.login-form-panel{min-width:0;padding:44px;display:grid;place-items:center}.login-form-card{width:min(430px,100%);min-width:0}.login-mobile-brand{display:none;align-items:center;gap:11px;margin-bottom:34px}.login-form-title{margin:0;font-size:clamp(30px,3vw,38px);letter-spacing:-.8px;line-height:1.12}.login-form-description{margin:12px 0 0;color:var(--text-secondary);font-size:14px;line-height:1.6}.login-fields{margin-top:28px;display:grid;grid-gap:16px;gap:16px}.login-fields
.input{min-height:48px}.login-message{margin-top:16px;padding:12px 13px;border:1px solid var(--border);border-radius:11px;color:#49566a;background:#f5f8ff;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.login-submit{width:100%;min-height:48px;margin-top:20px;font-size:15px}.login-switch{margin-top:20px;color:var(--text-secondary);font-size:12px;text-align:center}.login-switch-button{margin-left:6px;padding:0;border:0;color:var(--primary);background:transparent;cursor:pointer;font-weight:850}.login-note{margin-top:26px;padding-top:18px;border-top:1px solid #edf0f4;color:#8c97a8;font-size:11px;line-height:1.5;text-align:center}@media (max-width:1000px){.home-desktop-nav{display:none}.home-mobile-nav{position:fixed;left:50%;bottom:max(12px,env(safe-area-inset-bottom));z-index:1000;width:min(620px,calc(100% - 24px));padding:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:4px;gap:4px;border:1px solid rgba(219,227,241,.95);border-radius:22px;background:hsla(0,0%,100%,.95);box-shadow:0 18px 45px rgba(34,49,82,.17);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:translateX(-50%)}.home-mobile-nav-item{min-width:0;padding:8px 5px;display:grid;place-items:center;grid-gap:3px;gap:3px;border-radius:15px;color:#7b89a3;font-size:10px;font-weight:750}.home-mobile-nav-item span{font-size:18px}.home-mobile-nav-item.active{color:var(--primary);background:#edf0ff}.app-page{padding-bottom:115px}.home-level-strip{grid-template-columns:auto minmax(0,1fr) auto auto}.home-level-progress{grid-column:1/-1;grid-row:2}.home-continue-card{grid-template-columns:minmax(0,1fr) 300px}.progress-main-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:700px){.app-page{padding:0 14px 110px}.app-header{min-height:70px}.app-brand-subtitle,.home-logout{display:none}.home-heading,.practice-page-heading,.progress-page-heading,.tutor-page-heading{margin-top:18px;flex-direction:column;align-items:flex-start;gap:14px}.home-title,.practice-page-heading h1,.progress-page-heading h1,.tutor-page-heading h1{font-size:35px}.home-quote-card,.progress-heading-message,.tutor-heading-message{width:100%;max-width:100%}.home-level-strip{padding:15px;grid-template-columns:auto minmax(0,1fr);gap:12px}.home-level-progress,.home-level-stat{grid-column:1/-1}.home-level-stat{min-width:0;grid-template-columns:36px minmax(0,1fr)}.home-continue-card{padding:26px 20px;grid-template-columns:minmax(0,1fr);border-radius:23px}.home-continue-art{min-height:135px}.home-notebook{width:170px;min-height:115px;right:70px}.home-calculator{width:90px;height:100px}.home-dashboard-grid{grid-template-columns:minmax(0,1fr);gap:14px}.home-card{padding:19px}.home-skill-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-status-pills{width:100%;justify-content:flex-start}.practice-status-pill{flex:1 1 auto}.practice-toolbar-new{grid-template-columns:minmax(0,1fr)}.practice-start-button{width:100%}.practice-skill-card{grid-template-columns:auto minmax(0,1fr)}.practice-xp-badge{grid-column:1/-1;justify-self:stretch}.practice-question-card{padding:20px 17px}.practice-question-top{align-items:flex-start;flex-direction:column}.practice-question-text{margin:22px 0;font-size:22px}.practice-image-selected{grid-template-columns:minmax(0,1fr) auto}.practice-answer-preview,.practice-no-preview{grid-column:2;grid-row:1/span 2}.practice-image-selected .btn{grid-column:1/-1}.practice-result-top{grid-template-columns:auto minmax(0,1fr)}.practice-result-xp{grid-column:1/-1}.progress-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.progress-stat-card{padding:15px}.progress-stat-value{font-size:26px}.progress-achievement-card,.progress-history-card,.progress-mastery-card,.progress-next-card,.progress-skills-card,.progress-week-card{padding:18px}.progress-mastery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-skill-row{grid-template-columns:minmax(0,1fr)}.progress-status-chip{grid-column:1;grid-row:auto;justify-self:flex-start}.progress-week-chart{height:190px;padding:10px 5px 0;gap:7px}}@media (max-width:480px){.app-page{padding-left:10px;padding-right:10px}.app-logo{width:39px;height:39px;flex-basis:39px;border-radius:12px}.app-brand-name,.app-logo{font-size:17px}.home-avatar{width:35px;height:35px}.home-continue-copy h2,.home-title,.practice-page-heading h1,.progress-page-heading h1,.tutor-page-heading h1{font-size:31px}.home-skill-summary{gap:8px}.home-skill-summary>div{padding:14px}.practice-mastery-change-top{flex-direction:column;gap:5px}.progress-mastery-grid{gap:8px}.progress-mastery-bucket{padding:14px 9px}.progress-mastery-bucket strong{font-size:26px}.login-page{padding:0;background:#fff}.login-shell{width:100%;min-height:100vh;border:0;border-radius:0;box-shadow:none;grid-template-columns:minmax(0,1fr)}.login-brand-panel{display:none}.login-form-panel{min-height:100vh;padding:30px 20px 38px;place-items:start center}.login-mobile-brand{display:flex;margin-bottom:44px}.login-form-title{font-size:31px}}@media (min-width:481px) and (max-width:900px){.login-page{padding:20px;place-items:start center}.login-shell{width:min(620px,100%);min-height:0;grid-template-columns:minmax(0,1fr)}.login-brand-panel{display:none}.login-form-panel{min-height:calc(100vh - 40px);padding:52px 42px}.login-mobile-brand{display:flex}}@media (max-width:360px){.home-skill-summary,.progress-mastery-grid,.progress-stat-grid{grid-template-columns:minmax(0,1fr)}.home-mobile-nav-item{font-size:9px}}