:root{--paper:#f5f4f0;--ink:#222220;--muted:#5d5c58;--line:#cecdc6;--accent:#a62e35;--dark:#252624;--light:#faf9f5;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;font-size:18px;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;line-height:1.55}a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}a:hover{color:var(--accent)}button,input{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto;display:block}figure,p{margin:0}p+p{margin-top:1em}h1,h2,h3,h4{font-weight:600;line-height:1.08;letter-spacing:-.045em;margin:0}h1{font-size:clamp(58px,7.4vw,110px)}h2{font-size:clamp(34px,3.5vw,52px)}h3{font-size:28px}button,a,input{touch-action:manipulation}:focus-visible{outline:3px solid var(--accent);outline-offset:6px}[hidden]{display:none!important}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:absolute;top:-100px;left:16px;z-index:10;background:var(--paper);padding:12px}.skip:focus{top:12px}.preview-banner{padding:10px 24px;text-align:center;font-size:16px;color:var(--muted);border-bottom:1px solid var(--line)}.site-header{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:112px;border-bottom:1px solid var(--line)}.brand{font-size:30px;font-weight:650;letter-spacing:-1.3px;text-decoration:none}.site-header nav{display:flex;gap:32px;flex-wrap:wrap;font-size:18px}.site-header nav a{text-decoration:none}.hero{padding-block:80px 72px;display:grid;grid-template-columns:1.4fr 1fr;gap:72px;align-items:end}.hero-intro{max-width:430px;padding-bottom:5px;font-size:23px;line-height:1.45}.hero-intro p:first-child{font-size:23px;font-weight:500}.hero-intro .button{margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);border:1px solid var(--ink);color:var(--light);padding:14px 25px;min-height:54px;text-decoration:none;border-radius:3px;font-size:18px;font-weight:500;line-height:1.3}.button:hover{background:var(--accent);border-color:var(--accent);color:white}.showcase{padding-bottom:84px}.showcase-image{width:100%;background:#fff4d7}.showcase-caption{display:grid;grid-template-columns:1fr 1fr;gap:72px;padding-top:32px}.showcase-caption h2{font-size:clamp(30px,3vw,43px)}.showcase-caption p{font-size:20px;line-height:1.5}.showcase-caption p+p{color:var(--muted);font-size:18px}.showcase-caption a{display:inline-block;margin-top:20px}.section{padding-block:84px;border-top:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1.28fr;gap:96px}.section-intro p{font-size:21px;color:var(--muted);margin-top:26px;max-width:440px}.section-intro>a{display:inline-block;margin-top:25px}.code-demo{min-width:0;background:var(--dark);color:#f8f6ed;align-self:start;border-radius:3px;overflow:hidden}.code-tabs{display:flex;border-bottom:1px solid #555650;padding:0 20px}.code-tabs button{font-size:18px;color:#c5c6bf;background:none;border:0;border-bottom:3px solid transparent;padding:20px 18px}.code-tabs button[aria-selected=true]{color:#fff;border-bottom-color:#f0c5bd}.code-tabs button:hover{color:#fff}.code-panel{padding:28px}.code-panel>p{font-size:18px;color:#d0d1c9}.code-panel pre{margin:28px 0 38px;font-size:15px;line-height:1.7;overflow:auto;padding-bottom:8px;white-space:pre-wrap;overflow-wrap:anywhere}.code-panel code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.code-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #555650;padding-top:20px;font-size:17px}.code-bottom a:hover{color:#ffc8be}.copy-button{font-size:17px;border:1px solid #77786f;background:transparent;border-radius:3px;color:inherit;padding:7px 15px}.copy-button:hover{background:#464740}.skill-content{font-size:23px;line-height:1.55}.skill-content p+p{font-size:20px;color:var(--muted)}.link-row{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px;font-size:18px}.guide-links{display:flex;flex-direction:column}.guide-links a{font-size:24px;text-decoration:none;padding:17px 0;border-bottom:1px solid var(--line)}.guide-links a:first-child{padding-top:0}.guide-links a:last-child{border-bottom:0}.download-section{margin-top:16px;padding-block:72px;background:#e6e3da}.download-layout{display:grid;grid-template-columns:1fr 1fr;gap:96px}.download-layout h2{font-size:64px}.download-layout h2+p{font-size:24px;margin-top:16px}.download-layout .button{margin-top:30px}.download-details{font-size:20px}.download-details p+p{font-size:18px;color:var(--muted)}.footer{display:flex;justify-content:space-between;gap:32px;align-items:center;padding-block:32px;font-size:16px;color:var(--muted)}
/* Shared reading layout for the generated documentation. */
.doc-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:70px;padding-block:55px 90px;align-items:start}.doc-sidebar{position:sticky;top:30px;min-width:0}.doc-sidebar h2{font-size:22px;letter-spacing:-.02em;margin-bottom:20px}.doc-search{width:100%;border:1px solid #b5b4ad;background:transparent;color:var(--ink);border-radius:3px;font-size:17px;padding:11px 12px;margin-bottom:18px}.doc-sidebar nav{display:flex;flex-direction:column;gap:2px}.doc-sidebar nav a{font-size:17px;line-height:1.4;display:block;padding:8px 10px;text-decoration:none;border-left:2px solid transparent}.doc-sidebar nav a[aria-current=page]{border-left-color:var(--accent);color:var(--accent);background:#ece9e2}.search-empty{font-size:17px;color:var(--muted)}.doc-content{min-width:0;max-width:850px;overflow-wrap:anywhere}.doc-content h1{font-size:clamp(36px,4vw,56px);margin-bottom:30px}.doc-content h2{font-size:30px;margin:48px 0 20px;letter-spacing:-.025em;scroll-margin-top:25px}.doc-content h3{font-size:24px;margin:32px 0 16px;letter-spacing:-.02em}.doc-content h4{font-size:21px;margin:24px 0 14px}.doc-content p{margin:0 0 20px}.doc-content ul,.doc-content ol{padding-left:25px;margin:20px 0 28px}.doc-content li{margin:8px 0}.doc-content li p{margin-bottom:8px}.doc-content pre{background:#e9e7e0;border:1px solid #ddd9cf;padding:22px;overflow:auto;line-height:1.6;font-size:15px;white-space:pre-wrap;overflow-wrap:anywhere;margin:24px 0 30px;border-radius:3px}.doc-content code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em}.doc-content pre code{font-size:inherit}.doc-content :not(pre)>code{background:#e9e7e0;padding:2px 4px;border-radius:2px}.doc-content table{display:block;max-width:100%;width:max-content;overflow:auto;border-collapse:collapse;margin:24px 0 32px;font-size:17px}.doc-content th{text-align:left;font-weight:600}.doc-content th,.doc-content td{padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:top;min-width:150px}.doc-content th:first-child,.doc-content td:first-child{padding-left:0}.doc-content blockquote{margin:28px 0;padding:4px 0 4px 24px;border-left:3px solid var(--line);font-size:20px}.doc-content blockquote p:last-child{margin-bottom:0}.doc-content hr{border:0;border-top:1px solid var(--line);margin:40px 0}.doc-end{border-top:1px solid var(--line);margin-top:56px;padding-top:22px;color:var(--muted);font-size:16px}
@media(min-width:1600px){.wrap{width:min(1360px,calc(100% - 128px))}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:40px;grid-template-columns:1.2fr 1fr;padding-block:60px}.hero-intro,.hero-intro p:first-child{font-size:20px}.split{gap:48px}.site-header nav{gap:20px}.showcase-caption{gap:40px}.download-layout{gap:48px}.doc-layout{grid-template-columns:210px minmax(0,1fr);gap:40px}.doc-sidebar nav a{font-size:16px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{align-items:flex-start;flex-direction:column;gap:16px;padding-block:24px;min-height:0}.site-header nav{font-size:16px;gap:13px 23px}.brand{font-size:28px}.hero{grid-template-columns:1fr;gap:30px;padding-block:44px 40px}.hero-intro{max-width:560px}.hero-intro p:first-child{font-size:22px}.hero-intro .button{margin-top:24px}.showcase-caption{grid-template-columns:1fr;gap:20px;padding-top:24px}.showcase-caption h2{font-size:32px}.showcase-caption p{font-size:19px}.showcase{padding-bottom:50px}.section{padding-block:48px}.split{grid-template-columns:1fr;gap:32px}.section-intro p{font-size:20px;max-width:none;margin-top:22px}.section-intro>a{margin-top:20px}.code-panel{padding:22px}.code-tabs{padding-inline:6px}.code-tabs button{font-size:17px;padding:18px 15px}.code-panel pre{font-size:14px}.skill-content{font-size:21px}.skill-content p+p{font-size:19px}.guide-links a{font-size:22px}.download-section{padding-block:48px}.download-layout{grid-template-columns:1fr;gap:36px}.download-layout h2{font-size:52px}.footer{flex-direction:column;align-items:flex-start;gap:18px;padding-block:26px}.preview-banner{font-size:15px;text-align:left;padding-inline:20px}.doc-layout{display:flex;flex-direction:column;gap:36px;padding-block:32px 55px}.doc-sidebar{position:static;width:100%;border-bottom:1px solid var(--line);padding-bottom:24px}.doc-sidebar nav{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}.doc-sidebar nav a{font-size:16px;padding:8px}.doc-sidebar h2{margin-bottom:16px}.doc-search{margin-bottom:12px}.doc-content{width:100%}.doc-content h1{font-size:38px}.doc-content h2{font-size:28px}.doc-content table{font-size:16px}.doc-content pre{padding:16px;font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.guide-menu summary{font-size:22px;font-weight:500;letter-spacing:-.02em;cursor:pointer;margin-bottom:20px}.guide-menu:not([open]) summary{margin-bottom:0}

.app-icon{width:120px;height:120px;object-fit:contain;margin-bottom:24px}
