:root{color-scheme:dark;--bg:#10131b;--panel:#1a1e2a;--deep:#121722;--text:#f2f4fe;--muted:#b4bfd5;--line:#47536d;--accent:#a7e7ff;--accent-bg:#233e57;--focus:#ffdb85;--error:#ffb1b7;--code:#e8b9fa;font-family:Inter,system-ui,sans-serif}
:root[data-theme=light]{color-scheme:light;--bg:#eef2f8;--panel:#fff;--deep:#f4f6fc;--text:#142138;--muted:#3d506d;--line:#8699b6;--accent:#124e74;--accent-bg:#dbeefd;--focus:#782c09;--error:#8b1834;--code:#652387}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}[hidden]{display:none!important}main,.site{max-width:1600px;margin:auto;padding-inline:clamp(14px,3vw,42px)}.site{min-height:64px;display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line)}.site button{margin-left:auto}.site a{color:var(--text);text-decoration:none}.site .brand{font-weight:800;color:var(--accent)}a{color:var(--accent)}.skip{position:absolute;top:-200px}.skip:focus{top:0;padding:.75rem;background:var(--deep);z-index:5}
.intro{padding:clamp(22px,3vw,44px) 0 14px}.eyebrow{font-size:.75rem;letter-spacing:.14em;font-weight:800;color:var(--accent)}h1{font-size:clamp(1.9rem,4vw,3.6rem);letter-spacing:-.05em;margin:.18em 0;line-height:1.05}h1 span{color:var(--accent)}h2{font-size:1.2rem;margin:0 0 .45rem}h3{font-size:1rem;margin:.8rem 0 .2rem}p,li{line-height:1.5}p{margin:.35rem 0 .8rem}.intro p:last-child{max-width:720px;color:var(--muted)}
button,input,select,textarea{min-width:0;font:inherit;color:var(--text);background:var(--deep);border:1px solid var(--line);border-radius:7px;padding:7px 9px}button{cursor:pointer;min-height:38px;font-weight:650}button:hover{border-color:var(--accent)}button:disabled{opacity:.58;cursor:default}button.primary,button[aria-pressed=true]{background:var(--accent-bg);border-color:var(--accent)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}label{display:grid;gap:5px;margin:6px 0;font-size:.88rem;font-weight:650}.check{display:flex;align-items:center}input[type=number]{width:7rem}input[type=color]{width:44px;height:34px;padding:3px}input[type=file]{max-width:100%}select{max-width:100%}textarea{width:100%;resize:vertical}#source,pre{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:.88rem;line-height:1.5}pre{margin:.5rem 0;overflow:auto;background:var(--deep);padding:10px;border-radius:8px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:390px}.token{color:var(--code)}
.controls,.tabs{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.card{min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:13px}.bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.workbench{display:grid;grid-template-columns:minmax(170px,220px) minmax(0,1fr) minmax(210px,260px);gap:10px;align-items:start}.split{display:grid;grid-template-columns:2fr 1fr;gap:12px}.panel{margin-bottom:16px}.small,small{color:var(--muted);font-size:.85rem}.error{color:var(--error)}#status{min-height:1.5em;color:var(--accent);margin:.45rem 0}
#preview{min-height:380px;max-width:100%;overflow:auto;background:#0c111a;border:1px solid var(--line);border-radius:9px;margin:8px 0;display:block}#preview iframe{display:block;height:490px;border:0;background:#fff;margin:auto}#layer-list{display:grid;gap:4px;margin-bottom:10px;max-height:430px;overflow:auto}#layer-list button{display:block;text-align:left;margin-left:calc(var(--depth)*.55rem);overflow-wrap:anywhere}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:10px}.tile{border:1px solid var(--line);border-radius:10px;padding:12px}.tile h3{margin-top:0}details{border-top:1px solid var(--line);padding:.55rem 0}summary{cursor:pointer}#editor{margin-top:10px;scroll-margin-top:10px}#events{max-height:180px;overflow:auto}.discovery-learning-context{margin-bottom:22px}
@media(max-width:1080px){.workbench{grid-template-columns:150px minmax(0,1fr)}.properties{grid-column:1/-1}.properties form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;align-items:center}}
@media(max-width:650px){.workbench,.split{grid-template-columns:1fr}.canvas{grid-row:1}.layers{grid-row:2}#layer-list{max-height:150px}#preview iframe{height:430px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important}}
#source{tab-size:4}#console,#trace,#variables{min-height:3rem}#items{margin-top:12px}#tests details{overflow-wrap:anywhere}.bar-chart{display:grid;gap:6px;margin-top:12px}.bar-chart progress{width:min(100%,450px);height:16px}.bar-chart label{grid-template-columns:minmax(7rem,12rem) minmax(60px,450px) auto;align-items:center}.small{overflow-wrap:anywhere}@media(max-width:800px){.split{grid-template-columns:1fr}} 
