:root{--lab-canvas:#f3f5f7;--lab-paper:#fbfbfd;--lab-surface:#fff;--lab-control:#fff;--lab-ink:#1d1d1f;--lab-muted:#6e6e73;--lab-line:#d2d2d7;--lab-line-strong:#a7a7ad;--lab-accent:#5277b8;--lab-accent-soft:#eef2fa;--lab-good:#18794e;--lab-good-soft:#edf8f1;--lab-warn:#946200;--lab-warn-soft:#fff6e7;--lab-bad:#b42318;--lab-bad-soft:#fff0ee;--lab-focus:#1d1d1f;--lab-focus-soft:#1d1d1f2e;--lab-font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", Arial, sans-serif;--lab-panel-radius:12px;--lab-control-radius:8px;--lab-pill-radius:999px;--lab-control-height:35px;--lab-panel-shadow:0 1px 2px #1d1d1f0a;--lab-header-max-width:1200px;--lab-header-gutter:max(28px, calc((100vw - var(--lab-header-max-width)) / 2));--lab-page-gutter:var(--lab-header-gutter);--lab-compact-workspace-max:820px;--lab-ink-secondary:#424245;--lab-surface-muted:#f7f8fa;--lab-line-subtle:#e7e8eb;--lab-accent-hover:#4569aa;--lab-accent-pressed:#3a5d99;--lab-accent-surface:#f8fbff;--lab-accent-line:#9fb4d6;--lab-accent-ink:#315b91;--lab-on-accent:#fff;--lab-needed:#946200;--lab-needed-ink:#735100;--lab-needed-line:#d8c36a;--lab-needed-soft:#fff9db;--lab-needed-surface:#fffdf4;--lab-good-ink:#225f43;--lab-good-line:#9cc7aa;--lab-good-surface:#f7fcf8;--lab-bad-ink:#8f2f27;--lab-bad-line:#d99b93;--lab-bad-surface:#fff8f7;--lab-type-body:14px;--lab-type-label:12px;--lab-type-annotation:11px;--lab-leading-body:1.5;--lab-action-height:40px;--lab-target-min:44px;--lab-concept-rose:#b85f52;--lab-concept-rose-soft:#fff1ef;--lab-concept-rose-ink:#8f4439;--lab-concept-slate-ink:#34454f;--lab-concept-violet:#7563a7;--lab-concept-amber:#c9782c;--lab-concept-amber-soft:#fff2e6;--lab-concept-amber-line:#e0b383;--lab-concept-amber-ink:#95571f;--lab-drag-halo:drop-shadow(0 0 5px #5277b8e6) drop-shadow(0 0 10px #5277b859);--lab-cue-surface:#fafcfffa;--lab-cue-copy:#5f7184;--lab-shadow-cue:0 10px 24px #1d1d1f29;--lab-shadow-phase:0 12px 30px #1d1d1f29;--lab-phase-good-surface:#f7fcf8fc}
:root{--ink:var(--lab-ink);--muted:var(--lab-muted);--line:var(--lab-line);--paper:var(--lab-paper);--paper-hover:#f0f0f2;--tone-one:#5277b8;--tone-two:#5277b8;--tone-three:#5277b8;--tone-four:#5277b8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,Arial,sans-serif}button,a{color:inherit;font:inherit}button{border:0}::selection{background:var(--ink);color:var(--paper)}.tone-one{color:var(--tone-one)}.tone-two{color:var(--tone-two)}.tone-three{color:var(--tone-three)}.tone-four{color:var(--tone-four)}.mobile-notice{display:none}.site-header{-webkit-backdrop-filter:saturate(180%)blur(18px);backdrop-filter:saturate(180%)blur(18px);z-index:20;background:#fbfbfdeb;border-bottom:1px solid #1d1d1f12;justify-content:space-between;align-items:center;height:66px;padding:0 max(28px,50vw - 600px);display:flex;position:sticky;top:0}.brand{letter-spacing:-.055em;font-size:20px;font-weight:680;text-decoration:none}.header-actions{align-items:center;gap:22px;display:flex}.header-note{color:var(--muted);font-size:12px}.header-resource-link{color:var(--muted);white-space:nowrap;align-items:center;gap:7px;font-size:12px;font-weight:400;line-height:20px;text-decoration:none;display:inline-flex}.header-resource-link:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.header-builder-mark{flex:none;width:20px;height:20px;overflow:visible}.header-builder-mark__bracket,.header-builder-mark__tick-wrap{transform-box:view-box;transition:transform .32s cubic-bezier(.3,1.5,.5,1)}.header-builder-mark__bracket--open{--mark-direction:-1}.header-builder-mark__bracket--close{--mark-direction:1}.header-builder-mark path{stroke-dasharray:1 1.1;stroke-dashoffset:0}.header-builder-mark__bracket path{animation:.62s cubic-bezier(.2,.75,.25,1) both header-builder-draw}.header-builder-mark__tick{animation:.5s cubic-bezier(.2,.75,.25,1) .48s both header-builder-draw}.header-builder-mark__bracket{animation:.6s cubic-bezier(.3,1.5,.5,1) .9s backwards header-builder-land}.header-resource-link:is(:hover,:focus-visible) .header-builder-mark__bracket{transform:translateX(calc(var(--mark-direction) * 3.52px))}.header-resource-link:is(:hover,:focus-visible) .header-builder-mark__tick-wrap{transform:translateY(-1.76px)}@keyframes header-builder-draw{0%{stroke-dashoffset:1.05px}to{stroke-dashoffset:0}}@keyframes header-builder-land{0%{transform:none}30%{transform:translateX(calc(var(--mark-direction) * 2.64px))}to{transform:none}}.hero{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:64px;max-width:1200px;min-height:610px;margin:0 auto;padding:104px 28px 90px;display:grid}.hero-copy{max-width:960px}.subject-catalogue .hero{min-height:540px;padding-top:84px;padding-bottom:140px;display:block;position:relative}.subject-catalogue .hero-copy{max-width:660px}.subject-catalogue .learning-picker{justify-content:flex-end;gap:24px;position:absolute;top:calc(100% - 24px);right:28px}.subject-catalogue .catalog>.topic-section:first-child{padding-top:0}@media (min-width:1001px){.subject-catalogue .catalog>.topic-section:first-child .topic-heading{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:48px}.subject-catalogue .catalog>.topic-section:first-child .topic-heading>span{justify-self:end}}@media (max-width:1000px){.subject-catalogue .hero{grid-template-columns:1fr;gap:48px;min-height:auto;padding-top:68px;padding-bottom:40px;display:grid}.subject-catalogue .learning-picker{position:relative;top:auto;right:auto}}@media (max-width:620px){.subject-catalogue .hero{gap:40px;padding:64px 20px 44px}}.picker-label{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin:0;padding-inline-start:18px;font-size:11px;font-weight:650}.card-kicker{align-items:center;min-height:24px;margin:0;display:flex}.learning-mode-chip{border:1px solid var(--lab-line-subtle);border-radius:var(--lab-control-radius);background:var(--lab-surface-muted);color:var(--muted);font-size:var(--lab-type-annotation);padding:3px 8px;font-weight:500;line-height:16px;display:inline-block}h1{letter-spacing:-.075em;margin:0 0 38px;font-size:clamp(64px,7.8vw,108px);font-weight:630;line-height:.88}.hero-line{white-space:nowrap;display:block}.intro{color:#424245;letter-spacing:-.018em;max-width:620px;margin:0;font-size:clamp(18px,1.7vw,22px);line-height:1.45}.learning-picker{--picker-control-height:48px;z-index:10;align-items:flex-end;gap:12px;display:flex;position:relative}.subject-picker,.exam-picker{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.subject-select-shell{min-width:218px;position:relative}.subject-select-trigger{background:linear-gradient(180deg, #fff 0%, var(--paper) 100%);border:1px solid var(--ink);color:var(--ink);cursor:pointer;height:var(--picker-control-height);text-align:left;border-radius:999px;justify-content:space-between;align-items:center;width:100%;padding:0 54px 0 18px;font-size:14px;font-weight:620;transition:background .2s,box-shadow .2s;display:flex;position:relative;box-shadow:0 2px 8px #1d1d1f0d,inset 0 1px #fff}.subject-select-trigger:hover{background:#fff;box-shadow:0 4px 14px #1d1d1f17,inset 0 1px #fff}.subject-select-trigger:active{box-shadow:0 1px 4px #1d1d1f12,inset 0 1px 2px #1d1d1f0d}.subject-select-indicator{pointer-events:none;background:0 0;border-radius:50%;width:32px;height:32px;transition:background .2s;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.subject-select-indicator:after{border-bottom:1.5px solid var(--ink);border-right:1.5px solid var(--ink);content:"";width:7px;height:7px;transition:border-color .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-68%)rotate(45deg)}.subject-select-trigger[aria-expanded=true] .subject-select-indicator{background:var(--ink)}.subject-select-trigger[aria-expanded=true] .subject-select-indicator:after{border-color:var(--paper)}.subject-menu{z-index:40;background:#fff;border:1px solid #1d1d1f1f;border-radius:18px;min-width:280px;padding:7px;position:absolute;top:calc(100% + 9px);left:0;box-shadow:0 18px 50px #1d1d1f1f,0 3px 12px #1d1d1f14}.subject-menu-heading{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;padding:8px 10px 7px;font-size:10px;font-weight:700}.subject-option,.subject-menu-coming-soon{border-radius:12px;justify-content:space-between;align-items:center;width:100%;min-height:42px;padding:0 11px;font-size:14px;display:flex}.subject-option{color:var(--ink);cursor:pointer;text-align:left;background:0 0}.subject-option:hover,.subject-option:focus-visible{background:var(--paper-hover);outline:0}.subject-option.is-selected{font-weight:650}.subject-option-status{color:var(--muted);font-size:11px;font-weight:600}.subject-menu-coming-soon{color:#86868b;cursor:default}.subject-menu-coming-soon small{font-size:11px}.segmented-control{border:1px solid var(--ink);height:var(--picker-control-height);border-radius:999px;align-items:stretch;width:max-content;padding:3px;display:flex}.segmented-control :is(button,a){background:var(--paper);color:var(--ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-width:44px;padding:0 12px;text-decoration:none;transition:background .2s,color .2s,padding .2s;display:flex}.segmented-control :is(button,a).is-active{background:var(--ink);color:var(--paper);padding-inline:22px;font-weight:650}.brand:focus-visible,.subject-select-trigger:focus-visible,.segmented-control :is(button,a):focus-visible,.lab-card>a:focus-visible{outline:3px solid var(--ink);outline-offset:4px}.topic-section{max-width:1200px;margin:0 auto;padding:88px 28px 104px}.topic-heading{grid-template-columns:1fr auto;align-items:end;gap:12px 24px;margin-bottom:34px;display:grid}.topic-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(36px,4.2vw,56px);font-weight:620;line-height:.98}.topic-heading-copy{max-width:780px}.topic-briefing{color:var(--muted);max-width:60ch;margin:14px 0 0;font-size:14px;line-height:1.5}.topic-heading>span{color:var(--muted);padding-bottom:4px;font-size:12px}.lab-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 20px;display:grid}.lab-card{min-width:0}.lab-card>a{color:inherit;cursor:pointer;text-align:left;background:0 0;width:100%;padding:0;text-decoration:none;display:block}.preview{--art-x:0px;--art-y:0px;aspect-ratio:16/9;background:var(--paper);border:1.5px solid var(--ink);color:var(--ink);border-radius:26px;transition:background .3s cubic-bezier(.2,.8,.2,1),color .3s cubic-bezier(.2,.8,.2,1),transform .3s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden}.lab-icon{width:100%;height:100%;display:block}.icon-drawing{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:4px;transform:translate(var(--art-x), var(--art-y));transform-origin:50%;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.icon-drawing .is-solid{fill:currentColor}.icon-drawing :is(.tone-one,.tone-two,.tone-three,.tone-four).is-solid,.icon-drawing :is(.tone-one,.tone-two,.tone-three,.tone-four) .is-solid{stroke:var(--ink)}.icon-drawing .secondary-line{opacity:.24}.icon-drawing .thin-lines{stroke-width:3px}.icon-drawing .focus-line{stroke-width:5px}.card-copy{grid-template-columns:1fr auto;gap:14px;padding:19px 4px 0;display:grid}.card-copy h3{letter-spacing:-.035em;margin:7px 0 0;font-size:21px;font-weight:630}.arrow{color:#000;background:0 0;border:1.5px solid #000;border-radius:50%;justify-content:center;align-self:center;align-items:center;width:40px;height:40px;transition:background .2s,color .2s,border-color .2s;display:flex}.arrow svg{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:19px;height:19px;transition:transform .2s;display:block}.lab-card>a:focus-visible .arrow{color:#fff;background:#000}.lab-card>a:focus-visible .arrow svg{transform:none}@media (prefers-reduced-motion:reduce){.arrow,.arrow svg{transition:none}.header-builder-mark path,.header-builder-mark__bracket,.header-builder-mark__tick-wrap{transition:none;animation:none}}.description{color:var(--muted);grid-column:1/-1;max-width:96%;margin:0;font-size:14px;line-height:1.5}footer{color:var(--muted);justify-content:space-between;max-width:1200px;margin:0 auto;padding:34px 28px 48px;font-size:12px;display:flex}footer .footer-left>a:first-child{color:var(--ink);letter-spacing:-.03em;font-weight:650}footer a{text-decoration:none}footer :is(a,.bug-report-trigger),.header-resource-link{border-radius:8px;padding:8px 10px;transition:background .2s,color .2s}footer :is(a,.bug-report-trigger):hover,footer :is(a,.bug-report-trigger):focus-visible,.header-resource-link:is(:hover,:focus-visible){background:var(--lab-accent-soft);color:var(--lab-accent-ink)}footer .footer-left>:is(a:not(:first-child),button){font-weight:400}.footer-left{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.bug-report-trigger{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:5px;padding:0;text-decoration:none;display:inline-flex}.bug-report-trigger:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:2px}.bug-report-backdrop{z-index:20;background:#1d1d1f73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.bug-report-dialog{background:var(--paper);border:1px solid var(--line);color:var(--ink);text-align:left;border-radius:22px;width:100%;max-width:600px;max-height:calc(100dvh - 40px);padding:34px;position:relative;overflow-y:auto;box-shadow:0 24px 80px #1d1d1f2e}.bug-report-dialog h2{letter-spacing:-.035em;margin:6px 38px 10px 0;font-size:27px;line-height:1.15}.bug-report-kicker{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.bug-report-intro{color:var(--muted);margin:0 0 24px;font-size:14px;line-height:1.5}.bug-report-type{border:0;grid-template-columns:1fr 1fr;gap:7px;margin:0 0 20px;padding:0;display:grid}.bug-report-type legend{margin-bottom:7px;font-size:13px;font-weight:650}.bug-report-type label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:11px;padding:11px 12px;font-size:13px;font-weight:620}.bug-report-type label.is-selected{background:var(--ink);border-color:var(--ink);color:var(--paper)}.bug-report-type input{margin:0 7px 0 0}.bug-report-dialog form>label:not(.bug-report-consent){margin:17px 0 7px;font-size:13px;font-weight:650;display:block}.bug-report-dialog form>label span{color:var(--muted);font-weight:450}.bug-report-dialog textarea,.bug-report-dialog select,.bug-report-dialog input[type=email]{border:1px solid var(--line);color:var(--ink);font:inherit;resize:vertical;background:#fff;border-radius:11px;width:100%;padding:11px 12px;font-size:14px;line-height:1.45}.bug-report-dialog textarea:focus,.bug-report-dialog select:focus,.bug-report-dialog input:focus{border-color:var(--ink);outline:2px solid #1d1d1f1f}.bug-report-close{color:var(--ink);cursor:pointer;background:#f1f1f3;border:0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:22px;display:flex;position:absolute;top:20px;right:20px}.bug-report-consent{align-items:flex-start;gap:10px;margin-top:20px;font-size:13px;font-weight:620;line-height:1.35;display:flex}.bug-report-consent input{margin-top:2px}.bug-report-consent small{color:var(--muted);margin-top:3px;font-size:11px;font-weight:450;display:block}.bug-report-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.bug-report-actions{justify-content:flex-end;gap:9px;margin-top:26px;display:flex}.bug-report-primary,.bug-report-secondary{border:1px solid var(--ink);cursor:pointer;font:inherit;border-radius:999px;padding:10px 17px;font-size:13px;font-weight:650}.bug-report-primary{background:var(--ink);color:var(--paper)}.bug-report-secondary{background:var(--paper);color:var(--ink)}.bug-report-primary:disabled,.bug-report-secondary:disabled{cursor:wait;opacity:.55}.bug-report-error{color:#a22b20;margin:16px 0 0;font-size:13px}.bug-report-success p{color:var(--muted);line-height:1.5}.bug-report-success strong{color:var(--ink);overflow-wrap:anywhere}.bug-report-success .bug-report-primary{margin-top:12px}.lab-view{background:var(--paper);grid-template-rows:66px minmax(0,1fr) 58px;width:100%;height:100dvh;display:grid;position:fixed;inset:0;overflow:hidden}.lab-frame{background:var(--paper);opacity:1;border:0;width:100%;height:100%;min-height:0;transition:opacity .3s}.lab-frame.is-loading{opacity:0}.lab-shell-header,.lab-shell-footer{z-index:3;position:relative}.lab-shell-header{-webkit-backdrop-filter:saturate(180%)blur(18px);backdrop-filter:saturate(180%)blur(18px);background:#fbfbfdeb;border-bottom:1px solid #1d1d1f12;justify-content:space-between;align-items:center;height:66px;padding:0 max(28px,50vw - 600px);display:flex}.lab-shell-actions{align-items:center;gap:8px;display:flex}.lab-shell-syllabus{flex:1 1 0;justify-content:center;align-items:center;gap:6px;min-width:0;margin:0 16px;display:flex;overflow:hidden}.lab-shell-syllabus-chip{background:var(--syllabus-chip-bg);border:1px solid var(--syllabus-chip-border);color:var(--syllabus-chip-text);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:29px;padding:8px 10px;font-size:11px;font-weight:650;line-height:1;text-decoration:none;display:inline-flex}.lab-shell-syllabus-chip:hover{background:var(--syllabus-chip-hover)}.lab-shell-syllabus-sections{opacity:.85;font-weight:500}@media (max-width:760px){.lab-shell-syllabus{display:none}}.lab-shell-download,.lab-shell-remix{background:var(--paper);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:9px 15px;font-size:12px;font-weight:620;text-decoration:none;transition:background .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.lab-shell-remix{background:var(--ink);border-color:var(--ink);color:var(--paper)}.lab-shell-download svg,.lab-shell-remix svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:15px;height:15px}.lab-shell-download:hover:not(:disabled),.lab-shell-remix:hover{border-color:var(--ink);transform:translateY(-1px)}.lab-shell-download:disabled{cursor:wait;opacity:.62}.lab-download-status{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lab-shell-header a:focus-visible,.lab-shell-header button:focus-visible,.lab-shell-footer a:focus-visible{outline:3px solid var(--ink);outline-offset:4px}.lab-shell-footer{-webkit-backdrop-filter:saturate(180%)blur(18px);backdrop-filter:saturate(180%)blur(18px);color:var(--muted);background:#fbfbfdeb;border-top:1px solid #1d1d1f12;justify-content:space-between;align-items:center;max-width:none;height:58px;margin:0;padding:0 max(28px,50vw - 600px);font-size:12px;display:flex}.lab-shell-footer .footer-left>a:first-child{color:var(--ink);letter-spacing:-.03em;font-weight:650}.loading-screen{background:var(--paper);text-align:center;z-index:2;flex-direction:column;justify-content:center;align-items:center;gap:28px;display:flex;position:absolute;inset:0}.loading-screen p{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:10px;font-weight:650}.loading-screen h1{letter-spacing:-.045em;margin:0;padding:0 24px;font-size:clamp(28px,4vw,46px);font-weight:620;line-height:1.05}.spinner{border:2px solid #d2d2d7;border-top-color:var(--ink);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.remix-page{background:var(--paper);min-height:100dvh}.remix-site-header{height:60px}.remix-site-header .brand{font-size:18px}.remix-intro,.remix-steps{box-sizing:border-box;max-width:816px;margin-inline:auto}.remix-back{text-underline-offset:4px;font-size:12px;font-weight:620}.remix-intro{padding:70px 28px 0}.remix-intro h1{margin:0 0 16px;font-size:clamp(42px,7vw,66px);line-height:.98}.remix-intro>p:last-child{color:var(--muted);margin:0;font-size:16px}.remix-steps{margin-top:54px;margin-bottom:100px;padding:0 28px;position:relative}.remix-steps:before{background:var(--line);content:"";width:1px;position:absolute;top:56px;bottom:56px;left:54px}.remix-step{border:1px solid var(--line);background:#fff;border-radius:22px;max-width:760px;margin-bottom:34px;padding:30px 32px 28px 68px;position:relative;box-shadow:0 12px 30px #1d1d1f08}.remix-step:not(:last-child):after{background:var(--paper);border:1px solid var(--line);color:var(--muted);content:"↓";z-index:1;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;display:flex;position:absolute;bottom:-24px;left:12px}.remix-step-heading{align-items:flex-start;gap:17px;display:flex}.remix-step-heading h2{letter-spacing:-.035em;margin:0;font-size:23px;font-weight:620;line-height:1.1}.remix-step-heading p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.45}.remix-step-number{background:var(--ink);color:var(--paper);z-index:2;border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:650;display:flex;position:absolute;top:28px;left:9px}.remix-primary-action,.remix-secondary-action{cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:12px 18px;font-size:13px;font-weight:650;text-decoration:none;transition:opacity .2s,transform .2s;display:inline-flex}.remix-primary-action{background:var(--ink);color:var(--paper);margin-top:22px}.remix-secondary-action{border:1px solid var(--line);color:var(--ink);background:0 0}.remix-primary-action:hover:not(:disabled),.remix-secondary-action:hover:not(:disabled){transform:translateY(-1px)}.remix-primary-action:disabled,.remix-secondary-action:disabled{cursor:default;opacity:.5}.remix-primary-action svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:17px;height:17px}.remix-inline-status{color:var(--muted);min-height:16px;margin:10px 0 0;font-size:11px}.remix-prompt-label{margin:24px 0 9px;font-size:12px;font-weight:650;display:block}.remix-step textarea{background:var(--paper);border:1px solid var(--line);color:var(--ink);resize:vertical;border-radius:14px;width:100%;height:390px;min-height:390px;padding:16px;font:13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}.remix-prompt-actions{align-items:center;gap:9px;display:flex}.remix-prompt-actions .remix-primary-action,.remix-prompt-actions .remix-secondary-action{margin-top:12px}.remix-prompt-actions>span{color:var(--muted);margin-left:auto;font-size:11px}.remix-idea-chips{flex-wrap:wrap;align-items:center;gap:7px;margin-top:22px;display:flex}.remix-idea-chips>span{color:var(--muted);margin-right:2px;font-size:11px}.remix-idea-chips button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;padding:7px 10px;font-size:11px;transition:background .2s,border-color .2s}.remix-idea-chips button:hover{background:var(--paper-hover);border-color:var(--muted)}.remix-idea-chips button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.remix-page :is(button,a,textarea):focus-visible{outline:3px solid var(--ink);outline-offset:4px}.changelog-page{min-height:100dvh}.changelog-header{position:relative}.changelog-back{border:1px solid var(--line);border-radius:999px;padding:9px 14px;font-size:12px;font-weight:620;text-decoration:none;transition:border-color .2s,transform .2s}.changelog-back:hover{border-color:var(--ink);transform:translateY(-1px)}.changelog-hero{max-width:1200px;margin:0 auto;padding:116px 28px 128px}.changelog-hero h1{margin:0;font-size:clamp(44px,6vw,80px);line-height:.86}.changelog-ledger{border-top:1px solid var(--ink);max-width:1200px;margin:0 auto}.changelog-entry{grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr);gap:48px;padding:52px 28px 62px;display:grid}.changelog-entry+.changelog-entry{border-top:1px solid var(--line)}.changelog-entry h2{letter-spacing:-.05em;margin:0;font-size:clamp(18px,1.8vw,24px);font-weight:620;line-height:1}.changelog-entry ul{margin:0;padding:0;list-style:none}.changelog-entry li{letter-spacing:-.02em;padding:0 0 20px 28px;font-size:clamp(14px,1vw,16px);line-height:1.42;position:relative}.changelog-entry li+li{border-top:1px solid var(--line);padding-top:20px}.changelog-entry li:before{content:"↳";position:absolute;left:0}.changelog-entry li+li:before{top:20px}.changelog-page :is(a):focus-visible{outline:3px solid var(--ink);outline-offset:4px;border-radius:2px}@media (max-width:900px){.hero{grid-template-columns:1fr;min-height:auto;padding-top:92px}.learning-picker,.subject-picker,.exam-picker{align-items:flex-start}.lab-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.changelog-entry{grid-template-columns:minmax(150px,.45fr) minmax(0,1.55fr)}}@media (hover:hover) and (pointer:fine){.lab-card>a:hover .preview{background:var(--paper-hover);color:var(--ink);transform:translateY(-4px)}.lab-card>a:hover .icon-drawing{transform:translate(var(--art-x), var(--art-y)) scale(1.025)}.lab-card>a:hover .arrow{color:#fff;background:#000}.lab-card>a:hover .arrow svg{transform:none}}@media (max-width:620px){.mobile-notice{color:var(--ink);z-index:30;background:linear-gradient(135deg,#f3f7fc 0%,#e5eef9 100%);border-bottom:1px solid #a9bfd9;justify-content:space-between;align-items:center;gap:14px;padding:12px 18px;font-size:13px;line-height:1.4;display:flex;position:sticky;top:0;box-shadow:0 10px 28px #315b8a1f}.mobile-notice p{margin:0}.mobile-notice button{background:var(--ink);color:var(--paper);cursor:pointer;border-radius:50%;flex:0 0 32px;justify-content:center;align-self:stretch;align-items:center;margin:-6px -8px -6px 0;font-size:24px;display:flex}.mobile-notice button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.site-header{height:60px;padding:0 18px}.brand{font-size:18px}.header-note{display:none}.hero{gap:48px;padding:76px 20px 66px}h1{font-size:clamp(38px,11vw,64px)}.intro{font-size:18px}.learning-picker{flex-direction:column;align-items:stretch;width:100%}.subject-picker{align-items:stretch}.exam-picker{align-items:flex-start}.subject-select-shell{width:100%}.segmented-control{max-width:100%}.topic-section{padding:66px 20px 78px}.topic-heading{grid-template-columns:1fr;align-items:start}.lab-grid{grid-template-columns:1fr;gap:44px 0}.preview{border-radius:22px}footer{flex-direction:column;gap:8px;padding:28px 20px 36px}.footer-left{gap:4px}.bug-report-dialog{border-radius:18px;padding:28px 20px 22px}.bug-report-dialog h2{font-size:23px}.bug-report-type{grid-template-columns:1fr}.lab-view{grid-template-rows:60px minmax(0,1fr) 76px}.lab-shell-header{height:60px;padding:0 18px}.lab-shell-actions{gap:6px}.lab-shell-download,.lab-shell-remix{gap:6px;padding:8px 10px;font-size:11px}.lab-shell-footer{justify-content:center;align-items:flex-start;gap:4px;height:76px;padding:0 20px}.lab-shell-download svg,.lab-shell-remix svg{width:15px;height:15px}.remix-intro{padding:52px 20px 0}.remix-intro h1{font-size:clamp(38px,12vw,54px)}.remix-steps{margin:40px auto 70px;padding:0 20px}.remix-step{border-radius:18px;padding:25px 20px 24px 62px}.remix-step-number{top:23px;left:7px}.remix-step:not(:last-child):after{left:10px}.remix-steps:before{left:44px}.remix-prompt-actions{flex-wrap:wrap}.remix-prompt-actions>span{width:100%;margin-left:0}.remix-step textarea{height:790px;min-height:790px}.changelog-hero{padding:86px 20px 92px}.changelog-hero h1{font-size:clamp(36px,11.5vw,52px)}.changelog-entry{grid-template-columns:1fr;gap:30px;padding:42px 20px 48px}.changelog-entry h2{font-size:19px}.changelog-entry li{font-size:14px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important}.spinner{animation-duration:1.6s}}
