:root{--lines:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUAQMAAAC3R49OAAADImlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDowQjJDMTFCQzVFNTkxMUUyQkQyMEQ4NjNBOUJEMENGQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDowQjJDMTFCRDVFNTkxMUUyQkQyMEQ4NjNBOUJEMENGQiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjBCMkMxMUJBNUU1OTExRTJCRDIwRDg2M0E5QkQwQ0ZCIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjBCMkMxMUJCNUU1OTExRTJCRDIwRDg2M0E5QkQwQ0ZCIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Ee95+wAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAGUExURQAAAEdwTIDnVscAAAACdFJOU+YAfreZUgAAABxJREFUCNdjePfuAUN5eQHD7t0bGO7evcBAIR8A3Wcr8yI12FMAAAAASUVORK5CYII=);--abyss:#021c26;--ink:#0b2530;--muted:#3e5a64;--teal:#0f6e7a;--paper:#f6f9f9;--line:#d5e3e6;--accent:#f08a5d}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);margin:0;font-family:Ubuntu,Segoe UI,sans-serif}a{color:var(--teal)}a:hover{color:#0a4e57}code,pre{font-variant-ligatures:none;font-family:JetBrains Mono,ui-monospace,monospace}.wrap{max-width:1200px;margin:0 auto}.eyebrow{letter-spacing:.22em;color:var(--teal);margin:0;font-size:14px;font-weight:700}h2{margin:0;font-size:clamp(30px,3.4vw,44px);font-weight:700;line-height:1.15}.water{color:#fff;position:relative;overflow:hidden}.water:before,.water:after{content:"";position:absolute;inset:0}.water:before{background:linear-gradient(#01414e8c, #01414e8c), var(--photo) center 38% / cover}.water:after{background:var(--lines);opacity:.55}.water>*{z-index:1;position:relative}.water>.nav{z-index:3}@media (width<=800px){.water:before{background-image:linear-gradient(#01414e8c, #01414e8c), var(--photo-small)}.start.water:before{background-image:linear-gradient(#01414ed1, #01414ed1), var(--photo-small)}}.hero{flex-direction:column;min-height:760px;display:flex}.nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:24px 32px;display:flex}.nav a{color:#e6f2f4;text-decoration:none}.nav a:hover{color:#fff;text-decoration:underline}.brand{letter-spacing:.12em;align-items:center;gap:12px;font-size:18px;font-weight:700;display:flex}.nav-links{flex-wrap:wrap;align-items:center;gap:28px;font-size:16px;display:flex}.repo-menu{position:relative}.repo-menu summary{cursor:pointer;color:#e6f2f4;list-style:none}.repo-menu summary::-webkit-details-marker{display:none}.repo-menu summary:after{content:" ▾";font-size:.8em}.repo-menu summary:hover{color:#fff;text-decoration:underline}.repo-menu .menu{z-index:5;background:#04222c;border:1px solid #ffffff2e;border-radius:12px;flex-direction:column;min-width:300px;padding:6px;display:flex;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 12px 32px #00000059}.repo-menu .menu a{color:#cfe3e7;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;min-height:44px;padding:8px 12px;display:flex}.repo-menu .menu a:hover{color:#fff;background:#ffffff14;text-decoration:none}.repo-menu .menu strong{color:#fff;margin-right:6px}.repo-menu .hint{color:#9db8bf;margin:4px 12px 6px;font-size:13px}.repo-menu .count{color:#fff;white-space:nowrap;font-size:14px;font-weight:700}.splash{text-align:center;flex-direction:column;flex:auto;justify-content:center;align-items:center;padding:24px 24px 96px;display:flex}.emblem{border:3px solid #fff;border-radius:50%;place-items:center;width:132px;height:132px;display:grid}.emblem>div{border:2px dotted #ffffffd9;border-radius:50%;place-items:center;width:112px;height:112px;display:grid}.rule{background:#ffffffe6;height:2px}.splash h1{letter-spacing:.05em;text-shadow:0 2px 18px #001e2873;margin:14px 0 10px;font-size:clamp(56px,9vw,112px);font-weight:700;line-height:1}.subtitle{letter-spacing:.06em;text-transform:uppercase;text-shadow:0 2px 12px #001e2880;margin:22px 0 8px;font-size:clamp(20px,2.6vw,34px);font-weight:500}.tagline{color:#eaf4f6;margin:0;font-family:Noto Serif,Georgia,serif;font-size:clamp(18px,2vw,26px);font-style:italic}.actions{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.button{border-radius:10px;align-items:center;gap:10px;min-height:52px;padding:0 26px;font-size:17px;font-weight:700;text-decoration:none;display:inline-flex}.button.primary{background:var(--accent);color:var(--ink)}.button.primary:hover{color:var(--ink);filter:brightness(1.06)}.button.ghost{color:#fff;border:2px solid #fff}.button.ghost:hover{color:#fff;background:#ffffff1f}.installs{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:22px;font-size:14px;display:flex}.installs code{color:#e6f2f4;background:#021c269e;border:1px solid #ffffff40;border-radius:8px;padding:9px 14px}.intro{padding:96px 32px 72px}.intro .wrap{text-align:center;flex-direction:column;align-items:center;gap:18px;max-width:880px;display:flex}.intro p:last-child{color:var(--muted);max-width:720px;margin:0;font-size:19px;line-height:1.65}.libraries{padding:0 32px 96px}.row{flex-wrap:wrap;gap:28px;display:flex}.card{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;flex:380px;gap:16px;min-width:0;padding:36px;display:flex}.card h3{margin:0;font-size:32px;font-weight:700}.card p{color:var(--muted);margin:0;font-size:17px;line-height:1.6}.card .eyebrow{letter-spacing:.14em}.card>code{background:#eef5f6;border-radius:8px;padding:12px 14px;font-size:14px;overflow-x:auto}.card .links{flex-wrap:wrap;align-items:center;gap:20px;margin-top:auto;padding-top:8px;font-size:16px;font-weight:500;display:flex}.card .star{border:1px solid var(--line);color:var(--ink);border-radius:8px;align-items:center;gap:8px;padding:4px 4px 4px 12px;text-decoration:none;display:inline-flex}.card .star:hover{border-color:var(--teal);color:var(--ink)}.card .star span{background:#eef5f6;border-radius:6px;padding:2px 8px;font-size:14px;font-weight:700}.shared{text-align:center;color:#123a45;background:#e3eff1;border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:28px;padding:22px 28px;font-size:17px;line-height:1.5;display:flex}.compose{background:var(--abyss);color:#e6f2f4;padding:96px 32px}.compose .wrap{flex-wrap:wrap;align-items:flex-start;gap:56px;display:flex}.compose .text{flex-direction:column;flex:340px;gap:20px;min-width:0;display:flex}.compose .eyebrow{color:#7fd3c8}.compose h2{color:#fff}.compose .text>p:not(.eyebrow){color:#bfd5da;margin:0;font-size:18px;line-height:1.65}.compose ul{color:#d7e6e9;flex-direction:column;gap:14px;margin:0;padding:0;font-size:17px;line-height:1.5;list-style:none;display:flex}.compose li{gap:12px;display:flex}.compose li:before{content:"—";color:var(--accent);font-weight:700}.compose li code{color:#fff;font-size:15px}.panel{background:#071e27;border:1px solid #1c3d48;border-radius:16px;flex:1.4 520px;min-width:0;overflow:hidden}.tabs{background:#0a2630;border-bottom:1px solid #1c3d48;gap:4px;padding:10px 12px;display:flex}.tabs button{cursor:pointer;color:#9db8bf;background:0 0;border:0;border-radius:8px;min-height:44px;padding:0 18px;font:500 15px Ubuntu,sans-serif}.tabs button[aria-pressed=true]{color:#fff;background:#1c4652}.panel pre{color:#d7e4e7;margin:0;padding:24px 26px;font-size:14.5px;line-height:1.65;overflow-x:auto}.panel pre[hidden]{display:none}.a{color:#7fd3c8}.k{color:#f4a27c}.s{color:#c8de8c}.t{color:#9cc4f2}.c{color:#8ba3aa}.features{padding:96px 32px}.features .wrap{flex-direction:column;gap:44px;display:flex}.features header{flex-direction:column;gap:14px;max-width:720px;display:flex}.feature{border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;flex:320px;gap:12px;min-width:0;padding:28px;display:flex}.feature:before{content:"";background:var(--accent);border-radius:2px;width:32px;height:4px}.feature h3{margin:0;font-size:21px;font-weight:700}.feature p{color:var(--muted);margin:0;font-size:16px;line-height:1.6}.feature code{font-size:14px}.features .row{gap:24px}.backing{padding:0 32px 72px}.backing p{text-align:center;color:#123a45;background:#e3eff1;border-radius:14px;max-width:880px;margin:0 auto;padding:26px 32px;font-size:19px;line-height:1.6}.engines{padding:0 32px 96px}.engines .wrap{text-align:center;flex-direction:column;align-items:center;gap:22px;display:flex}.chips{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.chips span{background:#fff;border:1px solid #b9d0d5;border-radius:999px;padding:10px 20px;font-size:17px;font-weight:500}.chips span.via{color:var(--muted);background:0 0;border-style:dashed}.engines p{color:#4a6670;margin:0;font-size:15px}.start .wrap{text-align:center;flex-direction:column;align-items:center;gap:22px;max-width:880px;padding:88px 32px;display:flex}.start.water:before{background:linear-gradient(#01414ed1, #01414ed1), var(--photo) center 38% / cover}.start p{color:#e1eef1;margin:0;font-size:18px;line-height:1.6}footer{background:var(--abyss);color:#cfe3e7;padding:56px 32px}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:32px;display:flex}footer .about{flex:320px;align-items:flex-start;gap:16px;min-width:0;display:flex}footer .about p{margin:0;font-size:15px;line-height:1.6}footer nav{flex-wrap:wrap;gap:48px;font-size:15px;display:flex}footer nav div{flex-direction:column;gap:10px;display:flex}footer nav span{color:#fff;font-weight:700}footer a{color:#cfe3e7;text-decoration:none}footer a:hover{color:#fff;text-decoration:underline}
