*{box-sizing:border-box}:root{color:#17211c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#17211c;--muted:#66736b;--paper:#fffdf7;--line:#d8ddd1;--accent:#126b5c;--accent-2:#b6422f;--gold:#b7801f;--blue:#315f9f;--shadow:0 14px 42px #17211c1f;background:#f7f7f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.45}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #126b5c61}#root{min-height:100svh}.app-shell{grid-template-rows:auto 1fr;min-height:100svh;display:grid}.topbar{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf7eb;justify-content:space-between;align-items:center;gap:18px;padding:14px clamp(18px,4vw,48px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;min-width:220px;display:flex}.brand-mark{color:#fffdf7;background:var(--accent);border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.brand strong{color:var(--ink);font-size:17px;display:block}.brand span,.topbar-meta,.panel-eyebrow,.tool-meta,.status-line,.microcopy{color:var(--muted);font-size:13px}.topbar-meta{white-space:nowrap;align-items:center;gap:10px;display:flex}.pill{border:1px solid var(--line);min-height:28px;color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:4px 9px;font-size:12px;display:inline-flex}.workspace{grid-template-columns:minmax(260px,336px) 1fr;min-height:0;display:grid}.sidebar{border-right:1px solid var(--line);background:#eeefe7;padding:24px}.intro{margin-bottom:20px}.intro h1{color:var(--ink);margin:0 0 8px;font-size:clamp(30px,5vw,52px);line-height:1}.intro p{color:var(--muted);margin:0}.tool-list{gap:8px;display:grid}.tool-button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:34px 1fr;gap:10px;padding:11px;display:grid}.tool-button:hover,.tool-button.active{background:#fffdf7;border-color:#c7d1c5;box-shadow:0 8px 24px #17211c14}.tool-icon{color:#fff;background:var(--accent);border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.tool-title{font-size:14px;font-weight:750;display:block}.tool-engine{color:var(--muted);font-size:12px;display:block}.lab-stage{min-width:0;padding:clamp(18px,3vw,36px)}.hero-band{grid-template-columns:1.1fr .9fr;align-items:stretch;gap:clamp(20px,4vw,52px);margin-bottom:24px;display:grid}.hero-copy{flex-direction:column;justify-content:center;min-height:300px;padding:clamp(24px,5vw,58px) 0;display:flex}.hero-copy h2{max-width:760px;color:var(--ink);margin:0 0 14px;font-size:clamp(32px,6vw,70px);line-height:.96}.hero-copy p{max-width:660px;color:var(--muted);margin:0;font-size:18px}.lab-visual{border:1px solid var(--line);min-height:320px;box-shadow:var(--shadow);background-color:#faf7ed;background-image:linear-gradient(90deg,#126b5c21 1px,#0000 1px),linear-gradient(#126b5c21 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:30px 30px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:8px;position:relative;overflow:hidden}.lab-visual svg{width:100%;height:100%}.tool-header{justify-content:space-between;align-items:start;gap:20px;margin-bottom:20px;display:flex}.tool-header h2{color:var(--ink);margin:0 0 6px;font-size:clamp(26px,4vw,44px);line-height:1.03}.tool-header p{max-width:720px;color:var(--muted);margin:0}.tool-grid{grid-template-columns:minmax(270px,360px) 1fr;align-items:start;gap:20px;display:grid}.control-panel,.output-panel,.lesson-panel{border:1px solid var(--line);background:var(--paper);border-radius:8px;box-shadow:0 8px 26px #17211c14}.control-panel,.lesson-panel{padding:18px}.output-panel{overflow:hidden}.panel-title{color:var(--ink);margin:0 0 14px;font-size:18px}.control-stack{gap:15px;display:grid}.field{gap:6px;display:grid}.field label{color:var(--ink);font-size:13px;font-weight:700}.field input,.field select,.field textarea{width:100%;min-height:38px;color:var(--ink);background:#fff;border:1px solid #cbd3c5;border-radius:7px;padding:8px 10px}.field input[type=range]{padding:0}.button-row{flex-wrap:wrap;gap:8px;display:flex}.command{background:var(--accent);color:#fff;cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:8px 12px;font-weight:750;display:inline-flex}.command.secondary{border:1px solid var(--line);color:var(--ink);background:#fff}.command.warning{background:var(--accent-2)}.results-grid{border-bottom:1px solid var(--line);background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.metric{background:#fff;padding:14px}.metric strong{color:var(--ink);font-size:20px;display:block}.metric span{color:var(--muted);font-size:12px}.plot{background:#fbfbf7;width:100%;height:360px;display:block}.lesson-panel{margin-top:20px}.lesson-panel ol{color:var(--muted);margin:10px 0 0;padding-left:22px}.toast{z-index:30;max-width:min(420px,100vw - 36px);box-shadow:var(--shadow);color:var(--ink);background:#fff;border:1px solid #cfe1ce;border-radius:8px;padding:12px 14px;position:fixed;bottom:18px;right:18px}.error-box{color:#803424;background:#fff4f1;border:1px solid #e3b3a9;border-radius:7px;margin-top:12px;padding:10px 12px}@media (width<=980px){.workspace,.hero-band,.tool-grid{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.tool-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.topbar,.tool-header{flex-direction:column;align-items:stretch}.tool-list,.results-grid{grid-template-columns:1fr}.plot{height:280px}}
