.q-fit-step{flex-direction:column;flex:1;min-height:0;display:flex}.q-fit-stage{flex:1;min-height:0;padding:12px 18px;display:flex}.q-fit-frame{display:contents}.q-fit-framed .q-fit-stage{flex-direction:column;gap:16px}.q-fit-framed .q-fit-frame{border:2px solid var(--q-line);background:var(--q-surface);border-radius:16px;flex:1;min-width:0;min-height:0;padding:20px;display:flex}.q-fit-pagination{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;margin-bottom:8px;display:grid}.q-fit-pagination>div{flex-direction:column;align-items:center;gap:5px;display:flex}.q-fit-pagination .q-fit-count{min-height:16px;font-size:12px;line-height:16px}.q-fit-viewport{flex:1;min-width:0;min-height:0;position:relative;overflow:hidden auto}.q-fit-page{flex-direction:column;gap:12px;display:flex}.q-fit-piece{flex:none;min-width:0}.q-fit-piece>*,.q-fit-measure>*>*{max-width:100%}.q-fit-measure{visibility:hidden;pointer-events:none;width:100%;position:fixed;top:0;left:-10000px}.q-fit-overflow{overscroll-behavior:contain;overflow:auto}.q-fit-scroll-hint{color:var(--q-ink-muted);padding:4px 0;font-size:14px}.q-fit-footer{padding:10px 18px max(10px, env(safe-area-inset-bottom));background:var(--q-surface);border-top:1px solid var(--q-line);flex:none}.q-fit-navigation{align-items:center;gap:10px;display:flex}.q-fit-back{border:1px solid var(--q-line);background:var(--q-soft);width:44px;height:48px;color:var(--q-ink);cursor:pointer;border-radius:14px;flex:none;font-size:22px}.q-fit-back:disabled{opacity:.35;cursor:default}.q-fit-count{color:var(--q-ink-muted);white-space:nowrap;font-size:14px}.q-fit-next{border:0;border-bottom:4px solid var(--ql-primary-edge,#5b21b6);background:var(--ql-primary,#7c3aed);color:#fff;height:60px;font:600 17px/1.2 var(--q-font-heading);cursor:pointer;border-radius:14px;flex:1;padding:6px}.q-fit-secondary{flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.q-fit-secondary button{min-height:44px;color:var(--q-link);font:500 14px var(--q-font-body);cursor:pointer;background:0 0;border:0;padding:8px}.q-fit-card{border:1px solid var(--q-line);background:var(--q-surface);color:var(--q-ink);border-radius:16px;padding:14px 16px}.q-fit-card h3{font:600 16px/1.4 var(--q-font-heading);overflow-wrap:anywhere;margin:0 0 8px}.q-fit-copy{font:400 18px/1.6 var(--q-font-body);overflow-wrap:anywhere}.q-fit-copy p{margin:0}.q-fit-copy p+p{margin-top:8px}.q-fit-copy>:first-child{margin-top:0}.q-fit-copy>:last-child{margin-bottom:0}.q-fit-copy img{max-width:100%;height:auto}.q-fit-copy .katex{font-size:1.05em}.q-fit-copy .katex-display{overflow:auto hidden}.q-fit-copy table{display:block;overflow-x:auto}.q-fit-check{flex-direction:column;gap:8px;display:flex}.q-fit-option{text-align:left;cursor:pointer;align-items:flex-start;gap:10px;width:100%;min-height:48px;padding:10px 12px;display:flex}.q-fit-option>.q-fit-copy{flex:1;min-width:0}.q-fit-option-label{color:var(--q-link);font:600 16px/1.6 var(--q-font-heading);flex:none;padding-top:3px}.q-fit-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.q-fit-toolbar button{border:1px solid var(--q-line);background:var(--q-soft);min-height:44px;color:var(--q-link);font:500 15px var(--q-font-body);cursor:pointer;border-radius:12px;padding:8px 12px}.q-follow-up{flex-direction:column;flex:1;min-height:0;display:flex}.q-follow-form{min-height:0;color:var(--q-ink);font-family:var(--q-font-body);flex:1;padding:18px;overflow-y:auto}.q-follow-form h2{font:600 24px var(--q-font-heading);margin:0 0 12px}.q-follow-form p{font-size:16px;line-height:1.5}.q-follow-form label{margin:18px 0 8px;font-size:18px;display:block}.q-follow-form textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--q-line);background:var(--q-surface);width:100%;color:var(--q-ink);font:400 18px/1.6 var(--q-font-body);border-radius:14px;padding:12px}.q-follow-count{text-align:right;color:var(--q-ink-muted);margin:6px 0 12px;font-size:14px;display:block}.q-follow-form .q-fit-next{width:100%}.q-follow-link{background:var(--q-surface);border:1px solid var(--q-line);width:100%;min-height:44px;color:var(--q-link);border-radius:12px;margin-top:8px;font-size:16px}.q-follow-form button:disabled{opacity:.55;cursor:default}.q-follow-suggestions>div{flex-wrap:wrap;gap:8px;display:flex}.q-follow-suggestions button{border:1px solid var(--q-chip-border);background:var(--q-accent-bg);min-height:44px;color:var(--q-link);font:500 16px/1.4 var(--q-font-body);text-align:left;cursor:pointer;border-radius:22px;padding:10px 12px}.q-follow-suggestions button:disabled{opacity:.55;cursor:default}.q-back-button{box-sizing:border-box;border:2px solid var(--qn-outline,var(--q-ink));background:var(--q-surface);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--q-ink);box-shadow:0 3px 0 var(--qn-outline,var(--q-ink));cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;margin:0;padding:0;text-decoration:none;display:inline-flex}.q-back-button svg{pointer-events:none;flex:none;display:block}.q-back-button:focus-visible{outline:3px solid var(--q-link);outline-offset:5px}.q-back-button:active:not(:disabled){box-shadow:0 1px 0 var(--qn-outline,var(--q-ink));transform:translateY(2px)}.q-back-button:disabled{opacity:.4;cursor:default;box-shadow:none}.q-ai-scrim{z-index:1500;background:#090814b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.q-ai-dialog{--tutor-panel:var(--q-accent-bg);--tutor-panel-ink:var(--q-link);--tutor-warm:#fff3d6;--tutor-warm-ink:#835500;background:var(--q-bg);width:100%;max-width:600px;height:100dvh;min-height:0;max-height:100dvh;color:var(--q-ink);font-family:var(--q-font-body);flex-direction:column;display:flex;overflow:hidden}[data-theme=dark] .q-ai-dialog{--tutor-warm:#3b3040;--tutor-warm-ink:#f4cd87}.q-ai-head{padding:calc(12px + env(safe-area-inset-top,0px)) 18px 16px;flex:none;align-items:center;gap:12px;display:flex}.q-ai-head>div:not(.qn-quill){flex:1;min-width:0}.q-ai-dialog .q-ai-head .qn-quill{flex:none;width:34.6px;height:40px}.q-ai-head h2{font:900 20px/1.25 var(--q-font-heading);margin:0 0 3px}.q-ai-head span{color:var(--q-ink-muted);font-size:14px;line-height:1.4}.q-ai-head button{width:44px;height:44px;color:var(--q-ink-muted);cursor:pointer;background:0 0;border:0;border-radius:12px;flex:none;font-size:28px}.q-ai-progress{justify-content:center;align-items:center;gap:6px;width:100%;min-height:8px;display:flex}.q-ai-progress span{background:var(--q-line);border-radius:20px;flex:0 8px;height:8px}.q-ai-progress .is-current{background:var(--q-link);flex-basis:18px}.q-ai-progress .is-done{background:var(--ql-primary,#7c3aed)}.q-ai-wait{flex:1;min-height:0;padding:24px;font-size:20px;line-height:1.5;overflow:auto}.q-ai-dialog .q-fit-stage{padding:0 18px}.q-ai-answer-context{flex:none;gap:6px;min-width:0;display:grid}.q-ai-answer-label{color:var(--q-link);align-items:center;gap:6px;font-size:13px;font-weight:800;display:flex}.q-ai-answer-chip{border:2px solid var(--q-chip-border);background:var(--q-accent-bg);width:fit-content;max-width:100%;max-height:96px;color:var(--q-link);overscroll-behavior:contain;border-radius:12px;padding:10px 14px;font-size:18px;line-height:1.45;overflow:auto}.q-ai-answer-chip .q-markdown{font-size:inherit}.q-ai-answer-chip p{margin:0}.q-ai-answer-chip .katex-display{margin:0;overflow:auto hidden}.q-ai-answer-chip:focus-visible{outline:3px solid var(--q-link);outline-offset:3px}:root.q-next-look .q-ai-dialog .q-fit-card{background:0 0;border:0;border-radius:0;padding:0}.q-ai-dialog .q-fit-card h3{margin:0 0 12px;font-size:21px;font-weight:900}.q-ai-dialog .q-fit-copy{font-size:20px;line-height:1.6}.q-ai-dialog .q-fit-copy strong{color:var(--q-link)}.q-tutor-option{border:1px solid var(--q-chip-border);background:var(--tutor-panel);color:var(--q-ink);border-left-width:3px;border-radius:16px;padding:12px 14px}.q-tutor-option h4{color:var(--tutor-panel-ink);font:900 14px/1.3 var(--q-font-heading);margin:0 0 8px}.q-tutor-answer{border:0;border-bottom:1px solid var(--q-line);background:0 0;padding:0 0 20px}.q-tutor-answer h3{font:500 15px/1.4 var(--q-font-body);color:var(--q-ink-muted);margin:0 0 8px}.q-tutor-answer .q-fit-copy{color:var(--q-ink-muted)}.q-tutor-highlight{--marker:var(--q-accent-bg);--marker-ink:var(--q-link);border:2px solid var(--q-line);background:var(--q-surface);width:100%;color:var(--q-ink);font:inherit;text-align:left;cursor:pointer;border-radius:16px;flex-direction:column;align-items:flex-start;gap:10px;padding:16px;font-size:18px;line-height:1.5;display:flex}.q-tutor-highlight strong{color:var(--marker-ink);font-size:13px}.q-tutor-highlight.is-takeaway{--marker:var(--q-opt-correct-bg);--marker-ink:var(--q-correct-ink)}.q-tutor-highlight.is-caution{--marker:var(--tutor-warm);--marker-ink:var(--tutor-warm-ink)}.q-tutor-marker{color:var(--marker-ink);background:var(--marker);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:8px;padding:4px 8px}.q-tutor-highlight-hint{color:var(--q-ink-muted);text-underline-offset:3px;font-size:13px;text-decoration:underline}.q-tutor-highlight:hover:not(:disabled){border-color:var(--q-chip-border)}.q-ai-dialog button:focus-visible,.q-ai-dialog textarea:focus-visible{outline:3px solid var(--q-link);outline-offset:3px}.q-tutor-highlight:disabled{opacity:.6;cursor:wait}.q-tutor-diagram{border:2px solid var(--q-line);background:var(--q-surface);border-radius:16px;margin:0;padding:16px}.q-tutor-diagram svg{width:100%;color:var(--q-ink);display:block}.q-tutor-diagram rect,.q-tutor-diagram ellipse,.q-tutor-diagram circle{fill:var(--q-accent-bg);stroke:var(--q-link);stroke-width:2px}.q-tutor-diagram text{font:500 16px var(--q-font-body);fill:var(--q-ink)}.q-tutor-diagram .q-diagram-edge{paint-order:stroke;stroke:var(--q-surface);stroke-width:5px;font-size:13px}.q-tutor-diagram figcaption{text-align:center;overflow-wrap:anywhere;font-size:17px;line-height:1.5}.q-tutor-picture{flex-direction:column;align-items:center;gap:12px;display:flex}.q-tutor-picture img{object-fit:contain;border-radius:12px;width:128px;max-width:100%;height:128px;display:block}.q-tutor-picture-relations{width:100%;font-size:18px;line-height:1.5}.q-tutor-picture-relations p{overflow-wrap:anywhere;margin:0 0 12px}.q-tutor-picture-relations strong{color:var(--q-link)}.q-tutor-picture-relations span{color:var(--q-ink-muted);display:block}.q-tutor-picture-unavailable{color:var(--q-ink-muted);margin:0;font-size:16px}.q-ai-dialog .q-fit-footer{background:var(--q-bg);padding:4px 18px calc(14px + env(safe-area-inset-bottom,0px));border:0}.q-ai-dialog .q-fit-next{text-transform:uppercase;letter-spacing:.6px;height:auto;min-height:52px;padding:14px 10px;font-weight:900}.q-ai-dialog .q-fit-back{height:44px;color:var(--q-ink-muted);background:0 0;border:0}.q-ai-dialog .q-fit-next:disabled{background:var(--q-soft);color:var(--q-ink-muted);box-shadow:0 3px 0 var(--q-line);cursor:default}.q-ai-dialog .q-fit-next:active:not(:disabled){box-shadow:0 1px 0 var(--ql-primary-edge);transform:translateY(3px)}.q-tutor-composer{min-height:0;padding:0 18px calc(14px + env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;gap:16px;display:flex}.q-tutor-compose-panel{border:2px solid var(--q-line);background:var(--q-surface);border-radius:16px;flex:1;min-height:0;padding:20px;overflow:auto}.q-tutor-composer label{font-size:21px;font-weight:900;line-height:1.4;display:block}.q-tutor-compose-panel p{color:var(--q-ink-muted);margin:12px 0;font-size:17px;line-height:1.5}.q-tutor-composer textarea{box-sizing:border-box;resize:vertical;width:100%;min-width:0;font:400 18px/1.5 var(--q-font-body);background:var(--q-bg);color:var(--q-ink);border:2px solid var(--q-line);border-radius:12px;padding:12px;display:block}.q-tutor-compose-count{color:var(--q-ink-muted);text-align:right;margin-top:8px;font-size:12px;display:block}.q-tutor-compose-actions{flex-direction:column;flex:none;gap:8px;display:flex}.q-tutor-compose-back{min-height:44px;color:var(--q-link);font:700 15px var(--q-font-body);cursor:pointer;background:0 0;border:0}.q-tutor-composer button:disabled{opacity:.5;cursor:default}.q-ai-loading{background:var(--q-soft);flex:none;align-items:center;gap:10px;padding:12px 18px;font-size:17px;line-height:1.4;display:flex}.q-ai-loading-dot{border:3px solid var(--q-link);border-right-color:#0000;border-radius:50%;flex:none;width:18px;height:18px;animation:.8s linear infinite q-ai-loading-spin;display:inline-block}.q-ai-loading-detail{color:var(--q-ink-muted);font-size:17px}@media (width>=640px){.q-ai-dialog{border:2px solid var(--q-line);border-radius:24px;height:min(900px,94dvh);max-height:94dvh}.q-ai-head{padding-top:14px}}@keyframes q-ai-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.q-ai-loading-dot{animation:none}}@media (width<=360px){.q-ai-head{gap:8px}.q-ai-head h2{font-size:18px}.q-ai-head span{font-size:12px}.q-ai-dialog .q-ai-head .qn-quill{width:31.14px;height:36px}}@media (height<=600px){.q-ai-answer-chip{max-height:64px}.q-ai-dialog .q-fit-frame,.q-tutor-compose-panel{padding:14px}.q-ai-head{padding-bottom:10px}.q-tutor-composer label{margin-bottom:12px;font-size:18px}.q-tutor-compose-panel>p:not([role=alert]){display:none}.q-tutor-composer textarea{height:94px;min-height:94px}}.ql-feedback-heading{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.ql-shared-question-header{font:800 16px var(--q-font-heading);color:var(--q-ink);margin-bottom:20px;padding:8px 16px 12px}.q-next-feedback .ql-feedback-heading .qn-answer-feedback{flex:1;gap:10px;width:auto;min-width:0;font-size:21px}.ql-question-feedback-actions{flex:none;align-items:center;gap:2px;display:flex;position:relative}.ql-question-feedback-actions>button{width:44px;height:44px;color:var(--q-ink-muted);cursor:pointer;background:0 0;border:0;border-radius:12px;place-items:center;padding:0;display:grid}.ql-question-feedback-actions>button:hover{background:var(--q-accent-bg);color:var(--q-link)}.ql-question-feedback-actions>button:disabled{opacity:.5;cursor:wait}.ql-feedback-message{z-index:2;border:2px solid var(--q-chip-border);background:var(--q-surface);width:max-content;max-width:min(280px,100vw - 48px);color:var(--q-ink);font:700 14px/1.4 var(--q-font-body);box-shadow:0 4px 0 var(--q-line);border-radius:12px;padding:10px 14px;position:absolute;bottom:calc(100% + 10px);right:0}.ql-question-report{width:100%;max-width:520px;max-height:calc(100dvh - env(safe-area-inset-top,0px) - 12px);border:2px solid var(--q-line);background:var(--q-bg);color:var(--q-ink);font-family:var(--q-font-body);border-bottom:0;border-radius:24px 24px 0 0;margin:auto auto 0;padding:0;overflow:hidden}.ql-question-report[open]{flex-direction:column;display:flex}.ql-question-report::backdrop{background:#090814b3}.ql-question-report>header{flex:none;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 8px;display:flex}.ql-question-report h2{font:900 23px/1.3 var(--q-font-heading);margin:0}.ql-feedback-close{width:44px;height:44px;color:var(--q-ink-muted);cursor:pointer;background:0 0;border:0;border-radius:12px;flex:none;place-items:center;display:grid}.ql-question-report>form{flex-direction:column;min-height:0;display:flex}.ql-report-body{overscroll-behavior:contain;min-height:0;padding:0 20px 16px;overflow:auto}.ql-report-body>p{color:var(--q-ink-muted);margin:4px 0 16px;font-size:16px;line-height:1.5}.ql-report-body .ql-report-rights{margin:16px 0;font-size:14px;line-height:1.5}.ql-report-rights a{color:var(--q-link);overflow-wrap:anywhere}.ql-report-body fieldset{border:0;margin:0;padding:0}.ql-report-body legend{color:var(--q-ink-muted);margin-bottom:8px;padding:0;font-size:13px;font-weight:800}.ql-report-option{border:2px solid var(--q-line);background:var(--q-surface);cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-height:52px;margin-bottom:8px;padding:14px 12px;font-size:16px;font-weight:700;line-height:1.4;display:flex}.ql-report-option.is-selected{background:var(--q-accent-bg);border-color:var(--q-chip-border)}.ql-report-option input{width:20px;height:20px;accent-color:var(--ql-primary);cursor:pointer;flex:none;margin:0}.ql-report-more{margin:8px 0 16px}.ql-report-more summary{min-height:44px;color:var(--q-link);cursor:pointer;padding:12px 0;font-size:15px;font-weight:800}.ql-report-note{margin:16px 0 8px;font-size:15px;font-weight:800;display:block}.ql-report-body textarea{box-sizing:border-box;resize:vertical;border:2px solid var(--q-line);background:var(--q-surface);width:100%;min-height:80px;color:var(--q-ink);font:400 16px/1.5 var(--q-font-body);border-radius:12px;padding:12px;display:block}.ql-report-count{color:var(--q-ink-muted);text-align:right;margin-top:6px;font-size:12px;display:block}.ql-report-body .ql-report-error{border:1px solid var(--q-opt-wrong-border);background:var(--q-opt-wrong-bg);color:var(--q-danger-ink);border-radius:12px;padding:12px}.ql-question-report footer{padding:14px 20px calc(14px + env(safe-area-inset-bottom,0px));border-top:2px solid var(--q-line);flex-direction:column;flex:none;gap:8px;display:flex}.ql-feedback-primary{background:var(--ql-primary,#7c3aed);width:100%;min-height:52px;color:var(--ql-primary-ink,#fff);box-shadow:0 4px 0 var(--ql-primary-edge,#5b21b6);font:900 15px/1.3 var(--q-font-heading);letter-spacing:.6px;text-transform:uppercase;cursor:pointer;border:0;border-radius:14px;padding:14px 16px}.ql-feedback-primary:disabled{background:var(--q-soft);color:var(--q-ink-muted);box-shadow:0 3px 0 var(--q-line);cursor:default}.ql-feedback-cancel{min-height:44px;color:var(--q-link);font:800 15px var(--q-font-body);cursor:pointer;background:0 0;border:0}.ql-report-success{padding:20px 24px calc(24px + env(safe-area-inset-bottom,0px));text-align:center;flex-direction:column;align-items:center;gap:20px;display:flex}.ql-report-success-icon{background:var(--q-accent-bg);width:64px;height:64px;color:var(--q-link);border-radius:50%;place-items:center;display:grid}.ql-report-success p{color:var(--q-ink-muted);margin:0;font-size:18px;line-height:1.5}.ql-question-report :focus-visible,.ql-question-feedback-actions>button:focus-visible{outline:3px solid var(--q-link);outline-offset:3px}@media (width>=640px){.ql-question-report{border-bottom:2px solid var(--q-line);border-radius:24px;max-height:90dvh;margin:auto}}@media (width<=360px){.q-next-feedback .ql-feedback-heading .qn-answer-feedback{gap:8px;font-size:18px}.ql-feedback-heading .qn-quill{height:44px;width:calc(44px * var(--quill-aspect,.865))}}.qn-save-progress{border:2px solid var(--q-line);background:var(--q-surface);color:var(--q-ink);font-family:var(--q-font-body);text-align:left;border-radius:14px;margin:16px 0;padding:14px}.qn-save-progress p{color:var(--q-ink-muted);margin:0 0 12px;font-size:14px;line-height:1.5}.qn-save-progress .qn-cta{margin:0}.qn-account-dialog{background:var(--q-bg);color:var(--q-ink);font-family:var(--q-font-body)}.qn-account-dialog .ql-course-dialog-body{flex-direction:column;gap:16px;display:flex}.qn-account-heading{align-items:center;gap:14px;display:flex}.qn-account-heading .qn-quill{height:72px;width:calc(72px * var(--quill-aspect,.865))}.qn-account-heading h2{margin:0;font-size:24px}.qn-account-heading p{color:var(--q-ink-muted);margin:6px 0 0;font-size:15px;line-height:1.5}.qn-account-field{gap:8px;font-size:15px;font-weight:800;display:grid}.qn-account-field input{box-sizing:border-box;border:2px solid var(--q-line);background:var(--q-soft);width:100%;min-width:0;min-height:52px;color:var(--q-ink);font:700 18px var(--q-font-body);border-radius:12px;padding:12px}.qn-account-field input:focus-visible{outline:3px solid var(--q-link);outline-offset:2px}.qn-account-pin{align-items:center;gap:8px;display:flex}.qn-account-pin input{letter-spacing:8px}.qn-account-pin button{background:var(--q-soft);width:44px;height:44px;color:var(--q-link);border:0;border-radius:10px;flex:none;place-items:center;display:grid}.qn-account-username{color:var(--q-link);overflow-wrap:anywhere;margin:0;font-weight:900}.qn-account-error{color:var(--q-danger-ink);margin:0;font-size:14px;line-height:1.5}.qn-account-note{color:var(--q-ink-muted);margin:0;font-size:13px;line-height:1.5}.qn-account-note svg{vertical-align:middle;margin-right:5px}.qn-account-link{min-height:44px;color:var(--q-link);font:800 15px var(--q-font-body);background:0 0;border:0;border-radius:10px}.qn-account-link:disabled{opacity:.5}.qn-account-consent{align-items:flex-start;gap:8px;font-size:14px;line-height:1.5;display:flex}.ql-daily.is-compact .ql-daily-week{display:none}.ql-daily.is-compact .ql-daily-review{margin-top:0}.ql-daily.is-compact .qn-save-progress{margin-bottom:0}.ql-streak-trigger{min-height:44px;font:900 15px var(--q-font-body);cursor:pointer;background:0 0;border:0;padding:0 0 0 6px}.ql-streak-trigger:hover{color:var(--ql-primary)}.ql-streak-stat{text-align:left;width:100%;height:100%;font:inherit;cursor:pointer;background:0 0;border:0;gap:8px;padding:0;display:grid}.ql-streak-stat>span{align-items:center;gap:4px;display:flex}.ql-streak-trigger:focus-visible,.ql-streak-stat:focus-visible{outline:3px solid var(--q-link);outline-offset:4px;border-radius:8px}.ql-streak-dialog[open]{flex-direction:column;width:min(440px,100vw - 24px);display:flex;overflow:hidden}.ql-streak-dialog .ql-streak-header{border-bottom:1px solid var(--q-line);flex:none;margin:0;padding:12px 18px 8px}.ql-streak-body{overscroll-behavior:contain;min-height:0;padding:16px 20px 6px;overflow:auto}.ql-streak-hero{justify-content:center;align-items:center;gap:20px;display:flex}.ql-streak-hero .qn-quill{width:calc(86px * var(--quill-aspect));flex:none;height:86px;animation-iteration-count:1;animation-fill-mode:forwards}.ql-streak-hero>div:last-child{text-align:center;color:var(--q-link);gap:0;display:grid}.ql-streak-hero strong{font:900 52px/1.1 var(--q-font-heading)}.ql-streak-hero span{font-size:15px;font-weight:800}.ql-streak-status{font:900 20px/1.3 var(--q-font-heading);text-align:center;margin:12px 0 6px}.ql-streak-note{color:var(--q-ink-muted);text-align:center;margin:6px 0 12px;font-size:14px;line-height:1.5}.ql-streak-note.is-small{margin:8px 0;font-size:12px}.ql-streak-record{border:1px solid var(--q-chip-border);color:var(--q-link);background:var(--q-accent-bg);border-radius:12px;align-items:center;gap:8px;margin:14px 0 8px;padding:12px;font-size:14px;display:flex}.ql-streak-record span{color:var(--q-ink-muted);flex:1}.ql-streak-record strong{white-space:nowrap}.ql-streak-month{justify-content:space-between;align-items:center;gap:8px;display:flex}.ql-streak-month h3{font:800 16px/1.4 var(--q-font-heading);margin:0}.ql-streak-month button:disabled{opacity:.3;cursor:default}.ql-streak-grid{grid-template-columns:repeat(7,minmax(0,1fr));justify-items:center;gap:6px;padding:4px 0 8px;display:grid}.ql-streak-weekday{color:var(--q-ink-muted);margin-bottom:4px;font-size:12px;font-weight:800}.ql-streak-date{border:1px solid var(--q-line);width:32px;height:32px;color:var(--q-ink-muted);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid;position:relative}.ql-streak-date.is-complete{border-color:var(--ql-primary);background:var(--ql-primary);color:#fff}.ql-streak-date.is-complete svg{background:var(--q-bg);color:var(--q-link);border:1px solid var(--q-chip-border);border-radius:50%;position:absolute;bottom:-2px;right:-3px}.ql-streak-date.is-today{outline:2px solid var(--q-link);outline-offset:2px;color:var(--q-link)}.ql-streak-date.is-today.is-complete{color:#fff}.ql-streak-date.is-future{opacity:.4;border-color:#0000}.ql-streak-target{color:var(--q-link);justify-content:center;align-items:center;gap:8px;margin:10px 0;display:flex}.ql-streak-target span{gap:3px;font-size:12px;display:grid}.ql-streak-target strong{font-size:14px}.ql-streak-footer{border-top:1px solid var(--q-line);flex:none;padding:12px 20px 18px}.ql-streak-footer .qn-cta{width:100%;margin:0}@media (width<=360px){.ql-streak-body{padding:12px 14px 6px}.ql-streak-grid{gap:5px}.ql-streak-date{width:28px;height:28px}.ql-streak-status{font-size:18px}}@media (prefers-reduced-motion:reduce){.ql-streak-hero .qn-quill{background-position-x:100%;animation:none}}:root[data-motion=reduced] .ql-streak-hero .qn-quill{background-position-x:100%;animation:none}.ql-daily{border:2px solid var(--q-line);background:var(--q-surface);color:var(--q-ink);text-align:left;border-radius:18px;margin:18px 20px 26px;padding:18px}.ql-daily-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.ql-daily-heading h2{font:900 20px/1.3 var(--q-font-heading);margin:0}.ql-daily-streak{color:var(--q-link);white-space:nowrap;align-items:center;gap:5px;font-weight:900;display:flex}.ql-daily-goal{align-items:center;gap:8px;margin:10px 0 0;font-size:15px;font-weight:800;display:flex}.ql-daily-goal>svg{color:var(--q-link);flex:none}.ql-daily-edit{background:0 0;border:0;border-radius:12px;place-items:center;min-width:44px;height:44px;margin-left:auto;display:grid;color:var(--q-link)!important}.ql-daily-edit:hover{background:var(--q-soft)}.ql-daily-meter{background:var(--q-soft);border-radius:99px;height:12px;overflow:hidden}.ql-daily-meter>span{border-radius:inherit;background:var(--ql-primary);height:100%;display:block}.ql-daily-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:18px 0 12px;display:grid}.ql-daily-week>div{color:var(--q-ink-muted);justify-items:center;gap:7px;font-size:12px;font-weight:800;display:grid}.ql-daily-day{border:2px solid var(--q-line);border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;display:grid}.ql-daily-week .is-complete .ql-daily-day{background:var(--ql-primary);border-color:var(--ql-primary);color:#fff}.ql-daily-week .is-today{color:var(--q-link)}.ql-daily-week .is-today .ql-daily-day{outline:2px solid var(--q-link);outline-offset:3px}.ql-daily-note{color:var(--q-ink-muted);margin:10px 0;font-size:13px;line-height:1.5}.ql-daily .qn-cta{margin-top:16px}.ql-daily-review,.ql-daily-link{min-height:44px;font:800 14px/1.4 var(--q-font-body);text-align:left;background:0 0;border:0;border-radius:10px;color:var(--q-link)!important}.ql-daily-review{width:100%;margin-top:8px}.ql-daily-review:disabled{opacity:.6;cursor:wait}.ql-daily-error{color:var(--q-danger-ink);font-size:14px;line-height:1.5}.ql-daily.is-compact{width:100%;margin:0}.ql-daily-loading p{margin:0;font-size:14px;line-height:1.5}.ql-goal-dialog h2{margin:0;font-size:23px}.ql-goal-dialog p{line-height:1.5}.ql-goal-dialog .qn-cta{margin-top:16px}.ql-quest-trigger{height:44px;color:var(--q-ink);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:flex}.ql-quest-trigger>span{color:var(--q-link);font:800 13px/1 var(--q-font-body)}.ql-quest-trigger>svg{color:var(--q-link);flex:none}.ql-quest-trigger:focus-visible{outline:2px solid var(--q-link);outline-offset:4px;border-radius:4px}.ql-quest-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.ql-quest-heading h2{margin:0;font-size:23px}.ql-quest-list{gap:20px;margin:20px 0;padding:0;list-style:none;display:grid}.ql-quest-list li>div:first-child{justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;font-size:15px;line-height:1.4;display:flex}.ql-quest-list li>div:first-child>span{color:var(--q-link);flex:none;font-size:13px;font-weight:800}.ql-quest-list .is-complete strong{color:var(--q-link)}.ql-quest-dialog .qn-cta{margin-top:12px}@media (width<=360px){.ql-daily{margin-left:16px;margin-right:16px;padding:14px}.ql-daily-heading h2{font-size:18px}.ql-daily-streak{font-size:14px}.ql-daily-day{width:26px;height:26px}}.ql-session-result{text-align:center;align-items:center;width:100%;min-height:94px;display:grid}.ql-session-result p{color:var(--q-ink-muted);margin:0;font-size:14px;line-height:1.5}.ql-session-stats{gap:8px}.ql-session-stats>span{flex-direction:column;justify-content:center;min-width:0;padding:14px 5px;font-size:11px;line-height:1.4;display:flex}.ql-session-stats strong{color:var(--q-link);font-size:clamp(21px,6vw,28px);line-height:1.25}.ql-result-quests{border:2px solid var(--q-chip-border);width:100%;min-height:60px;color:var(--q-link);background:var(--q-accent-bg);text-align:left;cursor:pointer;font:inherit;border-radius:14px;align-items:center;gap:12px;padding:10px 14px;display:flex}.ql-result-quests>svg{flex:none}.ql-result-quests>span{flex:1;gap:3px;display:grid}.ql-result-quests strong{font-size:14px;font-weight:900}.ql-result-quests small{color:var(--q-ink-muted);font-size:12px}.ql-result-quests:hover{filter:brightness(1.06)}.ql-result-quests:focus-visible{outline:3px solid var(--q-link);outline-offset:3px}.ql-correction-intro{text-align:center;max-width:520px;padding:32px 20px calc(32px + env(safe-area-inset-bottom) + var(--q-ad-banner-h,0px));flex-direction:column;align-items:center;gap:16px;margin:0 auto;display:flex}.ql-correction-intro h1{margin:0;font-size:28px}.ql-correction-intro p{margin:0;line-height:1.5}.ql-correction-note,.ql-correction-summary{color:var(--q-ink-muted);font-size:14px;line-height:1.5}.ql-correction-intro .qn-cta{width:100%;margin-top:8px}.ql-unit-recap{width:100%}.ql-unit-recap.is-inline{width:auto}.ql-unit-recap .ql-unit-jump{min-height:44px}.ql-lesson-milestones{gap:10px;width:100%;display:grid}.qn-practice .qn-result{gap:16px}.qn-practice .qn-result .ql-lesson-celebration{height:140px}.qn-practice .qn-result .ql-lesson-celebration .qn-quill{height:120px;width:calc(120px * var(--quill-aspect))}.qn-practice .qn-result .ql-finish-halo{width:130px;height:130px}.ql-earned-milestone{border:2px solid var(--q-chip-border);background:var(--q-accent-bg);text-align:left;color:var(--q-link);border-radius:16px;align-items:center;gap:14px;padding:14px;animation:.25s ease-out ql-feedback-arrive;display:flex}.ql-earned-milestone svg{flex:none}.ql-earned-milestone>span{gap:5px;display:grid}.ql-earned-milestone strong{font-size:17px}.ql-earned-milestone small{color:var(--q-ink-muted);font-size:13px;line-height:1.4}:root[data-motion=reduced] .ql-earned-milestone{animation:none}@media (prefers-reduced-motion:reduce){.ql-earned-milestone{animation:none}}.qn-game-header .qn-session-progress{isolation:isolate;position:relative;overflow:visible;box-shadow:inset 0 2px #00000015}.qn-game-header .qn-session-progress>i{background:linear-gradient(180deg,#a371ff,var(--ql-primary));transition:width .38s cubic-bezier(.2,.7,.25,1)}.qn-game-header .qn-session-progress>i:after{height:5px;top:3px;left:5px;right:5px}.qn-game-meter{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.qn-game-meter>span:first-child{min-width:0}.qn-game-meter>span:last-child{font-variant-numeric:tabular-nums;flex:none}.ql-progress-reward{border-radius:inherit;pointer-events:none;position:absolute;inset:0}.ql-progress-gleam{border-radius:inherit;opacity:0;background:#d9c5ff;animation:.55s ease-out ql-progress-pulse;position:absolute;inset:0}.ql-progress-tip{width:0;height:0;position:absolute;top:50%;right:0}.ql-progress-spark{background:var(--q-link);opacity:0;--angle:calc(var(--spark) * 60deg);--distance:20px;border-radius:2px;width:6px;height:6px;animation:.48s ease-out .3s both ql-progress-spark;position:absolute;top:-3px;left:-3px}.ql-progress-spark:nth-child(odd){clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%);background:#c4a8ff;width:9px;height:9px;top:-4.5px;left:-4.5px}@keyframes ql-progress-pulse{0%{opacity:.35}to{opacity:0}}@keyframes ql-progress-spark{0%{opacity:0;transform:rotate(var(--angle)) translateX(0) scale(.3)}18%{opacity:1}to{opacity:0;transform:rotate(var(--angle)) translateX(var(--distance)) scale(.4)}}.q-next-feedback .ql-feedback-heading.is-fresh-feedback{animation:.22s ease-out ql-feedback-arrive}@keyframes ql-feedback-arrive{0%{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.ql-lesson-celebration{isolation:isolate;flex:none;place-items:center;width:220px;max-width:100%;height:200px;display:grid;position:relative}.ql-lesson-celebration .qn-quill{height:160px;width:calc(160px * var(--quill-aspect));position:relative}.ql-finish-halo{background:var(--q-accent-bg);width:170px;height:170px;box-shadow:0 0 0 12px color-mix(in srgb,var(--q-accent-bg) 45%,transparent);border-radius:50%;position:absolute}.is-celebrating .ql-finish-halo{animation:.65s ease-out ql-finish-halo}.ql-lesson-celebration:not(.is-celebrating)>.qn-quill{background-position-x:100%;animation:none}.q-next-feedback .is-fresh-feedback .qn-quill{animation-iteration-count:1;animation-fill-mode:forwards}.q-next-feedback .ql-feedback-heading:not(.is-fresh-feedback) .qn-quill{background-position-x:100%;animation:none}.is-celebrating>.qn-quill{animation:1.25s steps(36,jump-none) forwards qn-quill}.ql-finish-sparks{pointer-events:none;position:absolute;inset:0}.ql-finish-sparks>span{background:var(--q-link);clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%);--angle:calc(45deg + var(--spark) * 90deg);--distance:100px;opacity:0;width:14px;height:14px;margin:-7px;animation:.75s ease-out .1s both ql-progress-spark;position:absolute;top:50%;left:50%}@keyframes ql-finish-halo{0%{opacity:.4;transform:scale(.75)}65%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@media (height<=650px){.ql-lesson-celebration{height:155px}.ql-lesson-celebration .qn-quill{height:130px;width:calc(130px * var(--quill-aspect))}.ql-finish-halo{width:130px;height:130px}.ql-finish-sparks>span{--distance:80px}}:root[data-motion=reduced] .qn-quill,:root[data-motion=reduced] .ql-start-label,:root[data-motion=reduced] .ql-path-stop.is-fresh .ql-lesson-node,:root[data-motion=reduced] .ql-feedback-heading,:root[data-motion=reduced] .ql-finish-halo{animation:none!important}:root[data-motion=reduced] .qn-progress i,:root[data-motion=reduced] .qn-session-progress i,:root[data-motion=reduced] .ql-lesson-node,:root[data-motion=reduced] .qn-cta{transition:none!important}:root[data-motion=reduced] .ql-progress-reward,:root[data-motion=reduced] .ql-finish-sparks{display:none}@media (prefers-reduced-motion:reduce){.ql-progress-reward,.ql-finish-sparks{display:none}.qn-game-header .qn-session-progress>i{transition:none}.q-next-feedback .ql-feedback-heading,.ql-lesson-celebration .qn-quill,.ql-finish-halo{animation:none!important}}.ql-page-header{z-index:20;position:sticky;top:0}.ql-page-header h1{min-width:0;font:900 22px/1.3 var(--q-font-heading);flex:1;margin:0}.ql-progress-body{padding:20px 20px calc(24px + var(--qn-safe-bottom))}.ql-progress-tabs{gap:8px;margin-bottom:22px;display:flex}.ql-progress-tabs button{border:2px solid var(--q-line);background:var(--q-bg);min-height:44px;color:var(--q-ink-muted);font:800 15px var(--q-font-body);border-radius:12px;flex:1;padding:10px}.ql-progress-tabs button[aria-selected=true]{background:var(--q-accent-bg);border-color:var(--q-chip-border);color:var(--q-link)}.ql-progress-body h2{font:900 21px/1.3 var(--q-font-heading);margin:0}.ql-progress-note{color:var(--q-ink-muted);font-size:14px;line-height:1.5}.ql-progress-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0;display:grid}.ql-progress-stats>div{border:2px solid var(--q-line);background:var(--q-surface);border-radius:14px;gap:8px;padding:16px 12px;display:grid}.ql-progress-stats strong{color:var(--q-link);align-items:center;gap:6px;font-size:27px;font-weight:900;display:flex}.ql-progress-stats span{color:var(--q-ink-muted);font-size:13px;font-weight:700}.ql-progress-filters{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.ql-progress-filters input,.ql-progress-filters select{border:2px solid var(--q-line);background:var(--q-surface);width:100%;min-height:44px;color:var(--q-ink);font:700 16px var(--q-font-body);border-radius:12px;padding:10px 12px}.ql-progress-topics{margin:0 0 16px;padding:0;list-style:none}.ql-progress-topics button{border:0;border-bottom:1px solid var(--q-line);width:100%;min-height:64px;color:var(--q-ink);font:inherit;text-align:left;background:0 0;align-items:center;gap:12px;padding:14px 0;display:flex}.ql-progress-topics button>span{flex:1;gap:5px;min-width:0;display:grid}.ql-progress-topics strong{overflow-wrap:anywhere;font-size:16px;line-height:1.35}.ql-progress-topics small{color:var(--q-ink-muted);font-size:12px;line-height:1.4}.ql-progress-topics svg{color:var(--q-link);flex:none}.ql-progress-topics button:disabled{opacity:.65;cursor:wait}.ql-progress-learn{margin-top:22px}.ql-practice-options{margin:26px 0 20px}.ql-practice-course{color:var(--q-ink-muted);gap:8px;margin-top:16px;font-size:13px;font-weight:700;display:grid}.ql-practice-course select{border:2px solid var(--q-line);background:var(--q-surface);width:100%;min-height:44px;color:var(--q-ink);font:700 16px var(--q-font-body);border-radius:12px;padding:10px}.ql-practice-option{border:0;border-bottom:1px solid var(--q-line);width:100%;min-height:68px;color:var(--q-ink);text-align:left;font:inherit;background:0 0;align-items:center;gap:12px;padding:14px 0;display:flex}.ql-practice-option>span{flex:1;gap:5px;min-width:0;display:grid}.ql-practice-option strong{font-size:16px}.ql-practice-option small{color:var(--q-ink-muted);font-size:13px;line-height:1.4}.ql-practice-option svg{color:var(--q-link);flex:none}.ql-practice-option:disabled{opacity:.6;cursor:default}.q-saved-page{background-color:var(--q-bg);min-height:100dvh;color:var(--q-ink);font:400 16px/1.5 var(--q-font-body);padding-bottom:max(24px, env(safe-area-inset-bottom))}.q-saved-header{padding:max(10px, env(safe-area-inset-top)) 16px 10px;align-items:center;gap:12px;max-width:560px;margin:auto;display:flex}.q-saved-header h1{min-width:0;font:900 20px/1.25 var(--q-font-heading);flex:1;margin:0}.q-saved-header>a{background:var(--q-surface);width:44px;height:44px;color:var(--q-ink);border-radius:50%;place-items:center;font-size:24px;text-decoration:none;display:grid}.q-saved-list{max-width:560px;margin:auto;padding:0 16px}.q-saved-card{background:var(--q-surface);border:1px solid var(--q-line);border-radius:18px;margin:12px 0;padding:16px}.q-saved-card h2{font:600 20px var(--q-font-heading)}.q-saved-preview{-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:18px;line-height:1.6;display:-webkit-box;overflow:hidden}.q-saved-preview img{width:auto;max-height:120px}.q-saved-tags{color:var(--q-ink-muted);flex-wrap:wrap;gap:8px;margin-top:12px;font-size:14px;display:flex}.q-saved-actions{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:12px;display:flex}.q-saved-actions a,.q-saved-actions button,.q-saved-list>[role=alert] button{border:1px solid var(--q-line);min-height:44px;color:var(--q-link);background:var(--q-soft);font:500 16px var(--q-font-body);cursor:pointer;border-radius:12px;align-items:center;padding:8px 12px;text-decoration:none;display:inline-flex}.q-saved-count{color:var(--q-ink-muted);margin:4px 0}
