@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-500-normal.BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-ext-400-normal.C5H60-Va.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-400-normal.RBey6euL.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-ext-600-normal.DOrvGEcy.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-600-normal.DIrixKbi.woff) format("woff")}:root{--bg: #161616;--bg-elevated: #262626;--card: #1e1e1e;--text: #f4f4f4;--text-muted: #c6c6c6;--text-faint: #8d8d8d;--accent: #0f62fe;--accent-hover: #4589ff;--border: #393939;--maxw: 1080px;--gutter: clamp(1rem, 4vw, 2.5rem);--radius: 0;--font: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--step--1: clamp(.83rem, .8rem + .15vw, .9rem);--step-0: clamp(1rem, .96rem + .2vw, 1.1rem);--step-1: clamp(1.2rem, 1.1rem + .5vw, 1.5rem);--step-2: clamp(1.5rem, 1.3rem + 1vw, 2.1rem);--step-3: clamp(2rem, 1.6rem + 2vw, 3.25rem)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);font-size:var(--step-0);line-height:1.6;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{line-height:1.2;font-weight:600;margin:0 0 .5em}h1{font-size:var(--step-3);letter-spacing:-.02em}h2{font-size:var(--step-2);letter-spacing:-.01em}h3{font-size:var(--step-1)}p{margin:0 0 1em;color:var(--text-muted)}a{color:var(--accent-hover);text-decoration:none}a:hover{text-decoration:underline}img,svg{max-width:100%;height:auto;display:block}ul,ol{color:var(--text-muted)}.container{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:clamp(3rem,8vw,6rem)}.section--tight{padding-block:clamp(2rem,5vw,3.5rem)}.muted{color:var(--text-faint)}.center{text-align:center}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1.4rem;font:inherit;font-weight:500;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.btn--primary{background:var(--accent);color:#fff}.btn--primary:hover{background:var(--accent-hover);text-decoration:none}.btn--ghost{background:transparent;color:var(--text);border-color:var(--border)}.btn--ghost:hover{border-color:var(--text-faint);text-decoration:none}.btn[aria-disabled=true]{opacity:.5;pointer-events:none}.card{background:var(--card);border:1px solid var(--border);padding:1.5rem;position:relative}.card:focus-within,.card:hover{border-color:var(--text-faint)}.badge{display:inline-block;font-size:var(--step--1);font-weight:500;padding:.15rem .6rem;border:1px solid var(--border);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.badge--accent{border-color:var(--accent);color:var(--accent-hover)}.site-header{position:sticky;top:0;z-index:10;background:#161616d9;backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.site-header .container{display:flex;align-items:center;justify-content:space-between;padding-block:.9rem}.site-header nav{display:flex;gap:1.25rem;align-items:center}.site-header nav a{color:var(--text-muted);font-size:var(--step--1)}.site-header nav a:hover{color:var(--text);text-decoration:none}.brand{display:flex;align-items:center;gap:.6rem;font-weight:600;color:var(--text);letter-spacing:.02em}.brand:hover{text-decoration:none}.brand-mark{display:inline-grid;place-items:center;width:30px;height:30px;background:var(--accent);color:#fff;font-size:.72rem;font-weight:600;letter-spacing:.02em}.lang-switch{display:flex;gap:.25rem;align-items:center;font-size:var(--step--1)}.lang-switch a{padding:.15rem .4rem;border:1px solid transparent}.lang-switch a[aria-current=true]{border-color:var(--border);color:var(--text)}.site-footer{border-top:1px solid var(--border);padding-block:2.5rem;color:var(--text-faint);font-size:var(--step--1)}.site-footer .container{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between}.site-footer nav{display:flex;flex-wrap:wrap;gap:1rem}.site-footer a{color:var(--text-muted)}.hero{text-align:center;padding-block:clamp(3.5rem,10vw,7rem)}.hero .lead{font-size:var(--step-1);color:var(--text-muted);max-width:40ch;margin-inline:auto}.hero .cta-row{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}.hero img.logo-lg{width:clamp(72px,14vw,110px);height:auto;margin:0 auto 1.5rem}.grid{display:grid;gap:1.25rem}.grid--apps{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.grid--features{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.feature h3{font-size:var(--step-0);margin-bottom:.3rem}.feature p{font-size:var(--step--1);margin:0}.feature .ico{width:32px;height:32px;color:var(--accent-hover);margin-bottom:.75rem}.app-card{display:flex;flex-direction:column;gap:.75rem}.app-card .top{display:flex;align-items:center;gap:.85rem}.app-card .top img{width:48px;height:48px;border:1px solid var(--border)}.app-card h3{margin:0;font-size:var(--step-1)}.app-card .kind{font-size:var(--step--1);color:var(--text-faint)}.app-card.soon{opacity:.6}.prose{max-width:68ch;margin-inline:auto}.prose h2{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.prose h2:first-of-type{border-top:none;padding-top:0}.prose table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:var(--step--1)}.prose th,.prose td{border:1px solid var(--border);padding:.5rem .75rem;text-align:left;vertical-align:top}.prose th{background:var(--bg-elevated);color:var(--text)}.prose code{background:var(--bg-elevated);padding:.1em .4em;font-size:.9em}.prose .note{border-left:3px solid var(--accent);background:var(--bg-elevated);padding:.75rem 1rem;margin:1.5rem 0;color:var(--text-muted);font-size:var(--step--1)}:focus-visible{outline:2px solid var(--accent-hover);outline-offset:2px}.skip-link{position:absolute;left:-999px;top:0;background:var(--accent);color:#fff;padding:.5rem 1rem;z-index:100}.skip-link:focus{left:0}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
