@font-face{font-family:NB International Pro;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/NBInternationalPro-Light.woff2) format("woff2")}@font-face{font-family:NB International Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/NBInternationalPro-Regular.woff2) format("woff2")}@font-face{font-family:NB International Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/NBInternationalPro-Medium.woff2) format("woff2")}@font-face{font-family:NB International Pro;font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/NBInternationalPro-Bold.woff2) format("woff2")}@font-face{font-family:NB International Pro;font-style:italic;font-weight:400 500;font-display:swap;src:url(/fonts/NBInternationalPro-Italic.woff2) format("woff2")}@font-face{font-family:"STK Bureau Serif";font-style:normal;font-weight:300 400;font-display:swap;src:url(/fonts/STKBureauSerif-Book.woff2) format("woff2")}@font-face{font-family:"STK Bureau Serif";font-style:normal;font-weight:500 600;font-display:swap;src:url(/fonts/STKBureauSerif-Medium.woff2) format("woff2")}:root{color-scheme:light;--bg:#f7f6f5;--surface:#ffffff;--surface-2:#edeceb;--topbar-bg:rgba(255,255,255,0.85);--ink:#191919;--ink-2:#595959;--ink-3:#6b6b6b;--on-ink:#ffffff;--on-accent:#ffffff;--line:rgba(0,0,0,0.06);--track:#eef0f2;--dot-border:#cdd1d6;--blue:#2200ff;--blue-dark:#2200ff;--blue-soft:rgba(34,0,255,0.05);--blue-line:rgba(34,0,255,0.2);--green:#006b4f;--green-soft:#e7f7f0;--red:#d64545;--red-soft:#fbecec;--red-text:#b3261e;--hover-bg:rgba(0,0,0,0.04);--card-hover-border:rgba(0,0,0,0.2);--overlay:rgba(20,18,16,0.4);--amber:#b97f10;--amber-soft:#fdf3df;--radius:2px;--shadow:none;--font:"NB International Pro",system-ui,sans-serif;--serif:"STK Bureau Serif",Georgia,serif;--mono:var(--font-geist-mono),ui-monospace,SFMono-Regular,Menlo,monospace;--font-weight-strong:600;--topbar-h:60px;--notice-h:40px;--chrome-h:var(--topbar-h)}:root:has(.signed-out-notice){--chrome-h:calc(var(--topbar-h) + var(--notice-h))}:root[data-theme=dark]{color-scheme:dark;--bg:#141414;--surface:#1f1f1f;--surface-2:rgba(255,255,255,0.1);--topbar-bg:rgba(31,31,31,0.85);--ink:#ededed;--ink-2:#a3a3a3;--ink-3:#8c8c8c;--on-ink:#141414;--on-accent:#141414;--line:rgba(255,255,255,0.08);--track:rgba(255,255,255,0.1);--dot-border:rgba(255,255,255,0.25);--blue:#49b0ff;--blue-dark:#49b0ff;--blue-soft:rgba(73,176,255,0.12);--blue-line:rgba(73,176,255,0.3);--green:#5fd3a6;--green-soft:rgba(95,211,166,0.14);--red:#f06565;--red-soft:rgba(240,101,101,0.14);--red-text:#ff7b72;--hover-bg:rgba(255,255,255,0.06);--card-hover-border:rgba(255,255,255,0.3);--overlay:rgba(0,0,0,0.6);--amber:#e0a63a;--amber-soft:rgba(224,166,58,0.14)}:root[data-theme=dark] .brand .logo{filter:invert(1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--surface)}body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.4}::selection{background-color:var(--blue);color:var(--bg)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.topbar{top:0;z-index:50;gap:24px;padding:0 28px;height:var(--topbar-h);background:var(--topbar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.signed-out-notice,.topbar{position:sticky;display:flex;align-items:center;border-bottom:1px solid var(--line)}.signed-out-notice{top:var(--topbar-h);z-index:49;justify-content:center;gap:12px;height:var(--notice-h);padding:0 56px;overflow:hidden;background:var(--amber-soft);font-size:14px;color:var(--ink)}.signed-out-notice-link{color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:3px}.signed-out-notice-link:hover{opacity:.8}.signed-out-notice-close{position:absolute;right:16px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--ink-2);cursor:pointer}.signed-out-notice-close:hover{background:var(--hover-bg);color:var(--ink)}.brand{display:flex;align-items:center}.brand .logo{height:20px;width:auto;display:block;margin-top:-3px}.topbar nav{display:flex;gap:22px;font-size:15px;color:var(--ink-2)}.topbar nav a:hover{color:var(--ink)}.topbar .spacer{flex:1 1}.topbar-controls{display:flex;align-items:center;gap:24px;flex:none}.btn{display:inline-flex;align-items:center;gap:8px;border-radius:2px;padding:6px 12px 5px;font-size:14px;font-weight:400;border:1px solid var(--ink);background:transparent;color:var(--ink);transition:all .15s ease}.btn.dark,.btn.primary,.btn:hover{background:var(--ink);color:var(--on-ink)}.btn.dark,.btn.primary{border-color:var(--ink)}.btn.dark:hover,.btn.primary:hover{opacity:.8}.auth-signin{white-space:nowrap}.btn.lg{padding:8px 16px 7px;font-size:16px;border-radius:2px}.shell{display:flex;min-height:calc(100vh - var(--chrome-h));position:relative;z-index:1}.sidebar{--sidebar-w:300px;--sidebar-pad-top:22px;--sidebar-pad-x:16px;--sidebar-pad-bottom:40px;width:var(--sidebar-w);flex-shrink:0;border-right:1px solid var(--line);background:var(--surface);padding:var(--sidebar-pad-top) var(--sidebar-pad-x) var(--sidebar-pad-bottom);position:sticky;top:var(--chrome-h);height:calc(100vh - var(--chrome-h));overflow-y:auto}.lesson-toc .course-label,.lesson-toc .course-name{padding-right:32px}.sidebar .course-label{display:inline-block;width:fit-content;font-family:var(--mono);font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);padding:0 10px;margin-bottom:8px;text-decoration:none}a.course-label:hover{color:var(--ink)}.sidebar .course-name{font-weight:400;font-size:16px;padding:2px 10px 12px}.progress-wrap{padding:0 10px 18px}.progress-bar{height:6px;border-radius:0;background:var(--track);overflow:hidden}.progress-bar>div{height:100%;border-radius:0;background:var(--blue);transition:width .4s ease}.progress-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-3);margin-top:7px}.side-act{margin-bottom:6px}.side-act-head{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);padding:10px 10px 4px}.side-step{display:flex;align-items:flex-start;gap:9px;line-height:1.45;width:100%;text-align:left;cursor:pointer;padding:6px 10px;border:0;background:transparent;border-radius:0;font-size:13px;color:var(--ink-2)}.side-step:hover{background:var(--hover-bg)}.side-step.active{background:var(--blue-soft);color:var(--blue-dark);font-weight:400}.flow-sidebar .side-step.active{animation:side-step-pulse .6s ease-out}@keyframes side-step-pulse{0%{background:var(--blue-line)}}.side-step .dot{width:16px;height:16px;margin-top:1px;border-radius:50%;flex-shrink:0;border:1.5px solid var(--dot-border);display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--on-accent)}.side-step.done .dot{background:var(--green);border-color:var(--green)}.side-stops{padding:1px 0 4px 28px}.side-stop{display:block;width:100%;text-align:left;cursor:pointer;padding:4px 10px;border:0;background:transparent;font-size:12.5px;color:var(--ink-3)}.side-stop:hover{background:var(--hover-bg)}.side-stop.active{color:var(--blue-dark);font-weight:400}.lesson-toc-list .side-step .toc-num{font-family:var(--mono);font-size:11px;line-height:inherit;color:var(--ink-3);flex-shrink:0}.lesson-toc-list .side-step .toc-new{margin-left:auto;flex:none}.side-step.locked{opacity:.55;cursor:default}.side-step.locked:hover{background:transparent}.main{flex:1 1;min-width:0;display:flex;flex-direction:column}.hero{display:grid;grid-template-columns:minmax(320px,1fr) minmax(0,560px);gap:48px;align-items:center;padding:64px 56px;border-bottom:1px solid var(--line);background:var(--surface)}.hero-art{aspect-ratio:16/9;border-radius:2px;border:1px solid var(--line);background:var(--surface) url(/abstract-generic-1.jpg) center /cover no-repeat}:root[data-theme=dark] .hero-art{background-image:url(/abstract-generic-1-dark.jpg)}.hero .eyebrow{display:inline-flex;align-items:center;font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-2);margin-bottom:18px}.hero h1{font-size:64px;line-height:1;font-weight:400;letter-spacing:-1.92px;max-width:640px;transform:translateX(-4px)}.hero p.sub{margin-top:18px;font-size:18px;color:var(--ink-2);max-width:520px}.hero .hero-cta{margin-top:28px;display:flex;gap:12px;align-items:center}.hero .stats{display:flex;justify-content:space-between;margin-top:40px}.hero .stat{flex:1 1}.hero .stat b{display:block;font-size:22px;font-weight:400}.hero .stat span{font-family:var(--mono);font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3)}.section{padding:72px 56px 20px}.section+.section{padding-top:8px}.section h2{font-size:32px;font-weight:400;line-height:1.2;letter-spacing:-.64px;margin-bottom:6px}.section .section-sub{color:var(--ink-3);font-size:14px;margin-bottom:26px}.module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:18px}.module-card{background:var(--surface);border:1px solid var(--line);border-radius:2px;padding:22px;display:flex;flex-direction:column;gap:12px;transition:transform .15s ease,border-color .15s ease}.module-card:hover{transform:translateY(-2px);border-color:var(--card-hover-border)}.module-card.coming-soon{opacity:.6;cursor:default}.module-card.coming-soon:hover{transform:none;border-color:var(--line)}.module-card .row{display:flex;align-items:center;justify-content:space-between}.module-card .num{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3)}.module-card h3{font-size:20px;font-weight:400;line-height:1.2;transform:translateX(-1px)}.module-card p{font-size:13.5px;color:var(--ink-2);flex:1 1}.module-card .meta{display:flex;align-items:center;gap:14px;font-size:12.5px;color:var(--ink-3)}.badge{font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;padding:3px 9px;border-radius:2px}.badge.todo{background:var(--surface-2);color:var(--ink-2)}.badge.progress{background:var(--blue-soft);color:var(--blue-dark)}.badge.done{background:var(--green-soft);color:var(--green)}.crumbs{font-size:13px;color:var(--ink-3);margin-bottom:18px}.crumbs a:hover{color:var(--ink)}.module-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;padding:48px 56px;border-bottom:1px solid var(--line);background:var(--surface)}.module-hero .eyebrow{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--blue-dark);margin-bottom:10px}.module-hero h1{font-size:40px;font-weight:400;letter-spacing:-1.2px;line-height:1.04}.module-hero .tagline{margin-top:12px;color:var(--ink-2);font-size:15.5px}.module-hero .meta-row{display:flex;gap:18px;margin:20px 0 26px;font-size:13px;color:var(--ink-3)}.module-hero .btn{margin-top:28px}.objectives{margin-top:8px}.objectives h4{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}.objectives li{list-style:none;display:flex;gap:11px;padding:7px 0;font-size:13.8px;color:var(--ink-2)}.objectives li:before{content:"✓";color:var(--blue);flex-shrink:0}.course-art img{display:block;width:100%;object-fit:cover}.course-art img,.video-card{aspect-ratio:16/9;border-radius:2px;border:1px solid var(--line)}.video-card{overflow:hidden;background:#0e1116;position:relative;display:flex;align-items:center;justify-content:center;color:#fff}.video-card .vignette{position:absolute;inset:0}.video-card .play{position:relative;width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.95);color:#191919;display:flex;align-items:center;justify-content:center;font-size:20px;border:0}.video-card .vid-label{position:absolute;left:18px;bottom:14px;font-size:12.5px;color:rgba(255,255,255,.85)}.video-card .vid-dur{position:absolute;right:16px;bottom:14px;font-size:11.5px;background:rgba(0,0,0,.55);padding:3px 8px;border-radius:0}.video-note{font-size:12px;color:var(--ink-3);margin-top:10px}.lesson-list{padding:40px 56px 72px}.lesson-list h2{font-size:20px;font-weight:400;margin-bottom:16px}.lesson-row{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:0;padding:15px 20px;margin-bottom:10px;transition:border-color .15s ease}.lesson-row:hover{border-color:var(--card-hover-border)}.lesson-row .idx{font-family:var(--mono);font-size:12px;font-weight:400;line-height:1.45;color:var(--ink-3);width:36px}.lesson-row .t{flex:1 1;font-size:14.5px;font-weight:400}.lesson-row .type{font-family:var(--mono);font-size:10.5px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-2);background:var(--bg);border-radius:2px;padding:4px 10px}.lesson-row .type.sandbox{background:var(--blue-soft);color:var(--blue-dark)}.lesson-row .state{font-size:12px;color:var(--ink-3);width:92px;text-align:right;margin-left:12px}.lesson-row .state.done{color:var(--green)}.lesson-row .state.progress{color:var(--blue-dark)}.lesson-row .state.new{width:auto;padding:3px 9px;border-radius:2px;background:var(--blue-soft);color:var(--blue-dark)}.course-changed{margin:14px 0 24px;font-size:13px;color:var(--ink-2)}.course-changed a{color:var(--blue-dark);text-decoration:underline;text-underline-offset:2px}.changelog-hero{padding-bottom:8px}.changelog-body h2{margin:28px 0 8px;color:var(--ink-3);font-size:13px;font-weight:500}.changelog-body li,.changelog-body p{color:var(--ink-2);font-size:14px}.changelog-body p+p,.changelog-body ul{margin-top:8px}.changelog-body a{color:var(--blue-dark);text-decoration:underline;text-underline-offset:2px}.changelog-empty{margin:22px 0;color:var(--ink-3);font-size:14px}.lesson-row.coming-soon{opacity:.55}.lesson-row.coming-soon:hover{border-color:var(--line)}.lesson-page{flex:1 1;padding:56px 56px 80px;background:var(--surface);border-bottom:1px solid var(--line)}.lesson-page-inner{max-width:760px;margin:0 auto}.lesson-page .crumbs{margin-bottom:22px}.lesson-page .lesson-kicker{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--blue-dark);margin-bottom:8px}.lesson-page h1{font-size:40px;font-weight:400;letter-spacing:-1.2px;line-height:1.04;margin-bottom:24px}.lesson-page .video-card.lesson-video{margin-bottom:8px}.lesson-page .lesson-video{background:#000}.lesson-video-embed{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden}.lesson-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.lesson-page .lesson-reading{margin:16px 0 24px;border:1px solid var(--line);border-radius:var(--radius)}.lesson-page .lesson-reading summary{cursor:pointer;padding:14px 18px;font-size:14px;font-weight:500;color:var(--ink-2);list-style-position:inside}.lesson-page .lesson-reading summary:hover{color:var(--ink)}.lesson-page .lesson-reading .script{padding:4px 18px 8px}.lesson-page .script p{font-family:var(--serif);font-size:16px;line-height:1.7;color:var(--ink-2);margin-bottom:16px}.lesson-page .script img{display:block;max-width:100%;height:auto;margin:24px 0;border:1px solid var(--line);border-radius:var(--radius)}.lesson-page .script li{font-family:var(--serif)}.script b,.script strong{font-family:var(--serif);font-weight:var(--font-weight-strong);color:var(--ink)}.lesson-page .script pre{margin:0 0 16px;padding:14px 16px;overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);font-family:var(--mono);font-size:13px;line-height:1.6;color:var(--ink)}.lesson-page .script pre code{font:inherit}.script a{color:var(--blue);text-decoration:underline;text-decoration-color:var(--blue-line);text-underline-offset:3px}.script a:hover{text-decoration-color:currentColor}.script a b,.script a strong{color:inherit}.quiz-feedback code,.quiz-option code,.quiz-prompt code,.script :not(pre)>code{font-family:var(--mono);font-size:.875em}.script ol,.script ul{padding-left:1.4em;margin:0 0 16px}.script li{margin-bottom:8px}.script table{width:100%;border-collapse:collapse;margin:0 0 20px;font-size:15px;line-height:1.6;color:var(--ink-2);border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}.script td,.script th{padding:12px 16px 12px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.script th{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--ink);background:transparent}.script tbody tr:last-child td{border-bottom:none}.script .callout{margin:0 0 16px;padding:16px 18px;background:var(--blue-soft);border-left:3px solid var(--blue)}.script .callout .callout-label{display:block;font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--blue-dark);margin-bottom:6px}.script .callout p{margin:0}.lesson-page-nav{display:flex;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.quiz-card{background:var(--surface);border:1px solid var(--line);border-radius:2px;padding:28px 32px;margin-top:24px}.quiz-progress{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}.quiz-prompt{font-size:20px;font-weight:400;line-height:1.4;margin-bottom:20px}.quiz-options{display:flex;flex-direction:column;gap:10px}.quiz-option{text-align:left;padding:13px 16px;font-size:14.5px;line-height:1.5;border:1px solid var(--line);background:var(--bg);color:var(--ink);transition:all .15s ease}.quiz-option:hover:not(:disabled){border-color:var(--blue);background:var(--blue-soft)}.quiz-option:disabled{cursor:default;color:var(--ink-2)}.quiz-option.selected{border-color:var(--blue);background:var(--blue-soft);color:var(--ink)}.quiz-option.correct{border-color:var(--green);background:var(--green-soft);color:var(--ink)}.quiz-option.wrong{border-color:var(--red);background:var(--red-soft);color:var(--ink)}.quiz-feedback{margin-top:18px;padding:14px 16px;border-left:3px solid var(--green);background:var(--green-soft);font-size:14px}.quiz-feedback.wrong{border-left-color:var(--amber);background:var(--amber-soft)}.quiz-outdated{margin-bottom:18px}.quiz-feedback b{display:block;font-size:13px;letter-spacing:.02em;margin-bottom:4px}.quiz-feedback p{margin:0;color:var(--ink-2)}.quiz-feedback a,.quiz-prompt a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}.quiz-feedback a.signed-out-notice-link{color:var(--ink)}.quiz-nav{display:flex;gap:12px;margin-top:20px}.quiz-results{text-align:center;padding:40px 32px}.quiz-score{font-family:var(--mono);font-size:40px;font-weight:400;letter-spacing:-.02em}.quiz-score-note{color:var(--ink-2);margin-top:8px;font-size:14.5px}.quiz-results .quiz-nav{justify-content:center;margin-top:28px}.exam-review{display:grid;gap:18px;margin-top:20px;text-align:left}.exam-review>.quiz-card{margin-top:0}.quiz-results .quiz-signed-out{text-align:left;margin-top:22px}.lesson-shell{display:flex;height:calc(100vh - var(--chrome-h) - 54px)}.pane-sandbox{flex:1.25 1;min-width:0;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg)}.sandbox-frame{flex:0 0 auto;max-width:100%;max-height:100%;border:1px solid var(--line);border-radius:2px;background:var(--surface);display:flex;flex-direction:column;overflow:hidden}.sandbox-chrome{position:relative;display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--bg)}.sandbox-chrome .walkthrough-progress{position:absolute;left:0;bottom:0;height:2px;background:var(--blue);transition:width .32s ease}.sandbox-chrome .dots span{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}.sandbox-chrome .dots span:first-child{background:#f56b62}.sandbox-chrome .dots span:nth-child(2){background:#f5bd4f}.sandbox-chrome .dots span:nth-child(3){background:#53c64d}.sandbox-chrome .url{flex:1 1;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:0;font-family:var(--mono);font-size:11px;color:var(--ink-3);padding:5px 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sandbox-chrome .live{font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:.03em;color:var(--on-accent);background:var(--green);border-radius:2px;padding:3px 8px}.flow-bottom-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-top:1px solid var(--line);background:var(--surface)}.flow-bottom-bar .btn[disabled]{opacity:.4;pointer-events:none}.congrats{padding:96px 56px 72px;text-align:center;border-bottom:1px solid var(--line);background:var(--surface)}.congrats-badge{width:72px;height:72px;margin:0 auto 24px;border-radius:50%;background:var(--blue);color:var(--on-accent);font-size:30px;display:flex;align-items:center;justify-content:center}.congrats .eyebrow{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--blue-dark)}.congrats h1{font-size:64px;font-weight:400;letter-spacing:-1.92px;line-height:1;margin:12px 0 14px}.congrats .sub{font-size:17px;color:var(--ink-2);max-width:600px;margin:0 auto}.congrats-stats{display:flex;justify-content:center;gap:56px;margin-top:40px}.congrats-stats .stat b{display:block;font-size:26px;font-weight:300;letter-spacing:-.5px}.congrats-stats .stat span{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3)}.congrats .hero-cta{margin-top:36px;display:flex;justify-content:center;gap:12px}.next-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}.next-card{border:1px solid var(--line);background:var(--surface);padding:22px;display:flex;flex-direction:column;gap:10px;transition:border-color .15s,transform .15s}.next-card:hover{transform:translateY(-2px);border-color:var(--card-hover-border)}.next-card .num{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--blue-dark)}.next-card h3{font-size:20px;font-weight:400;line-height:1.2}.next-card p{font-size:13.5px;color:var(--ink-2);flex:1 1}.callout,.next-card .go{font-size:13px;color:var(--blue-dark)}.callout{border:1px solid var(--blue-line);background:var(--blue-soft);border-radius:2px;padding:14px 16px;margin:18px 0}.callout b{display:block;margin-bottom:4px;font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase}.footer{margin-top:auto;border-top:1px solid var(--line);background:var(--surface);padding:26px 56px;display:flex;align-items:center;gap:18px;font-size:12.5px;color:var(--ink-3);position:relative;z-index:1}.footer .made-with{position:absolute;left:50%;transform:translateX(-50%)}.footer .heart{color:var(--red-text)}body:has(.shell.flow-mode){overflow:hidden;height:100vh}.shell.flow-mode{height:calc(100vh - var(--chrome-h));min-height:0}.shell.flow-mode #flow-sidebar-slot{height:100%}.shell.flow-mode .sidebar{--sidebar-w:240px;--sidebar-pad-top:18px;--sidebar-pad-x:10px;--sidebar-pad-bottom:32px;position:relative;top:0;height:100%}.shell.flow-mode .lesson-shell{height:calc(100vh - var(--chrome-h))}.sidebar{transition:width .25s ease,padding .25s ease}.sidebar.collapsed{width:40px;padding-left:8px;padding-right:8px;overflow:hidden}.sidebar>*{transition:opacity .15s ease}.sidebar.no-anim,.sidebar.no-anim>*{transition:none}.side-collapse{position:absolute;top:10px;right:8px;z-index:2;width:24px;height:24px;padding:0;border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:2px;font-size:13px;line-height:1;color:var(--ink-3);display:flex;align-items:center;justify-content:center}.side-collapse:hover{color:var(--ink);background:var(--hover-bg)}.sidebar.collapsed>:not(.side-collapse){opacity:0;visibility:hidden;pointer-events:none}.shell.flow-mode .pane-sandbox{flex:1 1}.sandbox-scale-wrap{position:relative;overflow:hidden;background:var(--bg)}.sandbox-stage{position:absolute;top:50%;left:50%;transform-origin:center center;background:var(--bg);--swap-fade:180ms}.sandbox-screen{position:absolute;top:0;left:0;width:100%;height:100%;border:0;background:transparent;opacity:1}.sandbox-screen.hidden-frame{opacity:0;pointer-events:none;z-index:-1}.sandbox-screen.entering,.sandbox-screen.leaving{z-index:1;transition:opacity var(--swap-fade) ease}.sandbox-frame.loading{width:min(100%,1280px);height:100%}.sandbox-body{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.sandbox-loading{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:var(--bg);color:var(--ink-2);font-family:var(--mono);font-size:12px}.sandbox-spinner{width:28px;height:28px;border:3px solid var(--track);border-top-color:var(--ink);border-radius:50%;animation:sandbox-spin .8s linear infinite}@keyframes sandbox-spin{to{transform:rotate(1turn)}}.sandbox-chrome .walkthrough-step{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);white-space:nowrap;animation:step-tick .7s ease-out}@keyframes step-tick{0%{color:var(--blue)}}@media (prefers-reduced-motion:reduce){.sandbox-stage{--swap-fade:0ms}.flow-sidebar .side-step.active,.sandbox-chrome .walkthrough-step{animation:none}.sandbox-chrome .walkthrough-progress{transition:none}}@media (max-width:1100px){.hero,.module-hero{grid-template-columns:1fr}}.learning-card{cursor:default}.learning-card .progress-bar{margin:10px 0 8px}.learning-card .learning-cta{margin-top:12px}.learning-hero{padding-bottom:8px}.learning-empty p{margin-top:0}.learning-empty .btn{margin-top:14px}.cert-main,.signin-main{min-height:calc(100vh - var(--chrome-h));padding:48px 24px;display:flex;justify-content:center;align-items:flex-start;position:relative;z-index:1}.cert-card,.signin-card{width:100%;max-width:440px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:32px}.cert-card{max-width:620px;text-align:center}.cert-main .section{width:100%;max-width:960px}.signin-card h1{margin:0 0 8px}.signin-card>.btn{margin-top:20px}.signin-card form{display:flex;flex-direction:column;gap:10px;margin-top:16px}.signin-card label{font-size:13px;font-weight:600}.signin-card input{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;font:inherit;font-size:15px;background:var(--surface);color:var(--ink)}.signin-card input:focus{outline:2px solid var(--blue);outline-offset:-1px}.muted{color:var(--ink-3)}.signin-card .notice{font-size:13.5px;color:var(--ink-2);margin:0}.signin-card .error{font-size:13.5px;color:var(--red-text);margin:12px 0 0}.cert-holder{font-size:17px;margin:10px 0 4px}.cert-id{font-family:var(--mono);font-size:12px;color:var(--ink-3);margin-top:18px}.cert-card .hero-cta{display:flex;justify-content:center;gap:12px;margin-top:22px}.cert-cta{margin-top:18px}a.avatar{text-decoration:none}.avatar{width:32px;height:32px;border-radius:50%;background:var(--blue);color:var(--on-accent);font-size:12.5px;font-weight:600;display:flex;align-items:center;justify-content:center}.auth-placeholder{visibility:hidden}button.avatar{border:none;padding:0;cursor:pointer;font-family:inherit}.auth-menu{position:relative;--auth-menu-gutter:20px}.auth-menu-pop{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:6px 0;z-index:50}.auth-menu-email{padding:8px var(--auth-menu-gutter);font-size:13.5px;word-break:break-all}.auth-menu-role{margin-top:-6px;padding:0 var(--auth-menu-gutter) 8px;color:var(--ink-2);font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase}.auth-menu-error{padding:6px var(--auth-menu-gutter);font-size:12.5px;color:var(--red-text)}.auth-menu-sep{border-top:1px solid var(--line);margin:0 0 6px}.auth-menu-item{display:block;width:100%;padding:8px var(--auth-menu-gutter);background:none;border:none;color:var(--ink);font:inherit;font-size:13.5px;text-align:left;text-decoration:none;cursor:pointer}.auth-menu-item:hover{background:var(--hover-bg)}.auth-menu-locale{display:flex;align-items:center;justify-content:space-between;gap:16px}.auth-menu-check{flex:none;color:var(--ink-3)}.lang-menu{position:relative;--auth-menu-gutter:20px}.lang-menu-button{display:flex;align-items:center;gap:6px;padding:6px 10px;background:none;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);font-family:var(--mono);font-size:12px;letter-spacing:.03em;cursor:pointer}.lang-menu-button:hover{background:var(--hover-bg)}.lang-menu-globe{flex:none;color:var(--ink-2)}.lang-menu-pop{min-width:190px}.theme-menu .lang-menu-button{padding:6px 8px}.theme-menu .lang-menu-globe{color:var(--ink)}.domain-overflow{position:relative;display:inline-block}.domain-overflow-more{border:none;padding:0;background:none;color:var(--blue);font:inherit;cursor:pointer;white-space:nowrap}.domain-overflow-more:hover{text-decoration:underline}.domain-overflow-pop{position:absolute;top:calc(100% + 8px);left:0;min-width:180px;max-width:320px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:6px 0;z-index:50}.domain-overflow-item{display:block;padding:4px 14px;font-size:13.5px;word-break:break-all}.enterprise-course-report{margin:28px 0}.enterprise-course-report-label{color:var(--ink-2);font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;margin-bottom:14px;text-transform:uppercase}.enterprise-course-report-rows{display:grid;gap:14px}.enterprise-course-report-row{display:grid;gap:7px;color:inherit;text-decoration:none}.enterprise-course-report-row:hover .enterprise-course-report-header span:first-child{color:var(--blue);text-decoration:underline}.enterprise-course-report-header{display:flex;justify-content:space-between;gap:16px}.enterprise-course-report-header span:last-child{color:var(--ink-2);font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.enterprise-course-report-track{height:6px;background:var(--line);border-radius:2px;overflow:hidden}.enterprise-course-report-fill{height:100%;background:var(--green);border-radius:2px}.section-divider{border:0;border-top:1px solid var(--line);margin:28px 0}.section-eyebrow{font-weight:400;letter-spacing:.03em;margin-bottom:14px;text-transform:uppercase}.roster-action,.section-eyebrow{color:var(--ink-2);font-family:var(--mono);font-size:12px}.roster-action{border:1px solid var(--line);border-radius:2px;background:transparent;padding:2px 8px;cursor:pointer;transition:all .15s ease}.roster-action:hover{border-color:var(--ink);color:var(--ink)}.roster-action:disabled{opacity:.5;cursor:default}.roster{margin:12px 0 20px}.invite-filter{display:inline-flex;align-items:center;gap:6px;margin-bottom:10px}.roster-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:12px}.roster-search{flex:1 1;max-width:360px;border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;font:inherit;font-size:15px;background:var(--surface);color:var(--ink)}.roster-search:focus{outline:2px solid var(--blue);outline-offset:-1px}.roster-count{font-family:var(--mono);font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3)}.completions-toolbar{flex-wrap:wrap}.completions-toolbar .roster-search{box-sizing:border-box;height:38px;padding:0 12px;font-size:14px}.completions-select{box-sizing:border-box;height:38px;border:1px solid var(--line);border-radius:var(--radius);padding:0 10px;font:inherit;font-size:14px;background:transparent;color:var(--ink)}.completions-toggle{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-2);cursor:pointer;white-space:nowrap}.completions-footer{display:flex;justify-content:flex-end;margin-top:12px}.completions-download{border:1px solid var(--line);border-radius:var(--radius);background:transparent;padding:9px 14px;font-family:var(--mono);font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-2);cursor:pointer;transition:color .15s ease,border-color .15s ease}.completions-download:hover:not(:disabled){color:var(--ink);border-color:var(--ink-3)}.completions-download:disabled{opacity:.4;cursor:default}.completions-count{display:block;margin:0 0 12px}.pager{display:flex;align-items:center;gap:16px;margin-top:12px}.pager-range{color:var(--ink-3);margin-right:auto}.pager-btn,.pager-range{font-family:var(--mono);font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.03em}.pager-btn{border:none;background:transparent;padding:0;color:var(--ink-2);cursor:pointer;transition:color .15s ease}.pager-btn:hover:not(:disabled){color:var(--ink)}.pager-btn:disabled{opacity:.4;cursor:default}.roster-table{width:100%;border-collapse:collapse;font-size:15px;color:var(--ink-2);border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}.roster-table td,.roster-table th{text-align:left;padding:12px 16px 12px 0;border-bottom:1px solid var(--line);vertical-align:middle}.roster-table th{font-family:var(--mono);font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.03em;color:var(--ink)}.roster-table tbody tr:last-child td{border-bottom:none}.roster-table tbody tr:hover{background:var(--hover-bg)}.roster-link{display:flex;flex-direction:column;gap:1px;text-decoration:none;color:var(--ink)}.roster-table td.tree-child{position:relative;padding-left:34px}.tree-child .roster-link{display:inline-flex;vertical-align:middle}.tree-branch{position:absolute;left:14px;top:0;bottom:50%;width:12px;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}.roster-name{color:var(--blue)}.roster-link:hover .roster-name{text-decoration:underline}.roster-email{font-size:12.5px;color:var(--ink-3)}.roster-progress{font-size:13px}.roster-progress,.roster-role{font-family:var(--mono);color:var(--ink-2)}.roster-role{display:inline-block;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;border-radius:var(--radius);background:var(--hover-bg)}.roster-role.is-admin{background:var(--blue-soft);color:var(--blue)}.roster-role.is-complete{background:var(--green-soft);color:var(--green)}.roster-empty{color:var(--ink-3);text-align:center;padding:20px}.user-detail-back{font-family:var(--mono);font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px}.user-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:16px 0 4px}.user-meta dt{font-family:var(--mono);font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3);margin-bottom:4px}.user-meta dd{margin:0;font-size:15px}.user-block{padding-left:0;padding-right:0}.user-block h3{font-size:20px;font-weight:400;margin-bottom:12px}.modal-overlay{position:fixed;inset:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;padding:24px;z-index:100}.modal{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:20px;width:100%;max-width:560px;max-height:80vh;overflow-y:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.modal-head h3{margin:0}.enterprise-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.enterprise-head .btn{flex-shrink:0}.enterprise-form{display:flex;flex-direction:column;gap:12px}.enterprise-form-field{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--ink-3)}.enterprise-form-field input,.enterprise-form-field textarea{width:100%;max-width:none;resize:vertical}.enterprise-form .btn{align-self:flex-start}.domain-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.domain-row{gap:12px}.domain-name,.domain-row{display:flex;align-items:center}.domain-name{flex:1 1;gap:8px;font-size:14px;color:var(--ink);overflow-wrap:anywhere;border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;background:var(--surface)}.domain-name-removed{color:var(--ink-3);text-decoration:line-through}.domain-removed-tag{font-family:var(--mono);font-size:11px;text-transform:uppercase;text-decoration:none;color:var(--ink-3)}.domain-row-input input{flex:1 1}.domain-action-col{width:84px;flex-shrink:0;display:flex;justify-content:flex-start}.confirm-actions{display:flex;gap:12px;margin-top:16px}@media (max-width:720px){:root{--topbar-h:82px;--notice-h:64px}.topbar{flex-wrap:wrap;height:auto;min-height:var(--topbar-h);padding:10px 14px;gap:8px 12px}.signed-out-notice{padding:8px 44px 8px 14px;font-size:13px;line-height:1.35;text-align:center}.signed-out-notice-close{right:8px}.topbar .spacer{display:none}.brand{flex:1 1;min-width:0}.topbar-controls{gap:8px}.topbar nav{order:10;width:100%;gap:16px;font-size:14px;overflow-x:auto}.topbar nav a{flex:none;white-space:nowrap}.brand .logo{height:15px;max-width:100%;object-fit:contain;object-position:left center}.topbar .btn{padding:5px 8px 4px;font-size:13px}.topbar .lang-menu-button{padding:5px 6px}.hero{padding:40px 20px;gap:28px}.hero h1{font-size:44px;letter-spacing:-1.3px}.section{padding:48px 20px 20px}.module-hero{padding:36px 20px;gap:28px}.module-hero h1{font-size:32px}.lesson-page{padding:32px 20px 64px}.lesson-list{padding:32px 20px 56px}.lesson-row{gap:10px;padding:13px 14px}.lesson-row .idx{width:22px}.lesson-row .state{width:auto;margin-left:4px}.shell:not(.flow-mode){flex-direction:column}.shell:not(.flow-mode) .sidebar{position:static;width:100%;height:auto;max-height:45vh;border-right:0;border-bottom:1px solid var(--line)}.shell:not(.flow-mode) .sidebar .side-collapse{display:none}.shell:not(.flow-mode) .sidebar.collapsed{padding:var(--sidebar-pad-top) var(--sidebar-pad-x) var(--sidebar-pad-bottom);overflow-y:auto}.shell:not(.flow-mode) .sidebar.collapsed>:not(.side-collapse){opacity:1;visibility:visible;pointer-events:auto}.module-grid,.next-grid{grid-template-columns:1fr}.quiz-card{padding:20px}.footer{flex-direction:column;align-items:center;text-align:center;gap:8px;padding:22px 20px}.footer .made-with{position:static;transform:none}}.cert-page,.exam-page{width:100%;margin:0 auto;padding:64px 32px 24px}.cert-page{max-width:1080px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px;align-items:start}.exam-page{max-width:720px;display:flex;flex-direction:column;gap:20px}.cert-page .eyebrow,.exam-page .eyebrow{display:inline-block;font-family:var(--mono);font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-2)}.cert-page h1{font-size:56px;font-weight:400;line-height:1;letter-spacing:-1.6px;margin:14px 0 24px}.cert-progress{max-width:360px;margin-bottom:28px}.cert-progress span{display:block;margin-top:8px;font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3)}.cert-notice{margin-bottom:20px;color:var(--ink-2)}.cert-steps{list-style:none;padding:0;margin:0}.cert-steps li{position:relative;display:grid;grid-template-columns:32px 1fr;gap:18px;align-items:center;margin-bottom:24px}.cert-steps li:before{content:"";position:absolute;left:15px;top:-12px;bottom:-12px;width:1px;background:var(--dot-border)}.cert-steps li:first-child:before{top:50%}.cert-steps li:last-child:before{bottom:50%}.cert-steps li:only-child:before{content:none}.cert-steps li>div{background:var(--surface);border:1px solid var(--line);padding:16px 20px}.cert-steps li.current>div{border-color:var(--blue-line)}.cert-steps .num{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--blue-dark)}.cert-steps h3{font-size:19px;font-weight:400;margin:4px 0}.cert-steps p{font-size:13.5px;color:var(--ink-3)}.cert-steps .btn{margin-top:12px}.cert-step-dot{width:32px;height:32px;border-radius:50%;background:var(--bg);border:1.5px solid var(--dot-border);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:13px;z-index:1}.cert-steps li.done .cert-step-dot{background:var(--green);border-color:var(--green);color:#fff}.cert-steps li.current .cert-step-dot{border-color:var(--blue);color:var(--blue)}.cert-side{position:sticky;top:calc(var(--chrome-h) + 24px);background:var(--surface);border:1px solid var(--line);padding:26px;display:flex;flex-direction:column;gap:10px}.cert-side h2{font-size:24px;font-weight:400;letter-spacing:-.4px;margin:4px 0 12px}.cert-side .btn{width:100%;justify-content:center}.cert-side ul{font-size:13.5px;padding-left:18px}.exam-facts{list-style:none;display:flex;justify-content:space-between;gap:12px;margin:0 0 18px;padding:0}.exam-facts b{display:block;font-size:26px;font-weight:300}.exam-facts span{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3)}.cert-hint,.exam-rules{color:var(--ink-2);font-size:14px;margin-bottom:12px}.exam-head{text-align:center;margin-bottom:12px}.exam-head h1{font-size:36px;font-weight:400;letter-spacing:-.8px;margin-top:14px}.exam-badge{margin-bottom:16px;font-family:var(--mono);font-size:20px}.exam-badge.fail{background:var(--amber)}.exam-result{text-align:center;display:flex;flex-direction:column;align-items:center;padding:28px 32px}.exam-score{font-family:var(--mono);font-size:72px;line-height:1;letter-spacing:-.04em;margin-top:8px}.exam-score span{font-size:32px;color:var(--ink-3)}.exam-score.pass{color:var(--green)}.exam-score-label{font-size:22px;margin-top:14px}.exam-score-note{font-size:14px;color:var(--ink-3);margin-top:4px}.exam-cred{margin:28px auto 8px;width:100%;max-width:420px;border:1px solid var(--blue-line);background:var(--blue-soft);padding:22px}.exam-cred .eyebrow{color:var(--blue-dark)}.exam-cred h3{font-size:22px;font-weight:400;margin:8px 0 16px}.exam-result h2{font-size:24px;font-weight:400;letter-spacing:-.4px;margin:32px 0 18px}.exam-misses{list-style:none;padding:0;margin:0;width:100%;max-width:440px;text-align:left;border-top:1px solid var(--line)}.exam-misses a{display:flex;align-items:center;gap:14px;padding:14px 4px;border-bottom:1px solid var(--line)}.exam-misses a:hover{background:var(--hover-bg)}.exam-miss{min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--amber-soft);color:var(--amber);font-family:var(--mono);font-size:12px;display:inline-flex;align-items:center;justify-content:center}.exam-miss-title{flex:1 1;font-size:17px}.exam-miss-open{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3)}.exam-actions{display:flex;justify-content:center;gap:12px;margin-top:20px}@media (max-width:900px){.cert-page{grid-template-columns:1fr}.cert-side{position:static}}.btn:disabled{opacity:.45;cursor:not-allowed}.ds-text{color:var(--ink);margin:0}.ds-text--serif{font-family:var(--serif);font-weight:400;font-size:15px;line-height:1.5}.ds-text--sans{font-family:var(--font);font-weight:400;font-size:15px;line-height:1.3}.ds-text--caption{font-family:var(--serif);font-size:10px;line-height:150%;color:var(--ink-2);-webkit-user-select:none;user-select:none}.ds-text--mono{font-family:var(--mono);font-weight:400;font-size:12px;line-height:1.3;letter-spacing:-.12px}.ds-text--link{color:var(--blue);text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.ds-text--link:hover{background:var(--blue);color:var(--bg)}.ds-title{color:var(--ink);margin:0}.ds-title--h1-sans{font-family:var(--font);font-weight:400;max-width:490px}.ds-title--h1-sans,.ds-title--h1-serif{font-size:24px;line-height:1.2;letter-spacing:-.02em}.ds-title--h1-serif{font-family:var(--serif);font-weight:300}.ds-title--h2-sans{font-family:var(--font);font-weight:400;font-size:18px;line-height:1.3;letter-spacing:-.01em}.ds-title--h2-serif{font-family:var(--serif);font-weight:300;font-size:20px;line-height:1.3;letter-spacing:-.01em}.ds-title--h3-sans{font-family:var(--font)}.ds-title--h3-sans,.ds-title--h3-serif{font-size:18px;line-height:1.3;letter-spacing:-.01em}.ds-title--h3-serif{font-family:var(--serif);font-weight:300}@media (min-width:768px){.ds-title--h1-sans{font-size:36px;line-height:1.1;max-width:none}.ds-title--h1-serif{font-size:32px}.ds-title--h2-sans{font-size:20px}.ds-title--h2-serif{font-size:24px}.ds-title--h3-sans,.ds-title--h3-serif{font-size:20px}}.ds-button{font-family:var(--font);font-weight:400;font-size:15px;line-height:1.3;width:fit-content;display:inline-flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;cursor:pointer;border:none;border-radius:var(--radius);text-decoration:none;transition:background .15s ease,color .15s ease,opacity .15s ease}.ds-button--primary{background:var(--ink);color:var(--bg)}.ds-button--primary:hover{opacity:.8}.ds-button--secondary{background:var(--surface-2);color:var(--ink)}.ds-button--secondary:hover{background:var(--ink);color:var(--bg)}.ds-button--outline{background:transparent;border:1px solid var(--ink);color:var(--ink)}.ds-button--outline:hover{background:var(--ink);color:var(--bg)}.ds-button--sm{height:28px;padding:1px 8px 0;gap:10px}.ds-button--md{height:32px;padding:1px 10px 0;gap:8px}@font-face{font-family:GeistMono;src:url(/_next/static/media/66f30814ff6d7cdf.p.woff2) format("woff2");font-display:swap;font-weight:100 900}.__className_c1e5c9{font-family:GeistMono,ui-monospace,SFMono-Regular,Roboto Mono,Menlo,Monaco,Liberation Mono,DejaVu Sans Mono,Courier New,monospace}.__variable_c1e5c9{--font-geist-mono:"GeistMono",ui-monospace,SFMono-Regular,Roboto Mono,Menlo,Monaco,Liberation Mono,DejaVu Sans Mono,Courier New,monospace}