:root{--color-page:#f3f8fb;--color-page-soft:#f7fbfd;--color-surface:#fff;--color-surface-blue:#f5fafc;--color-surface-blue-strong:#eaf3f8;--color-text:#1f2a2e;--color-heading:#003143;--color-muted:#597985;--color-border:#b8d0dd;--color-border-soft:#dceaf1;--color-border-strong:#597985;--color-primary:#003143;--color-primary-hover:#0a4359;--color-secondary:#597985;--color-accent:#dddb00;--color-success:#2e7d32;--color-success-border:#9ccc9f;--color-success-bg:#eaf6ec;--color-error:#c62828;--color-error-border:#efb3b3;--color-error-bg:#fdecec;--color-warning:#7a4f11;--color-warning-border:#e5c46e;--color-warning-bg:#fff7e6;--color-disabled-text:#7e9098;--color-disabled-bg:#e6eef2;--focus-ring:0 0 0 3px #dddb0059;--shadow-soft:0 14px 32px #00314314;--shadow-card:0 10px 24px #00314312;--radius-xs:8px;--radius-sm:10px;--radius-md:12px;--radius-lg:18px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--control-height:44px;color:var(--color-text);background:var(--color-page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{background:var(--color-page)}body{background:linear-gradient(180deg, #fff 0, var(--color-page-soft) 210px, var(--color-page) 520px), var(--color-page);min-width:960px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,select:disabled{cursor:not-allowed}h1,h2,h3,p{margin-top:0}.app-shell{width:min(1160px,100vw - 56px);padding:var(--space-5) 0 var(--space-8);margin:0 auto}.brand-strip{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:76px;margin-bottom:var(--space-6);padding:var(--space-3) var(--space-5);border:1px solid var(--color-border-soft);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:#fffffff0;display:flex;box-shadow:0 8px 24px #0031430f}.brand-home{align-items:center;gap:var(--space-3);color:inherit;text-align:left;background:0 0;border:0;padding:0;display:inline-flex}.brand-logo{object-fit:contain;width:52px;height:52px;display:block}.brand-strip strong{color:var(--color-heading);font-size:26px;line-height:1;display:block}.brand-eyebrow{margin-bottom:var(--space-1);color:var(--color-muted);font-size:13px;font-weight:700;display:block}.top-nav{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.nav-button{min-height:40px;padding:0 var(--space-4);border:1px solid var(--color-border-soft);color:var(--color-heading);background:var(--color-surface);border-radius:999px;font-size:14px;font-weight:700}.nav-button:hover,.nav-button-active{border-color:var(--color-primary);color:var(--color-heading);background:var(--color-surface-blue-strong);box-shadow:inset 0 -3px 0 var(--color-accent)}.home-panel,.worksheet-frame{border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-soft)}.home-panel{padding:52px var(--space-7);text-align:left;border-width:1px;position:relative;overflow:hidden}.home-panel:before{content:"";background:var(--color-accent);height:5px;position:absolute;top:0;left:0;right:0}.home-kicker{margin-bottom:var(--space-3);color:var(--color-muted);font-size:15px;font-weight:700;line-height:1.25}.home-panel h1,.section-heading h1{color:var(--color-heading);letter-spacing:0;font-size:36px;font-weight:700;line-height:1.05}.home-panel h1{max-width:720px;margin-bottom:var(--space-3);letter-spacing:0;font-size:clamp(34px,5vw,54px)}.home-intro,.section-heading p,.preview-panel p,.mode-card p{color:var(--color-muted);font-size:15px;line-height:1.5}.home-intro{max-width:560px;margin-bottom:var(--space-7);font-size:18px}.mode-grid{gap:var(--space-6);text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mode-card{justify-content:space-between;align-items:flex-start;gap:var(--space-5);min-height:278px;padding:var(--space-6);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);flex-direction:column;transition:border-color .14s,transform .14s,box-shadow .14s;display:flex;position:relative;overflow:hidden}.mode-card:before{content:"";background:var(--color-accent);width:5px;position:absolute;inset:0 auto 0 0}.mode-card:hover{border-color:var(--color-border);transform:translateY(-1px);box-shadow:0 16px 30px #0031431a}.mode-card-heading,.section-heading,.preview-title-row{align-items:center;gap:var(--space-3);display:flex}.mode-card-heading{align-items:flex-start}.mode-card-icon{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-blue);width:48px;height:48px;color:var(--color-heading);flex:none;place-items:center;display:inline-grid}.mode-card-icon:before{content:"";background:currentColor;width:24px;height:24px;display:block}.mode-card-icon-workbook:before{clip-path:polygon(15% 0,72% 0,85% 13%,85% 100%,15% 100%);box-shadow:inset 0 -5px 0 var(--color-accent)}.mode-card-icon-practice:before{background:radial-gradient(circle, var(--color-accent) 0 18%, transparent 19% 100%), transparent;border:3px solid;border-radius:50%}.mode-card h2,.preview-panel h2{color:var(--color-heading);margin-bottom:0;font-size:19px;font-weight:700;line-height:1.25}.mode-card p{margin-bottom:auto}.mode-card-label{margin-bottom:var(--space-1);color:var(--color-muted);font-size:14px;font-weight:800;line-height:1.25}.worksheet-frame{padding:var(--space-7)}.setup-settings-panel{gap:var(--space-5);margin-bottom:var(--space-6);padding:var(--space-5);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--color-surface) 0, var(--color-surface-blue) 100%);box-shadow:var(--shadow-card);display:grid}.panel-heading{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-soft)}.panel-heading span{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);color:var(--color-muted);font-size:13px;font-weight:800;line-height:1.2;display:inline-flex}.panel-heading span:before{content:"";background:var(--color-accent);border-radius:999px;width:18px;height:3px}.panel-heading h2{margin-bottom:var(--space-2);color:var(--color-heading);font-size:23px;line-height:1.15}.panel-heading p{color:var(--color-muted);margin-bottom:0;font-size:14px;line-height:1.45}.setup-settings-panel .control-grid,.setup-settings-panel .setup-control-grid{margin-bottom:0}.setup-settings-panel .practice-guidance{border-left-color:var(--color-accent);background:#ffffffb8;margin:0}.setup-settings-panel .action-row{padding-top:var(--space-1)}.section-heading{margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border-soft);align-items:flex-start}.section-heading h1{margin-bottom:var(--space-2)}.section-heading p{max-width:800px;margin-bottom:0}.task-badge{color:var(--color-surface);background:var(--color-primary);border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-size:18px;font-weight:700;line-height:1;display:grid;box-shadow:inset 0 0 0 2px #fff3}.control-grid{gap:var(--space-5);margin-bottom:var(--space-6);padding:var(--space-5);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-blue);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.setup-control-grid{gap:var(--space-5);padding:var(--space-5);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-blue);display:grid}.workbook-control-grid{grid-template-columns:minmax(150px,.65fr) minmax(360px,1.6fr)}.workbook-control-grid .field-grade{grid-column:1}.workbook-control-grid .field-topic{grid-column:2}.workbook-control-grid .difficulty-field{grid-column:1/-1;max-width:460px}.practice-control-grid{grid-template-columns:minmax(150px,.65fr) minmax(280px,1fr) minmax(240px,.9fr)}.practice-control-grid .field-grade{grid-column:1}.practice-control-grid .field-topic{grid-column:2/4}.practice-control-grid .field-type{grid-column:1/3}.practice-control-grid .difficulty-field{grid-column:3}.practice-guidance{margin:calc(-1 * var(--space-3)) 0 var(--space-6);padding:var(--space-3) var(--space-4);border-left:4px solid var(--color-border);border-radius:var(--radius-xs);color:var(--color-heading);background:var(--color-surface-blue);font-size:15px;font-weight:700;line-height:1.4}.field{gap:var(--space-2);display:grid}.field span,.field legend{color:var(--color-heading);font-size:15px;font-weight:700;line-height:1.2}.field legend{padding:0}.difficulty-field{border:0;min-width:0;margin:0;padding:0}.difficulty-toggle{min-height:var(--control-height);grid-template-columns:1.3fr repeat(3,minmax(44px,.7fr));gap:6px;display:grid}.difficulty-option{min-width:0;height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-xs);color:var(--color-heading);background:var(--color-surface);justify-content:center;align-items:center;font-size:15px;font-weight:700;line-height:1;display:inline-flex}.difficulty-option:hover{background:var(--color-surface-blue-strong)}.difficulty-option-selected{border-color:var(--color-primary);color:var(--color-surface);background:var(--color-primary)}.difficulty-option-selected:hover{background:var(--color-primary-hover)}.field select{width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-xs);color:var(--color-heading);background:var(--color-surface);font-weight:700}.field select:focus-visible,.answer-input:focus-visible,.choice-button:focus-visible,.button:focus-visible,.brand-home:focus-visible,.nav-button:focus-visible,.difficulty-option:focus-visible,.mode-card:focus-within{box-shadow:var(--focus-ring);outline:none}.field select:focus-visible,.answer-input:focus-visible{border-color:var(--color-border-strong)}.field select:disabled{border-color:var(--color-border-soft);color:var(--color-disabled-text);background:var(--color-disabled-bg)}.preview-panel{margin-bottom:var(--space-6);padding:var(--space-6);border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.preview-title-row,.preview-panel p,.exercise-card p,.issue-panel p{margin-bottom:var(--space-4)}.preview-placeholder{min-height:156px;padding:var(--space-6);border:1.5px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-heading);background:var(--color-surface-blue);text-align:center;place-items:center;display:grid}.preview-placeholder span{max-width:620px;font-size:15px;font-weight:700;line-height:1.45}.generated-content{gap:var(--space-4);display:grid}.generated-bottom-actions{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border-soft)}.preview-helper{border:1px solid var(--color-border-soft);width:fit-content;color:var(--color-muted);background:var(--color-surface-blue);border-radius:999px;margin-bottom:0;padding:6px 10px;font-size:13px;line-height:1.35}.warning-panel,.issue-panel{border-radius:var(--radius-md);color:var(--color-text);font-size:15px;line-height:1.45}.warning-panel{padding:var(--space-3) var(--space-4);border:1px solid var(--color-warning-border);background:var(--color-warning-bg);color:var(--color-warning);margin-bottom:0;font-weight:700}.issue-panel{padding:var(--space-5);border:1px solid var(--color-warning-border);background:var(--color-warning-bg)}.issue-panel h3{margin-top:0;margin-bottom:var(--space-2);color:var(--color-heading);font-size:18px;line-height:1.25}.issue-panel p{color:var(--color-text)}.issue-panel ul{padding-left:var(--space-5);color:var(--color-muted);margin:0;font-size:13px;line-height:1.45}.exercise-list,.resource-page{gap:var(--space-5);display:grid}.resource-list{gap:var(--space-3);display:grid}.resource-card{align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-blue);grid-template-columns:minmax(0,1fr) auto;display:grid}.resource-card h2{margin:0 0 var(--space-1);color:var(--color-heading);font-size:18px;line-height:1.25}.resource-card p{overflow-wrap:anywhere;color:var(--color-muted);margin:0;font-size:13px;line-height:1.35}.resource-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.exercise-card{padding:var(--space-6);border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.exercise-card-heading{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.exercise-card-heading h3{color:var(--color-heading);margin:0 0 6px;font-size:19px;line-height:1.25}.exercise-card-heading p{border:1px solid var(--color-border-soft);width:fit-content;color:var(--color-secondary);background:var(--color-surface-blue);border-radius:999px;margin-bottom:0;padding:4px 9px;font-size:13px;font-weight:700;line-height:1.25}.exercise-meta-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.difficulty-dots{border:1px solid var(--color-border-soft);background:var(--color-surface-blue);border-radius:999px;align-items:center;gap:4px;min-height:25px;padding:4px 8px;display:inline-flex}.difficulty-dot{border:1px solid var(--color-border);background:var(--color-surface);border-radius:50%;width:7px;height:7px}.difficulty-dot.filled{border-color:var(--color-secondary);background:var(--color-secondary)}.source-meta-block{margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-soft)}.source-meta-main{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.source-line{min-width:0;color:var(--color-muted);overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.4}.source-details-button{border:1px solid var(--color-border-soft);color:var(--color-muted);cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:2px 7px;font-size:11px;font-weight:700;line-height:1.4}.source-details-button:hover,.source-details-button:focus-visible{border-color:var(--color-border);color:var(--color-heading);background:var(--color-surface-blue)}.source-detail-line{margin:var(--space-1) 0 0;color:var(--color-muted);overflow-wrap:anywhere;font-size:12px;line-height:1.35}.exercise-placeholder-body{padding:var(--space-5);border:1.5px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-heading);background:var(--color-surface-blue);font-size:15px;font-weight:700;line-height:1.45}.exercise-placeholder-body strong,.exercise-placeholder-body span{display:block}.exercise-placeholder-body strong{margin-bottom:var(--space-2)}.exercise-placeholder-body span{color:var(--color-muted);font-weight:400}.exercise-asset{object-fit:contain;object-position:center;max-width:100%;height:auto;display:block}.exercise-asset-fallback{min-width:44px;min-height:44px;padding:var(--space-2);border:1.5px dashed var(--color-border);border-radius:var(--radius-xs);color:var(--color-heading);background:var(--color-surface);text-align:center;place-items:center;gap:2px;font-size:12px;font-weight:700;line-height:1.2;display:inline-grid}.exercise-asset-fallback small{color:var(--color-muted);font-size:10px;font-weight:400;display:block}.exercise-note{width:fit-content;margin-bottom:var(--space-4);color:var(--color-heading);background:var(--color-surface-blue);border-radius:999px;padding:6px 10px;font-size:14px;font-weight:700;line-height:1.35}.comparison-grid{gap:var(--space-3) var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.comparison-row{align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);grid-template-columns:minmax(44px,.5fr) max-content minmax(44px,.5fr) minmax(118px,1fr);display:grid}.comparison-value,.calculation-expression{color:var(--color-heading);font-size:22px;font-weight:700;line-height:1.2}.calculation-ordinal{min-width:1.5em;margin-right:var(--space-4);display:inline-block}.calculation-operation{white-space:nowrap}.choice-group{flex-wrap:wrap;gap:6px;display:inline-flex}.choice-button{width:var(--control-height);height:var(--control-height);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-xs);color:var(--color-heading);background:var(--color-surface);font-size:22px;font-weight:700;line-height:1}.choice-button-text{width:auto;min-width:88px;max-width:100%;height:auto;min-height:var(--control-height);padding:8px var(--space-3);white-space:normal;overflow-wrap:anywhere;line-height:1.15}.choice-button:hover{background:var(--color-surface-blue-strong)}.choice-button-selected{border-color:var(--color-primary);color:var(--color-surface);background:var(--color-primary)}.choice-button-selected:hover{background:var(--color-primary-hover)}.choice-button.field-correct,.answer-input.field-correct,.pattern-select.field-correct,.pattern-target.field-correct{border-color:var(--color-success-border);color:var(--color-success);background:var(--color-success-bg)}.choice-button.field-incorrect,.answer-input.field-incorrect,.pattern-select.field-incorrect,.pattern-target.field-incorrect{border-color:var(--color-error-border);color:var(--color-error);background:var(--color-error-bg)}.feedback-chip{border-radius:999px;align-items:center;width:fit-content;min-height:30px;padding:5px 10px;font-size:14px;font-weight:700;line-height:1.3;display:inline-flex}.feedback-correct{border:1px solid var(--color-success-border);color:var(--color-success);background:var(--color-success-bg)}.feedback-incorrect{border:1px solid var(--color-error-border);color:var(--color-error);background:var(--color-error-bg)}.feedback-glyph{margin-right:var(--space-1)}.sequence-row{gap:var(--space-3);flex-wrap:wrap;align-items:flex-start;display:flex}.sequence-box{border-radius:var(--radius-xs);width:76px;height:48px;color:var(--color-heading);place-items:center;font-size:18px;font-weight:700;line-height:1.2;display:inline-grid}.sequence-static{border:1px solid var(--color-border-soft);background:var(--color-surface-blue)}.sequence-input-wrap{justify-items:center;gap:7px;display:grid}.pattern-row,.pattern-choice-row{gap:var(--space-3);flex-wrap:wrap;align-items:flex-start;display:flex}.pattern-row{margin-bottom:var(--space-4)}.pattern-cell,.pattern-select,.pattern-target{border-radius:var(--radius-xs);width:76px;height:48px;color:var(--color-heading);text-align:center;place-items:center;font-size:18px;font-weight:700;line-height:1.2;display:inline-grid}.pattern-static{border:1px solid var(--color-border-soft);background:var(--color-surface-blue)}.pattern-input-wrap{justify-items:center;gap:7px;display:grid}.pattern-select{border:1.5px solid var(--color-border-strong);background:var(--color-surface)}.pattern-target{border:1.5px solid var(--color-border-strong);background:var(--color-surface);padding:0}.pattern-target:hover,.pattern-target-selected{border-color:var(--color-primary);background:var(--color-surface-blue-strong)}.pattern-asset{object-fit:contain;width:48px;height:40px}.pattern-choice-row{margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue)}.pattern-choice{min-height:34px;padding:0 var(--space-3);border:1px solid var(--color-border);color:var(--color-heading);background:var(--color-surface);border-radius:999px;place-items:center;font-size:14px;font-weight:700;display:inline-grid}.pattern-choice:disabled{color:var(--color-disabled-text);background:var(--color-disabled-bg)}.count-group-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.count-group-card{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);display:grid}.count-group-card h4{color:var(--color-heading);margin:0;font-size:16px}.count-icon-cloud{min-height:116px;max-height:184px;padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface);flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:8px;display:flex;overflow:auto}.count-icon{object-fit:contain;flex:none;width:40px;height:40px}.count-answer-row{align-items:center;gap:var(--space-3);grid-template-columns:1fr auto;display:grid}.count-answer-row>span:first-child{color:var(--color-heading);font-size:15px;font-weight:700}.count-answer-row .feedback-chip{grid-column:1/-1}.picture-story-panel,.picture-addition-list,.balance-list{gap:var(--space-4);display:grid}.picture-story-panel{padding:var(--space-4);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue)}.picture-icon-cloud{min-width:0;min-height:72px;padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface);flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:7px;display:flex}.story-icon-cloud{max-width:420px}.picture-icon{object-fit:contain;flex:none;width:34px;height:34px}.story-field-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(180px,1fr));display:grid}.story-answer-field,.picture-answer-field{gap:var(--space-2);display:grid}.story-answer-field>span:first-child{color:var(--color-heading);font-size:15px;font-weight:700}.picture-equation-row,.picture-balance-row{align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);display:grid}.picture-equation-row{grid-template-columns:minmax(140px,1fr) auto minmax(140px,1fr) auto minmax(96px,auto)}.picture-balance-row{grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr)}.picture-equation-symbol{color:var(--color-heading);text-align:center;font-size:24px;font-weight:800}.balance-choice-panel{justify-items:center;gap:var(--space-2);display:grid}.picture-answer-field .answer-input{width:96px}.missing-number-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.missing-number-row{align-items:center;gap:var(--space-2);min-height:64px;padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);flex-wrap:wrap;display:flex}.equation-token,.equation-operator{min-width:28px;color:var(--color-heading);text-align:center;font-size:20px;font-weight:700}.equation-input-wrap{justify-items:center;gap:7px;display:inline-grid}.equation-input{width:72px}.answer-input{min-width:64px;height:var(--control-height);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-xs);color:var(--color-heading);background:var(--color-surface);text-align:center;caret-color:var(--color-heading);padding:0 10px;font-size:18px;font-weight:700;line-height:1.2}.answer-input:focus{border-color:var(--color-border-strong);box-shadow:var(--focus-ring);outline:none}.calculation-grid{gap:var(--space-3) var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.calculation-row{align-items:center;gap:var(--space-3);min-height:66px;padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);grid-template-columns:minmax(150px,1fr) 72px minmax(116px,1fr);display:grid}.exercise-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.exercise-summary{border:1px solid var(--color-warning-border);width:fit-content;color:var(--color-warning);background:var(--color-warning-bg);border-radius:999px;margin-bottom:0;padding:7px 11px;font-size:14px;font-weight:700;line-height:1.3}.exercise-summary.correct{border-color:var(--color-success-border);color:var(--color-success);background:var(--color-success-bg)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.action-row{justify-content:flex-start;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.button{min-height:var(--control-height);padding:0 var(--space-5);border-radius:var(--radius-xs);letter-spacing:0;justify-content:center;align-items:center;font-size:15px;font-weight:700;line-height:1.2;text-decoration:none;transition:border-color .14s,background-color .14s,color .14s,box-shadow .14s;display:inline-flex}.button-primary{border:1px solid var(--color-primary);color:var(--color-surface);background:var(--color-primary)}.button-primary:hover:not(:disabled){border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.button-secondary{border:1px solid var(--color-border);color:var(--color-heading);background:var(--color-surface-blue)}.button-secondary:hover:not(:disabled){background:var(--color-surface-blue-strong)}.button:disabled{border-color:var(--color-border-soft);color:var(--color-disabled-text);background:var(--color-disabled-bg)}.two-board-layout{align-items:start;gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:repeat(2,minmax(260px,1fr));display:grid}.score-board-panel{justify-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);display:grid}.score-board-panel h4{color:var(--color-heading);justify-self:start;margin:0;font-size:16px;line-height:1.25}.score-board-panel ul{margin:var(--space-3) 0 0;padding-left:var(--space-5);color:var(--color-muted);font-size:14px;line-height:1.4}.board-asset-placeholder{border:1.5px dashed var(--color-border);border-radius:var(--radius-sm);min-height:140px;color:var(--color-heading);background:var(--color-surface);place-items:center;font-weight:700;display:grid}.board-asset,.board-asset.exercise-asset-fallback{border-radius:var(--radius-sm);width:min(100%,330px);min-height:180px}.board-asset.exercise-asset{height:auto;max-height:none;padding:var(--space-3);border:1px solid var(--color-border-soft);background:var(--color-surface);box-sizing:border-box;object-fit:contain;object-position:center}.score-answer-grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.score-answer-row{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);grid-template-columns:1fr auto;display:grid}.score-answer-row>span:first-child{color:var(--color-heading);font-size:15px;font-weight:700;line-height:1.25}.score-answer-row .feedback-chip{grid-column:1/-1}.pyramid-layout{gap:var(--space-2);justify-items:center;display:grid}.pyramid-row{justify-content:center;gap:var(--space-2);display:flex}.pyramid-cell{border-radius:var(--radius-xs);width:82px;height:50px;color:var(--color-heading);place-items:center;font-size:18px;font-weight:700;display:inline-grid}.pyramid-static{border:1px solid var(--color-border-soft);background:var(--color-surface-blue)}.pyramid-input-wrap{justify-items:center;gap:7px;display:grid}.target-mission-layout{align-items:start;gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:minmax(280px,.88fr) minmax(360px,1.12fr);display:grid}.target-task-panel{gap:var(--space-3);display:grid}.target-mission-panel{align-items:stretch;gap:var(--space-3);grid-template-columns:1fr;display:grid}.target-mission-panel>div{padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);gap:4px;display:grid}.mini-label{color:var(--color-muted);text-transform:uppercase;font-size:12px;font-weight:700}.target-board-asset,.target-board-asset.exercise-asset-fallback{border-radius:var(--radius-sm);justify-self:center;place-items:center;width:100%;max-width:560px;min-height:260px;display:grid}.target-board-asset img,.target-board-asset picture,.target-board-asset svg{object-fit:contain;width:100%;max-width:560px;height:auto}.target-board-panel{min-width:0;padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);display:grid}.target-number-chip-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.target-number-chip{border:1px solid var(--color-border-soft);min-width:34px;color:var(--color-heading);background:var(--color-surface);border-radius:999px;justify-content:center;padding:4px 9px;font-size:16px;line-height:1.2;display:inline-flex}.target-answer-groups{gap:var(--space-3);display:grid}.target-answer-group{padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue)}.target-answer-group h4{margin:0 0 var(--space-3);color:var(--color-heading);font-size:15px}.target-field-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.target-input-wrap{justify-items:center;gap:7px;display:grid}.target-number-input{width:70px}.path-code-row{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.path-node,.path-step{min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-xs);color:var(--color-heading);justify-content:center;align-items:center;font-size:18px;font-weight:700;display:inline-flex}.path-node{border:1px solid var(--color-border-strong);background:var(--color-surface)}.path-step{border:1px solid var(--color-border-soft);background:var(--color-surface-blue)}.path-answer-grid,.secret-answer-grid,.bingo-answer-grid{gap:var(--space-3);display:grid}.path-answer-row,.secret-answer-row,.bingo-answer-row{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);grid-template-columns:minmax(140px,1fr) auto minmax(116px,1fr);display:grid}.card-task-grid{gap:var(--space-4);display:grid}.card-task-panel{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);display:grid}.card-task-panel h4{color:var(--color-heading);margin:0;font-size:19px}.card-choice-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.card-choice-button{min-width:104px;min-height:112px;padding:var(--space-2);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-heading);background:var(--color-surface);place-items:center;font-size:16px;font-weight:700;transition:border-color .15s,box-shadow .15s,transform .15s,background .15s;display:grid}.card-choice-button.choice-button-selected{border-color:var(--color-primary);background:var(--color-surface-blue-strong);transform:translateY(-1px);box-shadow:0 0 0 3px #dddb006b,0 8px 18px #0031431f}.card-choice-button.choice-button-selected .darts-card{border-color:var(--color-primary);background:#fbfdff}.card-choice-button.field-correct{border-color:var(--color-success-border);color:var(--color-success);background:var(--color-success-bg);box-shadow:0 0 0 3px #2e7d3224}.card-choice-button.field-incorrect{border-color:var(--color-error-border);color:var(--color-error);background:var(--color-error-bg);box-shadow:0 0 0 3px #c628281f}.card-choice-button.field-correct .darts-card,.card-choice-button.field-incorrect .darts-card{background:0 0}.darts-card{border:2px solid var(--color-border-strong);background:var(--color-surface);border-radius:12px;grid-template-rows:auto 1fr;place-items:center;gap:6px;width:86px;min-height:94px;padding:10px 7px;display:grid;overflow:hidden;box-shadow:0 1px #17384f14}.darts-card-brand{max-width:100%;color:var(--color-heading);text-align:center;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:800;line-height:1;overflow:hidden}.darts-card-value{color:#111827;overflow-wrap:anywhere;text-align:center;max-width:100%;font-size:clamp(20px,2vw,27px);font-weight:900;line-height:1;overflow:hidden}.unit-conversion-list{gap:var(--space-3);display:grid}.unit-conversion-row{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);grid-template-columns:minmax(96px,auto) auto 1fr;display:grid}.unit-source{color:var(--color-heading);font-size:18px;font-weight:800}.unit-target-list{gap:var(--space-3);flex-wrap:wrap;display:flex}.unit-target-field,.table-answer-field{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.unit-target-field .answer-input,.table-answer-field .answer-input{width:104px}.unit-label{color:var(--color-heading);font-size:15px;font-weight:800}.data-table-wrap{border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface);overflow-x:auto}.exercise-data-table{border-collapse:collapse;width:100%;min-width:560px}.exercise-data-table th,.exercise-data-table td{padding:var(--space-3);border-bottom:1px solid var(--color-border-soft);color:var(--color-heading);text-align:left;vertical-align:top}.exercise-data-table thead th{background:var(--color-surface-blue);font-size:14px;font-weight:800}.exercise-data-table tbody th{font-weight:800}.exercise-data-table tr:last-child th,.exercise-data-table tr:last-child td{border-bottom:0}.fraction-order-row,.fraction-choice-bank{gap:var(--space-3);flex-wrap:wrap;display:flex}.fraction-order-row{padding:var(--space-4);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);align-items:flex-start}.fraction-choice-bank{padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface)}.fraction-order-slot-wrap{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.fraction-slot,.fraction-choice{min-width:72px;min-height:78px;padding:var(--space-2);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-heading);background:var(--color-surface);place-items:center;font-weight:800;display:grid}.fraction-slot-selected,.fraction-choice:hover{background:var(--color-surface-blue-strong)}.fraction-choice:disabled{color:var(--color-disabled-text);background:var(--color-disabled-bg)}.fraction-separator{color:var(--color-heading);font-size:22px;font-weight:900}.stacked-fraction{min-width:34px;color:var(--color-heading);justify-items:center;font-size:20px;font-weight:900;line-height:1;display:inline-grid}.stacked-fraction span:first-child{text-align:center;border-bottom:2px solid;width:100%;padding-bottom:4px}.stacked-fraction span:last-child{padding-top:4px}.inline-fraction,.fraction-placeholder{color:var(--color-heading);font-size:20px;font-weight:900}.selection-grid{--grid-columns:4;grid-template-columns:repeat(var(--grid-columns), minmax(52px, 1fr));gap:var(--space-2);margin-bottom:var(--space-3);display:grid}.selection-cell{border:1.5px solid var(--color-border-strong);border-radius:var(--radius-xs);min-height:48px;color:var(--color-heading);background:var(--color-surface);font-size:17px;font-weight:700}.selection-cell:hover{background:var(--color-surface-blue-strong)}.selection-cell-selected{border-color:var(--color-primary);color:var(--color-surface);background:var(--color-primary)}.selection-cell.field-correct{border-color:var(--color-success-border);color:var(--color-success);background:var(--color-success-bg)}.selection-cell.field-incorrect{border-color:var(--color-error-border);color:var(--color-error);background:var(--color-error-bg)}.selection-cell.field-missed{color:#8f3f37;background:#fff7f6;border-style:dashed;border-color:#efb8b1;box-shadow:inset 0 0 0 1px #c0392b0a}.clue-list{gap:var(--space-2);margin:0 0 var(--space-4);padding-left:var(--space-5);color:var(--color-heading);font-size:16px;font-weight:700;display:grid}.bar-chart-panel,.chance-board-layout,.algebra-panel,.escape-code-panel{margin:var(--space-4) 0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-blue)}.bar-chart-panel{gap:var(--space-3);display:grid}.bar-chart-row{align-items:center;gap:var(--space-3);grid-template-columns:minmax(90px,150px) 1fr;display:grid}.bar-chart-label{color:var(--color-heading);font-weight:800}.bar-chart-track{border-radius:var(--radius-xs);background:var(--color-surface);min-height:32px;overflow:hidden}.bar-chart-bar{width:var(--bar-width);min-width:38px;height:32px;padding:0 var(--space-2);border-radius:var(--radius-xs);color:var(--color-surface);background:var(--color-primary);justify-content:flex-end;align-items:center;font-weight:800;display:flex}.chart-asset-panel{margin:var(--space-4) 0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-blue);justify-items:center;display:grid}.chart-asset-image,.chart-asset-panel .exercise-asset-fallback{width:100%;max-width:520px}.data-question-list{gap:var(--space-3);margin-top:var(--space-4);display:grid}.data-question-row,.algebra-answer-row,.escape-equation-row{align-items:center;gap:var(--space-3);grid-template-columns:minmax(180px,1fr) minmax(130px,auto) minmax(150px,auto);display:grid}.data-question-row-choice{grid-template-columns:minmax(220px,.75fr) minmax(320px,1fr) minmax(150px,auto)}.chance-board-layout{align-items:center;gap:var(--space-5);grid-template-columns:minmax(220px,320px) minmax(260px,1fr);display:grid}.generated-target-board{filter:drop-shadow(0 8px 16px #17384f1f);width:min(100%,280px);height:auto;display:block}.target-legend-swatch{background:var(--target-color)}.target-board-backdrop{fill:var(--color-surface)}.target-color-slice{stroke:var(--color-surface);stroke-width:1.3px}.target-color-slice-empty{fill:var(--color-surface)}.target-board-ring{fill:none;stroke:var(--color-border-strong);stroke-width:2.4px}.target-board-center{fill:var(--color-surface);stroke:var(--color-border-strong);stroke-width:1.6px}.target-legend{gap:var(--space-2);margin:0;display:grid}.target-legend-row{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--color-text);display:flex}.target-legend-row dt{align-items:center;gap:var(--space-2);color:var(--color-heading);font-weight:800;display:inline-flex}.target-legend-row dd{color:var(--color-muted);margin:0;font-weight:700}.target-legend-swatch{border:1px solid #17384f2e;border-radius:999px;width:18px;height:18px;display:inline-block}.algebra-panel{align-items:center;gap:var(--space-5);grid-template-columns:minmax(260px,1fr) minmax(220px,auto);display:grid}.algebra-equation{align-items:center;gap:var(--space-2);color:var(--color-heading);flex-wrap:wrap;font-size:clamp(30px,4vw,46px);font-weight:900;line-height:1.15;display:flex}.equation-token{text-align:center;min-width:30px}.algebra-answer-row{justify-content:end;align-items:center;gap:var(--space-3);grid-template-columns:auto minmax(112px,148px);display:grid}.algebra-answer-label{color:var(--color-heading);font-size:clamp(28px,3.4vw,40px);font-weight:900;line-height:1}.algebra-answer-input{width:132px;min-height:58px;font-size:26px}.escape-equation-list{gap:var(--space-3);margin-top:var(--space-4);display:grid}.escape-equation-row{padding:var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);background:var(--color-surface-blue);grid-template-columns:42px minmax(220px,1fr) minmax(112px,148px) minmax(150px,auto)}.escape-equation-expression{font-size:26px}.escape-answer-wrap{justify-content:flex-end;align-items:center;gap:var(--space-2);color:var(--color-heading);font-size:20px;font-weight:900;display:inline-flex}.escape-answer-input{text-align:center;width:84px;min-width:84px}.escape-equation-row .feedback-chip,.escape-equation-row .correct-answer{justify-self:start}.escape-equation-label{width:36px;height:36px;color:var(--color-surface);background:var(--color-primary);border-radius:999px;place-items:center;font-weight:900;display:inline-grid}.escape-code-panel{border-color:var(--color-border-strong);background:var(--color-surface)}.escape-code-panel h4{margin:0 0 var(--space-3);color:var(--color-heading)}.escape-code-panel-correct{border-color:var(--color-success-border);background:var(--color-success-bg)}.escape-code-panel-incorrect{border-color:var(--color-error-border);background:var(--color-error-bg)}.escape-code-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.escape-code-box{justify-items:center;gap:4px;display:grid}.escape-code-source{color:var(--color-muted);letter-spacing:0;font-size:13px;font-weight:900}.escape-code-box input{border:2px solid var(--color-border-strong);border-radius:var(--radius-xs);text-align:center;width:58px;height:58px;color:var(--color-heading);background:var(--color-surface);font-size:24px;font-weight:900}@media (width<=1080px){body{min-width:760px}.app-shell{width:min(1120px,100vw - 32px);padding:var(--space-6) 0}.home-panel,.worksheet-frame{padding:var(--space-6)}.control-grid,.setup-control-grid,.workbook-control-grid,.practice-control-grid,.comparison-grid,.calculation-grid,.count-group-grid,.story-field-grid,.target-mission-layout,.target-mission-panel,.missing-number-grid,.score-answer-grid,.two-board-layout,.mode-grid{grid-template-columns:1fr}.workbook-control-grid .field-grade,.workbook-control-grid .field-topic,.workbook-control-grid .difficulty-field,.practice-control-grid .field-grade,.practice-control-grid .field-topic,.practice-control-grid .field-type,.practice-control-grid .difficulty-field{grid-column:auto;max-width:none}.brand-strip,.resource-card{grid-template-columns:1fr;align-items:flex-start}.brand-strip{flex-wrap:wrap}.top-nav,.resource-actions{justify-content:flex-start}.comparison-row,.calculation-row{grid-template-columns:minmax(44px,max-content) max-content minmax(44px,max-content) 1fr}.calculation-row{grid-template-columns:minmax(150px,1fr) 48px minmax(116px,max-content)}.picture-equation-row,.picture-balance-row,.unit-conversion-row{grid-template-columns:1fr}.picture-equation-symbol,.balance-choice-panel{justify-self:start}.path-answer-row,.secret-answer-row,.bingo-answer-row,.data-question-row,.algebra-answer-row,.algebra-panel,.escape-equation-row,.chance-board-layout,.bar-chart-row{grid-template-columns:1fr}.algebra-answer-row{justify-content:start}.target-board-asset,.target-board-asset.exercise-asset-fallback{min-height:220px}}.brand-strip{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffff7;position:sticky;top:0}.generated-section{scroll-margin-top:100px}.brand-crumbs{flex:auto;justify-content:center;align-items:center;min-width:0;display:flex}.brand-crumb-list{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.brand-crumb{align-items:center;gap:var(--space-2);font-size:14px;font-weight:700;display:inline-flex}.brand-crumb+.brand-crumb:before{content:">";color:var(--color-muted);font-weight:700}.brand-crumb-link,.brand-crumb-current{white-space:nowrap;text-overflow:ellipsis;max-width:22ch;display:block;overflow:hidden}.brand-crumb-link{color:var(--color-secondary);border-bottom:1px solid var(--color-border);padding:2px 0;text-decoration:none}.brand-crumb-link:hover{color:var(--color-heading);border-bottom-color:var(--color-accent)}.brand-crumb-link:focus-visible{border-radius:var(--radius-xs);box-shadow:var(--focus-ring);outline:none}.brand-crumb-current{color:var(--color-heading);padding:2px 0}.back-arrow{flex:none;width:16px;height:16px}.page-back{margin-top:var(--space-6);justify-content:flex-start;display:flex}.page-back-button{gap:var(--space-2);background:var(--color-surface)}@media (width<=900px){.brand-strip{flex-wrap:wrap}.brand-crumbs{flex-basis:100%;order:3;justify-content:flex-start}}.accepted-answers{display:inline}.accepted-answer{white-space:nowrap;font-weight:700}.accepted-answer-glue{white-space:pre;font-weight:400}.preview-title-row{justify-content:space-between}.preview-details-button{flex:none}.preview-details{margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-blue)}.preview-details .preview-helper{margin-bottom:var(--space-2)}.preview-details-list{gap:4px;margin:0;padding-left:1.4em;display:grid}.preview-details-list .source-detail-line{display:inline}.exercise-title-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.exercise-title-row h3{margin:0}.mode-card .mode-card-label{font-size:16px}.feedback-chip .accepted-answers{margin-left:.3em}.brand-logo{width:64px;height:64px}.brand-strip .brand-name{color:var(--color-heading);font-size:28px;line-height:1.1;display:block}.brand-strip .brand-tagline{color:var(--color-muted);margin-top:2px;font-size:14px;font-weight:700;display:block}.selection-cell.field-missed-either{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='100%25' height='100%25' fill='none' rx='8' stroke='%23c0392b' stroke-width='3' stroke-dasharray='9 18'/%3E%3C/svg%3E");border-color:#0000}.home-panel h1{max-width:none;margin-bottom:var(--space-7)}.mode-card-heading h2{font-size:26px}.mode-card .mode-card-label{font-size:17px;font-weight:500}.mode-card-icon{width:60px;height:60px}.brand-strip .brand-logo{width:52px;height:52px}.brand-strip .brand-tagline{margin-top:0;font-size:26px;line-height:1.1}.lesson-gate{min-height:100vh;padding:var(--space-7);justify-content:center;align-items:center;display:flex}.lesson-gate-checking{color:var(--color-muted);font-size:18px}.lesson-gate-card{max-width:520px;padding:var(--space-8);background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);text-align:center}.lesson-gate-kicker{margin:0 0 var(--space-3);color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:14px;font-weight:700}.lesson-gate-card h1{margin:0 0 var(--space-4);color:var(--color-heading);font-size:26px;line-height:1.25}.lesson-gate-body{color:var(--color-text);margin:0;font-size:17px;line-height:1.5}
