@import "https://fonts.googleapis.com/css2?family=Mali:wght@400;500;600;700&family=Nunito:wght@600;700;800;900&display=swap";:root{color:#123e75;--blue:#155aa4;--navy:#123e75;--mint:#daf2e8;--cream:#fffcf2;--orange:#ff9f2d;--line:#b6d6ef;--shadow:0 15px 35px #175a9422;background:#e4f1ff;font-family:Mali,Nunito,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #ffad3a}.site{background:linear-gradient(#dff0ff,#edf7ff);min-height:100vh}header{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-bottom:1px solid #c5dff2;justify-content:space-between;align-items:center;height:72px;padding:0 max(5vw,22px);display:flex;position:sticky;top:0}.brand{color:#155aa4;letter-spacing:-1px;background:0 0;border:0;font:900 27px Nunito}.brand span{color:#123e75}.menu{color:var(--navy);background:#e7f4ff;border:0;border-radius:11px;padding:9px;display:none}nav{gap:3px;display:flex}nav button{color:#32668d;background:0 0;border:0;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700}nav button:hover,nav .active{color:#124e95;background:#dff1ff}.home-hero{background-position:50%;background-size:cover;min-height:min(760px,100vh - 72px);position:relative}.home-copy{max-width:690px;padding:clamp(130px,16vw,230px) 8vw}.kicker{color:#197d82;letter-spacing:1.3px;margin:0 0 9px;font:700 12px Nunito}.home-copy h1{color:#123e75;text-shadow:0 3px #fff;margin:0;font:900 clamp(62px,8vw,120px)/.86 Nunito}.home-copy h1 span{color:#155aa4}.home-copy>p:not(.kicker){color:#245b7f;margin:26px 0;font-size:clamp(15px,1.8vw,20px);line-height:1.8}.primary{background:var(--orange);color:#693400;border:0;border-radius:16px;align-items:center;gap:9px;padding:14px 20px;font-weight:800;transition:all .2s;display:inline-flex;box-shadow:0 7px #e4871d}.primary:hover{transform:translateY(-2px)}.small{border-radius:11px;padding:10px 15px;box-shadow:0 4px #e4871d}.primary:disabled{opacity:.5;cursor:not-allowed}.path{background:var(--cream);grid-template-columns:.75fr 1.25fr;gap:55px;padding:80px max(5vw,22px);display:grid}.path h2{color:var(--navy);margin:0;font:800 clamp(31px,4vw,52px)/1.1 Nunito}.path>div>p:not(.kicker){color:#5d8098;line-height:1.75}.lesson-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.lesson{text-align:left;min-height:105px;color:var(--navy);background:#fff;border:1px solid #c8dff0;border-radius:19px;align-items:center;gap:13px;padding:15px;transition:all .2s;display:flex;box-shadow:0 8px 20px #1b639111}.lesson:hover{border-color:#6caee6;transform:translateY(-3px)}.lesson-no{color:#17776e;background:#e2f4ec;border-radius:50%;place-items:center;min-width:36px;height:36px;font:700 17px Nunito;display:grid}.lesson div{flex:1}.lesson b{font-size:16px;display:block}.lesson small{color:#67859a;margin-top:4px;font-size:11px;display:block}.lesson svg{color:#5da8c9;width:18px}.lesson-page{background:var(--cream);padding-bottom:75px}.lesson-hero{background-position:50%;background-size:cover;align-items:center;min-height:390px;padding:60px 8vw;display:flex}.lesson-hero div{max-width:590px}.lesson-hero h1{color:#123e75;text-shadow:0 2px #fff;margin:0;font:900 clamp(42px,6vw,70px)/1.08 Nunito}.lesson-hero p:last-child{color:#257b7d;font-size:18px;font-weight:700}.lesson-tabs{background:#fff;border-bottom:1px solid #dbeaf4;justify-content:center;gap:2px;padding:15px;display:flex;overflow:auto}.lesson-tabs span{white-space:nowrap;color:#6a899a;border-radius:999px;padding:9px 13px;font-size:12px}.lesson-tabs .current{color:#187d72;background:#daf3eb;font-weight:700}.lesson-content{gap:26px;width:min(1000px,92vw);margin:42px auto;display:grid}.simulator,.poe,.formula,.learn-card{box-shadow:var(--shadow);background:#fff;border:1px solid #c7deef;border-radius:25px;padding:clamp(18px,3vw,32px)}.sim-header{justify-content:space-between;align-items:start;display:flex}.sim-header h2,.poe h2,.formula h2,.learn-card h2{color:var(--navy);margin:0;font:800 clamp(24px,3.5vw,38px)/1.2 Nunito}.quiet{color:#36709d;background:#f5fbff;border:1px solid #b8d8ef;border-radius:10px;padding:8px 10px;font-size:12px;font-weight:700}.diagram-wrap{background:linear-gradient(#f9fdff,#ecf8ff);border-radius:18px;margin:20px 0;overflow:hidden}.optics-diagram{touch-action:none;width:100%;height:auto}.axis{stroke:#4d7495;stroke-width:2px}.mirror,.device{stroke:#1b669e;stroke-width:7px;stroke-linecap:round}.lens{fill:#bde7fb77;stroke:#4295cd;stroke-width:3px}.focus{fill:#ff9f2d}.object,.image{stroke:#f28420;fill:#f28420;stroke-width:3px}.image.real{stroke:#2d86bf;fill:#2d86bf}.image.virtual{stroke:#2c9a83;fill:#2c9a83;stroke-dasharray:5 4}.rays{stroke:#e28337;stroke-width:1.6px;opacity:.7}.screen{stroke:#849dae;stroke-width:4px}.screen.active{stroke:#1ca56f;stroke-width:6px}.result-card{color:#166b62;background:#eaf7f3;border-radius:13px;gap:5px;padding:14px;display:grid}.result-card b{font:700 16px Nunito}.result-card span{font-size:12px}.result-card em{color:#147a57;font-size:12px;font-style:normal;font-weight:700}.controls{grid-template-columns:repeat(4,1fr) auto;gap:12px;margin-top:19px;display:grid}.controls label{color:#38677e;gap:6px;font-size:12px;font-weight:700;display:grid}.controls select{color:#285b84;background:#fff;border:1px solid #bcd9ea;border-radius:9px;padding:7px;font-size:12px}.controls input{accent-color:#f19327;width:100%}.toggle{color:#447493;background:#fff;border:1px solid #bcd9ea;border-radius:9px;align-self:end;padding:8px;font-size:12px;font-weight:700}.toggle.on{color:#167c70;background:#e0f3ec;border-color:#a6dccc}.poe>div{flex-wrap:wrap;gap:9px;margin:18px 0;display:flex}.choice{color:#38677e;background:#f8fcff;border:1px solid #c8deec;border-radius:10px;padding:10px;font-size:13px}.choice.chosen{color:#16776d;background:#e2f5ed;border-color:#79cab4}.feedback{color:#216a62;background:#ecf8f3;border-radius:12px;align-items:start;gap:8px;padding:12px;font-size:13px;line-height:1.7;display:flex}.feedback svg{min-width:18px}.formula-grid{grid-template-columns:1fr 1fr .8fr;gap:14px;margin:19px 0;display:grid}.formula-grid label{color:#356b8e;background:#f5fbff;border-radius:13px;padding:13px;font-size:13px;font-weight:700}.formula-grid input{accent-color:#f19327;width:100%;margin-top:12px}.answer{color:#166e65;background:#e8f6ee;border-radius:13px;align-content:center;padding:13px;display:grid}.answer b{font:800 21px Nunito}.answer span{font-size:12px}.formula ol{color:#3d708e;background:#f8fcff;border-radius:12px;padding:14px 30px;font-family:Nunito;line-height:2}.learn-card{background:#fffdf5}.learn-card p{color:#597889;font-size:14px;line-height:1.85}.learn-card b{color:#166d86}@media (width<=800px){.path{grid-template-columns:1fr;gap:28px;padding:60px 22px}.controls{grid-template-columns:1fr 1fr}.controls .toggle{align-self:auto}.lesson-hero{background-position:42%;min-height:300px}.formula-grid{grid-template-columns:1fr 1fr}.answer{grid-column:1/-1}}@media (width<=620px){header{height:64px}.menu{display:block}nav{background:#fffffff7;border-bottom:1px solid #c6def0;flex-wrap:wrap;padding:12px 20px;display:none;position:absolute;top:64px;left:0;right:0;box-shadow:0 12px 22px #1c58841c}nav.open{display:flex}nav button{font-size:12px}.home-hero{background-position:47%;min-height:560px}.home-copy{padding:315px 22px 35px}.home-copy h1{font-size:61px}.home-copy>p:not(.kicker){margin:13px 0;font-size:13px;line-height:1.65}.lesson-grid{grid-template-columns:1fr}.lesson-hero{background-position:50%;min-height:240px;padding:100px 22px 24px}.lesson-hero h1{font-size:39px}.lesson-hero p:last-child{font-size:14px}.lesson-tabs{justify-content:start}.lesson-content{margin:23px auto}.simulator,.poe,.formula,.learn-card{border-radius:18px;padding:18px}.sim-header h2{font-size:25px}.optics-diagram{min-width:620px}.diagram-wrap{overflow-x:auto}.controls,.formula-grid{grid-template-columns:1fr}.answer{grid-column:auto}.lesson-tabs span{padding:8px 10px;font-size:11px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.lesson-hero div{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffdf5d9;border-radius:22px;max-width:540px;margin-left:42%;padding:22px 28px}@media (width<=800px){.lesson-hero div{margin-left:28%}}@media (width<=620px){.lesson-hero div{background:#fffdf5df;margin-left:0;padding:12px 16px}.lesson-content,.simulator{min-width:0}.diagram-wrap{width:100%;max-width:100%;overflow-x:auto}.optics-diagram{display:block}}.home-hero-new{background:url(/media/opticslab-home.webp) 50%/cover no-repeat;min-height:min(790px,100vh - 72px);position:relative}.home-overlay{width:min(600px,48vw);padding:clamp(130px,15vw,235px) 0 0 8vw}.home-overlay h1{color:#133f76;text-shadow:0 3px #fff;margin:0;font:900 clamp(58px,8vw,112px)/.9 Nunito}.home-overlay h1 span,.brand span{color:#2a85be}.home-overlay>p:not(.kicker){color:#275d7b;margin:24px 0;font-size:clamp(15px,1.5vw,20px);line-height:1.75}.knowledge-path{background:#fffdf5;grid-template-columns:.65fr 1.35fr;gap:60px;padding:84px max(6vw,24px);display:grid}.path-intro h2{color:#133f76;margin:0;font:900 clamp(34px,4vw,54px)/1.12 Nunito}.path-intro>p:not(.kicker),.lesson-lead p{color:#5e8094;line-height:1.8}.knowledge-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.knowledge-card{text-align:left;color:#153f72;background:linear-gradient(135deg,#fff,#f7fcff);border:1px solid #c9e0f0;border-radius:20px;align-items:center;gap:13px;min-height:108px;padding:16px;transition:transform .2s,border-color .2s;display:flex;box-shadow:0 9px 22px #1e639012}.knowledge-card:hover{border-color:#66b9e6;transform:translateY(-3px)}.knowledge-card>span{color:#168071;background:#daf2e9;border-radius:50%;place-items:center;min-width:39px;height:39px;font:800 14px Nunito;display:grid}.knowledge-card div{flex:1}.knowledge-card b{font-size:15px;display:block}.knowledge-card small{color:#66869a;margin-top:4px;font-size:11px;display:block}.knowledge-card svg{color:#5fa6cb}.lesson-lead{gap:8px;display:grid}.back-link{color:#2b78a9;background:0 0;border:0;justify-self:start;padding:0;font-weight:800}.picker{color:#376b91;gap:8px;width:min(440px,100%);font-size:14px;font-weight:800;display:grid}.picker details{position:relative}.picker summary{outline-offset:-10px;color:#20639a;cursor:pointer;background:#f9fdff;border:5px solid #72c3e9;border-radius:999px;outline:2px solid #e6f8ff;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;font:800 19px Nunito;list-style:none;display:flex}.picker summary::-webkit-details-marker{display:none}.picker summary svg{width:22px}.picker details[open] summary svg{transform:rotate(180deg)}.picker-options{z-index:4;background:#fff;border:1px solid #a9dbf1;border-radius:17px;padding:8px;display:grid;position:absolute;top:calc(100% + 7px);left:0;right:0;box-shadow:0 14px 28px #1f5f8b26}.picker-options button{text-align:left;color:#356c91;background:#fff;border:0;border-radius:10px;padding:10px 14px;font-weight:700}.picker-options button:hover,.picker-options .selected{color:#157768;background:#e5f6ee}.section-title{gap:5px;display:grid}.section-title h2{margin:0}.choice-row{flex-wrap:wrap;gap:9px;margin:18px 0;display:flex}.explain-card{box-shadow:var(--shadow);background:#fffdf6;border:1px solid #cbe4ed;border-radius:20px;align-items:flex-start;gap:18px;padding:25px;display:flex}.explain-card>svg{color:#e6952e;min-width:28px}.explain-card h2{color:#173f73;margin:0;font:800 25px Nunito}.explain-card p:not(.kicker){color:#5d7d91;font-size:14px;line-height:1.75}.learning-steps span{text-align:center;min-width:78px}.learning-steps span:not(:last-child):after{content:"·";color:#a6bfce;margin-left:13px}@media (width<=850px){.home-overlay{width:58vw}.knowledge-path{grid-template-columns:1fr;gap:30px}.lesson-hero div{margin-left:33%}}@media (width<=620px){.home-hero-new{background-position:58%;min-height:590px}.home-overlay{width:auto;padding:330px 23px 32px}.home-overlay h1{font-size:62px}.home-overlay>p:not(.kicker){margin:12px 0;font-size:14px}.knowledge-path{padding:55px 20px}.knowledge-grid{grid-template-columns:1fr}.knowledge-card{min-height:85px}.picker summary{padding:14px 20px;font-size:17px}.lesson-hero div{margin-left:0}.learning-steps{justify-content:start}.learning-steps span{min-width:auto}.learning-steps span:not(:last-child):after{margin-left:8px}.explain-card{padding:18px}}.case-buttons{gap:9px;display:grid}.case-buttons p{color:#376b91;margin:0;font-size:14px;font-weight:800}.case-buttons>div{flex-wrap:wrap;gap:9px;display:flex}.case-buttons button{color:#356c91;cursor:pointer;background:#fafdff;border:2px solid #b9e0f2;border-radius:999px;padding:10px 16px;font:800 14px Nunito;transition:transform .18s,background .18s,border-color .18s}.case-buttons button:hover{border-color:#64bce7;transform:translateY(-2px)}.case-buttons button.active{color:#fff;background:#187ec0;border-color:#187ec0;box-shadow:0 7px 15px #187ec033}.device-chip{color:#147365;white-space:nowrap;background:#e8f7f0;border:1px solid #a9dfcd;border-radius:999px;align-self:end;padding:10px 15px;font:800 14px Nunito}.plane-mirror,.curved-mirror{fill:none;stroke:#27689b;stroke-width:5px;stroke-linecap:round}.mirror-hatch{fill:none;stroke:#8db7d1;stroke-width:2.5px;stroke-linecap:round}.lens-fill{fill:#a9dcfa99;stroke:#267fc0;stroke-width:3px}.optics-diagram .focus{fill:#ff9d27}.optics-diagram text{fill:#1d568b;font:700 13px Nunito}.virtual-rays line:nth-child(2n){stroke-dasharray:6 5}@media (width<=620px){.case-buttons button{padding:9px 13px;font-size:13px}.device-chip{align-self:start}}.category-card{min-height:118px}.practice-link{color:#276f9e;background:#f1f9ff;border:1px dashed #9bcde6;border-radius:16px;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;padding:14px;font-weight:800;display:flex}.practice-link svg{width:17px}.category-page{background:#fffdf5;min-height:calc(100vh - 72px)}.category-hero{text-align:center;background:linear-gradient(120deg,#dff4ff,#fff8dc);padding:clamp(68px,10vw,130px) max(8vw,24px) 75px}.category-hero h1{color:#123e75;margin:0;font:900 clamp(42px,6vw,72px)/1.1 Nunito}.category-hero p:last-child{color:#197d82;font-size:18px;font-weight:800}.category-content{width:min(1000px,92vw);margin:0 auto;padding:52px 0 85px}.category-intro{text-align:center;color:#587f95;max-width:700px;margin:0 auto 28px;line-height:1.8}.category-grid{gap:15px;display:grid}.topic-card{text-align:left;color:#173f73;background:#fff;border:1px solid #c7e2ef;border-radius:23px;align-items:center;gap:22px;padding:24px;transition:all .2s;display:flex;box-shadow:0 11px 25px #1b639112}.topic-card:hover{border-color:#67b6df;transform:translateY(-3px)}.topic-card>span{color:#157d70;background:#ddf2ea;border-radius:50%;place-items:center;min-width:52px;height:52px;font:900 16px Nunito;display:grid}.topic-card>div{flex:1}.topic-card h2{margin:0;font:900 25px Nunito}.topic-card p{color:#4b8093;margin:5px 0;font-weight:700}.topic-card small{color:#198178;font-weight:800}.topic-card>svg{color:#58a8cb}.ray-guide{background:linear-gradient(135deg,#effcf7,#f8fdff);border:1px solid #bde4dd;border-radius:22px;grid-template-columns:.9fr 1.1fr;gap:25px;padding:25px 28px;display:grid}.ray-guide h2{color:#145e76;margin:0;font:900 27px/1.25 Nunito}.ray-guide p:not(.kicker){color:#4f7d89;margin:8px 0 0;font-size:14px;line-height:1.65}.ray-guide ol{color:#235e7c;gap:9px;margin:0;padding-left:25px;font-weight:700;line-height:1.55;display:grid}.ray-guide li::marker{color:#ec942d;font:900 17px Nunito}@media (width<=720px){.category-hero{padding:70px 22px 55px}.category-content{padding:35px 0 60px}.topic-card{align-items:flex-start;gap:14px;padding:18px}.topic-card h2{font-size:21px}.topic-card>span{min-width:40px;height:40px}.ray-guide{grid-template-columns:1fr;padding:20px}.ray-guide h2{font-size:24px}}@media (width<=620px){.practice-link{grid-column:auto}.category-card{min-height:90px}}.site,.site *{font-family:Mali,sans-serif!important}.course-jump{background:linear-gradient(135deg,#f5fcff,#fbfffd);border:1px solid #bfe1ef;border-radius:22px;gap:16px;padding:20px;display:grid;box-shadow:0 10px 24px #1a6a9210}.course-jump-title{color:#167b83;align-items:center;gap:12px;display:flex}.course-jump-title>svg{color:#168071;background:#dff5ee;border-radius:10px;width:30px;height:30px;padding:6px}.course-jump-title p{color:#1c6087;margin:0;font-size:18px;font-weight:900}.course-jump-title span{color:#5c8294;font-size:13px;font-weight:700}.course-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.course-groups button{color:#3b7092;text-align:left;background:#fff;border:1px solid #b7dced;border-radius:15px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;min-height:64px;padding:10px 12px;font-weight:900;transition:all .18s;display:grid}.course-groups button:hover{border-color:#4ba7d3;transform:translateY(-2px)}.course-groups button b{color:#2077ad;background:#e7f6ff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;display:grid}.course-groups button span{font-size:14px;line-height:1.25}.course-groups button svg{width:16px}.course-groups button.active{color:#fff;background:#1a81bf;border-color:#1a81bf}.course-groups button.active b{color:#176fac;background:#fff}.topic-jump{gap:8px;display:grid}.topic-jump>p{color:#39708f;margin:0;font-size:14px;font-weight:900}.topic-jump>div{flex-wrap:wrap;gap:8px;display:flex}.topic-jump button{color:#3b7092;background:#fff;border:1px solid #b7dced;border-radius:999px;align-items:center;gap:6px;padding:10px 13px;font-size:14px;font-weight:900;display:inline-flex}.topic-jump button svg{width:15px;height:15px}.topic-jump button.active{color:#14796d;background:#daf2e8;border-color:#93d5c1}.activity-note{color:#176f65;background:#edf8f4;border:1px solid #c8e8dc;border-radius:18px;gap:5px;padding:17px 20px;display:grid}.activity-note b{font-size:21px;font-weight:900}.activity-note span{font-size:16px;line-height:1.65}.activity-note small{color:#447f77;font-size:14px;font-weight:800}.rays .extension{stroke-dasharray:7 6;opacity:.7}.mission-board{background:linear-gradient(135deg,#f8fdff 0%,#fffdf4 62%,#f3fcf7 100%);border:1px solid #bce1ee;border-radius:25px;gap:16px;padding:clamp(20px,3vw,30px);display:grid;box-shadow:0 14px 32px #1a6a9214}.mission-heading{grid-template-columns:auto 1fr auto;align-items:center;gap:13px;display:grid}.mission-icon{color:#e89227;background:#fff0d4;border-radius:15px;place-items:center;width:48px;height:48px;display:grid}.mission-icon svg{width:27px;height:27px}.mission-heading .kicker{margin:0 0 3px}.mission-heading h2{color:#164c84;margin:0;font-size:clamp(24px,3vw,34px);font-weight:900}.mission-status{color:#4e748b;white-space:nowrap;background:#eaf4fa;border-radius:999px;align-items:center;gap:7px;padding:9px 12px;font-size:14px;font-weight:900;display:inline-flex}.mission-status svg{width:18px}.mission-status.passed{color:#137965;background:#dbf4e9}.mission-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.mission-tabs button{color:#4b7791;background:#fff;border:1px solid #c8e1ed;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:72px;padding:8px;font-weight:900;line-height:1.15;display:flex}.mission-tabs button:hover{background:#f4fbff;border-color:#5db7df}.mission-tabs button.active{color:#fff;background:#1c83c2;border-color:#1c83c2;box-shadow:0 7px 16px #1c83c233}.mission-tabs button span,.mission-tabs button svg{color:#2078b2;background:#e4f4fb;border-radius:50%;place-items:center;width:23px;height:23px;font-size:12px;display:grid}.mission-tabs button.active span,.mission-tabs button.active svg{color:#1b79b7;background:#fff}.mission-tabs b{text-align:center;font-size:13px}.mission-card{background:#fff;border:1px solid #d6eaf2;border-radius:19px;grid-template-columns:1.25fr .95fr;gap:16px;padding:20px;display:grid}.mission-card.complete{background:linear-gradient(135deg,#f5fff9,#fff);border-color:#9adac5}.mission-copy>p{color:#1b7e83;align-items:center;gap:7px;margin:0 0 6px;font-size:14px;font-weight:900;display:flex}.mission-copy>p svg{color:#e99b2d;width:19px}.mission-copy h3{color:#164b80;margin:0;font-size:21px;font-weight:900;line-height:1.45}.mission-copy strong{color:#197b70;margin-top:9px;font-size:16px;line-height:1.5;display:block}.mission-values{align-content:center;gap:9px;display:grid}.mission-values span{background:#f0f9fc;border-left:4px solid #7cc7e7;border-radius:12px;gap:2px;padding:10px 12px;display:grid}.mission-values small{color:#5e8292;font-size:12px;font-weight:800}.mission-values b{color:#195a85;font-size:17px}.mission-feedback{color:#47738b;background:#eff8fc;border-radius:14px;align-items:center;gap:8px;margin:0;padding:13px 15px;font-size:15px;font-weight:800;line-height:1.45;display:flex}.mission-feedback svg{color:#397fa5;width:21px;min-width:21px}.mission-feedback.success{color:#147865;background:#e4f8ed}.mission-feedback.success svg{color:#119469}.quiet{align-items:center;gap:6px;padding:9px 12px;font-size:14px;display:inline-flex}.quiet svg{width:16px}.controls{background:#f7fcff;border:1px solid #d4e8f2;border-radius:18px;grid-template-columns:minmax(155px,.8fr) repeat(3,minmax(150px,1fr)) auto;gap:14px;margin-top:18px;padding:16px}.controls label{gap:4px;padding:0 6px;font-size:14px}.controls label span{color:#597d91;font-size:12px;font-weight:800}.controls label b{color:#1b5f87;font-size:18px;font-weight:900}.controls input{height:22px}.device-chip{align-self:center;align-items:center;gap:7px;padding:11px 14px;font-size:16px;display:flex}.device-chip svg{width:18px}.toggle{justify-content:center;align-self:center;align-items:center;gap:7px;min-height:46px;padding:10px 13px;font-size:14px;display:inline-flex}.toggle svg{width:18px}@media (width<=820px){.course-groups{grid-template-columns:1fr}.course-groups button{min-height:52px}.mission-card{grid-template-columns:1fr}.controls{grid-template-columns:1fr 1fr}.device-chip,.toggle{align-self:stretch}}@media (width<=620px){.course-jump{border-radius:19px;padding:17px}.course-jump-title p{font-size:17px}.course-groups button span{font-size:15px}.topic-jump button{font-size:14px}.activity-note{padding:16px}.activity-note b{font-size:20px}.activity-note span{font-size:15px}.mission-board{border-radius:20px;gap:13px;padding:18px}.mission-heading{grid-template-columns:auto 1fr;gap:10px}.mission-icon{width:42px;height:42px}.mission-heading h2{font-size:25px}.mission-status{grid-column:1/-1;justify-self:start;font-size:14px}.mission-tabs{padding-bottom:3px;display:flex;overflow-x:auto}.mission-tabs button{flex:0 0 82px;min-width:82px;min-height:70px}.mission-tabs b{font-size:12px}.mission-card{padding:16px}.mission-copy h3{font-size:19px}.mission-copy strong{font-size:15px}.mission-values{grid-template-columns:1fr 1fr}.mission-values span:last-child{grid-column:1/-1}.mission-feedback{font-size:14px}.controls{grid-template-columns:1fr;gap:12px;padding:14px}.device-chip{align-self:start}.controls label{padding:4px 2px}.controls label b{font-size:20px}.toggle{align-self:stretch;font-size:15px}.sim-header{gap:10px}.sim-header h2{font-size:28px}.quiet{font-size:13px}}.rays .ray{stroke-width:2px;opacity:.95}.rays .ray-one{stroke:#ee7d18}.rays .ray-two{stroke:#2183c8}.rays .ray-three{stroke:#188a76}.rays .ray.extension{stroke-dasharray:8 6;opacity:.86}.ray-arrow.ray-one{fill:#ee7d18}.ray-arrow.ray-two{fill:#2183c8}.ray-arrow.ray-three{fill:#188a76}.optics-diagram .image-label{fill:#177b9d;font:900 13px Nunito}.home-screen{height:calc(100dvh - 76px);overflow:hidden}.home-screen .home-hero-new{height:100%;min-height:0}.word-problems{background:#fffdf8;border:1px solid #b7daf5;border-radius:30px;margin:30px 0 72px;padding:30px;box-shadow:0 18px 34px #2c5e8914}.word-problem-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.word-problem-heading h2{color:#17477f;margin:2px 0 4px;font-size:38px}.word-problem-heading p:not(.kicker){color:#46718e;margin:0;font-size:18px}.word-problem-heading>span{color:#157c6d;background:#e8f7f1;border-radius:999px;flex:none;padding:8px 14px;font-weight:800}.word-problem-grid{gap:16px;display:grid}.word-problem{background:#fff;border:1px solid #d6e8f7;border-radius:22px;grid-template-columns:48px 1fr;gap:16px;padding:20px;transition:all .2s;display:grid}.word-problem.correct{background:#f2fcf7;border-color:#87d8bd}.word-problem.wrong{background:#fff9f3;border-color:#ffbf94}.word-problem-number{color:#118474;background:#e1f3ef;border-radius:50%;place-items:center;width:44px;height:44px;font-size:21px;font-weight:900;display:grid}.word-problem-body>p{color:#17477f;margin:1px 0 7px;font-size:21px;font-weight:800;line-height:1.55}.word-problem-body>small{color:#5c7f96;margin-bottom:14px;font-size:15px;display:block}.problem-answer-row{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.problem-answer-row label{color:#255a7a;background:#f8fcff;border:1px solid #b8daf0;border-radius:14px;grid-template-columns:minmax(130px,1fr) auto;align-items:center;gap:8px;padding:8px 10px 8px 14px;font-weight:800;display:grid}.problem-answer-row input{color:#17477f;text-align:center;background:0 0;border:0;border-bottom:2px solid #80b9df;outline:0;width:108px;font:800 20px Mali,system-ui,sans-serif}.problem-answer-row input:focus{border-bottom-color:#ed8a22}.problem-answer-row em{color:#4b7894;font-style:normal}.kind-choice{gap:7px;display:flex}.kind-choice button,.answer-check{color:#2d6d9a;cursor:pointer;background:#fff;border:1px solid #acd7ee;border-radius:13px;min-height:44px;padding:8px 13px;font:800 16px Mali,system-ui,sans-serif}.kind-choice button.active{color:#fff;background:#2183c8;border-color:#2183c8}.answer-check{color:#117c6a;background:#e9f9f2;border-color:#8ed9bf}.answer-check:hover{background:#d7f4e7}.problem-feedback{align-items:center;gap:7px;margin:14px 0 0;font-size:16px;font-weight:800;display:flex}.problem-feedback.correct{color:#0d8a66}.problem-feedback.wrong{color:#c16428}@media (width>=821px){.controls{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=700px){.home-screen{height:auto;min-height:calc(100dvh - 64px);overflow:hidden}.home-screen .home-hero-new{background-position:60%;height:auto;min-height:calc(100dvh - 64px)}.home-screen .home-overlay{width:100%;min-height:calc(100dvh - 64px);padding:0 22px max(30px,env(safe-area-inset-bottom));background:linear-gradient(#0000 32%,#fffdf500 43%,#fffdf5d9 64%,#fffdf5f5 100%);flex-direction:column;justify-content:flex-end;display:flex}.home-screen .home-overlay h1{font-size:clamp(54px,16vw,68px);line-height:.92}.home-screen .home-overlay>p:not(.kicker){max-width:300px;margin:12px 0 17px;font-size:15px;line-height:1.6}.home-screen .home-overlay .kicker{margin-bottom:8px;font-size:11px}.lesson-page{padding-bottom:45px}.lesson-content{gap:18px;width:min(100% - 28px,620px);margin:18px auto}.lesson-hero{min-height:210px;padding:72px 14px 16px}.lesson-hero div{border-radius:16px;width:100%;padding:12px 15px}.lesson-hero h1{font-size:34px}.lesson-hero p:last-child{margin:5px 0 0;font-size:13px}.simulator{border-radius:20px;padding:16px}.sim-header{align-items:center}.sim-header h2{font-size:26px}.sim-header .kicker{margin-bottom:5px;font-size:10px}.quiet{flex:none;min-height:42px;padding:8px 10px}.diagram-wrap{isolation:isolate;border-radius:16px;margin:14px -2px 12px;overflow:hidden}.optics-diagram{touch-action:pan-y;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block;min-width:0!important}.result-card{padding:12px 13px}.result-card b{font-size:15px}.result-card span{font-size:12px;line-height:1.5}.controls{border-radius:14px;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px;padding:10px}.toggle{white-space:normal;min-height:42px;padding:8px 10px;font-size:13px}.controls label{gap:2px;padding:5px 4px}.controls label span{font-size:11px}.controls label b{font-size:17px}.controls input{height:18px}.word-problems{border-radius:23px;margin:22px 0 45px;padding:20px 15px}.word-problem-heading{gap:10px}.word-problem-heading h2{font-size:30px}.word-problem-heading p:not(.kicker){font-size:16px}.word-problem-heading>span{padding:7px 10px;font-size:14px}.word-problem{border-radius:17px;grid-template-columns:36px 1fr;gap:10px;padding:15px}.word-problem-number{width:36px;height:36px;font-size:17px}.word-problem-body>p{font-size:18px}.word-problem-body>small{font-size:14px}.problem-answer-row{align-items:stretch;gap:8px}.problem-answer-row label{grid-template-columns:1fr 94px auto;width:100%}.problem-answer-row input{width:94px}.kind-choice{width:100%}.kind-choice button,.answer-check{flex:1;font-size:15px}.answer-check{min-width:100%}}
