.fmj-home-page{padding-top:12px}.fmj-home-hero{border-bottom:1px solid var(--fmj-border);grid-template-columns:minmax(0,1.04fr) minmax(430px,.96fr);align-items:center;gap:56px;padding:64px 0 76px;display:grid}.fmj-home-kicker{color:var(--fmj-primary);letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;font-size:.78rem;font-weight:900}.fmj-home-hero h1{letter-spacing:-.075em;max-width:760px;margin:0;font-size:clamp(3.4rem,7vw,6.5rem);line-height:.9}.fmj-home-lede{color:#475569;max-width:690px;margin:26px 0 0;font-size:clamp(1.1rem,2vw,1.3rem);line-height:1.65}.fmj-home-actions{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.fmj-home-action{border:1px solid var(--fmj-border);border-radius:10px;align-items:center;min-height:46px;padding:0 18px;font-weight:850;text-decoration:none;display:inline-flex}.fmj-home-action-primary{color:#fff;background:#0f172a;border-color:#0f172a}.fmj-home-action-primary:hover{background:#1e293b}.fmj-home-action-secondary{background:#fff}.fmj-home-action-secondary:hover{border-color:#94a3b8}.fmj-home-stats{border-top:1px solid var(--fmj-border);gap:28px;margin-top:38px;padding-top:20px;display:flex}.fmj-home-stats div{min-width:0}.fmj-home-stats strong,.fmj-home-stats span{display:block}.fmj-home-stats strong{letter-spacing:-.04em;font-size:1.55rem}.fmj-home-stats span{color:var(--fmj-muted);margin-top:3px;font-size:.82rem}.fmj-home-preview{color:#fff;background:#0f172a;border:1px solid #0f172a;border-radius:20px;padding:28px;position:relative;overflow:hidden;box-shadow:14px 14px #dbeafe}.fmj-home-preview:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.fmj-home-preview>*{position:relative}.fmj-home-preview-topline{color:#94a3b8;letter-spacing:.04em;justify-content:space-between;gap:14px;font-size:.75rem;font-weight:800;display:flex}.fmj-home-preview-label{color:#93c5fd;letter-spacing:.11em;text-transform:uppercase;margin:34px 0 4px;font-size:.76rem;font-weight:900}.fmj-home-preview h2,.fmj-home-preview h3{color:#fff;letter-spacing:-.045em;margin:0;line-height:1.02}.fmj-home-preview-c5 h2{max-width:650px;font-size:clamp(2rem,3.2vw,3.15rem)}.fmj-home-complement-panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0 18px;display:grid}.fmj-home-math-panel{background:#ffffff09;border:1px solid #475569;padding:14px}.fmj-home-math-panel>small{color:#cbd5e1;margin-bottom:12px;font-size:.78rem;font-weight:850;display:block}.fmj-home-digit-slots{grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:6px;display:grid}.fmj-home-digit-slots span{background:#3b82f614;border:1px solid #60a5fa;border-radius:7px;place-items:center;min-height:44px;font-size:.92rem;font-weight:900;display:grid}.fmj-home-digit-slots b{color:#94a3b8;font-weight:700}.fmj-home-math-panel>strong{letter-spacing:-.03em;white-space:nowrap;margin-top:14px;font-size:clamp(1rem,1.55vw,1.32rem);display:block}.fmj-home-math-panel em,.fmj-home-big-equation em,.fmj-home-factorization em,.fmj-home-n4-payoff em{color:#93c5fd;font-style:normal}.fmj-home-big-equation{text-align:center;letter-spacing:-.065em;background:#ffffff06;border:1px dashed #64748b;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:12px;margin:18px 0 22px;padding:18px 16px;font-size:clamp(2.15rem,5vw,4.8rem);font-weight:950;line-height:1;display:grid}.fmj-home-big-equation b{color:#94a3b8;font-size:.65em}.fmj-home-preview-point{color:#cbd5e1;margin:20px 0 14px;line-height:1.6}.fmj-home-inline-link{color:#bfdbfe;font-weight:850;text-decoration:none}.fmj-home-inline-link:hover{text-decoration:underline}.fmj-home-method,.fmj-home-curriculum,.fmj-home-start{border-bottom:1px solid var(--fmj-border);padding:70px 0}.fmj-home-method{grid-template-columns:minmax(290px,.7fr) minmax(0,1.3fr);align-items:start;gap:54px;display:grid}.fmj-home-method-copy{position:sticky;top:24px}.fmj-home-section-copy h2,.fmj-home-new h2{letter-spacing:-.055em;max-width:720px;margin:0;font-size:clamp(2.15rem,4.6vw,4rem);line-height:.98}.fmj-home-section-copy>p:last-child{max-width:630px;color:var(--fmj-muted);margin:18px 0 0;line-height:1.65}.fmj-home-method-content{gap:34px;display:grid}.fmj-home-method-flow{border-top:1px solid #94a3b8;margin:0;padding:0;list-style:none}.fmj-home-method-flow li{border-bottom:1px solid var(--fmj-border);grid-template-columns:42px 100px 1fr;align-items:baseline;gap:14px;padding:18px 0;display:grid}.fmj-home-method-flow li>span{color:#94a3b8;font-size:.78rem;font-weight:900}.fmj-home-method-flow strong{font-size:1.05rem}.fmj-home-method-flow p{color:var(--fmj-muted);margin:0;line-height:1.5}.fmj-home-preview-n4{max-width:780px;padding:26px;box-shadow:10px 10px #e0ecff}.fmj-home-preview-n4 .fmj-home-preview-label{margin-top:28px}.fmj-home-preview-n4 h3{font-size:clamp(1.8rem,3vw,2.65rem)}.fmj-home-factorization{letter-spacing:-.06em;justify-content:center;align-items:baseline;gap:12px;margin:24px 0;font-size:clamp(2.5rem,6vw,5rem);font-weight:950;display:flex}.fmj-home-factorization b{color:#cbd5e1;font-size:.62em}.fmj-home-factorization sup{font-size:.48em}.fmj-home-exponent-choice{border-top:1px solid #334155;grid-template-columns:120px 1fr;align-items:center;gap:14px;padding:11px 0;display:grid}.fmj-home-exponent-choice small{color:#94a3b8;font-weight:850}.fmj-home-exponent-choice>div{grid-template-columns:repeat(4,minmax(48px,1fr));gap:8px;display:grid}.fmj-home-exponent-choice:last-of-type>div{grid-template-columns:repeat(3,minmax(48px,1fr))}.fmj-home-exponent-choice span{background:#ffffff09;border:1px solid #475569;place-items:center;min-height:48px;font-size:1.1rem;font-weight:900;display:grid}.fmj-home-n4-payoff{letter-spacing:-.055em;border-top:1px solid #334155;justify-content:center;align-items:baseline;gap:14px;margin:18px 0 6px;padding-top:16px;font-size:clamp(2rem,4vw,3.6rem);font-weight:950;display:flex}.fmj-home-n4-payoff em{font-size:1.45em}.fmj-home-curriculum{grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:54px;display:grid}.fmj-home-strand-list{border-top:1px solid #94a3b8}.fmj-home-strand-row{border-bottom:1px solid var(--fmj-border);grid-template-columns:42px 1fr auto;align-items:start;gap:14px;padding:17px 0;text-decoration:none;display:grid}.fmj-home-strand-row:hover strong,.fmj-home-strand-row:hover .fmj-home-strand-count{color:var(--fmj-primary)}.fmj-home-strand-number{color:#94a3b8;font-size:.76rem;font-weight:900}.fmj-home-strand-row strong{font-size:1.02rem}.fmj-home-strand-row p{color:var(--fmj-muted);margin:5px 0 0;font-size:.9rem;line-height:1.5}.fmj-home-strand-count{color:#475569;white-space:nowrap;padding-top:2px;font-size:.82rem;font-weight:850}.fmj-home-start-list{background:var(--fmj-border);border:1px solid var(--fmj-border);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:34px;display:grid}.fmj-home-start-list a{background:var(--fmj-bg);min-height:190px;padding:24px;text-decoration:none}.fmj-home-start-list a:hover{background:#fff}.fmj-home-start-list blockquote{letter-spacing:-.02em;margin:0;font-size:1.14rem;font-weight:720;line-height:1.5}.fmj-home-start-list span{color:var(--fmj-primary);margin-top:24px;font-size:.9rem;font-weight:850;display:inline-block}.fmj-home-new{border-top:3px solid #0f172a;border-bottom:1px solid var(--fmj-border);grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:54px;margin:70px 0 36px;padding:34px 0;display:grid}.fmj-home-new-list{display:grid}.fmj-home-new-list p{border-bottom:1px solid var(--fmj-border);color:var(--fmj-muted);margin:0;padding:15px 0;line-height:1.55}.fmj-home-new-list p:first-child{padding-top:0}.fmj-home-new-list strong{color:var(--fmj-text)}@media (width<=1040px){.fmj-home-hero{grid-template-columns:1fr;gap:40px}.fmj-home-preview-c5{max-width:780px}}@media (width<=920px){.fmj-home-method,.fmj-home-curriculum,.fmj-home-new{grid-template-columns:1fr;gap:34px}.fmj-home-hero{padding-top:40px}.fmj-home-method-copy{position:static}.fmj-home-start-list{grid-template-columns:1fr}.fmj-home-start-list a{min-height:0}}@media (width<=620px){.fmj-home-hero h1{font-size:clamp(3rem,15vw,4.6rem)}.fmj-home-stats{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.fmj-home-stats strong{font-size:1.3rem}.fmj-home-stats span{font-size:.72rem}.fmj-home-preview{padding:22px;box-shadow:8px 8px #dbeafe}.fmj-home-preview-topline{display:grid}.fmj-home-complement-panels{grid-template-columns:1fr}.fmj-home-big-equation{gap:7px;padding-inline:10px;font-size:clamp(1.85rem,11vw,3.1rem)}.fmj-home-digit-slots{gap:4px}.fmj-home-method-flow li{grid-template-columns:34px 72px 1fr}.fmj-home-factorization{gap:7px;font-size:clamp(2.2rem,14vw,4rem)}.fmj-home-exponent-choice{grid-template-columns:1fr;gap:7px}.fmj-home-n4-payoff{justify-content:flex-start}.fmj-home-strand-row{grid-template-columns:32px 1fr}.fmj-home-strand-count{grid-column:2;padding-top:0}}.fmj-lesson-renderer{gap:20px;width:min(100%,880px);margin:0 auto;display:grid}.fmj-lesson-heading,.fmj-lesson-beat,.fmj-lesson-complete{background:var(--fmj-surface);border:1px solid var(--fmj-border);border-radius:var(--fmj-radius);box-shadow:var(--fmj-shadow)}.fmj-lesson-heading{padding:24px}.fmj-lesson-heading h2{letter-spacing:-.04em;margin:6px 0 10px;font-size:clamp(1.8rem,4vw,2.8rem)}.fmj-lesson-heading>p:not(.fmj-eyebrow){color:var(--fmj-muted);line-height:1.6}.fmj-lesson-progress{background:var(--fmj-surface-soft);border-radius:999px;height:8px;margin-top:18px;overflow:hidden}.fmj-lesson-progress span{border-radius:inherit;background:var(--fmj-primary);height:100%;transition:width .18s;display:block}.fmj-lesson-story{gap:16px;display:grid}.fmj-lesson-beat{gap:16px;padding:22px;display:grid}.fmj-lesson-beat.active{border-color:#93c5fd}.fmj-lesson-beat.completed{box-shadow:none}.fmj-lesson-beat-header{align-items:center;gap:10px;display:flex}.fmj-lesson-beat-header>span{background:var(--fmj-surface-soft);width:30px;height:30px;color:var(--fmj-primary);border-radius:10px;place-items:center;font-weight:900;display:grid}.fmj-lesson-beat-header p{color:var(--fmj-muted);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}.fmj-lesson-copy h3,.fmj-lesson-interaction h3,.fmj-lesson-reflection h3,.fmj-lesson-concept h3{margin:0 0 10px}.fmj-lesson-copy p,.fmj-lesson-concept p,.fmj-lesson-problem-bridge,.fmj-lesson-problem-exit,.fmj-lesson-visual-caption,.fmj-lesson-reflection h3,.fmj-lesson-interaction h3{line-height:1.65}.fmj-lesson-problem-exit{color:#166534;background:#f0fdf4;border-left:3px solid #86efac;margin:0;padding:13px 14px}.fmj-lesson-copy code,.fmj-lesson-concept code{overflow-wrap:anywhere;color:#fff;background:#0f172a;border-radius:10px;width:fit-content;max-width:100%;margin-top:10px;padding:9px 12px;display:block}.fmj-lesson-transition{color:var(--fmj-muted);border-left:3px solid #bfdbfe;margin:0;padding-left:12px;font-style:italic;line-height:1.6}.fmj-lesson-transition-out{border-left-color:#86efac}.fmj-lesson-concept{background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;padding:20px}.fmj-lesson-concept .fmj-eyebrow{margin-top:0}.fmj-lesson-memory-hook{margin-bottom:0;font-weight:700}.fmj-lesson-advance,.fmj-lesson-response-actions,.fmj-lesson-animation-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.fmj-lesson-advance{justify-content:flex-end;padding-top:4px}.fmj-lesson-advance small,.fmj-lesson-animation-controls span{color:var(--fmj-muted)}.fmj-lesson-interaction,.fmj-lesson-problem-shell,.fmj-lesson-animation,.fmj-lesson-problem-answer{gap:14px;display:grid}.fmj-lesson-problem-answer{border-top:1px solid var(--fmj-border);padding-top:16px}.fmj-lesson-problem-answer h3{margin:0}.fmj-lesson-resolution{background:#f8fbff;border:1px solid #bfdbfe;border-radius:16px;gap:14px;padding:18px;display:grid}.fmj-lesson-resolution>.fmj-eyebrow{margin:0}.fmj-lesson-resolution-steps{gap:12px;margin:0;padding-left:24px;display:grid}.fmj-lesson-resolution-steps li::marker{color:var(--fmj-primary);font-weight:900}.fmj-lesson-resolution-steps p{margin:3px 0 0;line-height:1.55}.fmj-lesson-resolution-steps code{color:#fff;background:#0f172a;border-radius:9px;width:fit-content;margin-top:7px;padding:7px 10px;display:block}.fmj-lesson-resolution-takeaway{border-left:3px solid var(--fmj-primary);color:#1e3a8a;background:#eff6ff;margin:0;padding:12px 14px;font-weight:800;line-height:1.55}.fmj-lesson-choice-buttons{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.fmj-lesson-choice-buttons button{border:1px solid var(--fmj-border);background:var(--fmj-surface);min-height:48px;color:var(--fmj-text);cursor:pointer;font:inherit;text-align:left;border-radius:14px;padding:11px 13px;font-weight:700}.fmj-lesson-choice-buttons button.selected{border-color:var(--fmj-primary);color:var(--fmj-primary-dark);background:#eff6ff}.fmj-lesson-choice-buttons button:disabled{cursor:default}.fmj-lesson-sort{gap:10px;display:grid}.fmj-lesson-sort-item{border:1px solid var(--fmj-border);background:var(--fmj-surface-soft);border-radius:14px;grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr);align-items:center;gap:12px;padding:12px;display:grid}.fmj-lesson-sort-buckets{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:7px;display:grid}.fmj-lesson-sort-buckets button{border:1px solid var(--fmj-border);background:var(--fmj-surface);color:var(--fmj-text);cursor:pointer;font:inherit;border-radius:10px;padding:8px 9px;font-size:.88rem;font-weight:700}.fmj-lesson-sort-buckets button.selected{border-color:var(--fmj-primary);color:var(--fmj-primary-dark);background:#eff6ff}.fmj-lesson-sort-result{margin-top:4px}.fmj-lesson-sort-empty{color:var(--fmj-muted);margin:0;font-style:italic}.fmj-lesson-input-label{color:var(--fmj-muted);gap:7px;font-weight:700;display:grid}.fmj-lesson-input-label input,.fmj-lesson-input-label textarea{border:1px solid var(--fmj-border);background:var(--fmj-surface);width:100%;color:var(--fmj-text);font:inherit;border-radius:12px;padding:11px 12px}.fmj-lesson-feedback,.fmj-lesson-reveal,.fmj-lesson-fallback,.fmj-lesson-animation-prompt{border:1px solid var(--fmj-border);border-radius:14px;margin:0;padding:13px 14px;line-height:1.55}.fmj-lesson-feedback.correct,.fmj-lesson-reveal{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.fmj-lesson-feedback.incorrect{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.fmj-lesson-fallback{background:var(--fmj-surface-soft);color:var(--fmj-muted);border-style:dashed}.fmj-lesson-fallback p{margin:5px 0 0}.fmj-lesson-animation-prompt{color:#1e3a8a;background:#eff6ff;border-color:#bfdbfe;font-weight:700}.fmj-lesson-animation-controls{justify-content:center}.fmj-lesson-prompt-list{color:var(--fmj-muted);margin:0;padding-left:24px;line-height:1.7}.fmj-lesson-visual{border:1px solid var(--fmj-border);background:var(--fmj-surface-soft);border-radius:16px;margin:0;padding:18px}.fmj-lesson-visual-caption{color:var(--fmj-muted);text-align:center;margin:10px 0 0}.fmj-lesson-number-line{gap:4px;display:grid;overflow-x:auto}.fmj-lesson-bars-and-groups{gap:.9rem;display:grid}.fmj-lesson-bars-and-groups section{gap:.4rem;display:grid}.fmj-lesson-bar-heading{color:var(--fmj-text,#1f2a44);justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.fmj-lesson-bar-heading span{color:#475569;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86rem;font-weight:800}.fmj-lesson-segmented-bar{background:#fff;border:2px solid #64748b;border-radius:.65rem;min-height:2.5rem;display:grid;overflow:hidden}.fmj-lesson-segmented-bar span{background:#f8fafc;border-inline-start:1px solid #94a3b8;min-width:0}.fmj-lesson-segmented-bar span:first-child{border-inline-start:0}.fmj-lesson-segmented-bar span.filled{background:linear-gradient(135deg,#818cf8,#4f46e5)}.fmj-lesson-number-line svg{width:100%;min-width:300px;display:block}.fmj-number-line-axis{stroke:#64748b;stroke-width:3px;stroke-linecap:round}.fmj-number-line-axis-fill{fill:#64748b}.fmj-number-line-interval{stroke:#2563eb;stroke-width:11px;stroke-linecap:round}.fmj-number-line-interval-fill{fill:#2563eb}.fmj-number-line-endpoint{fill:var(--fmj-surface);stroke:#1d4ed8;stroke-width:4px}.fmj-number-line-endpoint.closed{fill:#2563eb}.fmj-number-line-tick{stroke:#475569;stroke-width:2px}.fmj-number-line-label{fill:#334155;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;font-weight:800}.fmj-lesson-number-line p{color:#1e3a8a;background:#dbeafe;border-radius:999px;width:fit-content;margin:0 auto;padding:7px 12px;font-weight:900}.fmj-lesson-data-graph{gap:8px;display:grid;overflow-x:auto}.fmj-lesson-data-graph svg{width:100%;min-width:320px;display:block}.fmj-data-graph-field{fill:var(--fmj-surface);stroke:var(--fmj-border)}.fmj-data-graph-grid{stroke:#e2e8f0;stroke-width:1px}.fmj-data-graph-axis{stroke:#64748b;stroke-width:2.5px}.fmj-data-graph-line{stroke:#2563eb;stroke-linecap:round;stroke-width:4px}.fmj-data-graph-point{fill:#0d9488;stroke:#fff;stroke-width:2px}.fmj-data-graph-rise-run{fill:none;stroke:#d97706;stroke-dasharray:7 5;stroke-width:4px}.fmj-lesson-data-graph text{fill:#475569;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:800}.fmj-lesson-data-graph .fmj-data-graph-axis-label{fill:#1f2a44;font-size:14px}.fmj-lesson-data-graph p{color:#1e3a8a;text-align:center;margin:0;font-weight:800}.fmj-lesson-choice-grid,.fmj-lesson-case-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.fmj-lesson-choice-grid section,.fmj-lesson-case-grid section{border:1px solid var(--fmj-border);background:var(--fmj-surface);border-radius:14px;padding:14px}.fmj-lesson-choice-grid h4,.fmj-lesson-case-grid h4{margin:0 0 10px}.fmj-lesson-chip-row{flex-wrap:wrap;gap:7px;display:flex}.fmj-lesson-chip-row span,.fmj-lesson-tree-root,.fmj-lesson-tree-path strong{color:#1e3a8a;background:#eff6ff;border-radius:10px;padding:7px 10px}.fmj-lesson-path-walk{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;display:grid}.fmj-lesson-path-walk section{border:1px solid var(--fmj-border);background:var(--fmj-surface);border-radius:14px;padding:12px}.fmj-lesson-path-walk svg{width:100%;margin-top:5px;display:block}.fmj-lesson-slot-filler{gap:12px;display:grid}.fmj-lesson-slot-filler>div{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.fmj-lesson-slot-filler section{border:1px solid var(--fmj-border);background:var(--fmj-surface);text-align:center;border-radius:14px;gap:8px;padding:15px;display:grid}.fmj-lesson-slot-filler h4{margin:0}.fmj-lesson-slot-filler section>strong{color:var(--fmj-primary-dark);letter-spacing:.08em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.35rem}.fmj-lesson-slot-filler code{color:var(--fmj-muted);font-weight:800}.fmj-lesson-slot-filler>p{color:#166534;background:#dcfce7;border-radius:999px;width:fit-content;margin:0 auto;padding:9px 15px;font-weight:900}.fmj-lesson-case-grid ul{margin:0;padding-left:20px;line-height:1.7}.fmj-lesson-branch-tree,.fmj-lesson-tree-paths{gap:12px;display:grid}.fmj-lesson-tree-root{width:fit-content;margin:0 auto}.fmj-lesson-tree-path{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.fmj-lesson-tree-path>span{align-items:center;gap:8px;display:inline-flex}.fmj-lesson-table-scroll{overflow-x:auto}.fmj-lesson-outcome-grid{border-collapse:collapse;background:var(--fmj-surface);width:100%}.fmj-lesson-outcome-grid th,.fmj-lesson-outcome-grid td{border:1px solid var(--fmj-border);text-align:center;padding:10px}.fmj-lesson-outcome-grid th{background:var(--fmj-surface-soft)}.fmj-lesson-outcome-grid td.highlighted{color:#166534;background:#dcfce7;font-weight:800}.fmj-lesson-venn-builder{max-width:680px;margin:0 auto}.fmj-lesson-venn-universe{color:var(--fmj-muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 4px;font-size:.82rem;font-weight:800}.fmj-lesson-venn-stage{min-height:300px;position:relative}.fmj-lesson-venn-stage>svg{width:100%;height:100%;position:absolute;inset:0}.fmj-lesson-venn-stage circle{stroke-width:3px}.fmj-lesson-venn-left-circle{fill:#4f46e51a;stroke:#4f46e5}.fmj-lesson-venn-right-circle{fill:#0d94881a;stroke:#0d9488}.fmj-lesson-venn-left-label,.fmj-lesson-venn-right-label{z-index:1;text-align:center;max-width:34%;position:absolute;top:7%}.fmj-lesson-venn-left-label{color:#3730a3;left:13%}.fmj-lesson-venn-right-label{color:#0f766e;right:13%}.fmj-lesson-venn-regions{z-index:1;grid-template-columns:1fr .85fr 1fr;align-items:center;gap:5px;display:grid;position:absolute;inset:29% 6% 16%}.fmj-lesson-venn-regions section,.fmj-lesson-venn-neither{text-align:center;background:#ffffffe0;border-radius:12px;min-width:0;padding:8px}.fmj-lesson-venn-regions section>strong,.fmj-lesson-venn-neither>strong{font-size:.78rem;display:block}.fmj-lesson-venn-regions ul,.fmj-lesson-venn-neither ul{flex-wrap:wrap;justify-content:center;gap:5px;margin:7px 0 0;padding:0;list-style:none;display:flex}.fmj-lesson-venn-regions li,.fmj-lesson-venn-neither li{border:1px solid var(--fmj-border);background:var(--fmj-surface);border-radius:999px;padding:4px 7px;font-size:.78rem;font-weight:750}.fmj-lesson-venn-empty{color:var(--fmj-muted);margin-top:7px;font-size:.72rem;font-style:italic;display:block}.fmj-lesson-venn-neither{border:1px dashed var(--fmj-border);width:min(260px,80%);margin:0 auto}.fmj-lesson-complete{color:#166534;background:#f0fdf4;border-color:#bbf7d0;padding:18px 20px}.fmj-lesson-complete p{margin:5px 0 0}@media (width<=640px){.fmj-lesson-heading,.fmj-lesson-beat{padding:18px}.fmj-lesson-advance{justify-content:flex-start}.fmj-lesson-sort-item{grid-template-columns:1fr}.fmj-lesson-venn-stage{min-height:250px}.fmj-lesson-venn-regions{gap:2px;left:2%;right:2%}.fmj-lesson-venn-regions section{padding:5px 3px}.fmj-lesson-venn-regions li,.fmj-lesson-venn-neither li{padding:3px 5px;font-size:.7rem}}:root{--fmj-bg:#f8fafc;--fmj-surface:#fff;--fmj-surface-soft:#f1f5f9;--fmj-border:#dbe4ef;--fmj-text:#0f172a;--fmj-muted:#64748b;--fmj-primary:#2563eb;--fmj-primary-dark:#1d4ed8;--fmj-radius:18px;--fmj-shadow:0 18px 45px #0f172a14}*{box-sizing:border-box}body{background:var(--fmj-bg);color:var(--fmj-text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit}.fmj-site-header,.fmj-site-footer,.fmj-page{width:min(1180px,100% - 32px);margin:0 auto}.fmj-site-header{justify-content:space-between;align-items:center;gap:16px;padding:22px 0;display:flex}.fmj-logo{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.fmj-logo-mark{background:var(--fmj-primary);color:#fff;border-radius:14px;place-items:center;width:42px;height:42px;font-size:26px;font-weight:800;display:grid}.fmj-logo strong,.fmj-logo small{display:block}.fmj-logo small{color:var(--fmj-muted);margin-top:2px}.fmj-nav{flex-wrap:wrap;gap:8px;display:flex}.fmj-nav a{color:var(--fmj-muted);border-radius:999px;padding:9px 12px;text-decoration:none}.fmj-nav a.active,.fmj-nav a:hover{background:var(--fmj-surface-soft);color:var(--fmj-text)}.fmj-page{padding:28px 0 56px}.fmj-page-heading{margin-bottom:24px}.fmj-page-heading h1,.fmj-hero h1{letter-spacing:-.06em;margin:0 0 16px;font-size:clamp(2.1rem,5vw,4.4rem);line-height:.95}.fmj-page-heading p,.fmj-hero p{color:var(--fmj-muted);max-width:760px;font-size:1.05rem;line-height:1.65}.fmj-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--fmj-primary)!important;font-size:.78rem!important}.fmj-hero{grid-template-columns:minmax(0,1.6fr) minmax(280px,.75fr);align-items:stretch;gap:28px;margin-top:30px;display:grid}.fmj-hero-card,.fmj-card{background:var(--fmj-surface);border:1px solid var(--fmj-border);border-radius:var(--fmj-radius);box-shadow:var(--fmj-shadow)}.fmj-hero-card{padding:28px}.fmj-hero-card ul{color:var(--fmj-muted);padding-left:20px;line-height:1.8}.fmj-hero-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.fmj-card{padding:22px}.fmj-button{cursor:pointer;border:0;border-radius:999px;padding:11px 16px;font-weight:800;transition:transform .12s,background .12s}.fmj-button:hover{transform:translateY(-1px)}.fmj-button-primary{color:#fff;background:var(--fmj-primary)}.fmj-button-primary:hover{background:var(--fmj-primary-dark)}.fmj-button-secondary{color:var(--fmj-text);background:var(--fmj-surface-soft);border:1px solid var(--fmj-border)}.fmj-button-ghost{color:var(--fmj-text);background:0 0}.fmj-attribution-notice{color:#1e3a8a;border-radius:var(--fmj-radius);background:#eff6ff;border:1px solid #bfdbfe;margin:18px 0;padding:16px 18px;line-height:1.55}.fmj-progress-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0;display:grid}.fmj-progress-summary article{background:var(--fmj-surface);border:1px solid var(--fmj-border);border-radius:var(--fmj-radius);padding:18px}.fmj-progress-summary strong{letter-spacing:-.05em;font-size:2rem;display:block}.fmj-progress-summary span{color:var(--fmj-muted);font-size:.9rem}.fmj-filter-panel{background:var(--fmj-surface);border:1px solid var(--fmj-border);border-radius:var(--fmj-radius);box-shadow:var(--fmj-shadow);grid-template-columns:2fr repeat(3,1fr);gap:12px;margin:24px 0;padding:16px;display:grid}.fmj-filter-panel label{gap:7px;display:grid}.fmj-filter-panel span{color:var(--fmj-muted);font-size:.85rem;font-weight:700}.fmj-filter-panel input,.fmj-filter-panel select{border:1px solid var(--fmj-border);width:100%;font:inherit;background:#fff;border-radius:12px;padding:11px 12px}.fmj-two-column{grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);align-items:start;gap:22px;display:grid}.fmj-result-count{color:var(--fmj-muted);margin-bottom:12px;font-weight:700}.fmj-problem-grid{gap:14px;display:grid}.fmj-problem-card{appearance:none;text-align:left;background:var(--fmj-surface);border:1px solid var(--fmj-border);border-radius:var(--fmj-radius);cursor:pointer;width:100%;box-shadow:none;padding:18px;transition:transform .12s,box-shadow .12s,border .12s}.fmj-problem-card:hover,.fmj-problem-card.selected{box-shadow:var(--fmj-shadow);border-color:#93c5fd;transform:translateY(-2px)}.fmj-problem-card h3{margin:12px 0 6px;font-size:1.1rem}.fmj-problem-card-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fmj-badge,.fmj-tag{border-radius:999px;align-items:center;padding:5px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.fmj-category-badge{color:#155e75;background:#ecfeff}.fmj-difficulty-badge{color:#334155;border:1px solid var(--fmj-border);background:#f8fafc}.fmj-difficulty-badge.level-4,.fmj-difficulty-badge.level-5{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.fmj-problem-meta,.fmj-source-compact,.fmj-small-text,.fmj-problem-preview{color:var(--fmj-muted)}.fmj-problem-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:10px 0;line-height:1.5;display:-webkit-box;overflow:hidden}.fmj-tag-row{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.fmj-tag{background:var(--fmj-surface-soft);color:var(--fmj-muted)}.fmj-source-compact{margin-bottom:0;font-size:.78rem}.fmj-sticky-panel{gap:18px;display:grid;position:sticky;top:18px}.fmj-problem-viewer{gap:20px;display:grid}.fmj-problem-statement h2{letter-spacing:-.03em;margin:14px 0;font-size:1.7rem}.fmj-statement-text{font-size:1.05rem;line-height:1.7}.fmj-choice-list{gap:8px;margin:18px 0;padding-left:20px;list-style:none;display:grid}.fmj-choice-list li{line-height:1.5}.fmj-source-box{border:1px dashed var(--fmj-border);background:var(--fmj-surface-soft);border-radius:14px;margin-top:18px;padding:14px}.fmj-source-box p{color:var(--fmj-muted);margin:5px 0}.fmj-section-heading-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.fmj-section-heading-row h3{margin:0 0 4px}.fmj-section-heading-row p{color:var(--fmj-muted);margin:0}.fmj-solution-panel,.fmj-animation-panel{border-top:1px solid var(--fmj-border);padding-top:18px}.fmj-answer-line{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:14px;padding:12px}.fmj-solution-steps{gap:14px;padding-left:20px;display:grid}.fmj-solution-steps h4{margin:0 0 4px}.fmj-solution-steps p{color:var(--fmj-muted);margin:0 0 8px;line-height:1.6}.fmj-solution-steps code{color:#fff;white-space:normal;background:#0f172a;border-radius:10px;padding:8px 10px;display:inline-block}.fmj-animation-frames{gap:12px;margin-top:16px;display:grid}.fmj-animation-frame{background:var(--fmj-surface-soft);border:1px solid var(--fmj-border);border-radius:14px;grid-template-columns:38px 1fr;gap:12px;padding:13px;display:grid}.fmj-frame-number{background:var(--fmj-primary);color:#fff;border-radius:12px;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.fmj-animation-frame h4,.fmj-animation-frame p{margin:0 0 5px}.fmj-animation-frame small{color:var(--fmj-muted)}.fmj-next-row{justify-content:flex-end;display:flex}.fmj-topic-map{background:var(--fmj-surface);border:1px solid var(--fmj-border);border-radius:var(--fmj-radius);padding:18px}.fmj-topic-map h3{margin-top:0}.fmj-topic-list{gap:9px;display:grid}.fmj-topic-row{background:var(--fmj-surface-soft);border-radius:12px;justify-content:space-between;padding:10px 12px;display:flex}.fmj-empty-state{background:var(--fmj-surface);border:1px dashed var(--fmj-border);border-radius:var(--fmj-radius);text-align:center;color:var(--fmj-muted);padding:28px}.fmj-readable-page{gap:16px;max-width:860px;display:grid}.fmj-readable-page .fmj-card p{color:var(--fmj-muted);line-height:1.7}.fmj-site-footer{border-top:1px solid var(--fmj-border);color:var(--fmj-muted);gap:14px;padding:26px 0 36px;display:grid}.fmj-footer-links{flex-wrap:wrap;gap:12px;display:flex}.fmj-footer-links a{color:var(--fmj-primary);font-weight:800}.fmj-footer-disclaimer{font-size:.86rem;line-height:1.6}@media (width<=900px){.fmj-site-header,.fmj-hero,.fmj-two-column{grid-template-columns:1fr}.fmj-site-header{display:grid}.fmj-filter-panel,.fmj-progress-summary{grid-template-columns:1fr 1fr}.fmj-sticky-panel{position:static}}@media (width<=560px){.fmj-filter-panel,.fmj-progress-summary{grid-template-columns:1fr}.fmj-section-heading-row{flex-direction:column;align-items:flex-start}}.fmj-diagram-note{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:14px;padding:10px 12px;line-height:1.45}.fmj-problem-images{gap:12px;margin:18px 0;display:grid}.fmj-problem-image-frame{border:1px solid var(--fmj-border);background:#fff;border-radius:14px;margin:0;padding:12px}.fmj-problem-image-frame img{max-width:100%;height:auto;margin:0 auto;display:block}.fmj-problem-image-frame figcaption{color:var(--fmj-muted);text-align:center;margin-top:8px;font-size:.82rem}.fmj-solution-locked{background:var(--fmj-surface-soft);border:1px dashed var(--fmj-border);color:var(--fmj-muted);border-radius:14px;gap:4px;margin-top:16px;padding:14px;display:grid}.fmj-solution-locked strong{color:var(--fmj-text)}.fmj-animated-explainer{gap:14px;margin-top:16px;display:grid}.fmj-animation-stage{border:1px solid var(--fmj-border);background:radial-gradient(circle at 0 0,#2563eb14,#0000 35%),linear-gradient(#fff,#f8fafc);border-radius:18px;place-items:center;min-height:315px;padding:18px;display:grid;overflow:hidden}.fmj-animation-controls{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.fmj-animation-dots{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.fmj-animation-dots button{border:1px solid var(--fmj-border);color:var(--fmj-muted);cursor:pointer;background:#fff;border-radius:14px;padding:9px;font-weight:700}.fmj-animation-dots button.active{color:var(--fmj-primary);background:#eff6ff;border-color:#93c5fd}.fmj-animation-dots span{background:var(--fmj-surface-soft);border-radius:999px;place-items:center;width:22px;height:22px;margin-right:6px;display:inline-grid}.fmj-scene{place-items:center;gap:16px;width:min(100%,680px);display:grid}.fmj-stage-caption{border:1px solid var(--fmj-border);text-align:center;background:#ffffffeb;border-radius:14px;gap:4px;width:min(100%,560px);padding:12px 14px;display:grid;box-shadow:0 12px 30px #0f172a14}.fmj-stage-caption span{color:var(--fmj-muted);line-height:1.45}.fmj-equation-large{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;font-size:clamp(1.35rem,4vw,2.2rem);font-weight:900;display:flex}.fmj-operation-token{color:#991b1b;background:#fee2e2;border-radius:16px;place-items:center;width:54px;height:54px;animation:1.2s infinite fmjPulse;display:inline-grid}.fmj-operation-token.solved{color:#166534;background:#dcfce7}.fmj-equation-small,.fmj-answer-pop{color:#fff;background:#0f172a;border-radius:14px;padding:10px 14px;font-weight:900;animation:.26s ease-out fmjPop}.fmj-clock{width:220px;height:220px;box-shadow:var(--fmj-shadow);background:#fff;border:8px solid #0f172a;border-radius:999px;position:relative}.fmj-clock .mark{font-weight:900;position:absolute;transform:translate(-50%,-50%)}.mark-12{top:8%;left:50%}.mark-1{top:14%;left:72%}.mark-2{top:31%;left:88%}.mark-3{top:50%;left:93%}.mark-4{top:72%;left:86%}.mark-5{top:88%;left:70%}.mark-6{top:93%;left:50%}.mark-7{top:88%;left:30%}.mark-8{top:72%;left:14%}.mark-9{top:50%;left:7%}.mark-10{top:30%;left:13%}.mark-11{top:13%;left:30%}.fmj-clock .hand{background:var(--fmj-primary);transform-origin:bottom;border-radius:999px;width:6px;position:absolute;bottom:50%;left:calc(50% - 3px)}.fmj-clock .minute{height:86px;transform:rotate(0)}.fmj-clock .hour{background:#ef4444;height:62px;transform:rotate(-60deg)}.angle-wedge{color:#f97316;font-size:1.3rem;font-weight:900;animation:.26s ease-out fmjPop;position:absolute;top:20%;left:32%}.fmj-triplet-table{gap:8px;width:min(100%,520px);display:grid}.fmj-triplet-row{border:1px solid var(--fmj-border);background:#fff;border-radius:12px;grid-template-columns:38px 1fr 52px;align-items:center;gap:10px;padding:9px 12px;display:grid}.fmj-triplet-row.highlight{background:#fff7ed;border-color:#f97316;transform:scale(1.02)}.fmj-triplet-row em{justify-self:end;font-style:normal;font-weight:900}.fmj-svg-stage{border:1px solid var(--fmj-border);background:#fff;border-radius:16px;width:min(100%,520px);height:auto}.axis{stroke:#0f172a;stroke-width:3px}.line-a{fill:none;stroke:#2563eb;stroke-width:5px}.line-b{fill:none;stroke:#f97316;stroke-width:5px}.guide{stroke:#64748b;stroke-dasharray:6 5;stroke-width:3px;animation:.8s ease-out fmjDraw}.dot-a{fill:#2563eb}.dot-b{fill:#f97316}.svg-label{fill:#334155;font-size:13px}.svg-label.bold{font-weight:900}.svg-answer{fill:#16a34a;font-size:19px;font-weight:900}.shape-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;display:flex}.rect-garden,.square-garden{color:#14532d;box-shadow:var(--fmj-shadow);background:#dcfce7;border:3px solid #16a34a;place-items:center;gap:6px;font-weight:900;display:grid}.rect-garden{width:220px;height:72px}.square-garden{width:130px;height:130px}.rect-garden em,.square-garden em{font-size:.9rem;font-style:normal}.arrow{color:var(--fmj-primary);font-size:2.4rem;font-weight:900}.money-ladder{gap:8px;width:min(100%,380px);display:grid}.money-card{border:1px solid var(--fmj-border);text-align:center;background:#fff;border-radius:14px;padding:11px;font-weight:900;box-shadow:0 8px 18px #0f172a0f}.money-card.least{color:#991b1b;background:#fee2e2;border-color:#fecaca;animation:1s infinite fmjPulse}.number-line{border-bottom:6px solid #0f172a;width:min(100%,520px);height:96px;margin:25px 0;position:relative}.endpoint,.marker{font-weight:900;position:absolute;transform:translate(-50%)}.endpoint{bottom:-35px}.endpoint.left{left:0%}.endpoint.right{left:100%}.marker{background:var(--fmj-primary);color:#fff;border-radius:999px;padding:7px 10px;animation:.26s ease-out fmjPop;bottom:16px}.marker.three-fourths{opacity:.55;left:75%}.marker.answer{background:#16a34a;bottom:54px;left:75%}.cube-net{width:250px;height:210px;position:relative}.face{background:#fff;border:3px solid #0f172a;border-radius:8px;place-items:center;width:62px;height:62px;font-weight:900;transition:transform .3s,background .2s;display:grid;position:absolute}.face.r{background:#fee2e2;top:0;left:0}.face.b{background:#dbeafe;top:0;left:62px}.face.g{background:#dcfce7;top:62px;left:62px}.face.y{background:#fef9c3;top:62px;left:124px}.face.o{background:#ffedd5;top:62px;left:186px}.face.w{background:#fff;top:124px;left:124px}.face.focus{box-shadow:0 0 0 6px #2563eb2e}.face.opposite{transform:translateY(-8px);box-shadow:0 0 0 6px #16a34a33}.face.dim{opacity:.55}.venn-stage{width:360px;height:220px;position:relative}.overlap{color:#fff;background:#0f172a;border-radius:999px;padding:7px 10px;font-weight:900;animation:.26s ease-out fmjPop;position:absolute}.overlap-ab{top:85px;left:250px}.overlap-ac{top:85px;left:74px}.traffic-bar{width:min(100%,540px);height:72px;box-shadow:var(--fmj-shadow);border:3px solid #0f172a;border-radius:16px;grid-template-columns:25fr 5fr 30fr;display:grid;overflow:hidden}.traffic-bar span{color:#fff;text-align:center;place-items:center;font-weight:900;display:grid}.traffic-bar .green{background:#16a34a}.traffic-bar .yellow{color:#422006;background:#eab308}.traffic-bar .red{background:#dc2626}.traffic-bar .selected{outline-offset:-5px;outline:5px solid #0f172a52;animation:1s infinite fmjPulse}.generic-board{grid-template-columns:repeat(3,1fr);gap:10px;width:min(100%,520px);display:grid}.generic-board span{border:1px solid var(--fmj-border);text-align:center;background:#fff;border-radius:14px;padding:24px 10px;font-weight:900}.generic-board span.active{color:var(--fmj-primary);background:#eff6ff;border-color:#93c5fd}@keyframes fmjPulse{0%,to{transform:scale(1)}50%{transform:scale(1.045)}}@keyframes fmjPop{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fmjDraw{0%{stroke-dashoffset:80px;opacity:0}to{stroke-dashoffset:0;opacity:1}}@media (width<=640px){.fmj-animation-dots{grid-template-columns:1fr}.fmj-animation-stage{min-height:360px}.traffic-bar{font-size:.82rem}.rect-garden{width:170px}.venn-stage{transform:scale(.82)}}.fmj-mode-grid,.fmj-learn-grid,.fmj-practice-grid,.fmj-dashboard-stats{gap:16px;margin:24px 0;display:grid}.fmj-mode-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.fmj-mode-card,.fmj-learn-card,.fmj-practice-grid button,.fmj-dashboard-card,.fmj-dashboard-stats article,.fmj-workspace{background:var(--fmj-surface);border:1px solid var(--fmj-border);border-radius:var(--fmj-radius);box-shadow:var(--fmj-shadow)}.fmj-mode-card,.fmj-learn-card,.fmj-practice-grid button{color:inherit;text-align:left;cursor:pointer;padding:20px;text-decoration:none}.fmj-mode-card strong,.fmj-learn-card strong,.fmj-practice-grid button strong{margin-bottom:6px;font-size:1.18rem;display:block}.fmj-mode-card span,.fmj-learn-card span,.fmj-practice-grid button span,.fmj-learn-card p{color:var(--fmj-muted);line-height:1.55}.fmj-learn-grid,.fmj-practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fmj-difficulty-row{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.fmj-difficulty-pill{border:1px solid var(--fmj-border);background:var(--fmj-surface);min-width:98px;color:inherit;border-radius:999px;justify-content:space-between;align-items:center;padding:8px 10px;font-size:.88rem;text-decoration:none;display:inline-flex}.fmj-difficulty-pill span{white-space:nowrap}.fmj-difficulty-pill small{color:var(--fmj-muted);margin-left:8px}.fmj-difficulty-pill.empty{opacity:.55}.fmj-learn-card-link{color:inherit;text-decoration:none;display:block}.fmj-problem-bank-shell{grid-template-columns:260px minmax(310px,.88fr) minmax(420px,1.25fr);align-items:start;gap:18px;display:grid}.fmj-bank-filters,.fmj-bank-list,.fmj-bank-workspace{min-width:0}.fmj-bank-filters,.fmj-bank-list,.fmj-bank-workspace,.fmj-archive-layout>aside,.fmj-archive-layout>section{position:sticky;top:16px}.fmj-advanced-filters{background:var(--fmj-surface);border:1px solid var(--fmj-border);border-radius:var(--fmj-radius);box-shadow:var(--fmj-shadow);gap:12px;padding:16px;display:grid}.fmj-advanced-filters>div:first-child{justify-content:space-between;align-items:center;display:flex}.fmj-advanced-filters h3{margin:0}.fmj-small-link-button{color:var(--fmj-primary);cursor:pointer;background:0 0;border:0;font-weight:800}.fmj-advanced-filters label{gap:6px;display:grid}.fmj-advanced-filters label span{color:var(--fmj-muted);font-size:.84rem;font-weight:800}.fmj-advanced-filters input,.fmj-advanced-filters select{border:1px solid var(--fmj-border);width:100%;font:inherit;background:#fff;border-radius:12px;padding:10px 11px}.fmj-compact-list{gap:9px;max-height:calc(100vh - 120px);padding-right:4px;display:grid;overflow:auto}.fmj-compact-row{border:1px solid var(--fmj-border);background:var(--fmj-surface);text-align:left;cursor:pointer;border-radius:14px;gap:8px;width:100%;padding:12px;display:grid}.fmj-compact-row.selected,.fmj-compact-row:hover{background:#eff6ff;border-color:#93c5fd}.fmj-compact-row strong,.fmj-compact-row span{display:block}.fmj-compact-row span{color:var(--fmj-muted);margin-top:2px;font-size:.88rem}.fmj-compact-row-meta{color:var(--fmj-muted);justify-content:space-between;align-items:center;gap:10px;font-size:.8rem;display:flex}.fmj-compact-row-meta em{background:var(--fmj-surface-soft);color:var(--fmj-muted);border-radius:999px;padding:4px 8px;font-style:normal;font-weight:900}.status-solved{color:#166534!important;background:#dcfce7!important}.status-missed{color:#991b1b!important;background:#fee2e2!important}.status-bookmarked{color:#92400e!important;background:#fef3c7!important}.fmj-workspace{gap:18px;padding:20px;display:grid}.fmj-workspace-header{border-bottom:1px solid var(--fmj-border);justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:14px;display:flex}.fmj-workspace-header h2{letter-spacing:-.03em;margin:0}.fmj-source-mini{color:var(--fmj-muted);margin:0 0 6px;font-size:.86rem;font-weight:800}.fmj-bookmark{border:1px solid var(--fmj-border);color:var(--fmj-muted);cursor:pointer;background:#fff;border-radius:999px;width:42px;height:42px;font-size:1.2rem}.fmj-bookmark.active{color:#d97706;background:#fef3c7;border-color:#f59e0b}.fmj-answer-picker{border-top:1px solid var(--fmj-border);gap:12px;padding-top:16px;display:grid}.fmj-answer-picker h3{margin:0}.fmj-answer-buttons{flex-wrap:wrap;gap:8px;display:flex}.fmj-answer-buttons button{border:1px solid var(--fmj-border);cursor:pointer;background:#fff;border-radius:12px;width:48px;height:42px;font-weight:900}.fmj-answer-buttons button.selected{background:var(--fmj-primary);color:#fff;border-color:var(--fmj-primary)}.fmj-workspace-actions{flex-wrap:wrap;gap:8px;display:flex}.fmj-attempt-result,.fmj-hint-box,.fmj-solution-reveal{border:1px solid var(--fmj-border);border-radius:14px;padding:14px}.fmj-attempt-result.correct{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.fmj-attempt-result.incorrect{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.fmj-hint-box{background:#f8fafc}.fmj-hint-box h3{margin-top:0}.fmj-hint-box li{color:var(--fmj-muted);margin:6px 0}.fmj-animation-collapsible{border-top:1px solid var(--fmj-border);padding-top:16px}.fmj-animation-toggle{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:14px;width:100%;padding:13px;font-weight:900}.fmj-template-animation{gap:14px;margin-top:14px;display:grid}.fmj-template-stage{border:1px solid var(--fmj-border);background:radial-gradient(circle at 0 0,#2563eb1a,#0000 36%),#fff;border-radius:18px;place-items:center;min-height:240px;padding:16px;display:grid;overflow:hidden}.fmj-template-caption{background:var(--fmj-surface-soft);border:1px solid var(--fmj-border);border-radius:14px;padding:12px}.fmj-template-caption p{color:var(--fmj-muted);margin:5px 0;line-height:1.5}.fmj-template-caption small{color:var(--fmj-muted)}.fmj-template-generic{text-align:center;grid-template-columns:repeat(3,1fr);gap:9px;width:min(100%,460px);display:grid}.fmj-template-generic span,.fmj-template-area .area-shape{border:1px solid var(--fmj-border);background:var(--fmj-surface-soft);border-radius:14px;padding:18px;font-weight:900}.fmj-template-generic span.active,.fmj-template-area .area-shape.active{color:var(--fmj-primary);background:#eff6ff;border-color:#93c5fd}.fmj-template-clock .clock-circle{background:#fff;border:7px solid #0f172a;border-radius:999px;width:190px;height:190px;position:relative}.clock-top,.clock-hour{font-weight:900;position:absolute}.clock-top{top:8px;left:50%;transform:translate(-50%)}.clock-hour{top:48px;left:20px}.clock-hand{transform-origin:bottom;border-radius:999px;width:6px;position:absolute;bottom:50%;left:calc(50% - 3px)}.clock-angle-label{color:#f97316;font-size:1.25rem;font-weight:900;position:absolute;top:42px;left:58px}.fmj-template-numberline{width:min(100%,430px)}.fmj-template-numberline .line{border-bottom:5px solid #0f172a;height:90px;position:relative}.fmj-template-numberline span{font-weight:900;position:absolute;bottom:-36px;transform:translate(-50%)}.fmj-template-numberline .start{left:0}.fmj-template-numberline .mid{color:var(--fmj-primary);left:70%}.fmj-template-numberline .end{color:#16a34a;left:100%}.fmj-template-venn{place-items:center;width:320px;height:190px;display:grid;position:relative}.fmj-template-venn .circle{background:#dbeafead;border:3px solid #0f172a;border-radius:999px;place-items:center;width:155px;height:155px;font-weight:900;display:grid;position:absolute}.fmj-template-venn .left{left:35px}.fmj-template-venn .right{background:#fed7aaad;right:35px}.venn-overlap{color:#fff;background:#0f172a;border-radius:999px;padding:7px 10px;font-weight:900;position:absolute}.fmj-template-area{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.fmj-template-area span{color:var(--fmj-primary);font-size:2rem;font-weight:900}.fmj-template-probability{text-align:center;gap:16px;width:min(100%,420px);display:grid}.prob-bar{border:3px solid #0f172a;border-radius:16px;grid-template-columns:3fr 2fr;height:64px;display:grid;overflow:hidden}.prob-bar span{background:#e2e8f0;place-items:center;font-weight:900;display:grid}.prob-bar span.selected{color:#166534;background:#bbf7d0}.fmj-template-graph{background:#fff;border-radius:16px;width:min(100%,440px)}.fmj-template-graph .axis{stroke:#0f172a;stroke-width:3px}.graph-line{fill:none;stroke-width:5px}.graph-line.one{stroke:#2563eb}.graph-line.two{stroke:#f97316}.fmj-archive-layout{grid-template-columns:120px minmax(300px,.85fr) minmax(420px,1.15fr);align-items:start;gap:18px;display:grid}.fmj-year-rail{gap:8px;display:grid}.fmj-year-rail button{border:1px solid var(--fmj-border);cursor:pointer;background:#fff;border-radius:14px;justify-content:space-between;padding:11px;font-weight:900;display:flex}.fmj-year-rail button.active{background:var(--fmj-primary);color:#fff}.fmj-session-status{color:var(--fmj-muted);font-weight:900}.fmj-dashboard-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.fmj-dashboard-stats article{padding:18px}.fmj-dashboard-stats strong{letter-spacing:-.05em;font-size:2rem;display:block}.fmj-dashboard-stats span{color:var(--fmj-muted)}.fmj-dashboard-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.fmj-dashboard-card{padding:20px}.fmj-attempt-row,.fmj-topic-row{background:var(--fmj-surface-soft);border-radius:12px;justify-content:space-between;gap:12px;margin:8px 0;padding:10px 12px;display:flex}.fmj-reset-progress{color:#991b1b;cursor:pointer;background:#fee2e2;border:1px solid #fecaca;border-radius:999px;margin-top:18px;padding:10px 14px;font-weight:900}@media (width<=1120px){.fmj-problem-bank-shell,.fmj-archive-layout{grid-template-columns:1fr}.fmj-bank-filters,.fmj-bank-list,.fmj-bank-workspace,.fmj-archive-layout>aside,.fmj-archive-layout>section{position:static}.fmj-compact-list{max-height:420px}.fmj-year-rail{grid-template-columns:repeat(auto-fit,minmax(95px,1fr))}}@media (width<=760px){.fmj-mode-grid,.fmj-learn-grid,.fmj-practice-grid,.fmj-dashboard-stats,.fmj-dashboard-grid,.fmj-template-generic{grid-template-columns:1fr}}.fmj-fixed-animation{gap:14px;margin-top:14px;display:grid}.fmj-fixed-stage{border:1px solid var(--fmj-border);background:radial-gradient(circle at 0 0,#2563eb14,#0000 34%),linear-gradient(#fff,#f8fafc);border-radius:22px;place-items:center;min-height:330px;padding:20px;display:grid;overflow:hidden}.fmj-fixed-caption{border:1px solid var(--fmj-border);background:#f8fafc;border-radius:16px;padding:14px}.fmj-fixed-caption strong{margin-bottom:5px;font-size:1.08rem;display:block}.fmj-fixed-caption p{color:var(--fmj-muted);margin:0 0 6px;line-height:1.5}.fmj-fixed-caption small{color:var(--fmj-muted)}.fmj-visual-card{text-align:center;place-items:center;gap:18px;width:min(100%,650px);min-height:245px;display:grid}.template-visual .template-card,.template-card{border:1px solid var(--fmj-border);background:#fff;border-radius:20px;gap:16px;width:min(100%,640px);padding:22px;display:grid}.template-card-heading{color:var(--fmj-primary);font-size:1.1rem;font-weight:900}.template-card-body{gap:14px;display:grid}.template-equation{letter-spacing:-.02em;font-size:clamp(1.4rem,4vw,2.4rem);font-weight:900}.template-equation code{border:1px solid var(--fmj-border);background:#f8fafc;border-radius:18px;padding:18px 20px;display:block}.template-answer{color:#16a34a;font-weight:900}.template-number-line,.template-bar-card,.template-probability-card,.template-ranking-card,.template-area-card,.template-clock-card,.template-number-line{gap:12px;display:grid}.template-line{background:linear-gradient(90deg,#dbeafe 0%,#93c5fd 100%);border-radius:999px;height:6px;position:relative}.template-marker{color:#1d4ed8;background:#eef2ff;border-radius:999px;padding:6px 10px;font-weight:900;position:absolute;top:-16px;left:45%;transform:translate(-50%)}.template-note{color:#475569;font-size:.98rem}.template-clock-face{background:radial-gradient(circle,#fff 0%,#e2e8f0 100%);border:8px solid #0f172a;border-radius:999px;width:180px;height:180px;margin:0 auto;position:relative}.template-clock-center{background:#0f172a;border-radius:999px;width:12px;height:12px;position:absolute;top:calc(50% - 6px);left:calc(50% - 6px)}.template-clock-hand{transform-origin:bottom;background:#0f172a;border-radius:999px;width:6px;position:absolute;bottom:50%;left:calc(50% - 3px)}.template-clock-hand.minute{height:78px}.template-clock-hand.hour{height:56px;transform:rotate(-65deg)}.template-bar{background:linear-gradient(90deg,#d1fae5 0%,#34d399 100%);border-radius:999px;height:34px;display:grid;overflow:hidden}.template-bar-segment{color:#065f46;place-items:center;padding:0 14px;font-weight:900;display:inline-grid}.template-probability-fraction{font-size:clamp(1.3rem,3vw,1.9rem);font-weight:900}.template-probability-text{color:#475569}.template-data-list{gap:10px;display:grid}.template-data-entry{border:1px solid var(--fmj-border);background:#f8fafc;border-radius:14px;justify-content:space-between;gap:10px;padding:12px 14px;display:flex}.template-data-key{color:#0f172a;font-weight:700}.template-data-value{color:#475569;text-align:right}.template-empty{color:#475569}.equation-line{letter-spacing:-.03em;flex-wrap:wrap;justify-content:center;align-items:center;gap:11px;font-size:clamp(1.35rem,4vw,2.35rem);font-weight:900;display:flex}.operator-chip{color:#991b1b;background:#fee2e2;border-radius:18px;place-items:center;width:58px;height:58px;animation:1.2s ease-in-out infinite fmjFixPulse;display:inline-grid}.operator-chip.solved{color:#166534;background:#dcfce7}.work-line{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.work-line span{border:1px solid var(--fmj-border);background:#fff;border-radius:999px;padding:9px 12px;font-weight:800}.answer-ribbon{color:#fff;background:#0f172a;border-radius:14px;padding:11px 15px;font-weight:900;animation:.24s ease-out fmjFixPop}.clean-clock{width:220px;height:220px;box-shadow:var(--fmj-shadow);background:#fff;border:8px solid #0f172a;border-radius:999px;position:relative}.clock-num,.clock-center,.clock-hand,.clock-gap,.clock-answer{position:absolute}.clock-num{font-weight:900}.n12{top:10px;left:50%;transform:translate(-50%)}.n10{top:56px;left:22px}.clock-center{z-index:3;background:#0f172a;border-radius:999px;width:12px;height:12px;top:calc(50% - 6px);left:calc(50% - 6px)}.clock-hand{transform-origin:bottom;border-radius:999px;width:6px;bottom:50%;left:calc(50% - 3px)}.clock-hand.minute{background:var(--fmj-primary);height:84px}.clock-hand.hour{background:#ef4444;height:62px;transform:rotate(-60deg)}.clock-gap{color:#f97316;font-size:.95rem;font-weight:900}.clock-gap.one{top:22px;left:68px}.clock-gap.two{top:58px;left:38px}.clock-answer{color:#16a34a;font-size:1.5rem;font-weight:900;animation:.24s ease-out fmjFixPop;top:62px;left:78px}.triplet-visual{align-content:center}.triplet-row{border:1px solid var(--fmj-border);text-align:left;background:#fff;border-radius:14px;grid-template-columns:44px 1fr 52px;align-items:center;gap:10px;width:min(100%,520px);padding:10px 12px;display:grid}.triplet-row em{justify-self:end;font-style:normal;font-weight:900}.triplet-row.wrong-sum{background:#fff7ed;border-color:#fb923c;transform:scale(1.02)}.clean-graph{border:1px solid var(--fmj-border);background:#fff;border-radius:16px;width:min(100%,560px);height:auto}.clean-graph .axis{stroke:#0f172a;stroke-width:3px}.graph-label{fill:#475569;font-size:13px}.graph-label.bold{font-weight:900}.graph-label.blue{fill:#2563eb;font-weight:900}.graph-label.orange{fill:#f97316;font-weight:900}.alberto-line,.bjorn-line{fill:none;stroke-width:5px;stroke-linecap:round}.alberto-line{stroke:#2563eb}.bjorn-line{stroke:#f97316}.graph-guide{stroke:#64748b;stroke-dasharray:7 6;stroke-width:3px}.blue-dot{fill:#2563eb}.orange-dot{fill:#f97316}.graph-answer{fill:#16a34a;font-size:20px;font-weight:900}.garden-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;display:flex}.old-garden,.new-garden{color:#14532d;box-shadow:var(--fmj-shadow);background:#dcfce7;border:3px solid #16a34a;border-radius:12px;place-items:center;gap:7px;font-weight:900;display:grid}.old-garden{width:235px;height:74px}.new-garden{width:135px;height:135px}.garden-arrow{color:var(--fmj-primary);font-weight:900}.ranking-ladder{gap:8px;width:min(100%,360px);display:grid}.ranking-card{border:1px solid var(--fmj-border);background:#fff;border-radius:14px;padding:11px;font-weight:900}.ranking-card.least{color:#991b1b;background:#fee2e2;border-color:#fecaca;animation:1s ease-in-out infinite fmjFixPulse}.relation-list{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.relation-list span{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:7px 10px;font-weight:800}.mile-line{border-bottom:6px solid #0f172a;width:min(100%,500px);height:110px;position:relative}.mile-line span{font-weight:900;position:absolute}.mile-start{bottom:-34px;left:0}.mile-end{bottom:-34px;right:0}.mile-marker{border-radius:999px;padding:7px 10px;left:75%;transform:translate(-50%)}.mile-marker.fraction{color:#1d4ed8;background:#dbeafe;bottom:18px}.mile-marker.answer{color:#fff;background:#16a34a;bottom:56px}.clean-net{width:270px;height:225px;position:relative}.net-face{border:3px solid #0f172a;border-radius:10px;place-items:center;width:64px;height:64px;font-weight:900;transition:transform .2s,box-shadow .2s;display:grid;position:absolute}.net-face.r{background:#fee2e2;top:0;left:0}.net-face.b{background:#dbeafe;top:0;left:64px}.net-face.g{background:#dcfce7;top:64px;left:64px}.net-face.y{background:#fef9c3;top:64px;left:128px}.net-face.o{background:#ffedd5;top:64px;left:192px}.net-face.w{background:#fff;top:128px;left:128px}.net-face.focus,.net-face.opposite{box-shadow:0 0 0 7px #2563eb2e}.net-face.opposite{transform:translateY(-8px)}.flower-stage{width:360px;height:220px;position:relative}.bed{text-align:center;background:#dbeafeb8;border:3px solid #0f172a;place-items:center;font-weight:900;display:grid;position:absolute}.bed-a{width:210px;height:100px;top:40px;left:75px}.bed-b,.bed-c{background:#fed7aabd;border-radius:999px;width:118px;height:145px}.bed-b{top:54px;right:0}.bed-c{top:54px;left:0}.overlap{color:#fff;background:#0f172a;border-radius:999px;padding:7px 10px;font-weight:900;position:absolute}.overlap.ab{top:84px;left:250px}.overlap.ac{top:84px;left:74px}.traffic-strip{width:min(100%,540px);height:75px;box-shadow:var(--fmj-shadow);border:3px solid #0f172a;border-radius:16px;grid-template-columns:25fr 5fr 30fr;display:grid;overflow:hidden}.traffic-strip span{color:#fff;text-align:center;place-items:center;font-weight:900;display:grid}.traffic-strip .green{background:#16a34a}.traffic-strip .yellow{color:#422006;background:#eab308}.traffic-strip .red{background:#dc2626}.traffic-strip .selected{outline-offset:-5px;outline:5px solid #0f172a59}.storyboard-visual{align-content:start;gap:18px;width:min(100%,640px);display:grid}.storyboard-track{grid-auto-columns:1fr;grid-auto-flow:column;gap:10px;width:100%;display:grid}.storyboard-step{border:1px solid var(--fmj-border);text-align:left;background:#fff;border-radius:14px;grid-template-columns:32px 1fr;align-items:center;gap:10px;padding:10px 12px;transition:background .2s,border-color .2s,transform .2s;display:grid}.storyboard-step-num{color:#475569;background:#f1f5f9;border-radius:999px;place-items:center;width:30px;height:30px;font-size:.95rem;font-weight:900;display:grid}.storyboard-step-title{color:#0f172a;font-size:.95rem;font-weight:800;line-height:1.2}.storyboard-step.done{background:#ecfdf5;border-color:#6ee7b7}.storyboard-step.done .storyboard-step-num{color:#fff;background:#10b981}.storyboard-step.active{box-shadow:var(--fmj-shadow);background:#eff6ff;border-color:#93c5fd;transform:translateY(-2px)}.storyboard-step.active .storyboard-step-num{background:var(--fmj-primary);color:#fff;animation:1.2s ease-in-out infinite fmjFixPulse}.storyboard-board{border:1px solid var(--fmj-border);background:#fff;border-radius:18px;gap:14px;width:100%;min-height:150px;padding:20px;display:grid}.storyboard-explainer{border:1px solid var(--fmj-border);text-align:left;background:#f8fafc;border-radius:14px;gap:10px;padding:16px 18px;animation:.28s ease-out fmjFixPop;display:grid}.storyboard-explainer-label{color:var(--fmj-primary);letter-spacing:-.01em;font-size:.95rem;font-weight:900}.storyboard-explainer p{color:#1f2937;margin:0;font-weight:500;line-height:1.55}.storyboard-equation-row{justify-content:flex-start;margin-top:4px;display:flex}.storyboard-equation-row code{border:1px solid var(--fmj-border);color:#0f172a;background:#fff;border-radius:12px;padding:10px 16px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:clamp(1rem,2.4vw,1.25rem);font-weight:800;display:inline-block}.storyboard-answer-ribbon{color:#fff;background:#0f172a;border-radius:14px;grid-template-columns:auto auto 1fr;align-items:center;gap:12px;padding:13px 16px;animation:.28s ease-out fmjFixPop;display:grid}.storyboard-answer-label{text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;font-size:.72rem;font-weight:800}.storyboard-answer-ribbon strong{color:#fff;background:#16a34a;border-radius:10px;padding:2px 12px;font-size:1.5rem;font-weight:900;line-height:1.3}.storyboard-answer-text{text-align:left;font-weight:700}@media (width<=640px){.storyboard-track{grid-auto-columns:auto;grid-auto-flow:row}}.fallback-steps{grid-template-columns:repeat(3,1fr);gap:10px;width:min(100%,460px);display:grid}.fallback-steps span{border:1px solid var(--fmj-border);background:#fff;border-radius:14px;padding:20px 10px;font-weight:900}.fallback-steps span.active{color:var(--fmj-primary);background:#eff6ff;border-color:#93c5fd}@keyframes fmjFixPulse{0%,to{transform:scale(1)}50%{transform:scale(1.045)}}@keyframes fmjFixPop{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=640px){.fmj-fixed-stage{min-height:390px}.garden-row{flex-direction:column}.flower-stage{transform:scale(.82)}.traffic-strip{font-size:.78rem}.fallback-steps{grid-template-columns:1fr}}
