:root{--bg:#071b17;--panel:#0d2721;--mint:#65f0bf;--text:#e7f4ed;--muted:#89aaa0;--line:#244139}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 'Segoe UI',Arial,sans-serif}button,input,select{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:none;border:1px solid var(--line);border-radius:7px;padding:9px 13px}button:hover{border-color:var(--mint);background:#15392e}button:focus-visible,a:focus-visible{outline:2px solid var(--mint);outline-offset:4px}header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:var(--mint);text-decoration:none;letter-spacing:3px;font-size:17px;font-weight:700;line-height:1.15}.brand b{display:block;font-size:10px;letter-spacing:4px}.brand svg{width:48px;stroke:var(--mint);fill:none;stroke-width:2}nav{display:flex;gap:25px}nav button{border:0;color:var(--muted)}nav .active{color:var(--mint)}.social{color:var(--text);text-decoration:none;font-size:12px}main{max-width:1500px;margin:auto;padding:38px 5% 25px}.intro{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:10px;letter-spacing:2.4px;color:var(--mint)}h1{font-size:clamp(25px,2.7vw,40px);font-weight:500;letter-spacing:-1.2px;margin:10px 0}h1 em{font-family:Georgia,serif;color:var(--mint);font-weight:normal}.intro p{color:var(--muted);margin:0}.live{font-size:9px;letter-spacing:1.5px;border:1px solid var(--line);border-radius:30px;padding:8px 13px;color:var(--mint)}.modules{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0 20px}.modules button{text-align:left;display:flex;gap:15px;align-items:center;padding:17px;background:#0b231d;border-radius:10px}.modules button.selected{border-color:#3e9174;background:#12392c}.modules button>span{font-size:32px;color:var(--mint);width:33px}.modules small{display:block;font-size:11px;color:var(--muted);margin-top:2px}.modules i{margin-left:auto;color:#658579;font-size:11px;font-style:normal}#lab{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:17px}.workspace,aside{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel)}.toolbar{height:75px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid var(--line)}.toolbar strong{font-weight:500}.toolbar small{display:block;color:var(--muted);font-size:10px;margin:3px 0 0 15px}.dot{display:inline-block;width:6px;height:6px;background:var(--mint);border-radius:50%;margin-right:9px}.seg{display:flex;gap:3px;background:#071d17;border-radius:7px;padding:3px}.seg button{border:0;font-size:12px;padding:6px 12px}.seg .on{background:#244d3f;color:var(--mint)}.wide{margin:16px 0}.wide button{flex:1}.canvaswrap{position:relative;background:radial-gradient(ellipse at center,#11372b 0%,#0a211b 70%)}canvas{display:block;width:100%;height:auto;touch-action:none}.canvasbadge{position:absolute;left:22px;top:18px;font-size:8px;letter-spacing:1.6px;color:#749b89;pointer-events:none}.canvashelp{position:absolute;bottom:13px;width:100%;text-align:center;color:#729584;font-size:10px;pointer-events:none}.viewfoot{display:flex;align-items:center;gap:15px;padding:14px 20px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.viewfoot button{margin-left:auto;font-size:10px;border:0;padding:3px}.viewfoot input{accent-color:var(--mint)}aside{padding:22px}h2{font-size:16px;font-weight:500;margin:0 0 12px}.paneltitle{display:flex;justify-content:space-between;align-items:center}.paneltitle span{color:var(--mint)}.field{display:block;font-size:11px;color:var(--muted);margin:17px 0}.field input,.field select{display:block;width:100%;color:var(--text);background:#091e18;border:1px solid var(--line);padding:10px;border-radius:6px;margin-top:7px;font-size:12px}.rangehead{display:flex;justify-content:space-between;margin-top:23px;font-size:11px;color:#b0cabe;gap:10px}output{color:var(--mint);font:14px monospace}input[type=range]{width:100%;accent-color:var(--mint);height:4px;margin:17px 0}.note{color:var(--muted);font-size:10px;line-height:1.8;margin:12px 0 17px}.primary{background:var(--mint);color:#06251a;border:0;width:100%;font-size:12px;font-weight:600;padding:12px}.primary:hover{background:#9affd9;color:#052218}.listhead{display:flex;justify-content:space-between;align-items:center;margin-top:18px}h3{font-size:12px;font-weight:500}h3 span{color:var(--muted);margin-left:5px}.listhead button{font-size:10px;border:0;color:var(--muted);padding:4px}.measure{display:flex;align-items:center;gap:9px;border-top:1px solid var(--line);padding:10px 0;font-size:11px}.measure small{display:block;font-size:9px;color:var(--muted)}.measure button{margin-left:auto;padding:2px 7px;border:0;color:var(--muted)}.measure .swatch{width:7px;height:7px;border-radius:50%;flex-shrink:0}#measurements{max-height:170px;overflow:auto}.fileactions{display:flex;gap:5px;margin-top:16px}.fileactions button{font-size:10px;padding:7px;flex:1}.bottomnote{display:flex;gap:15px;align-items:center;padding:17px 20px;border:1px solid var(--line);border-radius:9px;margin-top:18px;color:var(--muted);font-size:11px}.bottomnote>span{font-size:25px;color:var(--mint)}.bottomnote b{color:#c5dfd1;font-weight:500}.bottomnote button{margin-left:auto;font-size:10px;border:0;white-space:nowrap;color:var(--mint)}footer{margin:8px 5% 0;padding:24px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:var(--muted)}footer small{display:block;font-size:9px;letter-spacing:0;margin-top:5px}.explain{font-size:12px;line-height:1.9;color:#aacdbb;padding:20px 0}.result{background:#153c2d;border:1px solid #32674e;border-radius:8px;padding:20px;margin-top:25px}.result small{font-size:9px;letter-spacing:2px}.result strong{display:block;font-size:38px;color:var(--mint);font-weight:400}.lesson{padding:30px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.lesson span{font-size:10px;color:var(--mint);letter-spacing:2px}.lesson h2{font-family:Georgia,serif;font-size:25px;margin-top:20px}.lesson p{color:#a4c1b4;line-height:1.9;font-size:13px}#learn:not([hidden]){display:grid;grid-template-columns:repeat(3,1fr);gap:17px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--mint);color:#052417;padding:12px 22px;border-radius:8px;display:none;z-index:20}[hidden]{display:none!important}@media(min-width:1400px){canvas{max-height:590px;object-fit:contain}}@media(max-width:950px){#lab{grid-template-columns:minmax(0,1fr) 275px}main{padding:25px 3%}.modules button{padding:12px;font-size:12px}.modules i{display:none}.live{display:none}aside{padding:16px}}@media(max-width:700px){header{height:75px;padding:0 5%}.brand{font-size:13px}.brand svg{width:35px}.brand b{font-size:8px}nav{gap:0}nav button{font-size:11px;padding:8px}.social{display:none}.intro p{font-size:12px}.modules{gap:6px;margin-top:24px}.modules button{display:block;padding:10px;font-size:11px}.modules small{font-size:9px}.modules button>span{font-size:24px}.modules button div{min-height:45px}#lab{grid-template-columns:1fr}.toolbar{padding:0 13px}.toolbar strong{font-size:12px}.toolbar small{font-size:8px}.seg button{padding:6px 8px}.viewfoot{gap:9px;padding:12px;font-size:10px}.bottomnote{align-items:flex-start;flex-wrap:wrap}.bottomnote p{flex:1;margin:0}.bottomnote button{margin-left:30px;padding:0}#learn:not([hidden]){grid-template-columns:1fr}footer{font-size:8px}aside{padding:22px}}
