.custom-select{display:inline-flex;min-width:0;max-width:100%;vertical-align:middle;position:relative}.custom-select>.custom-select-trigger{width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding:8px 11px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text);font:inherit;font-size:13px;text-align:left;cursor:pointer}.custom-select-trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-trigger>svg{flex-shrink:0;color:var(--accent-text);transition:transform .15s}.custom-select-trigger[aria-expanded=true]{border-color:var(--accent-text);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-text) 13%,transparent)}.custom-select-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.custom-select-trigger:hover{border-color:var(--accent-text)}.custom-select-trigger:disabled{cursor:default;opacity:.45}.custom-select-trigger:focus-visible{outline:3px solid #b4a3ed;outline-offset:2px}.custom-select-menu{position:fixed;z-index:2200;margin:0;padding:4px;list-style:none;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;box-sizing:border-box;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);box-shadow:0 12px 36px #17102029,0 3px 8px #1710200f;font-family:DM Sans Variable,sans-serif;font-size:13px;line-height:1.4;text-align:left}.custom-select-option{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;padding:10px 11px;border:1px solid transparent;border-radius:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.custom-select-option>span{overflow-wrap:anywhere}.custom-select-option>svg{flex-shrink:0;color:var(--accent-text)}.custom-select-option[aria-selected=true]{color:var(--accent-text);font-weight:650;background:var(--selected-surface)}.custom-select-option[data-active=true]{background:var(--selected-surface);border-color:color-mix(in srgb,var(--accent-text) 35%,var(--border))}.custom-select-option[aria-disabled=true]{opacity:.45;cursor:not-allowed;background:transparent;color:var(--muted)}.lesson-field>.custom-select{width:100%}.toolbar-language>.custom-select{width:82px}.toolbar-language .custom-select-trigger{min-height:36px;padding:6px 8px;font-size:12px;background:var(--page);gap:8px}.speed>.custom-select{width:72px}.speed .custom-select-trigger{min-height:36px;padding:6px 8px;gap:5px;font-size:12px;background:var(--selected-surface);color:var(--accent-text)}.cx-controls label>.custom-select{max-width:100%}.cx-controls .custom-select-trigger{background:var(--page)}@media(max-width:799px){.lesson-field .custom-select-trigger{min-height:44px;font-size:16px}.speed .custom-select-trigger{height:44px}.custom-select-menu{font-size:14px}.custom-select-option{min-height:44px}}@media(forced-colors:active){.custom-select-trigger,.custom-select-menu,.custom-select-option[data-active=true]{border-color:ButtonText}.custom-select-option[aria-selected=true]{color:HighlightText;background:Highlight}}.home-page{--home-ink:#252938;--home-muted:#646c7d;--home-accent:#6849b4;--home-soft:#efedf7;--home-panel:#ffffff;--home-bg:#f5f6f9;--home-line:#dfe3eb;--home-dot:#d9dce6;color:var(--home-ink);background:var(--home-bg);min-height:100dvh;font-size:14px;line-height:1.5}[data-theme=dark] .home-page{--home-ink:#f0f0f6;--home-muted:#a8adbd;--home-accent:#b9a3f2;--home-soft:#292638;--home-panel:#1b1d27;--home-bg:#12141d;--home-line:#303441;--home-dot:#323643}.home-main{width:min(1320px,100%);margin:0 auto;padding-left:40px;padding-right:40px;max-width:1320px}.home-text-link:hover{color:var(--home-accent)}.home-page .theme-toggle{background:var(--home-panel);border-color:var(--home-line);color:var(--home-accent);width:40px;height:40px}.home-page main.home-main{margin:0 auto;width:100%;height:auto;min-width:0;display:block;outline:none}.home-hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:44px;padding:34px 0 28px}.home-eyebrow{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:750;letter-spacing:1.5px;color:var(--home-muted);margin:0 0 14px}.home-status-dot{display:inline-block;flex-shrink:0;height:6px;width:6px;border-radius:50%;background:#64834a;box-shadow:0 0 0 4px #77945914}.home-page h1{font-size:clamp(30px,3.2vw,44px);font-family:Manrope Variable,sans-serif;font-weight:800;line-height:1.17;letter-spacing:-1.8px;margin:0 0 16px}.home-page h1>span{color:var(--home-accent)}.home-description{color:var(--home-muted);font-size:14px;line-height:1.8;margin:0 0 24px}.home-hero-actions{display:flex;align-items:center;gap:24px}.home-primary{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:22px;background:#7254bd;color:#fff;border:1px solid #7254bd;border-radius:9px;padding:11px 18px;font-size:12px;font-weight:650;box-shadow:0 4px 12px #6848a31a}.home-primary:hover{background:#6041a7;color:#fff}.home-text-link{display:inline-flex;gap:10px;align-items:center;font-size:12px;font-weight:650;min-height:44px}.home-facts{display:flex;align-items:center;gap:20px;margin-top:24px;font-size:11px;color:var(--home-muted);flex-wrap:wrap}.home-facts strong{font-size:13px;color:var(--home-ink);font-weight:750}.home-facts>span+span{border-left:1px solid var(--home-line);padding-left:20px}.home-demo{background:var(--home-panel);border:1px solid var(--home-line);border-radius:16px;box-shadow:0 12px 40px #151b3210;overflow:hidden;min-width:0}.home-showcase-heading{display:flex;align-items:center;justify-content:space-between;padding:15px 18px 0;gap:10px}.home-live-label{font-size:8px;font-weight:750;letter-spacing:1.2px;color:var(--home-muted)}.home-page .home-showcase h2{font-size:13px;letter-spacing:-.2px;margin:3px 0 0;font-weight:650}.home-view-toggle{font-size:10px;color:var(--home-accent);background:var(--home-soft);border:1px solid var(--home-line);border-radius:6px;padding:6px 10px;min-height:34px;white-space:nowrap}.home-tree-scene{position:relative;height:207px;background:radial-gradient(ellipse at 50% 40%,var(--home-soft),transparent 65%);overflow:hidden}.home-tree-scene .tree-mount{position:absolute;top:0;right:0;bottom:0;left:0}.home-tree-scene .planar-mount{overflow:hidden}.home-tree-scene .fallback-tree{min-width:0!important;min-height:0!important;width:100%;height:100%;display:block}.home-tree-scene .fallback-note{font-size:9px;bottom:4px}.home-orbit-hint{color:var(--home-muted);font-size:9px;text-align:center;margin:0 10px 11px}.home-preview-controls{display:flex;align-items:center;gap:8px;padding:0 16px 10px}.home-play{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--home-soft);color:var(--home-accent);border:1px solid var(--home-line);border-radius:6px;padding:7px 12px;min-height:36px;font-size:11px;font-weight:650}.home-reset{display:grid;place-items:center;border:1px solid var(--home-line);border-radius:6px;min-width:36px;min-height:36px;color:var(--home-muted)}.home-preview-controls>span{margin-left:auto;font-size:10px;color:var(--home-muted)}.home-preview-controls strong{padding-left:6px;color:var(--home-ink)}.home-traversal-output{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-height:38px;background:var(--home-bg);border-top:1px solid var(--home-line);padding:7px 16px;font-size:10px;color:var(--home-muted)}.home-traversal-output b{font-size:10px;color:var(--home-accent);font-variant-numeric:tabular-nums}.home-traversal-output b+b:before{content:"→";font-weight:400;color:var(--home-muted);margin-right:6px}.home-demo-link{display:flex;align-items:center;justify-content:space-between;padding:10px 17px;font-size:11px;font-weight:650;border-top:1px solid var(--home-line);color:var(--home-accent)}.home-demo-link:hover{background:var(--home-soft)}.home-preview-loading{display:grid;place-items:center;min-height:347px;color:var(--home-muted);font-size:12px}.home-tool-strip{display:grid;grid-template-columns:1fr 1.15fr 1fr 1fr;border:1px solid var(--home-line);background:var(--home-panel);border-radius:10px;margin:0 0 32px;padding:14px 0;gap:0}.home-tool-strip>*{display:flex;align-items:center;justify-content:center;gap:7px;padding:2px 12px;font-size:11px;color:var(--home-muted)}.home-tool-strip>*+*{border-left:1px solid var(--home-line)}.home-tool-strip b{font-weight:650;color:var(--home-ink)}.home-tool-strip svg{color:var(--home-accent)}.home-tool-strip a:hover b{color:var(--home-accent)}.home-topics{scroll-margin-top:20px}.home-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px}.home-section-heading .home-eyebrow{margin-bottom:6px}.home-page h2{font-family:Manrope Variable,sans-serif;font-size:25px;font-weight:750;letter-spacing:-.8px;line-height:1.3;margin:0}.home-section-heading h2>span{color:var(--home-accent)}.home-explorer-tools{display:flex;align-items:center;gap:12px}.home-search{display:flex;align-items:center;gap:9px;border:1px solid var(--home-line);background:var(--home-panel);border-radius:8px;padding:0 11px;height:42px;width:252px;color:var(--home-muted)}.home-search:focus-within{outline:2px solid var(--home-accent);outline-offset:2px}.home-search input{border:0;outline:0;background:transparent;color:var(--home-ink);width:100%;min-width:0;font-size:12px;height:100%}.home-search input:focus-visible{outline:0}.home-search input::-webkit-search-cancel-button{display:none}.home-search input::placeholder{color:var(--home-muted);opacity:1}.home-search button{display:grid;place-items:center;padding:0;width:28px;height:36px}.home-search kbd{border:1px solid var(--home-line);border-radius:4px;padding:0 5px;font-size:11px}.home-view-switch{display:flex;gap:3px;background:var(--home-panel);border:1px solid var(--home-line);padding:4px;border-radius:9px}.home-view-switch button{display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--home-muted);font-size:11px;font-weight:600;padding:7px 10px;min-height:32px;border-radius:5px;white-space:nowrap}.home-view-switch button[aria-pressed=true]{background:var(--home-soft);color:var(--home-accent)}.home-explorer-caption{display:flex;justify-content:space-between;gap:16px;font-size:10px;color:var(--home-muted);margin:0 0 12px}.curriculum-map{border:1px solid var(--home-line);border-radius:14px;overflow:hidden;background:var(--home-panel);position:relative;isolation:isolate}.curriculum-map:fullscreen{border-radius:0;width:100%;height:100dvh;display:flex;flex-direction:column;color:var(--home-ink);background:var(--home-panel)}.curriculum-map:fullscreen .map-viewport{height:auto;flex:1}.map-topbar{height:44px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--home-line);padding:0 16px;font-size:9px;letter-spacing:1px;color:var(--home-muted)}.map-topbar>span{display:flex;align-items:center;gap:9px}.map-topbar>div{display:flex;align-items:center;gap:6px}.map-topbar button{display:flex;align-items:center;gap:6px;min-height:34px;min-width:34px;justify-content:center;font-size:10px;letter-spacing:0;border-radius:6px;color:var(--home-muted)}.map-topbar button:hover,.map-zoom button:hover{background:var(--home-soft);color:var(--home-accent)}.map-viewport{position:relative;height:510px;overflow:hidden;touch-action:none;background-image:radial-gradient(var(--home-dot) .8px,transparent .8px);background-size:18px 18px;cursor:grab}.map-viewport:active{cursor:grabbing}.map-viewport:focus-visible{outline-offset:-4px}.map-world{position:absolute;left:0;top:0;transform-origin:0 0;width:0;height:0}.map-connections{position:absolute;top:0;left:0;overflow:visible;pointer-events:none}.map-root{position:absolute;left:-92px;top:-52px;width:184px;height:104px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;border-radius:16px;background:var(--home-soft);border:1px solid var(--home-accent);box-shadow:0 8px 30px #51407714;color:var(--home-accent)}.map-root strong{font-size:15px;letter-spacing:1px}.map-root small{font-size:10px;color:var(--home-muted)}.map-node{position:absolute;border:1px solid var(--home-line);border-radius:9px;background:var(--home-panel);box-shadow:0 3px 9px #151b3208;cursor:default}.map-module{display:flex;border-left:3px solid var(--topic-accent)}.map-module-toggle{display:flex;align-items:center;gap:9px;flex:1;min-width:0;padding:6px 8px;text-align:left;border-radius:8px;color:var(--home-ink)}.map-module-toggle>svg:first-child{color:var(--topic-accent)}.map-module-toggle>span{font-size:11px;line-height:1.3;font-weight:650;flex:1;min-width:0}.map-module-toggle small{display:block;color:var(--home-muted);font-size:9px;font-weight:400;margin-top:3px}.map-module-toggle>svg:last-child{color:var(--home-muted)}.map-module-toggle[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}.map-module-open{display:grid;place-items:center;min-width:32px;border-left:1px solid var(--home-line);border-radius:0 8px 8px 0;color:var(--home-muted)}.map-module-toggle:hover,.map-module-open:hover,.map-lesson a:hover{background:var(--home-soft)}.map-lesson{border-left:2px solid var(--topic-accent);border-radius:7px}.map-lesson a{height:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 10px;font-size:11px;border-radius:7px;line-height:1.15;color:var(--home-ink)}.map-lesson a>span{flex:1}.map-lesson svg{color:var(--home-muted)}.map-bottom-bar{border-top:1px solid var(--home-line);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 14px;font-size:10px;color:var(--home-muted);min-height:49px}.map-zoom{display:flex;align-items:center;gap:3px}.map-zoom button{display:grid;place-items:center;min-height:32px;min-width:32px;border:1px solid var(--home-line);border-radius:5px;color:var(--home-muted)}.map-zoom>span{font-size:10px;text-align:center;width:40px;font-variant-numeric:tabular-nums}.map-notice{font-size:11px;padding:8px 14px;margin:0;color:var(--home-muted)}.home-map-loading{min-height:604px;display:grid;place-items:center;color:var(--home-muted)}.home-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.home-topic-card{background:var(--home-panel);border:1px solid var(--home-line);border-radius:12px;overflow:hidden;position:relative;display:flex;flex-direction:column;transition:border-color .18s,box-shadow .18s}.home-topic-card:hover{border-color:var(--topic-accent);box-shadow:0 5px 18px #2d244510}.home-topic-art{position:relative;height:94px;display:flex;align-items:center;justify-content:center;color:var(--topic-accent);background:linear-gradient(135deg,var(--home-soft),var(--home-panel))}.topic-illustration{height:84px;width:185px}.home-topic-icon{position:absolute;left:16px;top:14px}.home-lesson-count{position:absolute;right:13px;top:14px;font-size:9px;color:var(--home-muted)}.home-topic-card h3{font-size:15px;font-weight:700;letter-spacing:-.3px;margin:16px 18px 6px}.home-topic-card>p{color:var(--home-muted);font-size:12px;line-height:1.6;margin:0 18px 12px;min-height:38px}.home-module-link{display:flex;align-items:center;justify-content:space-between;color:var(--home-accent);font-size:11px;font-weight:650;margin:0 18px 10px;min-height:32px}.home-module-link:hover{text-decoration:underline}.home-topic-card details{margin-top:auto;border-top:1px solid var(--home-line);font-size:11px}.home-topic-card summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;padding:12px 18px;min-height:42px;color:var(--home-muted)}.home-topic-card summary::-webkit-details-marker{display:none}.home-topic-card details[open] summary svg{transform:rotate(180deg)}.home-topic-card details ul{list-style:none;margin:0;padding:0 12px 10px}.home-topic-card details a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 6px;min-height:38px;border-radius:5px;color:var(--home-ink)}.home-topic-card details a:hover{background:var(--home-soft);color:var(--home-accent)}.home-empty{min-height:280px;border:1px solid var(--home-line);border-radius:12px;background:var(--home-panel);display:flex;align-items:center;justify-content:center;flex-direction:column;padding:25px;color:var(--home-muted)}.home-empty h3{color:var(--home-ink);margin:12px 0 0}.home-empty p{font-size:12px}.home-empty button{margin-top:10px}.home-start{padding:32px 0}.home-start h2{font-size:19px;letter-spacing:-.4px}.home-muted{color:var(--home-muted);font-size:11px}.home-start-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.home-start-grid>a{padding:17px 18px;background:var(--home-panel);border:1px solid var(--home-line);border-radius:10px}.home-start-grid>a:hover{border-color:var(--home-accent);background:var(--home-soft)}.home-start-grid small{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.8px;color:var(--home-accent)}.home-start-grid h3{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;font-weight:700;margin:14px 0 5px;letter-spacing:-.3px}.home-start-grid p{font-size:11px;color:var(--home-muted);margin:0}[data-theme=dark] .home-page .home-status-dot{background:#b7d48f}[data-theme=dark] .home-topic-art{filter:brightness(1.15)}[data-theme=dark] .map-module-toggle>svg:first-child{color:var(--home-accent)}.workspace-home-link{display:inline-flex;align-items:center;justify-content:center;width:36px;min-height:36px;color:var(--accent-text);border:1px solid var(--border);border-radius:6px;padding:0;flex-shrink:0}.workspace-home-link:hover{background:var(--selected-surface)}.map-module-toggle>span{font-size:13px;line-height:1.2}.map-module-toggle small{font-size:10px}.map-lesson a{font-size:12px}.map-zoom>output{font-size:10px;text-align:center;width:40px;font-variant-numeric:tabular-nums}@media(min-width:1600px){.home-hero{gap:70px;padding-top:40px;padding-bottom:35px}}@media(max-width:1100px){.home-main{padding-left:24px;padding-right:24px}.home-hero{gap:25px}.home-page h1{font-size:35px}.home-explorer-tools{gap:8px}.home-search{width:220px}.home-page h2{font-size:22px}.home-tool-strip>*{font-size:10px;gap:5px;padding-left:7px;padding-right:7px}.home-start h2{font-size:19px}.home-facts{gap:12px}.home-facts>span+span{padding-left:12px}}@media(max-width:900px){.home-section-heading{flex-wrap:wrap}.home-explorer-tools{width:100%;justify-content:space-between}.home-search{flex:1;max-width:380px}.home-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-tool-strip{grid-template-columns:1fr 1fr;row-gap:12px}.home-tool-strip>:nth-child(3){border-left:0}.home-page h1{font-size:30px;letter-spacing:-1.2px}.home-description{font-size:12px}.home-hero-actions{gap:14px}.home-start-grid h3{font-size:12px}.home-facts{font-size:10px}.home-facts>span:last-child{width:100%;border-left:0;padding-left:0}.home-map-loading{min-height:604px}}@media(max-width:700px){.home-main{padding-left:18px;padding-right:18px}.home-hero{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:27px}.home-page h1{font-size:clamp(30px,6.5vw,42px)}.home-description{font-size:13px;margin-bottom:18px}.home-hero .home-eyebrow{font-size:8px}.home-facts{gap:12px;margin-top:18px}.home-facts>span:last-child{width:auto;border-left:1px solid var(--home-line);padding-left:12px}.home-hero-actions{gap:22px}.home-tree-scene{height:210px}.home-preview-controls button{min-height:40px}.home-view-toggle{min-height:38px}.home-tool-strip{margin-bottom:26px;padding-top:12px;padding-bottom:12px}.home-tool-strip>*{font-size:9px;gap:5px}.home-tool-strip svg{width:14px;height:14px}.home-section-heading{gap:14px}.home-page h2{font-size:23px}.home-explorer-tools{flex-wrap:wrap;gap:10px}.home-search{width:100%;flex-basis:100%;max-width:none;height:44px}.home-search input{font-size:16px}.home-view-switch{width:100%}.home-view-switch button{flex:1;min-height:36px}.home-explorer-caption{font-size:9px}.home-explorer-caption>span:last-child{max-width:155px;text-align:right}.home-topic-grid{gap:12px}.home-topic-card h3{font-size:13px;margin:13px 13px 6px}.home-topic-card>p{font-size:11px;margin-left:13px;margin-right:13px;min-height:54px}.home-module-link{margin-left:13px;margin-right:13px;min-height:40px}.home-topic-icon{left:11px;top:11px}.home-lesson-count{right:9px;top:12px;font-size:8px}.topic-illustration{width:145px;height:75px}.home-topic-art{height:83px}.home-topic-card summary{font-size:10px;padding-left:13px;padding-right:13px;min-height:44px}.home-topic-card details a{min-height:44px;font-size:11px}.home-start{padding:27px 0}.home-start .home-muted{display:none}.home-start-grid{grid-template-columns:1fr;gap:10px}.home-start h2{font-size:19px}.home-start-grid h3{font-size:14px;margin-top:10px}.home-start-grid>a{padding:15px 17px}.map-viewport{height:480px}.map-bottom-bar{padding:8px}.map-gesture-hint{font-size:0}.map-gesture-hint:before{content:"Pinch to zoom";font-size:9px}.map-zoom button{min-height:38px;min-width:35px}.map-topbar{padding-left:12px;padding-right:8px;font-size:8px}.map-topbar button{min-height:38px}.map-topbar button span{font-size:9px}.map-bottom-bar{min-height:56px}.home-map-loading{min-height:580px}}@media(max-width:380px){.home-main{padding-left:13px;padding-right:13px}.home-page h1{font-size:28px}.home-facts{gap:9px;font-size:9px}.home-facts>span+span{padding-left:9px}.home-tool-strip>*{font-size:8px}.home-topic-grid{grid-template-columns:minmax(0,1fr)}.home-topic-card>p{min-height:0}.home-topic-art{height:90px}.topic-illustration{width:180px}.home-preview-controls>span{font-size:9px}.home-orbit-hint{font-size:8px}.home-preview-controls{padding-left:12px;padding-right:12px}.map-topbar button span{display:none}}@media(prefers-reduced-motion:reduce){.home-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.studio-header{--home-panel:#6b4fa5;--home-ink:#fff;--home-muted:#eee5ff;--home-accent:#f1eaff;--home-soft:#ffffff14;--home-line:#ffffff29;position:sticky;top:0;z-index:60;width:100%;border-bottom:1px solid var(--home-line);background:linear-gradient(110deg,#6b4fa5,#7357ad);box-shadow:0 4px 18px #39265f1a}.studio-header-inner{max-width:1320px;margin:0 auto;min-height:64px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:28px}.studio-wordmark{display:inline-flex;align-items:center;gap:12px;font-family:Manrope Variable,sans-serif;font-size:21px;font-weight:800;letter-spacing:-.8px;color:var(--home-ink);white-space:nowrap;min-height:44px;flex-shrink:0}.studio-wordmark b{color:var(--home-accent)}.studio-brand-symbol{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;color:var(--home-accent);border:1px solid color-mix(in srgb,var(--home-accent) 25%,var(--home-line));background:linear-gradient(135deg,var(--home-soft),var(--home-panel));box-shadow:inset 0 1px #ffffff18,0 4px 12px #6849b410}.studio-desktop-nav{display:flex;align-items:center;gap:6px}.studio-desktop-nav a{padding:12px 15px;min-height:44px;display:flex;align-items:center;justify-content:center;color:var(--home-muted);font-size:13px;font-weight:600;border-radius:8px}.studio-desktop-nav a:hover{background:var(--home-soft);color:var(--home-accent)}.studio-header-actions{display:flex;align-items:center;gap:12px}.studio-theme-button,.studio-menu-toggle{height:40px;width:40px;display:grid;place-items:center;border:1px solid var(--home-line);border-radius:9px;color:var(--home-muted);background:var(--home-panel);flex-shrink:0}.studio-theme-button:hover,.studio-menu-toggle:hover{background:var(--home-soft);color:var(--home-accent)}.studio-lab-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:42px;padding:10px 17px;border-radius:8px;font-size:12px;font-weight:650;color:#fff;background:#7254bd;border:1px solid #7254bd;box-shadow:0 3px 9px #6848a31a}.studio-lab-button:hover{background:#6041a7;color:#fff}.studio-menu-toggle,.studio-mobile-nav{display:none}.studio-header .studio-lab-button{background:#fff;border-color:#fff;color:#513781;box-shadow:0 3px 9px #21152f20}.studio-header .studio-lab-button:hover{background:#f2eaff;border-color:#f2eaff;color:#43276c}.home-topics{scroll-margin-top:88px}.home-page #topics-title:focus{outline:none}.home-page #home-brand-link:focus-visible{outline:3px solid #b4a3ed;outline-offset:5px;border-radius:6px}.studio-footer{--home-panel:#39265f;--home-ink:#fff;--home-muted:#ded4f0;--home-accent:#f1eaff;--home-soft:#ffffff10;--home-line:#ffffff29;position:relative;width:100%;margin-top:8px;background:linear-gradient(120deg,#39265f,#30204f);border-top:1px solid var(--home-line)}.studio-footer:before{content:"";position:absolute;height:2px;top:-1px;left:0;right:0;background:linear-gradient(90deg,transparent,var(--home-accent),transparent);opacity:.3}.studio-footer-inner{max-width:1320px;margin:0 auto;padding:0 40px}.studio-footer-top{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;padding:38px 0 30px}.studio-footer-brand p{font-size:13px;line-height:1.7;color:var(--home-muted);margin:14px 0 7px}.studio-footer-brand>span{font-size:11px;color:var(--home-muted)}.studio-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-top:7px}.studio-footer nav h2{font-family:DM Sans Variable,sans-serif;font-size:11px;font-weight:750;letter-spacing:1px;text-transform:uppercase;margin:0 0 12px;color:var(--home-ink)}.studio-footer nav a{display:flex;align-items:center;gap:7px;width:fit-content;min-height:36px;font-size:12px;color:var(--home-muted)}.studio-footer a:hover{color:var(--home-accent)}.studio-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:62px;border-top:1px solid var(--home-line);font-size:11px;color:var(--home-muted)}.studio-footer-bottom>span>a{color:var(--home-ink);margin-left:4px}.studio-back-top{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-weight:600}@media(max-width:1100px){.studio-header-inner,.studio-footer-inner{padding-left:24px;padding-right:24px}.studio-header-inner{gap:16px}.studio-desktop-nav{gap:0}.studio-desktop-nav a{padding:12px;font-size:12px}.studio-wordmark{font-size:20px}.studio-footer-top{gap:35px}}@media(max-width:899px){.studio-header-inner{min-height:60px}.studio-desktop-nav{display:none}.studio-header-actions>.studio-lab-button{display:none}.studio-menu-toggle{display:grid}.studio-header-actions{gap:8px}.studio-mobile-nav:not([hidden]){display:flex;flex-direction:column;gap:4px;padding:8px 24px 20px;max-height:calc(100dvh - 60px);overflow-y:auto;border-top:1px solid var(--home-line);background:var(--home-panel);box-shadow:0 14px 20px #151b3214}.studio-mobile-nav>a:not(.studio-lab-button){display:flex;align-items:center;min-height:46px;padding:9px 12px;border-radius:7px;font-size:14px;font-weight:600;color:var(--home-ink)}.studio-mobile-nav>a:hover{background:var(--home-soft);color:var(--home-accent)}.studio-mobile-nav .studio-lab-button{margin-top:8px;justify-content:space-between;padding:12px}.studio-footer-top{grid-template-columns:1fr;gap:25px;padding-top:30px}.studio-footer nav{max-width:500px}.home-topics{scroll-margin-top:84px}}@media(max-width:700px){.studio-header-inner,.studio-footer-inner{padding-left:18px;padding-right:18px}.studio-header-inner{min-height:60px;gap:12px}.studio-wordmark{font-size:20px;gap:9px}.studio-brand-symbol{width:40px;height:40px;border-radius:11px}.studio-brand-symbol svg{width:24px;height:24px}.studio-theme-button,.studio-menu-toggle{width:40px;height:44px}.studio-mobile-nav:not([hidden]){padding-left:18px;padding-right:18px;max-height:calc(100dvh - 60px)}.studio-footer nav{gap:20px}.studio-footer nav a{min-height:44px;font-size:12px}.studio-footer-top{padding-bottom:24px;gap:24px}.studio-footer-bottom{min-height:66px;font-size:10px;gap:10px}.studio-footer-brand p{font-size:12px}.studio-footer-brand>span{font-size:10px}}@media(max-width:380px){.studio-header-inner,.studio-footer-inner{padding-left:13px;padding-right:13px}.studio-wordmark{font-size:18px;gap:8px}.studio-brand-symbol{width:36px;height:38px}.studio-header-actions{gap:5px}.studio-theme-button,.studio-menu-toggle{width:36px}.studio-footer nav{gap:16px}.studio-footer nav a{font-size:11px}}[data-theme=dark] .studio-header{--home-panel:#332146;background:linear-gradient(110deg,#332146,#40295e)}[data-theme=dark] .studio-footer{--home-panel:#21152f;background:linear-gradient(120deg,#21152f,#2a1a3e)}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2) format("woff2-variations");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 Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2) format("woff2-variations");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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAn4ABMAAAAAEwQAAAmOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjQbgnQcLj9IVkFSgQEGYD9TVEFUgQIAgQovahEICok0h0ULIAAwhzoBNgIkAzwEIAWHJgeBDgwHG6QQUdRKTmoBFD8K42bniObKrG3LZFcMWZzFmrjTFhQ6TVTqPJcInrfrvzq3b2PGn1wwMiNYGTy9ViREYARlL1zAGcPdPqBt3gNWrfKthv4xnM+b9caw+wmjgEUVRjHXhS6jgCK6zf5HiWQacJpGdAgdrbV6g/Rf1BfxRqZVQnrxRVWSJb6RLFnyu0elilmjeoSQCKnxsmwLaddUMjnksriSYuuPl06EAl7KfAiWQjCUETz0zNZ3EII94CDQtzkMfZ/9IkkY8tZRZTDky5ZVwBAM+GYpdd4ZVAWYImnLkiTg48l79gGx3D+VBtLeyg8u7bJAd4uo0pFuQBFysE9C95l0W4Fkiao6GfrDbu77lVU7wk9cV3uqOsXmQiMkhVKl1ugjzUAJBSIkkVWHijkpkVSyUFsgVBuJMA0N+ZnXtyUv5yMigGdfQRmwL1AAjQ3YXG6iIFNSUdPQo8+AISPGAltBMDQRAtyf4ZspLlZkpyOVoMZPvFGWzvk8p5SUC/NWPMj6T2/Yas2EdlON5GkfdkeFwVGjta825H89NIenlLWAPAp5h1KDtRhCaAQWMsFKtEvOKpIhgLHlXPARokkgEGEOAkqxJRQpKYq4ezahIiLHP6hZpqMbV0pUF2vdvEimLEQ/iIUYLgYWs0VXGVlLTOPdaPmFfCC/XrtzqVo1ez7vz6+Kd2+7o11ZJ+4MreLbB5BKVGxobAq4jZYalZ5aX2CKJiwUuc9GNJyi4M8bGyKcdjSRrG4JohdF8buJfmQefbYYREnMFsOoiNliFDVxmRgL0XUmUMLqzW0A4gCQAhWGYCQpFNukwXhIkPMsbRI19ewtw8Cp2Wj/Ro5cM2OTAbJAvZ/L4opBXb9+UHscYuOKM/W8isgwN26Exexjizmfnlp9dE3hOSqdZ/F5QqbckIlPb+oKfXxd6hftJ7Sm/uyPYpONza84CRlMNk/uhOrLpyf53982++zRkXNu3g3VF8qFbx1+7fbHZ9DrB3VXWNSmhnT2vrwS1+1Z+kHGBaZIhnnvuLBTNDeA340D1DWu5/jEa9pVfl6+Jij+yo3EELNixXCLjr173Q5eDP7Y7/L4iQFHbjpaJLFoP4cCsYP6sAPL7gMHNg53yYjqxqTDrYqLDl5DzW/eTLjYxCvucprjI3yl2ykKowKUC2Ox2FJLFo6Fa1HBWLC2jMCIIBEmklkYhmkpmBhTm/LCvJAH5oGcMKcgFEP1xUdho8ANPa6RFD99/PN60fjj9eXy2Eex4B5MpmRapXidzFk1p4uLk3+hn6jAP9ovJcXPPwk8o/0ltizbdbnTprvx4PSxT0VZ3Xc772aN7RflgbXRYwc3hLNO+k878nxGwfuVM8m8Gs7WEoVGWLHwSpx4vNSHBCMNqJ4m15Kp/TfHHVkQd++eY7PGN4W5byTs+6Ft8Ozvb/D60btv37de8ER0mS3P/0sLW84qGjEVkwztPzz06eGUWwKLwPb0D/WFd3vltl2aP276KpM0JNz6AfnAnZ5ADlF2zVyZ2OkxHSMxWPMnSZLbbDR3F1UjPVqp4d68da13F1YZujdWw7271iecO2l9+/4p47Oztjck355/75wFOI+VdGDqbNGs+ISgxg3iB2jb2r+b0CWsNLHIM4sdv8SDSFBP/Oromz6FNCWw2iMTxV0R8QLyBTkpe0j5+pSSJOOTB5Mck/gh3IopuNQnhKj02t3FL80gGbEh89SZcwTxcYt5cZT/nMnB3uXfPy8BSpVMBuRx+ZhACGzDBmwHsJRAjhotOnzuj2wDz3ug2wOUAY2NgZln9/TK/enG/oE4rO1wxvGUFMAxsZ0qNjRC7hl9d17e7imbgDt6uJXhUobDg7v3RX/yRCKxgMhfyiKcZfbpk0wmCcdQlIAOHeakXLvCNt++WfKiozNqSZxxJotn+c0a7DdPsx7DPYgKIDxwwYUZDg9aJbxocTjcwovr9WAsVV32mQoiiIOCHc60Oltst9qCQYuCqN1yHo0Kj60OgI2OqmiuBUWrNA0NDhYCDcdpmMrs1fZZ0xdTzMr1HdPtIHstYhqaPDDA5YxUDx7J4fJiisBSDI/L6G/bn34GNy8Q2g044ZTulAdFLb0tI6NNxfj3DzLjWiNGxje1pz7aXOcNV68lDPEd2SXl6VfBuwmHzdf1gxFy1HvA7pD8I2BnnmyGw852Cg5XbgIdEEGE5UCzen5jTlG6JCU5iajlxVcsXvbcS0SAcg1dcesWJLVK8+hYHOYQ+Pjy+EyVGXP0aPTFagrV9E03hCQvYx+g47KGq+1GsLj8uBIyihNw33YUe8PNC4BOJ3Lm1AglLV3nCuvUdIP+v15tVGbWIwgxLVpPkfpthCGpTKG+oA/DQfsKKvxhScqaN6FuElAUtTKv2UYgOmQegsN/n7njHUju8wM4VTcm+Q8xfX9SFwjTzdVqu95UOWSIGOabH8OGBEba//8Yxl3GcPdP/dMBOoSX/0z5SZmBoLbaPs+9asaMpb36yknKaw6FqWZa6A5vDa02mhkOba1q6KtLV208xrkwmW5C4VD6n2fvRjADy2qDYYnNy+H10Fq0LMbNzS863gkO7iQ8eC48/Ny5m59tOcEso3u7Qg3yrqDL6eKXwJAuWnhylfbWrRObe66rzX59+XDtzusnL66dI/86ArmtLlzED860Ef3bFPV78OX/zFTA11fcBn2Vntb7qiGBSgLBHyuv/uEaqqoTgSpOyjlzh86me1Vriv7i9rLPLvtghWmSnblRbAsBJL/4dScSQTBxOivHMO5QvBBY0iheJvfwWLxLOGzYKZyM4zVc2Cll46zEpeUV4MqGEWZj22SdOxhGAjgs9AEnfT+RoiMfcDb0GS5NncKVxju4Nt/mRk13O9Gz3FLct5oCD6wkwUNrCfHIUg6SMf8LwQGyVaBUqpLPW5BaMpRshEpl8nS1qw5dgnzlik8QBXmdy5UrIH74heTKZKMSilQso4hsRiGraQZRzxpNGqlEJMsXuAU7GlcR8mWSykUpVkWGyIf0a8v4qEQp5CtGsMiZa+4ESYQy+WilCiguHzxMXO54ogShooTV2bj2z1zL6DYSoImoQ8lFUWxMLBNQQgLkV2tHYgUoIbkuREz+fJHKxxWBcnvu3KQppFCxLkguB1NyVSp/TknRvNwYlCdbblWu3ze6owHdWluhE5tgQ6ej2SV65CijijoaRfSiH4Nqz1OpfEW+WeI/oU0ly60zkV9YzOQSYtZVEGYmrysTZAJkY4qZtIBD9/LYTIK7Nww3vMiYBwA=) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");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}:root{font-family:DM Sans Variable,sans-serif;color:var(--text);background:var(--page);font-synthesis:none;font-weight:400;font-size:14px;--purple:#7a60ce;--muted:#8d8b9d;--line:var(--border);--orange:#df9677}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b4a3ed;outline-offset:3px}button{border:0;background:none}a{color:inherit;text-decoration:none}svg{flex-shrink:0}button{transition:background .16s,color .16s,transform .16s}.studio{display:flex;min-height:100vh}.sidebar{width:248px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:30px 19px 0;position:fixed;inset:0 auto 0 0;z-index:20}.brand{display:flex;gap:11px;align-items:center;padding:0 7px 35px}.brand-icon{height:40px;width:40px;background:var(--purple);color:#fff;border-radius:12px;display:grid;place-items:center;box-shadow:0 5px 14px #795ece25}.brand strong{font-family:Manrope Variable,sans-serif;font-size:17px;font-weight:800;letter-spacing:-.7px;white-space:nowrap}.brand-dot{color:var(--purple)}.brand small{display:block;font-size:8px;font-weight:600;letter-spacing:2.3px;color:#9690a8;margin-top:5px}.workspace-label{font-size:9px;letter-spacing:1.4px;font-weight:700;color:#9b98aa;padding:0 10px;display:flex;justify-content:space-between}.workspace-label span{color:#bebacb}.search{border:1px solid #ebeaf1;border-radius:7px;display:flex;align-items:center;gap:8px;padding:10px;margin:14px 5px 28px;color:#aaa5b9}.search input{min-width:0;width:100%;border:0;outline:none;background:none;font-size:11px;color:#555167}.search kbd{padding:0 4px;border:1px solid #e7e5ee;border-radius:3px;font-size:10px}.nav-label{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.2px;font-weight:700;color:#9b98aa;padding:0 10px;margin-bottom:13px}.nav-label span{letter-spacing:0;background:#f3f2f7;padding:1px 5px;border-radius:3px}.module-link{display:flex;align-items:center;width:100%;gap:11px;padding:13px 12px;margin:3px 0;text-align:left;border-radius:7px;font-size:11px;white-space:nowrap;color:#757181}.module-link svg{stroke-width:1.7}.module-link small{margin-left:auto;font-size:7px;font-weight:600;color:#b5b0c2;letter-spacing:.4px}.module-link:hover{background:#f8f6fc;color:var(--purple)}.module-link.active{background:var(--selected-surface);color:var(--accent-text);font-weight:650;position:relative}.module-link.active:before{position:absolute;content:"";width:3px;height:19px;background:#8767d1;left:-19px;border-radius:0 4px 4px 0}.active-dot{margin-left:auto;width:6px;height:6px;background:#8b6dd7;border-radius:50%}.sidebar-callout{margin:30px 5px 28px;padding:17px 14px;border:1px solid #eee9f7;border-radius:10px;background:linear-gradient(145deg,#fbf9ff,var(--selected-surface))}.callout-icon{color:#997ed4;display:block;margin-bottom:10px}.sidebar-callout strong{font-size:11px;font-weight:600;display:block}.sidebar-callout p{font-size:10px;line-height:1.8;color:#9690a4;margin:6px 0 13px}.sidebar-callout button{display:flex;gap:8px;align-items:center;padding:0;color:#8b6dc2;font-size:9px;font-weight:600}.sidebar-footer{display:flex;align-items:center;gap:10px;margin:auto -19px 0;padding:19px 24px;border-top:1px solid #efedf4}.avatar{display:grid;place-items:center;background:#efe9f9;color:#9276bc;height:31px;width:31px;border-radius:50%;font-size:10px;font-weight:650}.sidebar-footer strong{font-size:10px;font-weight:600}.sidebar-footer small{display:block;color:#a29cab;font-size:8px;margin-top:4px}.sidebar-footer>svg{color:#aaa2b9;margin-left:auto}main{margin-left:248px;width:calc(100% - 248px);padding:0 35px;max-width:1800px}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.breadcrumb{display:flex;align-items:center;gap:13px;font-size:10px;color:var(--muted)}.breadcrumb svg{color:#c5c1ce}.breadcrumb strong{color:#656074;font-weight:500}.top-actions{display:flex;align-items:center;gap:18px}.preview-badge{font-size:8px;letter-spacing:1.2px;color:#9b8c6f;display:flex;align-items:center;gap:6px;border:1px solid #e9e3d7;border-radius:5px;background:var(--warm-surface);padding:6px 9px}.preview-badge span{width:5px;height:5px;border-radius:50%;background:#cbb483}.icon-button{width:29px;height:30px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);border-radius:5px;padding:0}.icon-button:hover{background:#eeeaf6;color:#7a60ce}.page-heading{padding:31px 0 29px;display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:8px;color:#a09aad;font-weight:650;letter-spacing:1.45px;display:flex;align-items:center;gap:10px}.eyebrow>span{height:3px;width:3px;background:#bbb4c9;border-radius:50%}h1{font-family:Manrope Variable,sans-serif;font-size:30px;letter-spacing:-1.2px;font-weight:750;margin:11px 0 9px;line-height:1.25}h1>span{color:#997bcf}.page-heading p{font-size:11px;color:var(--muted);margin:0}.secondary-button{display:flex;align-items:center;gap:9px;background:var(--surface);border:1px solid #e8e5ee;border-radius:7px;padding:10px 12px;color:#80798f;font-size:10px}.secondary-button:hover{background:#f1edf8}.guide-button{margin-top:15px}.lesson-tabs{display:flex;align-items:center;border-bottom:1px solid var(--border);margin-bottom:23px;gap:25px}.lesson-tabs>button{font-size:11px;color:#9b94a7;padding:0 0 15px;position:relative}.lesson-tabs>button.selected{color:var(--accent-text);font-weight:650}.lesson-tabs>button.selected:after{content:"";position:absolute;height:2px;background:#9274ce;bottom:-1px;left:0;right:0}.lesson-tabs>button>span{font-size:8px;margin-left:7px;background:#eee8f8;padding:2px 5px;border-radius:4px}.lesson-level{margin-left:auto;font-size:8px;letter-spacing:.8px;color:#a19aac;display:flex;align-items:center;gap:9px;padding-bottom:15px}.level-bars{color:#b8adc9;letter-spacing:2px}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:20px}.viewport-card,.lesson-panel,.code-card,.explanation-card{border:1px solid var(--border);border-radius:11px;background:var(--surface);overflow:hidden;box-shadow:0 3px 10px #30234e02}.card-toolbar{height:53px;border-bottom:1px solid var(--border);padding:0 18px;display:flex;justify-content:space-between;align-items:center}.view-title{display:flex;align-items:center;gap:9px}.view-title strong{font-size:11px;font-weight:600}.mini-cube{color:#9c88be;display:flex}.tag{font-size:7px;letter-spacing:.8px;border:1px solid #ebe6f4;color:#a08cb9;background:#faf7fd;border-radius:4px;padding:3px 5px;white-space:nowrap}.viewport-actions{display:flex;gap:2px;align-items:center}.viewport-actions>button:not(.icon-button){padding:5px 7px;border-radius:4px;font-size:9px;color:#a39bac}.viewport-actions>button.chosen{background:#eee9f7;color:#8969c4}.divider{height:14px;width:1px;background:#e8e4ee;margin:0 6px}.scene{position:relative;height:330px;background:radial-gradient(ellipse at 50% 40%,#f1edfa 0,#f9f8fc 55%,#fcfbfd);overflow:hidden}.tree-mount{position:absolute;top:0;right:0;bottom:0;left:0}.tree-mount canvas{display:block;touch-action:none}.scene-caption{position:absolute;left:20px;top:19px;font-size:9px;color:#8b7d9f;z-index:1;pointer-events:none;display:flex;align-items:center;gap:6px}.scene-caption small{display:block;position:absolute;top:18px;left:11px;width:160px;font-size:8px;color:#b0a6bf}.status-dot{display:inline-block;width:5px;height:5px;background:#ad9bce;border-radius:50%;flex-shrink:0}.scene-legend{display:flex;position:absolute;bottom:19px;left:19px;gap:13px;pointer-events:none}.scene-legend span{display:flex;align-items:center;gap:5px;font-size:8px;color:#a297b1}.scene-legend i{width:5px;height:5px;border-radius:50%}.legend-unvisited{background:#846ad2}.legend-active{background:#ed9877}.legend-visited{background:#aa9acb}.orbit-hint{position:absolute;right:16px;bottom:17px;display:flex;align-items:center;gap:5px;color:#afa4bd;font-size:8px;pointer-events:none}.scene-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:12px;color:#9d8fb1}.fallback-tree{width:100%;height:100%;padding:40px 15px 30px}.fallback-note{position:absolute;right:14px;top:18px;color:#9e8595;font-size:9px}.playback{display:flex;align-items:center;gap:13px;height:67px;border-top:1px solid var(--border);padding:0 17px}.playback-buttons{display:flex;align-items:center;gap:7px}.playback-buttons .icon-button{width:23px}.play-button{height:35px;width:35px;border-radius:50%;background:#8365ce;color:#fff;display:grid;place-items:center;box-shadow:0 4px 10px #8165c52e}.play-button:hover{background:#6a4ab8}.play-button>svg{width:15px;stroke-width:1.3}.timeline{display:flex;flex:1;align-items:center;gap:12px;min-width:70px}.timeline input{width:100%;height:3px;accent-color:#8a6ed0;cursor:pointer;margin:0;min-width:25px}.timeline>span{white-space:nowrap;font-size:7px;letter-spacing:.6px;color:#7b6a98}.timeline>span>span{color:#b0a9bc}.speed select{border:0;outline:none;background:var(--selected-surface);border-radius:4px;padding:5px 3px;font-size:9px;color:#9786ae}.voice-button{border-left:1px solid var(--border);padding-left:7px;width:30px}.voice-on{color:#8c6bc9}.lesson-panel{padding:18px 19px}.panel-heading{display:flex;align-items:center;gap:8px;margin-bottom:24px}.panel-heading svg{color:#a190b5}.panel-heading strong{font-size:11px;font-weight:600}.panel-heading>span{margin-left:auto;font-size:8px;color:#b8afc3}.field-label{display:block;font-size:8px;font-weight:600;letter-spacing:1px;color:#9d92ac;margin-bottom:9px}.select-wrap select{width:100%;border:1px solid var(--border);border-radius:6px;padding:9px 10px;background:var(--surface);color:#665674;font-size:11px}.traversal-order{display:flex;gap:9px;align-items:center;margin:10px 0 22px}.traversal-order>span{display:flex;gap:9px;align-items:center;color:#bcb2ca}.traversal-order b{font-size:8px;font-weight:500;color:#9b88b1;background:var(--selected-surface);padding:3px 6px;border-radius:3px}textarea{width:100%;resize:vertical;min-height:59px;max-height:100px;border:1px solid var(--border);border-radius:6px;font-family:monospace;font-size:10px;color:#8c7c9e;line-height:1.7;padding:9px 10px;display:block}.input-help{font-size:7px;color:#b1a5bb;display:block;margin:8px 0 12px}.input-error{font-size:10px;line-height:1.5;color:#b45550;margin:7px 0}.build-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--selected-surface);border:1px solid #e7dcf5;color:var(--accent-text);padding:9px 10px;border-radius:6px;font-size:10px;font-weight:600}.build-button:hover{background:#e7ddf6}.build-button>svg:last-child{margin-left:auto}.build-button>svg:first-child{margin-right:auto}.complexity{margin-top:20px;border-top:1px solid #eee8f4;padding-top:17px}.complexity-label{display:flex;justify-content:space-between;font-size:8px;color:#9d90ad;letter-spacing:1px;font-weight:600}.complexity-label>span{font-size:6px;letter-spacing:.6px;color:#b7a9c3}.complexity-values{display:flex;padding-top:12px;gap:22px}.complexity-values>div{flex:1}.complexity-values>div+div{border-left:1px solid var(--border);padding-left:15px}.complexity-values small{font-size:8px;color:#ab9fb5;white-space:nowrap}.complexity-values strong{font-family:Manrope Variable,sans-serif;display:block;font-size:20px;font-weight:500;color:#84689f;margin:5px 0}.complexity-values span{display:block;font-size:7px;color:#b5a9bf}.insight{margin-top:17px;padding:12px 11px;background:var(--warm-surface);border:1px solid var(--warm-border);border-radius:6px}.insight>span{display:flex;align-items:center;gap:6px;font-size:7px;letter-spacing:1px;font-weight:600;color:var(--warm-text)}.insight p{font-size:9px;color:var(--warm-text);line-height:1.8;margin:7px 0 0}.insight strong{font-weight:600;color:var(--warm-text)}.workspace-grid .code-card{grid-column:1}.explanation-card{grid-column:2}.bottom-card-header{height:49px;display:flex;align-items:center;justify-content:space-between;padding:0 17px;border-bottom:1px solid var(--border)}.bottom-card-header>div:first-child{display:flex;align-items:center;gap:8px}.bottom-card-header svg{color:#9c8aaf}.bottom-card-header strong{font-size:10px;font-weight:600}.language-tabs{display:flex;align-items:center;gap:4px;height:100%}.language-tabs button{font-size:9px;color:var(--muted);border-radius:5px;padding:5px 8px}.language-tabs button.selected{background:var(--selected-surface);color:#916dbe}.code-body{padding:18px 0;min-height:178px;overflow-x:auto}.code-line{display:flex;align-items:center;min-height:22px;white-space:pre;padding:0 17px;border-left:2px solid transparent}.line-number{color:#c5bdcf;font-size:9px;min-width:19px;-webkit-user-select:none;user-select:none}.line-marker{font-size:14px;min-width:15px;color:#a080cf}.code-line code{font-family:Consolas,SFMono-Regular,monospace;font-size:11px;color:var(--code)}.code-line.active-line{background:var(--selected-surface);border-left-color:#ae8bd9}.active-line code{color:#8661af}.code-footer{display:flex;gap:6px;align-items:center;border-top:1px solid var(--border);padding:11px 17px;font-size:8px;color:#b0a5be}.code-footer>span:last-child{margin-left:auto;font-size:6px;letter-spacing:.8px}.step-badge{font-size:7px;color:#b19ac9;background:var(--selected-surface);padding:4px 6px;border-radius:4px}.explanation-content{padding:21px 17px 22px}.visit-label{display:flex;align-items:center;gap:8px}.visit-icon{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:var(--warm-surface);color:#daaa8a}.visit-label h2{font-family:Manrope Variable,sans-serif;font-size:13px;font-weight:650;margin:0;color:#7c658f}.explanation-content>p{font-size:10px;line-height:1.85;color:var(--muted);margin:12px 0 19px;min-height:54px}.output-label{display:flex;justify-content:space-between;font-size:7px;font-weight:600;color:#ab9bb8;letter-spacing:.65px}.output-label>span{font-size:7px;letter-spacing:0;font-weight:400;color:#b8adbf}.output-values{display:flex;gap:5px;margin-top:11px;flex-wrap:wrap}.output-values>span{height:27px;min-width:29px;display:grid;place-items:center;background:var(--selected-surface);color:#ac94c5;border:1px solid var(--border);font-size:10px;border-radius:5px;padding:0 5px}.output-values>span.latest{background:var(--warm-surface);color:#d29b7b;border-color:var(--warm-border)}.output-values>small{color:#beb2c7;font-size:9px}.page-footer{display:flex;align-items:center;justify-content:space-between;padding:23px 0 24px;font-size:8px;color:#b2acbd}.page-footer>span:first-child{display:flex;align-items:center;gap:6px}.page-footer>span:last-child{font-size:7px;letter-spacing:1px}.footer-dot{padding:0 7px}dialog{border:1px solid #e8e0f1;border-radius:18px;padding:35px;width:440px;max-width:calc(100% - 35px);color:#54455f;box-shadow:0 20px 100px #41315b30}dialog::backdrop{background:#30223b45;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}dialog h2{font-family:Manrope Variable,sans-serif;font-size:23px;letter-spacing:-.6px}dialog p{font-size:13px;line-height:1.9;color:#8c7d98;margin-bottom:25px}.dialog-close{position:absolute;right:16px;top:16px}.dialog-icon{display:block;color:#9375c5;margin-bottom:20px}dialog .tag{display:inline-block}.mobile-toggle{display:none}@media(min-width:1500px){main{padding:0 48px}.sidebar{width:265px}main{margin-left:265px;width:calc(100% - 265px)}.workspace-grid{grid-template-columns:minmax(0,1fr) 310px}.scene{height:390px}.lesson-panel{padding:22px}.panel-heading{margin-bottom:30px}.insight{margin-top:27px}.complexity{margin-top:28px}}@media(max-width:1190px){.sidebar{width:218px;padding-left:13px;padding-right:13px}.brand{padding-left:3px;gap:8px}.brand strong{font-size:15px}.module-link{gap:8px;font-size:10px;padding-left:9px}.module-link.active:before{left:-13px}.sidebar-footer{margin-left:-13px;margin-right:-13px;padding-left:19px}.sidebar-callout{margin-top:20px}main{margin-left:218px;width:calc(100% - 218px);padding:0 24px}.workspace-grid{grid-template-columns:minmax(0,1fr) 250px;gap:15px}.scene{height:325px}.lesson-panel{padding:16px}.playback{gap:8px;padding:0 10px}.timeline{gap:6px}.playback-buttons{gap:4px}.view-title{gap:6px}.view-title .tag{display:none}.orbit-hint{bottom:40px;right:13px}.lesson-tabs{gap:20px}.lesson-level{display:none}h1{font-size:27px}.eyebrow{font-size:7px;letter-spacing:1px}.guide-button{padding:9px;font-size:9px}.code-line code{font-size:10px}.sidebar-callout p{font-size:9px}}@media(max-width:980px){.sidebar{width:196px}.module-link{font-size:9px;gap:7px}.module-link small{font-size:6px}.brand-icon{width:32px;height:32px}.brand strong{font-size:13px}.brand small{font-size:6px}.sidebar-callout{padding:12px 10px}.sidebar-callout strong{font-size:10px}.sidebar-callout button{font-size:8px}main{margin-left:196px;width:calc(100% - 196px);padding:0 20px}.workspace-grid{grid-template-columns:minmax(0,1fr) 225px;gap:13px}.card-toolbar{padding:0 12px}.view-title strong{font-size:10px}.scene{height:340px}.timeline>span{display:none}.playback{gap:7px}.playback-buttons{gap:3px}.playback-buttons .icon-button{width:21px}.play-button{width:30px;height:30px}.lesson-panel{padding:15px 13px}.complexity-values{gap:8px}.complexity-values>div+div{padding-left:10px}.guide-button{display:none}.bottom-card-header{padding:0 12px}.bottom-card-header strong{font-size:9px}.language-tabs button{font-size:8px;padding:5px}.breadcrumb{font-size:9px;gap:7px}.page-heading{padding-top:27px}.explanation-content{padding:18px 13px}.output-values{gap:4px}.page-footer>span:last-child{display:none}}@media(max-width:800px){.sidebar{display:none}.sidebar.mobile-open{display:flex;width:248px;box-shadow:15px 0 80px #45315a30;top:76px}.mobile-toggle{display:flex}.breadcrumb{gap:8px}.topbar{height:65px}main{margin:0;width:100%;padding:0 22px}.workspace-grid{grid-template-columns:minmax(0,1fr) 245px}.scene{height:320px}h1{font-size:29px}.page-heading{padding:26px 0}.sidebar.mobile-open{top:65px}.brand{padding-bottom:20px}.module-link{font-size:11px}.sidebar-callout{margin:15px 5px}.sidebar-footer{padding:12px 20px}.sidebar.mobile-open .brand strong{font-size:16px}.sidebar.mobile-open .brand small{font-size:8px}.sidebar.mobile-open .brand-icon{width:37px;height:37px}}@media(max-width:620px){main{padding:0 16px}.topbar{height:62px}.breadcrumb>span:first-of-type,.breadcrumb>svg:first-of-type{display:none}.top-actions{gap:7px}.breadcrumb{font-size:9px}.preview-badge{font-size:6px;padding:5px 6px}.top-actions .icon-button{width:24px}.eyebrow{font-size:6px;letter-spacing:.8px}.page-heading{padding:24px 0}h1{font-size:25px;letter-spacing:-1px}.page-heading p{font-size:10px;line-height:1.7}.lesson-tabs{gap:18px;margin-bottom:17px;overflow-x:auto}.lesson-tabs>button{white-space:nowrap;font-size:9px;padding-bottom:12px}.workspace-grid{grid-template-columns:minmax(0,1fr);gap:15px}.viewport-card{grid-row:1}.lesson-panel{grid-row:3;display:block;padding:20px}.workspace-grid .code-card{grid-column:1;grid-row:4}.explanation-card{grid-column:1;grid-row:2}.scene{height:325px}.card-toolbar{height:48px;padding:0 14px}.view-title strong{font-size:11px}.view-title .tag{display:inline-block}.playback{padding:0 13px;gap:11px}.playback-buttons{gap:7px}.play-button{width:34px;height:34px}.timeline>span{display:block;font-size:6px}.speed select{font-size:8px}.scene-legend{font-size:7px;gap:10px}.orbit-hint{bottom:40px;font-size:7px}.explanation-content{padding:17px}.explanation-content>p{min-height:0;margin:10px 0 16px}.output-values>span{width:31px;height:29px}.bottom-card-header strong{font-size:11px}.language-tabs button{font-size:10px;padding:6px 9px}.code-line code{font-size:11px}.panel-heading strong{font-size:13px}.field-label{font-size:9px}.select-wrap select{font-size:12px}.traversal-order b{font-size:10px}textarea{font-size:12px}.input-help{font-size:9px}.build-button{font-size:12px;padding:11px}.complexity-values{gap:25px}.complexity-values small{font-size:10px}.complexity-values span{font-size:9px}.insight p{font-size:11px}.page-footer{font-size:8px;line-height:1.6}.sidebar.mobile-open{top:62px}.code-footer{font-size:7px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}:root{color-scheme:light;--surface:#fff;--page:#f7f8fa;--text:#333143;--border:#e9e5ef;--code:#796388;--muted:#81788d;--selected-surface:#f1ebf9;--accent-text:#795ac6;--warm-surface:#fcfaf5;--warm-border:#f1eadc;--warm-text:#967f5b}:root[data-theme=dark]{color-scheme:dark;--surface:#211e2b;--page:#17151f;--text:#ede8f5;--border:#37313f;--code:#d0bde4;--muted:#b4a9c1;--selected-surface:#352944;--accent-text:#c7a9f5;--warm-surface:#332920;--warm-border:#51402d;--warm-text:#d5b88f}.drawer-close,.nav-backdrop{display:none}[data-theme=dark] .scene{background:radial-gradient(ellipse at 50% 40%,#30263f 0,#211d2d 60%,#1d1a27)}[data-theme=dark] .sidebar-callout{background:linear-gradient(145deg,#2c2538,#251f30);border-color:var(--border)}[data-theme=dark] :is(.brand small,.workspace-label,.nav-label,.module-link,.sidebar-footer small,.eyebrow,.page-heading p,.lesson-tabs>button,.field-label,.input-help,.complexity-values small,.complexity-values span,.output-label,.output-values>small,.page-footer,.scene-caption,.scene-caption small,.scene-legend span,.orbit-hint,.code-footer,.line-number,.fallback-note){color:var(--muted)}[data-theme=dark] :is(.view-title strong,.panel-heading strong,.bottom-card-header strong,.sidebar-callout strong,.visit-label h2,.breadcrumb strong){color:var(--text)}[data-theme=dark] :is(.module-link.active,.lesson-tabs>button.selected,.active-line code,.language-tabs button.selected,.output-values>span,.traversal-order b,.complexity-values strong,.select-wrap select,textarea){color:var(--accent-text)}[data-theme=dark] :is(.nav-label span,.search kbd,.avatar,.tag,.viewport-actions>button.chosen){background:var(--selected-surface);border-color:var(--border);color:var(--accent-text)}[data-theme=dark] :is(.search,.sidebar-footer,.lesson-panel .complexity,.code-footer,.voice-button,.divider){border-color:var(--border)}[data-theme=dark] .module-link:hover,[data-theme=dark] .secondary-button:hover,[data-theme=dark] .icon-button:hover,[data-theme=dark] .build-button:hover{background:#41314f;color:var(--accent-text)}[data-theme=dark] .preview-badge{background:#30291f;border-color:#51402d;color:#d5b88f}[data-theme=dark] dialog{background:var(--surface);color:var(--text);border-color:var(--border)}[data-theme=dark] dialog p{color:var(--muted)}[data-theme=dark] .fallback-tree line{stroke:#8f7aa6}.workspace-grid>*{min-width:0}textarea{background:var(--surface)}.lesson-tabs{overflow-y:hidden;scrollbar-width:thin}@media(max-height:850px)and (min-width:801px){.sidebar{overflow-y:auto}.sidebar-callout{margin-top:18px;margin-bottom:18px}.sidebar-footer{flex-shrink:0}.module-link{padding-top:10px;padding-bottom:10px}}@media(max-width:800px){.nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#160f285c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:39}.sidebar.mobile-open{inset:0 auto 0 0;width:min(310px,calc(100vw - 48px));height:100dvh;padding-top:max(28px,env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom);overflow-y:auto;overscroll-behavior:contain;z-index:40}.drawer-close{display:flex;position:absolute;top:10px;right:8px;min-width:40px;min-height:40px}.sidebar.mobile-open .brand{padding-top:18px;padding-bottom:25px}.sidebar.mobile-open .module-link{min-height:44px;font-size:12px}.sidebar.mobile-open .sidebar-footer{margin-top:20px;flex-shrink:0}.sidebar.mobile-open .sidebar-callout{margin-top:22px}.topbar .icon-button{min-width:40px;min-height:44px}.viewport-actions>button:not(.icon-button){min-width:36px;min-height:40px;font-size:11px}.viewport-actions .icon-button{min-height:40px;min-width:36px}.language-tabs button{min-width:44px;min-height:44px;font-size:11px}.lesson-tabs>button{min-height:44px;display:flex;align-items:center}}@media(max-width:620px){.preview-badge{display:none}.top-actions{gap:6px}.breadcrumb{min-width:0}.breadcrumb>strong{white-space:nowrap}.breadcrumb>span{display:none}.breadcrumb>svg{display:none}.eyebrow{font-size:8px;letter-spacing:.4px;flex-wrap:wrap;line-height:1.5}.page-heading p{font-size:12px}.scene{height:340px}.card-toolbar{padding:0 10px;gap:5px}.view-title{min-width:0;gap:5px}.view-title .tag{display:none}.view-title strong{font-size:12px}.card-toolbar .mini-cube{display:none}.playback{height:auto;min-height:108px;display:grid;grid-template-columns:1fr auto auto;gap:5px 10px;padding:10px 12px}.playback-buttons{grid-column:1;grid-row:1;gap:3px}.playback-buttons .icon-button{height:44px;width:44px}.play-button{width:44px;height:44px}.speed{grid-column:2;grid-row:1}.speed select{height:44px;min-width:49px;font-size:12px}.voice-button{grid-column:3;grid-row:1;width:40px;height:44px;padding-left:4px}.timeline{grid-column:1/-1;grid-row:2;min-height:32px;gap:15px}.timeline input{height:24px}.timeline>span{font-size:9px}.scene-caption{font-size:11px;top:16px;left:14px}.scene-caption small{font-size:9px;top:20px}.scene-legend{left:14px;bottom:15px;gap:14px}.scene-legend span{font-size:10px}.orbit-hint{font-size:9px;bottom:40px;left:14px;right:auto}.field-label{font-size:11px}.input-help{font-size:11px;line-height:1.6}textarea,.select-wrap select{font-size:16px}.select-wrap select,.build-button{min-height:44px}.complexity-label{font-size:10px}.complexity-label>span{font-size:8px}.complexity-values small,.complexity-values span{font-size:11px}.complexity-values strong{font-size:24px}.insight>span{font-size:9px}.insight p{font-size:12px}.explanation-content>p{font-size:12px;line-height:1.8}.visit-label h2{font-size:15px}.output-label,.output-label>span{font-size:9px}.output-values>span{height:34px;min-width:34px;font-size:12px}.code-line code{font-size:12px}.code-line{min-height:26px}.line-number{font-size:10px}.code-footer{font-size:9px;line-height:1.5}.page-footer{font-size:10px;padding-bottom:max(22px,env(safe-area-inset-bottom))}.dialog-close{width:44px;height:44px}dialog{padding:28px 22px;max-height:calc(100dvh - 40px);overflow-y:auto}}@media(max-width:360px){main{padding:0 10px}.top-actions .icon-button{min-width:36px}h1{font-size:23px}.playback{column-gap:5px}.playback-buttons .icon-button{width:40px}.voice-button{width:36px}.speed select{min-width:44px}.lesson-tabs{gap:14px}.lesson-tabs>button{font-size:10px}}.theme-toggle{min-width:40px;min-height:40px;border:1px solid var(--border);background:var(--surface);color:var(--accent-text);border-radius:8px}.viewport-labels{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;overflow:hidden}.scene.heap-scene{height:480px}@media(max-width:620px){.scene.heap-scene{height:430px}}.viewport-value,.viewport-index{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;font-family:system-ui,sans-serif;font-variant-numeric:tabular-nums;line-height:1.2}.viewport-value{font-weight:700;color:#fff;text-shadow:0 1px 3px #30204a99}.viewport-value.is-active{color:#42281c;text-shadow:none}.viewport-index{font-size:12px!important;font-weight:650;color:#514163;background:#ffffffed;border:1px solid #ddd3ea;border-radius:5px;padding:3px 6px;box-shadow:0 1px 3px #3020400a}.viewport-index.is-active{color:#774824;background:#fff0e4;border-color:#e9bb99}[data-theme=dark] .viewport-index{color:#e8def4;background:#292231f5;border-color:#665378}[data-theme=dark] .viewport-index.is-active{color:#ffe1c5;background:#53351f;border-color:#a46c45}.structure-svg .diagram-label{fill:#514163;font-weight:650;paint-order:stroke;stroke:var(--surface);stroke-width:4px;stroke-linejoin:round}[data-theme=dark] .structure-svg .diagram-label{fill:#e8def4}.scene-caption,.orbit-hint{z-index:5}.planar-mount{overflow:auto;overscroll-behavior-x:contain}.planar-mount .structure-svg{display:block}.shape-controls{padding-bottom:14px}.shape-switch{display:flex;border:1px solid var(--border);padding:3px;border-radius:7px;margin-top:12px}.shape-switch button{flex:1;padding:9px 8px;font-size:11px;border-radius:5px;color:var(--muted)}.shape-switch button.chosen{background:var(--selected-surface);color:var(--accent-text)}.shape-summary{font-size:12px;color:var(--accent-text);line-height:1.7}@media(max-width:620px){.shape-switch button{min-height:44px}}.lesson-tabs{overflow-x:auto;white-space:nowrap;scrollbar-width:thin}.lesson-tabs>button{flex-shrink:0}.learning-scene{min-height:370px}.structure-svg{width:100%;height:100%;padding:58px 15px 32px}.diagram-label{fill:var(--muted)}.pointer-hud{display:flex;flex-wrap:wrap;gap:7px;border-top:1px solid var(--border);padding:12px 16px;color:var(--muted);font-size:10px}.pointer-hud>span{padding:5px 7px;background:var(--selected-surface);border-radius:5px}.pointer-hud strong{color:var(--accent-text);font-weight:600}.lesson-field{display:block;margin:16px 0}.lesson-field input,.lesson-field select{width:100%;min-height:40px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);padding:8px 10px}.metrics{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 0}.metrics>div{background:var(--selected-surface);padding:6px 9px;border-radius:5px}.metrics dt{font-size:9px;color:var(--muted)}.metrics dd{margin:4px 0 0;color:var(--accent-text);font-size:12px}.formula{overflow-wrap:anywhere}.learning-workspace .complexity-values{gap:8px}.learning-workspace .complexity-values strong{font-size:15px;overflow-wrap:anywhere}.learning-workspace .complexity-values small{white-space:normal}.learning-workspace .view-title{min-width:0}.learning-workspace .view-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-loading{padding:70px 0;text-align:center;color:var(--muted)}@media(max-width:620px){.lesson-field input,.lesson-field select{font-size:16px;min-height:44px}.learning-workspace .card-toolbar{height:55px}.learning-workspace .view-title strong{max-width:160px;font-size:11px}.pointer-hud{font-size:11px}.learning-scene{min-height:360px}}.brand strong{letter-spacing:.1px;font-size:15px}.topbar{position:sticky;top:0;z-index:30;background:var(--page);flex-shrink:0;box-shadow:0 4px 10px #17102004}html{scroll-padding-top:90px}@media(min-width:801px)and (max-width:980px){.brand strong{font-size:12px}}.target-fields{display:flex;gap:10px;margin:15px 0 12px}.target-fields>label{flex:1;min-width:0}.target-fields input{width:100%;min-height:40px;border:1px solid var(--border);background:var(--surface);color:var(--text);padding:8px 10px;border-radius:6px;font-size:13px}.operation-form{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--border)}.operation-form .input-help{line-height:1.7;font-size:10px}.run-operation>svg{margin-left:auto!important;margin-right:0!important}.scene-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);gap:10px;font-size:14px}.scene-empty small{font-size:11px;text-align:center;padding:0 20px}.scene-caption{max-width:calc(100% - 35px);line-height:1.5}.scene-caption small{top:100%}.lesson-panel,.viewport-card{align-self:start}@media(max-width:620px){.target-fields input{min-height:44px;font-size:16px}.operation-form .input-help{font-size:11px}.lesson-tabs>button{font-size:11px;flex-shrink:0}}@media(max-width:360px){.playback{padding:8px;column-gap:6px}.playback-buttons{grid-column:1/-1;grid-row:1;justify-content:center;gap:8px}.playback-buttons .icon-button,.play-button{width:44px;height:44px}.timeline{grid-column:1;grid-row:2;min-width:0}.timeline>span{display:none}.speed{grid-column:2;grid-row:2}.voice-button{grid-column:3;grid-row:2;width:44px;height:44px}}.graph-state{overflow-x:auto;margin-top:18px}.graph-state table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}.graph-state caption{text-align:left;font-weight:600;padding-bottom:10px}.graph-state td,.graph-state th{padding:8px;border-bottom:1px solid var(--border)}.matrix-viewport{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;padding:65px 20px 35px}.matrix-viewport table{border-collapse:separate;border-spacing:4px;margin:auto;font-size:14px}.matrix-viewport caption{text-align:left;padding:0 0 12px;font-size:12px}.matrix-viewport th{font-size:12px;padding:8px;white-space:nowrap}.matrix-viewport td{min-width:48px;height:48px;text-align:center;border:1px solid var(--border);border-radius:7px;background:var(--page)}.matrix-viewport .matrix-active{border:2px solid #9670e0}.matrix-viewport small{display:block;font-size:10px}.scene:has(.matrix-viewport) .orbit-hint{display:none}.matrix-viewport{top:65px;right:0;bottom:12px;left:0;padding:0 16px 12px}.complete-example{border-top:1px solid var(--border);padding:16px 20px}.example-toggle,.example-actions button,.example-actions a{border:1px solid var(--border);border-radius:7px;background:var(--page);color:inherit;padding:10px 14px;font:inherit;cursor:pointer;text-decoration:none}.example-toggle{width:100%;text-align:left}.example-content{padding-top:16px;min-width:0}.example-content p{font-size:12px;line-height:1.7}.example-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px}.example-actions span{font-size:12px}.complete-source,.run-command{overflow:auto;font-family:Consolas,monospace;font-size:12px;line-height:1.65;background:var(--page);padding:16px;border:1px solid var(--border);border-radius:8px}.complete-source{max-height:480px;-moz-tab-size:4;tab-size:4}.syntax-comment{color:#646b7b}.syntax-string{color:#24664c}.syntax-keyword{color:#6c42ad;font-weight:600}.syntax-number{color:#985026}[data-theme=dark] .syntax-comment{color:#a8adbf}[data-theme=dark] .syntax-string{color:#9bd9b5}[data-theme=dark] .syntax-keyword{color:#c9adfa}[data-theme=dark] .syntax-number{color:#f6b68b}.search-tree{margin:20px 0;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:12px;font-size:14px;color:var(--text)}.search-tree summary{cursor:pointer;font-weight:650;min-height:32px}.search-tree p{color:var(--muted);line-height:1.6}.search-tree ol{list-style:none;padding:0;max-height:420px;overflow:auto;overscroll-behavior:contain}.search-tree li{margin:4px 0}.search-tree button{display:flex;gap:10px;text-align:left;align-items:center;width:100%;padding:10px;border:1px solid var(--border);border-radius:6px;color:var(--text);background:var(--page);font:inherit;min-height:44px}.search-tree small{display:block;color:var(--muted);margin-top:4px}.search-state{font-size:12px;min-width:55px;font-weight:650}.state-rejected{color:#b32645}.state-solution{color:#28796b}[data-theme=dark] .state-rejected{color:#ff9eae}[data-theme=dark] .state-solution{color:#8bdfc9}.skip-link{position:fixed;left:12px;top:-100px;z-index:100;background:var(--surface);color:var(--text);padding:14px;border:2px solid var(--accent-text);border-radius:8px}.skip-link:focus{top:12px}:focus-visible{outline:3px solid var(--accent-text);outline-offset:3px}.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}:root{--muted:#6d627a;--code:#695377}:root[data-theme=dark]{--muted:#b4a9c1;--code:#d0bde4}.input-help,.explanation-content>p,.insight p{font-size:13px;line-height:1.65;color:var(--muted)}.field-label,.code-footer,.output-label,.complexity-values small,.complexity-values span{font-size:11px;color:var(--muted)}.code-line code{font-size:12px}.code-line{min-height:24px}.lesson-tabs>button{font-size:12px}.page-heading p{font-size:14px}.fallback-tree circle,.structure-svg circle,.structure-svg rect{transition:fill .28s ease}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.development-checks{margin-left:280px!important}.development-checks button{padding:12px;margin:4px;min-height:44px}@media(max-width:800px){.development-checks{margin-left:20px!important}}:root:not([data-theme=dark]){--accent-text:#6844b3;--warm-text:#77603d}:root:not([data-theme=dark]) :is(.brand small,.workspace-label,.workspace-label>span,.nav-label,.nav-label>span,.module-link small,.eyebrow,.secondary-button,.lesson-tabs>button,.viewport-actions>button,.complexity-label,.page-footer,.line-number,.scene-caption,.scene-caption small,.scene-legend,.orbit-hint,.lesson-level,.sidebar-footer small,.sidebar-callout p,.search kbd,.timeline>span,.output-values>small){color:var(--muted)}:root:not([data-theme=dark]) :is(.tag,.viewport-actions>.chosen,.language-tabs>.selected,.step-badge,.module-link.active,.build-button,.speed select,.output-values>span,.lesson-tabs>.selected,.active-line code,.complexity-values strong,.traversal-order b){color:var(--accent-text)}:root:not([data-theme=dark]) :is(textarea,input,select){color:var(--text)}:root:not([data-theme=dark]) .preview-badge{color:var(--warm-text)}:root:not([data-theme=dark]) .output-values>span.latest{color:#87532d}@keyframes trace-edge{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.active-edge{stroke-dasharray:1;animation:trace-edge .28s ease-out both}[data-theme=dark] .active-edge{stroke:#ffc18a}@media(prefers-reduced-motion:reduce){.active-edge{animation:none;stroke-dashoffset:0}}@keyframes trace-edge-reverse{0%{stroke-dashoffset:-1}to{stroke-dashoffset:0}}.active-edge.edge-reverse{animation-name:trace-edge-reverse}@media(prefers-reduced-motion:reduce){.active-edge.edge-reverse{animation:none}}:is(.timeline>span>span,.panel-heading>span,.complexity-label>span,.output-label>span,.scene-legend span){color:var(--muted)}:root:not([data-theme=dark]) .avatar{color:var(--accent-text)}[data-theme=dark] :is(.secondary-button,.timeline>span,.speed select){color:var(--muted)}.lesson-visual{width:100%;height:100%;overflow:auto;padding:75px 20px 38px;box-sizing:border-box;color:var(--text,#30223f)}.lesson-visual:focus-visible{outline:3px solid #8059c6;outline-offset:-3px}.lesson-visual p{font-size:13px;line-height:1.6}.lesson-array{display:flex;gap:8px;align-items:flex-end;min-width:max-content;padding:12px 0}.lesson-cell{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:58px;border:2px solid transparent;border-radius:9px;padding:8px 5px;background:#8059c617}.lesson-cell strong{font-size:18px}.lesson-cell small{font-size:12px;white-space:nowrap}.lesson-cell>span{min-height:18px;font-size:11px;white-space:nowrap}.lesson-cell.in-range{background:#8059c633;border-color:#9c7dcd}.lesson-cell.out-range{background:transparent;border-style:dashed;border-color:#a99ab7}.lesson-cell.current{border-color:#c16531;opacity:1}.lesson-cell.is-sorted{background:#24774726;border-color:#428563}.sort-bar{width:28px;background:#8059c6;border-radius:4px 4px 0 0;margin-bottom:8px}.sort-bar.negative{background:#b32b56}.visual-key,.merge-buffer{margin:6px 0}.growth-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;margin:12px 0}.growth-legend i{display:inline-block;width:14px;height:5px;margin:0 5px 2px 0}.lesson-visual svg{min-width:400px;width:100%;max-height:290px}.lesson-visual svg text{font-size:12px;fill:currentColor}.lesson-axis{fill:none;stroke:currentColor;stroke-width:1}.lesson-data{font-size:12px;border-collapse:collapse;min-width:650px}.lesson-data caption{text-align:left;margin-bottom:8px}.lesson-data th,.lesson-data td{padding:7px 10px;text-align:right;border-bottom:1px solid #a99ab750}.interval-visual{min-width:330px}.interval-row{display:grid;grid-template-columns:28px minmax(100px,1fr) 160px;gap:9px;align-items:center;padding:9px 4px;min-width:400px;font-size:12px;border:2px solid transparent;border-radius:6px}.interval-current{border-color:#c16531}.interval-track{height:26px;position:relative;background:#8059c614}.interval-bar{position:absolute;height:26px;background:#8059c6;border-radius:4px}.interval-bar.accepted{background:#247747}.interval-bar.rejected{background:#b32b56;opacity:.6}[data-theme=dark] .lesson-visual{color:#eee6fa}@media(max-width:799px){.lesson-visual{padding-left:12px;padding-right:12px}.lesson-cell{min-width:48px}}.scene:has(.lesson-visual) .orbit-hint{display:none}[data-theme=dark] .lesson-visual svg polyline{filter:brightness(1.65)}[data-theme=dark] .growth-legend i{filter:brightness(1.65)}.viewport-weight-leader{position:absolute;height:1px;background:#8f75ac;transform-origin:0 50%;z-index:0}.viewport-labels .viewport-index,.viewport-labels .viewport-value{z-index:1}.svg-edge-weight line{stroke:#8f75ac;stroke-width:1}.svg-edge-weight rect{fill:var(--surface);stroke:var(--border)}.svg-edge-weight text{fill:var(--text);font-weight:650}.viewport-labels .viewport-weight{pointer-events:auto;cursor:help}.viewport-weight-leader{background:#80629f}.viewport-weight-leader:before{content:"";position:absolute;left:-2px;top:-1px;width:3px;height:3px;border-radius:50%;background:inherit}.node-label-leader{stroke:#a58bbd;stroke-width:1;opacity:.65}.connected-studio{height:100dvh;min-height:0;background:var(--page)}.module-link,.explorer-lessons a{text-decoration:none}.seo-guide{flex:none;max-height:35dvh;overflow:auto;background:var(--surface);border-bottom:1px solid var(--border);font-size:12px;line-height:1.6}.seo-guide summary{padding:6px 16px;color:var(--muted);cursor:pointer}.seo-guide-content{padding:0 16px 12px;max-width:1000px}.seo-guide-content h2{font-size:17px;margin:8px 0}.seo-guide-content p{margin:8px 0}.seo-guide-content nav{display:flex;gap:8px 16px;flex-wrap:wrap}.seo-guide-content a{color:var(--accent-text);text-decoration:underline}.static-guide{max-width:900px;margin:40px auto;padding:24px;font:16px/1.7 system-ui,sans-serif}.static-guide nav ul{display:flex;gap:12px 24px;flex-wrap:wrap;list-style:none;padding:0}.connected-studio .sidebar{--explorer-bg:#f4f0fb;--explorer-hover:#eae2f6;--explorer-active:#e7dcf7;--explorer-ink:#49405e;--explorer-line:#dcd1ee;--explorer-selected:#6b4fa5;width:230px;padding:20px 10px 0;overflow:hidden;z-index:50;background:var(--explorer-bg);border-right-color:var(--explorer-line)}[data-theme=dark] .connected-studio .sidebar{--explorer-bg:#211c2c;--explorer-hover:#332940;--explorer-active:#3c2d50;--explorer-ink:#e0d6ef;--explorer-line:#473756;--explorer-selected:#7555b3}.explorer-brand{display:flex;gap:9px;align-items:center;padding:0 9px 18px;color:var(--accent-text)}.explorer-home-link{display:flex;gap:9px;align-items:center;min-height:44px;border-radius:5px}.explorer-home-link:hover{color:var(--text)}.explorer-brand strong{font-size:13px;letter-spacing:.3px;white-space:nowrap}.explorer-brand small{display:block;font-size:8px;letter-spacing:1.1px;margin-top:5px;color:var(--muted)}.connected-studio .search{margin:0 5px 20px;padding:9px;background:var(--surface);border-color:var(--explorer-line);box-shadow:0 2px 5px #39265f05}.connected-studio .search:focus-within{outline:2px solid var(--accent-text);outline-offset:2px}.connected-studio .search input{font-size:12px;color:var(--text)}.connected-studio .sidebar .nav-label{font-size:11px;letter-spacing:.1px;margin-bottom:12px;align-items:center;color:var(--explorer-ink);padding:0 8px}.connected-studio .sidebar .nav-label span{font-size:9px;background:var(--explorer-hover);color:var(--explorer-ink);letter-spacing:0;padding:4px 6px;border-radius:5px;white-space:nowrap}.connected-studio .sidebar nav{overflow-y:auto;min-height:0;flex:1;scrollbar-width:thin;padding-bottom:15px}.connected-studio .sidebar .module-link{min-height:44px;padding:10px 9px;gap:9px;font-size:12px;font-weight:550;white-space:normal;line-height:1.4;margin:2px 0;color:var(--explorer-ink);border:1px solid transparent;border-radius:8px}.connected-studio .sidebar .module-link>svg:first-child{color:var(--accent-text);stroke-width:1.9}.connected-studio .sidebar .module-link:hover{background:var(--explorer-hover);color:var(--accent-text)}.connected-studio .sidebar .module-link.active{background:var(--explorer-active);border-color:var(--explorer-line);color:var(--accent-text);font-weight:700}.connected-studio .sidebar :is(.module-link,.explorer-lessons a):focus-visible{outline:2px solid var(--accent-text);outline-offset:-2px}.connected-studio .module-link>span{flex:1}.connected-studio .module-link:before{display:none}.module-link .expanded{transform:rotate(90deg)}.explorer-lessons{margin:6px 0 12px 17px;padding-left:11px;border-left:1px solid var(--explorer-line)}.explorer-lessons :is(button,a){display:block;position:relative;width:100%;min-height:40px;text-align:left;padding:10px 11px;margin:2px 0;font-size:12px;color:var(--explorer-ink);border-radius:6px;line-height:1.45}.explorer-lessons :is(button,a):hover{background:var(--explorer-hover);color:var(--accent-text)}.explorer-lessons :is(button,a).selected{color:#fff;background:var(--explorer-selected);font-weight:650;box-shadow:0 3px 8px #39265f16}.explorer-lessons :is(button,a).selected:before{content:"";position:absolute;left:-13px;top:10px;bottom:10px;width:3px;border-radius:3px;background:var(--accent-text)}.explorer-footer{font-size:11px;color:var(--muted);padding:8px;min-height:48px;flex-shrink:0;display:flex;gap:6px;align-items:center;border-top:1px solid var(--explorer-line)}.explorer-footer a{display:inline-flex;align-items:center;gap:3px;min-height:32px;color:var(--accent-text);font-weight:650;white-space:nowrap}.explorer-footer a:hover{text-decoration:underline}.empty-search{padding:12px;color:var(--muted);font-size:12px}.connected-studio main{margin-left:230px;width:calc(100% - 230px);max-width:none;padding:0;min-width:0;height:100dvh;display:flex;flex-direction:column}.workspace-host{display:flex;flex:1;min-height:0;min-width:0}.workspace-host[hidden]{display:none}.connected-studio .topbar{--workspace-header-start:#6b4fa5;--workspace-header-end:#7357ad;height:54px;min-height:54px;padding:0 16px;gap:12px;box-shadow:none;position:relative;background:linear-gradient(110deg,var(--workspace-header-start),var(--workspace-header-end));border-bottom-color:#ffffff29;z-index:10}.connected-studio .topbar :is(.breadcrumb,.breadcrumb>span,.breadcrumb strong,.breadcrumb svg){color:#fff}.connected-studio .topbar :is(.icon-button,.workspace-home-link,.custom-select-trigger){color:#fff;background:#ffffff0d;border-color:#ffffff40}.connected-studio .topbar .custom-select-trigger>svg{color:#fff}.connected-studio .topbar :is(.icon-button,.workspace-home-link,.custom-select-trigger):hover{color:#fff;background:#ffffff24;border-color:#ffffff70}[data-theme=dark] .connected-studio .topbar{--workspace-header-start:#332146;--workspace-header-end:#40295e}.connected-studio .breadcrumb{font-size:12px;gap:8px;min-width:0}.connected-studio .breadcrumb>span{color:var(--muted)}.connected-studio .breadcrumb strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.connected-studio .top-actions{gap:8px;flex-shrink:0}.toolbar-language select{padding:7px 9px;background:var(--page);color:var(--text);border:1px solid var(--border);border-radius:5px;font-size:12px}.connected-studio .theme-toggle{min-height:34px;min-width:34px;border-radius:5px}.workspace-shell{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-template-rows:minmax(290px,1.5fr) minmax(175px,1fr) minmax(115px,.55fr) 64px;flex:1;width:100%;max-width:100%;min-height:0;min-width:0;gap:0;background:var(--surface)}.workspace-visual{grid-column:1;grid-row:1;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}.workspace-inspector{grid-column:2;grid-row:1/5;overflow:auto;border-left:1px solid var(--border);min-width:0;scrollbar-width:thin}.workspace-code{grid-column:1;grid-row:2;overflow:auto;min-width:0;min-height:0;border-top:1px solid var(--border);scrollbar-width:thin;position:relative}.workspace-results{grid-column:1;grid-row:3;min-height:0;min-width:0;display:flex;flex-direction:column;border-top:1px solid var(--border)}.workspace-playback{grid-column:1;grid-row:4;border-top:1px solid var(--border);background:var(--surface);min-width:0;z-index:6}.workspace-shell :is(.viewport-card,.lesson-panel,.code-card){border:0;border-radius:0;box-shadow:none;background:var(--surface)}.workspace-shell .viewport-card{display:flex;flex-direction:column;flex:1;min-height:0;align-self:stretch;overflow:hidden}.workspace-shell .card-toolbar{height:40px;min-height:40px;padding:0 16px}.workspace-shell .view-title strong{font-size:12px}.workspace-shell .scene,.workspace-shell .scene.heap-scene{height:auto;min-height:0;flex:1}.workspace-shell .scene-caption{font-size:11px;top:12px;left:16px}.workspace-shell .scene-caption small,.workspace-shell .scene-legend span,.workspace-shell .orbit-hint{font-size:10px}.workspace-shell .scene-legend,.workspace-shell .orbit-hint{bottom:12px}.workspace-shell .step-explanation{padding:10px 16px;max-height:108px;overflow:auto;border-top:1px solid var(--border);flex-shrink:0;background:var(--surface)}.step-explanation .visit-label{margin:0;gap:7px}.step-explanation .visit-label h2{font-size:13px;margin:0;line-height:1.5}.step-explanation .visit-icon{display:none}.step-explanation p{font-size:12px;color:var(--muted);line-height:1.55;margin:4px 0 0}.workspace-shell .bottom-card-header{height:40px;min-height:40px;padding:0 16px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:2}.workspace-shell .bottom-card-header strong{font-size:12px}.workspace-shell .language-tabs button{font-size:11px;padding:5px 8px}.workspace-shell .code-body{padding:10px 0;overflow:visible}.workspace-shell .code-line{min-height:23px}.workspace-shell .code-line code{font-size:12px;white-space:pre}.workspace-shell .code-footer{padding:9px 16px;font-size:10px}.workspace-shell .code-footer>span:last-child{margin-left:auto}.workspace-shell .complete-example{padding:10px 16px}.workspace-shell .example-toggle{font-size:12px;padding:8px 10px}.workspace-shell .lesson-panel{padding:18px 20px;overflow:visible}.workspace-shell .panel-heading{margin-bottom:18px}.workspace-shell .panel-heading>span{display:none}.workspace-shell .panel-heading strong{font-size:13px}.workspace-shell .field-label{font-size:10px;letter-spacing:.7px;margin-bottom:8px}.workspace-shell textarea{font-size:13px;line-height:1.6;min-height:65px;max-height:150px;background:var(--page);color:var(--text)}.workspace-shell input,.workspace-shell select{font-size:13px;color:var(--text)}.workspace-shell .build-button{font-size:12px;min-height:38px;margin-top:12px}.workspace-shell .input-help{font-size:12px;line-height:1.6}.workspace-shell .complexity{margin-top:22px}.workspace-shell .complexity-values strong{font-size:17px}.workspace-shell .complexity-values small,.workspace-shell .complexity-values span{font-size:11px;white-space:normal}.concept-summary{padding:20px;border-bottom:1px solid var(--border)}.inspector-label{font-size:10px;font-weight:650;letter-spacing:1.5px;color:var(--muted)}.concept-summary h2{font-size:16px;margin:10px 0;letter-spacing:-.3px;line-height:1.4}.concept-summary p{font-size:13px;line-height:1.65;color:var(--muted);margin:6px 0 0}.memory-hook{margin:16px 0;padding:12px;background:var(--selected-surface);border-left:3px solid var(--accent-text);border-radius:0 5px 5px 0}.memory-hook strong,.tiny-example strong{font-size:11px;color:var(--accent-text)}.memory-hook p{color:var(--accent-text);font-weight:550}.tiny-example{margin-bottom:16px}.workspace-shell details{font-size:12px;line-height:1.6}.workspace-shell summary{cursor:pointer;color:var(--text);padding:5px 0}.technical-details{margin:12px 0}.technical-details p{overflow-wrap:anywhere;color:var(--muted)}.result-tabs{display:flex;gap:18px;padding:0 16px;border-bottom:1px solid var(--border);min-height:36px;flex-shrink:0}.result-tabs button{font-size:12px;color:var(--muted);padding:8px 0;border-bottom:2px solid transparent}.result-tabs button[aria-selected=true]{color:var(--accent-text);border-bottom-color:var(--accent-text);font-weight:650}.result-content{padding:12px 16px;overflow:auto;min-height:0;font-size:12px;scrollbar-width:thin}.result-content[hidden]{display:none}.result-content p{color:var(--muted);line-height:1.6;margin:0}.workspace-shell .output-label{font-size:10px;margin:0 0 8px}.workspace-shell .output-values{min-height:30px;flex-wrap:wrap}.workspace-shell .output-values>span{font-size:12px;min-width:28px;height:28px}.workspace-shell .pointer-hud{padding:0 0 10px;border:0;font-size:11px}.workspace-shell .graph-state,.workspace-shell .metrics{margin-top:10px}.workspace-shell .search-tree{margin:0;border:0;padding:0;font-size:12px;border-radius:0}.workspace-shell .search-tree ol{max-height:none}.workspace-shell .search-tree button{font-size:12px}.workspace-shell .search-tree p{margin:8px 0}.workspace-shell .search-tree h3{font-size:12px;margin:0 0 8px}:is(.workspace-shell,.cx-layout) .playback{height:63px;min-height:0;border:0;gap:12px;padding:0 16px}:is(.workspace-shell,.cx-layout) .timeline>span{font-size:10px}:is(.workspace-shell,.cx-layout) .timeline>span>span{font-size:10px}:is(.workspace-shell,.cx-layout) .playback .icon-button{height:36px;width:32px}:is(.workspace-shell,.cx-layout) .play-button{height:36px;width:36px}:is(.workspace-shell,.cx-layout) .speed select{font-size:12px;padding:6px}.mobile-workspace-tabs,.mobile-concept,.connected-studio.explorer-collapsed .sidebar{display:none}.connected-studio.explorer-collapsed main{margin-left:0;width:100%}.connected-studio .mobile-toggle,.connected-studio .drawer-close{display:none}@media(max-width:1199px){.connected-studio .sidebar,.connected-studio.explorer-collapsed .sidebar{display:none;transform:none;width:250px;box-shadow:12px 0 40px #0002}.connected-studio .sidebar.mobile-open{display:flex;inset:0 auto 0 0;height:100dvh;padding-top:20px}.connected-studio main{margin-left:0;width:100%}.connected-studio .mobile-toggle,.connected-studio .drawer-close{display:inline-flex}.connected-studio .drawer-close{position:static;margin-left:auto;flex-shrink:0}.connected-studio .desktop-explorer-toggle{display:none}.connected-studio .nav-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#17102066;z-index:40;border-radius:0}.workspace-shell{grid-template-columns:minmax(0,1fr) 280px}}@media(min-width:800px)and (max-height:719px){.connected-studio{height:auto;min-height:100dvh}.connected-studio main{height:auto;min-height:100dvh}.workspace-shell{min-height:665px;grid-template-rows:300px 185px 115px 64px}.workspace-inspector{max-height:664px}}@media(max-width:799px){.connected-studio .topbar{height:52px;min-height:52px;padding:0 10px}.connected-studio .breadcrumb{gap:5px;font-size:11px;flex:1}.connected-studio .breadcrumb>span,.connected-studio .breadcrumb>svg{display:none}.connected-studio .top-actions{gap:5px}.toolbar-language select{font-size:12px;max-width:85px;min-height:36px;padding:5px}.connected-studio .theme-toggle{min-width:36px;min-height:36px}.workspace-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:42px auto minmax(0,1fr) 140px 108px;height:auto;flex:1;min-height:0}.mobile-workspace-tabs{display:flex;grid-row:1;grid-column:1;border-bottom:1px solid var(--border);padding:0 12px;gap:20px}.mobile-workspace-tabs button{font-size:13px;padding:8px 0;color:var(--muted);border-bottom:2px solid transparent}.mobile-workspace-tabs button[aria-pressed=true]{color:var(--accent-text);border-bottom-color:var(--accent-text)}.mobile-concept{display:block;grid-row:2;grid-column:1;border-bottom:1px solid var(--border);max-height:220px;overflow:auto;padding:4px 14px}.mobile-concept summary{font-size:12px}.mobile-concept .concept-summary{padding:8px 0;border:0}.mobile-concept .concept-summary h2{display:none}.mobile-concept .memory-hook{margin:10px 0}.mobile-concept .tiny-example{margin-bottom:8px}.workspace-visual,.workspace-code,.workspace-inspector{grid-column:1;grid-row:3;display:none;border:0;min-height:0;overflow:auto}.mobile-visualize .workspace-visual{display:flex;overflow:hidden}.mobile-code .workspace-code,.mobile-inputs .workspace-inspector{display:block}.workspace-inspector>.concept-summary{display:none}.workspace-inspector .lesson-panel{padding:16px}.workspace-results{grid-column:1;grid-row:4}.workspace-playback{grid-column:1;grid-row:5}:is(.workspace-shell,.cx-layout) .playback{height:107px;display:grid;grid-template-columns:1fr auto auto;grid-template-rows:44px 32px;padding:10px 12px;gap:4px 10px}:is(.workspace-shell,.cx-layout) .playback-buttons{grid-column:1;grid-row:1;gap:3px}:is(.workspace-shell,.cx-layout) .playback .icon-button,:is(.workspace-shell,.cx-layout) .play-button{height:44px;width:44px}:is(.workspace-shell,.cx-layout) .speed{grid-column:2;grid-row:1}:is(.workspace-shell,.cx-layout) .speed select{height:44px}.workspace-shell .voice-button{grid-column:3;grid-row:1}:is(.workspace-shell,.cx-layout) .timeline{grid-column:1/-1;grid-row:2;min-height:32px}:is(.workspace-shell,.cx-layout) .timeline input{height:24px}:is(.workspace-shell,.cx-layout) .timeline>span{display:block;font-size:10px}.workspace-shell textarea,.workspace-shell input:not([type=range]),.workspace-shell .lesson-panel select{font-size:16px}.workspace-shell .build-button{min-height:44px}.workspace-shell .scene,.workspace-shell .scene.heap-scene{min-height:0}.workspace-shell .card-toolbar{min-height:38px;height:38px;padding:0 12px}.workspace-shell .view-title strong{font-size:12px;max-width:none}.workspace-shell .step-explanation{max-height:90px;padding:8px 12px}.workspace-shell .step-explanation h2{font-size:12px}.workspace-shell .step-explanation p{font-size:12px;line-height:1.5}.workspace-shell .scene-caption{font-size:10px;top:8px;left:12px}.workspace-shell .scene-caption small{font-size:9px}.workspace-shell .orbit-hint{font-size:9px;bottom:8px;left:auto;right:12px}.workspace-shell .scene-legend{bottom:28px;left:12px;gap:10px}.workspace-shell .scene-legend span{font-size:9px}.result-tabs{gap:18px;min-height:36px}.result-tabs button{font-size:12px}.result-content{padding:10px 12px}}@media(max-width:360px){:is(.workspace-shell,.cx-layout) .playback{padding:8px;column-gap:4px}:is(.workspace-shell,.cx-layout) .playback .icon-button,:is(.workspace-shell,.cx-layout) .play-button{width:40px}:is(.workspace-shell,.cx-layout) .playback-buttons{gap:0}:is(.workspace-shell,.cx-layout) .speed select{min-width:44px}.workspace-shell .card-toolbar{padding:0 8px}.workspace-shell .view-title{gap:4px}}.code-first-workspace{position:relative;--inspector-width:clamp(320px,var(--right-panel-width,48%), calc(100% - 320px) );--results-size:clamp(80px,var(--output-panel-height,140px), calc(100% - 284px) );--playback-size:64px;grid-template-columns:minmax(0,1fr) var(--inspector-width);grid-template-rows:minmax(0,1fr) var(--results-size) var(--playback-size)}.code-first-workspace.right-panel-closed{grid-template-columns:minmax(0,1fr)}.code-first-workspace .workspace-code{grid-column:1;grid-row:1;display:flex;flex-direction:column;border-top:0;overflow:hidden}.code-first-workspace .workspace-inspector{grid-column:2;grid-row:1/4;max-height:none;min-height:0;overscroll-behavior:contain}.code-first-workspace .workspace-inspector[hidden]{display:none}.code-first-workspace .workspace-results{grid-row:2}.code-first-workspace .workspace-playback{grid-row:3}.workspace-codebar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;padding:5px 14px;border-bottom:1px solid var(--border);color:var(--muted);font-size:10px;letter-spacing:.6px;flex-shrink:0}.workspace-codebar button{display:flex;align-items:center;gap:7px;color:var(--accent-text);font-size:12px;letter-spacing:0;padding:4px 7px;border-radius:4px}.workspace-codebar button:hover{background:var(--selected-surface)}.inspector-toolbar{position:sticky;top:0;z-index:8;background:var(--surface);border-bottom:1px solid var(--border);height:38px;padding:0 12px 0 16px;display:flex;align-items:center;justify-content:space-between;gap:8px}.inspector-toolbar strong{font-size:12px;font-weight:600}.inspector-toolbar .icon-button{width:30px;height:30px}.inspector-window-actions{display:flex;align-items:center;gap:6px}.code-first-workspace .workspace-visual{display:flex;grid-area:auto;overflow:visible;min-height:0;border-top:1px solid var(--border)}.code-first-workspace .workspace-visual .viewport-card{flex:none}.code-first-workspace .workspace-visual .scene{height:clamp(360px,48dvh,560px);flex:none}.code-first-workspace .workspace-visual .scene.heap-scene{height:clamp(400px,55dvh,620px)}.code-first-workspace .workspace-visual .step-explanation{max-height:none;overflow:visible}.code-first-workspace .scene-legend{bottom:32px}.code-first-workspace .orbit-hint{font-size:9px;bottom:10px;left:12px;right:auto}.code-first-workspace .view-title strong{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.code-first-workspace .lesson-panel{padding:16px}.code-first-workspace .panel-heading{margin-bottom:15px}.code-first-workspace .inspector-controls{border-top:1px solid var(--border)}.lesson-details{padding:0 16px 16px;border-bottom:1px solid var(--border)}.code-first-workspace .concept-summary{border-bottom:0;padding:18px 16px}.code-first-workspace .code-panel{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.code-first-workspace .code-panel .bottom-card-header{position:static;flex-shrink:0;min-height:42px}.code-mode-tabs{display:flex;align-items:center;gap:20px;padding:0 18px;border-bottom:1px solid var(--border);min-height:42px;flex-shrink:0}.code-mode-tabs button{padding:10px 0;font-size:13px;color:var(--muted);border-bottom:2px solid transparent}.code-mode-tabs button[aria-selected=true]{color:var(--accent-text);border-bottom-color:var(--accent-text);font-weight:600}.trace-code-scroll{flex:1;min-height:0;overflow:auto;padding-top:8px;scrollbar-width:thin}.trace-code-scroll[hidden]{display:none}.code-first-workspace .trace-code-scroll .code-body{min-width:max-content}.code-first-workspace .code-line{min-height:27px}.code-first-workspace .code-line code{font-size:14px;line-height:1.7}.full-program-panel{display:flex;flex:1;min-height:0;overflow:hidden}.full-program-panel[hidden]{display:none}.code-first-workspace .complete-example{border:0;display:flex;flex-direction:column;min-height:0;width:100%;padding:0}.program-toolbar{padding:12px 18px;border-bottom:1px solid var(--border);flex-shrink:0;max-height:45%;overflow:auto}.code-first-workspace .example-actions{font-size:12px;gap:8px}.code-first-workspace .example-actions button,.code-first-workspace .example-actions a{padding:7px 10px}.program-details{margin-top:8px;font-size:12px}.program-details p{font-size:12px;line-height:1.6;color:var(--muted);margin:8px 0}.program-sample-note{font-size:11px;color:var(--muted);margin:0 0 8px}.code-first-workspace .complete-source{flex:1;min-height:0;max-height:none;border:0;border-radius:0;margin:0;background:var(--surface);padding:16px 18px;font-size:14px;line-height:1.8;overflow:auto;-moz-tab-size:4;tab-size:4}.code-first-workspace .complete-example>p{margin:16px 18px;font-size:13px}@media(min-width:800px)and (max-height:719px){.code-first-workspace{min-height:580px}.code-first-workspace .workspace-inspector{max-height:580px}}@media(max-width:799px){.code-first-workspace,.code-first-workspace.right-panel-closed{--results-size:clamp(80px,var(--output-panel-height,140px), calc(100% - 330px) );--playback-size: calc(108px + env(safe-area-inset-bottom,0px)) ;grid-template-columns:minmax(0,1fr);grid-template-rows:42px minmax(0,1fr) var(--results-size) var(--playback-size)}.code-first-workspace .workspace-playback,.code-first-workspace .fullscreen-playback{padding-bottom:env(safe-area-inset-bottom,0px)}.code-first-workspace .workspace-code,.code-first-workspace .workspace-inspector{grid-column:1;grid-row:2;display:none}.code-first-workspace.mobile-code .workspace-code{display:flex}.code-first-workspace.mobile-inputs .workspace-inspector,.code-first-workspace.mobile-visualize .workspace-inspector{display:block}.code-first-workspace .workspace-results{grid-row:3}.code-first-workspace .workspace-playback{grid-row:4}.code-first-workspace.mobile-inputs .workspace-visual,.code-first-workspace.mobile-visualize .inspector-controls,.code-first-workspace.mobile-visualize .inspector-details,.code-first-workspace.mobile-visualize .concept-summary{display:none}.code-first-workspace .workspace-inspector>.concept-summary{display:block}.code-first-workspace.mobile-visualize .workspace-inspector>.concept-summary{display:none}.code-first-workspace.mobile-visualize .workspace-visual{height:calc(100% - 38px);border-top:0;overflow:hidden}.code-first-workspace.mobile-visualize .viewport-card{flex:1;min-height:0}.code-first-workspace.mobile-visualize .scene,.code-first-workspace.mobile-visualize .scene.heap-scene{flex:1;height:auto;min-height:0}.code-first-workspace.mobile-visualize .step-explanation{max-height:105px;overflow:auto}.workspace-codebar{min-height:34px;padding:3px 12px}.workspace-codebar>span{font-size:9px;letter-spacing:0}.code-first-workspace .code-line code,.code-first-workspace .complete-source{font-size:13px}.code-first-workspace .view-title strong{max-width:170px}.program-toolbar{padding:10px 12px}}.code-first-workspace .workspace-inspector.inspector-fullscreen{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;width:100%;height:100dvh;max-height:none;margin:0;padding-bottom:64px;border:0;overflow:auto;background:var(--surface)}.code-first-workspace .inspector-fullscreen .inspector-toolbar{height:46px;padding:0 18px}.code-first-workspace .inspector-fullscreen .inspector-toolbar .icon-button{width:38px;height:38px}.code-first-workspace .inspector-fullscreen .workspace-visual{display:flex;height:auto;overflow:visible}.code-first-workspace .inspector-fullscreen .workspace-visual .viewport-card{flex:none}.code-first-workspace .inspector-fullscreen .workspace-visual .scene,.code-first-workspace .inspector-fullscreen .workspace-visual .scene.heap-scene{flex:none;height:clamp(320px,calc(100dvh - 250px),1000px)}.code-first-workspace .inspector-fullscreen .inspector-controls,.code-first-workspace .inspector-fullscreen .inspector-details,.code-first-workspace .workspace-inspector.inspector-fullscreen>.concept-summary{display:block}.code-first-workspace .inspector-fullscreen .lesson-panel,.code-first-workspace .inspector-fullscreen .lesson-details,.code-first-workspace .inspector-fullscreen .concept-summary{max-width:1000px;margin:0 auto}.fullscreen-playback{position:fixed;left:0;right:0;bottom:0;z-index:10;border-top:1px solid var(--border);background:var(--surface)}@media(max-width:799px){.code-first-workspace .workspace-inspector.inspector-fullscreen{padding-bottom:calc(108px + env(safe-area-inset-bottom,0px))}.code-first-workspace .inspector-fullscreen .workspace-visual .scene,.code-first-workspace .inspector-fullscreen .workspace-visual .scene.heap-scene{height:max(280px,calc(100dvh - 300px))}.code-first-workspace .inspector-fullscreen .step-explanation{max-height:none;overflow:visible}}.workspace-resizer{position:absolute;z-index:30;touch-action:none;-webkit-user-select:none;user-select:none;background:transparent;outline-offset:-2px}.workspace-resizer:after{content:"";position:absolute;border-radius:3px;background:var(--muted);opacity:.5}.workspace-resizer:hover,.workspace-resizer:focus-visible,.workspace-resizer.is-dragging{background:var(--selected-surface)}.workspace-resizer:hover:after,.workspace-resizer:focus-visible:after,.workspace-resizer.is-dragging:after{background:var(--accent-text);opacity:1}.resizer-right{top:0;bottom:0;left:calc(100% - var(--inspector-width) - 4px);width:8px;cursor:col-resize}.resizer-right:after{width:3px;height:32px;left:3px;top:calc(50% - 16px)}.resizer-bottom{left:0;right:var(--inspector-width);bottom:calc(var(--results-size) + var(--playback-size) - 4px);height:8px;cursor:row-resize}.resizer-bottom:after{height:3px;width:32px;top:3px;left:calc(50% - 16px)}.right-panel-closed .resizer-bottom{right:0}@media(max-width:799px){.resizer-right{display:none}.resizer-bottom{right:0;height:12px;bottom:calc(var(--results-size) + var(--playback-size) - 6px)}.resizer-bottom:after{top:5px;width:40px;left:calc(50% - 20px)}}.playground-dock{container-type:inline-size}.code-first-workspace .playground-dock .lesson-panel{padding:12px 16px}.code-first-workspace .playground-dock .panel-heading{margin:0 0 10px}.playground-dock .lesson-field{margin:0;min-width:0}.playground-dock .field-label{margin-bottom:4px}.playground-dock .input-help{margin:4px 0;font-size:11px}.playground-dock .technical-details{margin:6px 0}.playground-dock .build-button{margin-top:0}.playground-dock .input-error{overflow-wrap:anywhere}.compact-operation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:end;padding-bottom:10px;margin:0 0 10px}.compact-operation .run-operation,.compact-operation .input-error{grid-column:1/-1}.tree-build-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;align-items:end}.tree-build-form .input-help,.tree-build-form .input-error{grid-column:1/-1}.tree-values-field{min-width:0}.code-first-workspace .tree-build-form textarea{min-height:40px;height:40px;max-height:100px;line-height:1.45;padding:9px 10px}.tree-build-form .build-button{width:auto;white-space:nowrap;min-height:40px}.playground-dock .traversal-controls{display:flex;align-items:end;gap:12px;margin-bottom:10px}.traversal-controls .lesson-field{flex:1}.playground-dock .traversal-order{margin:0 0 10px;gap:6px}.playground-dock .shape-summary{margin:6px 0;font-size:12px}.playground-dock .shape-controls{margin-bottom:10px}.playground-fields{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:10px}.playground-fields .wide-field,.playground-fields>.technical-details{grid-column:1/-1}.playground-action{margin-top:10px}.playground-action .input-error{margin:0 0 6px}@container (min-width:480px){.compact-operation{grid-template-columns:minmax(110px,1fr) minmax(90px,1fr) auto}.compact-operation .run-operation{grid-column:auto;width:auto;min-height:40px}.playground-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:799px){.playground-dock .compact-operation,.playground-dock .tree-build-form,.playground-fields{grid-template-columns:minmax(0,1fr)}.playground-dock .compact-operation .run-operation{grid-column:1;width:100%}.tree-build-form .build-button{width:100%}.playground-dock .traversal-controls{display:block}.playground-dock .traversal-order{margin:8px 0}.playground-dock .lesson-field input,.playground-dock .lesson-field select{min-height:44px}.code-first-workspace .tree-build-form textarea{min-height:64px;height:64px}}.normal-code-slot,.shared-code-host{display:flex;flex:1;min-height:0;min-width:0;overflow:hidden}.fullscreen-study{display:flex;flex-direction:column;min-height:300px;min-width:0;border-top:1px solid var(--border)}.fullscreen-code-slot{display:flex;flex:1;min-height:0;overflow:hidden}.fullscreen-code-slot[hidden],.fullscreen-concept-panel[hidden]{display:none}.fullscreen-concept-panel{flex:1;min-height:0;overflow:auto}@media(min-width:800px){.code-first-workspace .workspace-inspector.inspector-fullscreen{display:grid;grid-template-columns:minmax(0,1fr) clamp(340px,34vw,560px);grid-template-rows:46px auto minmax(300px,1fr);align-content:start;align-items:start}.code-first-workspace .inspector-fullscreen .inspector-toolbar{grid-column:1/-1;grid-row:1;width:100%}.code-first-workspace .inspector-fullscreen .workspace-visual{grid-column:1;grid-row:2/4;min-width:0;border-right:1px solid var(--border)}.code-first-workspace .inspector-fullscreen .workspace-visual .scene,.code-first-workspace .inspector-fullscreen .workspace-visual .scene.heap-scene{height:clamp(300px,calc(100dvh - 230px),1000px)}.code-first-workspace .inspector-fullscreen .inspector-controls{grid-column:2;grid-row:2;border-top:0}.code-first-workspace .inspector-fullscreen .inspector-details{grid-column:2;grid-row:3}.code-first-workspace .workspace-inspector.inspector-fullscreen>.concept-summary{grid-column:2;grid-row:4;width:100%}.fullscreen-study{grid-column:2;grid-row:3;align-self:stretch}}.code-first-workspace .learning-input-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start}.code-first-workspace .learning-input-form .playground-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}.code-first-workspace .learning-input-form .values-field:only-of-type{grid-column:1/-1}.code-first-workspace .learning-input-form textarea{min-height:40px;height:40px;max-height:90px;padding:9px 10px;line-height:1.45;resize:vertical}.code-first-workspace .learning-input-form textarea[aria-label="Graph edges"],.code-first-workspace .learning-input-form textarea[aria-label=Commands]{height:58px}.code-first-workspace .learning-input-form .playground-action{margin-top:18px}.code-first-workspace .learning-input-form .build-button{width:auto;min-height:40px;white-space:nowrap;gap:12px;padding:9px 13px}.code-first-workspace .learning-input-form .playground-action:has(.input-error){grid-column:1/-1;display:flex;align-items:center;gap:12px;margin-top:0}.code-first-workspace .learning-input-form .input-error{flex:1;margin:0;font-size:11px}.sorting-bars{justify-content:center;min-width:100%;width:max-content;gap:12px}.sorting-bars .lesson-cell{background:transparent;min-width:48px;padding:8px 5px}.sorting-bars .lesson-cell strong{font-size:17px}.sorting-bars .lesson-cell small{font-size:12px;color:var(--muted)}.sorting-identities{font-size:11px;color:var(--muted);margin-top:8px}.sorting-identities summary{cursor:pointer}.sorting-identities p{font-size:12px;max-width:460px}@container (max-width:430px){.code-first-workspace .learning-input-form{grid-template-columns:minmax(0,1fr)}.code-first-workspace .learning-input-form .playground-action{margin-top:0;justify-self:end}}@media(max-width:799px){.code-first-workspace .learning-input-form,.code-first-workspace .learning-input-form .playground-fields{grid-template-columns:minmax(0,1fr)}.code-first-workspace .learning-input-form .playground-action{margin-top:0;justify-self:end}.code-first-workspace .learning-input-form textarea{font-size:16px;min-height:44px;height:44px}}.normal-results-slot{grid-column:1;grid-row:2;display:flex;min-width:0;min-height:0;overflow:hidden}.shared-results-host{display:flex;flex:1;min-width:0;min-height:0;overflow:hidden}.shared-results-host>.workspace-results{flex:1;min-width:0;min-height:0;width:100%}.fullscreen-results-slot{grid-row:4;display:flex;min-width:0;min-height:0;overflow:hidden}.fullscreen-results-slot[hidden],.fullscreen-mobile-tabs{display:none}@media(min-width:800px){.code-first-workspace .workspace-inspector.inspector-fullscreen{grid-template-rows:46px auto minmax(0,1fr);overflow:hidden;align-items:stretch;align-content:stretch}.code-first-workspace .inspector-fullscreen .inspector-controls{max-height:38dvh;overflow:auto}.code-first-workspace .inspector-fullscreen .workspace-visual{height:auto;min-height:0;overflow:hidden}.code-first-workspace .inspector-fullscreen .workspace-visual .viewport-card{flex:1;min-height:0}.code-first-workspace .inspector-fullscreen .workspace-visual .scene,.code-first-workspace .inspector-fullscreen .workspace-visual .scene.heap-scene{flex:1;height:auto;min-height:0}.code-first-workspace .inspector-fullscreen .step-explanation{max-height:110px;overflow:auto}.fullscreen-study{position:relative;min-height:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:36px minmax(0,1fr) 8px var(--fullscreen-results-height)}.fullscreen-study>.result-tabs{grid-row:1}.fullscreen-study>.fullscreen-code-slot,.fullscreen-study>.fullscreen-concept-panel{grid-row:2;min-height:0}.fullscreen-study>.fullscreen-results-resizer{position:relative;grid-column:1;grid-row:3;left:auto;right:auto;bottom:auto;width:100%;height:8px}.fullscreen-results-resizer:after{top:3px}}@media(max-width:799px){.normal-results-slot{grid-row:3}.code-first-workspace .workspace-inspector.inspector-fullscreen{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:46px 42px minmax(0,1fr);overflow:hidden;align-items:stretch}.fullscreen-mobile-tabs{display:flex;grid-row:2;overflow:auto;gap:12px;padding:0 12px}.fullscreen-mobile-tabs button{white-space:nowrap;padding:8px 0;min-height:42px;font-size:12px}.code-first-workspace .inspector-fullscreen .workspace-visual,.code-first-workspace .inspector-fullscreen .inspector-controls,.code-first-workspace .inspector-fullscreen .fullscreen-study{grid-column:1;grid-row:3;height:auto;min-height:0;overflow:auto}.code-first-workspace .inspector-fullscreen .workspace-visual,.code-first-workspace .inspector-fullscreen .inspector-controls{display:none}.code-first-workspace .inspector-fullscreen[data-fullscreen-view=visualize] .workspace-visual{display:flex;overflow:hidden}.code-first-workspace .inspector-fullscreen[data-fullscreen-view=inputs] .inspector-controls{display:block}.code-first-workspace .inspector-fullscreen .workspace-visual .viewport-card{flex:1;min-height:0}.code-first-workspace .inspector-fullscreen .workspace-visual .scene,.code-first-workspace .inspector-fullscreen .workspace-visual .scene.heap-scene{flex:1;height:auto;min-height:0}.code-first-workspace .inspector-fullscreen .step-explanation{max-height:105px;overflow:auto}.code-first-workspace .inspector-fullscreen .fullscreen-study{display:flex;flex-direction:column;overflow:hidden;border-top:0}.code-first-workspace .inspector-fullscreen[data-fullscreen-view=visualize] .fullscreen-study,.code-first-workspace .inspector-fullscreen[data-fullscreen-view=inputs] .fullscreen-study{display:none}.fullscreen-study>.result-tabs{display:none}.fullscreen-results-slot{flex:1}}@media(max-width:799px){.fullscreen-mobile-tabs{overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.fullscreen-mobile-tabs::-webkit-scrollbar{display:none}}.mobile-results-toggle{display:none}@media(max-width:799px){.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .workspace-visual{height:max(360px,calc(100% - 38px))}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .workspace-visual:has(.heap-scene){height:max(480px,calc(100% - 38px))}.code-first-workspace .workspace-visual .scene{display:flex;flex-direction:column}.code-first-workspace .workspace-visual .scene-caption{position:static;flex:none;display:block;max-width:none;padding:7px 12px 4px;font-size:10px;line-height:1.4}.code-first-workspace .workspace-visual .scene-caption small{position:static;display:block;margin-left:10px;width:auto;font-size:9px}.code-first-workspace .workspace-visual .scene-caption .status-dot{margin-right:5px;vertical-align:middle}.code-first-workspace .workspace-visual .scene>.tree-mount,.code-first-workspace .workspace-visual .scene>.matrix-viewport,.code-first-workspace .workspace-visual .scene>.lesson-visual{position:relative;inset:auto;flex:1;width:100%;min-width:0;min-height:0}.code-first-workspace .workspace-visual .scene>.planar-mount{display:flex;padding:8px;overflow:auto}.code-first-workspace .workspace-visual .planar-mount>.structure-svg,.code-first-workspace .workspace-visual .planar-mount>.fallback-tree{flex:none;display:block;margin:auto;padding:0;max-width:none;max-height:none}.code-first-workspace .workspace-visual .scene-legend{position:static;flex:none;padding:4px 12px;flex-wrap:wrap;gap:7px 12px}.code-first-workspace .workspace-visual .orbit-hint{position:static;flex:none;min-height:24px;padding:4px 12px;font-size:9px;line-height:1.4;white-space:normal}.code-first-workspace .workspace-visual .scene>.matrix-viewport{padding:8px 12px;overflow:auto}.code-first-workspace .workspace-visual .scene>.lesson-visual{padding:8px 12px;overflow:auto}.code-first-workspace .workspace-visual .interval-visual{min-width:0}.code-first-workspace .workspace-visual .fallback-note{top:auto;bottom:4px;padding:3px 6px;background:var(--surface)}.code-first-workspace .workspace-visual .scene-loading{position:relative;flex:1;min-height:0}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .workspace-results{position:relative}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .workspace-results>.result-tabs{padding-right:46px;min-height:44px;gap:14px}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .mobile-results-toggle{position:absolute;right:5px;top:0;z-index:2;display:flex;align-items:center;justify-content:center;width:40px;height:44px;color:var(--accent-text);border-radius:5px}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize.mobile-results-collapsed{--results-size:44px}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize.mobile-results-collapsed .workspace-results>.result-content{display:none}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize.mobile-results-collapsed>.resizer-bottom{display:none}}.connected-studio .topbar .seo-guide{position:static;max-height:none;overflow:visible;background:transparent;border:0;flex:none}.connected-studio .topbar .seo-guide>summary{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;list-style:none;cursor:pointer;color:#fff;border:1px solid #ffffff40;border-radius:6px;background:#ffffff0d}.seo-guide>summary::-webkit-details-marker,.code-info>summary::-webkit-details-marker{display:none}.connected-studio .topbar .seo-guide[open]>summary{background:#ffffff24}.connected-studio .topbar .seo-guide-content{position:absolute;right:12px;top:calc(100% + 6px);z-index:40;width:min(620px,calc(100vw - 24px));max-height:65dvh;overflow:auto;padding:16px 20px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px #17102024}.code-first-workspace .code-panel .consolidated-code-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px 14px;height:auto;min-height:52px;padding:6px 12px;flex-wrap:wrap;position:relative;z-index:4}.consolidated-code-toolbar .code-heading,.code-toolbar-actions{display:flex;align-items:center;gap:8px;min-width:0}.read-only-label{font-size:9px;color:var(--muted);white-space:nowrap}.code-info{position:static}.code-info>summary{display:flex;align-items:center;justify-content:center;width:26px;height:30px;list-style:none;color:var(--muted);cursor:pointer;border-radius:4px}.code-info>summary:hover{background:var(--selected-surface);color:var(--accent-text)}.code-info p{position:absolute;left:10px;top:calc(100% + 4px);width:min(340px,calc(100% - 20px));margin:0;padding:12px 14px;border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #17102020;background:var(--surface);color:var(--text);font-size:12px;line-height:1.6;z-index:10}.consolidated-code-toolbar .code-mode-tabs{border:0;min-height:32px;padding:0;gap:12px;flex-wrap:nowrap}.consolidated-code-toolbar .code-mode-tabs button{font-size:11px;padding:7px 0;white-space:nowrap}.code-toolbar-actions{margin-left:auto}.code-panel-toggle{color:var(--accent-text);flex-shrink:0}.code-first-workspace .workspace-visual{border-top:0}.code-first-workspace .workspace-visual .card-toolbar{position:sticky;top:0;z-index:7;min-height:52px;height:auto;padding:8px 12px;gap:8px;background:var(--surface)}.code-first-workspace .viewport-actions{gap:5px;flex-shrink:0}.code-first-workspace .viewport-actions .inspector-window-actions{gap:2px;border-left:1px solid var(--border);padding-left:5px;margin-left:2px}.code-first-workspace .viewport-actions .inspector-window-actions .icon-button{width:28px;min-height:30px;padding:0;display:flex;align-items:center;justify-content:center}.code-first-workspace .view-title .tag{display:none}.support-tabs{border-top:1px solid var(--border)}.support-tabs[hidden],.support-explanation[hidden],.inspector-controls[hidden]{display:none!important}.support-explanation{min-width:0}.code-first-workspace .support-explanation .concept-summary{display:block}@media(max-width:799px){.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .workspace-visual{height:max(360px,100%)}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .workspace-visual:has(.heap-scene){height:max(480px,100%)}.code-first-workspace.mobile-visualize .support-tabs,.code-first-workspace.mobile-visualize .support-explanation{display:none}.code-first-workspace .view-title strong{max-width:130px;font-size:11px}.code-first-workspace .workspace-visual .card-toolbar{min-height:44px;padding:5px 10px}.consolidated-code-toolbar .code-heading{gap:5px}.consolidated-code-toolbar .read-only-label{font-size:8px}.code-first-workspace .code-panel .consolidated-code-toolbar{gap:3px 10px;padding:6px 10px}.consolidated-code-toolbar .code-mode-tabs{order:3;width:100%;min-height:32px}.consolidated-code-toolbar .language-tabs button{padding:5px 6px;font-size:10px}.code-toolbar-actions{gap:4px}.code-first-workspace .inspector-fullscreen .view-title strong{max-width:140px}}.code-info>summary:focus-visible,.seo-guide>summary:focus-visible{outline:3px solid #b4a3ed;outline-offset:2px}.code-first-workspace .inspector-fullscreen .fullscreen-concept-panel .concept-summary{display:block}.current-boundaries{display:flex;flex-wrap:wrap;gap:5px 12px;font-size:11px;line-height:1.5;color:var(--text);margin-bottom:8px}.current-boundaries>span{padding:3px 6px;border-radius:4px;background:var(--selected-surface)}.current-boundaries strong{color:var(--accent-text)}.named-step-output{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0}.named-step-output>div{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--selected-surface)}.named-step-output dt{font-size:12px;color:var(--text)}.named-step-output dd{font-size:16px;font-weight:750;color:var(--accent-text);margin:0}@media(max-width:799px){.code-first-workspace.mobile-visualize .step-explanation:has(.current-boundaries){max-height:140px}}@media(max-width:799px){.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .workspace-visual:has(.hash-chain-scene){height:auto;min-height:100%;overflow:visible}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .viewport-card:has(.hash-chain-scene){flex:none}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .scene.hash-chain-scene{flex:none;height:auto}.code-first-workspace:not(.panel-is-fullscreen).mobile-visualize .scene.hash-chain-scene>.tree-mount{min-height:280px}}@media(max-width:799px){.code-first-workspace .inspector-fullscreen .workspace-visual:has(.hash-chain-scene){overflow:auto}.code-first-workspace .inspector-fullscreen .viewport-card:has(.hash-chain-scene){flex:none}.code-first-workspace .inspector-fullscreen .scene.hash-chain-scene{flex:none;height:auto}}
