/* Subject collection: keeps the blue, white and orange visual language. */
.subject-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:35px}.subject-card{display:flex;flex-direction:column;min-width:0;padding:25px;border:1px solid var(--line);background:#fff;border-radius:16px;position:relative;overflow:hidden}.subject-card:before{content:'';height:4px;position:absolute;top:0;left:0;right:0;background:#2155ce}.subject-physics:before,.subject-history:before,.subject-economics:before{background:#ff874b}.subject-biology:before,.subject-geography:before{background:#167052}.subject-card:hover{border-color:var(--primary);background:#f3f6ff}.subject-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.subject-code{color:var(--muted);font-size:.78rem;font-weight:700}.subject-card h3{font-size:1.2rem;line-height:1.5;margin:0 0 13px}.subject-card p{font-size:.95rem;color:var(--muted);line-height:1.8;margin:0 0 25px}.subject-card .text-link{margin-top:auto}.subject-section .section-head h2{max-width:650px}.subject-heading{max-width:920px}.subject-method{grid-template-columns:repeat(3,minmax(0,1fr))}.subject-method .diagram-index{margin-bottom:12px}.subject-method strong{font-size:.92rem;line-height:1.8}.subject-sources{padding:30px 0}.subject-sources p{font-size:.85rem;color:var(--muted)}.subject-app .field-grid{row-gap:22px}.subject-app .field-grid+.field-grid{margin-top:22px}.subject-app .field input:disabled{color:var(--muted);background:#e6ebf4;border-style:dashed}.subject-app .field input:disabled:focus{outline:0}.subject-app .field-hint{overflow-wrap:anywhere}.lab-result{margin-top:20px;border-top:1px solid var(--line);padding-top:27px;min-width:0}.lab-answer{font-size:1.8rem;line-height:1.55;color:var(--primary);letter-spacing:-.035em;margin:12px 0 22px;overflow-wrap:anywhere}.lab-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 25px}.lab-metrics>div{background:var(--soft);border-radius:12px;padding:17px;min-width:0}.lab-metrics dt{font-size:.8rem;line-height:1.6;color:var(--muted)}.lab-metrics dd{margin:9px 0 0;font-size:1.18rem;font-weight:800;overflow-wrap:anywhere;color:var(--ink)}.formula-display{overflow-x:auto;overflow-y:hidden;padding:18px 8px;background:#f3f6fd;border-radius:10px;margin:14px 0;font-size:1.6rem;max-width:100%;min-width:0}.formula-display math{font-family:'Cambria Math','STIX Two Math',math;min-width:max-content;white-space:nowrap}.equation-preview{margin:18px 0 22px;min-width:0}.equation-preview .formula-display{border-left:3px solid var(--primary)}.math-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 10px}.math-toolbar .button{min-width:44px;padding:8px 14px;min-height:44px;font-family:'Cambria Math',math;font-size:1.15rem}.lab-chart{border:1px solid var(--line);border-radius:14px;background:#fff;margin:26px 0;padding:14px 10px}.lab-chart svg{display:block;width:100%;height:auto;overflow:hidden}.lab-chart svg text{font-family:Jakarta,Arial,sans-serif;font-size:13px;fill:#152742}.lab-chart figcaption{font-size:.83rem;color:var(--muted);line-height:1.7;margin:10px}.chart-legend{display:flex;gap:18px;flex-wrap:wrap}.chart-legend span{font-weight:700;overflow-wrap:anywhere;min-width:0;max-width:100%}.worked-steps{margin:28px 0}.worked-steps h3{font-size:1.18rem;margin:0 0 23px}.worked-steps ol{list-style:none;counter-reset:solution;margin:0;padding:0;display:grid;gap:22px}.worked-steps li{position:relative;padding:0 0 0 44px;min-width:0;counter-increment:solution}.worked-steps li:before{content:counter(solution,decimal-leading-zero);position:absolute;left:0;top:0;font-size:.78rem;color:var(--primary);font-weight:800;background:var(--soft);border-radius:8px;padding:6px}.worked-steps li>strong{font-size:.94rem;line-height:1.7;display:block}.worked-steps li>p{font-size:.94rem;line-height:1.9;margin:9px 0 0;overflow-wrap:anywhere}.lab-note{font-size:.87rem;line-height:1.8;color:var(--muted);border-left:3px solid var(--orange);padding:12px 18px;background:#fff6ee;margin:24px 0}.punnett-table{min-width:250px;text-align:center;font-size:1.2rem;background:var(--soft)}.punnett-table td,.punnett-table th{text-align:center!important;border:2px solid white}.punnett-table td:first-child{font-weight:700}.sequence-row{margin:20px 0}.sequence-row strong{font-size:.86rem;display:block;line-height:1.7}.sequence-row code{display:block;font:1.12rem/1.9 Consolas,monospace;letter-spacing:.12em;overflow-wrap:anywhere;word-break:break-all;background:var(--soft);color:var(--navy);border-radius:10px;padding:16px;margin-top:10px}.recall-panel{text-align:center;padding:25px 20px;border:1px solid #c5d4fa;border-radius:14px;background:var(--soft)}.recall-panel h2{font-size:1.8rem;line-height:1.6;overflow-wrap:anywhere;color:var(--navy)}.recall-answer{font-size:1.2rem;background:#fff;border-radius:12px;padding:20px;line-height:1.8;overflow-wrap:anywhere}.recall-panel .form-actions{justify-content:center}.event-timeline{list-style:none;padding:0 0 0 28px;margin:30px 0;border-left:2px solid #c7d4f0}.event-timeline li{position:relative;padding:0 0 28px 18px;min-width:0;overflow-wrap:anywhere}.event-timeline li:before{content:'';position:absolute;left:-35px;top:10px;width:12px;height:12px;border-radius:50%;background:var(--primary);border:3px solid var(--soft)}.event-year{display:inline-block;background:var(--soft);color:var(--primary);padding:6px 10px;border-radius:7px;font-weight:800;margin-right:15px;font-size:.9rem}.event-timeline strong{font-size:1rem;line-height:1.8}.event-timeline p{font-size:.84rem;color:var(--muted);margin:10px 0 0}.subject-app .table-scroll{margin-bottom:25px}.subject-app .button{white-space:normal}.subject-app form>.field-grid:has(> .field:only-child){grid-template-columns:1fr}.subject-app .form-actions{flex-wrap:wrap}
@media(max-width:950px){.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-nav{gap:14px}.header-inner{gap:16px}.main-nav a{white-space:nowrap}}
@media(max-width:660px){.subject-grid{grid-template-columns:1fr;gap:16px}.subject-card{padding:24px}.subject-card p{font-size:1rem}.subject-method{grid-template-columns:1fr}.subject-app{padding:20px 15px}.lab-metrics{grid-template-columns:1fr 1fr;gap:10px}.lab-metrics>div{padding:14px}.lab-metrics dd{font-size:1.1rem}.lab-answer{font-size:1.5rem}.worked-steps li{padding-left:37px}.worked-steps li>p{font-size:1rem}.worked-steps li>strong{font-size:1rem}.formula-display{font-size:1.5rem;padding:15px 5px}.lab-chart{padding:9px 3px}.lab-chart figcaption{margin:10px 6px}.lab-note{font-size:.93rem;padding:12px}.main-nav{flex-wrap:wrap;gap:4px 12px;justify-content:flex-start}.main-nav a{font-size:.76rem}.recall-panel{padding:18px 14px}.recall-panel h2{font-size:1.45rem}.event-year{display:table;margin-bottom:10px}}
@media print{.subject-app form,.math-toolbar,.lab-result>.button,.recall-panel .button{display:none!important}.subject-app,.lab-result{border:0;padding:0}.lab-chart{break-inside:avoid}.worked-steps li{break-inside:avoid}.formula-display,.lab-metrics>div,.recall-panel{background:white;border:1px solid #aaa}.lab-answer{color:black}.subject-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.lab-example-notice{margin:0 0 24px;color:var(--muted);font-size:.9rem;line-height:1.8}
math-field{display:block;width:100%;max-width:100%;min-width:0;min-height:70px;padding:15px 12px;border:1px solid #7b8ba9;border-radius:12px;background:#fff;font-size:1.65rem;--caret-color:#2155ce;--selection-background-color:#dbe5ff;--primary:#2155ce}math-field:focus-within{outline:3px solid #2155ce;outline-offset:3px}math-field[aria-invalid=true]{border-color:var(--danger)}math-field::part(menu-toggle){display:none}.function-studio{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.3fr);gap:32px}.function-editors,.function-plot-side{min-width:0}.function-editors>h2{font-size:1.8rem;margin:12px 0}.function-editors>p{font-size:.95rem;line-height:1.8}.professional-function{border-top:1px solid var(--line);padding:22px 0 10px}.professional-function>label{font-weight:800;display:block;margin-bottom:10px;font-size:1.15rem}.professional-function .math-toolbar{gap:6px}.professional-function .math-toolbar .button{font-size:1rem;padding:8px 11px}.interactive-board{position:relative;width:100%;height:370px;border:1px solid #b5c6ea;border-radius:12px;background:#fff;overflow:hidden;touch-action:none}.studio-board{height:450px}.interactive-board>svg{width:100%;height:100%}.interactive-board:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.graph-controls{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.graph-controls .button{min-height:44px;min-width:44px;padding:9px 12px;font-size:.8rem}.parameter-panel,.math-scratchpad{margin:20px 0;border:1px solid var(--line);border-radius:12px;padding:15px}.parameter-panel summary,.math-scratchpad summary{font-weight:700;cursor:pointer;min-height:44px;line-height:1.8}.parameter-panel label{display:flex;gap:16px;align-items:center;margin:14px 0}.parameter-panel span{min-width:85px;font-weight:700}.parameter-panel input{accent-color:var(--primary);width:100%;min-height:44px}.math-presets{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.math-scratchpad>p{font-size:.9rem;line-height:1.8}.point-inspector{padding:22px;background:var(--soft);border-radius:12px;margin:22px 0}.point-inspector label{font-size:.85rem;font-weight:700}.point-inspector input{width:100px;min-height:44px;padding:9px;border:1px solid #7b8ba9;border-radius:8px;margin-left:12px;font-size:16px}.inspected-values{display:grid;gap:14px;margin-top:18px}.inspected-values strong{display:block;font-size:1rem}.inspected-values span{display:block;font-size:.8rem;color:var(--muted);margin-top:7px}.page-lab:has(.function-studio) main{max-width:1360px}.page-lab:has(.function-studio) .subject-app{padding:28px}.math-scratchpad math-field{margin-top:16px}.ML__keyboard{--keyboard-zindex:1000}
@media(max-width:1000px){.function-studio{grid-template-columns:1fr}.studio-board{height:400px}.function-editors .professional-function{padding-top:18px}.page-lab:has(.function-studio) .subject-app{padding:20px}}@media(max-width:660px){.studio-board,.interactive-board{height:330px}.professional-function math-field{font-size:1.4rem}.point-inspector{padding:17px}.graph-controls .button{font-size:.78rem}.math-scratchpad{padding:13px}}

.math-toolbar{font-family:"Plus Jakarta Sans",system-ui,sans-serif}.math-toolbar button{font-family:inherit}

.lab-chart>svg[hidden]{display:none}
