.v2-study-mode{color:#17212b;background:#eef2f4;min-height:100vh;padding:0 0 28px}.v2-study-toolbar{z-index:30;color:#fff;background:#17344f;justify-content:space-between;gap:16px;padding:14px 22px;display:flex;position:sticky;top:0}.v2-study-toolbar span{opacity:.7}.v2-paper{aspect-ratio:1000/1320;background:#fff;border:1px solid #dce3e8;width:min(900px,100% - 24px);margin:20px auto;position:relative;overflow:hidden;box-shadow:0 16px 40px #0f172a22}.v2-worksheet-content-layer{z-index:15;pointer-events:none;position:absolute;inset:0}.v2-problem-block{box-sizing:border-box;border-bottom:1px solid #eef1f3;padding:14px;position:absolute}.v2-problem-block--correction{outline-offset:-2px;background:#fff9f8;border-radius:10px;outline:2px solid #e9b4ae}.v2-problem-expression{text-align:right;width:120px;margin:auto;font-size:1.5rem;font-weight:700}.v2-problem-expression>div:nth-child(2){justify-content:space-between;display:flex}.v2-problem-rule{border-top:2px solid #1f2937;margin-top:5px}.v2-work-template{width:235px;max-width:100%;margin:14px auto}.v2-procedural-row{grid-template-columns:28px repeat(4,1fr);align-items:end;min-height:43px;display:grid}.v2-procedural-sign{text-align:center}.v2-procedural-slot{border-bottom:1.5px solid #aeb8c1;height:30px;margin:0 5px}.v2-procedural-empty{height:30px}.v2-independent-work-area{border:1px dashed #d7dde2;border-radius:8px;height:96px;margin-top:14px}.v2-final-answer-capture{pointer-events:auto;flex-direction:column;gap:5px;width:150px;max-width:100%;margin:10px auto 0;display:flex}.v2-final-answer-capture label{color:#51606d;font-size:.78rem;font-weight:700}.v2-final-answer-input{box-sizing:border-box;text-align:right;color:#17212b;background:#fff;border:1.5px solid #bcc8d1;border-radius:8px;width:100%;padding:8px 10px;font:700 1rem/1.2 inherit}.v2-final-answer-input:focus{border-color:#17344f;outline:3px solid #17344f22}.v2-final-answer-input:disabled{color:#697782;background:#f4f6f7}.v2-problem-block--correction .v2-final-answer-input{border-color:#b42318}.v2-correction-message{color:#8f1d14;font-size:.72rem;font-weight:650;line-height:1.25}.v2-correction-toolbar{background:#fff8f7;border:1px solid #ead2cf;border-radius:10px;width:min(900px,100% - 24px);margin:12px auto 0;padding:12px 14px}.v2-correction-toolbar strong{margin-bottom:4px;display:block}.v2-study-action{color:#fff;background:#17344f;border:0;border-radius:9px;padding:10px 16px;font-weight:700}.v2-study-action:disabled{opacity:.45}.v2-study-status{background:#fff;border:1px solid #dce3e8;border-radius:9px;width:min(900px,100% - 24px);margin:10px auto;padding:10px 12px;font-size:.9rem}.v2-ink-shell,.v2-ink-layer,.v2-markup-layer{z-index:10;width:100%;height:100%;position:absolute;inset:0}.v2-ink-shell{pointer-events:none}.v2-ink-shell button{z-index:12;pointer-events:auto;position:absolute;top:12px;right:12px}.v2-ink-layer{pointer-events:auto;touch-action:none}.v2-ink-stroke{fill:none;stroke:#111827;stroke-width:2.1px;stroke-linecap:round;stroke-linejoin:round}.v2-ink-stroke--background{opacity:.72}.v2-markup-layer{z-index:20;pointer-events:none}.v2-markup{fill:#b42318;font-size:42px;font-weight:800}.v2-markup--approved_mark{fill:#19724a}.v2-study-footer{justify-content:center;align-items:center;gap:12px;width:min(900px,100% - 24px);margin:auto;display:flex}.v2-study-footer button{background:#fff;border:1px solid #d5dde3;border-radius:9px;padding:9px 13px}.v2-study-footer button:disabled{opacity:.4}@media (max-width:720px){.v2-paper{aspect-ratio:1000/1320;width:min(100%,100% - 12px)}.v2-problem-block{padding:10px}.v2-work-template{margin-top:8px}.v2-final-answer-capture{margin-top:6px}}.v2-generic-prompt{color:#1d2939;flex-direction:column;justify-content:center;gap:7px;min-height:88px;padding:6px 4px 12px;font-size:1.22rem;line-height:1.35;display:flex}.v2-generic-prompt span{color:#667085;font-size:.82rem;font-weight:500;line-height:1.4}:root{--brand-primary:#243746;--brand-secondary:#405f73;--brand-accent:#6e93aa;--brand-soft:#dce7ef;--surface-primary:#fff;--surface-secondary:#f6f8fa;--surface-subtle:#eef3f6;--text-primary:#182630;--text-secondary:#536471;--text-inverse:#fff;--border:#d7e0e6;--success:#2f6f55;--warning:#86601d;--danger:#9b3d3d;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--shadow-card:0 8px 24px #18263014;--content-max:1180px}*{box-sizing:border-box}html{background:var(--surface-secondary);color:var(--text-primary);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}img,svg{max-width:100%}.app-shell{min-height:100vh}.app-header{background:var(--surface-primary);border-bottom:1px solid var(--border)}.app-header__inner{max-width:var(--content-max);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:14px 18px;display:flex}.app-main{max-width:var(--content-max);margin:0 auto;padding:24px 18px 48px}.brand-logo{width:150px;height:auto;display:block}.nav{flex-wrap:wrap;gap:8px;display:flex}.nav a{border-radius:var(--radius-sm);color:var(--text-secondary);padding:8px 10px;text-decoration:none}.nav a[aria-current=page]{background:var(--brand-soft);color:var(--brand-primary)}.card{background:var(--surface-primary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px}.grid{gap:16px;display:grid}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{border-radius:var(--radius-md);background:var(--surface-primary);border:1px solid var(--border);padding:16px}.metric strong{margin-top:4px;font-size:1.6rem;display:block}.muted{color:var(--text-secondary)}.btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-primary);color:var(--text-primary);padding:10px 14px}.btn--primary{border-color:var(--brand-primary);background:var(--brand-primary);color:var(--text-inverse)}.stack{gap:16px;display:grid}.empty-state{border:1px dashed var(--border);border-radius:var(--radius-lg);text-align:center;background:var(--surface-primary);padding:28px}.help-tip{border-left:4px solid var(--brand-accent);background:var(--brand-soft);border-radius:var(--radius-sm);padding:12px 14px}.role-links{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.role-link{text-decoration:none}.role-link .card{transition:border-color .15s,transform .15s}.role-link:hover .card{border-color:var(--brand-accent);transform:translateY(-1px)}@media (max-width:760px){.grid--3,.role-links{grid-template-columns:1fr}.app-header__inner{flex-direction:column;align-items:flex-start}}.eyebrow{color:var(--brand-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.hero-card{background:linear-gradient(135deg, var(--surface-primary), var(--brand-soft))}.button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn--small{padding:6px 10px;font-size:.86rem}.btn--large{padding:13px 20px;font-weight:750}.btn:disabled{opacity:.45;cursor:not-allowed}.pill{background:var(--brand-soft);color:var(--brand-primary);border-radius:999px;align-items:center;padding:5px 9px;font-size:.78rem;font-weight:700;display:inline-flex}.learning-header{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.learning-header h1{margin:4px 0 0}.learning-progress{text-align:right;min-width:180px}.progress-track{background:var(--surface-subtle);border-radius:999px;height:8px;margin-top:7px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--brand-secondary);height:100%;transition:width .2s;display:block}.question-card{gap:22px;display:grid}.question-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.math-horizontal,.math-concept{text-align:center;place-items:center;min-height:110px;font-size:clamp(2rem,7vw,4.4rem);display:grid}.math-concept{font-size:clamp(1.35rem,4vw,2.2rem)}.math-support{color:var(--text-secondary);margin:0 0 -12px;font-size:1rem;font-weight:500}.math-vertical{text-align:right;font-variant-numeric:tabular-nums;width:min(260px,80vw);margin:0 auto;font-size:clamp(2.7rem,9vw,5rem);line-height:1.05}.math-vertical>div:nth-child(2){grid-template-columns:auto 1fr;column-gap:18px;display:grid}.math-vertical__line{border-top:4px solid var(--text-primary);margin-top:8px}.ink-pad{gap:8px;display:grid}.ink-pad__toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.ink-pad__actions{gap:8px;display:flex}.ink-pad__canvas{border:1px solid var(--border);border-radius:var(--radius-md);touch-action:none;cursor:crosshair;background:#fffdf7;width:100%;height:220px;display:block}.ink-pad__paper{fill:#fffdf7}.ink-pad__guide{stroke:#e8e2d4;stroke-width:1px;stroke-dasharray:4 8}.ink-pad__stroke{fill:none;stroke:#182630;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.ink-pad__caption{margin:0;font-size:.82rem}.answer-panel{border-top:1px solid var(--border);gap:9px;padding-top:18px;display:grid}.answer-row{grid-template-columns:minmax(100px,220px) auto;align-items:stretch;gap:10px;display:grid}.answer-input{border:2px solid var(--border);border-radius:var(--radius-md);text-align:center;width:100%;min-width:0;padding:10px 14px;font-size:2rem;font-weight:800}.answer-input:focus{outline:3px solid var(--brand-soft);border-color:var(--brand-secondary)}.feedback{border-radius:var(--radius-md);padding:14px 16px}.feedback p{margin-bottom:0}.feedback--error{color:#713333;background:#fff3f3;border:1px solid #e4b3b3}.learning-footer{flex-wrap:wrap;justify-content:center;gap:16px;font-size:.88rem;display:flex}.skill-list,.history-list{gap:10px;display:grid}.skill-row,.history-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;padding:13px 0;display:flex}.skill-row:last-child,.history-item:last-child{border-bottom:0}.skill-code{margin-top:3px;font-size:.76rem}.skill-mastery{text-align:right;min-width:110px}.skill-mastery span{font-size:.78rem;display:block}.history-item__detail{color:var(--text-secondary);flex-wrap:wrap;justify-content:flex-end;gap:8px 12px;font-size:.82rem;display:flex}.demo-tool{border-style:dashed}.student-monitor-card{gap:18px;display:grid}.student-monitor-card__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.status-dot{background:var(--surface-subtle);border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:750;display:inline-flex}.status-dot--in_progress{color:var(--success);background:#eaf5ef}.status-dot--completed{color:var(--brand-primary);background:var(--brand-soft)}@media (max-width:760px){.learning-header{flex-direction:column;align-items:stretch}.learning-progress{text-align:left;min-width:0}.answer-row{grid-template-columns:1fr}.skill-row,.history-item,.student-monitor-card__header{flex-direction:column;align-items:flex-start}.skill-mastery{text-align:left}.history-item__detail{justify-content:flex-start}}.ink-preview{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fffdf7;width:min(100%,520px);margin-top:8px;display:block}.ink-history{width:100%;margin-top:8px}.ink-history summary{cursor:pointer;color:var(--brand-secondary);font-weight:700}.history-item{flex-wrap:wrap}.notes-panel{gap:18px;display:grid}.note-composer{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-secondary);gap:10px;padding:14px;display:grid}.note-composer textarea{resize:vertical;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-primary);width:100%;color:var(--text-primary);padding:11px 12px}.note-composer textarea:focus,.note-composer select:focus{outline:3px solid var(--brand-soft);border-color:var(--brand-secondary)}.note-composer__controls{grid-template-columns:minmax(150px,1fr) minmax(210px,1.4fr) auto;align-items:end;gap:10px;display:grid}.note-composer__controls label{color:var(--text-secondary);gap:5px;font-size:.82rem;font-weight:700;display:grid}.note-composer select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-primary);width:100%;color:var(--text-primary);padding:9px 10px}.note-help{margin:0;font-size:.8rem}.notes-list{gap:10px;display:grid}.note-item{border-left:4px solid var(--brand-accent);background:var(--surface-secondary);border-radius:var(--radius-sm);padding:12px 14px}.note-item p{white-space:pre-wrap;margin:9px 0}.note-item__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.note-item__header>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.note-item__meta{flex-wrap:wrap;gap:8px 12px;font-size:.76rem;display:flex}.runtime-card{gap:16px;display:grid}.runtime-card h2{margin-bottom:4px}.runtime-note{margin:0;font-size:.82rem}@media (max-width:760px){.note-composer__controls{grid-template-columns:1fr}.note-item__header{flex-direction:column;align-items:flex-start}}.resolver-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.resolver-card{gap:16px;width:min(760px,100%);display:grid}.resolver-card h1{margin:0}.resource-summary{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.resource-target{box-shadow:none;gap:7px;display:grid}.assignment-question-list{gap:10px;padding-left:24px;display:grid}.assignment-question-list li{border-bottom:1px solid var(--border);padding:10px 0}.assignment-question-list li span{margin-top:4px;font-size:.78rem;display:block}.print-assignment{color:#151515;background:#fff;width:min(210mm,100%);min-height:297mm;margin:0 auto;padding:12mm}.print-assignment__header{border-bottom:2px solid #222;justify-content:space-between;gap:20px;margin-bottom:18px;padding-bottom:12px;display:flex}.print-assignment__header h1{margin:4px 0;font-size:1.5rem}.print-assignment__meta{text-align:right;gap:4px;font-size:.82rem;display:grid}.print-controls{margin-bottom:18px}.print-qr-box{word-break:break-all;border:1px dashed #777;gap:5px;width:min(330px,100%);margin:0 0 18px auto;padding:12px;display:grid}.print-question-list{gap:18px;padding-left:26px;display:grid}.print-question{break-inside:avoid;padding-left:8px}.print-question__prompt{font-size:1.18rem;font-weight:700}.print-answer-space{border-bottom:1px solid #aaa;height:58px;margin-top:8px}.print-skill-code{color:#777;margin-top:4px;font-size:.65rem;display:block}.print-assignment__footer{text-align:center;color:#666;border-top:1px solid #aaa;margin-top:28px;padding-top:8px;font-size:.7rem}@media (max-width:760px){.print-assignment{min-height:0;padding:18px}.print-assignment__header{flex-direction:column}.print-assignment__meta{text-align:left}}.qr-code-image{justify-items:center;gap:6px;margin:0;display:grid}.qr-code-image img{max-width:100%;height:auto;image-rendering:pixelated;display:block}.qr-code-image figcaption{max-width:100%;color:var(--color-text-muted,#667085);word-break:break-all;text-align:center;font-size:11px}.auth-page{place-items:center;min-height:100vh;display:grid}.auth-card{width:min(520px,100%)}.nav-logout{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;padding:8px 10px}.cloud-question-prompt{text-align:center;padding:24px 12px;font-size:clamp(1.4rem,4vw,2.35rem);font-weight:750;line-height:1.35}.cloud-question-support{text-align:center;margin-top:-12px}.cloud-sync-status{flex-wrap:wrap;align-items:center;gap:10px;display:flex}@page{size:A4 portrait;margin:12mm}@media print{body{color:#000;background:#fff}.no-print,.app-header{display:none!important}.app-main{max-width:none;margin:0;padding:0}.card{box-shadow:none;border-color:#aaa}a{text-decoration:none}.print-assignment{width:auto;min-height:0;margin:0;padding:0}.print-assignment__header{margin-top:0}.print-question-list{gap:12mm}.print-question{break-inside:avoid;page-break-inside:avoid}.print-answer-space{height:18mm}.print-qr-box{break-inside:avoid;page-break-inside:avoid}}
