@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-latin-ext-400-normal.DRk46D-x.woff2)format("woff2"),url(/_astro/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(/_astro/atkinson-hyperlegible-latin-400-normal.BrHNak5F.woff2)format("woff2"),url(/_astro/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(/_astro/atkinson-hyperlegible-latin-ext-700-normal.BoVPHkS0.woff2)format("woff2"),url(/_astro/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(/_astro/atkinson-hyperlegible-latin-700-normal.GZI4o3u0.woff2)format("woff2"),url(/_astro/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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.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:Libron;src:url(/fonts/libron/Libron-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Libron;src:url(/fonts/libron/Libron-Bold.woff2)format("woff2");font-weight:700;font-display:swap}:root{--paper:#f3eee3;--sheet:#fbf8f1;--sheet-edge:#e6dece;--rule:#d8cfbe;--rule-line:#c9d6e8;--margin-line:#e3a59a;--ink:#1c1b18;--graphite:#5f5a50;--red:#b3361f;--red-wash:#f6dcd4;--blue:#2b55a0;--blue-wash:#dde6f4;--stamp:#2d6a4c;--font-display:"Libron", Georgia, "Times New Roman", serif;--font-body:"Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--step--1:.875rem;--step-0:1.0625rem;--step-1:1.3rem;--step-2:1.75rem;--step-3:clamp(2.2rem, 5vw, 3.4rem);--line:1.6;--measure:66ch;--gap:1.25rem;--radius:2px;--shadow-sheet:0 1px 0 #fff inset, 0 1px 2px #3c321e14, 0 14px 30px -18px #3c321e59;--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .32 0 0 0 0 .27 0 0 0 0 .17 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper) var(--grain);color:var(--ink);font:var(--step-0) / var(--line) var(--font-body);flex-direction:column;min-height:100vh;margin:0;display:flex}main{flex:1;width:min(100% - 2rem,72rem);margin-inline:auto;padding-block:2rem 4rem}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;overflow-wrap:break-word;hyphens:auto;margin:0 0 .5em;font-weight:700;line-height:1.12}h1{font-size:var(--step-3)}h2{font-size:var(--step-2)}h3{font-size:var(--step-1)}p{max-width:var(--measure);text-wrap:pretty;margin:0 0 1em}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;color:var(--graphite);margin:0 0 .75rem}.skip{inset-inline-start:1rem;position:absolute;top:1rem;transform:translateY(-300%)}.skip:focus{background:var(--ink);color:var(--sheet);z-index:10;padding:.5rem .75rem;transform:none}.masthead{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;width:min(100% - 2rem,72rem);margin-inline:auto;padding-block:1.25rem;display:flex}.wordmark{font-family:var(--font-display);letter-spacing:-.035em;align-items:center;gap:.6rem;font-size:1.75rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.masthead__brand{gap:.4rem;display:grid}.masthead__descriptor{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--graphite);white-space:nowrap;margin:0;font-size:.68rem}[dir=rtl] .masthead__descriptor{letter-spacing:0;font-family:var(--font-body);font-size:var(--step--1)}.wordmark__dot{color:var(--red)}.wordmark__mark{border:2.5px solid;border-radius:50%;flex:none;width:1.05rem;height:1.05rem;margin:0 .15rem .5rem;position:relative}.wordmark__mark:after{content:"";border-block:2.5px solid var(--red);height:.4rem;position:absolute;bottom:-.6rem;left:-.3rem;right:-.3rem}.masthead nav{font-size:var(--step--1);flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.masthead__link{color:var(--graphite);text-decoration:none}.masthead__link:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--red)}.colophon{border-top:1px solid var(--rule);width:min(100% - 2rem,72rem);color:var(--graphite);font-size:var(--step--1);margin-inline:auto;padding-block:1.5rem 2.5rem}.sheet{background:var(--sheet);border:1px solid var(--sheet-edge);border-radius:var(--radius);box-shadow:var(--shadow-sheet);padding:clamp(1.25rem,4vw,2.5rem)}.btn{appearance:none;border:2px solid var(--ink);border-radius:var(--radius);background:var(--ink);min-height:48px;color:var(--sheet);font:700 var(--step-0) / 1 var(--font-body);cursor:pointer;align-items:center;gap:.6em;padding:.8em 1.25em;text-decoration:none;transition:transform .12s,box-shadow .12s;display:inline-flex}.btn:hover{box-shadow:0 3px 0 var(--red);transform:translateY(-1px)}.btn:active{box-shadow:none;transform:translateY(1px)}.btn[disabled]{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn--quiet{color:var(--ink);background:0 0}.hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(2rem,6vw,5rem);padding-block:clamp(2rem,6vw,4.5rem);display:grid}.hero>*{min-width:0}.hero__lede{font-size:var(--step-1);color:var(--graphite)}.specimen{font-size:var(--step--1);position:relative;transform:rotate(1.4deg)}.specimen:before{content:"";background:var(--sheet);border:1px solid var(--sheet-edge);z-index:-1;position:absolute;inset-block:.6rem -.6rem;inset-inline:.6rem -.6rem;transform:rotate(-3deg)}.specimen__line{font-family:var(--font-body);font-size:var(--step-0);margin:0;line-height:2}.section-head{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:baseline;gap:1rem;margin:3.5rem 0 1rem;padding-bottom:.5rem;display:flex}.section-head h2{margin:0}.topic-list{columns:16rem;column-gap:2rem;padding-inline-start:1.2rem}.topic-list li{break-inside:avoid;padding:.2rem 0}.toc{margin:0;padding:0;list-style:none}.toc a{border-bottom:1px solid var(--rule);flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:1rem 0;text-decoration:none;display:flex}.toc a:hover .toc__title{text-decoration:underline;text-decoration-color:var(--red)}.toc__title{font-family:var(--font-display);font-size:var(--step-1)}.toc__kind{font-family:var(--font-mono);font-size:var(--step--1);color:var(--graphite);display:block}.toc__leader{border-bottom:2px dotted var(--rule);flex:1;min-width:1.5rem;transform:translateY(-.3em)}.toc__meta{font-family:var(--font-mono);font-size:var(--step--1)}.marginalia{counter-reset:note;grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.marginalia>div{counter-increment:note;border-inline-start:2px solid var(--margin-line);padding-inline-start:1rem}.marginalia h3:before{content:counter(note) ". ";color:var(--red);font-family:var(--font-mono);font-size:var(--step--1)}.footnote{font-size:var(--step--1);color:var(--graphite);border-top:1px solid var(--rule);margin-top:2rem;padding-top:.75rem}.exam-head{grid-template-columns:1.3fr 1fr;align-items:start;gap:3rem;display:grid}.exam-head>*,.plans>*{min-width:0}.facts{grid-template-columns:auto 1fr;gap:.6rem 1.25rem;margin:0;display:grid}.facts dt{font-family:var(--font-mono);font-size:var(--step--1);color:var(--graphite);padding-top:.15em}.facts dd{margin:0}.sample summary{cursor:pointer;margin-top:1rem;font-weight:700}.sample summary::marker{color:var(--red)}.runner{max-width:48rem;margin-inline:auto}.runner__bar{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.runner__title{font-family:var(--font-mono);font-size:var(--step--1);color:var(--graphite);white-space:nowrap;margin:0}.timer{flex:1;align-items:center;gap:.75rem;display:flex;position:relative}.timer__track{background:var(--rule);flex:1;height:3px;overflow:hidden}.timer__line{background:var(--ink);height:100%;transition:transform 1s linear}.timer[data-low] .timer__line{background:var(--red)}.timer__text{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.timer[data-low] .timer__text{color:var(--red)}.bubbles{flex-wrap:wrap;gap:.4rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.bubble{border:1.5px solid var(--graphite);width:2rem;height:2rem;color:var(--graphite);font:.75rem var(--font-mono);cursor:pointer;background:0 0;border-radius:50%}.bubble[data-answered]{background:var(--ink);border-color:var(--ink);color:var(--sheet)}.bubble[aria-current=true]{outline:2px solid var(--red);outline-offset:2px}.passage{white-space:pre-line;border-inline-start:2px solid var(--rule);margin:0 0 1.5rem;padding-inline-start:1rem}.listen{margin-bottom:1.5rem}.listen__transcript,.review__passage{margin-top:.75rem}.question{border:0;margin:0;padding:0}.question__stem{font-family:var(--font-display);font-size:var(--step-1);margin-bottom:1.25rem;padding:0;line-height:1.3}.question__image{width:auto;max-width:100%;height:8rem;margin-bottom:1.25rem;display:block}.question__num{font-family:var(--font-mono);font-size:var(--step-0);color:var(--red);margin-inline-end:.35em}.options{gap:.6rem;display:grid}.option{border:1.5px solid var(--rule);border-radius:var(--radius);background:var(--sheet);cursor:pointer;align-items:center;gap:.9rem;min-height:56px;padding:.85rem 1rem;transition:border-color .12s;display:flex;position:relative}.option:hover{border-color:var(--graphite)}.option input{opacity:0;pointer-events:none;position:absolute}.option:has(input:focus-visible){outline:3px solid var(--blue);outline-offset:2px}.option__key{border:1.5px solid var(--graphite);width:1.9rem;height:1.9rem;font:.8rem var(--font-mono);border-radius:50%;flex:none;place-items:center;display:grid}.option[data-chosen]{border-color:var(--ink)}.option[data-chosen] .option__key{background:var(--ink);border-color:var(--ink);color:var(--sheet)}.runner__nav{justify-content:space-between;gap:1rem;margin-top:1.75rem;display:flex}.hint{font-size:var(--step--1);color:var(--graphite)}.cover__sections{gap:1rem;margin-top:1.5rem;display:grid}.cover__section{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.instructions{color:var(--graphite);padding-inline-start:1.2rem}.task{border-inline-start:3px solid var(--ink);margin-bottom:1.5rem;padding-inline-start:1rem}.task__points{margin:.75rem 0 0;padding-inline-start:1.2rem}.task__points li::marker{color:var(--red)}.paper{--lh:2rem;width:100%;min-height:calc(var(--lh) * 14);resize:vertical;padding:calc(var(--lh) * .5) 1rem calc(var(--lh) * .5) 3.5rem;border:1px solid var(--sheet-edge);border-radius:var(--radius);font:var(--step-0) / var(--lh) var(--font-body);color:var(--ink);background-color:var(--sheet);background-image:linear-gradient(90deg, transparent 2.6rem, var(--margin-line) 2.6rem, var(--margin-line) calc(2.6rem + 1px), transparent calc(2.6rem + 1px)), repeating-linear-gradient(transparent 0 calc(var(--lh) - 1px), var(--rule-line) calc(var(--lh) - 1px) var(--lh));background-position:0 0, 0 calc(var(--lh) * .5);background-attachment:local;display:block}.paper:focus-visible{outline-offset:0}.paper__meta{font-size:var(--step--1);color:var(--graphite);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;margin-top:.5rem;display:flex}.field{align-items:center;gap:.5rem;display:inline-flex}.field select{font:inherit;border:1px solid var(--rule);border-radius:var(--radius);background:var(--sheet);color:var(--ink);padding:.35rem .5rem}.alert{border-inline-start:3px solid var(--red);background:var(--red-wash);margin-top:1rem;padding:.75rem 1rem}.marking{color:var(--graphite);align-items:center;gap:1rem;margin-top:1rem;display:flex}.marking__pencil{background:linear-gradient(90deg, var(--red) 0 40%, transparent 40%);background-size:200% 100%;width:4rem;height:3px;animation:1.2s ease-in-out infinite alternate sweep}@keyframes sweep{0%{background-position:100% 0}to{background-position:0 0}}.result-head{align-items:center;gap:2rem;margin-bottom:2rem;display:flex}.stamp{text-align:center;width:8.5rem;height:8.5rem;color:var(--red);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;mix-blend-mode:multiply;border:4px double;border-radius:50%;flex:none;place-items:center;line-height:1.1;animation:.26s cubic-bezier(.2,1.6,.4,1) both stamp;display:grid;transform:rotate(-9deg)}.stamp[data-pass]{color:var(--stamp)}.stamp__big{font-family:var(--font-display);text-transform:none;letter-spacing:0;font-size:1.9rem;display:block}.stamp__small{font-size:.7rem}@keyframes stamp{0%{opacity:0;transform:rotate(-9deg)scale(1.35)}to{opacity:1;transform:rotate(-9deg)scale(1)}}.passline{width:100%;height:auto;overflow:visible}.passline__label{font:11px var(--font-mono);fill:var(--red)}.passline__axis{font:10px var(--font-mono);fill:var(--graphite)}.criteria{gap:1rem;margin:1.5rem 0;display:grid}.criterion{border-top:1px solid var(--rule);grid-template-columns:10rem auto 1fr;align-items:baseline;gap:.5rem 1rem;padding-top:.75rem;display:grid}.criterion__name{font-weight:700}.pips{gap:.25rem;display:inline-flex}.pip{border:1.5px solid var(--ink);border-radius:50%;width:.8rem;height:.8rem}.pip[data-on]{background:var(--ink)}.marked{grid-template-columns:1fr 17rem;gap:2rem;display:grid}.marked__text{white-space:pre-wrap;max-width:none;line-height:2.1}.pencil{color:inherit;text-underline-offset:.3em;text-decoration-skip-ink:none;background:0 0;text-decoration:underline 1.5px wavy}.pencil--error{text-decoration-color:var(--red)}.pencil--improve{text-decoration-style:solid;text-decoration-color:var(--red)}.pencil--good{text-decoration-style:double;text-decoration-color:var(--blue)}.pencil__ref{font:.65rem var(--font-mono);color:var(--red);margin-inline-start:.1em}.pencil--good .pencil__ref{color:var(--blue)}.marked__notes{font-size:var(--step--1);border-inline-start:2px solid var(--margin-line);align-content:start;gap:.9rem;margin:0;padding-inline-start:1.4rem;display:grid}.marked__notes li::marker{font-family:var(--font-mono);color:var(--red)}.note--good::marker{color:var(--blue)}.note__fix{font-family:var(--font-mono);color:var(--blue);margin-top:.25rem;display:block}.review{gap:1rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.review li{border-top:1px solid var(--rule);padding-top:.75rem}.review__mark{font-family:var(--font-mono);margin-inline-end:.5rem}.review__mark[data-right]{color:var(--blue)}.review__mark[data-wrong]{color:var(--red)}.btn__arrow{transition:transform .16s;display:inline-block}.btn:hover .btn__arrow{transform:translate(3px)}.btn--small{min-height:40px;font-size:var(--step--1);padding:.55em .95em}.btn--paper{background:var(--sheet);color:var(--ink);border-color:var(--sheet)}.btn--paper:hover{box-shadow:0 3px 0 var(--red)}.quickstart{max-width:34rem;margin-top:2rem}.quickstart__label{margin-bottom:.5rem;font-weight:700;display:block}.quickstart__row{gap:.5rem;display:flex}.quickstart select{border:2px solid var(--ink);border-radius:var(--radius);background:var(--sheet);min-width:0;min-height:48px;color:var(--ink);font:var(--step-0) var(--font-body);flex:1;padding:0 .85rem}.quickstart .hint{margin:.6rem 0 0}.cta-row{flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;display:flex}.cta-band{background:var(--ink) var(--grain);color:var(--sheet);border-radius:var(--radius);text-align:center;margin-top:4.5rem;padding:clamp(2rem,6vw,3.5rem)}.cta-band p{color:#d9d3c6;margin-inline:auto}.cta-bar{z-index:5;background:var(--sheet);border:1px solid var(--sheet-edge);box-shadow:var(--shadow-sheet);border-radius:var(--radius);align-items:center;gap:1rem;padding:.6rem .6rem .6rem 1rem;transition:transform .26s cubic-bezier(.2,.9,.3,1);display:flex;position:fixed;bottom:1rem;left:50%;transform:translate(-50%,calc(100% + 2rem))}.cta-bar[data-show]{transform:translate(-50%)}.cta-bar strong{line-height:1.2;display:block}.crumbs{font-size:var(--step--1);color:var(--graphite);margin-bottom:1.5rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.draw{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(currentColor,currentColor) 0 100%/100% 2px no-repeat;padding-bottom:2px}.draw--red{background-image:linear-gradient(var(--red), var(--red))}.draw--blue{background-image:linear-gradient(var(--blue), var(--blue));background-size:100% 4px;background-image:linear-gradient(var(--blue) 0 1.5px, transparent 1.5px 2.5px, var(--blue) 2.5px 4px)}.pencil__ref--blue{color:var(--blue)}.specimen__notes{margin-top:1rem}.specimen__stamp{inset-inline-end:-1.25rem;text-align:center;border:3px double var(--stamp);width:6.5rem;height:6.5rem;color:var(--stamp);background:color-mix(in srgb, var(--sheet) 70%, transparent);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;border-radius:50%;place-content:center;font-size:.65rem;line-height:1.1;display:grid;position:absolute;bottom:-1.75rem;transform:rotate(-11deg)}.specimen__stamp .stamp__big{font-size:1.6rem}.stats{border-block:1px solid var(--rule);color:var(--graphite);flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;margin:0;padding:1.25rem 0;list-style:none;display:flex}.stats strong{font-size:var(--step-2);color:var(--ink);font-weight:400;display:block}.steps{grid-template-columns:repeat(3,1fr);gap:2rem;margin:0;padding:0;list-style:none;display:grid}.step h3{align-items:baseline;gap:.5rem;margin-top:1rem;display:flex}.step__n{font-family:var(--font-mono);font-size:var(--step--1);color:var(--red)}.step__art{background:var(--sheet);border:1px solid var(--sheet-edge);border-radius:var(--radius);align-items:center;gap:.6rem;height:5.5rem;padding:0 1.25rem;display:flex}.step__art--bubbles span{border:1.5px solid var(--graphite);border-radius:50%;width:1.4rem;height:1.4rem}.step__art--bubbles span:nth-child(-n+3){background:var(--ink);border-color:var(--ink)}.step__track{background:var(--rule);flex:1;height:3px}.step__line{background:var(--ink);width:62%;height:100%;display:block}.step__chart{width:100%;height:4rem}.step__pass{stroke:var(--red);stroke-width:1.5px;stroke-dasharray:5 4}.step__curve{fill:none;stroke:var(--ink);stroke-width:2px;stroke-dasharray:200}.step__dot{fill:var(--ink)}.filters{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem 1rem;margin-bottom:.5rem;display:flex}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip{border:1.5px solid var(--rule);border-radius:var(--radius);min-height:36px;color:var(--ink);font:var(--step--1) var(--font-body);cursor:pointer;background:0 0;padding:.3rem .8rem}.chip:hover{border-color:var(--graphite)}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--sheet)}.filters__tools{flex-wrap:wrap;flex:0 51rem;justify-content:flex-end;gap:.5rem;display:flex}.search{min-width:0;display:inline-flex}.search--country,.search--type{flex:0 12.5rem;position:relative}.search--type[hidden]{display:none}.search--country:after,.search--type:after{content:"";inset-inline-end:.9rem;border-right:1.5px solid var(--graphite);border-bottom:1.5px solid var(--graphite);pointer-events:none;width:.45rem;height:.45rem;position:absolute;top:50%;transform:translateY(-70%)rotate(45deg)}.search--query{flex:23rem;position:relative}.search-suggestions{z-index:10;top:calc(100% + .35rem);border:1.5px solid var(--rule);border-radius:var(--radius);background:var(--sheet);box-shadow:var(--shadow-sheet);padding:.7rem 0;position:absolute;inset-inline:0}.search-suggestions[hidden]{display:none}.search-suggestions__heading{color:var(--graphite);font:var(--step--2) var(--font-body);margin:0 0 .25rem;padding:0 .75rem}.search-suggestions ul{margin:0;padding:0;list-style:none}.search-suggestions a{color:var(--ink);font:var(--step--1) var(--font-body);padding:.45rem .75rem;text-decoration:none;display:block}.search-suggestions a:hover,.search-suggestions a:focus-visible{background:var(--paper)}.search input,.search select{border:1.5px solid var(--rule);border-radius:var(--radius);background:var(--sheet);width:100%;min-height:40px;color:var(--ink);font:var(--step--1) var(--font-body);padding:.35rem .75rem}.search select{appearance:none;cursor:pointer;padding-inline-end:2.1rem}.search input:hover,.search select:hover{border-color:var(--graphite)}.exam-more{margin:1.25rem auto 0;display:flex}.exam-more[hidden]{display:none}@media (width<=520px){.masthead nav{gap:.75rem}.masthead nav>*,.lang-menu summary{white-space:nowrap}.masthead .wordmark{font-size:1.45rem}}@media (width<=400px){.masthead nav{gap:.5rem}.masthead .btn__arrow{display:none}.filters__tools,.search--country,.search--type,.search--query{flex:100%}}.toc__go{color:var(--red);opacity:0;transition:opacity .16s,transform .16s;transform:translate(-4px)}.toc a:hover .toc__go,.toc a:focus-visible .toc__go{opacity:1;transform:none}.plans{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:1.25rem;display:grid}.plan{box-shadow:none;flex-direction:column;transition:box-shadow .2s,transform .2s;display:flex}.plan:hover{box-shadow:var(--shadow-sheet);transform:translateY(-2px)}.plan--best{border:2px solid var(--ink)}.plan__flag{background:var(--red);color:var(--sheet);letter-spacing:.04em;margin-inline-start:.4rem;padding:.1rem .4rem}.plan__price .mono{font-size:var(--step-3);color:var(--ink)}.plan__list{flex:1;margin:0 0 1.5rem;padding-inline-start:1.1rem}.plan__list li{margin-bottom:.4rem}.plan__list li::marker{content:"✓  ";color:var(--blue)}.plan .btn{justify-content:center}.faq{border-top:1px solid var(--rule)}.faq__item{border-bottom:1px solid var(--rule)}.faq__item summary{cursor:pointer;font-family:var(--font-display);font-size:var(--step-1);justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 0;list-style:none;display:flex}.faq__item summary::-webkit-details-marker{display:none}.faq__item summary:hover span:first-child{text-decoration:underline;text-decoration-color:var(--red)}.faq__mark{flex:none;width:1rem;height:1rem;position:relative}.faq__mark:before,.faq__mark:after{content:"";background:var(--ink);height:2px;transition:transform .2s;position:absolute;inset:50% 0 auto}.faq__mark:after{transform:rotate(90deg)}.faq__item[open] .faq__mark:after{transform:rotate(0)}.faq__body p{color:var(--graphite);padding-bottom:1rem}.faq__item[open] .faq__body{animation:.24s faq-open}@keyframes faq-open{0%{opacity:0;transform:translateY(-4px)}}[dir=rtl] body{font-family:var(--font-body), "Segoe UI", "Noto Sans Arabic", "Geeza Pro", sans-serif}[dir=rtl] .btn__arrow,[dir=rtl] .toc__go{transform:scaleX(-1)}[dir=rtl] .btn:hover .btn__arrow{transform:scaleX(-1)translate(3px)}[dir=rtl] .toc a:hover .toc__go,[dir=rtl] .toc a:focus-visible .toc__go{transform:scaleX(-1)}[dir=rtl] .timer__line{transform-origin:100%}.timer__line{transform-origin:0}.lang-menu{position:relative}.lang-menu summary{cursor:pointer;font-family:var(--font-mono);font-size:var(--step--1);color:var(--graphite);border:1.5px solid var(--rule);border-radius:var(--radius);padding:.35rem .5rem;list-style:none}.lang-menu summary::-webkit-details-marker{display:none}.lang-menu[open] summary,.lang-menu summary:hover{border-color:var(--ink);color:var(--ink)}.lang-menu ul{inset-inline-end:0;z-index:10;background:var(--sheet);border:1px solid var(--sheet-edge);min-width:11rem;box-shadow:var(--shadow-sheet);border-radius:var(--radius);margin:0;padding:.4rem 0;list-style:none;animation:.14s fade-in;position:absolute;top:calc(100% + .4rem)}.lang-menu a{color:var(--ink);padding:.5rem 1rem;text-decoration:none;display:block}.lang-menu a:hover{background:var(--paper)}.lang-menu a[aria-current=page]{box-shadow:inset 3px 0 0 var(--red);font-weight:700}.lang-suggest{background:var(--ink);color:var(--sheet);font-size:var(--step--1);justify-content:center;align-items:center;gap:1rem;padding:.6rem 1rem;display:flex}.lang-suggest[hidden]{display:none}.lang-suggest a{color:var(--sheet);font-weight:700}.lang-suggest__close{color:#d9d3c6;font:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.recommend{font-family:var(--font-mono);font-size:var(--step--1);color:var(--stamp);margin:0 0 .75rem}.recommend:before{content:"◉ "}.toc li[data-recommended] .toc__title:after{content:" ◉";color:var(--stamp);vertical-align:middle;font-size:.7em}@media (prefers-reduced-motion:no-preference) and (scripting:enabled){.reveal{opacity:0;transition:opacity .6s,transform .6s cubic-bezier(.2,.8,.2,1);transform:translateY(14px)}.reveal.is-in{opacity:1;transform:none}.toc .reveal.is-in:nth-child(2){transition-delay:60ms}.toc .reveal.is-in:nth-child(3){transition-delay:.12s}.toc .reveal.is-in:nth-child(4){transition-delay:.18s}.toc .reveal.is-in:nth-child(5){transition-delay:.24s}.toc .reveal.is-in:nth-child(n+6){transition-delay:.3s}.steps .reveal:nth-child(2){transition-delay:.12s}.steps .reveal:nth-child(3){transition-delay:.24s}.specimen.reveal{transform:translateY(18px)rotate(4deg)}.specimen.reveal.is-in{transform:rotate(1.4deg)}.specimen .draw{background-size:0% 2px}.specimen.is-in .draw{animation:draw .7s ease-out var(--d) forwards}.specimen.is-in .draw--blue{animation-name:draw-double}.specimen .specimen__notes li{opacity:0}.specimen.is-in .specimen__notes li{animation:fade-in .4s ease var(--d) forwards}.specimen .specimen__stamp{opacity:0}.specimen.is-in .specimen__stamp{animation:.32s cubic-bezier(.2,1.6,.4,1) 2.6s forwards stamp-land}.step.is-in .step__art--bubbles span:nth-child(-n+3){animation:.3s both bubble-fill}.step.is-in .step__art--bubbles span:nth-child(2){animation-delay:.3s}.step.is-in .step__art--bubbles span:nth-child(3){animation-delay:.6s}.step.is-in .step__line{animation:2.4s ease-out .3s both wear}.step.is-in .step__curve{animation:1.4s ease-out .4s both plot}.step .step__dot{opacity:0}.step.is-in .step__dot{animation:.3s 1.7s forwards fade-in}}@keyframes draw{0%{background-size:0% 2px}to{background-size:100% 2px}}@keyframes draw-double{0%{background-size:0% 4px}to{background-size:100% 4px}}@keyframes fade-in{to{opacity:1}}@keyframes stamp-land{0%{opacity:0;transform:rotate(-11deg)scale(1.5)}to{opacity:1;transform:rotate(-11deg)scale(1)}}@keyframes bubble-fill{0%{border-color:var(--graphite);background:0 0;transform:scale(.85)}}@keyframes wear{0%{width:100%}}@keyframes plot{0%{stroke-dashoffset:200px}to{stroke-dashoffset:0}}@media (width<=760px){.hero,.exam-head,.marked,.marginalia,.steps,.plans{grid-template-columns:1fr}.quickstart__row{flex-direction:column}.toc__leader,.masthead__link{display:none}.specimen__stamp{inset-inline-end:-.5rem}.criterion{grid-template-columns:1fr auto}.criterion p{grid-column:1/-1}.lang-menu ul{inset-inline-end:-4rem}.result-head{flex-direction:column;align-items:flex-start}.runner__title{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.masthead__auth{font-weight:700;color:var(--ink)!important;display:inline!important}.colophon__brand{flex-wrap:wrap;align-items:baseline;gap:.5rem 1.25rem;margin-bottom:1rem;display:flex}.colophon__brand .wordmark{color:var(--ink);font-size:1.35rem}.colophon__brand .eyebrow{margin:0}.colophon__brand .eyebrow+.eyebrow:before{content:"— "}.colophon__advice{color:var(--ink);max-width:70ch}.colophon__links{flex-wrap:wrap;gap:.5rem 1.25rem;margin:0 0 1rem;display:flex}.colophon__links a{color:var(--graphite)}.narrow{max-width:30rem;margin-inline:auto}.form{gap:1rem;display:grid}.form label{gap:.35rem;font-weight:700;display:grid}.form input,.form select{border:2px solid var(--ink);border-radius:var(--radius);background:var(--sheet);width:100%;min-width:0;min-height:48px;color:var(--ink);font:var(--step-0) var(--font-body);padding:0 .85rem}.form input:focus-visible,.form select:focus-visible{outline-offset:2px}.form .btn{justify-content:center}.linkish{color:var(--ink);font:inherit;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;padding:0}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.dash-cards{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1rem;display:grid}.dash-card{gap:.5rem;display:grid}.dash-card h3{margin:0}.chat{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}.chat__head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.chat__head h2{margin:0}.chat__log{gap:.75rem;max-height:28rem;display:grid;overflow-y:auto}.chat__log:empty{display:none}.chat__turn{white-space:pre-wrap;border-inline-start:2px solid var(--rule);margin:0;padding-inline-start:.75rem}.chat__turn[data-role=assistant]{border-inline-start-color:var(--red)}.chat__turn[data-failed]{color:var(--red)}.chat__who{font-family:var(--font-mono);color:var(--graphite);font-size:var(--step--1);text-transform:uppercase;letter-spacing:.06em;display:block}.chat__form{align-items:flex-end;gap:.5rem;display:flex}.chat__form textarea{min-width:0;font:inherit;border:1px solid var(--rule);border-radius:var(--radius);background:var(--sheet);color:var(--ink);resize:vertical;flex:1;padding:.5rem .75rem}.buy{justify-items:start;gap:1rem;display:grid}.buy__plans{border:0;gap:.5rem;width:100%;margin:0;padding:0;display:grid}.buy__consent{align-items:flex-start;gap:.6rem;display:flex}.buy__consent input{margin-top:.3rem}.plan-card{gap:.5rem;display:grid}.plan-card h3,.plan-card p{margin:0}.admin-table{border-collapse:collapse;font-family:var(--font-mono);font-size:var(--step--1)}.admin-table th,.admin-table td{border-bottom:1px solid var(--rule);text-align:end;padding:.3rem .6rem}.admin-table th[scope=row],.admin-table thead th:first-child{text-align:start}.dash-writing{gap:.75rem;padding:0;list-style:none;display:grid}.dash-writing summary{cursor:pointer}.meter{background:var(--rule);height:6px;position:relative}.meter__fill{background:var(--ink);position:absolute;inset-block:0;inset-inline-start:0}.meter__pass{border-inline-start:2px dashed var(--red);position:absolute;top:-4px;bottom:-4px}.danger{border-color:var(--red);background:var(--red);color:var(--sheet)}.prose{max-width:70ch}.prose h2{font-size:var(--step-1);margin-top:2.25rem}.prose ul{padding-inline-start:1.2rem}.prose li{margin-bottom:.4rem}.callout{border-inline-start:4px solid var(--red);background:var(--sheet);margin:1.5rem 0;padding:1rem 1.25rem}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
