.lab-site{--paper:#101713;--ink:#e3eddf;--muted:#a0b19f;--line:#2c3b2f;--green:#d4eaa8;--accent:#e6a87b;--soft:#19271c;--card:#17211a;color:var(--ink);background:var(--paper)}.lab-site a:hover{color:#d4eaa8}.lab-site .btn{background:#d4eaa8;color:#182519;border-color:#d4eaa8}.lab-site .btn:hover{background:#e4f5c4;border-color:#e4f5c4;color:#142017}.lab-site .btn.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.lab-site .btn.secondary:hover{background:#223023;border-color:#708461}.lab-site .nav a[aria-current=page]{color:#d4eaa8}.lab-site .site-header{background:#101713}.lab-site .brand small{font-size:.53rem}.lab-site .brand{font-size:.95rem}.lab-main{padding-top:42px}.lab-page-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:35px}.lab-page-heading h1{font-size:clamp(2rem,3.4vw,3.2rem);margin-bottom:15px;letter-spacing:-.05em}.lab-page-heading p{font-size:.9rem;color:var(--muted);margin:0;max-width:760px}.lab-page-heading .eyebrow{font-size:.61rem;margin-bottom:17px}.text-link{display:block;font-size:.75rem;color:var(--green);text-decoration:none;line-height:1.6}.lab-page-heading>.text-link{white-space:nowrap;padding-bottom:5px}.experiment-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);margin:20px 0 0;gap:14px}.experiment-tabs a{padding:17px 15px;display:flex;gap:12px;align-items:center;text-decoration:none;border-bottom:2px solid transparent;font-size:.8rem;color:var(--muted)}.experiment-tabs a.active{color:#d4eaa8;border-bottom-color:#d4eaa8;background:#1b271c}.tab-number{font:.64rem var(--mono);color:#829378}.experiment-tabs small{font:.51rem var(--mono);text-transform:uppercase;margin-left:auto;border:1px solid var(--line);padding:3px 5px;border-radius:3px;letter-spacing:.03em}.lab-toolbar{display:flex;align-items:center;gap:13px;margin:24px 0}.backend-choice{display:flex;align-items:center;gap:13px;flex:1}.backend-choice label{font:.6rem var(--mono);color:var(--muted)}.lab-site select,.lab-site input:not([type=checkbox]):not([type=range]),.lab-site textarea{color:#e3eddf;background:#0f1811;border:1px solid #3b4a37;border-radius:3px;padding:9px 11px;width:100%;font-size:.76rem;line-height:1.6;min-width:0}.lab-site select{appearance:auto;padding-right:8px}.lab-site select option{background:#18261b;color:#e3eddf}.backend-choice select{max-width:230px}.engine-state{display:flex;gap:8px;align-items:center;color:var(--muted);font:.61rem var(--mono);margin-right:8px;max-width:240px}.status-dot{width:6px;height:6px;border-radius:50%;background:#778568;display:inline-block;flex-shrink:0}.status-dot.ready{background:#d4eaa8;box-shadow:0 0 0 3px #d4eaa811}.status-dot.failed{background:#e89977}.lab-toolbar .btn{font-size:.73rem;padding:10px 15px}.lab-workbench{display:grid;grid-template-columns:minmax(0,1fr) 296px;border:1px solid var(--line);border-radius:6px;background:#141e17;overflow:hidden}.lab-display{min-width:0}.display-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:21px 25px;border-bottom:1px solid var(--line)}.display-header h2{font-size:1.2rem;letter-spacing:-.03em;margin:7px 0 0}.tiny{font-size:.66rem;color:var(--muted);line-height:1.65}.display-header .tiny{font-size:.53rem;letter-spacing:.07em}.lab-site .tag{font-size:.51rem;color:#b6c8a4;border-color:#45573b;white-space:nowrap;padding:5px 7px}.canvas-frame{position:relative;background:#101a12;border-bottom:1px solid var(--line)}#state-canvas{display:block;width:100%;height:auto;aspect-ratio:840/490;max-height:510px}.canvas-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;background:radial-gradient(ellipse at center,#203423dd,#111c14ed);text-align:center;padding:30px}.canvas-placeholder[hidden]{display:none}.canvas-placeholder strong{font-size:1rem;font-weight:500}.canvas-placeholder p{color:var(--muted);font-size:.77rem;line-height:1.8;margin:0}.placeholder-symbol{color:#d4eaa8;font-size:2.6rem;font-weight:300}.lab-controls{border-left:1px solid var(--line);background:#19231b;padding:3px 20px 5px}.control-group{padding:20px 0;border-bottom:1px solid var(--line)}.control-group.last{border-bottom:0}.control-group h3{font:.6rem var(--mono);text-transform:uppercase;color:#d6e3c8;letter-spacing:.07em;margin:0 0 17px}.control-group label{font-size:.69rem;color:#a9b99f;display:block;margin-bottom:12px}.control-group input,.control-group select,.control-group textarea{margin-top:5px}.control-group textarea{resize:vertical;min-height:75px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.control-buttons{display:flex;gap:8px;align-items:center}.control-buttons .btn{flex:1;font-size:.67rem;padding:10px 9px}.full{width:100%}.control-group>.btn{font-size:.69rem;padding:10px}.control-group .tiny{font-size:.62rem;margin:11px 0 0}.control-group label.check{display:flex;align-items:center;gap:9px;margin:14px 0 0;font-size:.64rem;line-height:1.5}.control-group label.check input{margin:0;accent-color:#d4eaa8}.control-group input[type=range]{display:block;width:100%;accent-color:#c0d697;padding:0;margin-top:12px}.control-group output{float:right;font-family:var(--mono);font-size:.66rem;color:#d4eaa8}.answer-bar{padding:18px 25px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);min-height:91px}.answer-bar strong{display:block;font:.97rem var(--mono);letter-spacing:.13em;margin-top:6px}.answer-bar .tiny{font-size:.52rem;letter-spacing:.06em}.answer-status{font:.58rem var(--mono);color:#c4d9aa;max-width:120px;text-align:right}.display-metrics{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);padding:17px 7px}.display-metrics>div{padding:0 17px;border-right:1px solid var(--line)}.display-metrics>div:last-child{border:0}.display-metrics span{font:.54rem var(--mono);display:block;color:#96aa8e;margin-bottom:8px}.display-metrics strong{font:.82rem var(--mono);font-weight:400;color:#e4efda}.display-status{padding:16px 25px;display:flex;align-items:start;gap:10px}.display-status .status-dot{margin-top:5px}.display-status p{font:.61rem/1.7 var(--mono);color:#a6b799;margin:0;overflow-wrap:anywhere}.lab-under{display:flex;justify-content:space-between;gap:20px;color:#84967d;font:.57rem/1.8 var(--mono);padding:13px 2px}.lab-under span{overflow-wrap:anywhere;min-width:0}.lab-under span:last-child{flex-shrink:0}.error-box{padding:16px 20px;border:1px solid #915f40;background:#392719;color:#f3d2b9;border-radius:4px;font:.75rem/1.8 var(--sans);margin-bottom:20px}.error-box[hidden]{display:none}.lab-explanation{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;padding:48px 0;border-bottom:1px solid var(--line)}.lab-explanation .eyebrow{margin-bottom:18px;font-size:.57rem}.lab-explanation h2{font-size:2rem;line-height:1.15}.lab-explanation p{font-size:.84rem;color:var(--muted);line-height:1.85}.fact-pills{display:flex;gap:8px;flex-wrap:wrap}.fact-pills span{font:.62rem var(--mono);color:#bacdad;border:1px solid var(--line);padding:6px 9px;border-radius:3px}.lab-callout{background:#1b281d;border:1px solid #394a32;border-radius:4px;padding:24px;align-self:start}.lab-callout>span{font-size:.57rem;letter-spacing:.09em;color:#d5d3a6}.lab-callout p{margin:13px 0 17px;font-size:.78rem;color:#b1c0a6}.lab-callout a{margin:8px 0 0;font-size:.7rem}.record-section{padding:33px 0 15px}.record-section h2{font-size:1.2rem;margin-bottom:12px}.record-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.record{background:#19261b;border:1px solid var(--line);border-radius:4px;padding:13px 15px}.record strong{font:.77rem var(--mono);letter-spacing:.1em;color:#d9e8c5;display:block;margin-top:7px}.record span{font:.59rem var(--mono);color:#9eb48e}.record.selected{border-color:#9cb778}.source-view{border:1px solid var(--line);border-radius:4px;padding:20px 23px;margin:26px 0}.source-view summary{display:flex;justify-content:space-between;font:.72rem var(--mono);color:#c7d8b6;cursor:pointer}.source-view p{font-size:.74rem;color:var(--muted);margin:17px 0 8px}.source-view pre{max-height:480px;overflow:auto;background:#0c140e;border:1px solid var(--line);padding:22px;font:.65rem/1.9 var(--mono);color:#c2d0b7;tab-size:4}.lab-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:20px 0}.lab-notes h3{font-size:.9rem;font-weight:500;line-height:1.4;letter-spacing:-.01em}.lab-notes p{font-size:.75rem;color:var(--muted);line-height:1.8}.text-output{background:#131d15;padding:20px 25px;border-bottom:1px solid var(--line);min-height:125px}.text-output .tiny{font-size:.53rem;letter-spacing:.07em}.text-output pre{font:1.02rem/1.7 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0 17px;color:#d5e9b5;min-height:50px;max-height:210px;overflow:auto}.next-bytes{display:flex;flex-wrap:wrap;gap:8px}.next-bytes span{font:.56rem var(--mono);background:#213021;border:1px solid #36492e;border-radius:3px;padding:4px 7px;color:#b7caa6}.life-summary{display:flex;justify-content:space-between;padding:15px 25px;font:.63rem var(--mono);color:#a6b999;border-bottom:1px solid var(--line)}.lab-site .article-section p{color:#b3c2ad}.lab-site .article-body pre{background:#19251b}.lab-site .article-body code{color:#d0e0bd}.lab-site .sources{background:#18251b}.lab-site .formula{background:#1b2d1d}.lab-site .footer-top p{color:#96a991}.lab-site .mini-terminal{background:#17231a}
@media(min-width:1450px){.lab-workbench{grid-template-columns:minmax(0,1fr) 320px}.lab-controls{padding-left:24px;padding-right:24px}.control-group{padding-top:21px;padding-bottom:21px}}
@media(max-width:1100px){.lab-toolbar{flex-wrap:wrap}.backend-choice{flex:1 1 55%}.engine-state{margin-right:0}.lab-workbench{grid-template-columns:minmax(0,1fr) 270px}.lab-controls{padding:2px 16px}.experiment-tabs{gap:6px}.experiment-tabs a{gap:8px;font-size:.73rem;padding-left:10px;padding-right:10px}.experiment-tabs small{display:none}.display-header{padding:19px 20px}.display-header .tag{font-size:.46rem}.display-metrics>div{padding:0 12px}.answer-bar{padding:16px 20px;gap:12px;flex-wrap:wrap}.answer-bar strong{font-size:.88rem}.lab-explanation{gap:35px}.lab-page-heading>.text-link{display:none}}
@media(max-width:850px){.lab-workbench{grid-template-columns:1fr}.lab-controls{border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;padding:4px 20px;gap:0 25px}.control-group{border-bottom:1px solid var(--line)}.control-group.last{border-bottom:1px solid var(--line);margin-bottom:15px}.canvas-frame #state-canvas{max-height:none}.lab-under{flex-direction:column;gap:2px}.lab-explanation{grid-template-columns:1fr;gap:20px;padding-top:35px}.record-grid{grid-template-columns:repeat(4,1fr)}.lab-notes{gap:23px}.lab-main{padding-top:30px}.lab-page-heading{margin-bottom:28px}.lab-toolbar{gap:12px}.backend-choice label{font-size:.57rem}.lab-site .nav{gap:15px}.lab-site .nav>a{font-size:.7rem}}
@media(max-width:560px){.lab-site .brand{font-size:.83rem;gap:9px}.lab-site .brand-icon{width:25px;height:25px}.lab-site .brand small{font-size:.48rem}.lab-page-heading h1{font-size:2.4rem;line-height:1.09}.lab-page-heading p{font-size:.84rem}.lab-page-heading .eyebrow{font-size:.52rem}.experiment-tabs{grid-template-columns:1fr;margin-top:24px;gap:0;border:1px solid var(--line);border-radius:4px;overflow:hidden}.experiment-tabs a{padding:12px 14px;border-bottom:1px solid var(--line);font-size:.75rem}.experiment-tabs a:last-child{border-bottom:0}.experiment-tabs a.active{border-bottom-color:var(--line);border-left:3px solid #d4eaa8;padding-left:11px}.experiment-tabs small{display:inline-block}.lab-toolbar{margin:19px 0}.backend-choice{flex:1 1 100%;gap:12px;justify-content:space-between}.backend-choice select{width:67%;font-size:.67rem;max-width:none}.engine-state{flex:1 1 100%;font-size:.58rem;max-width:none;padding:3px 0}.lab-toolbar .btn{font-size:.68rem;flex:1}.display-header{padding:17px;align-items:start}.display-header h2{font-size:1.04rem}.display-header .tiny{font-size:.48rem;line-height:1.6;display:block;max-width:200px}.display-header .tag{font-size:.43rem;white-space:normal;max-width:94px;text-align:center;line-height:1.7}.canvas-placeholder{padding:15px;gap:7px}.canvas-placeholder strong{font-size:.83rem}.canvas-placeholder p{font-size:.65rem}.placeholder-symbol{font-size:1.7rem}.answer-bar{padding:15px 17px;gap:12px}.answer-bar strong{font-size:.79rem;letter-spacing:.09em}.answer-status{max-width:none;font-size:.56rem}.display-metrics{grid-template-columns:1fr 1fr;padding:0}.display-metrics>div{padding:15px 17px;border-bottom:1px solid var(--line)}.display-metrics>div:nth-child(2){border-right:0}.display-metrics>div:nth-child(3),.display-metrics>div:nth-child(4){border-bottom:0}.display-status{padding:14px 17px}.display-status p{font-size:.57rem}.lab-controls{display:block;padding:0 17px}.control-group{padding:20px 0}.control-group h3{font-size:.61rem}.control-group label{font-size:.73rem}.control-group .btn{font-size:.7rem}.control-group.last{border-bottom:0;margin-bottom:0}.record-grid{grid-template-columns:1fr 1fr}.record{padding:12px}.lab-explanation h2{font-size:1.8rem}.lab-notes{grid-template-columns:1fr;gap:15px}.source-view{padding:18px}.source-view summary{font-size:.64rem;line-height:1.6;gap:10px}.text-output{padding:17px}.text-output pre{font-size:.83rem}.life-summary{padding:13px 17px;font-size:.51rem;gap:10px}.lab-site .nav>a{font-size:.9rem}}
/* LATTICE Image Micro — additive styles, existing experiments unchanged. */
.image-lab{padding-top:42px}.image-nav{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:14px}.image-nav a{font-size:.8rem;text-decoration:none;padding:9px 14px}.image-nav a[aria-current]{color:var(--green);background:var(--soft)}.image-notice{font-size:.8rem;line-height:1.8;border:1px solid #4d5735;background:#202b1d;padding:16px 20px;margin:22px 0}.image-notice strong{color:#d4eaa8}.image-workbench{display:grid;grid-template-columns:minmax(0,1fr) 300px;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#141e17}.image-display{min-width:0}.image-display .tag{white-space:normal;text-align:right;max-width:160px}.image-canvases{display:grid;grid-template-columns:minmax(180px,1.65fr) minmax(120px,1fr);gap:32px;padding:28px;background:#0e1611;align-items:start}.image-canvases figure{margin:0;min-width:0}.image-canvases canvas{width:100%;height:auto;aspect-ratio:1;display:block;border:1px solid #334632;background:#070b08;image-rendering:pixelated}.image-canvases figcaption{font:.65rem/1.8 var(--mono);color:var(--muted);display:flex;justify-content:space-between;margin-top:10px;gap:12px}.image-hidden-panel p{font-size:.75rem;line-height:1.8;color:var(--muted)}.image-hidden-panel canvas{max-width:192px}.image-spaced{margin-top:9px}.image-timeline{display:flex;min-height:92px;gap:12px;padding:14px 25px;overflow-x:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.image-timeline figure{margin:0;min-width:52px}.image-timeline canvas{width:52px;height:52px;image-rendering:pixelated;display:block}.image-timeline figcaption{font:.52rem var(--mono);color:var(--muted);margin-top:4px}.image-training{padding:45px 0 20px;max-width:860px}.image-training p{font-size:.9rem;color:var(--muted);line-height:1.85}.image-training pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:20px;background:#18241b;border:1px solid var(--line);font:.76rem/1.8 var(--mono)}.image-lab button:disabled{opacity:.42;cursor:not-allowed}.image-lab input[type=file]{font-size:.65rem;padding:6px;overflow:hidden}.image-lab .lab-controls code{overflow-wrap:anywhere}.image-lab .source-view pre{white-space:pre;max-width:100%}
@media(max-width:1000px){.image-workbench{grid-template-columns:minmax(0,1fr) 250px}.image-canvases{gap:18px;padding:20px;grid-template-columns:minmax(140px,1.5fr) minmax(90px,1fr)}.image-lab .display-metrics>div{padding:0 10px}.image-lab .display-header{padding:16px}.image-hidden-panel p{font-size:.66rem}}
@media(max-width:720px){.image-workbench{grid-template-columns:1fr}.image-lab .lab-controls{border-left:0;border-top:1px solid var(--line);padding:0 20px}.image-canvases{grid-template-columns:minmax(140px,1.4fr) minmax(95px,1fr);padding:18px;gap:16px}.image-lab .display-header{align-items:start}.image-lab .display-header h2{font-size:1rem}.image-lab .display-metrics{grid-template-columns:repeat(2,1fr);gap:18px}.image-lab .display-metrics>div:nth-child(2){border-right:0}.image-lab .lab-toolbar{gap:12px}.image-lab .backend-choice{flex-basis:100%}.image-lab .engine-state{width:100%;max-width:100%}.image-lab .lab-under{flex-direction:column;gap:5px}.image-nav{gap:0}.image-nav a{font-size:.7rem;padding:9px}.image-lab .lab-explanation{grid-template-columns:1fr;gap:25px}.image-hidden-panel p{font-size:.64rem}.image-training pre{font-size:.68rem}.image-notice{font-size:.75rem}}
