:root{color-scheme:dark;--bg:#0b1020;--card:#131b2f;--deep:#0e1628;--text:#edf2ff;--muted:#a7b5d0;--line:#324463;--brand:#9debdc;--focus:#ffe192;--accent:#254c6d;--danger:#ffb2b2;--grid:#23314c;font-family:Inter,system-ui,sans-serif}
:root[data-theme=light]{color-scheme:light;--bg:#edf3fa;--card:#fff;--deep:#f0f5fa;--text:#15223a;--muted:#425471;--line:#8597af;--brand:#075b53;--focus:#73340c;--accent:#d5eee9;--danger:#8d1627;--grid:#b9c9dc}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}[hidden]{display:none!important}main,.site{max-width:1480px;margin:auto;padding-inline:clamp(16px,4vw,56px)}.site{display:flex;align-items:center;gap:20px;min-height:68px;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(--brand)}.skip{position:absolute;top:-200px}.skip:focus{top:0;z-index:5;background:var(--card);color:var(--text);padding:12px}.hero{padding:clamp(26px,4vw,64px) 0 20px}.eyebrow{color:var(--brand);font-weight:700;letter-spacing:.12em;font-size:.75rem}h1{font-size:clamp(2rem,5vw,4.2rem);letter-spacing:-.055em;line-height:1.02;margin:.18em 0}h1 span{color:var(--brand)}h2,h3,h4{margin:0 0 8px}p{line-height:1.55;margin:6px 0 12px}.hero p:last-child{max-width:690px;color:var(--muted)}button,input,select,textarea{font:inherit;color:var(--text);background:var(--deep);border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-width:0}button{cursor:pointer;font-weight:650;min-height:40px}button:hover{border-color:var(--brand)}button:disabled{cursor:default;opacity:.55}button.primary,button[aria-pressed=true]{background:var(--accent);border-color:var(--brand)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}label{display:grid;gap:5px;font-size:.9rem;font-weight:650;margin:9px 0}.check{display:flex;align-items:center}.controls,.tabs{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.status{min-height:1.5em;color:var(--brand)}.panel{padding-bottom:32px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;min-width:0}.toolbar{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.workspace{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:14px;margin-bottom:14px}.muted,small{color:var(--muted)}textarea{resize:vertical;width:100%;font-family:'IBM Plex Mono',ui-monospace,monospace}.card select{max-width:100%}#viewport{overflow:auto;max-width:100%;height:296px;border:1px solid var(--line);border-radius:10px;background:radial-gradient(var(--grid) 1px,transparent 1px) var(--deep);background-size:20px 20px;margin:10px 0}#canvas{position:relative;min-width:100%;min-height:100%;overflow:hidden}#edges,#nodes{position:absolute;inset:0;transform-origin:0 0}#edges{overflow:visible;pointer-events:none;fill:none;stroke:var(--line);stroke-width:2.5}#edges path.active{stroke:var(--brand);stroke-dasharray:8 4;animation:route .6s linear infinite}@keyframes route{to{stroke-dashoffset:-12}}.node{position:absolute;width:150px;height:66px;text-align:left;overflow:hidden;touch-action:none;background:var(--card);box-shadow:0 8px 16px #0002}.node small,.node span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node.running{border-color:var(--brand);box-shadow:0 0 20px var(--accent)}.node.error{border-color:var(--danger)}.node.skipped{opacity:.66}.node.done{border-bottom-color:var(--brand)}details{padding:9px 0;border-top:1px solid var(--line)}summary{cursor:pointer;line-height:1.5}pre{background:var(--deep);border-radius:8px;padding:10px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px}#trace{max-height:410px;overflow:auto}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px}.tile{border:1px solid var(--line);border-radius:10px;padding:12px}.error{color:var(--danger)}table{width:100%;border-collapse:collapse;margin-top:14px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:8px}input[type=number]{width:9em}@media(max-width:830px){.workspace{grid-template-columns:1fr}#viewport{height:265px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important}}

.discovery-learning-context{margin-bottom:24px}.discovery-learning-context a{color:var(--brand)}
