:root{--ink:#1e2930;--paper:#f7f6f0;--paper-raised:#fffefa;--sun:#f4c95d;--mint:#cde8d5;--blue:#c9dfed;--coral:#ef8b6c;--green:#6fac82;--line:#d9d8cf;--muted:#69767a;--error:#a53f2d;--focus:#315d73;--font-display:"Fraunces", serif;--font-body:"Manrope", sans-serif;--font-mono:"DM Mono", monospace}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0;overflow-x:clip}body{background:var(--paper);color:var(--ink);font-family:var(--font-body)}button,textarea,input{font:inherit}button{color:inherit;cursor:pointer}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:72px;padding:0 4.2vw;display:flex}.brand{color:var(--ink);letter-spacing:-1.2px;font-size:22px;font-weight:700;text-decoration:none}.brand span:not(.brand-mark){color:var(--coral)}.brand-mark{background:var(--ink);width:24px;height:24px;color:var(--sun);font-family:var(--font-display);border-radius:50% 50% 45% 45%;place-items:center;margin-right:4px;font-size:17px;display:inline-grid}.header-note{align-items:center;gap:10px;font-size:13px;display:flex}.status-dot{background:var(--green);border-radius:50%;width:8px;height:8px}.avatar{background:var(--blue);width:34px;height:34px;color:var(--ink);border:0;border-radius:50%;place-items:center;margin-left:8px;font-size:11px;font-weight:700;text-decoration:none;display:grid}.layout{grid-template-columns:310px minmax(0,1fr);min-height:calc(100vh - 72px);display:grid}.sidebar{border-right:1px solid var(--line);padding:42px 30px}.eyebrow{color:var(--muted);font:500 10px/1.2 var(--font-mono);letter-spacing:.12em;margin:0 0 9px}.sidebar label{margin-bottom:10px;font-size:14px;font-weight:700;display:block}.sidebar textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:104px;color:var(--ink);background:#fffefa;border-radius:10px;padding:12px;font-size:13px;line-height:1.5}.generate{background:var(--ink);width:100%;color:var(--paper);border:0;border-radius:9px;justify-content:space-between;margin-top:12px;padding:13px 15px;font-size:13px;font-weight:700;display:flex}.generate span{color:var(--sun);font-size:18px;line-height:12px}.suggestions p{color:var(--muted);font:500 10px var(--font-mono);letter-spacing:.1em}.suggestions button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;justify-content:space-between;width:100%;padding:11px 0;font-size:13px;display:flex}.suggestions button span{color:var(--muted)}.suggestions .active-suggestion{color:var(--coral);font-weight:700}.safety{border-top:1px solid var(--line);color:var(--muted);gap:10px;margin-top:42px;padding:13px 0;font-size:11px;line-height:1.5;display:flex}.safety span{color:var(--coral)}.safety p{margin:0}.safety strong{color:var(--ink)}.workspace{width:100%;max-width:1020px;margin:auto;padding:42px 5vw 70px}.lab-heading h1{font:600 clamp(32px, 4vw, 52px)/1 var(--font-display);letter-spacing:-2px;overflow-wrap:anywhere;margin:0}.lab-heading h1+p{max-width:480px;color:var(--muted);margin:12px 0 0;font-size:14px;line-height:1.6}.view-toggle{border:1px solid var(--line);border-radius:8px;flex:none;display:flex;overflow:hidden}.view-toggle button{background:0 0;border:0;padding:8px 12px;font-size:12px}.view-toggle .selected{background:var(--ink);color:var(--paper)}.sim-stage{border:1px solid var(--ink);background:var(--mint);border-radius:15px;min-height:310px;padding:26px 30px 29px;position:relative;overflow:hidden}.force-readout{font:11px var(--font-mono);background:#ffffff8c;border-radius:6px;align-items:baseline;gap:9px;padding:8px 11px;display:inline-flex}.force-readout strong{font-size:14px}.track{background:var(--ink);border-radius:5px;height:5px;position:absolute;bottom:84px;left:8%;right:8%}.tick{background:var(--ink);opacity:.28;width:1px;height:12px;position:absolute;top:-4px}.t1{left:20%}.t2{left:40%}.t3{left:60%}.t4{left:80%}.cart{border:2px solid var(--ink);background:var(--coral);border-radius:8px 8px 4px 4px;width:64px;height:37px;transition:left .35s;position:absolute;bottom:5px}.cart:before{content:"";border:2px solid var(--ink);border-bottom:0;border-radius:6px 6px 0 0;width:28px;height:14px;position:absolute;top:-13px;left:17px}.cart i{border:2px solid var(--ink);background:var(--paper);border-radius:50%;width:13px;height:13px;position:absolute;bottom:-10px}.cart i:first-child{left:7px}.cart i:nth-child(2){right:7px}.cart b{text-align:center;font:500 13px var(--font-display);padding-top:8px;display:block}.force-arrow{background:var(--ink);transform-origin:100%;height:2px;position:absolute;bottom:56px}.force-arrow:after{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;border-left:9px solid var(--ink);position:absolute;top:-4px;right:-1px}.force-arrow span{font:500 13px var(--font-mono);position:absolute;bottom:7px;left:3px}.equation{justify-items:end;display:grid;position:absolute;top:27px;right:27px}.equation span,.equation small{color:var(--muted);font:10px var(--font-mono)}.equation strong{font:600 28px var(--font-display);margin:4px 0}.controls{grid-template-columns:1fr 1fr auto;align-items:end;gap:18px;margin:19px 0 35px;display:grid}.control{border:1px solid var(--line);background:#fffefa;border-radius:11px;padding:17px}.control>div:first-child{justify-content:space-between;margin-bottom:13px;display:flex}.control label{font-size:12px;font-weight:700}.control strong{color:var(--coral);font:500 13px var(--font-mono)}.control input{width:100%;accent-color:var(--coral)}.range-labels{color:var(--muted);font:9px var(--font-mono);justify-content:space-between;display:flex}.record{border:1px solid var(--ink);background:var(--sun);white-space:nowrap;border-radius:9px;height:51px;padding:0 15px;font-size:12px;font-weight:700}.record span{margin-left:8px;font-size:18px}.worksheet-preview{background:var(--blue);border-radius:14px;justify-content:space-between;align-items:center;gap:25px;padding:25px 26px;display:flex}.worksheet-preview h2{font:600 25px var(--font-display);letter-spacing:-.7px;margin:0}.worksheet-preview p:not(.eyebrow){color:var(--muted);margin:7px 0 0;font-size:13px}.worksheet-preview button{border:0;border-bottom:1px solid var(--ink);white-space:nowrap;background:0 0;flex:none;padding:5px 0;font-size:12px;font-weight:700}.worksheet{border:1px solid var(--ink);background:#fffefa;border-radius:15px;padding:25px}.worksheet h2{font:600 31px var(--font-display);margin:0 0 22px}.worksheet ol{margin:0;padding:0;list-style:none}.worksheet li{border-top:1px solid var(--line);gap:13px;padding:17px 0;display:flex}.worksheet li>span{background:var(--sun);width:24px;height:24px;font:500 11px var(--font-mono);border-radius:50%;flex:none;place-items:center;display:grid}.worksheet li div{width:100%}.worksheet li strong{font-size:13px;line-height:1.5;display:block}.worksheet li textarea{border:0;border-bottom:1px dashed var(--line);background:0 0;width:100%;min-height:55px;margin-top:10px;padding:8px;font-size:12px}.trial-log{background:var(--mint);border-radius:9px;margin-top:15px;padding:16px;font-size:12px}.trial-log>div{justify-content:space-between;display:flex}.trial-log span{font:10px var(--font-mono)}.trial-log p{margin:9px 0 0}@media (max-width:768px){.layout{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:28px 5vw}.suggestions,.safety{display:none}.workspace{padding:31px 5vw 50px}.controls{grid-template-columns:1fr 1fr}.record{grid-column:span 2}.worksheet-preview{flex-direction:column;align-items:flex-start;gap:15px}}@media (max-width:480px){header{padding:0 5vw}.header-note{font-size:0}.lab-heading{flex-direction:column}.view-toggle{align-self:flex-start}.sim-stage{min-height:275px;padding:20px}.equation{top:20px;right:20px}.controls{grid-template-columns:1fr}.record{grid-column:auto}.worksheet-preview{padding:21px}.worksheet{padding:18px}}.profile-shell{background:var(--paper);min-height:100vh}.profile-nav{min-height:72px}.back-to-lab{color:var(--ink);text-underline-offset:5px;white-space:nowrap;font-size:12px;font-weight:700;text-decoration-thickness:1px}.profile-hero{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:flex-end;gap:40px;width:min(1160px,91.6vw);margin:0 auto;padding:64px 0 38px;display:flex}.profile-identity{align-items:center;gap:25px;min-width:0;display:flex}.profile-identity h1{min-width:0;font:600 clamp(40px, 6vw, 76px)/.98 var(--font-display);letter-spacing:-.045em;overflow-wrap:anywhere;margin:0}.profile-identity h1+p{color:var(--muted);margin:13px 0 0;font-size:14px}.profile-portrait{border:2px solid var(--ink);background:var(--blue);width:96px;height:96px;box-shadow:8px 8px 0 var(--sun);font:600 30px var(--font-display);border-radius:48% 52% 45% 55%;flex:none;place-items:center;display:grid;position:relative;overflow:visible}.profile-portrait img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.profile-portrait i{border:3px solid var(--paper);background:var(--green);border-radius:50%;width:22px;height:22px;position:absolute;bottom:-4px;right:-7px}.role-ticket{border:1px solid var(--ink);background:var(--sun);min-width:210px;color:var(--ink);border-radius:10px 10px 2px;flex:none;gap:7px;padding:17px 19px;display:grid;transform:rotate(1deg)}.role-ticket span{font:500 9px/1.2 var(--font-mono);letter-spacing:.08em}.role-ticket strong{font-size:14px}.profile-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:0;width:min(1160px,91.6vw);margin:0 auto;padding-bottom:80px;display:grid}.progress-panel,.account-panel{padding-top:48px}.progress-panel{border-right:1px solid var(--line);padding-right:6vw}.account-panel{padding-left:5vw}.section-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.progress-panel h2,.account-panel h2{font:600 clamp(28px, 3vw, 40px)/1.08 var(--font-display);letter-spacing:-.025em;overflow-wrap:anywhere;margin:0}.orbit-mark{border:1px solid var(--ink);width:40px;height:40px;color:var(--coral);box-shadow:inset 0 0 0 8px var(--mint);border-radius:50%;place-items:center;display:grid}.progress-list{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:repeat(3,minmax(0,1fr));margin:32px 0 45px;display:grid}.progress-list div{flex-direction:column-reverse;gap:12px;min-width:0;padding:22px 16px 20px 0;display:flex}.progress-list div+div{border-left:1px solid var(--line);padding-left:16px}.progress-list dt{color:var(--muted);font-size:11px;font-weight:600}.progress-list dd{font:600 39px/1 var(--font-display);margin:0}.recent-work h3{margin:0 0 13px;font-size:13px}.recent-work ul{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.recent-work li{border-bottom:1px solid var(--line)}.recent-work li a{min-height:66px;color:var(--ink);justify-content:space-between;align-items:center;text-decoration:none;display:flex}.recent-work li a>span:first-child{gap:5px;min-width:0;display:grid}.recent-work li strong{overflow-wrap:anywhere;font-size:13px}.recent-work li small{color:var(--muted);font:10px var(--font-mono)}.empty-labs{background:var(--mint);color:var(--ink);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:18px;display:grid}.empty-labs>span{font-size:25px}.empty-labs p{margin:0;font-size:12px}.empty-labs a{color:var(--ink);white-space:nowrap;font-size:11px;font-weight:700}.account-panel form{margin-top:29px}.account-panel label{margin:17px 0 7px;font-size:11px;font-weight:700;display:block}.account-panel input{border:1px solid var(--line);background:var(--paper-raised);width:100%;height:44px;color:var(--ink);border-radius:8px;outline:none;padding:0 13px;font-size:13px}.account-panel input:focus-visible{border-color:var(--focus);outline:2px solid var(--focus);outline-offset:2px}.account-panel input:disabled{opacity:.6;cursor:not-allowed}.field-status{min-height:1lh;color:var(--muted);margin:6px 0 0;font-size:10px;line-height:1.4}.field-status.error{color:var(--error)}.field-status.saved{color:var(--focus)}.save-profile{border:1px solid var(--ink);background:var(--ink);min-width:130px;min-height:44px;color:var(--paper);white-space:nowrap;border-radius:8px;margin-top:17px;padding:0 17px;font-size:11px;font-weight:700;transition:transform .18s,box-shadow .18s}.save-profile:focus-visible,.account-exit button:focus-visible,.back-to-lab:focus-visible,.recent-work a:focus-visible,.empty-labs a:focus-visible,.avatar:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.save-profile:active{transform:translateY(1px)}.save-profile:disabled{opacity:.5;cursor:not-allowed}.account-exit{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;margin-top:40px;padding-top:20px;display:flex}.account-exit div{gap:4px;display:grid}.account-exit strong{font-size:11px}.account-exit span{color:var(--muted);font-size:10px;line-height:1.4}.account-exit button{border:0;border-bottom:1px solid var(--ink);white-space:nowrap;background:0 0;min-width:72px;min-height:44px;padding:0;font-size:11px;font-weight:700}@media (hover:hover){.save-profile:not(:disabled):hover{box-shadow:0 8px 20px -12px var(--ink);transform:translateY(-2px)}.recent-work li a:hover,.back-to-lab:hover{color:var(--error)}.account-exit button:hover{border-bottom-color:var(--error);color:var(--error)}}@media (max-width:768px){.profile-hero{flex-direction:column;align-items:flex-start;padding-top:42px}.role-ticket{min-width:0}.profile-grid{grid-template-columns:minmax(0,1fr)}.progress-panel{border-right:0;padding-right:0}.account-panel{border-top:1px solid var(--ink);margin-top:44px;padding-left:0}}@media (max-width:480px){.profile-nav{padding-inline:5vw}.profile-hero{gap:29px;width:90vw;padding-top:34px}.profile-identity{flex-direction:column;align-items:flex-start;gap:24px}.profile-portrait{width:80px;height:80px}.profile-grid{width:90vw;padding-bottom:55px}.progress-panel,.account-panel{padding-top:35px}.section-heading{grid-template-columns:minmax(0,1fr) auto;display:grid}.progress-list{grid-template-columns:minmax(0,1fr)}.progress-list div{flex-direction:row;justify-content:space-between;align-items:center;padding:16px 0}.progress-list div+div{border-top:1px solid var(--line);border-left:0;padding-left:0}.progress-list dd{font-size:30px}.empty-labs{grid-template-columns:auto minmax(0,1fr)}.empty-labs a{grid-column:2;justify-self:start}.account-exit{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--color-ink:var(--ink);--color-paper:var(--paper);--color-raised:var(--paper-raised);--color-accent:var(--coral);--color-sun:var(--sun);--color-mint:var(--mint);--color-blue:var(--blue);--color-line:var(--line);--color-muted:var(--muted);--color-focus:var(--focus);--color-error:var(--error);--color-whitewash:#ffffff94;--shadow-soft:0 18px 40px -30px var(--color-ink)}html,body{overflow-x:clip}.site-header{background:var(--color-paper);min-height:68px;padding-inline:clamp(18px,4.2vw,64px)}.avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.sign-in-link{border-bottom:1px solid var(--color-ink);min-height:38px;color:var(--color-ink);white-space:nowrap;align-items:center;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.auth-checking{color:var(--color-muted);font:500 9px var(--font-mono);white-space:nowrap}.sign-in-link:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.workflow{grid-template-columns:minmax(0,1fr);min-height:calc(100vh - 68px);display:grid}.builder-panel{border-bottom:1px solid var(--color-line);background:var(--color-paper);padding:32px clamp(18px,5vw,34px)}.builder-intro{max-width:440px;padding-top:8px;position:relative}.step-number{border:1px solid var(--color-ink);width:32px;height:32px;color:var(--color-ink);font:500 10px var(--font-mono);border-radius:50%;place-items:center;margin-bottom:19px;display:inline-grid}.builder-intro h1,.empty-workbench h2,.lab-heading h2{overflow-wrap:anywhere;min-width:0;font-style:normal}.builder-intro h1{font:600 clamp(38px, 5vw, 58px)/.98 var(--font-display);letter-spacing:-.045em;margin:0}.builder-intro>p:last-child{max-width:39ch;color:var(--color-muted);margin:18px 0 30px;font-size:13px;line-height:1.65}.builder-panel>label{margin:17px 0 8px;font-size:11px;font-weight:700;display:block}.builder-panel textarea,.builder-panel select{border:1px solid var(--color-line);background:var(--color-raised);width:100%;color:var(--color-ink);border-radius:8px;outline:none}.builder-panel textarea{resize:vertical;min-height:110px;padding:13px;font-size:13px;line-height:1.55}.builder-panel select{height:44px;padding:0 12px;font-size:12px}.builder-panel textarea:focus-visible,.builder-panel select:focus-visible{border-color:var(--color-focus);outline:2px solid var(--color-focus);outline-offset:2px}.prompt-meta{color:var(--color-muted);font:9px var(--font-mono);justify-content:space-between;gap:16px;margin-top:7px;display:flex}.generate{white-space:nowrap;align-items:center;min-height:48px;transition:transform .18s,box-shadow .18s}.generate:focus-visible,.suggestions button:focus-visible,.view-toggle button:focus-visible,.trial-strip button:focus-visible,.evidence-summary button:focus-visible,.save-notice a:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.generate:active{transform:translateY(1px)}.generate:disabled{opacity:.58;cursor:wait}.suggestions{margin-top:31px}.suggestions button{gap:16px;line-height:1.35}.workspace{align-content:start;width:100%;min-width:0;max-width:1180px;min-height:calc(100vh - 68px);margin:0 auto;padding:34px clamp(18px,5vw,72px) 64px;display:grid}.empty-workbench{text-align:center;place-self:center;max-width:600px;padding-block:42px}.orbit{border:1px solid var(--color-ink);background:var(--color-mint);border-radius:50%;place-items:center;width:112px;height:112px;margin:0 auto 32px;display:grid;position:relative}.orbit span{background:var(--color-ink);width:45px;height:45px;color:var(--color-sun);font:600 23px var(--font-display);border-radius:50%;place-items:center;display:grid}.orbit i{background:var(--color-accent);border-radius:50%;width:9px;height:9px;position:absolute}.orbit i:first-of-type{top:-4px}.orbit i:nth-of-type(2){background:var(--color-sun);bottom:14px;right:3px}.orbit i:last-child{background:var(--color-blue);bottom:7px;left:5px}.empty-workbench h2{font:600 clamp(34px, 5vw, 56px)/1 var(--font-display);letter-spacing:-.04em;margin:0}.empty-workbench>p:not(.eyebrow):not(.form-notice){max-width:52ch;color:var(--color-muted);margin:17px auto 30px;font-size:14px;line-height:1.65}.empty-workbench ol{border-block:1px solid var(--color-line);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}.empty-workbench li{gap:8px;padding:17px 10px;font-size:11px;font-weight:700;display:grid}.empty-workbench li+li{border-left:1px solid var(--color-line)}.empty-workbench li span{color:var(--color-accent);font:500 10px var(--font-mono)}.form-notice{color:var(--color-error);margin-top:18px;font-size:12px}.lab-heading{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:18px;display:flex}.lab-kicker{align-items:center;gap:11px;display:flex}.lab-kicker .step-number{width:26px;height:26px;margin:0}.lab-kicker .eyebrow{margin:0}.lab-heading h2{font:600 clamp(34px, 5vw, 56px)/1 var(--font-display);letter-spacing:-.045em;margin:12px 0 0}.lab-heading h2+p{max-width:570px;color:var(--color-muted);margin:11px 0 0;font-size:13px;line-height:1.55}.view-toggle button{white-space:nowrap;min-height:38px}.save-notice{border:1px solid var(--color-line);background:var(--color-raised);min-height:40px;color:var(--color-muted);border-radius:8px;align-items:center;gap:9px;margin-bottom:14px;padding:9px 12px;font-size:10px;display:flex}.save-notice>span{background:var(--color-mint);width:20px;height:20px;color:var(--color-ink);font:600 10px var(--font-mono);border-radius:50%;flex:none;place-items:center;display:grid}.save-notice a{color:var(--color-ink);white-space:nowrap;text-underline-offset:3px;margin-left:auto;font-weight:700}.sim-stage{min-height:330px;box-shadow:var(--shadow-soft)}.stage-tag{background:var(--color-whitewash);font:500 9px var(--font-mono);letter-spacing:.08em;border-radius:5px;padding:7px 9px;display:inline-flex}.circuit-stage{background:var(--color-blue);align-items:center;display:grid}.circuit-loop{border:3px solid var(--color-ink);border-radius:48%;justify-content:space-between;align-items:center;width:min(540px,78%);height:150px;margin:25px auto 0;display:flex;position:relative}.battery,.resistor{background:var(--color-blue);font:500 17px var(--font-mono);padding:6px}.battery{margin-left:-14px}.resistor{margin-right:-25px}.bulb{border:2px solid var(--color-ink);background:var(--color-sun);width:64px;height:64px;color:var(--color-sun);box-shadow:0 0 36px var(--color-sun);border-radius:50%;place-items:center;font-size:28px;transition:opacity .25s;display:grid}.controls{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.control{min-width:0;box-shadow:var(--shadow-soft)}.trial-strip{border-bottom:1px solid var(--color-ink);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;margin-top:-16px;padding:18px 0 28px;display:grid}.trial-strip .eyebrow{margin-bottom:5px}.trial-strip strong{font-size:12px}.trial-chips{flex-wrap:wrap;gap:6px;display:flex}.trial-chips span{background:var(--color-mint);font:9px var(--font-mono);white-space:nowrap;border-radius:999px;padding:7px 9px}.trial-strip button,.evidence-summary button{border:0;border-bottom:1px solid var(--color-ink);white-space:nowrap;background:0 0;padding:5px 0;font-size:11px;font-weight:700}.worksheet{box-shadow:var(--shadow-soft);padding:clamp(22px,4vw,42px)}.worksheet h3{font:600 clamp(31px, 4vw, 46px)/1 var(--font-display);letter-spacing:-.04em;margin:0}.worksheet-lede{color:var(--color-muted);margin:12px 0 30px;font-size:13px}.worksheet li label{font-size:13px;font-weight:700;line-height:1.5;display:block}.worksheet li textarea{min-height:72px}.worksheet-actions{align-items:center;gap:14px;margin-top:22px;display:flex}.save-worksheet{border:1px solid var(--color-ink);background:var(--color-ink);min-height:44px;color:var(--color-paper);white-space:nowrap;border-radius:8px;padding:0 16px;font-size:11px;font-weight:700}.save-worksheet.saved{background:var(--color-mint);color:var(--color-ink)}.save-worksheet.error{background:var(--color-sun);color:var(--color-ink)}.save-worksheet:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.save-worksheet:active{transform:translateY(1px)}.save-worksheet:disabled{opacity:.55;cursor:not-allowed}.worksheet-actions>span{min-height:1lh;color:var(--color-muted);font-size:10px;line-height:1.4}.evidence-summary{background:var(--color-mint);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:20px;padding:18px;display:grid}.evidence-summary>span{font:600 34px var(--font-display)}.evidence-summary p{color:var(--color-muted);margin:0;font-size:10px;line-height:1.5}.evidence-summary strong{color:var(--color-ink)}@media (hover:hover) and (pointer:fine){.generate:not(:disabled):hover{box-shadow:0 10px 22px -15px var(--color-ink);transform:translateY(-2px)}.suggestions button:hover{color:var(--color-accent)}.trial-strip button:hover,.evidence-summary button:hover,.save-notice a:hover{color:var(--color-error)}.save-worksheet:not(:disabled):hover{background:var(--color-focus)}.sign-in-link:hover{color:var(--color-error);border-bottom-color:var(--color-error)}}@media (min-width:60rem){.workflow{grid-template-columns:360px minmax(0,1fr)}.builder-panel{border-right:1px solid var(--color-line);border-bottom:0;align-self:start;min-height:calc(100vh - 68px);padding-top:43px;position:sticky;top:0}}@media (max-width:48rem){.header-note{font-size:0}.suggestions{display:block}.lab-heading{flex-direction:column;align-items:flex-start}.controls{grid-template-columns:minmax(0,1fr)}.record{grid-column:auto}.trial-strip{grid-template-columns:minmax(0,1fr)}.trial-strip button{justify-self:start}.worksheet-actions{flex-direction:column;align-items:flex-start}}@media (max-width:30rem){.empty-workbench ol{grid-template-columns:minmax(0,1fr)}.empty-workbench li{text-align:left;grid-template-columns:auto minmax(0,1fr)}.empty-workbench li+li{border-top:1px solid var(--color-line);border-left:0}.circuit-loop{width:86%;height:125px}.equation strong{font-size:22px}.evidence-summary{grid-template-columns:auto minmax(0,1fr)}.evidence-summary button{grid-column:2;justify-self:start}}@media (pointer:coarse){button,select{min-height:44px}}.lab-catalog{margin-top:34px}.lab-catalog>.eyebrow{margin-bottom:10px}.lab-catalog details{border-top:1px solid var(--color-line)}.lab-catalog details:last-child{border-bottom:1px solid var(--color-line)}.lab-catalog summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:42px;font-size:12px;font-weight:700;list-style:none;display:flex}.lab-catalog summary::-webkit-details-marker{display:none}.lab-catalog summary span{background:var(--color-mint);width:22px;height:22px;font:500 9px var(--font-mono);border-radius:50%;place-items:center;display:grid}.lab-catalog details>div{padding-bottom:8px;display:grid}.lab-catalog button{width:100%;color:var(--color-muted);text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:8px 0;font-size:10px;line-height:1.4;display:grid}.lab-catalog button span{color:var(--color-accent)}.model-stage{background:var(--color-mint)}.model-particles,.model-freezing,.model-cooling{background:var(--color-blue)}.model-reaction,.model-corrosion,.model-fermentation{background:var(--color-sun)}.model-plant,.model-germination,.model-ground-cover{background:var(--color-mint)}.model-structure,.model-rocket,.model-newton-first,.model-newton-second{background:var(--color-blue)}.model-newton-third,.model-generic{background:var(--color-sun)}.model-generic .model-object{color:var(--color-ink);border-radius:8px}.model-scene{border-bottom:2px solid var(--color-ink);position:absolute;inset:58px 7% 42px;overflow:hidden}.model-grid{opacity:.18;background:repeating-linear-gradient(0deg,transparent 0,transparent 34px,var(--color-ink) 35px),repeating-linear-gradient(90deg,transparent 0,transparent 54px,var(--color-ink) 55px);position:absolute;inset:0}.model-object{left:calc(5% + var(--input) * 70%);bottom:calc(20px + var(--result) * 90px);border:2px solid var(--color-ink);background:var(--color-raised);width:68px;height:68px;color:var(--color-accent);box-shadow:7px 7px 0 var(--color-ink);font:600 30px var(--font-display);transform:rotate(calc((var(--input) - .5) * 12deg));border-radius:48% 52% 44% 56%;place-items:center;transition:left .28s,bottom .28s,transform .28s;display:grid;position:absolute}.model-pendulum .model-object{left:calc(16% + var(--input) * 55%);top:calc(14px + var(--input) * 48px);box-shadow:0 -70px 0 -32px var(--color-ink);border-radius:50%;bottom:auto}.model-ramp .model-scene:after,.model-erosion .model-scene:after{content:"";height:calc(35px + var(--input) * 100px);border-top:3px solid var(--color-ink);background:linear-gradient(170deg,transparent 0 49%,var(--color-whitewash) 50%);transform:skewY(calc(var(--input) * -10deg));transform-origin:100% 100%;position:absolute;bottom:0;left:8%;right:6%}.model-ramp .model-object,.model-erosion .model-object{z-index:1}.model-heart .model-object{color:var(--color-error);transform:scale(calc(.85 + var(--result) * .35))}.model-rocket .model-object{transform:translateY(calc(var(--result) * -20px)) rotate(calc((.5 - var(--input)) * 8deg))}.model-structure .model-object{clip-path:polygon(50% 0,100% 100%,0 100%);border-radius:4px;width:110px}.model-newton-first .model-object,.model-newton-second .model-object{border-radius:8px;bottom:24px;transform:none}.model-newton-second .model-object{left:calc(8% + var(--result) * 62%);font:700 18px var(--font-mono)}.model-newton-third .model-object{transform:scale(calc(.82 + var(--input) * .3));border-radius:50%;bottom:34px;left:calc(50% - 34px)}.model-newton-third .model-object:before,.model-newton-third .model-object:after{color:var(--color-accent);font:700 22px var(--font-mono);position:absolute;top:19px}.model-newton-third .model-object:before{content:"A  ←";right:78px}.model-newton-third .model-object:after{content:"→  B";left:78px}.model-trace{align-items:flex-end;gap:7px;height:95px;display:flex;position:absolute;bottom:18px;right:5%}.model-trace i{width:11px;height:calc(12px + var(--result) * 72px);background:var(--color-accent);opacity:.35}.model-trace i:nth-child(2){height:calc(20px + var(--result) * 48px)}.model-trace i:nth-child(3){height:calc(10px + var(--input) * 78px)}.model-trace i:nth-child(4){height:calc(25px + var(--result) * 58px)}.model-trace i:nth-child(5){height:calc(15px + var(--input) * 55px)}.model-axis{color:var(--color-muted);font:500 8px var(--font-mono);text-transform:uppercase;justify-content:space-between;display:flex;position:absolute;bottom:3px;left:0;right:0}.model-stage .equation small{text-align:right;max-width:250px}.custom-model-notice{border:1px solid var(--color-ink);background:var(--color-raised);box-shadow:var(--shadow-soft);border-radius:9px;grid-template-columns:auto minmax(0,1fr);gap:13px;margin-top:14px;padding:14px 16px;display:grid}.custom-model-notice>span{background:var(--color-sun);width:30px;height:30px;font:600 15px var(--font-display);border-radius:50%;place-items:center;display:grid}.custom-model-notice strong{margin-bottom:3px;font-size:11px;display:block}.custom-model-notice p{color:var(--color-muted);margin:0;font-size:10px;line-height:1.5}@media (hover:hover) and (pointer:fine){.lab-catalog button:hover{color:var(--color-accent)}}@media (max-width:48rem){.lab-catalog{max-height:none;overflow:visible}.lab-catalog summary{min-height:48px}.lab-catalog button{align-items:center;min-height:44px}.model-scene{inset-inline:5%}.model-stage .equation small{max-width:180px}}@media (max-width:30rem){.model-object{width:54px;height:54px;font-size:24px}.model-stage .equation{justify-items:start;margin-top:12px;position:relative;top:auto;right:auto}.model-stage .equation small{text-align:left;max-width:62vw}.model-scene{top:94px}.lab-catalog button{font-size:11px}}

