:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#07111d;--ink-soft:#132335;--paper:#f4f6f3;--paper-bright:#fbfcf9;--line:#ced6d2;--muted:#5d6a73;--blue:#0969f3;--blue-bright:#4aa3ff;--green:#09c77e;--green-deep:#087b55;--white:#fff;--shadow:0 24px 70px #07111d1f;font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--ink);background:var(--paper);text-rendering:optimizelegibility;margin:0;line-height:1.55;overflow-x:clip}.signin-page{background:var(--ink);min-height:100vh}img{max-width:100%;display:block}a{color:inherit}button,input,select{font:inherit}[hidden]{display:none!important}.skip-link{z-index:100;color:var(--ink);background:var(--white);border-radius:8px;padding:10px 14px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;width:min(1180px,100% - 48px);min-height:88px;color:var(--white);justify-content:space-between;align-items:center;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.brand{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand img{border-radius:50%;box-shadow:0 0 0 1px #ffffff1f}.brand-name{letter-spacing:-.02em;font-size:1rem}.brand-name strong{font-weight:750}.primary-nav{align-items:center;gap:28px;font-size:.88rem;font-weight:650;display:flex}.primary-nav>a:not(.button){color:#ffffffb8;text-decoration:none}.primary-nav>a:hover,.primary-nav>a:focus-visible{color:var(--white)}.header-educator-account{min-height:46px;color:var(--white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff42;gap:9px;padding:5px 13px 5px 6px}.header-educator-account img,.header-educator-avatar-fallback{border-radius:50%;flex:0 0 34px;width:34px;height:34px}.header-educator-account img{object-fit:cover;box-shadow:0 0 0 1px #ffffff3d}.header-educator-avatar-fallback{color:var(--ink);background:var(--green);place-items:center;font-size:.75rem;font-weight:850;display:grid}.header-educator-copy{text-align:left;gap:1px;display:grid}.header-educator-copy small{color:#ffffff9e;letter-spacing:.08em;text-transform:uppercase;font-size:.58rem;font-weight:750;line-height:1.1}.header-educator-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:128px;font-size:.73rem;line-height:1.2;overflow:hidden}.button{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:0 22px;font-weight:750;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:focus-visible,.text-link:focus-visible,.primary-nav a:focus-visible,.brand:focus-visible,.back-link:focus-visible,.link-button:focus-visible{outline:3px solid var(--green);outline-offset:4px}.button-small{min-height:42px;padding-inline:18px}.button-quiet{color:var(--white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff42}.button-primary{color:var(--white);background:var(--blue);box-shadow:0 12px 30px #0969f347}.button-primary:hover{background:#1676ff;box-shadow:0 15px 34px #0969f361}.button-light{color:var(--ink);background:var(--white)}.button-full{width:100%;margin-top:8px}.button:disabled{cursor:not-allowed;opacity:.52;box-shadow:none}.hero{min-height:760px;color:var(--white);background:radial-gradient(circle at 78% 45%,#0969f338,#0000 31%),radial-gradient(circle at 70% 74%,#09c77e1f,#0000 24%),linear-gradient(145deg,#07111d 12%,#0a1828 62%,#07131f 100%);grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:center;gap:40px;padding:150px max(24px,50vw - 590px) 100px;display:grid;position:relative;overflow:hidden}.hero:after{content:"";border:1px solid #4aa3ff2b;border-radius:50%;width:58vw;height:58vw;position:absolute;bottom:-48%;right:-8%;box-shadow:0 0 0 90px #0969f305,0 0 0 180px #0969f305}.hero-grid{opacity:.12;transform-origin:bottom;background-image:linear-gradient(#ffffff29 1px,#0000 1px),linear-gradient(90deg,#ffffff29 1px,#0000 1px);background-position:50%;background-size:84px 84px;position:absolute;inset:0;transform:perspective(700px)rotateX(67deg)translateY(36%);-webkit-mask-image:linear-gradient(90deg,#0000,#000 48%,#000);mask-image:linear-gradient(90deg,#0000,#000 48%,#000)}.hero-copy,.hero-mark{z-index:2;position:relative}.eyebrow{color:var(--green);letter-spacing:.14em;text-transform:uppercase;margin:0 0 20px;font-size:.76rem;font-weight:800}.eyebrow-dark{color:var(--green-deep)}.hero h1{letter-spacing:-.072em;max-width:760px;margin:0;font-size:clamp(3.7rem,7vw,6.9rem);font-weight:780;line-height:.93}.hero h1 span{color:#0000;background:linear-gradient(100deg, var(--blue-bright), #79cbff 48%, #46e5a5);-webkit-background-clip:text;background-clip:text}.hero-intro{color:#ffffffb3;max-width:680px;margin:32px 0 0;font-size:clamp(1.05rem,1.6vw,1.3rem)}.hero-actions{align-items:center;gap:26px;margin-top:38px;display:flex}.text-link{color:#ffffffd1;font-weight:700;text-decoration:none}.text-link span{margin-left:5px;transition:transform .18s;display:inline-block}.text-link:hover span{transform:translate(4px)}.hero-mark{place-items:center;display:grid}.hero-mark img{z-index:2;filter:drop-shadow(0 28px 42px #00000073);width:min(38vw,430px);position:relative}.mark-halo{aspect-ratio:1;border:1px solid #09c77e4d;border-radius:50%;width:min(44vw,500px);animation:9s linear infinite halo;position:absolute}.mark-halo:before,.mark-halo:after{content:"";border:1px solid #4aa3ff36;border-radius:50%;position:absolute}.mark-halo:before{inset:8%}.mark-halo:after{inset:-8%}@keyframes halo{to{transform:rotate(360deg)}}.principles{color:var(--white);background:var(--blue);grid-template-columns:repeat(3,1fr);padding:0 max(24px,50vw - 590px);display:grid}.principles p{border-right:1px solid #ffffff2e;align-items:center;gap:16px;min-height:92px;margin:0;font-weight:720;display:flex}.principles p+p{padding-left:34px}.principles p:last-child{border:0}.principles span{color:#ffffff8a;font:500 .72rem ui-monospace,SFMono-Regular,Menlo,monospace}.teacher-owned-section{color:var(--white);background:radial-gradient(circle at 12% 18%,#0969f333,#0000 28%),linear-gradient(135deg,#07111d,#0b2034);grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:100px;padding:120px max(24px,50vw - 590px);display:grid}.teacher-owned-heading h2{letter-spacing:-.068em;max-width:520px;margin:0;font-size:clamp(3.2rem,6vw,6rem);line-height:.94}.teacher-owned-experience{align-items:end;gap:17px;margin:56px 0 0;display:flex}.teacher-owned-experience strong{color:var(--green);letter-spacing:-.06em;font-size:clamp(2.8rem,5vw,4.8rem);line-height:.8}.teacher-owned-experience span{color:#ffffff94;max-width:150px;font-size:.78rem;line-height:1.35}.teacher-owned-copy{border-left:1px solid #ffffff2e;align-self:center;max-width:720px;padding-left:46px}.teacher-owned-copy p{color:#ffffffa3;margin:0}.teacher-owned-copy p+p{margin-top:28px}.teacher-owned-copy .teacher-owned-lead{color:var(--white);letter-spacing:-.025em;font-size:clamp(1.2rem,2vw,1.55rem);font-weight:660;line-height:1.42}.teacher-owned-philosophy{border-top:1px solid #ffffff2e;grid-column:1/-1;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:100px;padding-top:72px;display:grid}.teacher-owned-philosophy h3{letter-spacing:-.055em;max-width:470px;margin:0;font-size:clamp(2rem,4vw,3.5rem);line-height:1}.teacher-owned-philosophy-copy{max-width:720px}.teacher-owned-philosophy-copy p{color:#ffffffa3;margin:0}.teacher-owned-philosophy-copy p+p{margin-top:28px}.section{padding:120px max(24px,50vw - 590px)}.section-heading{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:end;gap:70px;margin-bottom:58px;display:grid}.section h2,.closing-section h2{letter-spacing:-.058em;margin:0;font-size:clamp(2.4rem,5vw,4.7rem);line-height:.99}.section-heading>p,.approach-intro>p:last-child{color:var(--muted);margin:0;font-size:1.05rem}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.service-card{border:1px solid var(--line);background:var(--paper-bright);border-radius:20px;min-height:490px;padding:38px;transition:transform .22s,box-shadow .22s;position:relative;overflow:hidden}.service-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}.service-card-blue{color:var(--white);background:linear-gradient(145deg,#0b6cf0,#064ab1);border-color:#1a73ed}.service-card-green{color:var(--ink);background:linear-gradient(145deg,#a7f1d1,#52dca7);border-color:#55dba8}.service-card-ink{color:var(--white);background:linear-gradient(145deg,#15273a,#07111d);border-color:#263b50}.service-card h3{letter-spacing:-.045em;max-width:430px;margin:0;font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.03}.service-card:not(.service-card-inline) h3{margin-top:102px}.service-card>p{opacity:.78;max-width:500px;margin:20px 0 26px}.service-card ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.service-card li{opacity:.72;border:1px solid;border-radius:999px;padding:7px 11px;font-size:.74rem}.service-card .service-details-bullets{gap:9px;padding-left:20px;list-style:outside;display:grid}.service-card .service-details-bullets li{opacity:.84;border:0;border-radius:0;padding:0;font-size:.86rem;line-height:1.35}.service-card-inline{min-height:320px;color:var(--ink);background:var(--white);border-color:#9bb7d8;grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);padding:0;display:grid}.service-card-inline .service-card-header{min-height:320px;color:var(--white);background:radial-gradient(circle at 92% 8%,#4aa3ff94,#0000 34%),linear-gradient(145deg,#0b6cf0,#06449e);flex-direction:column;justify-content:center;padding:46px 52px;display:flex}.service-card-inline.service-card-ink{border-color:#3b5269}.service-card-inline.service-card-ink .service-card-header{background:radial-gradient(circle at 88% 14%,#09c77e42,#0000 34%),linear-gradient(145deg,#142d43,#07111d)}.service-card-price{text-align:left;margin:0}.service-card-price span,.service-card-price small{display:block}.service-card-price span{letter-spacing:-.05em;font-size:clamp(2rem,3vw,2.75rem);font-weight:800;line-height:1}.service-card-price small{color:var(--blue);letter-spacing:.025em;margin-top:7px;font:700 1.05rem ui-monospace,SFMono-Regular,Menlo,monospace}.live-price{opacity:0;white-space:nowrap;min-width:12ch;min-height:1em;transition:opacity .36s,transform .36s;transform:translateY(.12em);display:inline-block!important}.live-price-ready{opacity:1;transform:translateY(0)}.service-card-inline .service-card-header h3{max-width:520px;margin:0;font-size:clamp(2.2rem,4vw,3.5rem)}.service-card-subtitle{color:#ffffffd1;max-width:580px;margin:18px 0 0;font-size:1.05rem;line-height:1.5}.service-card-body{background:var(--white);align-items:center;min-height:130px;padding:30px 38px 34px;display:flex}.service-card-inline .service-card-body{flex-direction:column;justify-content:center;align-items:flex-start;gap:34px;min-height:320px;padding:46px}.service-card-action span{transition:transform .18s}.service-card-action:hover span{transform:translate(4px)}.service-icon{width:84px;height:84px;position:absolute;top:34px;right:36px}.service-card-blue .service-icon span{border:1px solid #ffffffb8;position:absolute;inset:15px 27px;transform:skewY(-34deg)}.service-card-blue .service-icon span:nth-child(2){transform:rotate(60deg)skewY(-34deg)}.service-card-blue .service-icon span:nth-child(3){transform:rotate(-60deg)skewY(-34deg)}.icon-orbit{border:1px solid #07111d8c;border-radius:50%}.icon-orbit span{background:var(--ink);border-radius:50%;width:9px;height:9px;position:absolute;top:50%;left:50%}.icon-orbit span:first-child{transform:translate(-50%,-50%)}.icon-orbit span:nth-child(2){transform:translate(30px,-4px)}.icon-orbit span:nth-child(3){transform:translate(-39px,-4px)}.icon-stack span{border:1px solid #ffffff8c;width:56px;height:42px;position:absolute;transform:skewY(-18deg)}.icon-stack span:nth-child(2){top:14px;left:11px}.icon-stack span:nth-child(3){top:28px;left:22px}.icon-type{border:1px solid var(--line);color:var(--blue);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:1.8rem;display:grid}.mysql-detail-page{background:var(--paper-bright)}.mysql-detail-hero{min-height:630px;color:var(--white);background:radial-gradient(circle at 78% 28%,#4aa3ff3d,#0000 28%),linear-gradient(145deg,#07111d,#0a2239);grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:center;gap:90px;padding:160px max(24px,50vw - 590px) 100px;display:grid;position:relative;overflow:hidden}.mysql-detail-copy{z-index:1;position:relative}.mysql-back-link{color:#ffffffa8;margin-bottom:42px;font-size:.84rem;font-weight:700;text-decoration:none;display:inline-block}.mysql-back-link:hover{color:var(--white)}.mysql-detail-hero h1{letter-spacing:-.07em;max-width:760px;margin:0;font-size:clamp(3.6rem,6.5vw,6.6rem);line-height:.94}.mysql-detail-intro{color:#ffffffb8;max-width:680px;margin:30px 0 0;font-size:clamp(1.08rem,1.7vw,1.32rem)}.mysql-offer{z-index:1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff14;border:1px solid #fff3;border-radius:20px;padding:34px;position:relative}.mysql-offer-price{margin:0}.mysql-offer-price span,.mysql-offer-price small{display:block}.mysql-offer-price span{letter-spacing:-.055em;font-size:clamp(2.2rem,4vw,3.4rem);font-weight:800;line-height:1}.mysql-offer-price small{color:var(--green);margin-top:8px;font:750 1rem ui-monospace,SFMono-Regular,Menlo,monospace}.mysql-offer>p:not(.mysql-offer-price){color:#ffffffad;margin:22px 0 0;font-size:.95rem}.mysql-offer>.button{margin-top:28px}.mysql-flow-section{background:var(--paper);padding:110px max(24px,50vw - 590px)}.mysql-flow-heading{max-width:780px}.mysql-flow-heading h2{letter-spacing:-.06em;margin:0;font-size:clamp(2.6rem,5vw,4.8rem);line-height:.98}.mysql-flow-heading>p:last-child{max-width:620px;color:var(--muted);margin:22px 0 0;font-size:1.02rem}.mysql-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:64px 0 0;padding:0;list-style:none;display:grid}.mysql-flow-phase{min-width:0;position:relative}.mysql-flow-phase:not(:last-child):after{z-index:0;background:linear-gradient(90deg, var(--blue), #83b9ff);content:"";height:2px;position:absolute;top:21px;left:44px;right:-24px}.mysql-flow-phase-header{position:relative}.mysql-flow-marker{z-index:1;border:2px solid var(--blue);background:var(--paper);border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:relative}.mysql-flow-marker:after{background:var(--blue);content:"";border-radius:50%;width:10px;height:10px}.mysql-flow-phase-header h3{letter-spacing:-.035em;margin:25px 0 0;font-size:1.3rem;line-height:1.1}.mysql-flow-phase-header p{min-height:48px;color:var(--muted);margin:10px 0 0;font-size:.82rem;line-height:1.4}.mysql-flow-steps{margin:26px 0 0;padding:0;list-style:none;display:grid}.mysql-flow-steps li{min-height:104px;padding:0 0 26px 26px;position:relative}.mysql-flow-steps li:last-child{min-height:0;padding-bottom:0}.mysql-flow-steps li:before{z-index:1;border:2px solid var(--paper);background:var(--blue);content:"";width:10px;height:10px;box-shadow:0 0 0 1px var(--blue);border-radius:50%;position:absolute;top:4px;left:-5px}.mysql-flow-steps li:not(:last-child):after{z-index:0;content:"";background:#9bb7d8;width:2px;position:absolute;top:9px;bottom:-9px;left:1px}.mysql-flow-steps h4{letter-spacing:-.015em;margin:0;font-size:.9rem;line-height:1.25}.mysql-flow-steps p{color:var(--muted);margin:8px 0 0;font-size:.77rem;line-height:1.42}.mysql-detail-section{padding:120px max(24px,50vw - 590px)}.mysql-detail-heading{max-width:760px;margin-bottom:58px}.mysql-detail-heading h2{letter-spacing:-.06em;margin:0;font-size:clamp(2.6rem,5vw,4.8rem);line-height:.98}.mysql-capability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.mysql-capability-card{border:1px solid var(--line);background:var(--white);border-radius:18px;padding:30px}.mysql-capability-card h3{letter-spacing:-.035em;margin:0;font-size:1.35rem;line-height:1.1}.mysql-capability-card ul{color:var(--muted);gap:9px;margin:22px 0 0;padding-left:18px;display:grid}.mysql-capability-card li{padding-left:3px;font-size:.84rem;line-height:1.42}.mysql-capability-card li::marker{color:var(--blue)}.mysql-detail-closing{color:var(--white);background:linear-gradient(120deg,#0750ba,#0969f3);justify-content:space-between;align-items:end;gap:50px;padding:100px max(24px,50vw - 590px);display:flex}.mysql-detail-closing h2{letter-spacing:-.06em;max-width:800px;margin:0;font-size:clamp(2.5rem,5vw,4.6rem);line-height:.98}.mysql-detail-closing>div>p:last-child{color:#ffffffb8;max-width:650px;margin:24px 0 0}.mysql-detail-closing .button{flex:none}.approach-section{border-top:1px solid var(--line);background:var(--paper-bright);grid-template-columns:minmax(0,.9fr) minmax(400px,1.1fr);gap:100px;display:grid}.approach-intro{align-self:start;position:sticky;top:50px}.approach-intro>p:last-child{max-width:520px;margin-top:26px}.approach-steps{margin:0;padding:0;list-style:none}.approach-steps li{border-left:1px solid var(--line);min-height:160px;padding:14px 20px 34px 52px;position:relative}.approach-steps li:before{border:2px solid var(--paper-bright);background:var(--blue);content:"";width:13px;height:13px;box-shadow:0 0 0 1px var(--blue);border-radius:50%;position:absolute;top:20px;left:-7px}.approach-steps li:last-child{border-color:#0000}.approach-steps span{letter-spacing:-.03em;font-size:1.5rem;font-weight:760}.approach-steps p{max-width:500px;color:var(--muted);margin:10px 0 0}.closing-section{min-height:390px;color:var(--white);background:radial-gradient(circle at 70% 20%,#09c77e26,#0000 30%),linear-gradient(120deg,#07111d,#0a2236);justify-content:space-between;align-items:end;gap:40px;padding:100px max(24px,50vw - 590px);display:flex}.closing-copy{color:#ffffffad;max-width:650px;margin:24px 0 0;font-size:1.05rem}.site-footer{color:#ffffffa3;background:#050c14;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:32px max(24px,50vw - 590px);font-size:.78rem;display:grid}.site-footer p{margin:0}.site-footer p:last-child{justify-self:end}.footer-brand{color:var(--white)}.signin-view{min-height:100vh}.signin-shell{grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);min-height:100vh;display:grid}.signin-context{color:var(--white);background:radial-gradient(circle at 70% 36%,#0969f342,#0000 32%),linear-gradient(145deg,#07111d,#0c2033);flex-direction:column;justify-content:center;padding:80px max(40px,50vw - 590px);display:flex;position:relative;overflow:hidden}.back-link{color:#ffffffad;font-size:.86rem;text-decoration:none;position:absolute;top:38px;left:max(40px,50vw - 590px)}.signin-context h1{letter-spacing:-.065em;max-width:650px;margin:0;font-size:clamp(3.4rem,6vw,6.5rem);line-height:.94}.signin-context>p:not(.eyebrow){color:#ffffffa8;max-width:600px;margin:28px 0 0;font-size:1.05rem}.signin-geometry{border:1px solid #09c77e47;border-radius:50%;width:360px;height:360px;position:absolute;bottom:-130px;right:-130px}.signin-geometry span{background:#4aa3ff59;width:330px;height:1px;position:absolute;top:50%;left:50%}.signin-geometry span:nth-child(2){transform:rotate(60deg)}.signin-geometry span:nth-child(3){transform:rotate(-60deg)}.signin-panel{background:var(--paper-bright);flex-direction:column;justify-content:center;padding:clamp(40px,8vw,110px);display:flex;position:relative}.signin-panel>img{border-radius:50%;margin-bottom:26px;box-shadow:0 12px 35px #07111d2b}.signin-panel h2{letter-spacing:-.055em;margin:0;font-size:clamp(2.3rem,4vw,3.5rem);line-height:1}.signin-panel h2:focus{outline:none}.signin-lead{color:var(--muted);margin:13px 0 34px}.preview-badge{color:var(--green-deep);letter-spacing:.1em;text-transform:uppercase;border:1px solid #b8c6c0;border-radius:999px;padding:6px 11px;font-size:.7rem;font-weight:800;position:absolute;top:32px;right:32px}.signin-actions{gap:12px;display:grid}.educator-auth-tabs{border:1px solid var(--line);background:#e9efec;border-radius:999px;grid-template-columns:1fr 1fr;gap:4px;width:min(100%,390px);margin:0 0 30px;padding:4px;display:grid}.educator-auth-tab{min-height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 15px;font-size:.78rem;font-weight:780}.educator-auth-tab.is-active{color:var(--ink);background:var(--white);box-shadow:0 4px 14px #07111d1a}.educator-auth-tab:focus-visible{outline:3px solid var(--green);outline-offset:3px}.sso-provider-list{gap:14px;display:grid}.sso-provider-button{width:100%;min-height:78px;color:var(--ink);background:var(--white);text-align:left;border:1px solid #bfc8c4;border-radius:13px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:13px;padding:12px 15px;display:grid}.sso-provider-button:disabled{cursor:not-allowed;opacity:1}.sso-provider-icon{width:38px;height:38px;color:var(--white);background:#101820;border-radius:50%;place-items:center;display:grid}.sso-provider-icon svg{width:22px;height:22px}.sso-provider-copy,.sso-provider-copy strong,.sso-provider-copy small{display:block}.sso-provider-copy strong{letter-spacing:-.015em;white-space:nowrap;font-size:1rem}.sso-provider-copy small{color:var(--muted);margin-top:3px;font-size:.72rem;line-height:1.3}.signin-options-note{color:var(--muted);margin:18px 0 28px;font-size:.76rem}.signin-panel .button-quiet{color:var(--ink);border-color:var(--line);background:var(--white)}.signin-panel label,.password-label{font-size:.82rem;font-weight:760}.password-label{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.link-button{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:0;font-size:.78rem}.signin-panel input{width:100%;min-height:52px;color:var(--ink);background:var(--white);border:1px solid #bfc8c4;border-radius:10px;outline:none;padding:0 15px}.signin-panel input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0969f321}.form-note,.form-status{color:var(--muted);text-align:center;margin:4px 0 0;font-size:.72rem}.form-status:not(:empty){color:#07543d;background:#dff8ed;border-radius:8px;padding:10px}.course-registration-page{background:linear-gradient(180deg, #07111d 0, #0a2239 620px, var(--paper) 620px);min-height:100vh;padding:0 max(24px,50vw - 590px) 110px}.course-registration-intro{max-width:850px;min-height:620px;color:var(--white);padding:150px 0 72px}.course-registration-intro h1{letter-spacing:-.068em;max-width:820px;margin:0;font-size:clamp(3.2rem,6vw,6rem);line-height:.94}.course-registration-intro>p:last-child{color:#ffffffb3;max-width:690px;margin:28px 0 0;font-size:1.08rem}.course-registration-form,.course-registration-result{border:1px solid var(--line);background:var(--paper-bright);border-radius:22px;max-width:960px;margin:0 auto;padding:clamp(30px,5vw,58px);box-shadow:0 28px 70px #07111d24}.course-registration-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:36px;padding-bottom:34px;display:flex}.course-registration-heading h2,.course-registration-result h2{letter-spacing:-.055em;max-width:620px;margin:0;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1}.course-registration-price{text-align:right;flex:none}.course-registration-price span,.course-registration-price small{display:block}.course-registration-price span{min-width:3.5ch;min-height:1em;color:var(--blue);letter-spacing:-.055em;opacity:1;font-size:clamp(2rem,4vw,3.1rem);font-weight:800;line-height:1;transition:opacity .36s,transform .36s;transform:translateY(0)}.course-registration-price-loading span{opacity:0;transform:translateY(.12em)}.course-registration-price small{color:var(--muted);margin-top:7px;font:700 .72rem ui-monospace,SFMono-Regular,Menlo,monospace}.course-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:38px;display:grid}.course-form-grid label,.custom-domain-hostname{gap:7px;display:grid}.course-registration-form label>span,.custom-domain-choice legend{font-size:.84rem;font-weight:780}.course-registration-form label>small{color:var(--muted);margin-top:-5px;font-size:.72rem;font-weight:500}.course-registration-form input:not([type=checkbox]),.course-registration-form select{width:100%;min-height:52px;color:var(--ink);background:var(--white);border:1px solid #bfc8c4;border-radius:10px;outline:none;padding:0 14px}.course-registration-form input:focus,.course-registration-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0969f321}.custom-domain-choice{border:1px solid var(--line);border-radius:14px;margin:34px 0 0;padding:28px}.custom-domain-choice legend{padding:0 9px}.course-checkbox{cursor:pointer;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:12px;display:grid}.course-checkbox input{width:18px;height:18px;accent-color:var(--blue);margin:3px 0 0}.course-checkbox span,.course-checkbox strong,.course-checkbox small{display:block}.course-checkbox small{color:var(--muted);margin-top:4px;font-size:.76rem;font-weight:500;line-height:1.45}.custom-domain-hostname{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.registration-notice{color:#16364f;background:#eaf4ff;border:1px solid #b7d5f8;border-radius:12px;margin:28px 0;padding:18px 20px}.registration-notice strong{display:block}.registration-notice p{margin:4px 0 0;font-size:.84rem}.registration-notice ul{gap:7px;margin:10px 0 0;padding-left:19px;display:grid}.registration-notice li{padding-left:3px;font-size:.84rem;line-height:1.45}.registration-notice li strong{display:inline}.course-terms{margin:26px 0}.course-terms>small{color:var(--muted);margin:8px 0 0 32px;font-size:.72rem;display:block}.course-terms a{color:var(--blue);text-underline-offset:3px;font-weight:760}.course-registration-form>.form-status{margin-top:14px}.course-registration-form>.form-note{margin-top:10px}.course-registration-summary{border:1px solid var(--line);background:var(--line);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:38px 0;display:grid;overflow:hidden}.course-registration-summary div{background:var(--white);min-width:0;padding:20px}.course-registration-summary dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:800}.course-registration-summary dd{overflow-wrap:anywhere;margin:7px 0 0;font-weight:700}.course-registration-summary code{font-size:.82rem}.github-setup-card{color:var(--white);background:radial-gradient(circle at 90% 0,#09c77e2e,#0000 34%),linear-gradient(145deg,#142d43,#07111d);border-radius:16px;padding:clamp(24px,4vw,40px)}.github-setup-card h3{letter-spacing:-.045em;margin:0;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.05}.github-setup-card>p:not(.eyebrow,.registration-notice){color:#ffffffb3;max-width:700px}.github-setup-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:28px;display:flex}.github-setup-note{color:#ffffff9e;max-width:380px;margin:0;font-size:.78rem}.github-setup-card .registration-notice{color:#d8eaff;background:#0969f321;border-color:#4aa3ff47;margin-bottom:0}.course-registration-result>.form-status{margin-top:18px}.terms-page{background:linear-gradient(180deg, #07111d 0, #0a2239 560px, var(--paper) 560px);min-height:100vh;padding:0 max(24px,50vw - 590px) 110px}.terms-hero{max-width:940px;min-height:560px;color:var(--white);padding:150px 0 86px}.terms-hero h1{letter-spacing:-.065em;max-width:900px;margin:0;font-size:clamp(3rem,6vw,5.8rem);line-height:.96}.terms-hero>p:last-child{color:#ffffffb8;max-width:720px;margin:25px 0 0;font-size:1.08rem}.terms-effective{color:var(--green);letter-spacing:.04em;text-transform:uppercase;margin:20px 0 0;font:720 .8rem ui-monospace,SFMono-Regular,Menlo,monospace}.terms-layout{grid-template-columns:minmax(230px,.34fr) minmax(0,1fr);align-items:start;gap:50px;max-width:1080px;margin:0 auto;display:grid}.terms-summary{background:#eaf4ff;border:1px solid #b7d5f8;border-radius:16px;padding:25px;position:sticky;top:24px}.terms-summary h2{letter-spacing:-.025em;margin:0;font-size:1.25rem}.terms-summary ul{gap:10px;margin:17px 0 0;padding-left:18px;display:grid}.terms-summary li,.terms-summary p{font-size:.8rem;line-height:1.48}.terms-summary p{color:var(--muted);margin:18px 0 0}.terms-document{border:1px solid var(--line);background:var(--paper-bright);border-radius:20px;padding:clamp(28px,5vw,56px);box-shadow:0 24px 60px #07111d1a}.terms-document section{scroll-margin-top:24px}.terms-document section+section{border-top:1px solid var(--line);margin-top:46px;padding-top:42px}.terms-document h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.35rem,2.5vw,1.8rem);line-height:1.12}.terms-document p,.terms-document li{color:#35475a;font-size:.94rem;line-height:1.72}.terms-document p{margin:16px 0 0}.terms-document ul{gap:8px;margin:16px 0 0;padding-left:22px;display:grid}.terms-document a{color:var(--blue);overflow-wrap:anywhere;font-weight:700}.course-dashboard-page{background:linear-gradient(180deg, #07111d 0, #0a2239 245px, var(--paper) 245px);min-height:100vh;padding:122px max(24px,50vw - 590px) 96px}.course-dashboard-intro{max-width:1120px;color:var(--white);justify-content:space-between;align-items:flex-end;gap:42px;margin:0 auto 28px;display:flex}.course-dashboard-intro .eyebrow{margin-bottom:7px}.course-dashboard-intro h1{letter-spacing:-.05em;margin:0;font-size:clamp(2rem,4vw,2.8rem);line-height:1}.course-dashboard-intro>p{color:#ffffffb8;text-align:right;max-width:520px;margin:0 0 3px;font-size:.9rem}.dashboard-workspace{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:22px;max-width:1180px;margin:0 auto;display:grid}.dashboard-service-nav{border:1px solid var(--line);background:var(--paper-bright);border-radius:16px;padding:18px;position:sticky;top:24px;box-shadow:0 14px 36px #07111d17}.dashboard-service-nav-title{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:0 0 12px;font-size:.68rem;font-weight:800}.dashboard-service-links{gap:7px;display:grid}.dashboard-service-link{border:1px solid #0000;border-radius:11px;gap:2px;padding:12px 13px;text-decoration:none;display:grid}.dashboard-service-link:hover,.dashboard-service-link:focus-visible{background:#f3f8ff;border-color:#b7d5f8;outline:none}.dashboard-service-link[aria-current=page]{color:#07543d;background:#e8f8f1;border-color:#a8e2ca}.dashboard-service-link-heading{align-items:center;gap:9px;display:flex}.dashboard-service-name{font-size:.82rem;font-weight:800;line-height:1.3}.dashboard-service-counts{grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:5px;margin-top:7px;display:grid}.dashboard-service-count{min-height:23px;color:var(--blue);white-space:nowrap;background:#eaf4ff;border:1px solid #b7d5f8;border-radius:999px;justify-content:space-between;align-items:center;gap:5px;padding:3px 7px;line-height:1;display:flex}.dashboard-service-count span{letter-spacing:.045em;text-transform:uppercase;font-size:.52rem;font-weight:800}.dashboard-service-count strong{font-variant-numeric:tabular-nums;text-align:right;min-width:1ch;font-size:.67rem;font-weight:850}.dashboard-service-count-value-loading{visibility:hidden}.dashboard-service-link[aria-current=page] .dashboard-service-count{color:#07543d;background:var(--white);border-color:#a8e2ca}.dashboard-service-link small{color:var(--muted);font-size:.68rem;line-height:1.35}.course-dashboard{border:1px solid var(--line);background:var(--paper-bright);border-radius:18px;min-width:0;padding:clamp(24px,3.4vw,38px);box-shadow:0 20px 52px #07111d1f}.course-dashboard-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:28px;padding-bottom:22px;display:flex}.course-dashboard-heading .eyebrow{margin-bottom:7px}.course-dashboard-heading h2{letter-spacing:-.045em;margin:0;font-size:clamp(1.65rem,3vw,2.25rem);line-height:1}.course-dashboard-subtitle{color:var(--muted);margin:8px 0 0;font-size:.84rem}.course-table-wrap{border:1px solid var(--line);background:var(--white);border-radius:14px;margin-top:22px;overflow-x:auto}.course-table{border-collapse:collapse;width:100%;min-width:1120px}.course-table th{color:var(--muted);letter-spacing:.075em;text-align:left;text-transform:uppercase;background:#f2f5f7;padding:13px 18px;font-size:.68rem}.course-table td{border-top:1px solid var(--line);vertical-align:middle;min-width:150px;padding:19px 18px}.course-table td:first-child{min-width:210px}.course-table td:nth-child(2){min-width:250px}.course-table td strong,.course-table td span,.course-table td a{display:block}.course-table td>span:not(.repository-status),.course-table td>a{color:var(--muted);margin-top:3px;font-size:.76rem}.course-table code{overflow-wrap:anywhere;font-size:.75rem}.course-table-action{text-align:right}.button-table{min-height:40px;color:var(--blue);white-space:nowrap;background:#eaf4ff;border:1px solid #b7d5f8;padding-inline:17px;font-size:.78rem}.repository-status{color:#72520a;background:#fff1c8;border-radius:999px;width:fit-content;padding:4px 8px;font-size:.68rem;font-weight:800}.repository-status-connected{color:#07543d;background:#dff8ed}.custom-domain-cell{min-width:245px!important}.custom-domain-cell>strong,.custom-domain-cell>a{overflow-wrap:anywhere;max-width:230px}.custom-domain-cell>.button{width:fit-content;margin-top:10px}.custom-domain-status{background:#fff1c8;border-radius:999px;width:fit-content;padding:4px 8px;font-weight:800;color:#72520a!important;margin-top:6px!important;font-size:.66rem!important}.custom-domain-status-active{background:#dff8ed;color:#07543d!important}.custom-domain-status-provisioning{background:#e1f0ff;color:#064b88!important}.custom-domain-status-error{background:#ffeadf;color:#7b2d0c!important}.repository-workflow-wait{max-width:230px;color:var(--muted);font-variant-numeric:tabular-nums;margin-top:7px;font-size:.66rem;line-height:1.4;display:block}.dashboard-empty-state{text-align:center;border:1px dashed #bfc8c4;border-radius:14px;margin-top:28px;padding:36px}.dashboard-empty-state h3{letter-spacing:-.025em;margin:0;font-size:1.4rem}.dashboard-empty-state p{max-width:590px;color:var(--muted);margin:10px auto 22px}.course-dashboard>.form-status{margin-top:18px}.repository-modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#030a12b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.repository-modal{background:var(--paper-bright);border-radius:20px;width:min(720px,100%);max-height:calc(100vh - 48px);padding:clamp(28px,5vw,48px);position:relative;overflow-y:auto;box-shadow:0 34px 100px #0006}.repository-modal h2{letter-spacing:-.052em;max-width:600px;margin:0;font-size:clamp(2rem,5vw,3.3rem);line-height:1}.repository-modal>p:not(.eyebrow,.form-status){max-width:620px;color:var(--muted)}.repository-modal-close{width:38px;height:38px;color:var(--ink);border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:50%;place-items:center;padding:0;font-size:1.45rem;display:grid;position:absolute;top:18px;right:18px}.repository-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:28px;display:grid}.repository-choice{min-height:150px;color:var(--ink);border:1px solid var(--line);background:var(--white);text-align:left;cursor:pointer;border-radius:14px;align-content:start;gap:8px;padding:22px;display:grid}.repository-choice:hover,.repository-choice:focus-visible{border-color:var(--blue)}.repository-choice-selected{border-color:var(--blue);box-shadow:0 0 0 3px #0969f31f}.repository-choice strong{font-size:1.02rem}.repository-choice span{color:var(--muted);font-size:.8rem;line-height:1.5}.repository-choice-detail{background:#edf2f5;border-radius:12px;gap:8px;margin-top:20px;padding:20px;display:grid}.repository-choice-detail>span{font-size:.84rem;font-weight:780}.repository-choice-detail>small,.repository-modal-note{color:var(--muted);margin:0;font-size:.72rem}.repository-choice-detail input{width:100%;min-height:50px;color:var(--ink);background:var(--white);border:1px solid #bfc8c4;border-radius:10px;outline:none;padding:0 14px}.repository-choice-detail input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0969f321}.button-secondary{width:fit-content;color:var(--blue);background:var(--white);border:1px solid #b7d5f8}.button-quiet-dark{color:var(--ink);border:1px solid var(--line);background:0 0}.repository-modal-actions{justify-content:flex-end;gap:12px;margin-top:28px;display:flex}.receipt-verification-modal h2{font-size:clamp(1.9rem,4vw,2.8rem)}.receipt-file-control,.receipt-token-field{color:var(--ink);gap:8px;margin-top:20px;font-size:.82rem;font-weight:780;display:grid}.receipt-file-control{background:var(--white);border:1px dashed #aebcc9;border-radius:12px;padding:18px}.receipt-file-control input{color:var(--muted);font:inherit;font-weight:500}.receipt-token-field textarea{resize:vertical;min-height:118px;color:var(--ink);background:var(--white);border:1px solid #bfc8c4;border-radius:10px;outline:none;padding:13px 14px;font:500 .76rem/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.receipt-token-field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0969f321}.receipt-validation-result{border:1px solid var(--line);border-radius:12px;margin-top:20px;padding:18px 20px}.receipt-validation-result h3{margin:0;font-size:1.06rem}.receipt-validation-result>p{margin:7px 0 0}.receipt-validation-valid{background:#eafaf3;border-color:#78d9b4}.receipt-validation-invalid{background:#fff6e9;border-color:#efbd85}.receipt-validation-result dl{gap:8px;margin:18px 0 0;display:grid}.receipt-validation-result dl div{grid-template-columns:105px minmax(0,1fr);gap:10px;display:grid}.receipt-validation-result dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.68rem;font-weight:800}.receipt-validation-result dd{overflow-wrap:anywhere;min-width:0;margin:0;font-size:.8rem}.custom-domain-modal{width:min(780px,100%)}.custom-domain-modal h2{font-size:clamp(1.9rem,4vw,2.8rem)}.custom-domain-url-example{background:#eef6ff;border:1px solid #b7d5f8;border-radius:12px;gap:7px;margin-top:22px;padding:16px 18px;display:grid}.custom-domain-url-example span{color:var(--blue);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:850}.custom-domain-url-example code{overflow-wrap:anywhere;font-size:.77rem}.custom-domain-field{color:var(--ink);gap:7px;margin:22px 0 12px;font-size:.82rem;font-weight:780;display:grid}.custom-domain-field small{color:var(--muted);font-size:.7rem;font-weight:500}.custom-domain-field input{width:100%;min-height:50px;color:var(--ink);background:var(--white);border:1px solid #bfc8c4;border-radius:10px;outline:none;padding:0 14px}.custom-domain-field input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0969f321}.custom-domain-dns-instructions{border:1px solid var(--line);background:var(--white);border-radius:14px;margin-top:24px;padding:21px}.custom-domain-dns-instructions h3{letter-spacing:-.02em;margin:0;font-size:1.22rem}.custom-domain-dns-instructions>div>p:last-child{color:var(--muted);margin:7px 0 0;font-size:.8rem}.custom-domain-dns-instructions dl{border:1px solid var(--line);background:var(--line);border-radius:10px;grid-template-columns:.55fr 1.4fr;gap:1px;margin:18px 0;display:grid;overflow:hidden}.custom-domain-dns-instructions dl div{background:var(--paper-bright);min-width:0;padding:11px 12px}.custom-domain-dns-instructions dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:850}.custom-domain-dns-instructions dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:.76rem}.custom-domain-validation-row{justify-content:space-between;align-items:center;gap:18px;margin-top:20px;display:flex}.custom-domain-validation-row .custom-domain-status{margin-top:0!important}.custom-domain-active-note{color:#07543d;background:#e8f8f1;border-radius:10px;margin:14px 0 0;padding:12px 14px;font-size:.78rem;font-weight:700}.visually-hidden{clip:rect(1px, 1px, 1px, 1px)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}@media (max-width:900px){.hero{grid-template-columns:minmax(0,1fr);min-height:auto;padding-top:145px}.hero-copy{min-width:0;max-width:100%}.hero-mark{opacity:.2;position:absolute;bottom:-60px;right:-80px}.hero-mark img{width:420px}.principles{grid-template-columns:1fr;padding-block:14px}.principles p,.principles p+p{border-bottom:1px solid #ffffff2e;border-right:0;min-height:58px;padding-left:0}.principles p:last-child{border-bottom:0}.teacher-owned-section{grid-template-columns:1fr;gap:58px}.teacher-owned-copy{max-width:760px}.teacher-owned-philosophy{grid-template-columns:1fr;gap:36px}.teacher-owned-philosophy-copy{max-width:760px}.section-heading,.approach-section{grid-template-columns:1fr;gap:42px}.approach-intro{position:static}.signin-shell{grid-template-columns:1fr}.signin-context{min-height:470px;padding:110px 40px 70px}.signin-panel{min-height:620px}.mysql-detail-hero{grid-template-columns:1fr;gap:50px;min-height:auto}.mysql-offer{max-width:520px}.mysql-flow{grid-template-columns:1fr;gap:0}.mysql-flow-phase{padding:0 0 48px 70px}.mysql-flow-phase:last-child{padding-bottom:0}.mysql-flow-phase:not(:last-child):after{background:linear-gradient(180deg, var(--blue), #83b9ff);width:2px;height:auto;inset:44px auto 0 23px}.mysql-flow-marker{position:absolute;top:0;left:-70px}.mysql-flow-phase-header h3{margin:0;padding-top:2px}.mysql-flow-phase-header p{max-width:540px;min-height:0}.mysql-flow-steps{max-width:620px;margin-top:24px}.mysql-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mysql-detail-closing{flex-direction:column;align-items:flex-start}.course-registration-page{background-position-y:0}}@media (max-width:680px){.site-header{width:calc(100% - 32px)}.primary-nav>a:not(.button){display:none}.header-educator-account{padding-right:10px}.header-educator-copy strong{display:none}.brand-name{font-size:.9rem}.hero{padding-inline:20px;padding-bottom:84px}.hero h1{max-width:100%;font-size:clamp(2.85rem,12vw,3.35rem)}.hero-actions{flex-direction:column;align-items:flex-start}.teacher-owned-section{padding:84px 20px}.teacher-owned-experience{flex-direction:column;align-items:flex-start;margin-top:42px}.teacher-owned-copy{border-top:1px solid #ffffff2e;border-left:0;padding:34px 0 0}.teacher-owned-philosophy{padding-top:48px}.section{padding-block:84px}.service-grid{grid-template-columns:1fr}.service-card{min-height:460px;padding:28px}.service-card-inline{grid-template-columns:1fr;min-height:0;padding:0}.service-card-inline .service-card-header{min-height:250px;padding:34px 28px}.service-card-inline .service-card-header h3{margin:0}.service-card-body{min-height:110px;padding:24px 28px 27px}.service-card-inline .service-card-body{gap:28px;min-height:190px;padding:32px 28px}.service-icon{top:26px;right:26px}.mysql-detail-hero{padding:140px 20px 80px}.mysql-detail-hero h1{font-size:clamp(3rem,14vw,4.1rem)}.mysql-back-link{margin-bottom:34px}.mysql-offer{padding:28px}.mysql-flow-section{padding:84px 20px}.mysql-flow{margin-top:46px}.mysql-detail-section{padding:84px 20px}.mysql-detail-heading{margin-bottom:42px}.mysql-capability-grid{grid-template-columns:1fr}.mysql-capability-card{padding:27px}.mysql-detail-closing{padding:84px 20px}.closing-section{flex-direction:column;justify-content:center;align-items:flex-start;min-height:430px}.site-footer{grid-template-columns:1fr}.site-footer p:last-child{justify-self:start}.signin-context{min-height:510px;padding-inline:24px}.back-link{left:24px}.signin-panel{min-height:650px;padding:76px 24px 48px}.sso-provider-button{grid-template-columns:38px minmax(0,1fr);padding:12px 14px}.sso-provider-icon{width:36px;height:36px}.course-registration-page{padding-inline:20px;background:linear-gradient(180deg, #07111d 0, #0a2239 650px, var(--paper) 650px);padding-bottom:84px}.course-registration-intro{min-height:650px;padding:138px 0 60px}.course-registration-heading{flex-direction:column;align-items:flex-start}.course-registration-price{text-align:left}.course-form-grid,.course-registration-summary{grid-template-columns:1fr}.course-registration-form,.course-registration-result{border-radius:16px;padding:27px 22px}.custom-domain-choice{padding:22px 18px}.github-setup-actions{flex-direction:column;align-items:stretch}.terms-page{padding-inline:20px;background:linear-gradient(180deg, #07111d 0, #0a2239 620px, var(--paper) 620px);padding-bottom:84px}.terms-hero{min-height:620px;padding:138px 0 70px}.terms-layout{grid-template-columns:1fr;gap:22px}.terms-summary{position:static}.terms-document{border-radius:16px;padding:28px 22px}.course-dashboard-page{background:linear-gradient(180deg, #07111d 0, #0a2239 285px, var(--paper) 285px);padding:118px 20px 84px}.course-dashboard-intro{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:22px}.course-dashboard-intro>p{text-align:left;margin:0}.dashboard-workspace{grid-template-columns:1fr}.dashboard-service-nav{padding:14px;position:static}.dashboard-service-links{grid-template-columns:repeat(2,minmax(0,1fr))}.course-dashboard{border-radius:16px;padding:24px 22px}.course-dashboard-heading{flex-direction:column;align-items:stretch;gap:18px}.course-table-wrap{background:0 0;border:0;overflow:visible}.course-table,.course-table tbody,.course-table tr,.course-table td{width:100%;min-width:0;display:block}.course-table thead{display:none}.course-table tr{border:1px solid var(--line);background:var(--white);border-radius:12px;margin-bottom:16px;overflow:hidden}.course-table td{border-top:1px solid var(--line);grid-template-columns:98px minmax(0,1fr);gap:12px;padding:14px 16px;display:grid;min-width:0!important}.course-table td:first-child{border-top:0}.course-table td:before{color:var(--muted);content:attr(data-label);letter-spacing:.06em;text-transform:uppercase;font-size:.67rem;font-weight:800}.course-table-action{text-align:left;display:block!important}.course-table-action:before{display:none}.course-table-action .button{width:100%}.repository-choice-grid{grid-template-columns:1fr}.repository-choice{min-height:0}.repository-modal-backdrop{align-items:end;padding:0}.repository-modal{border-radius:20px 20px 0 0;width:100%;max-height:92vh;padding:34px 22px 28px}.repository-modal-actions{flex-direction:column-reverse;align-items:stretch}.repository-modal-actions .button{width:100%}.custom-domain-dns-instructions dl{grid-template-columns:1fr}.custom-domain-validation-row{flex-direction:column;align-items:stretch}.custom-domain-validation-row .button{width:100%}}.interactive-lesson-shell{background:radial-gradient(circle at 12% 8%, #0969f31a, transparent 27rem), linear-gradient(180deg, #f7fbff 0, var(--paper) 34rem);min-height:100vh;padding:64px max(22px,50vw - 460px) 100px}.interactive-lesson-progress{z-index:1000;pointer-events:none;width:100%;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;border-bottom:1px solid #b8cee6;grid-template-columns:1fr auto;gap:4px 18px;padding:7px max(22px,50vw - 460px) 8px;display:grid;position:fixed;top:0;left:0;box-shadow:0 3px 12px #07111d21}.interactive-lesson-progress-label,.interactive-lesson-progress-count{font-size:.68rem;font-weight:800;line-height:1}.interactive-lesson-progress-label{letter-spacing:.04em;text-transform:uppercase}.interactive-lesson-progress-count{color:var(--muted)}.interactive-lesson-progress-track{background:#c5d9ef;border-radius:999px;grid-column:1/-1;height:5px;display:block;overflow:hidden}.interactive-lesson-progress-bar{background:linear-gradient(90deg, var(--blue), var(--green));width:0;height:100%;transition:width .36s;display:block;box-shadow:0 0 8px #09c77e73}.interactive-ready-card,.interactive-lesson-error{border:1px solid var(--line);background:#ffffffe6;border-radius:24px;max-width:900px;margin:5vh auto 0;padding:clamp(30px,6vw,62px);box-shadow:0 30px 90px #07111d1a}.interactive-ready-card h1,.interactive-lesson-error h1{letter-spacing:-.065em;max-width:760px;margin:0;font-size:clamp(2.6rem,7vw,5rem);line-height:.98}.interactive-lesson-subtitle{max-width:720px;color:var(--blue);letter-spacing:-.025em;margin:22px 0 14px;font-size:clamp(1.1rem,2.4vw,1.4rem);font-weight:720}.interactive-ready-card>p:not(.eyebrow):not(.interactive-lesson-subtitle){max-width:720px;color:var(--muted)}.interactive-ready-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:34px 0 30px;display:grid}.interactive-ready-grid section{border:1px solid var(--line);background:var(--paper-bright);border-radius:14px;padding:23px 24px}.interactive-ready-grid h2{letter-spacing:.11em;text-transform:uppercase;margin:0 0 12px;font-size:.74rem}.interactive-ready-grid ul{margin:0;padding-left:20px}.interactive-ready-grid li+li{margin-top:8px}.interactive-instructor{margin:0 0 26px;font-size:.9rem}.interactive-lesson-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:28px;padding:0 0 26px;display:flex}.interactive-lesson-header .eyebrow{margin-bottom:10px}.interactive-lesson-header h1{letter-spacing:-.045em;margin:0;font-size:clamp(1.75rem,4vw,2.8rem);line-height:1}.interactive-lesson-header>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;flex:none;font-size:.78rem;font-weight:780}.interactive-conversation{gap:20px;margin-top:30px;display:grid}.interactive-message,.interactive-lesson-complete{border:1px solid var(--line);background:var(--white);border-radius:18px;padding:clamp(25px,4vw,40px);scroll-margin-top:24px;position:relative;box-shadow:0 16px 44px #07111d0f}.interactive-message:before{border-bottom:1px solid var(--line);border-left:1px solid var(--line);background:var(--white);content:"";width:16px;height:16px;position:absolute;top:24px;left:-9px;transform:rotate(45deg)}.interactive-message-streaming{min-height:120px}.interactive-message>:first-child,.interactive-message>div>:first-child,.interactive-message h1:first-child,.interactive-message h2:first-child,.interactive-message h3:first-child{margin-top:0}.interactive-message p,.interactive-message li{color:#24384a}.interactive-message h1,.interactive-message h2,.interactive-message h3,.interactive-message h4{letter-spacing:-.025em;line-height:1.18}.interactive-message h1{font-size:clamp(1.8rem,4vw,2.55rem)}.interactive-message h2{margin-top:1.8em;font-size:clamp(1.4rem,3vw,1.9rem)}.interactive-message h3{margin-top:1.6em}.interactive-message blockquote{color:var(--muted);border-left:4px solid var(--green);margin:24px 0;padding:2px 0 2px 22px}.interactive-message table{border-collapse:collapse;width:max-content;max-width:100%;display:block;overflow-x:auto}.interactive-message th,.interactive-message td{border:1px solid var(--line);text-align:left;padding:10px 14px}.interactive-message th{background:var(--paper-bright)}.interactive-message pre{color:#e7eef6;background:#0d1b2a;border-radius:12px;padding:20px;overflow-x:auto}.interactive-message :not(pre)>code{color:#074ba8;background:#eaf4ff;border-radius:5px;padding:.16em .4em;font-size:.9em}.interactive-message img{border-radius:12px;margin:24px auto}.interactive-message .katex-display{padding:8px 2px;animation:.22s ease-out both interactive-math-reveal;overflow:auto hidden}.interactive-message .katex:not(.katex-display .katex){animation:.22s ease-out both interactive-math-reveal}@keyframes interactive-math-reveal{0%{opacity:0;filter:blur(3px);transform:translateY(2px)}to{opacity:1;filter:blur();transform:translateY(0)}}.interactive-message>.button{margin-top:24px}.interactive-cursor{vertical-align:-.18em;background:var(--blue);width:8px;height:1.15em;margin-left:3px;animation:.72s step-end infinite interactive-cursor-blink;display:inline-block}@keyframes interactive-cursor-blink{50%{opacity:0}}.interactive-question-prompt{font-size:1.06rem;font-weight:650}.interactive-responses{gap:10px;margin:24px 0 0;display:grid}.interactive-response{width:100%;color:var(--ink);background:var(--white);text-align:left;cursor:pointer;border:1px solid #cbd7e3;border-radius:10px;padding:15px 18px;transition:border-color .15s,background .15s,transform .15s}.interactive-response:hover:not(:disabled){border-color:var(--blue);background:#f3f8ff;transform:translate(3px)}.interactive-response-selected{border-color:var(--blue);background:#eaf4ff}.interactive-response:disabled{cursor:default}.interactive-response p{margin:0}.interactive-feedback{border-radius:10px;margin-top:18px;padding:18px}.interactive-feedback p{margin-top:0}.interactive-feedback-correct{background:#eafaf3;border:1px solid #78d9b4}.interactive-feedback-incorrect{background:#fff6e9;border:1px solid #efbd85}.interactive-feedback .button{margin-top:4px}.interactive-question-summary{color:var(--muted);font-size:.92rem}.interactive-lesson-complete{text-align:center;padding-block:54px}.interactive-lesson-complete h2{letter-spacing:-.045em;margin:0;font-size:clamp(1.8rem,5vw,3rem)}.interactive-lesson-complete>p:last-child{color:var(--muted)}.interactive-completion-receipt{justify-items:center;gap:12px;max-width:620px;margin:28px auto 0;display:grid}.interactive-completion-receipt p{color:var(--muted);margin:0}.interactive-completion-receipt small{max-width:520px;color:var(--muted);line-height:1.5}.interactive-lesson-loading{min-height:70vh;color:var(--muted);place-items:center;font-weight:700;display:grid}.interactive-lesson-loading:after{border:3px solid #cddceb;border-top-color:var(--blue);content:"";border-radius:50%;width:28px;height:28px;margin-top:-28vh;animation:.72s linear infinite interactive-spin}@keyframes interactive-spin{to{transform:rotate(360deg)}}@media (max-width:680px){.interactive-lesson-shell{padding:62px 18px 70px}.interactive-lesson-progress{padding-left:18px;padding-right:18px}.interactive-ready-card,.interactive-lesson-error{border-radius:18px;margin-top:0;padding:30px 22px}.interactive-ready-grid{grid-template-columns:1fr}.interactive-lesson-header{flex-direction:column;align-items:flex-start;gap:14px}.interactive-message,.interactive-lesson-complete{padding:24px 20px}.interactive-message:before{display:none}.receipt-validation-result dl div{grid-template-columns:1fr;gap:2px}}@media (max-width:430px){.brand-name{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(../media/KaTeX_AMS-Regular.25ieegmnh38ts.woff2)format("woff2"),url(../media/KaTeX_AMS-Regular.10y3kupq4t663.woff)format("woff"),url(../media/KaTeX_AMS-Regular.418dr7cz3fo2x.ttf)format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(../media/KaTeX_Caligraphic-Bold.06b-ya9t43ioz.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Bold.2vmk2hva4ctha.woff)format("woff"),url(../media/KaTeX_Caligraphic-Bold.40ltxhe834pns.ttf)format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(../media/KaTeX_Caligraphic-Regular.2eph4dlhid_m9.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Regular.3gxeetazf831f.woff)format("woff"),url(../media/KaTeX_Caligraphic-Regular.07-7u27-nhn_r.ttf)format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(../media/KaTeX_Fraktur-Bold.2sasz-d-jtw8y.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Bold.1alcy76__wdj2.woff)format("woff"),url(../media/KaTeX_Fraktur-Bold.19yqa_tc9d_gx.ttf)format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(../media/KaTeX_Fraktur-Regular.2d10y4xmjvzlf.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Regular.110oo81prr9n5.woff)format("woff"),url(../media/KaTeX_Fraktur-Regular.2qhy34r6a05dn.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(../media/KaTeX_Main-Bold.3-rowy8o6_4ky.woff2)format("woff2"),url(../media/KaTeX_Main-Bold.0v1esh257kqpe.woff)format("woff"),url(../media/KaTeX_Main-Bold.0us_n0tnxlxu7.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(../media/KaTeX_Main-BoldItalic.14r2naom8mrec.woff2)format("woff2"),url(../media/KaTeX_Main-BoldItalic.13355ck5zr48q.woff)format("woff"),url(../media/KaTeX_Main-BoldItalic.3x_u9cepaced0.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(../media/KaTeX_Main-Italic.0lig0v9j0700p.woff2)format("woff2"),url(../media/KaTeX_Main-Italic.0afv392dj4w59.woff)format("woff"),url(../media/KaTeX_Main-Italic.2hkw3230mfwcv.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(../media/KaTeX_Main-Regular.1ryvsdzh2w1_e.woff2)format("woff2"),url(../media/KaTeX_Main-Regular.15u8r3b2y7fv4.woff)format("woff"),url(../media/KaTeX_Main-Regular.0symfa7dqj6jd.ttf)format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(../media/KaTeX_Math-BoldItalic.1oopuu636h4il.woff2)format("woff2"),url(../media/KaTeX_Math-BoldItalic.12pl58orkw9rg.woff)format("woff"),url(../media/KaTeX_Math-BoldItalic.0y5w36a5aq__2.ttf)format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(../media/KaTeX_Math-Italic.32405s1aq8vas.woff2)format("woff2"),url(../media/KaTeX_Math-Italic.0w0b1ugh62cfr.woff)format("woff"),url(../media/KaTeX_Math-Italic.2vkekfblmz5nb.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(../media/KaTeX_SansSerif-Bold.0h3wi2z_eouyg.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Bold.1ovw5p-yjp56g.woff)format("woff"),url(../media/KaTeX_SansSerif-Bold.2d03q85pwxpti.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(../media/KaTeX_SansSerif-Italic.0wkjc4dm2kcit.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Italic.1qavw__2zz8gk.woff)format("woff"),url(../media/KaTeX_SansSerif-Italic.3i-q087b23-m8.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(../media/KaTeX_SansSerif-Regular.2peiewu59z3d-.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Regular.1i4afx8nk8n4r.woff)format("woff"),url(../media/KaTeX_SansSerif-Regular.31pbu25feko_c.ttf)format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(../media/KaTeX_Script-Regular.11h14300o9pd0.woff2)format("woff2"),url(../media/KaTeX_Script-Regular.3110jb9c-bxna.woff)format("woff"),url(../media/KaTeX_Script-Regular.28p_x7iz71ofe.ttf)format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size1-Regular.03lhvx36ekcou.woff2)format("woff2"),url(../media/KaTeX_Size1-Regular.1slf4bh0hc6vm.woff)format("woff"),url(../media/KaTeX_Size1-Regular.1y57-ck23ey8c.ttf)format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size2-Regular.14s5gg-puz6h-.woff2)format("woff2"),url(../media/KaTeX_Size2-Regular.0-kwyvx03omo8.woff)format("woff"),url(../media/KaTeX_Size2-Regular.2u0s-b07k2o9m.ttf)format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size3-Regular.1n1rgzz84z8r9.woff2)format("woff2"),url(../media/KaTeX_Size3-Regular.04o9a_02gu_e8.woff)format("woff"),url(../media/KaTeX_Size3-Regular.1pkn-dge4q0fv.ttf)format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size4-Regular.2sgotkdv3dcyv.woff2)format("woff2"),url(../media/KaTeX_Size4-Regular.3p2r1l7xmebxv.woff)format("woff"),url(../media/KaTeX_Size4-Regular.2uelkfk2yna5e.ttf)format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(../media/KaTeX_Typewriter-Regular.11gr2d2wuwz77.woff2)format("woff2"),url(../media/KaTeX_Typewriter-Regular.12f8myjij3617.woff)format("woff"),url(../media/KaTeX_Typewriter-Regular.3nee9kjfy6nm8.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.16.22"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{white-space:nowrap;width:min-content;position:relative}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{flex-direction:row;display:inline-flex}.katex .thinbox{width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}
pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}
