:root{--color-ink: #122044;--color-muted: #52617e;--color-blue: #2355b8;--color-blue-deep: #173d87;--color-cyan: #63d4ef;--color-cyan-soft: #dff7ff;--color-pink: #df62aa;--color-pink-deep: #922a69;--color-pink-soft: #f9d9ef;--color-lavender: #b7a3e3;--color-lavender-deep: #7442a8;--color-lavender-soft: #eee7fa;--color-silver: #c5cbdd;--color-silver-dark: #a0aac3;--color-line: #acb5cd;--color-canvas: #edf0fa;--color-surface: #f9faff;--color-white: #ffffff;--color-disabled: #727c91;--color-error: #a3264e;--color-error-soft: #ffe5ed;--color-code-string: #246551;--color-code-number: #924516;--color-code-comment: #626e82;--color-code-type: #795218;--radius-small: 4px;--radius-button: 5px;--radius-pane: 6px;--radius-panel: 12px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-7: 28px;--gradient-chrome: linear-gradient(var(--color-white),var(--color-canvas) 43%,var(--color-silver-dark) 48%,var(--color-silver) 53%,var(--color-surface));--gradient-secondary: linear-gradient(var(--color-white),var(--color-cyan-soft) 46%,var(--color-silver) 49%,var(--color-cyan-soft));--gradient-primary: linear-gradient(var(--color-white),var(--color-pink-soft) 46%,var(--color-pink) 49%,var(--color-pink-soft));--font-display: "Orbitron", sans-serif;--font-body: "Space Grotesk", sans-serif;--font-code: "DM Mono", monospace}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(./space-grotesk-latin-400-normal-CJ-V5oYT.woff2) format("woff2"),url(./space-grotesk-latin-400-normal-BnQMeOim.woff) format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(./space-grotesk-latin-500-normal-lFbtlQH6.woff2) format("woff2"),url(./space-grotesk-latin-500-normal-CNSSEhBt.woff) format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(./space-grotesk-latin-600-normal-DjKNqYRj.woff2) format("woff2"),url(./space-grotesk-latin-600-normal-BflQw4A9.woff) format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./dm-mono-latin-ext-400-normal-C2zvOubV.woff2) format("woff2"),url(./dm-mono-latin-ext-400-normal-1aZr6b2b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./dm-mono-latin-400-normal-4GdczIuU.woff2) format("woff2"),url(./dm-mono-latin-400-normal--0xN8mdc.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:600;src:url(./orbitron-latin-600-normal-mazHmDYu.woff2) format("woff2"),url(./orbitron-latin-600-normal-75H6acHo.woff) format("woff")}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:700;src:url(./orbitron-latin-700-normal-4jsRXGGJ.woff2) format("woff2"),url(./orbitron-latin-700-normal-DmYOh-W9.woff) format("woff")}:root{font-family:var(--font-body);color:var(--color-ink);background:var(--color-canvas);font-synthesis:none;--ink:var(--color-ink);--muted:var(--color-muted);--accent:var(--color-blue);--line:var(--color-line);--paper:var(--color-surface);--error:var(--color-error);--chrome:var(--gradient-chrome);--blue:var(--gradient-secondary);color-scheme:light}*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0;background:linear-gradient(90deg,transparent 49.8%,color-mix(in srgb,var(--color-disabled) 4.71%,transparent) 50%,transparent 50.2%),linear-gradient(color-mix(in srgb,var(--color-silver-dark) 7.84%,transparent) 1px,transparent 1px);background-size:80px 80px;min-height:100vh}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;color:var(--color-disabled);background:linear-gradient(var(--color-lavender-soft),var(--color-silver));border-color:var(--color-silver-dark);box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{background:var(--color-blue);color:var(--color-white)}a{color:var(--color-blue);text-underline-offset:4px}textarea,input{caret-color:var(--accent)}[hidden]{display:none!important}::-webkit-scrollbar{width:10px;height:10px;background:var(--color-surface)}::-webkit-scrollbar-thumb{background:var(--color-line);border:2px solid var(--color-surface);border-radius:8px}.masthead{max-width:1280px;margin:28px auto 0;display:flex;align-items:center;gap:var(--space-6);padding:0 28px 0 10px;min-height:176px;border:1px solid var(--color-silver-dark);border-radius:24px 24px 4px 4px;background:linear-gradient(120deg,var(--color-lavender-soft),var(--color-canvas) 55%,var(--color-cyan-soft));box-shadow:inset 0 1px var(--color-white),inset 0 -5px var(--color-silver),0 12px 35px color-mix(in srgb,var(--color-muted) 13.33%,transparent);position:relative}.wordmark{display:block;width:250px;height:170px;flex-shrink:0}.wordmark img{display:block;width:100%;height:100%;object-fit:contain}.product-note{font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:.045em;text-transform:uppercase;color:var(--color-ink);max-width:220px;line-height:1.1}.product-note small{display:block;font:12px var(--font-body);letter-spacing:.02em;color:var(--color-muted);text-transform:none;margin-top:12px}.main-nav{display:flex;gap:6px;margin-left:auto;align-self:flex-end;margin-bottom:32px}.main-nav a{font-family:var(--font-display);font-size:13px;font-weight:600;text-decoration:none;padding:9px 16px;border:1px solid var(--color-silver-dark);border-radius:14px 14px 4px 4px;background:var(--blue);color:var(--color-ink);box-shadow:inset 0 1px color-mix(in srgb,var(--color-white) 60%,transparent),0 3px 6px color-mix(in srgb,var(--color-muted) 13.33%,transparent)}.main-nav a:first-child{background:var(--chrome);color:var(--color-ink)}.main-nav a:hover{border-color:var(--accent);color:var(--accent)}.main-nav a:first-child:hover{color:var(--color-lavender-deep)}main{width:min(1280px,calc(100% - 64px));margin:0 auto 28px;padding:0 28px;background:linear-gradient(90deg,var(--color-lavender-soft),var(--color-surface) 25%,var(--color-surface) 75%,var(--color-lavender-soft));border:1px solid var(--color-silver-dark);border-top:0;border-radius:0 0 22px 22px;box-shadow:inset 2px 0 color-mix(in srgb,var(--color-white) 53.33%,transparent),inset -2px 0 color-mix(in srgb,var(--color-white) 53.33%,transparent),0 20px 50px color-mix(in srgb,var(--color-muted) 13.33%,transparent)}.intro{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:26px 0 24px}h1{font-family:var(--font-display);font-size:38px;line-height:1.12;letter-spacing:-.025em;margin:0 0 8px;font-weight:700;color:var(--color-ink)}p{line-height:1.6;max-width:70ch;margin:0;color:var(--muted)}.intro p{font-size:14px}.runtime-label{font-size:12px!important;text-align:right;line-height:1.8;color:var(--color-muted);flex-shrink:0}.runtime-label span{color:var(--color-muted)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:12px 14px;background:var(--chrome);border:1px solid var(--color-silver-dark);border-bottom:3px solid var(--color-line);border-radius:10px 10px 0 0;color:var(--color-ink);box-shadow:inset 0 1px var(--color-white)}.example-picker{display:flex;align-items:center;gap:12px}.example-picker label{font-size:12px;font-weight:600;white-space:nowrap}select{border:1px solid var(--color-silver-dark);border-radius:3px;background:var(--color-white);color:var(--color-ink);padding:9px 30px 9px 12px;min-width:188px;box-shadow:inset 0 2px 4px color-mix(in srgb,var(--color-ink) 13.33%,transparent);font-size:12px}.actions{display:flex;align-items:center;gap:7px}button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 13px;border:1px solid var(--color-silver-dark);border-radius:var(--radius-button);background:var(--blue);color:var(--color-ink);box-shadow:inset 0 1px color-mix(in srgb,var(--color-white) 66.67%,transparent),0 2px 3px color-mix(in srgb,var(--color-muted) 13.33%,transparent);font-size:12px;font-weight:600;transition:filter .12s ease-out,box-shadow .12s ease-out}button:hover:not(:disabled){filter:brightness(1.18)}button:active:not(:disabled){box-shadow:inset 0 2px 4px color-mix(in srgb,var(--color-muted) 20%,transparent)}.primary{background:var(--gradient-primary);color:var(--color-ink);border-color:var(--color-pink-deep);min-width:108px;box-shadow:inset 0 1px var(--color-surface),0 2px 3px color-mix(in srgb,var(--color-muted) 13.33%,transparent)}.quiet{background:linear-gradient(var(--color-white),var(--color-silver));color:var(--color-ink)}.text-button{font-size:11px;min-height:28px;padding:5px 10px;border-radius:3px}.workspace{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:14px;background:var(--color-lavender-soft);border:1px solid var(--color-silver-dark);border-top:0;border-radius:0 0 12px 12px;box-shadow:inset 0 1px 10px color-mix(in srgb,var(--color-muted) 13.33%,transparent)}.pane{min-width:0;display:flex;flex-direction:column;height:428px;border:1px solid var(--color-silver-dark);border-radius:var(--radius-pane);background:var(--paper);overflow:hidden;box-shadow:0 4px 12px color-mix(in srgb,var(--color-ink) 13.33%,transparent)}.pane-heading{height:39px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid var(--color-line);background:var(--chrome);color:var(--color-ink)}.pane-heading h2{font:600 13px var(--font-display);margin:0;letter-spacing:.02em}.pane-heading>span{font-size:11px;color:var(--color-muted)}.pane-heading h2:before{content:"";display:inline-block;width:6px;height:6px;margin-right:9px;border:1px solid var(--color-disabled);background:var(--color-cyan);box-shadow:inset 0 1px var(--color-cyan-soft)}textarea{width:100%;flex:1;min-height:0;resize:none;border:0;padding:22px 20px;color:var(--color-ink);font:13px/1.9 var(--font-code);tab-size:2;outline-offset:-3px!important;background:linear-gradient(90deg,var(--color-pink-soft) 1px,transparent 1px) 10px 0/1px 100% no-repeat,var(--color-white)}.pane-footer{min-height:34px;flex-shrink:0;border-top:1px solid var(--color-silver);display:flex;align-items:center;justify-content:space-between;padding:6px 12px;font-size:10px;color:var(--color-muted);gap:var(--space-2);background:linear-gradient(var(--color-lavender-soft),var(--color-silver))}.output-scroll{flex:1;overflow:auto;position:relative;padding:22px;background:var(--color-surface)}.empty-state{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-mark{font:38px var(--font-code);color:var(--accent);margin-bottom:18px}.empty-state h3{font:600 20px/1.25 var(--font-display);max-width:26ch;margin:0 0 10px;color:var(--color-ink)}.empty-state p{font-size:12px}.output-scroll pre{font:13px/1.8 var(--font-code);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;color:var(--color-ink)}#plots canvas{display:block;width:100%;height:auto;background:#fff;border:1px solid var(--color-line);margin-top:18px}#plots button{margin-top:8px}.error-location{color:var(--error);background:var(--color-error-soft);margin-top:16px;text-align:left}#generated{margin-top:20px;border-top:1px solid var(--line);padding-top:12px}#generated summary{font-size:12px;color:var(--color-blue);cursor:pointer}#generated pre{margin-top:12px}#status[data-state=failed]{color:var(--error)}#status[data-state=running]{color:var(--accent)}.notice{background:var(--color-lavender-soft);border:1px solid var(--color-lavender);border-radius:var(--radius-small);padding:12px 16px;margin-bottom:18px;font-size:13px;color:var(--color-muted)}.notice button{margin-left:12px}.reference{padding:28px 0 22px}.reference-title{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);margin-bottom:14px}.reference h2{font:600 23px/1.25 var(--font-display);margin:0 0 7px;color:var(--color-ink)}.reference p{font-size:13px}.search input{background:var(--color-white);border:1px solid var(--color-line);border-radius:var(--radius-small);padding:10px 14px;font-size:12px;width:220px;color:var(--color-ink);box-shadow:inset 0 2px 5px color-mix(in srgb,var(--color-muted) 6.67%,transparent)}input::placeholder{color:var(--color-code-comment)}.vocabulary{display:grid;grid-template-columns:repeat(3,1fr);column-gap:28px}.alias{padding:14px 0;border-bottom:1px solid var(--color-silver)}.alias-line{display:flex;align-items:baseline;gap:10px}.alias code{font:13px var(--font-code);color:var(--accent)}.alias .equivalent{font-size:12px;color:var(--color-muted)}.alias p{font-size:12px;line-height:1.5;margin-top:7px}.lesson{margin-top:22px;border:1px solid var(--color-line);border-radius:var(--radius-small);background:var(--color-lavender-soft)}.lesson summary{font:600 14px var(--font-display);cursor:pointer;padding:13px 16px;color:var(--color-ink)}.lesson p{margin:12px 16px}.lesson a{display:inline-block;margin:0 16px 16px;font-size:13px}footer{border-top:1px solid var(--color-line);display:flex;justify-content:space-between;gap:20px;padding:18px 0 22px;color:var(--color-muted);font-size:11px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1344px){.masthead{width:1280px}}@media(max-width:1343px){.masthead{width:calc(100% - 64px)}}@media(max-width:1000px){.masthead{gap:var(--space-3);padding-right:18px}.wordmark{width:210px;height:150px}.product-note{font-size:18px;max-width:190px}.main-nav a{padding:8px 10px}.toolbar{align-items:flex-start;flex-wrap:wrap}.actions{margin-left:auto}}@media(max-width:760px){.masthead{margin-top:14px;min-height:0;padding:0 16px 14px;display:grid;grid-template-columns:150px 1fr;gap:0 12px;width:calc(100% - 24px);border-radius:18px 18px 0 0}.wordmark{width:158px;height:118px}.product-note{font-size:18px}.product-note small{font-size:11px;line-height:1.5;margin-top:8px}.main-nav{grid-column:1/-1;justify-content:center;margin:0;align-self:auto}.main-nav a{flex:1;text-align:center}main{width:calc(100% - 24px);padding:0 14px}.intro{padding:22px 0 20px;align-items:flex-start}h1{font-size:32px}.intro p{font-size:13px}.runtime-label{display:none}.toolbar{gap:var(--space-3);padding:12px}.example-picker{width:100%;justify-content:space-between}.example-picker select{min-width:0;flex:1;max-width:230px}.actions{width:100%;flex-wrap:wrap;gap:6px}.actions .primary{margin-left:auto}.workspace{grid-template-columns:1fr;padding:9px;gap:12px}.pane{height:390px}.output-pane{height:340px}.reference-title{align-items:flex-start;flex-direction:column;gap:14px}.search,.search input{width:100%}.vocabulary{grid-template-columns:1fr 1fr;column-gap:22px}footer{flex-direction:column;gap:8px}.pane-footer{font-size:10px}.editor-pane .pane-footer span{display:none}textarea{font-size:12px;padding:18px 14px}.empty-state h3{font-size:19px}}@media(max-width:450px){.vocabulary{grid-template-columns:1fr}.actions button{padding:8px 11px}.actions #stop{margin-left:auto}.actions .primary{margin-left:0}.reference h2{font-size:21px}.masthead{grid-template-columns:145px 1fr}.wordmark{width:150px}.product-note{font-size:17px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.editor-tools{display:flex;align-items:center;gap:10px;font-size:11px}.editor-tools span{color:var(--color-muted)}.code-editor{position:relative;flex:1;min-height:0;background:var(--color-white)}.code-editor #source,.code-editor #source-highlight{position:absolute;inset:0;width:100%;height:100%;margin:0;border:0;padding:22px 20px;font:13px/1.9 var(--font-code);letter-spacing:normal;tab-size:2;white-space:pre;overflow:auto;overflow-wrap:normal;word-break:normal}.code-editor #source-highlight{pointer-events:none;color:var(--color-ink);background:transparent;scrollbar-width:none}.code-editor #source-highlight::-webkit-scrollbar{display:none}.code-editor #source{color:transparent;-webkit-text-fill-color:transparent;caret-color:var(--color-ink);background:transparent}.code-editor #source::selection{background:color-mix(in srgb,var(--color-silver) 53.33%,transparent);-webkit-text-fill-color:transparent}.syntax-keyword{color:var(--color-lavender-deep)}.syntax-constant{color:var(--color-pink-deep)}.syntax-type{color:var(--color-code-type)}.syntax-function{color:var(--color-blue)}.syntax-string{color:var(--color-code-string)}.syntax-comment{color:var(--color-code-comment)}.syntax-number{color:var(--color-code-number)}.syntax-operator{color:var(--color-pink-deep)}#lesson-content code{font-family:var(--font-code);background:color-mix(in srgb,var(--color-white) 50.2%,transparent);padding:1px 4px;border-radius:3px}@media(max-width:760px){.code-editor #source,.code-editor #source-highlight{font-size:12px;padding:18px 14px}}@media(forced-colors:active){.code-editor #source-highlight{display:none}.code-editor #source{color:CanvasText;-webkit-text-fill-color:CanvasText}}h1{font-size:40px;font-weight:700;font-style:italic;letter-spacing:-.035em;color:var(--color-blue-deep);text-shadow:0 1px 0 var(--color-white),0 2px 0 var(--color-silver);line-height:1.2}.product-note{font-size:20px;line-height:1.3;letter-spacing:.02em;color:var(--color-blue-deep)}.main-nav a{font-size:11px;letter-spacing:.015em}.pane-heading h2{font-size:11px;letter-spacing:.01em}.reference h2{font-size:20px;letter-spacing:-.02em;line-height:1.4}.empty-state h3{font-size:17px;line-height:1.45;letter-spacing:-.02em}.lesson summary{font-size:12px;line-height:1.6}@media(max-width:760px){h1{font-size:30px}.product-note{font-size:15px}.main-nav a{font-size:10px;padding:9px 8px}.reference h2{font-size:18px}.empty-state h3{font-size:16px}}button:hover:not(:disabled){filter:brightness(1.04);border-color:var(--color-blue)}.primary:hover:not(:disabled){border-color:var(--color-pink-deep)}.main-nav a:first-child{color:var(--color-blue-deep)}.extension-card{display:grid;grid-template-columns:1fr auto;gap:var(--space-4);padding:var(--space-6);margin-bottom:var(--space-6);border:1px solid var(--color-line);border-radius:var(--radius-panel);background:linear-gradient(120deg,var(--color-lavender-soft),var(--color-surface),var(--color-cyan-soft))}.extension-eyebrow{font-size:11px;font-weight:600;color:var(--color-blue);margin-bottom:var(--space-2)}.extension-card h2{font:600 20px/1.4 var(--font-display);color:var(--color-blue-deep);margin:0 0 var(--space-2)}.extension-card p,.extension-install li{font-size:13px;line-height:1.7}.extension-downloads{align-self:center;text-align:center}.download-extension{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);background:var(--gradient-primary);color:var(--color-ink);border:1px solid var(--color-pink-deep);border-radius:var(--radius-button);font-size:13px;font-weight:600;text-decoration:none;box-shadow:inset 0 1px var(--color-white)}.download-extension:hover{filter:brightness(1.04)}.download-extension span{font-size:11px;font-weight:400}.extension-downloads p{font-size:11px;margin-top:var(--space-2)}.extension-install{grid-column:1/-1;border-top:1px solid var(--color-line);padding-top:var(--space-3)}.extension-install summary{cursor:pointer;color:var(--color-blue-deep);font-weight:600;font-size:13px}.extension-install ol{padding-left:22px}.extension-install li{margin:var(--space-2) 0}.extension-install pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-small);font:12px/1.7 var(--font-code)}.extension-install code{font-family:var(--font-code)}@media(max-width:760px){.main-nav{flex-wrap:wrap}.main-nav a{flex:1 1 40%}.extension-card{grid-template-columns:1fr;padding:var(--space-4)}.extension-card h2{font-size:18px}.extension-downloads{text-align:left}}#run{background:linear-gradient(var(--color-white),var(--color-pink-soft));color:var(--color-ink);font-size:14px;font-weight:600;line-height:1.4;text-shadow:none;min-height:38px}#run:disabled{background:var(--color-canvas);color:var(--color-muted);border-color:var(--color-line);box-shadow:none}
