: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: #7442a8;--color-code-number: #922a69;--color-code-comment: #626a85;--color-code-type: #7442a8;--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:1400px;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:23px;font-weight:700;letter-spacing:.045em;text-transform:none;color:var(--color-ink);max-width:220px;line-height:1.1}.product-note small{display:block;font:13px 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:14px;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(1400px,calc(100% - 48px));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:39px;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:15px}.runtime-label{font-size:13px!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:13px;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:13px}.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:13px;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:12px;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 14px var(--font-display);margin:0;letter-spacing:.02em}.pane-heading>span{font-size:12px;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:14px/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:11px;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:39px var(--font-code);color:var(--accent);margin-bottom:18px}.empty-state h3{font:600 21px/1.25 var(--font-display);max-width:26ch;margin:0 0 10px;color:var(--color-ink)}.empty-state p{font-size:13px}.output-scroll pre{font:14px/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:13px;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:14px;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 24px/1.25 var(--font-display);margin:0 0 7px;color:var(--color-ink)}.reference p{font-size:14px}.search input{background:var(--color-white);border:1px solid var(--color-line);border-radius:var(--radius-small);padding:10px 14px;font-size:13px;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:14px var(--font-code);color:var(--accent)}.alias .equivalent{font-size:13px;color:var(--color-muted)}.alias p{font-size:13px;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 15px 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:14px}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:12px}.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:1448px){.masthead{width:1400px}}@media(max-width:1447px){.masthead{width:calc(100% - 48px)}}@media(max-width:1000px){.masthead{gap:var(--space-3);padding-right:18px}.wordmark{width:210px;height:150px}.product-note{font-size:19px;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:19px}.product-note small{font-size:12px;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:33px}.intro p{font-size:14px}.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:11px}.editor-pane .pane-footer span{display:none}textarea{font-size:13px;padding:18px 14px}.empty-state h3{font-size:20px}}@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:22px}.masthead{grid-template-columns:145px 1fr}.wordmark{width:150px}.product-note{font-size:18px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.editor-tools{display:flex;align-items:center;gap:10px;font-size:12px}.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:14px/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-pink-deep)}.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-blue-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:13px;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:41px;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:21px;line-height:1.3;letter-spacing:.02em;color:var(--color-blue-deep)}.main-nav a{font-size:12px;letter-spacing:.015em}.pane-heading h2{font-size:12px;letter-spacing:.01em}.reference h2{font-size:21px;letter-spacing:-.02em;line-height:1.4}.empty-state h3{font-size:18px;line-height:1.45;letter-spacing:-.02em}.lesson summary{font-size:13px;line-height:1.6}@media(max-width:760px){h1{font-size:31px}.product-note{font-size:16px}.main-nav a{font-size:11px;padding:9px 8px}.reference h2{font-size:19px}.empty-state h3{font-size:17px}}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:12px;font-weight:600;color:var(--color-blue);margin-bottom:var(--space-2)}.extension-card h2{font:600 21px/1.4 var(--font-display);color:var(--color-blue-deep);margin:0 0 var(--space-2)}.extension-card p,.extension-install li{font-size:14px;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:14px;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:12px;font-weight:400}.extension-downloads p{font-size:12px;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:14px}.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:13px/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:19px}.extension-downloads{text-align:left}}#run{background:linear-gradient(var(--color-white),var(--color-pink-soft));color:var(--color-ink);font-size:15px;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}.hero-actions,.chart-actions,.next-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.hero-actions{margin-top:16px}.link-button{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;min-height:44px;border:1px solid var(--color-blue);border-radius:var(--radius-button);text-decoration:none;font-weight:600;font-size:14px}.primary,.download-extension{background:linear-gradient(var(--color-white),var(--color-pink-soft));color:var(--color-ink)}button,select,summary,.text-button,.main-nav a,#run{min-height:44px}.main-nav a{display:flex;align-items:center;justify-content:center}.pane-heading{min-height:52px;height:auto;gap:8px}.pane-heading h2{flex-shrink:0}.editor-tools{gap:4px}.editor-tools span{font-size:11px}.more-wrap{position:relative}#more-menu{position:absolute;z-index:5;top:100%;left:0;min-width:200px;background:var(--color-surface);padding:8px;border:1px solid var(--color-blue);border-radius:6px;box-shadow:0 4px 12px var(--color-silver)}#more-menu button{display:flex;width:100%;justify-content:flex-start;margin:3px 0}.challenge{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px;background:var(--color-cyan-soft);border-inline:1px solid var(--color-line);font-size:14px}.challenge strong{width:100%}.challenge label{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.challenge input{width:90px;min-height:44px;padding:8px;border:1px solid var(--color-blue);border-radius:4px;background:var(--color-white);color:var(--color-ink)}.challenge p{width:100%;font-size:13px}.pane{height:560px}.output-scroll{padding:12px}.result-tabs{display:flex;gap:6px;padding:6px 10px;border-bottom:1px solid var(--color-line)}[role=tab][aria-selected=true]{background:var(--color-blue-deep);color:var(--color-white);border-color:var(--color-blue-deep)}.mobile-tabs{display:none}.snapshot-note{font-size:13px;padding:8px 12px;background:var(--color-pink-soft);color:var(--color-ink)}#plots figure{margin:0}#plots canvas{margin:0;border:0}#plots figcaption{font-size:14px;line-height:1.6;margin:12px 0}#data-output{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}caption{text-align:left;font-weight:600;padding:12px 0;color:var(--color-ink)}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--color-line);white-space:nowrap}th{background:var(--color-lavender-soft)}#data-output p{font-size:13px;padding:12px 0}.chart-actions{margin:8px 0}.chart-actions span{font-size:13px}.empty-state{height:auto;min-height:100%;gap:8px}#example-preview{width:100%;height:auto;max-height:300px;object-fit:contain}.empty-state h3{font:600 15px/1.5 var(--font-body);max-width:none;margin:0}.next-actions{padding:18px 0}.next-actions p:first-child{flex-basis:100%;font-weight:600;color:var(--color-ink)}.next-actions p:last-child{font-size:13px;flex-basis:100%}.example-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.example-cards article{min-width:0;display:flex;flex-direction:column;gap:10px;padding:14px;background:var(--color-white);border:1px solid var(--color-line);border-radius:12px}.example-cards img{width:100%;height:auto}.example-cards h2{font:600 16px/1.4 var(--font-body);margin:0}.example-cards p{font-size:14px}.example-cards small{color:var(--color-muted);font-size:12px}.example-cards button{margin-top:auto;align-self:flex-start}.extension-card{margin-top:24px}dialog{max-width:min(960px,94vw);max-height:92vh;overflow:auto;background:var(--color-surface);color:var(--color-ink);border:2px solid var(--color-blue);border-radius:12px;padding:20px}dialog::backdrop{background:color-mix(in srgb,var(--color-ink) 60%,transparent)}dialog h2{font:600 19px var(--font-body)}dialog canvas{max-width:100%;height:auto}dialog p{margin:12px 0}#share-fallback{display:block;margin:16px 0}#share-fallback input{display:block;width:100%;padding:12px}summary{padding-block:12px;cursor:pointer}.pane-footer{font-size:12px;min-height:40px}@media(max-width:1000px){.masthead{flex-wrap:wrap}.main-nav{margin-left:auto}.runtime-label{display:none}}@media(max-width:760px){.mobile-tabs{display:flex;gap:8px;padding:8px;background:var(--color-lavender-soft)}.mobile-tabs button{flex:1}.workspace[data-view=code] .output-pane,.workspace[data-view=result] .editor-pane{display:none}.pane{height:520px}.example-cards{grid-template-columns:1fr}.example-cards img{max-height:220px;object-fit:contain}.actions{justify-content:flex-start}.actions #stop{margin-left:0}.actions #run{margin-left:auto}.example-picker{flex-wrap:wrap}.example-picker select{width:100%;max-width:100%}.intro{display:block}.pane-heading{flex-wrap:wrap;padding:4px 8px}.pane-heading h2{font-size:11px}.editor-tools span{display:none}.product-note{min-width:0}.main-nav{width:100%}.main-nav a{min-width:0}.challenge select{min-width:0;max-width:100%}.output-scroll{padding:8px}.extension-card{overflow-wrap:anywhere}}@media(max-width:360px){main{padding-inline:8px}.masthead{grid-template-columns:125px 1fr;padding-inline:8px}.wordmark{width:128px}.product-note{font-size:13px}.actions{gap:4px}.actions button{font-size:12px;padding-inline:8px}.toolbar{padding:8px}.hero-actions .link-button{width:100%}}.masthead{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:20px 28px;min-height:190px}.masthead .wordmark{width:280px;height:150px}.masthead .intro{display:block;padding:0;margin-left:auto;text-align:right}.masthead .intro p{font-size:14px}.masthead .hero-actions{justify-content:flex-end}.example-cards{margin:0;padding:24px 0;gap:14px}.example-cards article{display:grid;grid-template-columns:112px minmax(0,1fr);gap:6px 12px;padding:12px;align-content:start}.example-cards img{grid-column:1;grid-row:1/5;align-self:center;width:100%;height:auto}.example-cards small,.example-cards h2,.example-cards p,.example-cards button{grid-column:2}.example-cards h2{font-size:15px}.example-cards p{font-size:13px;line-height:1.5}.example-cards button{justify-self:start;margin-top:6px}.runtime-feedback:not(.sr-only){display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;font-size:13px;color:var(--color-muted)}footer{align-items:center}footer .runtime-label{display:block;font-size:12px!important;line-height:1.6}@media(max-width:1100px){.example-cards article{grid-template-columns:1fr}.example-cards img{grid-column:1;grid-row:auto;max-height:120px;object-fit:contain}.example-cards small,.example-cards h2,.example-cards p,.example-cards button{grid-column:1}}@media(max-width:760px){.masthead{display:flex;flex-direction:column;gap:4px;padding:12px 16px 20px}.masthead .wordmark{width:220px;height:110px}.masthead .intro{margin:0;text-align:center}.masthead .hero-actions{justify-content:center}.example-cards{gap:10px;padding:16px 0}.example-cards article{grid-template-columns:90px minmax(0,1fr);gap:5px 10px}.example-cards img{grid-column:1;grid-row:1/5}.example-cards small,.example-cards h2,.example-cards p,.example-cards button{grid-column:2}.example-cards p{font-size:12px}.example-cards h2{font-size:14px}footer{align-items:flex-start}footer .runtime-label{text-align:left}.hero-actions .link-button{width:auto}}.example-cards article{grid-template-rows:auto auto 1fr auto}.example-cards button{align-self:end}@media(min-width:761px)and (max-width:1100px){.example-cards article{grid-template-rows:120px auto auto 1fr auto}}.link-button.primary{border-color:var(--color-pink-deep);background:linear-gradient(var(--color-white),var(--color-pink-soft));color:var(--color-ink)}main{padding-top:24px}#example-cards+.extension-card{margin-top:0}main>.extension-card:first-child{margin-top:0}@supports (appearance: base-select){@media(hover:hover)and (pointer:fine){select,select::picker(select){appearance:base-select}select::picker(select){background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-blue);border-radius:6px;padding:4px;box-shadow:0 4px 12px var(--color-silver);font:14px var(--font-body)}select option{padding:10px 12px;min-height:44px;border-radius:3px}select option:hover,select option:focus-visible{background:var(--color-lavender-soft);color:var(--color-ink)}select option:checked{font-weight:600}}}.rstudio-download{grid-column:1/-1;display:grid;grid-template-columns:1.4fr 1fr;gap:24px;border-top:1px solid var(--color-line);padding-top:20px}.rstudio-download h3{font:600 21px var(--font-display);color:var(--color-ink);margin:6px 0 10px}@media(max-width:760px){.rstudio-download{grid-template-columns:1fr;gap:16px}}.editor-download-picker{position:relative;display:inline-block}.editor-download-options{position:fixed;width:300px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;z-index:100;padding:14px;border:1px solid var(--color-silver-dark);border-radius:12px;background:var(--color-surface);box-shadow:0 12px 30px #12204426}.editor-download-options>p{margin:0 0 10px;font-size:13px}.editor-download-options .download-extension{display:flex;flex-direction:column;margin-bottom:10px;min-height:54px}.editor-install-link{display:block;padding:12px 4px;font-size:14px}.editor-download-picker>button{display:flex;align-items:center;gap:16px}#editor-install-dialog{width:640px;max-width:calc(100vw - 32px)}.editor-install-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.editor-install-heading h2{margin:0}#editor-install-content{font-size:15px;line-height:1.65}#editor-install-content pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:14px;background:var(--color-lavender-soft);border-radius:8px}#editor-install-content ol{padding-left:24px}#editor-install-content .download-extension{display:inline-flex;margin:8px 0 12px}.example-picker{position:relative;min-height:44px}.example-loading{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--color-surface);border:1px solid var(--color-silver-dark);border-radius:4px;font-size:13px;color:var(--color-ink);pointer-events:none}.example-picker.is-loading>label,.example-picker.is-loading>select{visibility:hidden}.example-spinner{width:15px;height:15px;border:2px solid var(--color-lavender);border-top-color:var(--color-blue);border-radius:50%;animation:example-spin .8s linear infinite}@keyframes example-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.example-spinner{animation:none}}.example-loading{gap:9px;padding:5px 10px;border:1px solid var(--color-blue);border-radius:3px;background:linear-gradient(180deg,var(--color-white),var(--color-silver) 48%,var(--color-lavender-soft));box-shadow:inset 1px 1px 0 var(--color-white),inset -1px -1px 0 var(--color-silver-dark);overflow:hidden}.example-loading-label{font:600 11px var(--font-display);letter-spacing:.04em;white-space:nowrap;color:var(--color-blue-deep)}.example-load-track{display:flex;align-items:stretch;gap:3px;width:110px;height:20px;padding:3px;background:var(--color-ink);border:1px solid var(--color-silver-dark);box-shadow:inset 1px 1px 2px #0006,0 1px 0 var(--color-white);flex-shrink:0}.example-load-track>span{flex:1;background:linear-gradient(var(--color-white),var(--color-cyan) 35%,var(--color-blue));opacity:.24;animation:y2k-load 1.4s steps(2,end) infinite}.example-load-track>span:nth-child(2){animation-delay:.1s}.example-load-track>span:nth-child(3){animation-delay:.2s}.example-load-track>span:nth-child(4){animation-delay:.3s}.example-load-track>span:nth-child(5){animation-delay:.4s}.example-load-track>span:nth-child(6){animation-delay:.5s}.example-load-track>span:nth-child(7){animation-delay:.6s}.example-load-track>span:nth-child(8){animation-delay:.7s}.example-load-track>span:nth-child(9){animation-delay:.8s}.example-loading-caption{font:11px var(--font-code);color:var(--color-blue-deep);white-space:nowrap}@keyframes y2k-load{0%,to{opacity:.24}35%,65%{opacity:1;background:linear-gradient(var(--color-white),var(--color-pink) 45%,var(--color-lavender))}}@media(max-width:420px){.example-loading-caption{display:none}.example-load-track{flex:1;max-width:130px}}@media(prefers-reduced-motion:reduce){.example-load-track>span{animation:none;opacity:.85}}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.wordmark{position:relative;isolation:isolate}.wordmark:before{content:"";position:absolute;inset:14%;z-index:-1;border-radius:50%;background:radial-gradient(ellipse at var(--holo-x,50%) var(--holo-y,50%),#63d4ef70,#df62aa30 45%,transparent 70%);filter:blur(14px);opacity:0;transition:opacity .2s;pointer-events:none}.wordmark img{transition:transform .18s ease-out,filter .2s;transform:perspective(700px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}.wordmark.holo-active:before{opacity:1}.wordmark.holo-active img{filter:drop-shadow(0 3px 9px #df62aa55)}.example-cards article{position:relative;isolation:isolate;transition:border-color .2s,box-shadow .2s}.example-cards article:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(ellipse at var(--holo-x,50%) var(--holo-y,50%),#63d4ef20,#df62aa12 40%,transparent 70%);opacity:0;transition:opacity .2s;pointer-events:none;z-index:-1}.example-cards article.holo-active{border-color:var(--color-lavender);box-shadow:0 5px 18px #2355b814}.example-cards article.holo-active:after{opacity:1}#run svg{transition:transform .16s ease-out}#run:hover:not(:disabled) svg{transform:translate(3px)}}.example-cards article:focus-within{border-color:var(--color-blue)}.code-editor,#r-source{background:#111a32}.code-editor #source-highlight,#r-source{color:#dce5fa}.code-editor #source{caret-color:#f8f5ff}.code-editor #source::selection{background:#65568f99;-webkit-text-fill-color:transparent}#r-source{padding:18px;border-radius:6px}:is(#source-highlight,#r-source) :is(.syntax-keyword,.syntax-type){--neon:#b7a3e3;color:#eee4ff}:is(#source-highlight,#r-source) :is(.syntax-function,.syntax-constant,.syntax-number){--neon:#df62aa;color:#ffe0f3}:is(#source-highlight,#r-source) :is(.syntax-string,.syntax-operator){--neon:#63d4ef;color:#d7f8ff}:is(#source-highlight,#r-source) [class^=syntax-]:not(.syntax-comment){-webkit-text-stroke:.18px #ffffff99;text-shadow:0 0 1px #ffffffb3,0 0 4px color-mix(in srgb,var(--neon) 65%,transparent),0 0 10px color-mix(in srgb,var(--neon) 32%,transparent)}:is(#source-highlight,#r-source) .syntax-comment{color:#98a6c4;text-shadow:none}@media(prefers-contrast:more){:is(#source-highlight,#r-source) [class^=syntax-]{text-shadow:none;-webkit-text-stroke:0}}@media(forced-colors:active){.code-editor,#r-source{background:Canvas}.code-editor #source{color:CanvasText;-webkit-text-fill-color:CanvasText;caret-color:CanvasText}#r-source,#r-source [class^=syntax-]{color:CanvasText;text-shadow:none;-webkit-text-stroke:0}}:root{--color-acid:#d5fb78}.sticker-row{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin:12px 0}.chrome-sticker{display:inline-block;padding:5px 10px;border:1px solid var(--color-silver-dark);border-radius:3px 12px;background:var(--chrome);font:12px var(--font-code);color:var(--color-blue-deep);box-shadow:2px 3px #12204415;transform:rotate(-3deg)}.sticker-pink{background:linear-gradient(135deg,var(--color-white),var(--color-pink-soft));transform:rotate(3deg)}#result-panel{border:3px solid #253253;background:#111a32}#result-panel>.pane-heading{background:linear-gradient(#263550,#111a32);color:#e5eaff;border-bottom-color:#52617e;flex-wrap:wrap}#result-panel>.pane-heading h2{color:#e5eaff}#result-tabs{background:#111a32;padding:10px}#result-tabs [aria-selected=true]{background:var(--color-acid);color:var(--color-ink);border-color:var(--color-acid)}.success-sticker{padding:3px 9px;border-radius:4px;background:var(--color-acid);color:var(--color-ink);font:600 13px var(--font-body);white-space:nowrap}#result-panel.run-success{border-color:var(--color-acid);animation:success-bloom 1s ease-out}@keyframes success-bloom{0%{box-shadow:0 0 22px #d5fb7870}to{box-shadow:0 0 #d5fb7800}}#example-cards article{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr auto;padding:16px;gap:12px}#example-cards article img{grid-column:1;grid-row:1;width:100%;max-height:none;aspect-ratio:760/480;object-fit:contain;border:1px solid var(--color-silver);border-radius:6px;background:var(--color-surface)}#example-cards article :is(h2,p,button){grid-column:1;grid-row:auto}#example-cards article h2{font:600 14px/1.5 var(--font-code)}.extra-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;padding:18px 0;border-top:1px solid var(--color-line);font-size:13px}.extra-controls>span{margin-right:auto;color:var(--color-muted)}.extra-controls [aria-pressed=true]{background:var(--color-acid);color:var(--color-ink)}body.extra-mode :is(#source-highlight,#r-source) [class^=syntax-]:not(.syntax-comment){text-shadow:0 0 1px #fff,0 0 5px var(--neon),0 0 15px var(--neon),0 0 24px color-mix(in srgb,var(--neon) 45%,transparent)}body.extra-mode .wordmark.holo-active img{filter:drop-shadow(0 0 12px #df62aa99) drop-shadow(0 0 18px #63d4ef66)}@media(max-width:760px){.sticker-row{justify-content:center}.chrome-sticker{font-size:11px}#example-cards article{grid-template-columns:1fr;padding:14px}.extra-controls{justify-content:flex-start}}@media(prefers-reduced-motion:reduce){#result-panel.run-success{animation:none}body.extra-mode :is(#source-highlight,#r-source) [class^=syntax-]:not(.syntax-comment){text-shadow:none}}@media(prefers-contrast:more),(forced-colors:active){body.extra-mode :is(#source-highlight,#r-source) [class^=syntax-]:not(.syntax-comment){text-shadow:none;-webkit-text-stroke:0}}.workspace{grid-template-columns:minmax(0,1fr);gap:20px}.workspace[data-view] .editor-pane,.workspace[data-view] .output-pane{display:flex}.editor-pane{height:520px}.output-pane{height:auto;min-height:380px}.output-pane .output-scroll{flex:initial;overflow:visible;padding:20px}#plots canvas,#example-preview{max-width:100%;width:min(100%,1000px);margin-inline:auto}#example-preview{max-height:480px}.code-editor #source,.code-editor #source-highlight{font-size:16px;line-height:1.85}.output-scroll pre{font-size:16px;line-height:1.8;overflow-wrap:anywhere}button,select,.text-button,.link-button,#run{font-size:16px}.masthead .intro p,.reference p,.alias p,#example-cards article p,#plots figcaption,#editor-install-content{font-size:16px;line-height:1.65}.example-picker label,.pane-heading h2,.alias code,#example-cards article h2{font-size:15px}.pane-footer,.editor-tools span,.snapshot-note,.next-actions p:last-child,.chart-actions span,.editor-install-link,.editor-download-options>p,.extra-controls{font-size:14px}.search input,table,#data-output p{font-size:15px}footer,footer .runtime-label{font-size:14px!important}.pane-heading{padding:10px 14px;min-height:60px}#data-output{max-width:100%}@media(max-width:1000px){.toolbar{flex-wrap:wrap}}@media(max-width:760px){.editor-pane{height:440px}.output-pane{height:auto;min-height:320px}.output-pane .output-scroll{padding:12px}.workspace{gap:16px}.code-editor #source,.code-editor #source-highlight{font-size:15px;padding:18px 14px}.actions button,.example-picker select{font-size:15px}.actions,.pane-heading,.editor-tools{flex-wrap:wrap}.example-picker label{font-size:14px}.extra-controls{gap:8px}}:root{font-size:17px}#result-panel{position:relative}.output-loading{position:absolute;inset:40px 0 0;z-index:3;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 25% 30%,var(--color-pink-soft),transparent 65%),linear-gradient(135deg,var(--color-lavender-soft),var(--color-cyan-soft))}.output-loading-window{width:min(100%,420px);border:1px solid var(--color-blue-deep);border-radius:5px;overflow:hidden;box-shadow:3px 3px 0 var(--color-silver-dark),inset 1px 1px #fff;background:var(--color-surface)}.output-loading-title{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;background:var(--chrome);border-bottom:1px solid var(--color-silver-dark);font:600 14px var(--font-display);color:var(--color-blue-deep)}.output-loading-body{padding:24px;text-align:center;color:var(--color-ink)}.output-loading-icon{display:block;font-size:42px;line-height:1;margin-bottom:16px;color:var(--color-pink-deep);text-shadow:0 0 12px var(--color-pink)}.output-loading-body strong{font:600 18px var(--font-display)}.output-loading-body p{font-size:16px;margin:10px 0 20px}.output-loading-body small{display:block;font-size:13px;line-height:1.5;color:var(--color-muted);margin-top:14px}.output-loading-track{height:22px;padding:3px;overflow:hidden;border:1px solid var(--color-silver-dark);box-shadow:inset 1px 1px 2px var(--color-muted);background:var(--color-white)}.output-loading-track span{display:block;width:42%;height:100%;background:repeating-linear-gradient(90deg,var(--color-blue) 0 12px,transparent 12px 16px);filter:drop-shadow(0 0 3px var(--color-cyan));animation:output-buffer 1.8s ease-in-out infinite alternate}@keyframes output-buffer{0%{transform:translate(-110%)}to{transform:translate(340%)}}#result-panel.is-running>.output-scroll,#result-panel.is-running>#result-tabs,#result-panel.is-running>#snapshot-note{visibility:hidden}@media(prefers-reduced-motion:reduce){.output-loading-track span{animation:none;width:60%}}@media(max-width:420px){.output-loading{padding:16px}.output-loading-body{padding:18px 12px}}.masthead{flex-direction:column;justify-content:center;gap:20px;padding:36px 28px 42px}.brand-stage{position:relative;width:min(100%,680px);display:flex;justify-content:center}.masthead .wordmark{width:320px;height:146px;max-width:100%}.masthead .intro{margin:0;text-align:center;padding:0}.masthead .intro p{margin-inline:auto}.masthead .hero-actions{justify-content:center;margin-top:24px}.masthead .editor-download-options{text-align:left}.brand-stage .sticker-row{position:absolute;inset:0;margin:0;display:block;pointer-events:none}.brand-stage .chrome-sticker{position:absolute;left:0;top:42%;transform:rotate(-8deg)}.brand-stage .sticker-pink{left:auto;right:0;top:65%;transform:rotate(7deg)}@media(max-width:760px){.masthead{padding:26px 16px 32px;gap:16px}.masthead .wordmark{width:270px;height:123px}.brand-stage{padding-bottom:30px}.brand-stage .chrome-sticker{top:auto;bottom:5px;left:calc(50% - 146px);transform:rotate(-4deg)}.brand-stage .sticker-pink{left:auto;right:calc(50% - 146px);bottom:0;transform:rotate(4deg)}}@media(max-width:360px){.brand-stage .chrome-sticker{font-size:10px;padding:5px 7px;left:0}.brand-stage .sticker-pink{left:auto;right:0}}.masthead .editor-download-picker{display:block;width:100%}.masthead .editor-download-options{position:static;display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:12px;width:auto;max-width:none;max-height:none;overflow:visible;padding:0;border:0;background:none;box-shadow:none;text-align:center}.masthead .editor-download-options .download-extension{margin:0;min-width:220px;align-items:center;justify-content:center}.masthead .editor-install-link{flex-basis:100%;padding:4px;font-size:14px}@media(max-width:480px){.masthead .editor-download-options .download-extension{width:100%;min-width:0}}.wordmark{position:relative}.wordmark .logo-webgl{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:0;object-fit:contain;transform:perspective(700px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .18s ease-out}.wordmark.has-webgl img{opacity:0}.wordmark.has-webgl .logo-webgl{opacity:1}@media(prefers-reduced-motion:reduce),(forced-colors:active){.wordmark.has-webgl img{opacity:1}.wordmark .logo-webgl{display:none}}
