@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.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(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.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(/assets/geist-vietnamese-wght-normal-6IgcOCM7.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(/assets/geist-latin-ext-wght-normal-DC-KSUi6.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(/assets/geist-latin-wght-normal-BgDaEnEv.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{--font-sans:"Geist Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Geist Mono Variable", ui-monospace, "SF Mono", "Cascadia Code", monospace;--holo:linear-gradient(100deg, #22d3ee 0%, #6366f1 34%, #a855f7 54%, #ec4899 76%, #f59e0b 100%);--holo-soft:linear-gradient(100deg, #22d3ee38, #a855f738 55%, #ec489933);--cyan:#22d3ee;--violet:#a855f7;--indigo:#6366f1;--pink:#ec4899;--amber:#f59e0b;--green:#34d399;--red:#fb7185;--ease:cubic-bezier(.2, .8, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--radius-xl:28px;--radius-lg:22px;--radius-md:14px;--radius-sm:10px;--dial-height:92px;--top-height:64px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=noir]{--bg:#04050a;--bg-2:#090b14;--ink:#f5f5f8;--ink-2:#eceef8cc;--ink-3:#eceef89e;--ink-4:#eceef84d;--line:#ffffff1a;--line-2:#ffffff2b;--glass:#0e101a94;--glass-strong:#0c0e16d1;--glass-hi:#ffffff0b;--field:#ffffff0b;--field-hover:#ffffff12;--primary-bg:#f5f5f7;--primary-ink:#07080d;--shadow:0 40px 120px -40px #000000e6, 0 1px 0 #ffffff0f inset;--scrim:#020308a8;--glow-a:#6366f133;--glow-b:#22d3ee1a;--tip-bg:#f6f6faf7;--tip-ink:#0b0d17;--accent-ink:#c4b5fd;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=pearl]{--bg:#eef0f6;--bg-2:#f7f8fc;--ink:#0b0d17;--ink-2:#0c0e1cc7;--ink-3:#0c0e1c99;--ink-4:#0c0e1c42;--line:#0f12221a;--line-2:#0f12222b;--glass:#ffffffb3;--glass-strong:#ffffffe6;--glass-hi:#ffffffb3;--field:#0f12220b;--field-hover:#0f122212;--primary-bg:#0b0d17;--primary-ink:#fff;--shadow:0 40px 100px -50px #26285c73, 0 1px 0 #ffffffe6 inset;--scrim:#e1e4f099;--glow-a:#a855f729;--glow-b:#22d3ee29;--tip-bg:#0c0e18f2;--tip-ink:#fff;--accent-ink:#7c3aed;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"ss01", "cv11";margin:0;font-size:14px;line-height:1.5;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit}img{max-width:100%}::selection{color:inherit;background:#a855f761}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}*{scrollbar-width:thin;scrollbar-color:var(--ink-4) transparent}.atmosphere{z-index:0;pointer-events:none;background:radial-gradient(1200px 700px at 72% -10%, var(--glow-a), transparent 60%), radial-gradient(900px 600px at 0% 110%, var(--glow-b), transparent 60%), var(--bg);position:fixed;inset:0}.atmosphere:after{content:"";opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E");position:absolute;inset:0}.scene-layer{z-index:1;transition:opacity .8s var(--ease), filter .8s var(--ease);position:fixed;inset:0}.scene-layer canvas{display:block}.scene-layer.dim{opacity:.38;filter:blur(1px)saturate(.9)}.scene-layer.hidden{opacity:0}.label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);font-size:10.5px;font-weight:500}.display{letter-spacing:-.035em;font-weight:300;line-height:1}.num{font-variant-numeric:tabular-nums}.holo-text{background:var(--holo);color:#0000;-webkit-background-clip:text;background-clip:text}.muted{color:var(--ink-2)}.faint{color:var(--ink-3)}.mono{font-family:var(--font-mono)}h1,h2,h3,h4{letter-spacing:-.02em;margin:0;font-weight:500}p{margin:0}.glass{background:var(--glass);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(28px)saturate(150%);position:relative}.glass.strong{background:var(--glass-strong)}.glass.edge:before{content:"";border-radius:inherit;background:var(--holo);opacity:.55;-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.hairline{background:var(--line);border:0;height:1px;margin:0}.btn{--h:38px;height:var(--h);border:1px solid var(--line-2);background:var(--glass-hi);letter-spacing:-.005em;cursor:pointer;white-space:nowrap;transition:transform .25s var(--ease), background .2s, border-color .2s, box-shadow .25s, opacity .2s;-webkit-user-select:none;user-select:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.btn svg{flex:none;width:15px;height:15px}.btn:hover:not(:disabled){background:var(--field-hover);border-color:var(--ink-4)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.primary{background:var(--primary-bg);color:var(--primary-ink);border-color:#0000;box-shadow:0 10px 30px -12px #a855f78c}.btn.primary:hover:not(:disabled){background:var(--primary-bg);box-shadow:0 14px 40px -12px #a855f7bf,0 0 0 4px #a855f71f}.btn.holo{color:#fff;background:var(--holo);background-size:160% 100%;border:0;box-shadow:0 12px 34px -12px #ec489999}.btn.holo:hover:not(:disabled){background:var(--holo);background-position:60% 0;background-size:160% 100%}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){background:var(--field)}.btn.danger{color:var(--red)}.btn.small{--h:30px;padding:0 12px;font-size:12px}.btn.large{--h:48px;padding:0 22px;font-size:14px}.btn.icon{width:var(--h);padding:0}.btn.block{width:100%}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.field{gap:7px;min-width:0;display:grid}.field>span:first-child,.field-label{color:var(--ink-2);font-size:12px;font-weight:500}.field small{color:var(--ink-3);font-size:11.5px;line-height:1.45}.input,.field input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),.field select,.field textarea{border:1px solid var(--line);background:var(--field);border-radius:12px;outline:none;width:100%;min-height:40px;padding:9px 13px;font-size:13.5px;transition:border-color .2s,background .2s,box-shadow .2s}.field textarea{resize:vertical;min-height:96px;line-height:1.55}.input:hover,.field input:hover,.field select:hover,.field textarea:hover{background:var(--field-hover)}.input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:#a855f799;box-shadow:0 0 0 4px #a855f724}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none' stroke='%23999' stroke-width='1.5'%3E%3Cpath d='m1 1 4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:30px!important}select option{background:var(--bg-2);color:var(--ink)}.check{cursor:pointer;align-items:center;gap:10px;font-size:13px;display:flex}.check input{width:16px;height:16px;accent-color:var(--violet)}.switch{border:1px solid var(--line-2);background:var(--field);cursor:pointer;width:46px;height:26px;transition:background .3s var(--ease);border-radius:999px;flex:none;padding:0;position:relative}.switch:after{content:"";background:var(--ink-2);width:20px;height:20px;transition:transform .35s var(--ease-out), background .3s;border-radius:50%;position:absolute;top:2px;left:2px}.switch[aria-checked=true]{background:var(--holo);border-color:#0000}.switch[aria-checked=true]:after{background:#fff;transform:translate(20px)}.switch:disabled{opacity:.4;cursor:not-allowed}.segmented{background:var(--field);border:1px solid var(--line);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.segmented button{height:30px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 13px;font-size:12.5px;transition:background .2s,color .2s;display:inline-flex}.segmented button svg{width:14px;height:14px}.segmented button[aria-pressed=true]{background:var(--primary-bg);color:var(--primary-ink)}.segmented button:hover:not([aria-pressed=true]){color:var(--ink)}.chip{border:1px solid var(--line);background:var(--field);height:24px;color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:11.5px;display:inline-flex}.chip svg{width:12px;height:12px}.chip .dot,.dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.chip.good{color:var(--green);background:#34d39914;border-color:#34d39940}.chip.warn{color:var(--amber);background:#f59e0b14;border-color:#f59e0b47}.chip.bad{color:var(--red);background:#fb718514;border-color:#fb718547}.chip.info{color:var(--cyan);background:#22d3ee12;border-color:#22d3ee40}.chip.holo{color:#fff;background:var(--holo);border:0}[data-theme=pearl] .chip.good{color:#059669}[data-theme=pearl] .chip.warn{color:#b45309}[data-theme=pearl] .chip.bad{color:#e11d48}[data-theme=pearl] .chip.info{color:#0891b2}.pulse-dot{background:var(--green);border-radius:50%;flex:none;width:8px;height:8px;position:relative}.pulse-dot:after{content:"";border:1px solid var(--green);animation:ping 2.4s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:-4px}@keyframes ping{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}dialog.sheet{color:inherit;background:0 0;border:0;place-items:center;width:100%;max-width:none;height:100%;max-height:none;padding:0;display:grid}dialog.sheet::backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(10px)}dialog.sheet:not([open]){display:none}.sheet-panel{width:min(560px,100vw - 32px);max-height:calc(100vh - 48px);animation:rise .45s var(--ease-out);background:var(--glass-strong);flex-direction:column;display:flex}.sheet-panel.wide{width:min(980px,100vw - 32px)}.sheet-head{justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px 8px;display:flex}.sheet-head h2{font-size:20px}.sheet-body{flex:auto;align-content:start;gap:16px;min-height:0;padding:12px 24px 22px;display:grid;overflow:auto}.sheet-foot{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding:16px 24px 20px;display:flex}@keyframes rise{0%{opacity:0;filter:blur(6px);transform:translateY(16px)scale(.985)}to{opacity:1;filter:none;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.notice{border:1px solid var(--line);background:var(--field);color:var(--ink-2);border-radius:14px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.notice svg{flex:none;width:16px;height:16px;margin-top:1px}.notice.error{color:var(--ink);background:#fb718514;border-color:#fb71854d}.notice.error svg{color:var(--red)}.notice.warn{color:var(--ink);background:#f59e0b14;border-color:#f59e0b4d}.notice.warn svg{color:var(--amber)}.notice.success svg{color:var(--green)}.toasts{z-index:200;pointer-events:none;justify-items:center;gap:8px;display:grid;position:fixed;top:18px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;background:var(--glass-strong);border:1px solid var(--line-2);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px);animation:rise .4s var(--ease-out);border-radius:999px;align-items:center;gap:10px;max-width:min(560px,100vw - 32px);padding:10px 12px 10px 16px;font-size:13px;display:flex}.toast svg{width:16px;height:16px;color:var(--green);flex:none}.toast.error svg{color:var(--red)}.toast button{cursor:pointer;color:var(--ink-3);background:0 0;border:0;place-items:center;display:grid}.empty{text-align:center;color:var(--ink-2);justify-items:center;gap:10px;padding:40px 20px;display:grid}.empty .empty-orb{background:radial-gradient(circle at 30% 30%, #ffffff80, transparent 40%), var(--holo);opacity:.85;border-radius:50%;width:54px;height:54px;animation:6s ease-in-out infinite float;box-shadow:0 10px 40px -10px #a855f7b3}.empty h3{color:var(--ink);font-size:16px}.empty p{max-width:360px;font-size:13px;line-height:1.55}@keyframes float{50%{transform:translateY(-6px)scale(1.03)}}.loading{color:var(--ink-3);justify-content:center;align-items:center;gap:10px;padding:40px;font-size:13px;display:flex}.loading svg{width:16px;height:16px}.skeleton{background:linear-gradient(90deg, var(--field) 0%, var(--field-hover) 50%, var(--field) 100%);background-size:200% 100%;border-radius:10px;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.row{align-items:center;gap:10px;display:flex}.row.wrap{flex-wrap:wrap}.row.spread{justify-content:space-between}.row.end{justify-content:flex-end}.stack{gap:12px;display:grid}.stack.tight{gap:6px}.stack.loose{gap:20px}.grow{flex:1;min-width:0}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.scroll{min-height:0;overflow:auto}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sr-skip{z-index:300;transition:top .2s;position:fixed;top:-60px;left:16px}.sr-skip:focus{top:16px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.tip{z-index:1000;background:var(--tip-bg);max-width:260px;color:var(--tip-ink);font-family:var(--font-sans);letter-spacing:-.005em;pointer-events:none;animation:tip-in .16s var(--ease-out);border-radius:10px;padding:7px 11px;font-size:12px;font-weight:500;line-height:1.35;position:fixed;transform:translate(-50%,-100%);box-shadow:0 12px 32px -12px #00000073}.tip.bottom{transform:translate(-50%)}.tip:after{content:"";background:var(--holo);opacity:.9;border-radius:2px;height:2px;position:absolute;bottom:-1px;left:12px;right:12px}.tip.bottom:after{top:-1px;bottom:auto}@keyframes tip-in{0%{opacity:0;filter:blur(2px)}}
