@charset "UTF-8";.session-loading{max-inline-size:680px;margin-inline:auto;padding:clamp(40px,10vh,96px) 24px 40px}.session-loading .session-preview{animation:session-pulse 1.6s ease-in-out infinite}.session-loading .preview-heading{display:flex;align-items:center;gap:16px;margin-block-end:28px}.session-loading .placeholder{display:block;background:var(--mat-sys-secondary-container);border-radius:8px}.session-loading .avatar{inline-size:44px;block-size:44px;border-radius:50%}.session-loading .title{inline-size:42%;block-size:20px}.session-loading .preview-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.session-loading .preview-card{display:grid;justify-items:center;gap:16px;padding:28px 20px;background:var(--app-surface);border:1px solid var(--app-divider);border-radius:20px}.session-loading .portrait{inline-size:64px;block-size:64px;border-radius:50%;background:var(--mat-sys-primary-container)}.session-loading .name{inline-size:60%;block-size:18px}.session-loading .line{inline-size:82%;block-size:12px}.session-loading .action{inline-size:100%;block-size:44px;margin-block-start:8px;border-radius:12px}.session-loading p{margin:24px 0 0;text-align:center;color:var(--app-secondary);line-height:1.6}@keyframes session-pulse{50%{opacity:.5}}@media(max-width:600px){.session-loading{padding-inline:16px}.session-loading .preview-cards{grid-template-columns:minmax(0,1fr);gap:16px}.session-loading .preview-card{grid-template-columns:48px minmax(0,1fr);justify-items:start;gap:12px 16px;padding:20px}.session-loading .portrait{grid-row:1/3;inline-size:48px;block-size:48px}.session-loading .name{align-self:end}.session-loading .action{grid-column:1/-1}}@media(prefers-reduced-motion:reduce){.session-loading .session-preview{animation:none}}html{--mat-sys-background: light-dark(#faf9fd, #121316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);--mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #002f65);--mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-on-secondary: light-dark(#ffffff, #283041);--mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);--mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary: light-dark(#ffffff, #0001ac);--mat-sys-on-tertiary-container: light-dark(#0000ef, #e0e0ff);--mat-sys-on-tertiary-fixed: light-dark(#00006e, #00006e);--mat-sys-on-tertiary-fixed-variant: light-dark(#0000ef, #0000ef);--mat-sys-outline: light-dark(#74777f, #8e9099);--mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);--mat-sys-primary: light-dark(#005cbb, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#565e71, #bec6dc);--mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#faf9fd, #121316);--mat-sys-surface-bright: light-dark(#faf9fd, #38393c);--mat-sys-surface-container: light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim: light-dark(#dbd9dd, #121316);--mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);--mat-sys-tertiary: light-dark(#343dff, #bec2ff);--mat-sys-tertiary-container: light-dark(#e0e0ff, #0000ef);--mat-sys-tertiary-fixed: light-dark(#e0e0ff, #e0e0ff);--mat-sys-tertiary-fixed-dim: light-dark(#bec2ff, #bec2ff);--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-body-large-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-body-medium-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-body-small-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-display-large-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-display-medium-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-display-small-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-headline-large-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-headline-medium-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-headline-small-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-label-large-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-label-medium-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-label-small-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-title-large-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-title-medium-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-title-small-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;--mat-sys-primary: #0066cc;--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #eaf3ff;--mat-sys-on-primary-container: #004a99;--mat-sys-secondary: #5f636b;--mat-sys-secondary-container: #eef1f6;--mat-sys-on-secondary-container: #1d1d1f;--mat-sys-surface: #ffffff;--mat-sys-surface-container: #f5f5f7;--mat-sys-surface-container-low: #fafafa;--mat-sys-on-surface: #1d1d1f;--mat-sys-on-surface-variant: #5f636b;--mat-sys-outline: #85858b;--mat-sys-outline-variant: #dedee3;--mat-sys-error: #b42318;--mat-sys-on-error: #ffffff;--mat-button-filled-container-shape: 12px;--mat-button-outlined-container-shape: 12px;--mat-button-text-container-shape: 12px;--mat-button-filled-label-text-size: 1rem;--mat-button-outlined-label-text-size: 1rem;--mat-button-text-label-text-size: 1rem;--mat-button-filled-label-text-weight: 600;--mat-button-outlined-label-text-weight: 600;--mat-button-text-label-text-weight: 600;--mat-button-filled-label-text-tracking: 0;--mat-button-outlined-label-text-tracking: 0;--mat-button-text-label-text-tracking: 0;--mat-button-outlined-outline-color: #85858b;--mat-form-field-outlined-container-shape: 12px;--mat-form-field-outlined-outline-color: #85858b;--app-canvas: #f5f5f7;--app-surface: #ffffff;--app-text: #1d1d1f;--app-secondary: #5f636b;--app-primary: #0066cc;--app-success: #16743a;--app-error: #b42318;--app-outline: #85858b;--app-divider: #dedee3;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--app-text);background:var(--app-canvas);scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{touch-action:manipulation}button[mat-button],button[mat-stroked-button],button[mat-flat-button]{min-inline-size:48px;min-block-size:48px;height:auto;padding-block:10px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}button[mat-icon-button]{inline-size:48px;block-size:48px;min-inline-size:48px;min-block-size:48px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--app-primary);outline-offset:2px;box-shadow:0 0 0 2px #fff}h1:focus,main:focus{outline:none;box-shadow:none}h1{font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.2;letter-spacing:-.025em;font-weight:700;margin:16px 0}h2{font-size:1.25rem;line-height:1.4;margin:16px 0 8px}p{line-height:1.6;margin:8px 0}.app-header{max-width:1136px;margin:auto;padding:24px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;gap:12px;align-items:center;font-size:1.125rem;font-weight:650}.brand small{display:block;font-size:.75rem;font-weight:400;margin-top:4px;color:var(--app-secondary)}.brand-mark{width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;border-radius:12px;background:#eaf3ff;font-size:1.5rem;color:var(--app-primary)}.demo-badge{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--app-secondary);border:1px solid var(--app-divider);padding:8px 12px;border-radius:16px}.demo-badge>span{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--app-primary)}main{max-width:1136px;padding:0 16px;margin:0 auto;min-height:calc(100vh - 220px)}.journey{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;margin:16px 0 32px;font-size:.875rem;color:var(--app-secondary)}.journey span{display:flex;align-items:center;gap:8px}.journey b{border:1px solid var(--app-outline);width:24px;height:24px;border-radius:50%;font-size:.75rem;display:grid;place-items:center;font-weight:500}.journey .active{font-weight:600;color:var(--app-primary)}.journey .active b{background:var(--app-primary);color:#fff;border-color:var(--app-primary)}.journey i{width:40px;border-top:1px solid var(--app-divider)}.surface{background:var(--app-surface);border:1px solid #e8e8ed;border-radius:20px;box-shadow:0 4px 20px #1d1d1f05}.preparation-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px;align-items:start}.source-panel{padding:32px}.eyebrow{color:var(--app-secondary);font-size:.8125rem;font-weight:500}.lead{font-size:1.0625rem;color:var(--app-secondary);margin-bottom:24px}.full-width{width:100%;margin-top:8px}.field-hint{font-size:.875rem;color:var(--app-secondary);line-height:1.5;margin-top:-8px}.example-options{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:24px 0 32px;font-size:.875rem;color:var(--app-secondary)}.large-button{min-height:52px;font-size:1rem;padding-inline:24px;border-radius:12px}.large-button .action-arrow{margin-inline-start:16px}mat-progress-bar{margin:16px 0;border-radius:8px}.preparation-note{padding:12px 8px 0}.paper-example{background:#eef1f6;border:1px solid #e2e5eb;min-height:256px;border-radius:20px;position:relative;padding:24px;text-align:center}.paper-caption{font-size:.75rem;color:var(--app-secondary)}.paper-math{width:144px;padding:24px 16px 16px;background:#fff;border-radius:8px;box-shadow:0 4px 16px #1d1d1f0a;margin:16px auto 24px;font-size:2rem;line-height:1.3;font-variant-numeric:tabular-nums;text-align:right}.paper-math span{display:block}.paper-line{border-top:1.5px solid var(--app-outline);color:var(--app-primary)}.paper-sticker{position:absolute;bottom:24px;inset-inline-end:16px;background:#eaf3ff;color:#004a99;padding:8px 12px;border-radius:8px;font-size:.8125rem}.quiet-list{list-style:none;padding:0;margin:8px 0 24px;color:var(--app-secondary);font-size:.9375rem}.quiet-list li{padding:8px 0;display:flex;align-items:baseline;gap:8px}.quiet-list li:before{content:"\2713";color:var(--app-success);font-size:.875rem}.scope-note{background:#eef1f6;padding:16px;border-radius:16px;color:var(--app-secondary);font-size:.8125rem;line-height:1.6}.scope-note p{margin-bottom:0}.error-message{background:#fff1f0;color:var(--app-error);padding:16px;border-radius:12px}.preview-source{margin:24px 0;padding:16px;border-radius:12px;background:var(--app-canvas);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.875rem}.preview-source bdi{font-size:1.5rem;font-weight:600}.preview-facts{margin:12px 0 24px}.preview-facts>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--app-divider);font-size:.9375rem;line-height:1.6}.preview-facts dt{color:var(--app-secondary)}.preview-facts dd{margin:0}.count-field{width:100%;max-width:220px;margin-top:24px}.fine-print{font-size:.8125rem;color:var(--app-secondary);line-height:1.6}.action-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:24px 0 8px}.ready-card,.summary-card{max-width:760px;padding:40px 32px;text-align:center;margin:0 auto}.ready-card .action-row,.summary-card .action-row{justify-content:center}.ready-card>button{margin:16px 8px}.ready-mark,.summary-mark{width:64px;height:64px;background:#eaf3ff;color:var(--app-primary);border-radius:20px;display:grid;place-items:center;margin:16px auto 24px;font-size:2rem}.ready-card .fine-print{margin-top:24px}app-practice{display:block;max-width:920px;margin:0 auto 24px}app-root.practice-mode .app-header{max-width:952px}app-root.practice-mode .brand small{display:none}.practice-topline{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;background:var(--app-canvas)}.practice-status{position:relative;flex:1 1 136px;min-width:0;min-height:48px;display:flex;align-items:center}.practice-status:has(.try-again-splash){min-height:88px}.progress-count{font-weight:600}.practice-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.practice-grid>*{min-width:0}.exercise-panel{padding:32px;text-align:center;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}.practice-problem{min-width:0}.exercise-panel h1{color:var(--app-secondary);font-size:1.125rem;font-weight:500;margin:0 0 8px;scroll-margin-top:112px;letter-spacing:0}.math-board{width:100%;max-width:260px;margin:0 auto}.math-svg{width:100%;height:auto;display:block}.practice-visual{width:100%;max-width:200px;aspect-ratio:180/110;margin:0 auto 12px}.practice-visual>app-math-visual{display:block;width:100%}.answer-form{width:100%;max-width:360px;min-width:0;margin:0 auto}.answer-field{width:100%}.answer-field input{min-width:0;font-size:1.75rem;font-weight:600;font-variant-numeric:tabular-nums;text-align:center;scroll-margin-block-start:112px}.answer-form .field-hint{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.answer-feedback{min-height:48px;display:grid;align-items:center;padding:8px;margin-bottom:8px;line-height:1.4;font-size:.9375rem;color:var(--app-error);border-radius:12px}.answer-feedback.correct{color:var(--app-success);background:#eef8f0;font-weight:600}.feedback-placeholder{color:var(--app-secondary);font-size:.875rem}.answer-actions{display:grid;grid-template-columns:minmax(0,1fr) 52px 52px;gap:8px}.answer-actions>button{width:100%;min-width:48px;min-height:52px;padding-inline:8px}.answer-actions .large-button{padding-inline:12px}.hold-button{display:block;margin:8px auto 0}.help-button,.scratch-button{border-radius:12px}.try-again-splash{position:absolute;inset-block:0;inset-inline-start:0;inline-size:min(100%,320px);display:flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;background:var(--app-canvas);pointer-events:none}.try-again-headline{min-width:0;font-size:1rem;line-height:1.35;font-weight:600;color:var(--app-text)}.try-again-splash app-try-again-animation{display:block;flex:0 0 80px;width:80px;max-width:45%}.help-column{padding-top:16px}.help-intro{padding:0 16px 16px}.help-intro h2{margin-top:8px}.help-intro p{color:var(--app-secondary);font-size:.9375rem}.help-spark{color:var(--app-primary);font-size:1.5rem}.help-workspace{scroll-margin-block:112px 24px;padding:24px;border:1px solid var(--app-divider);background:#f5f8fc;border-radius:20px}.help-workspace:focus-visible{outline:3px solid var(--app-primary);outline-offset:2px;box-shadow:0 0 0 2px #fff}.help-panel-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.help-panel-header h2{scroll-margin-block-start:112px;font-size:1.125rem;margin:0}.help-panel-header>button{flex:0 0 auto}.help-instruction{margin:16px 0 8px;font-size:1.0625rem}.step-calculation{overflow-wrap:anywhere;font-size:1.5rem;line-height:1.4;font-weight:600;text-align:center;font-variant-numeric:tabular-nums}.help-workspace .math-board{max-width:240px}.step-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:12px 0 8px}.step-actions>button{min-width:48px}.try-alone{display:block;margin:8px auto 0}.help-disclosure{margin:24px 16px 0;font-size:.8125rem;color:var(--app-secondary)}.local-status{display:flex;justify-content:center;gap:8px;color:var(--app-secondary);font-size:.8125rem;line-height:1.6;text-align:center;margin:24px 0 0}.visible-answer{font-weight:600;color:var(--app-success);text-align:center}.summary-points{font-size:1.5rem;font-weight:650;color:var(--app-primary)}.summary-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:32px 0 24px}.summary-stats>div{background:var(--app-canvas);border-radius:16px;padding:24px 12px}.summary-stats strong{display:block;font-size:2rem;color:var(--app-primary);margin-bottom:8px}.summary-stats span{font-size:.875rem;line-height:1.5;display:block}.app-footer{max-width:1104px;margin:40px auto 0;padding:24px 16px;border-top:1px solid var(--app-divider);display:flex;justify-content:space-between;gap:16px;color:var(--app-secondary);font-size:.75rem}.skip-link{position:fixed;top:-100px;inset-inline-end:16px;padding:12px 16px;min-height:48px;background:#fff;color:var(--app-primary);z-index:20;border:2px solid var(--app-primary);border-radius:8px}.skip-link:focus{top:8px}.language-switch{max-width:1136px;padding:0 16px;margin:0 auto;display:flex;justify-content:flex-end}.language-switch mat-form-field{width:180px;max-width:100%}.scenario-bar{max-width:1136px;margin:0 auto 16px;padding:0 16px;display:flex;flex-wrap:wrap;align-items:start;justify-content:space-between;gap:12px;font-size:.8125rem;color:var(--app-secondary)}.scenario-bar details{max-width:650px;flex:1;min-width:0}.scenario-bar summary,.image-fixtures summary{cursor:pointer;width:fit-content;min-height:48px;padding:12px 0;text-decoration:underline;text-underline-offset:4px}.scenario-controls{background:#eef1f6;border:1px solid var(--app-divider);border-radius:16px;padding:16px;margin:8px 0}.scenario-controls mat-form-field{width:100%;margin-top:8px}.scenario-label{padding:8px 0;max-width:300px}.demo-home{text-align:center;margin-top:16px}.synthetic-image{background:var(--app-canvas);border:2px dashed var(--app-outline);border-radius:12px;text-align:center;padding:24px;margin:24px 0 12px}.synthetic-image span{font-size:.8125rem;color:var(--app-secondary);display:block}.synthetic-image strong{font-size:2rem;font-variant-numeric:tabular-nums;line-height:1.8;display:block}.image-fixtures{margin:8px 0 24px;font-size:.8125rem;color:var(--app-secondary)}.mock-save-panel{text-align:start;padding:24px;background:var(--app-canvas);border-radius:16px;margin-top:24px}.mock-save-panel h2{margin-top:0;font-size:1rem}.mock-save-panel button{margin-inline-end:8px}.practice-help-overlay,.practice-scratch-overlay,.practice-success-overlay{--mat-dialog-container-min-width: 0;--mat-dialog-container-shape: 24px;--mat-dialog-container-color: #ffffff;--mat-dialog-container-elevation-shadow: 0 16px 56px rgba(29, 29, 31, .1411764706)}.practice-help-overlay app-help-dialog,.practice-success-overlay app-success-dialog{max-height:calc(100dvh - 24px)}.practice-scratch-overlay app-scratch-dialog{max-height:calc(100svh - 24px)}.practice-help-overlay .math-board{max-width:220px}.cdk-overlay-pane.app-dialog-rtl{direction:rtl}.cdk-overlay-pane.app-dialog-ltr{direction:ltr}@media(max-width:760px){.app-header{padding:16px}.demo-badge{max-width:160px;font-size:.6875rem;padding:8px}.journey{margin:12px 0 24px;gap:8px;font-size:.8125rem}.journey i{width:16px}.journey span{gap:4px}.preparation-grid{grid-template-columns:1fr;gap:24px}.source-panel,.ready-card,.summary-card{padding:24px}.preparation-note{padding:0 8px}.paper-example{display:none}.quiet-list{margin-bottom:16px}.app-footer{margin-top:32px;flex-direction:column;gap:8px}app-root.practice-mode .scenario-bar{margin-bottom:4px;gap:4px;font-size:.75rem}app-root.practice-mode .scenario-label,app-root.practice-mode .journey{display:none}.exercise-panel{display:block}.practice-visual{max-width:180px}.answer-actions>button{min-height:48px}.help-column{padding-top:0}.help-intro{display:none}.help-workspace{padding:16px}.help-instruction{font-size:1rem}.help-disclosure{margin:0 4px;font-size:.75rem}.help-workspace:not([hidden])+.help-disclosure{margin-top:12px}.local-status{margin-top:12px}.summary-stats{gap:8px}.summary-stats>div{padding:16px 8px}.summary-stats span{font-size:.8125rem}}@media(max-width:359px){.app-header,main,.language-switch,.scenario-bar{padding-inline:12px}.brand{gap:8px;font-size:1rem}.demo-badge{max-width:112px}.source-panel,.ready-card,.summary-card{padding:12px}.practice-visual{max-width:180px}.preview-facts>div{grid-template-columns:minmax(0,1fr);gap:4px}.summary-stats{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}app-root.practice-mode .app-header{flex-wrap:nowrap;gap:8px;padding-block:2px}app-root.practice-mode .brand{gap:6px;font-size:.8125rem;min-width:0}app-root.practice-mode .brand-mark{width:24px;height:24px;border-radius:7px;font-size:1rem}app-root.practice-mode .brand>span:last-child{white-space:nowrap}.child-switch{flex:1 1 auto;min-width:44px;max-inline-size:12rem;min-block-size:44px;padding-inline:8px;font-size:.8125rem}app-root.practice-mode .brand{flex:0 0 auto}app-root.practice-mode .child-switch{flex:1 1 0;font-size:.8125rem}.child-switch .mdc-button__label{min-inline-size:0;max-inline-size:100%;flex:1 1 auto}.child-switch-content{display:flex;align-items:center;justify-content:center;gap:6px;min-inline-size:0;max-inline-size:100%}.child-switch bdi{display:block;min-inline-size:0;max-inline-size:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.child-switch-content bdi{flex:0 1 auto}.child-switch .child-switch-picture{inline-size:24px;block-size:24px;flex:0 0 24px}button.practice-exit{flex:0 0 auto;min-inline-size:44px;min-block-size:44px;padding:8px;font-size:.8125rem;white-space:nowrap}app-root.practice-mode .demo-badge{flex:0 1 auto}.practice-topline{position:static;padding:0}.practice-status{min-height:20px}.practice-status>div{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;width:100%}.progress-count{font-size:.8125rem;margin:0}.practice-topline+mat-progress-bar{margin:0 0 6px}@media(max-width:760px){app-practice{margin-bottom:8px}.exercise-panel{padding:8px}.practice-problem{display:grid;align-items:center;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 8px;margin-bottom:4px}.practice-problem h1{grid-column:2;grid-row:1;font-size:.9375rem;align-self:end;margin:0}.practice-problem .practice-visual{grid-column:1;grid-row:1/span 2;width:100%;max-width:160px;margin:0 auto}.practice-problem .question-speech{min-width:0;grid-column:2;grid-row:2;width:100%;margin:0;align-self:start}.answer-feedback{min-height:24px;padding:2px 4px;margin-bottom:4px;font-size:.8125rem}.feedback-placeholder{font-size:.8125rem}.answer-actions{grid-template-columns:minmax(0,1fr) 48px 48px;gap:6px}.answer-actions .large-button{grid-column:auto}}@media(max-width:359px){app-root.practice-mode .app-header,app-root.practice-mode main{padding-inline:8px}app-root.practice-mode .app-header{gap:4px}app-root.practice-mode .brand{font-size:.75rem;gap:4px}.exercise-panel{padding:8px}.practice-problem{gap:0 4px}}@media(max-width:280px){app-root.practice-mode .brand>span:last-child{display:none}.practice-problem{grid-template-columns:minmax(0,1fr)}.practice-problem h1,.practice-problem .practice-visual,.practice-problem .question-speech{grid-column:1;grid-row:auto}.answer-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.answer-actions .large-button{grid-column:1/-1}}app-root.home-mode{display:flex;flex-direction:column;min-block-size:100svh}app-root.home-mode main{flex:1 0 auto;width:100%;min-height:0}app-root.home-mode .app-header,app-root.home-mode .language-switch,app-root.home-mode .app-footer{width:100%}app-root.home-mode .app-header{padding-block:12px}app-root.home-mode .app-footer{margin-block-start:16px;padding-block:12px}app-root.home-mode .language-switch mat-form-field{margin-block-end:0}app-root.practice-mode main{min-height:0}.home-button{flex:0 0 44px;inline-size:44px;block-size:44px;min-inline-size:44px;min-block-size:44px}@media(max-width:600px){.app-header{gap:8px}.brand{min-inline-size:0;flex:1 1 auto;gap:6px;font-size:.875rem}.brand>span:last-child{min-inline-size:0;overflow-wrap:anywhere}.brand small{display:none}.brand-mark{width:28px;height:28px;border-radius:8px;font-size:1.125rem}.demo-badge{min-inline-size:0;max-inline-size:90px;padding:6px;gap:5px;overflow-wrap:anywhere}}.app-toast.mat-mdc-snack-bar-container{margin-bottom:max(16px,env(safe-area-inset-bottom));max-width:min(560px,100vw - 32px)}.app-toast-success{--mat-snack-bar-container-color: #245638;--mat-snack-bar-supporting-text-color: #ffffff;--mat-snack-bar-button-color: #ffffff}.app-toast-info{--mat-snack-bar-container-color: #004a99;--mat-snack-bar-supporting-text-color: #ffffff;--mat-snack-bar-button-color: #ffffff}.app-toast-warning{--mat-snack-bar-container-color: #fff0cc;--mat-snack-bar-supporting-text-color: #573b00;--mat-snack-bar-button-color: #573b00}.app-toast-error{--mat-snack-bar-container-color: #8c1d18;--mat-snack-bar-supporting-text-color: #ffffff;--mat-snack-bar-button-color: #ffffff}.runtime-practice app-runtime-item.has-equation-drawing{display:flex;flex-direction:column;gap:16px}.runtime-practice app-runtime-item.has-equation-drawing app-assessment-question,.runtime-practice app-runtime-item.has-equation-drawing .assessment-question,.runtime-practice app-runtime-item.has-equation-drawing .assessment-item,.runtime-practice app-runtime-item.has-equation-drawing app-assessment-short-response,.runtime-practice app-runtime-item.has-equation-drawing .short-response,.runtime-practice app-runtime-item.has-equation-drawing app-worksheet-question,.runtime-practice app-runtime-item.has-equation-drawing .worksheet-question{display:contents}.runtime-practice app-runtime-item.has-equation-drawing .assessment-header:empty{display:none}.runtime-practice app-runtime-item.has-equation-drawing .assessment-prompt,.runtime-practice app-runtime-item.has-equation-drawing .question-math,.runtime-practice app-runtime-item.has-equation-drawing .short-response-fields,.runtime-practice app-runtime-item.has-equation-drawing .answer-fields{display:none}.runtime-practice app-runtime-item.has-equation-drawing .inline-equation{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;font-size:2rem;font-weight:600;margin-block:12px}.runtime-practice app-runtime-item.has-equation-drawing .inline-equation input{box-sizing:border-box;inline-size:5ch;min-block-size:56px;padding:6px 10px;border:1px solid #85858b;border-radius:8px;background:var(--app-surface, #fff);color:inherit;font:inherit;text-align:center}.runtime-practice app-runtime-item.has-equation-drawing .inline-equation input:focus-visible{outline:3px solid #0066cc;outline-offset:2px}.runtime-practice app-runtime-item.has-equation-drawing .question-prompt{display:none}.runtime-practice app-runtime-item.has-equation-drawing .short-response-fields,.runtime-practice app-runtime-item.has-equation-drawing .answer-fields{order:1}.runtime-practice app-runtime-item.has-equation-drawing app-equation-board{order:2;margin-block:0}.runtime-practice app-runtime-item.has-equation-drawing .short-response-keypad,.runtime-practice app-runtime-item.has-equation-drawing .question-keypad{order:3;margin-inline:auto}.runtime-practice app-runtime-item.has-equation-drawing .assessment-prompt{min-block-size:0}.runtime-practice app-runtime-item .assessment-prompt{min-block-size:0;display:grid;align-items:center;text-align:center;font-size:1.5rem;line-height:1.45;overflow-wrap:anywhere}.runtime-practice app-runtime-item .short-response-fields.single-field{justify-items:center}.runtime-practice app-runtime-item .short-response-field:has(input[readonly][maxlength="4"],input[readonly][maxlength="5"]){inline-size:fit-content;max-inline-size:100%;justify-self:center}.runtime-practice app-runtime-item .short-response-field input[readonly][maxlength="4"],.runtime-practice app-runtime-item .short-response-field input[readonly][maxlength="5"]{box-sizing:border-box;inline-size:7ch;max-inline-size:100%;min-block-size:4.5rem;padding:.5rem .75rem;font-size:2.5rem;font-weight:600;font-variant-numeric:tabular-nums;text-align:center}@media(max-width:520px){.runtime-practice app-runtime-item .assessment-prompt{font-size:1.375rem}}.runtime-practice .drawing-check-hidden{display:none}.runtime-practice app-number-keypad .number-keypad>.clear-key{display:none}.runtime-practice app-runtime-item.has-equation-drawing{position:relative;max-inline-size:540px;margin-inline:auto}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check{order:4;min-block-size:56px;inline-size:min(340px,100%);margin-inline:auto}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check app-dashboard-action-icon{display:inline-block;inline-size:32px;block-size:32px;margin-inline-end:8px;vertical-align:middle}.runtime-practice app-runtime-item.has-equation-drawing .inline-equation,.runtime-practice app-runtime-item.has-equation-drawing app-equation-board{grid-column:1/-1}.runtime-practice app-runtime-item.has-equation-drawing .short-response-keypad,.runtime-practice app-runtime-item.has-equation-drawing .question-keypad{grid-column:1;inline-size:100%;max-inline-size:340px;margin:0 auto}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check{grid-column:1;position:relative;inline-size:100%;max-inline-size:340px;margin:0 auto}.runtime-practice app-runtime-item.has-equation-drawing .short-response-instruction,.runtime-practice app-runtime-item.has-equation-drawing .keypad-target{display:none}.runtime-practice app-runtime-item.has-equation-drawing app-number-keypad .number-keypad>button.clear-key{display:none}@media(min-width:620px){.runtime-practice app-runtime-item.has-equation-drawing .short-response-keypad,.runtime-practice app-runtime-item.has-equation-drawing .question-keypad{grid-row:3;grid-column:1}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check{grid-row:3;grid-column:2;align-self:start;margin-block-start:12px;min-block-size:72px}}.runtime-practice app-runtime-item.has-equation-drawing .assessment-header{display:none}.runtime-practice app-runtime-item.has-equation-drawing .inline-equation{grid-row:1;grid-column:1/-1}.runtime-practice app-runtime-item.has-equation-drawing app-equation-board{grid-row:2;grid-column:1/-1;inline-size:210px;max-inline-size:100%;justify-self:center}.runtime-practice app-runtime-item.has-equation-drawing .short-response-keypad,.runtime-practice app-runtime-item.has-equation-drawing .question-keypad{grid-row:3;grid-column:1}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check{grid-row:4;grid-column:1}@media(min-width:620px){.runtime-practice app-runtime-item.has-equation-drawing .drawing-check{grid-row:3;grid-column:2;align-self:center;margin-block-start:0}}.runtime-practice app-runtime-item.has-equation-drawing{grid-template-columns:minmax(0,1fr)}.runtime-practice app-runtime-item.has-equation-drawing .short-response-keypad,.runtime-practice app-runtime-item.has-equation-drawing .question-keypad{grid-row:3;grid-column:1/-1;justify-self:center}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check{grid-row:4;grid-column:1/-1;justify-self:center;align-self:start;inline-size:min(340px,100%);max-inline-size:340px;min-block-size:60px;margin:0 auto;font-size:1.15rem}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check app-dashboard-action-icon{inline-size:40px;block-size:40px;margin-inline-end:10px}.runtime-practice app-runtime-item.has-equation-drawing .inline-equation{margin-block:4px;gap:10px}.runtime-practice app-runtime-item.has-equation-drawing app-equation-board{inline-size:180px;margin-block:0}.runtime-practice app-runtime-item.has-equation-drawing .number-keypad{margin-block-start:4px;gap:7px}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check{--mdc-filled-button-container-color:#23774b;--mdc-filled-button-label-text-color:#fff;background:#23774b;color:#fff;border-radius:28px;min-block-size:56px;font-size:1.125rem;box-shadow:0 3px #185936}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check:not(:disabled):hover{background:#1c6840}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check:not(:disabled):active{transform:translateY(2px);box-shadow:0 1px #185936}.runtime-practice app-runtime-item.has-equation-drawing .drawing-check app-dashboard-action-icon{inline-size:36px;block-size:36px}.runtime-practice app-runtime-item.has-equation-drawing .inline-equation input:focus{outline:3px solid #0066cc;outline-offset:3px;border-color:#06c;background:#eaf3ff;box-shadow:0 0 0 6px #0066cc1a;color:#153e68}
