@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-cyrillic-ext-wght-normal.1o60yhwqd7ueg.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-cyrillic-wght-normal.0n0q_nh7u2mrm.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-vietnamese-wght-normal.0nt7ek_nfk5a4.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-latin-ext-wght-normal.39q78sztp1ci5.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-latin-wght-normal.20f3xrkj613ah.woff2)format("woff2-variations");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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-mono-cyrillic-ext-wght-normal.2ij5maosbedmv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-mono-cyrillic-wght-normal.33c6-jfmyetfr.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-mono-symbols2-wght-normal.0peao-xekk45v.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-mono-vietnamese-wght-normal.3lyzf0uofk1_2.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-mono-latin-ext-wght-normal.18_jyrw-ln1dm.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-mono-latin-wght-normal.1t7tphccnfzmb.woff2)format("woff2-variations");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{--background:#fff;--foreground:#16181d;--card:#fff;--card-foreground:#16181d;--popover:var(--card);--popover-foreground:var(--card-foreground);--sidebar:#f4f5f7;--sidebar-foreground:#16181d;--primary:#4353d9;--primary-foreground:#fff;--border:#e3e5ea;--ring:var(--primary);--destructive:#d33b3b;--destructive-foreground:#fff;--success:#15803d;--warning:#b45309;--kind-folder:var(--primary);--kind-image:#0e9384;--shadow-pop:0 10px 32px -8px #1012182e, 0 2px 6px -2px #10121814;--backdrop:#10121852;--font-sans:"Geist Variable", "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Geist Mono Variable", "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-lg:16px;--text-xl:20px;--text-2xl:28px;--radius-sm:6px;--radius:8px;--radius-lg:12px;--radius-xl:16px;--control:34px;--control-sm:28px;--control-lg:40px;--sidebar-width:232px;--gutter:28px;--ease:.14s ease;--surface:var(--background);--on:var(--foreground)}.dark{--background:#141518;--foreground:#eceef1;--card:#1b1d21;--card-foreground:#eceef1;--sidebar:#0d0e10;--sidebar-foreground:#eceef1;--primary:#8793ff;--primary-foreground:#0e1024;--border:#2b2e34;--destructive:#f26d6d;--destructive-foreground:#2a0a0a;--success:#52c987;--warning:#e5a949;--kind-image:#3fd0c0;--shadow-pop:0 12px 36px -8px #0009, 0 2px 8px -2px #0006;--backdrop:#0000008c}.sidebar,.auth-story{--surface:var(--sidebar);--on:var(--sidebar-foreground)}.card,.menu,.dialog,.drawer,.floating-card{--surface:var(--card);--on:var(--card-foreground)}.main-shell,.auth-form{--surface:var(--background);--on:var(--foreground)}:root,.sidebar,.auth-story,.card,.menu,.dialog,.drawer,.floating-card,.main-shell,.auth-form{--text:var(--on);--text-2:color-mix(in oklab, var(--on) 66%, var(--surface));--text-3:color-mix(in oklab, var(--on) 50%, var(--surface));--fill-1:color-mix(in oklab, var(--on) 4%, var(--surface));--fill-2:color-mix(in oklab, var(--on) 7%, var(--surface));--fill-3:color-mix(in oklab, var(--on) 11%, var(--surface));--line:var(--border);--accent-soft:color-mix(in oklab, var(--primary) 12%, var(--surface));--accent-text:color-mix(in oklab, var(--primary) 84%, var(--on));--danger-soft:color-mix(in oklab, var(--destructive) 11%, var(--surface));--danger-text:color-mix(in oklab, var(--destructive) 88%, var(--on));--success-soft:color-mix(in oklab, var(--success) 13%, var(--surface));--success-text:color-mix(in oklab, var(--success) 88%, var(--on));--warning-soft:color-mix(in oklab, var(--warning) 14%, var(--surface));--warning-text:color-mix(in oklab, var(--warning) 88%, var(--on));color:var(--text)}
*,:before,:after{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-text-size-adjust:100%}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.5}#root,body>.app-shell,body>main{isolation:isolate}h1,h2,h3,h4,p,dl,dd,ul,ol,figure,fieldset,legend{margin:0;padding:0}ul,ol{list-style:none}fieldset{border:0;min-width:0}h1{font-size:var(--text-xl);letter-spacing:-.015em;font-weight:600;line-height:1.3}h2{font-size:var(--text-lg);letter-spacing:-.01em;font-weight:600;line-height:1.4}h3{font-size:var(--text-base);font-weight:600;line-height:1.4}strong{font-weight:550}small{font-size:var(--text-xs);color:var(--text-2)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit;margin:0}button{text-align:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0}button:disabled{cursor:not-allowed}img,svg,video{max-width:100%;display:block}svg{flex-shrink:0}table{border-collapse:collapse;border-spacing:0}time,.tabular{font-variant-numeric:tabular-nums}::placeholder{color:var(--text-3);opacity:1}::selection{background:color-mix(in oklab, var(--primary) 28%, transparent)}:focus{outline:none}:is(a,button,summary,[tabindex]):focus-visible{outline:2px solid var(--ring);outline-offset:2px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--text-2)}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.btn{height:var(--control);border-radius:var(--radius);font-size:var(--text-sm);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background-color var(--ease), border-color var(--ease), color var(--ease);border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:500;line-height:1;display:inline-flex}.btn svg{width:16px;height:16px}.btn:disabled,.btn[data-disabled]{opacity:.5;cursor:not-allowed}.btn[data-variant=primary]{background:var(--primary);color:var(--primary-foreground)}.btn[data-variant=primary]:hover:not(:disabled){background:color-mix(in oklab, var(--primary) 88%, var(--on))}.btn[data-variant=outline]{background:var(--surface);border-color:var(--line);color:var(--text)}.btn[data-variant=outline]:hover:not(:disabled),.btn[data-variant=outline][data-popup-open]{background:var(--fill-1)}.btn[data-variant=ghost]{color:var(--text-2)}.btn[data-variant=ghost]:hover:not(:disabled),.btn[data-variant=ghost][data-popup-open]{background:var(--fill-2);color:var(--text)}.btn[data-variant=danger]{background:var(--destructive);color:var(--destructive-foreground)}.btn[data-variant=danger]:hover:not(:disabled){background:color-mix(in oklab, var(--destructive) 88%, var(--on))}.btn[data-variant=link]{height:auto;color:var(--accent-text);font-size:inherit;line-height:inherit;border:0;border-radius:4px;padding:0}.btn[data-variant=link]:hover:not(:disabled){text-underline-offset:3px;text-decoration:underline}.btn[data-size=sm]{height:var(--control-sm);font-size:var(--text-xs);padding:0 10px}.btn[data-size=sm] svg{width:14px;height:14px}.btn[data-size=lg]{height:var(--control-lg);font-size:var(--text-base);padding:0 16px}.btn[data-size=icon]{width:var(--control);padding:0}.btn[data-size=icon-sm]{width:var(--control-sm);height:var(--control-sm);padding:0}.btn[data-variant=link][data-size]{height:auto;padding:0}.btn-block{width:100%}.input{width:100%;min-width:0;height:var(--control);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:var(--text-base);transition:border-color var(--ease), box-shadow var(--ease);padding:0 10px;display:block}textarea.input{resize:vertical;height:auto;min-height:88px;padding:8px 10px;line-height:1.5}.input:hover:not(:disabled){border-color:color-mix(in oklab, var(--on) 22%, var(--surface))}.input:focus,.select>select:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 20%, transparent)}.input[aria-invalid=true]{border-color:var(--destructive)}.input[aria-invalid=true]:focus{box-shadow:0 0 0 3px color-mix(in oklab, var(--destructive) 20%, transparent)}.input:disabled{opacity:.55;cursor:not-allowed}.input[data-size=lg]{height:var(--control-lg);padding:0 12px}.input-group{align-items:center;min-width:0;display:flex;position:relative}.input-group>:is(svg,.input-prefix){color:var(--text-3);pointer-events:none;position:absolute;left:10px}.input-group>svg{width:16px;height:16px}.input-group>.input{padding-left:32px}.input-group>.input-prefix+.input{padding-left:26px}.input-group.password-input>.input{padding-left:12px;padding-right:40px}.password-toggle{border-radius:calc(var(--radius) - 2px);width:32px;height:32px;color:var(--text-3);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;right:4px}.password-toggle:hover{background:var(--fill-2);color:var(--text)}.password-toggle:focus-visible{outline:2px solid var(--ring);outline-offset:-2px}.password-toggle svg{width:16px;height:16px}.select{align-items:center;min-width:0;max-width:100%;display:inline-flex;position:relative}.select>select{appearance:none;width:100%;min-width:0;height:var(--control);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:var(--text-sm);cursor:pointer;text-overflow:ellipsis;transition:border-color var(--ease), box-shadow var(--ease), background-color var(--ease);padding:0 30px 0 10px}.select>select:hover{background:var(--fill-1)}.select>svg{width:14px;height:14px;color:var(--text-3);pointer-events:none;position:absolute;right:9px}.select[data-active=true]>select{border-color:color-mix(in oklab, var(--primary) 45%, var(--surface));background:var(--accent-soft);color:var(--accent-text)}.select[data-block=true]{display:flex}.checkbox,.radio{appearance:none;border:1.5px solid color-mix(in oklab, var(--on) 28%, var(--surface));background:var(--surface);cursor:pointer;width:16px;height:16px;transition:background-color var(--ease), border-color var(--ease);flex-shrink:0;place-content:center;margin:0;display:inline-grid}.checkbox{border-radius:5px}.radio{border-radius:50%}.checkbox:hover,.radio:hover{border-color:var(--primary)}.checkbox:is(:checked,:indeterminate),.radio:checked{border-color:var(--primary);background:var(--primary)}.checkbox:checked:after{content:"";border-left:2px solid var(--primary-foreground);border-bottom:2px solid var(--primary-foreground);width:8px;height:5px;transform:translateY(-1px)rotate(-45deg)}.checkbox:indeterminate:after{content:"";background:var(--primary-foreground);border-radius:1px;width:8px;height:2px}.radio:checked:after{content:"";background:var(--primary-foreground);border-radius:50%;width:6px;height:6px}:is(.checkbox,.radio):focus-visible{outline:2px solid var(--ring);outline-offset:2px}:is(.checkbox,.radio):disabled{opacity:.5;cursor:not-allowed}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{font-size:var(--text-sm);color:var(--text);font-weight:500}.field-hint{font-size:var(--text-xs);color:var(--text-2);font-weight:400;line-height:1.5}.field[data-inline=true]{flex-direction:row;align-items:center;gap:10px}.form{flex-direction:column;gap:16px;display:flex}.choice-list{gap:8px;display:grid}.choice-list>legend{font-size:var(--text-sm);margin-bottom:8px;font-weight:500}.choice{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;transition:border-color var(--ease), background-color var(--ease);align-items:flex-start;gap:10px;padding:12px;display:flex}.choice>.radio{margin-top:2px}.choice>span{font-size:var(--text-sm);gap:2px;display:grid}.choice:hover{background:var(--fill-1)}.choice:has(:checked){border-color:var(--primary);background:var(--accent-soft)}.menu-positioner{z-index:60;outline:none}.menu{min-width:184px;max-width:calc(100vw - 16px);max-height:var(--available-height);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-pop);font-size:var(--text-sm);transform-origin:var(--transform-origin);border-radius:10px;padding:4px;transition:opacity .12s,transform .12s;overflow-y:auto}.menu[data-starting-style],.menu[data-ending-style]{opacity:0;transform:scale(.97)}.menu-item{border-radius:var(--radius-sm);cursor:default;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;min-height:32px;padding:6px 10px;line-height:1.35;display:flex}.menu-item svg{width:16px;height:16px;color:var(--text-2)}.menu-item[data-highlighted]{background:var(--fill-2)}.menu-item[data-disabled]{opacity:.45}.menu-item[data-tone=danger],.menu-item[data-tone=danger] svg{color:var(--danger-text)}.menu-item[data-tone=danger][data-highlighted]{background:var(--danger-soft)}.menu-item-indicator{box-sizing:content-box;width:16px;margin-left:auto;padding-left:16px;display:inline-flex}.menu-item-indicator svg{color:var(--accent-text)}.menu-separator{background:var(--line);height:1px;margin:4px -4px}.menu-label{font-size:var(--text-xs);color:var(--text-2);padding:8px 10px}.dialog-backdrop{z-index:70;background:var(--backdrop);transition:opacity .16s;position:fixed;inset:0}.dialog-backdrop[data-starting-style],.dialog-backdrop[data-ending-style]{opacity:0}.dialog,.drawer{z-index:80;border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-pop);flex-direction:column;transition:opacity .16s,transform .16s;display:flex;position:fixed}.dialog{gap:16px;width:min(440px,100vw - 32px);max-height:calc(100dvh - 32px);padding:20px;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.dialog[data-starting-style],.dialog[data-ending-style]{opacity:0;transform:translate(-50%,-48%)scale(.98)}.drawer{width:min(440px,100vw - 16px);top:8px;bottom:8px;right:8px;overflow:hidden}.drawer[data-starting-style],.drawer[data-ending-style]{opacity:0;transform:translate(16px)}.dialog-header{gap:6px;padding-right:32px;display:grid}.dialog-title{font-size:var(--text-lg);letter-spacing:-.01em;overflow-wrap:anywhere;font-weight:600;line-height:1.35}.dialog-description{font-size:var(--text-sm);color:var(--text-2);overflow-wrap:anywhere;line-height:1.55}.dialog-close{position:absolute;top:14px;right:14px}.dialog-body{min-width:0;font-size:var(--text-sm);flex-direction:column;gap:16px;display:flex}.dialog-body p{overflow-wrap:anywhere;line-height:1.55}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.drawer>.dialog-header{border-bottom:1px solid var(--line);flex-shrink:0;padding:20px 52px 16px 20px}.drawer-body{overscroll-behavior:contain;flex:1;min-height:0;padding:20px;overflow-y:auto}.drawer-footer{padding:12px 20px max(12px, env(safe-area-inset-bottom));border-top:1px solid var(--line);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:8px;display:flex}.tabs-list,.segmented{background:var(--fill-2);border-radius:10px;align-items:center;gap:2px;max-width:100%;padding:3px;display:inline-flex}.tab,.segment{height:28px;color:var(--text-2);font-size:var(--text-sm);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background-color var(--ease), color var(--ease);border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:500;display:inline-flex}.segment[data-icon=true]{width:30px;padding:0}.segment svg{width:16px;height:16px}:is(.tab,.segment):hover{color:var(--text)}.tab[aria-selected=true],.segment[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px color-mix(in oklab, var(--on) 8%, transparent), 0 1px 2px #10121814}.tab-panel{min-width:0}.tab-panel:focus-visible{outline:2px solid var(--ring);outline-offset:4px;border-radius:var(--radius)}.badge{background:var(--fill-2);height:22px;color:var(--text-2);font-size:var(--text-xs);white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:0 8px;font-weight:500;line-height:1;display:inline-flex}.badge svg{width:12px;height:12px}.badge[data-tone=accent]{background:var(--accent-soft);color:var(--accent-text)}.badge[data-tone=success]{background:var(--success-soft);color:var(--success-text)}.badge[data-tone=warning]{background:var(--warning-soft);color:var(--warning-text)}.badge[data-tone=danger]{background:var(--danger-soft);color:var(--danger-text)}.card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-width:0;padding:20px}.card-header{justify-content:space-between;align-items:flex-start;gap:12px 16px;margin-bottom:16px;display:flex}.card-header>div:first-child{min-width:0}.card-title{font-size:var(--text-lg);letter-spacing:-.01em;font-weight:600}.card-description{font-size:var(--text-sm);color:var(--text-2);margin-top:2px}.alert{border-radius:var(--radius);background:var(--fill-1);color:var(--text);font-size:var(--text-sm);overflow-wrap:anywhere;align-items:flex-start;gap:10px;padding:10px 12px;line-height:1.5;display:flex}.alert>svg{width:16px;height:16px;color:var(--text-2);margin-top:2px}.alert-content{flex:1;min-width:0}.alert[data-tone=error]{background:var(--danger-soft);color:var(--danger-text)}.alert[data-tone=success]>svg{color:var(--success-text)}.alert[data-tone=warning]{background:var(--warning-soft);color:var(--warning-text)}.alert:is([data-tone=error],[data-tone=warning])>svg{color:inherit}.alert .btn[data-variant=link]{color:inherit;text-underline-offset:3px;text-decoration:underline}.alert-dismiss{color:inherit;margin:-3px -4px -3px 0}.table-scroll{width:100%;min-width:0;position:relative;overflow-x:auto}.table-scroll:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.table{width:100%;min-width:var(--table-min-width,560px);table-layout:fixed;border-collapse:collapse;font-size:var(--text-sm);text-align:left}.table th{border-bottom:1px solid var(--line);height:36px;color:var(--text-2);font-size:var(--text-xs);white-space:nowrap;padding:0 12px;font-weight:500}.table td{border-bottom:1px solid var(--line);height:48px;color:var(--text-2);vertical-align:middle;overflow-wrap:anywhere;padding:8px 12px}.table tbody tr:last-child td{border-bottom-color:#0000}.table tbody tr{transition:background-color var(--ease)}.table tbody tr:hover{background:var(--fill-1)}.table tbody tr[aria-selected=true],.table tbody tr.is-selected{background:var(--accent-soft)}.table tbody tr:focus-visible{outline:2px solid var(--ring);outline-offset:-2px}.table strong{color:var(--text);font-weight:500}.table[data-align=top] td{vertical-align:top;padding-block:12px}.progress{appearance:none;background:var(--fill-3);border:0;border-radius:999px;width:100%;height:6px;display:block;overflow:hidden}.progress::-webkit-progress-bar{background:var(--fill-3)}.progress::-webkit-progress-value{background:var(--primary);border-radius:999px}.progress::-moz-progress-bar{background:var(--primary);border-radius:999px}.progress-track{background:var(--fill-3);border-radius:999px;height:6px;overflow:hidden}.progress-track>span{border-radius:inherit;background:var(--primary);height:100%;transition:width .1s linear;display:block}.progress-track[data-indeterminate=true]>span{width:35%;animation:1.4s ease-in-out infinite progress-slide}@keyframes progress-slide{0%{transform:translate(-100%)}to{transform:translate(290%)}}.skeleton{border-radius:var(--radius-sm);background:var(--fill-2);min-height:12px;animation:1.8s ease-in-out infinite pulse}.avatar{background:var(--accent-soft);width:30px;height:30px;color:var(--accent-text);font-size:var(--text-xs);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;width:100%;min-width:0;padding:56px 24px;display:flex}.empty-state[data-compact=true]{padding:32px 16px}.empty-state-icon{border-radius:var(--radius-lg);background:var(--fill-2);width:44px;height:44px;color:var(--text-2);place-items:center;display:grid}.empty-state-icon svg{stroke-width:1.75px;width:20px;height:20px}.empty-state-copy{overflow-wrap:anywhere;max-width:380px}.empty-state-copy h3{font-size:var(--text-base);margin-bottom:4px}.empty-state-copy p{font-size:var(--text-sm);color:var(--text-2);line-height:1.55}.empty-state-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;max-width:100%;display:flex}.breadcrumbs{min-width:0;font-size:var(--text-sm);color:var(--text-2);flex-wrap:wrap;align-items:center;gap:2px;display:flex}.breadcrumbs>span{align-items:center;gap:2px;min-width:0;display:inline-flex}.breadcrumbs svg{width:14px;height:14px;color:var(--text-3)}.breadcrumbs :is(a,button){border-radius:var(--radius-sm);overflow-wrap:anywhere;transition:background-color var(--ease), color var(--ease);padding:2px 6px}.breadcrumbs :is(a,button):hover{background:var(--fill-2);color:var(--text)}.breadcrumbs [aria-current=location],.breadcrumbs>span:last-of-type>:is(a,button){color:var(--text);font-weight:500}.toast{z-index:100;background:var(--foreground);width:max-content;max-width:calc(100vw - 32px);color:var(--background);box-shadow:var(--shadow-pop);font-size:var(--text-sm);border-radius:10px;align-items:center;gap:8px;padding:10px 14px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast svg{width:16px;height:16px}.floating-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-pop)}.details{font-size:var(--text-sm);grid-template-columns:minmax(88px,auto) minmax(0,1fr);gap:10px 20px;display:grid}.details dt{color:var(--text-2)}.details dd{overflow-wrap:anywhere;min-width:0}.details>div{display:contents}.list-row{border-bottom:1px solid var(--line);min-width:0;font-size:var(--text-sm);align-items:center;gap:12px;padding:12px 0;display:flex}.list-row:last-child{border-bottom:0;padding-bottom:0}.list-row:first-child{padding-top:0}.list-row>svg{width:18px;height:18px;color:var(--text-2)}.list-row-text{overflow-wrap:anywhere;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.list-row-text strong{font-weight:500}.list-row-text :is(small,span,p){font-size:var(--text-xs);color:var(--text-2);line-height:1.5}.list-row-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;display:flex}.icon-tile{border-radius:var(--radius);background:var(--fill-2);width:32px;height:32px;color:var(--text-2);flex-shrink:0;place-items:center;display:inline-grid}.icon-tile svg{width:16px;height:16px}
html{scroll-behavior:smooth;scroll-padding-top:72px}.landing{overflow-x:clip}.wrap{width:min(100% - 2 * var(--gutter), 1200px);margin-inline:auto}.landing .brand{font-size:var(--text-lg);letter-spacing:-.01em;align-items:center;gap:8px;font-weight:600;display:inline-flex}.landing h2{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(28px,3.6vw,44px);line-height:1.08}.label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);align-items:center;gap:10px;display:flex}.label .dot{background:var(--success);width:8px;height:8px;box-shadow:0 0 0 4px var(--success-soft);border-radius:50%}.text-link{text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:5px;align-items:center;gap:4px;font-weight:500;display:inline-flex}.text-link:hover{text-decoration-color:currentColor}.landing .signup{border-radius:var(--radius-lg);height:56px;padding:0 28px;font-size:18px;font-weight:600}.landing .signup svg{width:20px;height:20px;transition:transform var(--ease)}.landing .signup:hover svg{transform:translate(3px)}.nav{z-index:10;border-bottom:1px solid var(--line);background:color-mix(in oklab, var(--background) 82%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0}.nav .wrap{align-items:center;gap:32px;height:60px;display:flex}.nav nav{color:var(--text-2);gap:24px;margin-right:auto;display:flex}.nav nav a:hover{color:var(--text)}.nav-actions{align-items:center;gap:8px;display:flex}.theme-toggle-sun,.dark .theme-toggle-moon{display:none}.dark .theme-toggle-sun{display:block}.hero{padding-top:clamp(48px,8vw,112px)}.hero h1{letter-spacing:-.055em;margin-top:24px;font-size:clamp(48px,10.5vw,148px);font-weight:600;line-height:.92}.lede em{white-space:nowrap;color:var(--primary);font-style:normal;font-weight:600}.hero-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 48px;margin-top:clamp(28px,4vw,48px);display:flex}.lede{letter-spacing:-.015em;max-width:24ch;color:var(--text-2);font-size:clamp(18px,2vw,24px);line-height:1.3}.hero-cta{align-items:center;gap:24px;display:flex}.facts{border-block:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(40px,6vw,72px);display:grid}.facts>div{flex-direction:column-reverse;gap:6px;padding:20px 24px;display:flex}.facts>div:first-child{padding-left:0}.facts>div+div{border-left:1px solid var(--line)}.facts dd{letter-spacing:-.04em;font-size:clamp(26px,3.4vw,44px);font-weight:600;line-height:1}.facts dt{font-size:var(--text-sm);color:var(--text-2)}.section{padding-top:clamp(64px,9vw,128px)}.section>.label{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:12px}.features{gap:clamp(48px,7vw,104px);display:grid}.feature{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:center;gap:clamp(20px,4vw,56px);display:grid}.feature:nth-child(2n){grid-template-columns:minmax(0,8fr) minmax(0,4fr)}.feature:nth-child(2n) .feature-text{order:1}.feature-text>span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--tint)}.feature-text h3{letter-spacing:-.045em;margin:10px 0 14px;font-size:clamp(36px,5vw,64px);font-weight:600;line-height:1}.feature-text .text-link{margin-top:18px}.feature-text p{max-width:34ch;font-size:var(--text-lg);color:var(--text-2);line-height:1.5}.shot{aspect-ratio:16/10;border:1px solid color-mix(in oklab, var(--tint) 24%, var(--line));border-radius:var(--radius-xl);background:radial-gradient(color-mix(in oklab, var(--tint) 30%, transparent) 1px, transparent 1px) 0 0 / 16px 16px, linear-gradient(135deg, color-mix(in oklab, var(--tint) 26%, var(--sidebar)), color-mix(in oklab, var(--tint) 6%, var(--sidebar)));position:relative;overflow:hidden}.shot-window{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);width:104%;box-shadow:var(--shadow-pop), 0 40px 80px -30px color-mix(in oklab, var(--tint) 50%, transparent);transform-origin:0 0;transition:transform .4s;position:absolute;top:15%;left:7%;overflow:hidden;transform:perspective(1800px)rotateY(-12deg)rotateX(4deg)}.shot:hover .shot-window{transform:perspective(1800px)rotateY(-5deg)rotateX(1deg)}.shot-window img{width:100%;height:auto}.shot[data-flat]{aspect-ratio:auto;padding:clamp(14px,3vw,40px)}.shot[data-flat] .shot-window,.shot[data-flat]:hover .shot-window{width:100%;position:static;transform:none}.shot-note{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);max-width:250px;box-shadow:var(--shadow-pop);align-items:center;gap:12px;padding:12px 16px 12px 14px;line-height:1.35;display:flex;position:absolute;top:7%;right:5%}.shot-note small{font-size:var(--text-sm);color:var(--text-2)}.shot-note+.shot-note{top:auto;bottom:6%}.shot-note svg{color:var(--tint);flex:none}.shot-note strong{font-size:var(--text-base);font-weight:600;display:block}.shot-dark,.dark .shot-light{display:none}.dark .shot-dark{display:block}.fit{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(24px,5vw,72px);display:grid}.fit label{font-size:var(--text-lg);color:var(--text-2);margin:20px 0 12px;display:block}.fit-input{align-items:center;gap:20px;display:flex}.fit-input input{min-width:0;height:28px;accent-color:var(--primary);cursor:pointer;flex:1}.fit-input output{letter-spacing:-.04em;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;min-width:4.2ch;font-size:clamp(28px,3.6vw,44px);font-weight:600;line-height:1}.fit-equal{font-size:var(--text-sm);color:var(--text-3);margin-top:12px}.fit-result{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--card);padding:clamp(20px,3vw,32px)}.fit-bar{background:var(--fill-2);border-radius:4px;gap:2px;height:14px;display:flex;overflow:hidden}.fit-bar i{background:var(--primary);transition:width .12s}.fit-bar i+i{background:var(--warning)}.fit-scale{height:28px;font-family:var(--font-mono);color:var(--text-3);margin-top:6px;font-size:11px;position:relative}.fit-scale span+span{border-right:1px solid var(--text-3);white-space:nowrap;padding-right:6px;transition:left .12s;position:absolute;top:0;transform:translate(-100%)}.fit-result p{min-height:3em;font-size:var(--text-lg);color:var(--text-2);margin-bottom:20px;line-height:1.5}.fit-result strong{color:var(--text)}.details{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(24px,5vw,72px);margin-top:-24px;display:grid}.details>div{border-bottom:1px solid var(--line);grid-template-columns:32px minmax(0,1fr);gap:2px 8px;padding:22px 0;display:grid}.details span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-3);grid-row:span 2;padding-top:5px}.details dt{letter-spacing:-.02em;font-size:20px;font-weight:600}.details dd{font-size:var(--text-lg);color:var(--text-2)}.learn-hero{padding-top:clamp(32px,5vw,64px)}.learn-hero .label:hover{color:var(--text)}.learn-hero h1{letter-spacing:-.05em;text-wrap:balance;max-width:14ch;margin-top:20px;font-size:clamp(40px,7.4vw,104px);font-weight:600;line-height:.96}.learn-hero .lede{max-width:40ch}.platforms{flex-wrap:wrap;gap:8px;margin:28px 0 20px;display:flex}.platforms li{border:1px solid color-mix(in oklab, var(--tint) 30%, var(--line));font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-2);border-radius:999px;padding:4px 10px}.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,56px);display:grid}.steps span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--tint)}.steps h3,.learn-split h2{margin:8px 0 10px}.steps h3{letter-spacing:-.03em;font-size:clamp(22px,2.4vw,30px);font-weight:600}.steps p,.learn-split p{font-size:var(--text-lg);color:var(--text-2);line-height:1.55}.learn-split{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:center;gap:clamp(20px,4vw,56px);display:grid}.others{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.others a{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--card);transition:border-color var(--ease);gap:8px;padding:20px;display:grid}.others a:hover{border-color:var(--tint)}.others strong{letter-spacing:-.03em;font-size:24px;font-weight:600}.others span{color:var(--text-2)}.others svg{color:var(--tint);margin-top:8px}.learn-cta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.learn-cta h2{max-width:20ch}.platforms a{color:var(--text);text-underline-offset:3px;text-decoration:underline}.get{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.get>div{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--card);flex-direction:column;align-items:flex-start;gap:8px;padding:20px;display:flex}.get h3{letter-spacing:-.03em;font-size:24px;font-weight:600}.get p{color:var(--text-2);flex:1;margin-bottom:12px}.fine{max-width:80ch;font-size:var(--text-sm);color:var(--text-2);margin-top:20px;line-height:1.6}.fine code{font-family:var(--font-mono);font-size:var(--text-xs);overflow-wrap:anywhere}.details.spaced{margin-top:clamp(24px,4vw,48px)}.beta-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(24px,5vw,72px);display:grid}.beta-price{letter-spacing:-.07em;color:var(--primary);font-size:clamp(120px,24vw,320px);font-weight:600;line-height:.8}.beta ul{border-top:1px solid var(--line);margin:24px 0 32px}.beta li strong{font-weight:600}.beta li{border-bottom:1px solid var(--line);font-size:var(--text-lg);padding:14px 0}.faq{margin-top:-24px}.faq details{border-bottom:1px solid var(--line)}.faq summary{letter-spacing:-.02em;cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font-size:20px;font-weight:500;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:var(--font-mono);color:var(--text-3);font-weight:400}.faq details[open] summary:after{content:"−"}.faq details p{max-width:60ch;font-size:var(--text-lg);color:var(--text-2);padding-bottom:22px;line-height:1.6}.foot{border-top:1px solid var(--line);color:var(--text-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:clamp(64px,9vw,128px);padding-block:28px;display:flex}@media (max-width:860px){.landing{--gutter:18px}.nav nav,.nav-actions [data-variant=ghost]:not([data-size=icon]){display:none}.nav-actions{margin-left:auto}.facts{grid-template-columns:minmax(0,1fr)}.facts>div{flex-direction:row;justify-content:space-between;align-items:baseline;padding:14px 0}.facts>div+div{border-left:0;border-top:1px solid var(--line)}.feature,.feature:nth-child(2n),.steps,.learn-split,.get,.others,.fit,.details,.beta-grid{grid-template-columns:minmax(0,1fr)}.feature:nth-child(2n) .feature-text{order:0}.shot{aspect-ratio:4/3}.shot-note{gap:8px;padding:8px 12px 8px 10px}.shot-note small{display:none}.hero-cta{flex-wrap:wrap}}

