@font-face{font-family:Cal Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/cal-sans-400-latin-ext-TtpXEvyb.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cal Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/cal-sans-400-latin-Dbkae8dt.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/poppins-400-latin-ext-by3JarPu.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/poppins-400-latin-cpxAROuN.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/poppins-500-latin-ext-CK-6C4Hw.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/poppins-500-latin-C8OXljZJ.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/poppins-600-latin-ext-CAhIAdZj.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/poppins-600-latin-zEkxB9Mr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/poppins-700-latin-ext-cby-RkWa.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/poppins-700-latin-Qrb0O0WB.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--r-bg:#000;--r-surface:#101010;--r-surface-hover:#191919;--r-surface-hover-quiet:#121212;--r-surface-selected:color-mix(in srgb, var(--r-accent-base) 8%, #121212);--r-surface-raised:#141414;--r-scrim:#000000d6;--r-line:#222;--r-line-soft:#161616;--r-line-strong:#2e2e2e;--r-text:#eeeeef;--r-text-muted:#a6a6af;--r-text-faint:#85858e;--r-accent-base:#c299cf;--r-accent:var(--r-accent-base);--r-accent-strong:color-mix(in srgb, var(--r-accent-base) 80%, #fff);--r-accent-text:color-mix(in srgb, var(--r-accent-base) 68%, #fff);--r-accent-soft:color-mix(in srgb, var(--r-accent-base) 7%, transparent);--r-accent-line:color-mix(in srgb, var(--r-accent-base) 25%, transparent);--r-on-accent:#1b1120;--r-danger:#f87171;--r-danger-text:#f6b0a8;--r-danger-soft:#251717;--r-danger-line:#472525;--r-success:#4ade80;--r-success-soft:#0f2116;--r-success-line:#1d4029;--r-focus:color-mix(in srgb, var(--r-accent-base) 72%, transparent);--r-focus-width:2px;--r-focus-offset:2px;--r-font:"Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--r-font-display:"Cal Sans", "Poppins", sans-serif;--r-font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--r-text-2xs:11px;--r-text-xs:12px;--r-text-sm:13px;--r-text-md:14px;--r-text-base:15px;--r-text-lg:17px;--r-leading:1.5;--r-display-xs:24px;--r-display-sm:30px;--r-display-md:40px;--r-display-lg:48px;--r-display-xl:clamp(42px, 5vw, 64px);--r-tracking-display:-.025em;--r-tracking-tight:-.035em;--r-space-1:4px;--r-space-2:8px;--r-space-3:12px;--r-space-4:16px;--r-space-5:20px;--r-space-6:24px;--r-space-8:32px;--r-space-10:40px;--r-space-12:48px;--r-space-16:64px;--r-radius-xs:4px;--r-radius-sm:6px;--r-radius-md:8px;--r-radius-lg:12px;--r-radius-xl:18px;--r-radius-full:999px;--r-control-sm:32px;--r-control-md:40px;--r-control-lg:48px;--r-shadow-pop:0 14px 40px #0009;--r-shadow-overlay:0 24px 70px #000000b3;--r-ease:cubic-bezier(.2, 0, 0, 1);--r-duration:.15s;--r-sidenav-width:280px;--r-topbar-height:64px;--r-content-width:780px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scrollbar-color:#2a2a2a transparent}body{background:var(--r-bg);color:var(--r-text);font-family:var(--r-font);font-size:var(--r-text-base);line-height:var(--r-leading);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}img,video{max-width:100%}[hidden]{display:none!important}a{color:var(--r-accent-text);text-underline-offset:.18em;text-decoration-thickness:1px}@media (hover:hover){a:hover{color:var(--r-accent-strong)}}code,kbd,samp,pre{font-family:var(--r-font-mono);font-size:.92em}::placeholder{color:var(--r-text-faint);opacity:1}::selection{background:color-mix(in srgb, var(--r-accent) 32%, transparent);color:var(--r-text)}:focus-visible{outline:var(--r-focus-width) solid var(--r-focus);outline-offset:var(--r-focus-offset)}:focus:not(:focus-visible){outline:none}*{scrollbar-width:thin}@supports not (scrollbar-width:thin){::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#2a2a2a padding-box padding-box;border:3px solid #0000;border-radius:99px}@media (hover:hover){::-webkit-scrollbar-thumb:hover{background-color:#3a3a3a}}}.r-visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.r-display{font-family:var(--r-font-display);font-weight:400;font-size:var(--r-display-lg);letter-spacing:var(--r-tracking-display);color:var(--r-text);margin:0;line-height:1.05}.r-display--xs{font-size:var(--r-display-xs);line-height:1.2}.r-display--sm{font-size:var(--r-display-sm);line-height:1.15}.r-display--md{font-size:var(--r-display-md);line-height:1.1}.r-display--xl{font-size:var(--r-display-xl);letter-spacing:var(--r-tracking-tight)}.r-heading{color:var(--r-text);margin:0;font-size:16px;font-weight:600;line-height:1.35}.r-text-muted{color:var(--r-text-muted)}.r-text-faint{color:var(--r-text-faint)}.r-meta{color:var(--r-text-faint);font-size:var(--r-text-xs);font-variant-numeric:tabular-nums;line-height:1.4}.r-kbd{border:1px solid var(--r-line-strong);min-width:20px;height:20px;color:var(--r-text-muted);font-family:var(--r-font);font-size:var(--r-text-2xs);font-variant-numeric:tabular-nums;white-space:nowrap;background:0 0;border-radius:5px;justify-content:center;align-items:center;gap:2px;padding:0 5px;font-weight:500;line-height:1;display:inline-flex}.r-btn{justify-content:center;align-items:center;gap:var(--r-space-2);min-height:var(--r-control-md);border-radius:var(--r-radius-lg);color:var(--r-text);font-size:var(--r-text-md);white-space:nowrap;transition:background-color var(--r-duration) var(--r-ease), border-color var(--r-duration) var(--r-ease), color var(--r-duration) var(--r-ease);background:0 0;border:1px solid #0000;padding:0 16px;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.r-btn>svg{flex:none;width:16px;height:16px}.r-btn .r-kbd{margin-left:var(--r-space-1);color:inherit;border-color:color-mix(in srgb, currentColor 28%, transparent);opacity:.8}@media (hover:hover){.r-btn:hover{color:var(--r-text)}}.r-btn--primary{background:var(--r-accent);border-color:var(--r-accent);color:var(--r-on-accent);font-weight:600}@media (hover:hover){.r-btn--primary:hover{background:var(--r-accent-strong);border-color:var(--r-accent-strong);color:var(--r-on-accent)}}.r-btn--secondary{border-color:var(--r-line)}@media (hover:hover){.r-btn--secondary:hover{background:var(--r-surface-hover);border-color:var(--r-line-strong)}}.r-btn--ghost{color:var(--r-text-muted)}@media (hover:hover){.r-btn--ghost:hover{background:var(--r-surface-hover)}}.r-btn--danger{color:var(--r-danger);border-color:var(--r-danger-line)}@media (hover:hover){.r-btn--danger:hover{color:var(--r-danger-text);background:var(--r-danger-soft);border-color:var(--r-danger-line)}}.r-btn--sm{min-height:var(--r-control-sm);border-radius:var(--r-radius-md);font-size:var(--r-text-sm);padding:0 11px}.r-btn--sm>svg{width:14px;height:14px}.r-btn--lg{min-height:var(--r-control-lg);font-size:var(--r-text-base);padding:0 22px}.r-btn--block{width:100%}.r-btn:disabled,.r-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;pointer-events:none}.r-btn[aria-busy=true]{cursor:progress}.r-icon-btn{border-radius:var(--r-radius-md);width:36px;height:36px;color:var(--r-text-muted);transition:background-color var(--r-duration) var(--r-ease), color var(--r-duration) var(--r-ease);background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid}.r-icon-btn>svg{width:18px;height:18px}.r-icon-btn[aria-expanded=true]{color:var(--r-text);background:var(--r-surface-hover)}@media (hover:hover){.r-icon-btn:hover{color:var(--r-text);background:var(--r-surface-hover)}}.r-icon-btn--sm{border-radius:var(--r-radius-sm);width:30px;height:30px}.r-icon-btn--sm>svg{width:16px;height:16px}@media (hover:hover){.r-icon-btn--danger:hover{color:var(--r-danger);background:var(--r-danger-soft)}}.r-icon-btn:disabled{opacity:.4;pointer-events:none}.r-link-btn{color:var(--r-text-muted);font-size:var(--r-text-sm);text-underline-offset:.2em;transition:color var(--r-duration) var(--r-ease), text-decoration-color var(--r-duration) var(--r-ease);background:0 0;border:0;padding:0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}@media (hover:hover){.r-link-btn:hover{color:var(--r-text);text-decoration-color:currentColor}}.r-link-btn--danger{color:var(--r-danger)}@media (hover:hover){.r-link-btn--danger:hover{color:var(--r-danger-text)}}.r-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:16px;height:16px;animation:.8s linear infinite r-spin;display:inline-block}@keyframes r-spin{to{transform:rotate(360deg)}}.r-field{align-content:start;gap:6px;min-width:0;display:grid}.r-label{color:var(--r-text);font-size:var(--r-text-sm);font-weight:500}.r-hint{color:var(--r-text-faint);font-size:var(--r-text-xs);margin:0}.r-error{color:var(--r-danger);font-size:var(--r-text-xs);margin:0}.r-input,.r-textarea,.r-select{width:100%;min-width:0;min-height:var(--r-control-md);border:1px solid var(--r-line);border-radius:var(--r-radius-md);background:var(--r-surface);color:var(--r-text);font-size:var(--r-text-md);transition:border-color var(--r-duration) var(--r-ease);padding:0 12px}.r-textarea{resize:vertical;min-height:96px;padding:10px 12px;line-height:1.6;display:block}.r-input--sm{min-height:var(--r-control-sm);font-size:var(--r-text-sm);border-radius:var(--r-radius-sm);padding:0 10px}@media (hover:hover){.r-input:hover,.r-textarea:hover,.r-select:hover{border-color:var(--r-line-strong)}}.r-input:focus-visible,.r-textarea:focus-visible,.r-select:focus-visible,.r-input:focus,.r-textarea:focus,.r-select:focus{border-color:var(--r-focus);outline:none}.r-input[aria-invalid=true],.r-textarea[aria-invalid=true],.r-select[aria-invalid=true]{border-color:var(--r-danger)}.r-input:disabled,.r-textarea:disabled,.r-select:disabled{opacity:.5;cursor:not-allowed}.r-input:read-only:not(:disabled){color:var(--r-text-muted)}.r-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%2385858e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.r-select option{background:var(--r-surface);color:var(--r-text)}.r-input-wrap{align-items:center;gap:var(--r-space-2);width:100%;min-width:0;min-height:var(--r-control-md);border:1px solid var(--r-line);border-radius:var(--r-radius-md);background:var(--r-surface);color:var(--r-text-faint);font-size:var(--r-text-sm);text-align:left;transition:border-color var(--r-duration) var(--r-ease);padding:0 10px 0 12px;display:flex}.r-input-wrap>svg{flex:none;width:16px;height:16px}@media (hover:hover){.r-input-wrap:hover{border-color:var(--r-line-strong)}}.r-input-wrap:focus-within{border-color:var(--r-focus)}button.r-input-wrap:focus-visible{border-color:var(--r-focus);outline:none}.r-input-wrap>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.r-input-bare{width:100%;min-width:0;color:var(--r-text);background:0 0;border:0;flex:1;padding:0}.r-input-bare:focus,.r-input-bare:focus-visible{outline:none}.r-check{color:var(--r-text);font-size:var(--r-text-sm);cursor:pointer;align-items:center;gap:10px;display:inline-flex}.r-check input{appearance:none;background:var(--r-surface-hover);cursor:pointer;width:18px;height:18px;transition:background-color var(--r-duration) var(--r-ease), border-color var(--r-duration) var(--r-ease);border:1px solid #3a3a3a;border-radius:5px;flex:none;place-items:center;margin:0;display:inline-grid}.r-check input[type=radio]{border-radius:50%}@media (hover:hover){.r-check:hover input:not(:disabled){border-color:#4a4a4a}}.r-check input:checked{background:var(--r-accent);border-color:var(--r-accent)}.r-check input[type=checkbox]:checked:after{content:"";border:solid var(--r-on-accent);border-width:0 0 2px 2px;width:10px;height:6px;margin-top:-2px;transform:rotate(-45deg)}.r-check input[type=checkbox]:indeterminate{background:var(--r-accent);border-color:var(--r-accent)}.r-check input[type=checkbox]:indeterminate:after{content:"";background:var(--r-on-accent);width:9px;height:2px}.r-check input[type=radio]:checked:after{content:"";background:var(--r-on-accent);border-radius:50%;width:8px;height:8px}.r-check input:disabled{opacity:.45;cursor:not-allowed}.r-check:has(input:disabled){color:var(--r-text-faint);cursor:not-allowed}.r-check input.r-switch{background:#1f1f1f;border-color:#3a3a3a;border-radius:99px;width:34px;height:20px}.r-check input.r-switch:after{content:"";background:var(--r-text-muted);width:14px;height:14px;transition:transform var(--r-duration) var(--r-ease), background-color var(--r-duration) var(--r-ease);border:0;border-radius:50%;margin:0;transform:translate(-7px)}.r-check input.r-switch:checked{background:var(--r-accent);border-color:var(--r-accent)}.r-check input.r-switch:checked:after{background:var(--r-on-accent);border:0;width:14px;height:14px;margin:0;transform:translate(7px)}.r-panel{padding:var(--r-space-5);border:1px solid var(--r-line);border-radius:var(--r-radius-lg);background:var(--r-surface)}.r-panel__header{justify-content:space-between;align-items:center;gap:var(--r-space-3);margin-bottom:var(--r-space-4);display:flex}.r-card{gap:var(--r-space-3);min-width:0;padding:var(--r-space-6);border-radius:var(--r-radius-xl);background:var(--r-surface);color:var(--r-text);text-align:left;border:0;flex-direction:column;text-decoration:none;display:flex}a.r-card,button.r-card{transition:background-color var(--r-duration) var(--r-ease)}@media (hover:hover){a.r-card:hover,button.r-card:hover{background:var(--r-surface-hover);color:var(--r-text)}}.r-card__title{font-family:var(--r-font-display);font-weight:400;font-size:var(--r-display-xs);letter-spacing:-.02em;margin:0;line-height:1.2}.r-card__text{color:var(--r-text-muted);font-size:var(--r-text-md);margin:0;line-height:1.75}.r-card__foot{justify-content:space-between;align-items:flex-end;gap:var(--r-space-3);margin-top:auto;display:flex}.r-divider{height:1px;margin:var(--r-space-4) 0;background:var(--r-line);border:0}.r-avatar{background:var(--r-surface-hover);object-fit:cover;border-radius:50%;flex:none;width:32px;height:32px}.r-avatar--sm{width:24px;height:24px}.r-avatar--lg{width:44px;height:44px}.r-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.r-list--divided{gap:0}.r-list--divided>.r-row,.r-list--divided>li>.r-row{border-bottom:1px solid var(--r-line-soft);border-radius:0}.r-row{align-items:center;gap:var(--r-space-3);border-radius:var(--r-radius-md);width:100%;min-height:44px;color:var(--r-text);font-size:var(--r-text-sm);text-align:left;background:0 0;border:0;padding:10px 12px;text-decoration:none;display:flex}a.r-row,button.r-row{transition:background-color var(--r-duration) var(--r-ease)}@media (hover:hover){a.r-row:hover,button.r-row:hover{background:var(--r-surface-hover-quiet);color:var(--r-text)}}.r-row[aria-current]:not([aria-current=false]),.r-row[aria-selected=true],.r-row.is-selected{background:var(--r-surface-selected)}.r-row[aria-current]:not([aria-current=false]) .r-row__icon,.r-row[aria-selected=true] .r-row__icon,.r-row.is-selected .r-row__icon{color:var(--r-accent)}.r-row__icon{width:20px;height:20px;color:var(--r-text-faint);flex:none;place-items:center;display:grid}.r-row__icon>svg{width:16px;height:16px}.r-row__icon--boxed{border:1px solid var(--r-line);border-radius:var(--r-radius-sm);background:var(--r-surface);width:30px;height:30px;color:var(--r-text-muted)}.r-row__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.r-row__title{color:var(--r-text);font-size:var(--r-text-md);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.r-row__sub{color:var(--r-text-faint);font-size:var(--r-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.r-row__sub--wrap{white-space:normal}.r-row__meta{color:var(--r-text-faint);font-size:var(--r-text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.r-row__action{align-items:center;gap:var(--r-space-2);flex:none;display:flex}.r-topbar{align-items:center;gap:var(--r-space-4);min-height:var(--r-topbar-height);padding:0 var(--r-space-6);border-bottom:1px solid var(--r-line-soft);background:var(--r-bg);display:flex}.r-topbar__title{min-width:0;color:var(--r-text);font-size:var(--r-text-sm);align-items:center;gap:10px;display:flex}.r-topbar__title>svg{width:16px;height:16px;color:var(--r-text-faint);flex:none}.r-topbar__title>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.r-topbar__actions{align-items:center;gap:var(--r-space-1);margin-left:auto;display:flex}.r-brand{color:var(--r-text);font-family:var(--r-font-display);letter-spacing:var(--r-tracking-display);white-space:nowrap;align-items:center;gap:10px;font-size:24px;font-weight:400;line-height:1;text-decoration:none;display:inline-flex}.r-brand>svg{flex:none;width:22px;height:22px}@media (hover:hover){.r-brand:hover{color:var(--r-text)}}.r-sidenav{width:var(--r-sidenav-width);min-width:var(--r-sidenav-width);border-right:1px solid var(--r-line-soft);background:var(--r-bg);flex-direction:column;min-height:0;display:flex}.r-sidenav__header{align-items:center;gap:var(--r-space-2);min-height:var(--r-topbar-height);padding:0 var(--r-space-4);display:flex}.r-sidenav__section{padding:var(--r-space-2) var(--r-space-3);flex-direction:column;gap:2px;display:flex}.r-sidenav__label{padding:var(--r-space-3) 10px var(--r-space-1);color:var(--r-text-faint);font-size:var(--r-text-xs);font-weight:500}.r-sidenav__footer{padding:var(--r-space-3);border-top:1px solid var(--r-line-soft);margin-top:auto}.r-nav-item{border-radius:var(--r-radius-md);width:100%;min-height:40px;color:var(--r-text-muted);font-size:var(--r-text-sm);text-align:left;transition:background-color var(--r-duration) var(--r-ease), color var(--r-duration) var(--r-ease);background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;text-decoration:none;display:flex}.r-nav-item>svg{flex:none;width:16px;height:16px}.r-nav-item>span:not(.r-nav-item__meta){text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}@media (hover:hover){.r-nav-item:hover{color:var(--r-text);background:var(--r-surface-hover-quiet)}}.r-nav-item[aria-current]:not([aria-current=false]),.r-nav-item.is-active{color:var(--r-text);background:var(--r-surface-selected)}.r-nav-item[aria-current]:not([aria-current=false])>svg,.r-nav-item.is-active>svg{color:var(--r-accent)}.r-nav-item__meta{color:var(--r-text-faint);font-size:var(--r-text-xs);font-variant-numeric:tabular-nums;margin-left:auto}.r-tabs{gap:var(--r-space-5);border-bottom:1px solid var(--r-line);scrollbar-width:none;display:flex;overflow:auto hidden}.r-tabs::-webkit-scrollbar{display:none}.r-tab{color:var(--r-text-faint);font-size:var(--r-text-sm);white-space:nowrap;transition:color var(--r-duration) var(--r-ease);background:0 0;border:0;align-items:center;gap:6px;padding:10px 0 12px;font-weight:500;text-decoration:none;display:inline-flex;position:relative}@media (hover:hover){.r-tab:hover{color:var(--r-text)}}.r-tab[aria-selected=true],.r-tab[aria-current]:not([aria-current=false]){color:var(--r-text)}.r-tab[aria-selected=true]:after,.r-tab[aria-current]:not([aria-current=false]):after{content:"";background:var(--r-text);border-radius:2px;height:2px;position:absolute;bottom:0;left:0;right:0}.r-tab:focus-visible{outline-offset:-2px;border-radius:var(--r-radius-xs)}.r-segmented{border:1px solid var(--r-line);border-radius:var(--r-radius-md);background:var(--r-surface);flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.r-segmented>button{min-height:28px;color:var(--r-text-muted);font-size:var(--r-text-xs);transition:background-color var(--r-duration) var(--r-ease), color var(--r-duration) var(--r-ease);background:0 0;border:0;border-radius:5px;align-items:center;gap:5px;padding:0 10px;font-weight:500;display:inline-flex}@media (hover:hover){.r-segmented>button:hover{color:var(--r-text)}}.r-segmented>button[aria-pressed=true],.r-segmented>button[aria-checked=true]{color:var(--r-text);background:#222}.r-segmented>button>svg{width:13px;height:13px}.r-segmented>button:focus-visible{outline-offset:0}.r-badge{border:1px solid var(--r-line-strong);border-radius:var(--r-radius-full);min-height:20px;color:var(--r-text-muted);font-size:var(--r-text-2xs);white-space:nowrap;align-items:center;gap:4px;padding:0 8px;font-weight:500;line-height:1;display:inline-flex}.r-badge--accent{border-color:var(--r-accent-line);background:var(--r-accent-soft);color:var(--r-accent-text)}.r-badge--success{border-color:var(--r-success-line);background:var(--r-success-soft);color:var(--r-success)}.r-badge--danger{border-color:var(--r-danger-line);background:var(--r-danger-soft);color:var(--r-danger-text)}.r-chip{border:1px solid var(--r-line-strong);border-radius:var(--r-radius-sm);min-height:28px;color:var(--r-text);font-size:var(--r-text-xs);white-space:nowrap;transition:background-color var(--r-duration) var(--r-ease), border-color var(--r-duration) var(--r-ease), color var(--r-duration) var(--r-ease);background:#1c1c1c;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.r-chip>svg{width:12px;height:12px;color:var(--r-text-muted)}@media (hover:hover){button.r-chip:hover{background:#262626;border-color:#444}}.r-chip--dashed{color:var(--r-text-muted);background:0 0;border-style:dashed}@media (hover:hover){button.r-chip--dashed:hover{color:var(--r-text);background:var(--r-surface-hover);border-style:solid}}.r-alert{align-items:flex-start;gap:var(--r-space-3);border:1px solid var(--r-line);border-radius:var(--r-radius-md);background:var(--r-surface);color:var(--r-text);font-size:var(--r-text-sm);padding:10px 12px;display:flex}.r-alert>svg{flex:none;width:16px;height:16px;margin-top:2px}.r-alert__body{flex:1;min-width:0}.r-alert--danger{border-color:var(--r-danger-line);background:var(--r-danger-soft);color:var(--r-danger-text)}.r-alert--success{border-color:var(--r-success-line);background:var(--r-success-soft);color:#a7f0c2}.r-alert .r-icon-btn{width:24px;height:24px;color:inherit;margin:-2px -4px -2px 0}@media (hover:hover){.r-alert .r-icon-btn:hover{background:#ffffff0f}}.r-toast-region{right:var(--r-space-5);bottom:var(--r-space-5);z-index:60;align-items:flex-end;gap:var(--r-space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}.r-toast{border:1px solid var(--r-line-strong);border-radius:var(--r-radius-md);background:var(--r-surface-raised);max-width:min(420px,100vw - 32px);box-shadow:var(--r-shadow-pop);color:var(--r-text);font-size:var(--r-text-sm);pointer-events:auto;animation:r-rise .18s var(--r-ease);align-items:center;gap:10px;padding:10px 14px;display:flex}.r-toast>svg{width:16px;height:16px;color:var(--r-text-muted);flex:none}.r-toast--success>svg{color:var(--r-success)}.r-toast--danger{border-color:var(--r-danger-line)}.r-toast--danger>svg{color:var(--r-danger)}@keyframes r-rise{0%{opacity:0;transform:translateY(6px)}}.r-empty{align-items:center;gap:var(--r-space-2);padding:var(--r-space-12) var(--r-space-5);color:var(--r-text-muted);text-align:center;flex-direction:column;display:flex}.r-empty__icon{width:48px;height:48px;margin-bottom:var(--r-space-2);border:1px solid var(--r-line);border-radius:var(--r-radius-lg);background:var(--r-surface);color:var(--r-text-muted);place-items:center;display:grid}.r-empty__icon>svg{width:22px;height:22px}.r-empty__title{color:var(--r-text);font-size:var(--r-text-base);margin:0;font-weight:500}.r-empty__text{max-width:36ch;font-size:var(--r-text-sm);margin:0}.r-empty .r-btn{margin-top:var(--r-space-3)}.r-backdrop{z-index:40;padding:var(--r-space-5);background:var(--r-scrim);animation:r-fade .14s var(--r-ease);place-items:center;display:grid;position:fixed;inset:0}.r-backdrop--top{place-items:start center;padding-top:13vh}@keyframes r-fade{0%{opacity:0}}.r-modal{border:1px solid var(--r-line-strong);border-radius:var(--r-radius-lg);background:var(--r-surface);width:min(460px,100%);max-height:min(680px,100dvh - 40px);box-shadow:var(--r-shadow-overlay);flex-direction:column;display:flex;overflow:hidden}.r-modal--wide{width:min(640px,100%)}.r-modal__header{justify-content:space-between;align-items:center;gap:var(--r-space-3);border-bottom:1px solid var(--r-line);padding:14px 14px 14px 20px;display:flex}.r-modal__header>div{align-items:center;gap:10px;min-width:0;display:flex}.r-modal__header>div>svg{width:18px;height:18px;color:var(--r-text-muted)}.r-modal__body{min-height:0;padding:var(--r-space-5);flex:1;overflow-y:auto}.r-modal__footer{justify-content:flex-end;gap:var(--r-space-2);border-top:1px solid var(--r-line);padding:14px 20px;display:flex}.r-popover{padding:var(--r-space-4);border:1px solid var(--r-line-strong);border-radius:var(--r-radius-md);background:var(--r-surface-raised);box-shadow:var(--r-shadow-pop)}.r-menu{border:1px solid var(--r-line-strong);border-radius:var(--r-radius-md);background:var(--r-surface-raised);min-width:190px;box-shadow:var(--r-shadow-pop);flex-direction:column;padding:5px;display:flex}.r-menu__item{border-radius:var(--r-radius-sm);width:100%;min-height:34px;color:var(--r-text-muted);font-size:var(--r-text-sm);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0 10px;text-decoration:none;display:flex}.r-menu__item>svg{flex:none;width:15px;height:15px}.r-menu__item[aria-selected=true]{color:var(--r-text);background:var(--r-surface-hover)}@media (hover:hover){.r-menu__item:hover{color:var(--r-text);background:var(--r-surface-hover)}}.r-menu__item:focus-visible{outline-offset:-2px}.r-menu__item--danger{color:var(--r-danger)}@media (hover:hover){.r-menu__item--danger:hover{color:var(--r-danger)}}.r-menu__item:disabled{opacity:.45}.r-menu__sep{background:var(--r-line);height:1px;margin:5px -5px}.r-spotlight{border:1px solid var(--r-line-strong);border-radius:var(--r-radius-lg);background:var(--r-surface);width:min(680px,100%);max-height:min(560px,100dvh - 15vh - 20px);box-shadow:var(--r-shadow-overlay);flex-direction:column;display:flex;overflow:hidden}.r-spotlight__field{align-items:center;gap:var(--r-space-3);min-height:58px;padding:0 var(--r-space-4) 0 18px;border-bottom:1px solid var(--r-line);color:var(--r-text-faint);display:flex}.r-spotlight__field>svg{flex:none;width:18px;height:18px}.r-spotlight__input{min-width:0;color:var(--r-text);background:0 0;border:0;flex:1;padding:0;font-size:16px}.r-spotlight__input:focus,.r-spotlight__input:focus-visible{outline:none}.r-spotlight__results{flex:1;min-height:0;padding:6px;overflow-y:auto}.r-spotlight__group{color:var(--r-text-faint);font-size:var(--r-text-xs);padding:10px 12px 4px;font-weight:500}.r-spotlight__item{align-items:center;gap:var(--r-space-3);border-radius:var(--r-radius-md);width:100%;color:var(--r-text);text-align:left;background:0 0;border:0;padding:10px 12px;display:flex}@media (hover:hover){.r-spotlight__item:hover{background:#151515}}.r-spotlight__item[aria-selected=true]{background:var(--r-surface-hover)}.r-spotlight__item:focus-visible{outline-offset:-2px}.r-spotlight__item>svg{width:16px;height:16px;color:var(--r-text-faint);flex:none}.r-spotlight__item[aria-selected=true]>svg{color:var(--r-accent)}.r-spotlight__text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.r-spotlight__title{font-size:var(--r-text-md);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.r-spotlight__sub{color:var(--r-text-faint);font-size:var(--r-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.r-spotlight__meta{color:var(--r-text-faint);font-size:var(--r-text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.r-spotlight__empty{color:var(--r-text-faint);font-size:var(--r-text-sm);text-align:center;margin:0;padding:32px 12px}.r-spotlight__footer{border-top:1px solid var(--r-line-soft);color:var(--r-text-faint);font-size:var(--r-text-xs);flex-wrap:wrap;align-items:center;gap:6px 16px;padding:10px 18px;display:flex}.r-spotlight__footer>span{align-items:center;gap:6px;display:inline-flex}r-colour-picker{display:block}.r-swatches{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.r-swatches--sm{gap:8px}.r-swatch{--r-swatch-size:32px;--r-swatch-radius:50%;width:var(--r-swatch-size);height:var(--r-swatch-size);border-radius:var(--r-swatch-radius);background:var(--swatch,transparent);color:var(--r-text-muted);cursor:pointer;transition:transform var(--r-duration) var(--r-ease);border:0;flex:none;place-items:center;padding:0;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffffff1a}.r-swatches--sm .r-swatch,.r-swatch--sm{--r-swatch-size:24px}.r-swatches--lg .r-swatch,.r-swatch--lg{--r-swatch-size:40px}.r-swatches--square .r-swatch,.r-swatch--square{--r-swatch-radius:7px}.r-swatches--square.r-swatches--sm .r-swatch,.r-swatch--square.r-swatch--sm{--r-swatch-radius:5px}@media (hover:hover){.r-swatch:hover{transform:scale(1.08)}}.r-swatch[aria-checked=true]:after,.r-swatch[aria-pressed=true]:after,.r-swatch--custom[data-checked=true]:after{content:"";border:2px solid var(--r-text);border-radius:calc(var(--r-swatch-radius) + 4px);pointer-events:none;position:absolute;inset:-4px}.r-swatch--square[aria-checked=true]:after,.r-swatches--square .r-swatch[aria-checked=true]:after,.r-swatch--square[aria-pressed=true]:after,.r-swatches--square .r-swatch[aria-pressed=true]:after{border-radius:calc(var(--r-swatch-radius) + 3px)}.r-swatch:focus-visible{outline-offset:5px}.r-swatch--custom{box-shadow:none;border:1px dashed var(--r-line-strong)}.r-swatch--custom[data-checked=true]{border-style:solid;border-color:#0000}.r-swatch--custom>svg{pointer-events:none;width:14px;height:14px}.r-swatch--custom input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.r-swatch--custom:focus-within{outline:var(--r-focus-width) solid var(--r-focus);outline-offset:5px}.r-swatch--custom:has(input:focus:not(:focus-visible)){outline:none}.r-signin{background:var(--r-bg);flex-direction:column;min-height:100dvh;padding:0 clamp(20px,6vw,96px);display:flex}.r-signin__header,.r-signin__footer{justify-content:space-between;align-items:center;gap:var(--r-space-5);width:100%;max-width:1120px;margin:0 auto;display:flex}.r-signin__header{min-height:96px}.r-signin__main{width:100%;max-width:1120px;padding:var(--r-space-12) 0 var(--r-space-16);flex-direction:column;flex:1;justify-content:center;margin:0 auto;display:flex}.r-signin__title{max-width:14ch;margin:0 0 var(--r-space-5);font-family:var(--r-font-display);letter-spacing:-.04em;font-size:clamp(44px,6vw,80px);font-weight:400;line-height:1.02}.r-signin__text{max-width:40ch;color:var(--r-text-muted);margin:0;font-size:16px;line-height:1.8}.r-signin__actions{align-items:center;gap:var(--r-space-3);margin-top:var(--r-space-8);flex-wrap:wrap;display:flex}.r-signin__note{margin:var(--r-space-4) 0 0;color:var(--r-text-faint);font-size:var(--r-text-xs)}.r-signin__error{margin:var(--r-space-4) 0 0;color:var(--r-danger);font-size:var(--r-text-sm)}.r-signin__footer{padding:var(--r-space-6) 0;color:var(--r-text-faint);font-size:var(--r-text-sm)}.r-signin__footer a,.r-signin__header a:not(.r-brand):not(.r-btn){color:var(--r-text-muted);text-decoration:none}@media (hover:hover){.r-signin__footer a:hover,.r-signin__header a:not(.r-brand):not(.r-btn):hover{color:var(--r-text)}}@media (prefers-reduced-motion:reduce){.r-swatch:hover{transform:none}}@media (max-width:760px){.r-topbar{padding:0 var(--r-space-3);gap:var(--r-space-3)}.r-backdrop--top{padding:7vh 12px 12px}.r-toast-region{align-items:stretch;bottom:12px;left:12px;right:12px}.r-toast{max-width:none}.r-spotlight__footer{display:none}.r-signin__header{min-height:80px}.r-signin__actions .r-btn{flex:100%}}:root{--shade-1:#0f0f11;--shade-2:#18181b;--shade-3:#222226;--shade-4:#2b2b30;--r-surface:var(--shade-1);--r-surface-raised:var(--shade-2);--r-surface-hover:var(--shade-3);--r-surface-hover-quiet:var(--shade-1);--r-surface-selected:color-mix(in srgb, var(--r-accent-base) 10%, var(--shade-1));--tint-accent:color-mix(in srgb, var(--r-accent-base) 9%, var(--shade-1));--tint-ok:color-mix(in srgb, #7ee2a8 8%, var(--shade-1));--tint-warn:color-mix(in srgb, #f5c46b 8%, var(--shade-1));--tint-err:color-mix(in srgb, #f6928a 9%, var(--shade-1));--code-bg:var(--shade-1);--code-line:var(--shade-2);--side-width:264px;--toc-width:220px;--article-width:780px;--topbar:60px;--ok:#7ee2a8;--warn:#f5c46b;--err:#f6928a;--hl-keyword:#c9a7ff;--hl-string:#a8e6b8;--hl-number:#f2c879;--hl-type:#8ec5ff;--hl-fn:#f1d7ff;--hl-comment:#7f7f8a;--hl-prop:#d7d7de;--hl-op:#b8b8c2}html{scroll-padding-top:calc(var(--topbar) + 16px)}button,input,textarea,select{border:0}pre code{font:inherit;letter-spacing:inherit}body.is-locked{overflow:hidden}#app{min-height:100vh}.skip{z-index:100;background:var(--r-accent);color:var(--r-on-accent);border-radius:var(--r-radius-sm);padding:8px 12px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.btn{height:var(--r-control-md);border-radius:var(--r-radius-md);background:var(--r-surface);color:var(--r-text);font-size:var(--r-text-md);white-space:nowrap;transition:background var(--r-duration) var(--r-ease), color var(--r-duration) var(--r-ease);justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:500;text-decoration:none;display:inline-flex}.btn svg{flex:none;width:16px;height:16px}.btn:hover{background:var(--r-surface-hover);color:var(--r-text)}.btn:disabled{opacity:.6}.btn--sm{height:var(--r-control-sm);font-size:var(--r-text-sm);padding:0 12px}.btn--lg{height:var(--r-control-lg);font-size:var(--r-text-base);padding:0 22px}.btn--primary{background:var(--r-accent);color:var(--r-on-accent)}.btn--primary:hover{background:var(--r-accent-strong);color:var(--r-on-accent)}.btn--secondary{background:var(--shade-2)}.btn--secondary:hover{background:var(--shade-3)}.btn--ghost{color:var(--r-text-muted);background:0 0}.btn--ghost:hover,.btn--ghost.is-on{background:var(--r-surface-hover);color:var(--r-text)}.btn--run{background:var(--r-accent-soft);color:var(--r-accent-text);height:var(--r-control-sm);font-size:var(--r-text-sm);padding:0 14px}.btn--run:hover{background:color-mix(in srgb, var(--r-accent) 16%, transparent);color:var(--r-text)}.btn--run svg{fill:currentColor;width:14px;height:14px}.icon-btn{border-radius:var(--r-radius-sm);width:30px;height:30px;color:var(--r-text-faint);transition:background var(--r-duration) var(--r-ease), color var(--r-duration) var(--r-ease);background:0 0;border:0;place-items:center;display:inline-grid}.icon-btn svg{width:16px;height:16px}.icon-btn:hover{background:var(--r-surface-hover);color:var(--r-text)}.link-btn{color:var(--r-accent-text);text-underline-offset:.18em;background:0 0;border:0;padding:0;text-decoration:underline}.arrow-link{color:var(--r-accent-text);align-items:center;gap:6px;font-weight:500;text-decoration:none;display:inline-flex}.arrow-link svg{width:16px;height:16px}.arrow-link:hover{color:var(--r-text)}kbd{background:var(--shade-2);border-radius:var(--r-radius-xs);font-family:var(--r-font-mono);font-size:var(--r-text-2xs);color:var(--r-text-muted);padding:1px 6px;line-height:1.5;display:inline-block}.select{height:var(--r-control-sm);border-radius:var(--r-radius-md);background:var(--r-surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a6a6af' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 9px center;appearance:none;font-size:var(--r-text-sm);padding:0 28px 0 10px}.search-field{height:var(--r-control-md);border-radius:var(--r-radius-md);background:var(--r-surface);color:var(--r-text-faint);align-items:center;gap:8px;padding:0 12px;display:flex}.search-field svg{flex:none;width:16px;height:16px}.search-field input{min-width:0;font-size:var(--r-text-md);color:var(--r-text);background:0 0;border:0;outline:0;flex:1}.topbar{z-index:40;height:var(--topbar);background:var(--r-bg);position:sticky;top:0}.topbar__inner{align-items:center;gap:28px;max-width:1440px;height:100%;margin:0 auto;padding:0 24px;display:flex}.brand{color:var(--r-text);align-items:center;gap:9px;text-decoration:none;display:inline-flex}.brand__name{font-family:var(--r-font-display);letter-spacing:var(--r-tracking-display);font-size:22px}.brand:hover{color:var(--r-text)}.logo{border-radius:var(--r-radius-sm);background:var(--r-surface);object-fit:cover;flex:none;display:block}.topnav{gap:4px;display:flex}.topnav__link{border-radius:var(--r-radius-md);color:var(--r-text-muted);font-size:var(--r-text-md);padding:6px 12px;font-weight:500;text-decoration:none}.topnav__link:hover{color:var(--r-text);background:var(--r-surface-hover-quiet)}.topnav__link[aria-current=page]{color:var(--r-accent-text)}.topnav__install{display:none}.topbar__tools{align-items:center;gap:10px;margin-left:auto;display:flex}.search-trigger{height:var(--r-control-sm);border-radius:var(--r-radius-md);background:var(--r-surface);min-width:200px;color:var(--r-text-faint);font-size:var(--r-text-sm);align-items:center;gap:8px;padding:0 8px 0 12px;display:inline-flex}.search-trigger svg{width:15px;height:15px}.search-trigger:hover{color:var(--r-text-muted);background:var(--shade-2)}.search-trigger__kbd{margin-left:auto}.topbar__menu{display:none}.search{z-index:60;background:var(--r-scrim);justify-content:center;align-items:flex-start;padding:10vh 16px 16px;display:flex;position:fixed;inset:0}.search__panel{background:var(--r-surface-raised);border-radius:var(--r-radius-lg);width:min(640px,100%);max-height:76vh;box-shadow:var(--r-shadow-overlay);flex-direction:column;display:flex;overflow:hidden}.search__field{height:56px;color:var(--r-text-faint);align-items:center;gap:10px;padding:0 16px;display:flex}.search__field svg{width:18px;height:18px}.search__field input{color:var(--r-text);background:0 0;border:0;outline:0;flex:1;font-size:16px}.search__results{padding:6px;overflow-y:auto}.search__empty{color:var(--r-text-faint);font-size:var(--r-text-sm);margin:0;padding:18px 12px}.search__result{border-radius:var(--r-radius-md);text-align:left;width:100%;color:var(--r-text-muted);background:0 0;border:0;align-items:flex-start;gap:12px;padding:10px 12px;display:flex}.search__result>svg{width:16px;height:16px;color:var(--r-text-faint);flex:none;margin-top:3px}.search__result.is-selected{background:var(--r-surface-selected)}.search__result.is-selected>svg:first-child{color:var(--r-accent)}.search__text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.search__title{color:var(--r-text);font-size:var(--r-text-md);font-weight:500}.search__in{color:var(--r-text-faint);font-weight:400;font-size:var(--r-text-sm)}.search__snippet{font-size:var(--r-text-sm);color:var(--r-text-faint);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.search__enter{width:14px;height:14px;color:var(--r-text-faint);margin-top:4px}.footer{background:var(--shade-1);margin-top:96px}.footer__inner{flex-wrap:wrap;justify-content:space-between;gap:40px;max-width:1200px;margin:0 auto;padding:48px 24px 64px;display:flex}.footer__brand p{max-width:280px;color:var(--r-text-faint);font-size:var(--r-text-sm);margin:12px 0 0}.footer__cols{flex-wrap:wrap;gap:56px;display:flex}.footer__cols h3{font-size:var(--r-text-sm);color:var(--r-text);margin:0 0 12px;font-weight:600}.footer__cols a{color:var(--r-text-muted);font-size:var(--r-text-sm);padding:3px 0;text-decoration:none;display:block}.footer__cols a:hover{color:var(--r-text)}.docs{grid-template-columns:var(--side-width) minmax(0, 1fr) var(--toc-width);gap:40px;max-width:1440px;margin:0 auto;padding:0 24px;display:grid}.docs--single{grid-template-columns:minmax(0, 1fr) var(--toc-width)}.docs--single .docs__side{display:none}.docs__side,.docs__toc{top:var(--topbar);max-height:calc(100vh - var(--topbar));align-self:start;padding:28px 0 40px;position:sticky;overflow-y:auto}.docs__article{min-width:0;max-width:var(--article-width);width:100%;margin:0 auto;padding:36px 0 24px}.docs-loading{min-height:70vh}[data-navigated] .docs__article{animation:.16s ease-out docs-in}@keyframes docs-in{0%{opacity:.4}}@media (prefers-reduced-motion:reduce){[data-navigated] .docs__article{animation:none}}.route-progress{top:var(--topbar);z-index:40;background:var(--r-accent);transform-origin:0;opacity:0;pointer-events:none;width:100%;height:2px;transition:opacity .2s .12s;position:fixed;left:0}.route-progress.is-busy{opacity:1;transition:none;animation:2.4s cubic-bezier(.1,.6,.2,1) forwards route-progress}@keyframes route-progress{0%{transform:scaleX(0)}to{transform:scaleX(.85)}}.sidenav{flex-direction:column;gap:18px;padding-right:8px;display:flex}.sidenav__area{font-family:var(--r-font-display);color:var(--r-text);letter-spacing:var(--r-tracking-display);padding:0 10px;font-size:20px;text-decoration:none}.sidenav__label{font-size:var(--r-text-sm);color:var(--r-text-faint);padding:0 10px 6px;font-weight:600}.sidenav__item{border-radius:var(--r-radius-sm);color:var(--r-text-muted);font-size:var(--r-text-sm);justify-content:space-between;align-items:center;gap:8px;padding:5px 10px;line-height:1.4;text-decoration:none;display:flex}.sidenav__item:hover{color:var(--r-text);background:var(--r-surface-hover-quiet)}.sidenav__item[aria-current=page]{color:var(--r-accent-text);background:var(--r-surface-selected)}.sidenav__meta{font-size:var(--r-text-xs);color:var(--r-text-faint);flex:none}.sidenav__check{width:14px;height:14px;color:var(--ok);flex:none}.toc{flex-direction:column;gap:2px;padding-left:14px;display:flex}.toc__label{font-size:var(--r-text-sm);color:var(--r-text-faint);margin-bottom:8px;font-weight:600}.toc a{color:var(--r-text-faint);font-size:var(--r-text-sm);padding:3px 0;line-height:1.4;text-decoration:none}.toc a:hover{color:var(--r-text-muted)}.toc a.is-active{color:var(--r-accent-text)}.crumb{font-size:var(--r-text-sm);color:var(--r-text-faint);margin-bottom:10px;text-decoration:none;display:inline-block}.crumb:hover{color:var(--r-accent-text)}.lesson-tag{font-size:var(--r-text-xs);color:var(--r-accent-text);margin:0 0 10px 12px;display:inline-block}.docs__title{font-family:var(--r-font-display);font-weight:400;font-size:var(--r-display-md);letter-spacing:var(--r-tracking-display);margin:0 0 14px;line-height:1.1}.lede{font-size:var(--r-text-lg);color:var(--r-text-muted);margin:0 0 28px;line-height:1.55}.pkg-import{flex-wrap:wrap;align-items:center;gap:10px;margin:-8px 0 28px;display:flex}.pkg-import code{border-radius:var(--r-radius-md);background:var(--code-bg);padding:6px 12px;font-size:13px}.pkg-import__note{font-size:var(--r-text-sm);color:var(--r-text-faint)}.docs__article,.prose{font-size:var(--r-text-base);line-height:1.7}.docs__article p,.docs__article li{color:#d9d9de}.docs__article>p,.docs__article section>p{margin:0 0 16px}.heading{scroll-margin-top:calc(var(--topbar) + 16px);position:relative}h2.heading{font-family:var(--r-font-display);font-weight:400;font-size:var(--r-display-xs);letter-spacing:-.015em;margin:48px 0 14px;line-height:1.2}h3.heading{margin:32px 0 10px;font-size:18px;font-weight:600}h4.heading{margin:24px 0 8px;font-size:15px;font-weight:600}.heading__anchor{color:var(--r-text-faint);opacity:0;transition:opacity var(--r-duration);margin-left:8px;text-decoration:none}.heading:hover .heading__anchor,.heading__anchor:focus-visible{opacity:1}.docs__article ul,.docs__article ol{margin:0 0 16px;padding-left:22px}.docs__article li{margin:4px 0}.docs__article li>p{margin:0 0 6px}.docs__article li::marker{color:var(--r-text-faint)}.docs__article :not(pre)>code,.prose :not(pre)>code{border-radius:var(--r-radius-xs);background:var(--shade-2);color:#e9dcef;white-space:break-spaces;padding:1px 5px;font-size:.86em}.docs__article a code{color:var(--r-accent-text)}.docs__article hr{border:0;margin:36px 0}.docs__article blockquote{border-radius:var(--r-radius-md);background:var(--shade-1);color:var(--r-text-muted);margin:0 0 16px;padding:12px 16px}.table-wrap{border-radius:var(--r-radius-md);background:var(--shade-1);margin:0 0 20px;overflow-x:auto}.docs__article table{border-collapse:collapse;width:100%;font-size:var(--r-text-sm);line-height:1.55}.docs__article th,.docs__article td{text-align:left;vertical-align:top;padding:9px 12px}.docs__article th{color:var(--r-text);background:var(--shade-2);font-weight:600}.docs__article tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--shade-2) 45%, var(--shade-1))}.docs__article td code{white-space:nowrap;background:var(--shade-3)!important}.callout{border-radius:var(--r-radius-lg);background:var(--tint-accent);margin:0 0 20px;padding:14px 16px}.callout--tip,.callout--hint{background:var(--tint-ok)}.callout--warning{background:var(--tint-warn)}.callout--note,.callout--go,.callout--js,.callout--python{background:var(--shade-1)}.callout code{background:var(--shade-3)!important}.callout>:last-child{margin-bottom:0}.callout p{margin:0 0 8px}.callout__title{font-size:var(--r-text-sm);color:var(--r-text);align-items:center;gap:8px;margin-bottom:6px;font-weight:600;display:flex}.callout__title svg{width:16px;height:16px;color:var(--r-accent)}.callout--tip .callout__title svg{color:var(--ok)}.callout--warning .callout__title svg{color:var(--warn)}.details{border-radius:var(--r-radius-md);margin:0 0 20px;padding:0 16px}.details summary{cursor:pointer;color:var(--r-text);padding:12px 0;font-weight:500}.details[open]{padding-bottom:8px}.hljs{color:var(--r-text)}.hljs-keyword,.hljs-meta{color:var(--hl-keyword)}.hljs-string,.hljs-regexp,.hljs-subst{color:var(--hl-string)}.hljs-subst{color:var(--r-text)}.hljs-number,.hljs-literal{color:var(--hl-number)}.hljs-type,.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:var(--hl-type)}.hljs-title,.hljs-title.function_,.hljs-title.function_.invoke__{color:var(--hl-fn)}.hljs-comment,.hljs-quote{color:var(--hl-comment);font-style:italic}.hljs-property,.hljs-attr,.hljs-variable{color:var(--hl-prop)}.hljs-operator,.hljs-punctuation{color:var(--hl-op)}.hljs-tag,.hljs-name{color:var(--hl-keyword)}.hljs-attribute{color:var(--hl-type)}pre{font-family:var(--r-font-mono);tab-size:2;margin:0;font-size:13.5px;line-height:1.6}.codeblock,.example{border-radius:var(--r-radius-lg);background:var(--code-bg);margin:0 0 22px;position:relative;overflow:hidden}.codeblock pre{padding:14px 16px;overflow-x:auto}.codeblock__bar,.example__bar{justify-content:space-between;align-items:center;gap:8px;min-height:38px;padding:0 6px 0 14px;display:flex}.codeblock__copy{opacity:0;transition:opacity var(--r-duration);position:absolute;top:6px;right:6px}.codeblock:hover .codeblock__copy,.codeblock__copy:focus-within{opacity:1}.codeblock--output pre{color:var(--r-text-muted)}.example__name{font-family:var(--r-font-mono);color:var(--r-text-faint);font-size:12px}.example__tools{align-items:center;gap:2px;display:flex}.example__status{font-size:var(--r-text-xs);color:var(--ok);margin-right:6px}.example__status.is-error{color:var(--err)}.example__code{cursor:text;outline:none;padding:14px 16px;overflow-x:auto}.example__code:focus-visible{box-shadow:inset 0 0 0 2px var(--r-focus)}.example[data-mode=fragment] .example__code{cursor:auto}.example__actions{align-items:center;gap:6px;padding:8px 10px;display:flex}.example__actions .btn--ghost{height:var(--r-control-sm);font-size:var(--r-text-sm);padding:0 10px}.example__hint{font-size:var(--r-text-xs);color:var(--r-text-faint);margin-left:auto}.example--compact .example__hint{display:none}.tabs{align-items:center;gap:2px;display:flex;overflow-x:auto}.tab{border-radius:var(--r-radius-sm);height:30px;color:var(--r-text-faint);font-family:var(--r-font-mono);white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;padding:0 10px;font-size:12px;display:inline-flex}.tab svg{width:14px;height:14px}.tab:hover{color:var(--r-text-muted)}.tab[aria-selected=true]{color:var(--r-text);background:var(--r-surface-hover)}.tab-wrap{align-items:center;display:inline-flex}.tab__close{width:20px;height:20px;color:var(--r-text-faint);background:0 0;border:0;border-radius:4px;place-items:center;margin-left:-4px;display:grid}.tab__close svg{width:12px;height:12px}.tab__close:hover{color:var(--r-text);background:var(--r-surface-hover)}.tab__dot{background:var(--err);border-radius:50%;width:6px;height:6px}.editor{background:var(--code-bg);max-height:70vh;display:flex;overflow:auto}.editor__gutter{z-index:2;background:var(--code-bg);font-family:var(--r-font-mono);text-align:right;color:#3e3e46;-webkit-user-select:none;user-select:none;flex-direction:column;flex:none;padding:14px 8px 14px 12px;font-size:13.5px;line-height:1.6;display:flex;position:sticky;left:0}.editor__ln--error{color:var(--err)}.editor__ln--warning{color:var(--warn)}.editor__body{flex:1;min-width:max-content;display:grid}.editor__layer,.editor__input{font-family:var(--r-font-mono);letter-spacing:0;tab-size:2;white-space:pre;border:0;grid-area:1/1;margin:0;padding:14px 16px 14px 4px;font-size:13.5px;line-height:1.6;overflow:hidden}.editor__marks{color:#0000;pointer-events:none}.squiggle{-webkit-text-decoration:underline wavy var(--err);text-decoration:underline wavy var(--err);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-underline-offset:3px;background:#f6928a14}.squiggle--warning{-webkit-text-decoration-color:var(--warn);text-decoration-color:var(--warn);background:#f5c46b0f}.editor__input{resize:none;color:#0000;caret-color:var(--r-accent);min-height:calc(var(--lines) * 1.6em + 28px);height:calc(var(--lines) * 1.6 * 13.5px + 28px);background:0 0;outline:none;width:100%}.editor__input::selection{background:color-mix(in srgb, var(--r-accent) 30%, transparent);color:#0000}.diagnostics{font-size:var(--r-text-sm);margin:0;padding:6px 10px;list-style:none}.diagnostic{gap:10px;padding:6px 0;line-height:1.5;display:flex}.diagnostic__where{min-width:44px;color:var(--err);font-family:var(--r-font-mono);background:#1d1215;border:0;border-radius:4px;flex:none;height:22px;padding:0 6px;font-size:12px}.diagnostic--warning .diagnostic__where{color:var(--warn);background:#1d1910}.diagnostic__where:not(:disabled):hover{filter:brightness(1.3)}.diagnostic__body{min-width:0}.diagnostic__message{color:var(--r-text);overflow-wrap:anywhere}.diagnostic__code{font-family:var(--r-font-mono);color:var(--r-text-faint);margin-left:8px;font-size:11px}.diagnostic__note{font-size:var(--r-text-xs);margin:2px 0 0;color:var(--r-text-faint)!important}.output{background:var(--shade-2);padding:10px 14px 12px}.output .diagnostics{border-top:0;padding:0}.output__label{font-size:var(--r-text-sm);color:var(--r-text-faint);align-items:center;gap:8px;margin-bottom:6px;font-weight:600;display:flex}.output__hint{font-weight:400}.output__exit{color:var(--err);text-transform:none;letter-spacing:0;font-weight:500}.output__text{white-space:pre-wrap;overflow-wrap:anywhere;color:#dcdce2;max-height:360px;overflow-y:auto}.output--error .output__text{color:var(--err)}.output__empty,.output__note{font-size:var(--r-text-sm);margin:0;color:var(--r-text-faint)!important}.output__note{margin-top:6px}.output__warnings{font-size:var(--r-text-sm);color:var(--r-text-faint);margin-top:8px}.output__warnings summary{cursor:pointer;color:var(--warn)}.go-view{padding:10px 14px 12px}.go-view pre{max-height:420px;font-size:12.5px;overflow:auto}.quiz{border-radius:var(--r-radius-lg);background:var(--r-surface);margin:28px 0;padding:18px 18px 12px}.quiz__label,.exercise__kind{font-size:var(--r-text-sm);color:var(--r-accent-text);align-items:center;gap:6px;margin-bottom:8px;font-weight:600;display:flex}.quiz__label svg{width:14px;height:14px}.quiz>p{margin:0 0 12px}.quiz__options{gap:8px;margin:12px 0;display:grid}.quiz__option{border-radius:var(--r-radius-md);background:var(--shade-2);text-align:left;color:var(--r-text);font-size:var(--r-text-md);transition:background var(--r-duration);align-items:center;gap:12px;padding:10px 12px;display:flex}.quiz__option:not([aria-disabled=true]):hover{background:var(--shade-3)}.quiz__option[aria-disabled=true]{cursor:default}.quiz__mark{background:var(--shade-3);width:24px;height:24px;color:var(--r-text-muted);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:600;display:grid}.quiz__mark svg{width:18px;height:18px}.quiz__option.is-right{background:color-mix(in srgb, #7ee2a8 13%, var(--shade-1))}.quiz__option.is-right .quiz__mark{color:var(--ok);background:0 0}.quiz__option.is-wrong{background:color-mix(in srgb, #f6928a 13%, var(--shade-1))}.quiz__option.is-wrong .quiz__mark{color:var(--err);background:0 0}.quiz__retry{font-size:var(--r-text-sm);color:var(--r-text-muted)!important}.quiz__explain{border-radius:var(--r-radius-md);background:var(--shade-2);font-size:var(--r-text-md);margin-bottom:6px;padding:12px 14px}.quiz__explain p{margin:0 0 8px}.quiz__explain>:last-child{margin-bottom:0}.quiz__yes{color:var(--ok)}.exercise{border-radius:var(--r-radius-lg);background:var(--r-surface);transition:background .3s var(--r-ease);margin:32px 0;padding:20px}.exercise.is-solved{background:var(--tint-ok)}.exercise__head{gap:12px;margin-bottom:8px;display:flex}.exercise__badge{border-radius:var(--r-radius-md);background:var(--shade-2);width:30px;height:30px;color:var(--r-accent-text);flex:none;place-items:center;display:grid}.exercise.is-solved .exercise__badge{color:var(--ok)}.exercise__badge svg{width:18px;height:18px}.exercise__kind{margin-bottom:2px}.exercise.is-solved .exercise__kind{color:var(--ok)}.exercise__title{margin:0;font-size:18px;font-weight:600}.exercise>p{margin:0 0 14px}.exercise__expect{border-radius:var(--r-radius-md);margin:0 0 14px;padding:10px 14px}.exercise__result{font-size:var(--r-text-md);align-items:flex-start;gap:8px;margin:0 0 12px;display:flex;color:var(--r-text-muted)!important}.exercise__result svg{flex:none;width:18px;height:18px;margin-top:2px}.exercise__result.is-pass{color:var(--ok)!important}.exercise__result.is-fail{color:var(--warn)!important}.exercise__buttons{flex-wrap:wrap;gap:6px;display:flex}.exercise__hint{background:var(--shade-2);border-radius:var(--r-radius-md);margin:0 0 12px;padding:10px 14px}.exercise__hint p{margin:0 0 6px}.exercise__hint-label{font-size:var(--r-text-xs);color:var(--r-accent-text);font-weight:600}.exercise__help .example{margin-top:12px}.steps{counter-reset:none;margin:24px 0;list-style:none;padding:0!important}.step{gap:16px;padding-bottom:8px;display:flex;position:relative;margin:0!important}.step__number{border-radius:var(--r-radius-md);background:var(--shade-2);width:31px;height:31px;color:var(--r-accent-text);font-family:var(--r-font-mono);font-size:var(--r-text-sm);flex:none;place-items:center;font-weight:600;display:grid}.step__body{flex:1;min-width:0}.step__title{margin:4px 0 10px;font-size:17px;font-weight:600}.cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:0 0 24px;display:grid}.card{border-radius:var(--r-radius-lg);background:var(--r-surface);color:var(--r-text);transition:background var(--r-duration);flex-direction:column;gap:6px;padding:16px 40px 16px 16px;text-decoration:none;display:flex;position:relative}.card:hover{background:var(--r-surface-hover);color:var(--r-text)}.card__title{align-items:center;gap:8px;font-weight:600;display:flex}.card__tag{font-family:var(--r-font-mono);color:var(--r-accent-text);font-size:11px;font-weight:400}.card__text{font-size:var(--r-text-sm);color:var(--r-text-muted);line-height:1.5}.card__arrow{width:16px;height:16px;color:var(--r-text-faint);position:absolute;top:17px;right:14px}.card:hover .card__arrow{color:var(--r-accent)}.lessons__progress{font-size:var(--r-text-sm);color:var(--r-text-muted);align-items:center;gap:14px;margin:8px 0;display:flex}.lessons__bar{border-radius:var(--r-radius-xs);background:var(--r-surface-hover);flex:1;max-width:320px;height:6px;overflow:hidden}.lessons__bar span{background:var(--r-accent);border-radius:inherit;height:100%;transition:width .4s var(--r-ease);display:block}.lessons__list{gap:6px;list-style:none;display:grid;margin:0!important;padding:0!important}.lessons__list li{margin:0!important}.lesson{border-radius:var(--r-radius-md);color:var(--r-text);transition:background var(--r-duration);gap:12px;padding:12px 14px;text-decoration:none;display:flex}.lesson:hover{background:var(--r-surface);color:var(--r-text)}.lesson__mark svg{width:18px;height:18px;color:var(--r-text-faint);margin-top:2px}.lesson.is-done .lesson__mark svg{color:var(--ok)}.lesson__text{flex-direction:column;gap:2px;display:flex}.lesson__title{font-weight:500}.lesson__desc{font-size:var(--r-text-sm);color:var(--r-text-muted)}.complete{border-radius:var(--r-radius-lg);background:var(--r-surface);flex-wrap:wrap;align-items:center;gap:14px;margin:48px 0 0;padding:18px;display:flex}.complete.is-done{background:var(--tint-ok)}.complete.is-done .btn{color:var(--ok)}.complete__count{font-size:var(--r-text-sm);color:var(--r-text-faint)}.pkgs__filter{max-width:460px;margin:0 0 8px}.pkgs__group h2.heading{margin-top:40px}.pkgs__blurb{color:var(--r-text-muted)!important;margin:-6px 0 14px!important}.pkgs__grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.pkg{border-radius:var(--r-radius-md);background:var(--r-surface);transition:background var(--r-duration);flex-direction:column;gap:4px;padding:12px 14px;text-decoration:none;display:flex}.pkg:hover{background:var(--r-surface-hover)}.pkg__name{font-family:var(--r-font-mono);color:var(--r-accent-text);font-size:14px;background:0 0!important;border:0!important;padding:0!important}.pkg__desc{font-size:var(--r-text-sm);color:var(--r-text-muted);line-height:1.45}.api{margin-top:8px}.api__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 0 8px;display:flex}.api__count{font-size:var(--r-text-sm);color:var(--r-text-faint)!important;margin:0!important}.api__filter{width:240px;height:var(--r-control-sm)}.api__group{scroll-margin-top:calc(var(--topbar) + 16px);margin:32px 0 6px;padding-bottom:8px;font-size:15px;font-weight:600}.api__group code{color:var(--hl-type);font-size:14px;background:0 0!important;border:0!important;padding:0!important}.api__member{scroll-margin-top:calc(var(--topbar) + 16px);padding:14px 0}.api__member:target,.api__member.is-target{border-radius:var(--r-radius-md);background:var(--tint-accent);margin:0 -14px;padding-left:14px;padding-right:14px}.api__sig{align-items:baseline;gap:8px;display:flex;position:relative}.api__sig code{font-family:var(--r-font-mono);overflow-wrap:anywhere;font-size:13.5px;white-space:normal!important;background:0 0!important;border:0!important;padding:0!important}.api__link{color:var(--r-text-faint);opacity:0;text-decoration:none;position:absolute;left:-18px}.api__member:hover .api__link{opacity:1}.api__doc{font-size:var(--r-text-md);margin-top:6px;line-height:1.6}.api__doc p{color:var(--r-text-muted)!important;margin:0 0 8px!important}.api__code{border-radius:var(--r-radius-md);background:var(--code-bg);margin:4px 0 10px;padding:10px 12px;font-size:12.5px;overflow-x:auto}.api__deprecated{font-size:var(--r-text-sm);color:var(--warn)!important;margin:6px 0 0!important}.api__member.is-deprecated .api__sig code{text-decoration:line-through;-webkit-text-decoration-color:var(--r-text-faint);text-decoration-color:var(--r-text-faint)}.api__none{font-size:var(--r-text-sm);color:var(--r-text-faint)!important}.install{border-radius:var(--r-radius-md);background:var(--code-bg);max-width:100%;font-family:var(--r-font-mono);align-items:center;gap:10px;padding:6px 6px 6px 14px;font-size:13.5px;display:flex}.install code{white-space:nowrap;min-width:0;color:var(--r-text);flex:1;overflow-x:auto;background:0 0!important;border:0!important;padding:0!important}.install__prompt{color:var(--r-accent);-webkit-user-select:none;user-select:none}.pager{grid-template-columns:1fr 1fr;gap:12px;margin:48px 0 20px;display:grid}.pager__link{border-radius:var(--r-radius-lg);background:var(--shade-1);transition:background var(--r-duration);flex-direction:column;gap:4px;padding:14px 16px;text-decoration:none;display:flex}.pager__link:hover{background:var(--shade-2)}.pager__link--next{text-align:right;grid-column:2;align-items:flex-end}.pager__dir{font-size:var(--r-text-xs);color:var(--r-text-faint);align-items:center;gap:6px;display:inline-flex}.pager__dir svg{width:14px;height:14px}.pager__title{color:var(--r-text);font-weight:500}.page-links{flex-wrap:wrap;gap:8px 20px;display:flex}.edit-link{font-size:var(--r-text-sm);color:var(--r-text-faint);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.edit-link svg{width:14px;height:14px}.edit-link:hover{color:var(--r-accent-text)}.notfound{text-align:center;max-width:640px;margin:0 auto;padding:96px 24px}.notfound__links{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.home{width:min(100%,76rem);margin:0 auto;padding:72px clamp(16px,4vw,40px) 96px}.home-hero{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:start;gap:clamp(2rem,5vw,4.5rem);display:grid}.home-hero__copy,.home-hero__code{min-width:0}.home-hero__title{font-family:var(--r-font-display);letter-spacing:-.045em;margin:0 0 20px;font-size:clamp(3rem,6.4vw,5rem);font-weight:400;line-height:.94}.home-hero__lede{max-width:32rem;color:var(--r-text-muted);margin:0;font-size:clamp(1rem,1.25vw,1.08rem);line-height:1.7}.home-actions{flex-wrap:wrap;gap:8px;margin-top:32px;display:flex}.home-install{grid-template-columns:minmax(0,1fr);gap:8px;max-width:32rem;margin-top:24px;display:grid}.home-install .install{margin:0}.home-meta{color:var(--r-text-faint);font-size:var(--r-text-xs);margin:0}.home-meta a{color:var(--r-text-muted);text-decoration:none}.home-meta a:hover{color:var(--r-text)}.home-hero__code .example{margin:0}.home-note{color:var(--r-text-faint);font-size:var(--r-text-xs);margin:10px 2px 0}.home-section{margin-top:clamp(4rem,8vw,7rem)}.home-section__head{gap:12px;max-width:47rem;margin-bottom:32px;display:grid}.home-title{font-family:var(--r-font-display);letter-spacing:-.03em;margin:0;font-size:clamp(1.9rem,3.6vw,2.8rem);font-weight:400;line-height:1.08}.home-lede{max-width:44rem;color:var(--r-text-muted);font-size:var(--r-text-md);margin:0;line-height:1.7}.home p>code{border-radius:var(--r-radius-xs);background:var(--r-surface);color:var(--r-text);font-family:var(--r-font-mono);padding:1px 5px;font-size:.86em}.spec{gap:8px;display:grid}.spec__row{border-radius:var(--r-radius-xl);background:var(--shade-1);grid-template-columns:minmax(10rem,.34fr) minmax(0,1fr);align-items:baseline;gap:clamp(1.5rem,4vw,4rem);padding:24px 28px;display:grid}.spec__tag{color:var(--r-accent-text);font-family:var(--r-font-mono);font-size:var(--r-text-xs);white-space:nowrap}.spec__body h3{font-size:var(--r-text-lg);margin:0;font-weight:600}.spec__body p{max-width:40rem;color:var(--r-text-muted);font-size:var(--r-text-md);margin:7px 0 0;line-height:1.7}.belief{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(1.5rem,4vw,3.5rem);padding:32px 0;display:grid}.belief__copy{min-width:0}.belief__copy .spec__tag{margin-bottom:8px;display:block}.belief h3{font-size:var(--r-text-lg);margin:0 0 8px;font-weight:600}.belief p{color:var(--r-text-muted);font-size:var(--r-text-md);margin:0;line-height:1.7}.belief__code{min-width:0}.belief__code .example{margin:0}.segmented{border-radius:var(--r-radius-md);background:var(--r-surface);flex-wrap:wrap;gap:2px;max-width:100%;margin-bottom:24px;padding:3px;display:inline-flex}.segmented__item{border-radius:var(--r-radius-sm);color:var(--r-text-muted);font:inherit;font-size:var(--r-text-sm);white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:6px 12px;font-weight:500}.segmented__item:hover{color:var(--r-text)}.segmented__item[aria-selected=true]{background:var(--r-surface-hover);color:var(--r-text)}.showcase{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(1.5rem,4vw,3.5rem);display:grid}.showcase__copy h3{font-size:var(--r-text-lg);margin:0 0 8px;font-weight:600}.showcase__copy p{color:var(--r-text-muted);font-size:var(--r-text-md);margin:0 0 16px;line-height:1.7}.showcase__code{min-width:0}.showcase__code .example{margin:0}.split{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(1.5rem,4vw,3.5rem);display:grid}.split .home-section__head{margin-bottom:16px}.commands{border-radius:var(--r-radius-lg);background:var(--code-bg);margin:0;overflow-x:auto}.commands__body{font-family:var(--r-font-mono);gap:2px;padding:16px;font-size:13px;line-height:1.7;display:grid}.commands__line{flex-wrap:wrap;column-gap:14px;display:flex}.commands__prompt{color:var(--r-accent-text);-webkit-user-select:none;user-select:none}.commands__what{color:var(--hl-comment)}.stdlib__names{flex-wrap:wrap;gap:4px 16px;display:flex}.stdlib__names a{color:var(--r-text);font-family:var(--r-font-mono);font-size:var(--r-text-sm);text-decoration:none}.stdlib__names a:hover{color:var(--r-accent-text)}.starts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.start{border-radius:var(--r-radius-xl);background:var(--r-surface);min-width:0;color:var(--r-text);transition:background var(--r-duration) var(--r-ease);flex-direction:column;gap:8px;padding:20px;text-decoration:none;display:flex}.start:hover{background:var(--r-surface-hover);color:var(--r-text)}.start h3{font-size:var(--r-text-base);margin:0;font-weight:600}.start p{color:var(--r-text-muted);font-size:var(--r-text-sm);flex:1;margin:0;line-height:1.65}.start .arrow-link{font-size:var(--r-text-sm);margin-top:8px}@media (max-width:1000px){.home-hero{grid-template-columns:minmax(0,1fr)}.home-hero__lede{max-width:38rem}}@media (max-width:760px){.home{padding-top:40px}.spec__row,.belief,.showcase,.split,.starts{grid-template-columns:minmax(0,1fr)}.spec__row{gap:8px}.belief{gap:16px}}@media (max-width:560px){.home-hero__title{font-size:clamp(2.7rem,14vw,4rem)}.home-install,.home-hero__lede{max-width:none}}.playground{height:calc(100vh - var(--topbar));flex-direction:column;max-width:1600px;min-height:560px;margin:0 auto;padding:0 24px 24px;display:flex}.playground+.footer,.shell--wide .playground~.footer{margin-top:0}.playground__bar{flex-wrap:wrap;align-items:center;gap:12px;padding:14px 0;display:flex}.playground__title{font-family:var(--r-font-display);margin:0 8px 0 0;font-size:26px;font-weight:400}.playground__state{font-size:var(--r-text-xs);color:var(--r-text-faint)}.playground__state.is-ready{color:var(--ok)}.playground__state.is-failed{color:var(--err)}.playground__actions{gap:6px;margin-left:auto;display:flex}.playground__actions .btn{height:var(--r-control-sm);font-size:var(--r-text-sm)}.playground__main{flex:1;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:14px;min-height:0;display:grid}.playground__editor,.playground__side{border-radius:var(--r-radius-lg);background:var(--code-bg);flex-direction:column;min-height:0;display:flex;overflow:hidden}.playground__editor>.tabs,.playground__side>.tabs{background:var(--shade-2);padding:4px 6px}.playground__editor .editor{flex:1;max-height:none}.playground__pane{flex:1;padding:14px;overflow:auto}.playground__pane .diagnostics{border:0;padding:0}.playground__go{font-size:12.5px}.playground__stdin{font-size:var(--r-text-sm);color:var(--r-text-faint);margin-top:16px}.playground__stdin textarea{border-radius:var(--r-radius-sm);background:var(--r-surface);width:100%;min-height:70px;font-family:var(--r-font-mono);margin-top:8px;padding:8px;font-size:13px;display:block}.tab--add svg{width:14px;height:14px}@media (max-width:1180px){.docs{grid-template-columns:var(--side-width) minmax(0, 1fr)}.docs__toc{display:none}.docs--single{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.topbar__inner{gap:12px;padding:0 16px}.topnav{top:var(--topbar);background:var(--shade-1);flex-direction:column;padding:8px 12px 14px;display:none;position:absolute;left:0;right:0}.topnav.is-open{display:flex}.topnav__link{padding:10px 12px;font-size:16px}.topnav__install{display:block}.topbar__cta{display:none}.topbar__menu{display:inline-grid}.search-trigger{min-width:0}.search-trigger__text,.search-trigger__kbd{display:none}.docs{grid-template-columns:minmax(0,1fr);padding:0 16px}.docs__side{order:3;max-height:none;padding:24px 0;position:static}.docs__article{padding-top:24px}.docs__title{font-size:var(--r-display-sm)}.playground{height:auto;padding:0 16px 16px}.playground__main{grid-template-columns:minmax(0,1fr)}.playground__editor .editor{min-height:320px}.playground__side{min-height:260px}.pager{grid-template-columns:minmax(0,1fr)}.pager__link--next{grid-column:1}}@media (max-width:560px){.example__hint{display:none}.exercise{padding:16px 14px}.footer__cols{gap:32px}}.docs--project{grid-template-columns:var(--side-width) minmax(0, 1fr)}.docs--project .docs__toc{display:none}.docs--project .docs__article{max-width:1240px}.project__hero{max-width:var(--article-width)}.project__meta{font-size:var(--r-text-sm);color:var(--r-text-muted);margin:-4px 0 20px}.project__meta a code{color:var(--r-accent)}.project__top{gap:20px;display:grid}.project__intro>:last-child{margin-bottom:0}.project__result{border-radius:var(--r-radius-lg);background:var(--shade-1);margin:0;padding:12px 16px 14px}.project__result img{border-radius:var(--r-radius-md);width:100%;display:block}.project__result .output__text{max-height:260px;overflow:auto}.project__rail{border-radius:var(--r-radius-lg);background:var(--shade-1);margin:28px 0 8px;padding:14px 16px 10px}.project__progress{background:var(--shade-3);border-radius:2px;height:4px;margin-bottom:10px;overflow:hidden}.project__progress span{background:var(--ok);height:100%;transition:width var(--r-duration) var(--r-ease);display:block}.project__rail ol{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:2px 12px;margin:0;padding:0;list-style:none;display:grid}.project__rail li{margin:0}.project__rail a{border-radius:var(--r-radius-md);font-size:var(--r-text-sm);color:var(--r-text-muted);align-items:center;gap:10px;padding:6px 8px;text-decoration:none;display:flex}.project__rail a:hover{background:var(--shade-2);color:var(--r-text)}.project__dot{background:var(--shade-3);width:22px;height:22px;color:var(--r-text);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:600;display:inline-grid}.project__dot svg{width:13px;height:13px}.project__rail li.is-done .project__dot{background:var(--tint-ok);color:var(--ok)}.pstep{scroll-margin-top:var(--topbar);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:36px;padding:44px 0 8px;display:grid}.pstep--text{max-width:var(--article-width);grid-template-columns:minmax(0,1fr)}.pstep__number{font-size:var(--r-text-sm);color:var(--r-accent);align-items:center;gap:10px;margin-bottom:4px;font-weight:600;display:flex}.pstep__done{text-transform:none;letter-spacing:0;color:var(--ok);align-items:center;gap:4px;display:inline-flex}.pstep__done svg{width:13px;height:13px}.pstep__title{font-family:var(--r-font-display);margin:0 0 14px;font-size:1.6rem;font-weight:400;line-height:1.2}.pstep__code{top:calc(var(--topbar) + 16px);max-height:calc(100vh - var(--topbar) - 32px);border-radius:var(--r-radius-lg);align-self:start;position:sticky;overflow-y:auto}.pstep__code .example{margin-bottom:8px;overflow:visible}.pstep__code .example__bar,.pstep__code .example__actions{z-index:2;background:var(--code-bg);position:sticky}.pstep__code .example__bar{border-radius:var(--r-radius-lg) var(--r-radius-lg) 0 0;top:0}.pstep__code .example__actions{bottom:0}.pstep__legend{font-size:var(--r-text-xs);color:var(--r-text-faint);margin:0 0 8px;padding-left:4px}.example__code{position:relative}.example__code code{z-index:1;position:relative}.example__marks{pointer-events:none;position:absolute;top:14px;left:0;right:0}.example__mark{background:color-mix(in srgb, var(--r-accent-base) 15%, var(--code-bg));height:1.6em;position:absolute;left:0;right:0}.tab--try{color:var(--r-text-faint)}@media (max-width:1180px){.pstep{max-width:var(--article-width);grid-template-columns:minmax(0,1fr);gap:16px}.pstep__code{max-height:none;position:static;overflow:visible}}@media (max-width:900px){.docs--project{grid-template-columns:minmax(0,1fr)}}[tabindex="-1"]:focus{outline:none}
