@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-ext-400-normal-DRk46D-x.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-ext-400-normal-Bbz-b3yf.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-normal-BbWidj28.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-ext-700-normal-BoVPHkS0.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-ext-700-normal-CKkU2Dpt.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-ext-400-italic-3fJ3SmOv.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-ext-400-italic-B-Yabllp.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-italic-D-qjh7ci.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-italic-OoEIrRJc.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/bricolage-grotesque-vietnamese-600-normal-Ipewt4hn.woff2)format("woff2"),url(/assets/bricolage-grotesque-vietnamese-600-normal-BppAn7jL.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/bricolage-grotesque-latin-ext-600-normal-CN5JKkBm.woff2)format("woff2"),url(/assets/bricolage-grotesque-latin-ext-600-normal-DF26P3Q7.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/bricolage-grotesque-latin-600-normal-nxTgbNFE.woff2)format("woff2"),url(/assets/bricolage-grotesque-latin-600-normal-Bw0J83-2.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/bricolage-grotesque-vietnamese-800-normal-RJtJa6zl.woff2)format("woff2"),url(/assets/bricolage-grotesque-vietnamese-800-normal-DJ4hCX8l.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/bricolage-grotesque-latin-ext-800-normal-BimIDUhy.woff2)format("woff2"),url(/assets/bricolage-grotesque-latin-ext-800-normal-CkoBqIJM.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/bricolage-grotesque-latin-800-normal-J50vIsBe.woff2)format("woff2"),url(/assets/bricolage-grotesque-latin-800-normal-Br4b-5gk.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-cyrillic-ext-400-normal-klluUuQU.woff2)format("woff2"),url(/assets/stix-two-text-cyrillic-ext-400-normal-DTt0rUNK.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-cyrillic-400-normal-BeBP8F9c.woff2)format("woff2"),url(/assets/stix-two-text-cyrillic-400-normal-BfV63fuA.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-greek-400-normal-DURI2LrF.woff2)format("woff2"),url(/assets/stix-two-text-greek-400-normal-B05reu_N.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-vietnamese-400-normal-D0hKSraj.woff2)format("woff2"),url(/assets/stix-two-text-vietnamese-400-normal-CWKP4bwO.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-latin-ext-400-normal-BsQBoqgu.woff2)format("woff2"),url(/assets/stix-two-text-latin-ext-400-normal-DJAp0_Pt.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-latin-400-normal-Dm29J5Fl.woff2)format("woff2"),url(/assets/stix-two-text-latin-400-normal-rLRKR-Xb.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/stix-two-text-cyrillic-ext-600-normal-eGI7FOHf.woff2)format("woff2"),url(/assets/stix-two-text-cyrillic-ext-600-normal-B7DKTEVf.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/stix-two-text-cyrillic-600-normal-kcc242MQ.woff2)format("woff2"),url(/assets/stix-two-text-cyrillic-600-normal-zdEMPwZf.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/stix-two-text-greek-600-normal-B4g_sZ5N.woff2)format("woff2"),url(/assets/stix-two-text-greek-600-normal-Cd_Bfzy_.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/stix-two-text-vietnamese-600-normal-DPFVgXT7.woff2)format("woff2"),url(/assets/stix-two-text-vietnamese-600-normal-BR32KHbT.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/stix-two-text-latin-ext-600-normal-BIZc76hK.woff2)format("woff2"),url(/assets/stix-two-text-latin-ext-600-normal-cArr9DC0.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/stix-two-text-latin-600-normal-B8BS22os.woff2)format("woff2"),url(/assets/stix-two-text-latin-600-normal-CdpSAr85.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:STIX Two Text;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-cyrillic-ext-400-italic-CT9p3Bxe.woff2)format("woff2"),url(/assets/stix-two-text-cyrillic-ext-400-italic-BHtc8l_2.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:STIX Two Text;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-cyrillic-400-italic-LtDj4Puq.woff2)format("woff2"),url(/assets/stix-two-text-cyrillic-400-italic-DOm7gkEm.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:STIX Two Text;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-greek-400-italic-BXJkY8Z_.woff2)format("woff2"),url(/assets/stix-two-text-greek-400-italic-Cpok44kl.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:STIX Two Text;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-vietnamese-400-italic-CHjUy4Zj.woff2)format("woff2"),url(/assets/stix-two-text-vietnamese-400-italic-f_Q_YWy8.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:STIX Two Text;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-latin-ext-400-italic-DuoQFNx5.woff2)format("woff2"),url(/assets/stix-two-text-latin-ext-400-italic-DY6SROO3.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:STIX Two Text;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-latin-400-italic-BLib6pG4.woff2)format("woff2"),url(/assets/stix-two-text-latin-400-italic-CPbPgQcn.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f6f8fc;--grid:#e2e8f3;--card:#fff;--ink:#172033;--muted:#5a6579;--line:#d3dae7;--pen:#2343b5;--pen-soft:#e6ebfb;--hl:#ffe15c;--hl-ink:#172033;--mg:#b0237a;--mg-soft:#fbe6f1;--ok:#1d8a52;--ok-soft:#e3f5ea;--bad:#c43a3a;--bad-soft:#fbe9e9;--display:"Bricolage Grotesque", "Avenir Next", "Segoe UI", sans-serif;--body:"Atkinson Hyperlegible", "Segoe UI", Verdana, sans-serif;--math:"STIX Two Text", "Cambria Math", Cambria, Georgia, serif}.gc1{--gc:#f4e590;--gc-ink:var(--ink)}.gc2{--gc:#f48715;--gc-ink:var(--ink)}.gc3{--gc:#8a5400;--gc-ink:#fff}.gc4{--gc:#b1ccf7;--gc-ink:var(--ink)}.gc5{--gc:#5a9ff0;--gc-ink:var(--ink)}.gc6{--gc:#0a56b8;--gc-ink:#fff}.gc7{--gc:#f4bed4;--gc-ink:var(--ink)}.gc8{--gc:#c973a6;--gc-ink:var(--ink)}.gc9{--gc:#8a1258;--gc-ink:#fff}*{box-sizing:border-box}body{background-color:var(--paper);color:var(--ink);font-family:var(--body);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));background-size:26px 26px;padding-block:0 64px;font-size:17px;line-height:1.55}.wrap{max-width:1840px;margin:0 auto}@media (width>=1200px){.wrap{padding-inline:16px}}a{color:var(--pen)}button,input{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--pen);outline-offset:2px;border-radius:6px}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0;line-height:1.1}.mark{background:linear-gradient(transparent 58%, var(--hl) 58%, var(--hl) 92%, transparent 92%);padding:0 .08em}.m{font-family:var(--math)}.fr{vertical-align:middle;text-align:center;flex-direction:column;margin:0 .12em;font-size:.82em;line-height:1.15;display:inline-flex}.fr i{padding:0 .18em;font-style:normal}.fr i:first-child{border-bottom:1.5px solid}sup{font-size:.68em;line-height:0}.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-block:18px;display:flex}.brand{font-family:var(--display);color:var(--ink);align-items:center;gap:10px;font-size:20px;font-weight:800;text-decoration:none;display:flex}.brand b{background:var(--ink);width:32px;height:32px;color:var(--paper);font-family:var(--math);border-radius:8px;place-items:center;font-size:18px;display:inline-grid}.score{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.hero{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:end;gap:32px;padding-block:28px 22px;display:grid}.hero h1{letter-spacing:-.02em;font-size:clamp(40px,7vw,76px);font-weight:800}.hero p{max-width:56ch;color:var(--muted);margin:16px 0 0}.legend{background:var(--card);border:1.5px solid var(--line);border-radius:14px;gap:10px;padding:16px 18px;display:grid}.legend-h{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:15px;font-family:var(--body);font-weight:700}.lvrow{align-items:center;gap:10px;font-size:15px;display:flex}.lvi{fill:currentColor;flex:none;width:16px;height:16px}.lvi .off{opacity:.22}.bar{background:var(--line);border-radius:99px;height:8px;overflow:hidden}.bar span{background:var(--pen);border-radius:99px;height:100%;transition:width .4s;display:block}.filters{flex-wrap:wrap;gap:8px;margin:8px 0 6px;display:flex}.chip{border:1.5px solid var(--line);background:var(--card);cursor:pointer;border-radius:99px;padding:7px 16px;font-size:15px;font-weight:700}.chip[aria-pressed=true]{background:var(--pen-soft);color:var(--pen);border-color:var(--pen)}.chip[class*=gc]{border-color:var(--gc);border-width:2px}.chip[class*=gc][aria-pressed=true]{background:var(--gc);color:var(--gc-ink);border-color:var(--ink)}.fgroup{border-left:1.5px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px;padding-left:10px;display:flex}.fgroup-h{color:var(--muted);margin-right:2px;font-size:13px;font-weight:700}.gsel{align-items:center;gap:8px;margin-left:auto;font-size:15px;font-weight:700;display:inline-flex}.gsel select{font:inherit;border:1.5px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;padding:6px 10px;font-weight:400}.gsel option.top{font-weight:800}.gnote{background:var(--pen-soft);border-left:4px solid var(--pen);border-radius:8px;max-width:80ch;margin:-10px 0 20px;padding:10px 14px}.gnote p{margin:0}.gnote p+p{margin-top:6px}.roles{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.roles-h{color:var(--muted);font-weight:700}.gradenote{color:var(--muted);max-width:70ch;min-height:1.5em;margin:6px 0 0}.area{margin-top:34px}.areahead{border-bottom:2px solid var(--ink);flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:14px;padding-bottom:8px;display:flex}.areahead h2{font-size:26px}.areahead span{color:var(--muted);font-size:15px}.grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.card{text-align:left;background:var(--card);border:1.5px solid var(--line);cursor:pointer;color:var(--ink);border-radius:14px;flex-direction:column;gap:8px;padding:16px;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.card:hover{border-color:var(--pen);transform:translateY(-2px)}.card h3{font-size:19px}.card p{color:var(--muted);flex:1;margin:0;font-size:15px;line-height:1.4}.cardfoot{justify-content:space-between;align-items:center;gap:8px;display:flex}.gr{letter-spacing:.06em;text-transform:uppercase;color:var(--pen);background:var(--pen-soft);border-radius:6px;padding:3px 8px;font-size:12px;font-weight:700}.gr[class*=gc]{color:var(--gc-ink);background:var(--gc);white-space:nowrap}.part-h .gr{vertical-align:middle;margin-left:6px}.dots{gap:5px;display:flex}.lvd{color:var(--pen);display:flex}.lvd.off{color:var(--muted);opacity:.45}.lvd .lvi{width:14px;height:14px}.crumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;padding-block:4px 10px;font-size:15px;display:flex}.crumbs a{font-weight:700;text-decoration:none}.thead{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:22px;display:flex}.thead h1{letter-spacing:-.015em;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;font-size:clamp(34px,5.5vw,56px);font-weight:800}.layout{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start;gap:26px;display:grid}.layout.parent{grid-template-columns:minmax(0,1fr)}.layout.parent .practice{display:none}.learn{gap:22px;min-width:0;display:grid;container-type:inline-size}.sec{background:var(--card);border:1.5px solid var(--line);border-radius:16px;min-width:0;padding:22px 24px}.sec-h{margin-bottom:12px;font-size:21px}.theory .sec-h{align-items:center;gap:12px;display:flex}.theory{border-top:5px solid var(--hl)}.guide{--gc:var(--ok);--gc-soft:var(--ok-soft);border-left:5px solid var(--gc);padding:0}.guide.student{--gc:var(--pen);--gc-soft:var(--pen-soft)}.guide.parent{border-left-width:1.5px;border-left-color:var(--line);border-top:5px solid var(--gc)}.guide summary{cursor:pointer;border-radius:14px;padding:18px 68px 18px 24px;list-style:none;position:relative}.guide summary::-webkit-details-marker{display:none}.guide summary:focus-visible{outline:3px solid var(--pen);outline-offset:2px}.guide-h{font-family:var(--head);font-size:19px;font-weight:800;display:block}.guide-sub{color:var(--muted);margin-top:2px;font-size:15px;display:block}.guide-body{border-top:1.5px dashed var(--line);padding:0 24px 20px}.guide-body h3{margin:18px 0 6px;font-size:16px}.guide-body p,.guide-body li{font-size:16px;line-height:1.55}.guide-body p{margin:0 0 8px}.guide-body ul{margin:0 0 8px;padding-left:22px}.guide-body li{margin-bottom:4px}.fbbox{border-top:5px solid var(--mg);padding:0}.fbbox summary{cursor:pointer;border-radius:14px;padding:18px 68px 18px 62px;list-style:none;position:relative}.fbbox summary::-webkit-details-marker{display:none}.fbbulb{fill:none;width:32px;height:32px;stroke:var(--ink);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;position:absolute;top:15px;left:18px}.fbbulb .glass{fill:var(--hl)}.fbbulb .ray{stroke:#d9a400;stroke-width:2px}.fbbulb .shine{stroke:#fff;stroke-width:1.6px}.guide summary:after,.fbbox summary:after{--tg:var(--ink);content:"";border:2px solid var(--tg);background:linear-gradient(var(--tg), var(--tg)) center / 14px 3px no-repeat, linear-gradient(var(--tg), var(--tg)) center / 3px 14px no-repeat, var(--card);border-radius:50%;width:30px;height:30px;margin-top:-15px;position:absolute;top:50%;right:20px}.guide summary:after{--tg:var(--gc)}.fbbox summary:after{--tg:var(--mg)}.fbbox summary:hover:after{background-color:var(--mg-soft)}.guide summary:hover:after{background-color:var(--gc-soft)}.guide[open] summary:after,.fbbox[open] summary:after{background:linear-gradient(var(--tg), var(--tg)) center / 14px 3px no-repeat, var(--card)}.fbbox summary:focus-visible{outline:3px solid var(--pen);outline-offset:2px}.fbbox-h{font-family:var(--head);font-size:19px;font-weight:800;display:block}.fbbox-sub{color:var(--muted);margin-top:2px;font-size:15px;display:block}.fbbox-form{border-top:1.5px dashed var(--line);flex-direction:column;gap:6px;padding:16px 24px 20px;display:flex}.fbbox-form label{margin-top:6px;font-weight:700}.fbbox-form select,.fbbox-form textarea{font:inherit;color:inherit;background:var(--card);border:2px solid var(--line);box-sizing:border-box;border-radius:10px;width:100%;max-width:100%;padding:10px 12px}.fbbox-form textarea{resize:vertical;min-height:110px;line-height:1.5}.fbbox-form select:focus-visible,.fbbox-form textarea:focus-visible{border-color:var(--pen)}.fbbox-note{color:var(--muted);margin:0;font-size:14px}.fbbox-form .btns{margin-top:6px}.fbbox-form .fb{margin-top:4px}.parts{counter-reset:part;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:14px;margin:22px 0 0;padding:0;list-style:none;display:grid}.part{counter-increment:part;border:1.5px solid var(--line);background:var(--paper);border-radius:12px;flex-direction:column;min-width:0;padding:14px 16px;display:flex}.part-h{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;align-items:baseline;gap:8px;margin:0 0 8px;font-size:18px;display:flex}.part-h:before{content:counter(part);background:var(--pen);width:24px;height:24px;color:var(--card);border-radius:50%;flex:none;place-items:center;font-size:13px;display:inline-grid}.part p{margin:0 0 8px}.part .dg-part{max-width:360px;margin:6px auto 10px}.part-ex{border-top:1.5px dashed var(--line);font-family:var(--math);margin-top:auto;padding-top:8px;font-size:17px;line-height:1.7}.part-ex>b{font-family:var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;display:block}.learn p{max-width:62ch;margin:0 0 12px}.rule{border-left:4px solid var(--hl);background:var(--paper);font-family:var(--math);border-radius:0 10px 10px 0;margin:16px 0;padding:12px 16px;font-size:19px;line-height:1.7}.gap{width:2em;display:inline-block}.rule .para{height:.6em;display:block}.rule small{font-family:var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:700;display:block}.ex{border-top:1.5px dashed var(--line);margin-top:18px;padding-top:14px}.ex-h{font-size:15px;font-family:var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.ex div{font-family:var(--math);font-size:18px;line-height:1.75;overflow-x:auto}.exs{border-top:5px solid var(--pen)}.exhead{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.exhead h2{margin-bottom:0}.extabs{flex-wrap:wrap;gap:6px;display:flex}.extab{border:1.5px solid var(--line);cursor:pointer;background:0 0;border-radius:99px;align-items:center;gap:5px;padding:4px 12px;font-size:14px;font-weight:700;display:inline-flex}.extab[aria-pressed=true]{background:var(--pen-soft);border-color:var(--pen);color:var(--pen)}.exintro{color:var(--muted);margin:8px 0 12px;font-size:15px}.exlist{gap:12px;margin:0 0 14px;padding:0;list-style:none;display:grid}.exi{border:1.5px solid var(--line);background:var(--paper);border-radius:10px;min-width:0;padding:12px 14px}.exmeta{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.exmeta .lvi{width:13px;height:13px}.exq{font-family:var(--math);overflow-wrap:anywhere;margin:6px 0;font-size:21px}.exq.txt{font-family:var(--body);font-size:17px}.exsol{border-top:1px dashed var(--line);margin-top:8px;padding-top:8px}.exsol b{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px}.exsol .m{font-size:17px;line-height:1.7;overflow-x:auto}.exans{margin-top:6px;font-weight:700}.practice{background:var(--card);border:2px solid var(--ink);top:calc(env(safe-area-inset-top,0px) + 12px);border-radius:16px;min-width:0;padding:20px 22px;position:sticky}.practice h2{margin-bottom:12px;font-size:22px}.levels{grid-template-columns:repeat(4,1fr);display:grid}.levels.n3{grid-template-columns:repeat(3,1fr)}.levels.n2{grid-template-columns:repeat(2,1fr)}.levels.n1{grid-template-columns:minmax(0,12rem)}.levels{gap:6px;margin-bottom:16px}.lv{border:2px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:7px 4px;font-size:14px;font-weight:700;line-height:1.2;display:flex}.lvn{align-items:center;gap:5px;display:inline-flex}.lv small{color:var(--muted);font-size:11px;font-weight:400}.lv[aria-pressed=true]{background:var(--pen-soft);border-color:var(--pen);color:var(--pen)}.lv[aria-pressed=true] small{color:var(--ink);opacity:1}.prog{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:14px;display:flex}.pips{gap:4px;display:flex}.pip{background:var(--line);border-radius:3px;width:18px;height:6px}.pip.on{background:var(--pen)}.q{font-family:var(--math);overflow-wrap:anywhere;min-height:72px;padding:16px 0 8px;font-size:24px;line-height:1.5}.q.txt{font-family:var(--body);font-size:19px}.q .m{font-size:1.1em}.uppst{border-collapse:collapse;font-family:var(--math);margin:6px 0 10px;font-size:20px}.uppst td{text-align:center;min-width:1.05em;padding:0 2px}.uppst .uppst-v td{color:var(--pen);font-size:13px;line-height:1.1}.uppst .uppst-sum td{border-top:2px solid var(--ink)}.uppst s{color:var(--muted)}.code{background:var(--pen-soft);border:1.5px solid var(--line);white-space:pre;overflow-wrap:normal;text-align:left;border-radius:8px;margin:10px 0;padding:10px 14px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:15px;line-height:1.5;overflow-x:auto}.fig{width:100%;max-width:260px;margin:6px 0 4px;display:block}.fig .gl{stroke:var(--grid);stroke-width:1px}.fig .ax{stroke:var(--muted);stroke-width:1.5px}.fig .ln{stroke:var(--pen);stroke-width:3px}.fig .pt{fill:var(--pen)}.fig .tkx,.fig .tky{fill:var(--muted);font-size:10px;font-family:var(--body)}.fig .tkx{text-anchor:middle}.fig .tky{text-anchor:end}.fig .sh{fill:var(--pen-soft);stroke:var(--ink);stroke-width:2px}.fig .ra{fill:none;stroke:var(--ink);stroke-width:1.5px}.fig .lb,.fig .lbe{fill:var(--ink);font-family:var(--math);font-size:17px}.fig .lb{text-anchor:middle}.fig .lbe{text-anchor:end}.answers{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.field{flex-direction:column;flex:140px;gap:4px;min-width:0;display:flex}.field label{color:var(--muted);font-size:13px;font-weight:700}.inwrap{border:2px solid var(--line);background:var(--paper);border-radius:10px;align-items:center;display:flex;overflow:hidden}.inwrap:focus-within{border-color:var(--pen)}.inwrap input{font-size:20px;font-family:var(--math);background:0 0;border:0;outline:none;width:100%;min-width:0;padding:10px 12px}.inwrap span{color:var(--muted);white-space:nowrap;padding:0 12px;font-size:15px}.btns{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.btn{border:2px solid var(--pen);background:var(--pen);color:#fff;cursor:pointer;border-radius:10px;padding:9px 18px;font-weight:700}.btn.ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn.ghost:hover{border-color:var(--ink)}.fb{border-radius:10px;margin-top:14px;padding:12px 14px;font-size:16px}.fb.ok{background:var(--ok-soft);color:var(--ok);font-weight:700}.fb.bad{background:var(--bad-soft);color:var(--bad);font-weight:700}.fb.info{background:var(--paper);border:1.5px dashed var(--line);color:var(--ink)}.fb .m{font-size:18px;line-height:1.7}.tip{color:var(--muted);margin-top:12px;font-size:13px}.pager{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:28px;display:flex}.pager a{color:var(--ink);background:var(--card);border:1.5px solid var(--line);border-radius:12px;flex:220px;min-width:0;padding:12px 16px;text-decoration:none}.pager a:hover{border-color:var(--pen)}.pager small{color:var(--muted);font-size:13px;display:block}.pager a.next{text-align:right}.arealink{background:var(--pen-soft);width:34px;height:34px;color:var(--pen);border-radius:9px;justify-content:center;align-self:center;align-items:center;display:inline-flex}.arealink svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round;width:22px;height:22px}.arealink:hover{background:var(--pen);color:#fff}.arealink:focus-visible{outline:3px solid var(--pen);outline-offset:2px}.asec{margin-top:36px}.asec>h2{margin-bottom:6px;font-size:26px}.asec>p.lead{color:var(--muted);max-width:64ch;margin:0 0 16px}.aintro p{max-width:66ch;margin:0 0 12px;font-size:18px}.figs{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:18px;display:grid}.fg{background:var(--card);border:1.5px solid var(--line);border-radius:16px;flex-direction:column;gap:10px;min-width:0;margin:0;padding:18px 20px;display:flex}.fg h3{font-size:19px}.fg figcaption{color:var(--muted);font-size:15px;line-height:1.45}.fgwrap{overflow-x:auto}.terms{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:10px;display:grid}.term{background:var(--card);border:1.5px solid var(--line);border-radius:12px;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;display:flex}.term-h{font-family:var(--display);margin:0;font-size:17px}.term p{margin:0;font-size:15px;line-height:1.45}.term .te{font-family:var(--math);color:var(--pen);font-size:16px}.path{counter-reset:st;gap:12px;margin:0;padding:0;list-style:none;display:grid}.path li{counter-increment:st;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:12px;display:grid;position:relative}.path li:before{content:counter(st);background:var(--ink);width:34px;height:34px;color:var(--paper);font-weight:800;font-family:var(--display);border-radius:50%;place-items:center;display:grid}.path li:not(:last-child):after{content:"";background:var(--line);width:2px;position:absolute;top:36px;bottom:-12px;left:16px}.path a{color:var(--ink);background:var(--card);border:1.5px solid var(--line);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;padding:10px 14px;text-decoration:none;display:flex}.path a:hover{border-color:var(--pen)}.path a b{font-family:var(--display);font-size:17px}.path a span.s{color:var(--muted);flex-basis:100%;font-size:14px}.path .meta{align-items:center;gap:10px;display:flex}.dg{width:100%;max-width:620px;height:auto;margin:0 auto;display:block}.dg text{fill:var(--ink);font-family:var(--body);font-size:14px}.dg .tm{fill:var(--muted);font-size:12.5px}.dg .tb{font-weight:700}.dg .tx{font-family:var(--math);font-size:19px}.dg .txs{font-family:var(--math);font-size:16px}.dg .tc{text-anchor:middle}.dg .te{text-anchor:end}.dg .lay1,.dg .box{fill:var(--card);stroke:var(--muted);stroke-width:1.5px}.dg .lay2{fill:var(--pen-soft);fill-opacity:.5;stroke:var(--pen);stroke-width:1.5px}.dg .lay3{fill:var(--pen-soft);stroke:var(--pen);stroke-width:1.5px}.dg .lay4{fill:var(--hl);stroke:var(--ink);stroke-width:1.5px}.dg .on-hl{fill:var(--hl-ink)}.dg .ln{stroke:var(--ink);stroke-width:1.5px;fill:none}.dg .inkf{fill:var(--ink)}.dg .gl{fill:none;stroke:var(--pen);stroke-opacity:.3;stroke-width:1px}.dg .gax{stroke:var(--grid);stroke-width:1px}.dg .arr{stroke:var(--pen);stroke-width:2px;fill:none}.dg .ah{fill:var(--pen)}.dg .cv{fill:none;stroke-width:3px;stroke-linecap:round}.dg .arc{fill:none;stroke:var(--pen);stroke-width:2px}.dg .dash{stroke-dasharray:5 4}.dg .s-pen{stroke:var(--pen)}.dg .s-g{stroke:var(--ok)}.dg .s-r{stroke:var(--bad)}.dg .f-pen{fill:var(--pen)}.dg .f-g{fill:var(--ok)}.dg .f-r{fill:var(--bad)}.dg .dotp{fill:var(--pen)}.dg .gs1{stop-color:var(--pen-soft)}.dg .gs2{stop-color:var(--pen)}@media (width<=820px){.hero,.layout{grid-template-columns:minmax(0,1fr)}.practice{position:static}}@media (width<=420px){.levels{grid-template-columns:repeat(2,1fr)}.q{font-size:21px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.muted{color:var(--muted)}.small-muted{color:var(--muted);font-size:13px}.dg-narrow{max-width:420px}.dg-task{max-width:260px;margin:6px 0 4px}.fb .fb-sol{color:var(--ink);margin-top:6px;font-weight:400}.badtxt{color:var(--bad)}.handw{text-transform:none;letter-spacing:0;font-style:italic}.notfound+p{font-size:18px}h1[tabindex="-1"]:focus{outline:none}.foot{border-top:1.5px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:48px;padding-top:14px;font-size:14px;display:flex}body{padding-left:max(16px, 3vw, env(safe-area-inset-left,0px));padding-right:max(16px, 3vw, env(safe-area-inset-right,0px))}.exlist{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));align-items:start}@container (width>=700px){.intro{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:28px;display:grid}.intro .rule{margin-top:0}.intro .ex{margin-top:14px}}@container (width>=1300px){.intro{grid-template-columns:minmax(0,70ch) minmax(0,60ch);gap:48px}}@media (width>=1280px){.layout{grid-template-columns:minmax(0,1.55fr) minmax(400px,1fr);gap:32px}}@media (width>=821px){.practice{max-height:calc(100vh - 24px);overflow-y:auto}.guide{--tab-w:max(340px, 60%);background:0 0;border:0;border-radius:0}.guide.parent{--tab-w:calc((100% - 26px) * 1.05 / 2.05);border:0}.guide.parent summary{border-left:1.5px solid var(--line);border-top:5px solid var(--gc)}.guide summary{width:var(--tab-w);background:var(--card);border:1.5px solid var(--line);border-left:5px solid var(--gc);border-radius:14px;margin-left:auto}.guide[open] summary{z-index:1;border-bottom-color:var(--card);border-radius:14px 14px 0 0;margin-bottom:-1.5px}.guide .guide-body{background:var(--card);border:1.5px solid var(--line);border-radius:16px 0 16px 16px;padding-top:4px}}@media (width>=1280px){.guide.parent{--tab-w:max(400px, calc((100% - 32px) / 2.55))}}.fig-tri{max-width:314px}
