:root{font-family:Arial,Helvetica,sans-serif;color:#252d28;background:#e9e8dd;font-synthesis:none;--ink:#25332b;--lime:#d5fa67;--line:#c8ccbf}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}button{border:1px solid var(--ink);background:transparent;color:var(--ink);padding:10px 13px;border-radius:4px;transition:background .18s,transform .18s}button:hover:not(:disabled){background:var(--lime);transform:translateY(-1px)}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #567d14;outline-offset:3px}main{min-height:100svh;max-width:2200px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:36px 44px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 75% 20%,#d9e2b5,transparent 60%)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700}h1{font-size:clamp(40px,4.2vw,72px);font-weight:500;letter-spacing:-3px;line-height:.95;margin:20px 0}h1 em{font-family:Georgia,serif;font-weight:400}h1 span{font-size:13px;vertical-align:top;letter-spacing:0}header p{font-size:14px}.header-tools{max-width:320px;display:flex;flex-wrap:wrap;gap:8px}.local{width:100%;font-size:10px;letter-spacing:1px;margin-bottom:14px;color:#416334}.workspace{display:grid;grid-template-columns:250px minmax(0,1fr) 255px}aside{padding:24px;border-right:1px solid var(--line)}aside.right{border-right:0;border-left:1px solid var(--line)}h2{font-size:10px;letter-spacing:1.4px;font-weight:700;margin:0 0 23px}h2 b{display:inline-block;border:1px solid #8b9988;padding:5px;margin-right:6px;font-weight:400}label{display:block;font-size:11px;margin:16px 0;color:#52604f}input,select,textarea{display:block;background:#f7f7ef;border:1px solid #b9c2b2;border-radius:3px;padding:10px;width:100%;margin-top:7px;color:var(--ink);min-width:0}input[type=file]{font-size:10px;padding:7px}input::file-selector-button{font:inherit;padding:5px;border:0;background:var(--lime);margin-bottom:6px}small,.note{font-size:11px;line-height:1.6;color:#626d60}.import{padding:2px 0 18px;border-bottom:1px solid var(--line)}details{margin:16px 0;font-size:12px;line-height:1.6}summary{font-weight:600}aside button{width:100%;margin:5px 0;text-align:left}aside h2:not(:first-child){margin-top:30px}article{padding:28px;min-width:0}.study-title{font-family:Georgia,serif;font-size:28px;white-space:pre-wrap;overflow-wrap:anywhere}.stats{display:flex;gap:32px;margin:25px 0}.stats div{display:flex;flex-direction:column;gap:6px}.stats strong{font-weight:400;font-size:27px}.stats span{font-size:8px;letter-spacing:1px;color:#697462}.hero-wave{background:var(--ink);color:#e5f6bf;padding:22px;border-radius:5px}.hero-wave>span{font-size:9px;letter-spacing:1.5px}.hero-wave svg{width:100%;margin:18px 0;overflow:visible}.hero-wave polyline{stroke:var(--lime);stroke-width:1.5;fill:none}.baseline{stroke:#768469;stroke-width:.5}.row{display:flex;flex-wrap:wrap;gap:8px}.row button{border-color:#8ca47b;color:#e5f6bf;font-size:11px}.row button:hover:not(:disabled){color:var(--ink)}.family-label{margin:30px 0 15px}.generations{display:grid;gap:8px}.generation{display:grid;grid-template-columns:32px minmax(0,1fr) 110px;align-items:center;gap:14px;text-align:left;border:1px solid var(--line);padding:14px;background:#f1f1e8}.generation.selected{background:#e1f0bd;border-color:#657b48;box-shadow:inset 3px 0 #577438}.generation-number{font-size:20px;font-family:Georgia,serif}.grain-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(4px,1fr));gap:2px;align-items:center;max-height:80px;overflow:hidden}.grain-grid i{height:13px;border-radius:1px}.retained{background:#486337}.lost{background:#d3d9c8}.generation-meta{display:flex;flex-direction:column;gap:4px;text-align:right}.generation-meta b{font-size:19px;font-weight:500}.generation-meta span{font-size:9px;color:#6b7562}.proof{background:#d7e5c5;border-top:3px solid #577438;padding:18px;margin:0 0 25px}.proof span{font-size:8px;letter-spacing:1px}.proof strong{display:block;margin:14px 0;font-size:18px;letter-spacing:1px}.proof p{font-size:11px;line-height:1.6}dl{display:grid;grid-template-columns:1fr auto;font-size:11px;gap:14px}dd{margin:0}.ids{overflow-wrap:anywhere;max-height:200px;overflow:auto}.empty{text-align:center;font-family:Georgia,serif;font-style:italic;font-size:24px;padding:45px;color:#7d876e}textarea{height:150px;font-family:monospace;font-size:10px}footer{border-top:1px solid var(--line);padding:18px 35px;font-size:11px}footer p[role=status]{margin:0;color:#385a24;font-weight:600}footer details{max-width:950px}footer button{margin-right:8px}.selected .grain-grid{animation:reveal .4s ease-out}@keyframes reveal{0%{opacity:.25}to{opacity:1}}@media(min-width:1600px){.workspace{grid-template-columns:290px minmax(0,1fr) 290px}article{padding:40px}.generation{padding:18px}}@media(max-width:1050px){.workspace{grid-template-columns:230px minmax(0,1fr)}aside.right{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);display:block}.right button{max-width:300px}.right .proof{max-width:420px}}@media(max-width:680px){header{padding:25px;display:block}.header-tools{max-width:none;margin-top:25px}.workspace{display:flex;flex-direction:column}aside{border-right:0;border-bottom:1px solid var(--line)}article{padding:22px;order:-1}h1{font-size:48px}.generation{grid-template-columns:24px minmax(0,1fr) 85px;gap:8px}.stats{gap:24px}.hero-wave{padding:15px}.grain-grid i{height:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
