:root{--app-bg-color:#3f5e5a;--focus-color:#ffb454;--primary-color:#9fd8cb;--secondary-color:#6f8f8a;--text-color:#424242;--card-color:#eaf5f2;--link-color:var(--primary-color);--controls-fg-color:var(--text-color);--controls-bg-color:#eaf5f2}*,:before,:after{box-sizing:border-box}body{color:var(--text-color);background-color:var(--app-bg-color);margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5}a{color:var(--link-color);text-decoration:none}a:hover{color:var(--focus-color)}.page{max-width:780px;margin:0 auto;padding:0 16px}.toolbar{grid-template-columns:10% auto 10%;margin:5px;display:grid;position:relative}.toolbar h1{color:var(--card-color);margin:.4em;font-size:2.5rem;font-weight:900;line-height:1.2}@media (width<=576px){.toolbar h1{font-size:1.5em}}.tools-start,.tools-middle,.tools-end{align-items:center;display:flex}.tools-middle{justify-content:center}.tools-end{justify-content:flex-end}.tool-button{color:var(--controls-bg-color);padding:3px;display:block}.tool-button:hover{color:var(--focus-color)}.tool-button svg{width:2em;height:2em;display:block}.burst-container{z-index:1;display:flex;position:absolute;top:calc(100% + 5px);left:max(-5px,50px + -50vw + 50%);transform:translate(-50%,-50%)}.burst-container svg{display:block}.about-burst{text-decoration:none;transition:transform .2s;display:inline-block;transform:rotate(-12deg)}.about-burst:hover{transform:scale(1.1)rotate(10deg)}.about-burst .burst-shape{fill:var(--primary-color);stroke:var(--secondary-color);stroke-width:1px;transition:fill .2s}.about-burst:hover .burst-shape{fill:var(--focus-color)}.about-burst .burst-text{fill:var(--text-color);font-size:21px;font-weight:900;animation:.4s ease-out burst-text-in}@keyframes burst-text-in{0%{opacity:0;transform:scale(.5)rotate(-15deg)}50%{opacity:1;transform:scale(1.1)rotate(5deg)}to{opacity:1;transform:scale(1)rotate(0)}}.card{background-color:var(--card-color);border:3px solid var(--secondary-color);border-radius:5px;margin-bottom:1em;padding:2.5em 1.25em 1em}.about h2{margin:.2em 0 0;font-size:1.75rem}.about h3{margin:1.5em 0 .5em}.about hr{border:0;border-top:1px solid #0000001a;margin:1rem 0}.about p{margin:0 0 1rem}.about li{margin-bottom:.4em}.about a{color:#2f7466}.about a:hover{color:var(--focus-color)}blockquote{border-left:4px solid var(--primary-color);margin:0 0 1em;padding-left:1em}blockquote p{margin:0;font-size:1.1em}blockquote footer{color:#6b6b6b;font-size:.85em}blockquote footer:before{content:"— "}.how{margin:0}#grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}canvas{aspect-ratio:1;border:4px solid var(--secondary-color);cursor:pointer;background:#000;border-radius:.25rem;width:100%;display:block}.parent{border-color:var(--primary-color)}.cell{position:relative;container-type:inline-size}.cell:hover canvas{border-color:var(--focus-color)}.genes{color:var(--card-color);font-variant-numeric:tabular-nums;pointer-events:none;opacity:0;background:#000000bf;padding:.35em .5em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(7px,3.9cqw,12px);line-height:1.4;transition:opacity .15s;position:absolute;bottom:4px;left:4px;right:4px}.genes>div{flex-wrap:wrap;column-gap:1em;display:flex}.genes .label{color:var(--primary-color);opacity:.8}.genes .inactive{opacity:.35}.genes .changed{color:#000;background:var(--focus-color);opacity:1;border-radius:2px;padding:0 .15em}@media (hover:hover){.cell:hover .genes{opacity:1}}#grid.show-genes .genes{opacity:1}.actions{justify-content:center;gap:.75em;margin:1em 0;display:flex}.app-button{color:var(--controls-fg-color);appearance:none;background-color:var(--controls-bg-color);border:1px solid var(--primary-color);border-radius:.5em;padding:.6em .8em .5em;font-size:16px;font-weight:900;line-height:1.3}.app-button:hover{border-color:var(--focus-color);cursor:pointer}.app-button:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}.footer{color:var(--card-color);text-align:center;margin:2em 0 1em;font-size:.7em}
