:root{--color-bg:#181818;--color-surface:#202020;--color-surface-raised:#292929;--color-surface-hover:#303030;--color-surface-deep:#1c1c1c;--color-surface-dark:#171717;--color-surface-soft:#232323;--surface-glass-bg:#262626b8;--surface-glass-filter:blur(16px) saturate(130%);--surface-glass-bg-fallback:var(--color-border-subtle);--color-border:#383838;--color-border-subtle:#262626;--color-border-strong:#3a3a3a;--color-text:#f5f5f5;--color-text-secondary:#c4c4c4;--color-text-muted:#a3a3a3;--color-text-subtle:#737373;--color-text-disabled:#6b6b6b;--color-text-faint:#909090;--color-text-dim:#767676;--color-text-light:#d0d0d0;--color-accent:#e8e8e8;--color-danger:#ff9b9b;--color-danger-strong:#e53935;--color-danger-strong-hover:#c62828;--color-danger-bg:#3a2020;--color-danger-border:#5a3030;--color-success:#8fd19e;--color-success-bg:#1f2e22;--color-success-border:#2c4230;--color-avatar-bg:#2d3f5c;--color-avatar-text:#7fa8e0;--color-shadow:#00000059;--color-focus-ring:var(--color-text);--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--font-sans:"Geist"}@font-face{font-family:Geist;src:url(/fonts/Geist-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/Geist-Medium.ttf)format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/Geist-SemiBold.ttf)format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/Geist-Bold.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--color-text-muted) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-text-muted);border-radius:4px}html,body,#root{background:#171717;width:100%;min-height:100%;margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;touch-action:pan-x pan-y;background:#171717}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);overscroll-behavior:none;-webkit-tap-highlight-color:transparent;font-weight:400}.app-link{appearance:none;color:inherit;font:inherit;text-align:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none}.avatar-media-fallback{background:var(--color-avatar-bg);color:var(--color-avatar-text);place-items:center;font-size:11px;font-weight:700;display:grid;overflow:hidden}@supports (-webkit-touch-callout:none){html,body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:pan-x pan-y}}input[type=checkbox]{appearance:none;border-radius:var(--radius-pill);background-color:var(--color-border);background-image:radial-gradient(circle at 9px 9px, var(--color-text) 0 8px, transparent 8.5px);cursor:pointer;border:0;flex:0 0 33px;width:33px;height:18px;margin:0;transition:background-color .14s,background-position .14s}input[type=checkbox]:checked{background-color:var(--color-surface-hover);background-image:radial-gradient(circle at 24px 9px, var(--color-text) 0 8px, transparent 8.5px)}input[type=checkbox]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}input[type=checkbox].checkbox-square{border:1.5px solid var(--color-border-strong);background-color:#0000;background-image:none;border-radius:5px;flex:0 0 18px;width:18px;height:18px}input[type=checkbox].checkbox-square:checked{background-color:var(--color-text);border-color:var(--color-text);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M3.5 8.2L6.3 11l6-6.4' stroke='%23181818' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:12px}.btn{border-radius:var(--radius-md);height:36px;font-family:var(--font-sans);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;line-height:1;transition:background-color .12s,border-color .12s,color .12s,opacity .12s;display:inline-flex}.btn svg{flex:none;width:15px;height:15px}.btn:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.btn:disabled{cursor:not-allowed;opacity:.45}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-surface-dark)}.btn-primary:hover:not(:disabled){background:#fff;border-color:#fff}.btn-secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-strong)}.btn-ghost{color:var(--color-text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.btn-danger{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger)}.btn-danger:hover:not(:disabled){border-color:var(--color-danger);background:#452626}.btn-segment{color:var(--color-text-muted);border-radius:var(--radius-sm);background:0 0;border-color:#0000;height:30px;padding:0 12px}.btn-segment.is-active{background:var(--color-surface-hover);color:var(--color-text)}.btn-icon{width:32px;height:32px;color:var(--color-text-muted);border-radius:var(--radius-sm);background:0 0;border-color:#0000;padding:0}.btn-icon:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.btn-sm{border-radius:var(--radius-sm);height:30px;padding:4px;font-size:13px}.btn-pill-toggle{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-hover);cursor:pointer;flex:0 0 42px;width:42px;height:24px;padding:0;transition:background-color .12s,border-color .12s;position:relative}.btn-pill-toggle span{background:var(--color-text-muted);border-radius:50%;width:22px;height:22px;transition:transform .12s,background-color .12s;display:block}.btn-pill-toggle.is-public{border-color:var(--color-accent);background:var(--color-accent)}.btn-pill-toggle.is-public span{background:var(--color-surface-dark);transform:translate(18px)}.icon-action{color:var(--color-text-dim);cursor:pointer;font-family:var(--font-sans);background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:12px;font-weight:500;line-height:1;transition:color .12s;display:inline-flex}.icon-action svg{flex:none;width:15px;height:15px}.icon-action:hover:not(:disabled){color:var(--color-text-light)}.icon-action:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.icon-action:disabled{cursor:not-allowed;opacity:.5}.icon-action.is-active{color:var(--color-danger)}.btn-icon-filled{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface-deep);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;flex:none;place-items:center;padding:0;transition:background-color .12s,border-color .12s;display:grid}.btn-icon-filled:hover:not(:disabled){background:var(--color-surface-soft);border-color:var(--color-border-strong)}.btn-icon-filled:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.btn-icon-filled img,.btn-icon-filled svg{width:15px;height:15px}.btn-group{align-items:stretch;display:inline-flex}.btn-group-item{background:var(--color-surface);border:1px solid var(--color-border);height:36px;color:var(--color-text);font-family:var(--font-sans);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:8px;margin-left:-1px;padding:0 16px;font-size:14px;font-weight:500;line-height:20px;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex;position:relative}.btn-group-item:first-child{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md);margin-left:0}.btn-group-item:last-child{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.btn-group-item:hover:not(:disabled),.btn-group-item:focus-visible{z-index:1;background:var(--color-surface-hover);border-color:var(--color-border-strong)}.btn-group-item:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:-2px}.btn-group-item:disabled{cursor:not-allowed;opacity:.45}.btn-group-item.is-icon-only{flex:none;width:36px;padding:0}.btn-group-item svg{flex:none;width:16px;height:16px}.btn-group-item.is-empty{min-width:36px}.btn-pill{border-radius:var(--radius-pill);min-width:170px;height:32px;padding:0 14px}.label{font-family:var(--font-sans);color:var(--color-text-muted);letter-spacing:.01em;font-size:12px;font-weight:500}.label-field{color:var(--color-text-secondary);margin-bottom:6px;font-size:12.5px;font-weight:500;display:block}.badge{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface-soft);height:22px;color:var(--color-text-muted);align-items:center;gap:5px;padding:0 9px;font-size:11.5px;font-weight:500;line-height:1;display:inline-flex}.badge-dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.badge-success{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success)}.badge-neutral{background:var(--color-surface-soft);border-color:var(--color-border);color:var(--color-text-dim)}.input{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-border-strong);width:320px;height:36px;color:var(--color-text);font-family:var(--font-sans);padding:0 12px;font-size:13px;transition:border-color .12s,background-color .12s}.input::placeholder{color:var(--color-text-disabled)}.input:hover{border-color:var(--color-border-strong)}.input:focus-visible,.input:focus{border-color:var(--color-text-muted);background:var(--color-surface-raised);outline:none}.input-field{width:100%;position:relative}.input--floating{border:0;border-bottom:2px solid var(--color-border);background:0 0;border-radius:0;height:52px;padding:18px 0 4px;font-size:16px}.input--floating:hover{border-color:var(--color-text-muted)}.input--floating:focus-visible,.input--floating:focus{border-color:var(--color-accent);background:0 0}.input-field label{pointer-events:none;position:absolute;top:20px;left:0}.input-field label span{min-width:5px;color:var(--color-text-muted);font-size:14px;transition:transform .18s cubic-bezier(.68,-.55,.265,1.55),color .18s;display:inline-block}.input--floating:focus+label span,.input-field--filled label span{color:var(--color-accent);transform:translateY(-24px)}.textarea{resize:vertical;width:100%;color:var(--color-text);font-family:var(--font-sans);background:0 0;border:0;outline:0;padding:12px 14px;font-size:14px;line-height:1.6;display:block}.textarea::placeholder{color:var(--color-text-disabled)}.textarea-composer{min-height:84px}[data-tooltip]{position:relative}[data-tooltip]:before,[data-tooltip]:after{z-index:40;pointer-events:none;opacity:0;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 8px);left:50%}[data-tooltip]:after{content:attr(data-tooltip);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-text);font-family:var(--font-sans);white-space:nowrap;box-shadow:0 4px 12px var(--color-shadow);padding:5px 9px;font-size:11.5px;font-weight:500;line-height:1.3;transform:translate(-50%)translateY(4px)}[data-tooltip]:before{content:"";border-left:5px solid #0000;border-right:5px solid #0000;border-top:5px solid var(--color-surface-raised);width:0;height:0;margin-left:-5px;bottom:calc(100% + 3px);transform:translateY(4px)}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{opacity:1;transform:translate(-50%)translateY(0)}[data-tooltip]:hover:before,[data-tooltip]:focus-visible:before{opacity:1;transform:translateY(0)}[data-tooltip][data-tooltip-place=bottom]:after{top:calc(100% + 8px);bottom:auto;transform:translate(-50%)translateY(-4px)}[data-tooltip][data-tooltip-place=bottom]:before{border-top:0;border-bottom:5px solid var(--color-surface-raised);top:calc(100% + 3px);bottom:auto;transform:translateY(-4px)}[data-tooltip][data-tooltip-place=bottom]:hover:after,[data-tooltip][data-tooltip-place=bottom]:focus-visible:after{transform:translate(-50%)translateY(0)}[data-tooltip][data-tooltip-place=bottom]:hover:before,[data-tooltip][data-tooltip-place=bottom]:focus-visible:before{transform:translateY(0)}[data-tooltip][data-tooltip-place=left]:after,[data-tooltip][data-tooltip-place=right]:after{top:50%;bottom:auto;left:auto;transform:translateY(-50%)translate(4px)}[data-tooltip][data-tooltip-place=left]:after{right:calc(100% + 8px);transform:translateY(-50%)translate(-4px)}[data-tooltip][data-tooltip-place=right]:after{left:calc(100% + 8px);right:auto}[data-tooltip][data-tooltip-place=left]:before,[data-tooltip][data-tooltip-place=right]:before{border-top:5px solid #0000;border-bottom:5px solid #0000;margin-top:-5px;top:50%;bottom:auto;left:auto;transform:translate(4px)}[data-tooltip][data-tooltip-place=left]:before{border-right:0;border-left:5px solid var(--color-surface-raised);right:calc(100% + 3px);transform:translate(-4px)}[data-tooltip][data-tooltip-place=right]:before{border-right:5px solid var(--color-surface-raised);border-left:0;left:calc(100% + 3px);right:auto}[data-tooltip][data-tooltip-place=left]:hover:after,[data-tooltip][data-tooltip-place=left]:focus-visible:after,[data-tooltip][data-tooltip-place=right]:hover:after,[data-tooltip][data-tooltip-place=right]:focus-visible:after{transform:translateY(-50%)translate(0)}[data-tooltip][data-tooltip-place=left]:hover:before,[data-tooltip][data-tooltip-place=left]:focus-visible:before,[data-tooltip][data-tooltip-place=right]:hover:before,[data-tooltip][data-tooltip-place=right]:focus-visible:before{transform:translate(0)}[data-tooltip][data-tooltip-align=start]:after{left:0;transform:translate(0)translateY(4px)}[data-tooltip][data-tooltip-align=end]:after{left:auto;right:0;transform:translate(0)translateY(4px)}[data-tooltip][data-tooltip-align=start]:before{margin-left:-5px;left:12px}[data-tooltip][data-tooltip-align=end]:before{margin-left:0;left:auto;right:12px}[data-tooltip][data-tooltip-place=bottom][data-tooltip-align=start]:after,[data-tooltip][data-tooltip-place=bottom][data-tooltip-align=end]:after,[data-tooltip][data-tooltip-place=bottom][data-tooltip-align=start]:before,[data-tooltip][data-tooltip-place=bottom][data-tooltip-align=end]:before{transform:translateY(-4px)}[data-tooltip][data-tooltip-place=left][data-tooltip-align=start]:after,[data-tooltip][data-tooltip-place=left][data-tooltip-align=end]:after,[data-tooltip][data-tooltip-place=right][data-tooltip-align=start]:after,[data-tooltip][data-tooltip-place=right][data-tooltip-align=end]:after{top:0;transform:translateY(0)translate(4px)}[data-tooltip][data-tooltip-place=left][data-tooltip-align=start]:after{transform:translateY(0)translate(-4px)}[data-tooltip][data-tooltip-place=left][data-tooltip-align=end]:after,[data-tooltip][data-tooltip-place=right][data-tooltip-align=end]:after{top:auto;bottom:0}[data-tooltip][data-tooltip-place=left][data-tooltip-align=start]:before,[data-tooltip][data-tooltip-place=left][data-tooltip-align=end]:before,[data-tooltip][data-tooltip-place=right][data-tooltip-align=start]:before,[data-tooltip][data-tooltip-place=right][data-tooltip-align=end]:before{top:12px}[data-tooltip][data-tooltip-place=left][data-tooltip-align=end]:before,[data-tooltip][data-tooltip-place=right][data-tooltip-align=end]:before{top:auto;bottom:12px}[data-tooltip][data-tooltip-place=left][data-tooltip-align=start]:hover:after,[data-tooltip][data-tooltip-place=left][data-tooltip-align=start]:focus-visible:after,[data-tooltip][data-tooltip-place=left][data-tooltip-align=end]:hover:after,[data-tooltip][data-tooltip-place=left][data-tooltip-align=end]:focus-visible:after,[data-tooltip][data-tooltip-place=right][data-tooltip-align=start]:hover:after,[data-tooltip][data-tooltip-place=right][data-tooltip-align=start]:focus-visible:after,[data-tooltip][data-tooltip-place=right][data-tooltip-align=end]:hover:after,[data-tooltip][data-tooltip-place=right][data-tooltip-align=end]:focus-visible:after{transform:translateY(0)translate(0)}.spinner{border:2px solid color-mix(in srgb, var(--color-text) 16%, transparent);border-top-color:var(--color-text-muted);width:26px;height:26px;color:var(--color-text-muted);vertical-align:middle;border-radius:50%;animation:.8s linear infinite spinner-rotate;display:inline-block}.spinner--media{background:var(--color-surface);width:auto;height:auto;color:var(--color-text-muted);z-index:1;vertical-align:initial;border:0;border-radius:0;place-items:center;animation:none;display:grid;position:absolute;inset:0;overflow:hidden}.spinner--media:before{content:"";background:linear-gradient(105deg, transparent 25%, color-mix(in srgb, var(--color-text) 8%, transparent) 48%, transparent 70%);animation:1.35s ease-in-out infinite spinner-sweep;position:absolute;inset:0;transform:translate(-100%)}.spinner--media:after{content:"";border:2px solid color-mix(in srgb, var(--color-text) 16%, transparent);border-top-color:var(--color-text-muted);z-index:1;border-radius:50%;width:26px;height:26px;animation:.8s linear infinite spinner-rotate}@keyframes spinner-rotate{to{transform:rotate(360deg)}}@keyframes spinner-sweep{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:1.4s}}html.alert-dialog-open,body.alert-dialog-open{touch-action:none;scrollbar-gutter:stable;overflow:hidden}.alert-dialog-backdrop{z-index:2147483647;background:#0000009e;place-items:center;padding:16px;animation:.16s ease-out alert-dialog-fade-in;display:grid;position:fixed;inset:0}.alert-dialog{background:var(--color-bg);border-radius:var(--radius-lg);width:min(480px,100%);box-shadow:0 10px 30px var(--color-shadow), 0 2px 8px #00000047;padding:32px;animation:.16s ease-out alert-dialog-scale-in}.alert-dialog h2{color:var(--color-text);margin:0;font-size:20px;font-weight:600;line-height:24px}.alert-dialog p{color:var(--color-text-muted);margin:16px 0 0;font-size:14px;line-height:20px}.alert-dialog__actions{justify-content:flex-end;gap:8px;margin-top:24px;display:flex}.alert-dialog__confirm{color:var(--color-danger-strong);background:#fff;transition:background-color .12s,border-color .12s,color .12s}.alert-dialog__confirm:hover:not(:disabled){background:var(--color-danger-strong-hover);color:#fff}.alert-dialog__confirm img{filter:brightness(0);width:15px;height:15px;transition:filter .12s}.alert-dialog__confirm:hover:not(:disabled) img{filter:brightness(0)invert()}@keyframes alert-dialog-fade-in{0%{opacity:0}to{opacity:1}}@keyframes alert-dialog-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (width<=480px){.alert-dialog{padding:24px}.alert-dialog__actions{flex-direction:column-reverse}.alert-dialog__actions .btn{width:100%}}.app-loading{background:var(--color-bg);place-items:center;width:100%;min-height:100vh;display:grid}.app-loading__mark{border:2px solid var(--color-border);border-top-color:var(--color-text);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite app-loading-spin}@keyframes app-loading-spin{to{transform:rotate(1turn)}}.toast-region{top:max(64px, env(safe-area-inset-top));right:max(20px, env(safe-area-inset-right));z-index:2147483646;pointer-events:none;flex-direction:column;gap:8px;width:min(360px,100vw - 32px);display:flex;position:fixed}body:has(.auth-page) .toast-region{top:12px}.toast-item{--toast-exit:.18s;transition:grid-template-rows var(--toast-exit) cubic-bezier(.4, 0, .2, 1), margin-bottom var(--toast-exit) cubic-bezier(.4, 0, .2, 1);grid-template-rows:1fr;margin-bottom:0;display:grid}.toast-item--closing{grid-template-rows:0fr;margin-bottom:-8px}.toast-item__inner{min-height:0;margin:-8px;padding:8px;overflow:hidden}.toast{--toast-accent:#4ade80;--toast-text:#fff;--toast-blur:16px;isolation:isolate;-webkit-backdrop-filter:blur(var(--toast-blur)) saturate(130%);backdrop-filter:blur(var(--toast-blur)) saturate(130%);color:var(--toast-text);text-shadow:0 1px 2px #00000059;pointer-events:auto;will-change:transform, opacity;border-radius:14px;align-items:center;gap:10px;padding:10px 12px 10px 14px;animation:.2s cubic-bezier(.22,1.25,.36,1) both toast-enter;display:flex;position:relative;overflow:hidden}.toast-item--closing .toast{animation:toast-exit var(--toast-exit,.18s) cubic-bezier(.4, 0, 1, 1) both;pointer-events:none}.toast--success{--toast-accent:#4ade80}.toast--error{--toast-accent:#f87171}.toast__icon{color:#0000;flex:0 0 18px;width:18px;height:18px;font-size:0;line-height:0;display:block;position:relative;overflow:hidden}.toast__icon img{filter:brightness(0)invert();width:100%;height:100%;display:block}.toast__icon:empty:before{content:"";background:var(--toast-accent);-webkit-mask:var(--toast-icon) center / contain no-repeat;-webkit-mask:var(--toast-icon) center / contain no-repeat;mask:var(--toast-icon) center / contain no-repeat;position:absolute;inset:0}.toast__message{color:inherit;overflow-wrap:anywhere;flex:1;font-size:14px;font-weight:500;line-height:20px}.toast__dismiss{color:#ffffffa6;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;padding:2px 6px;font-size:18px;line-height:1;transition:color .12s,background .12s}.toast__dismiss img{filter:brightness(0)invert();width:18px;height:18px;display:block}.toast__dismiss:hover{color:#fff;background:#ffffff2e}.toast__dismiss:focus-visible{outline:2px solid var(--toast-accent);outline-offset:1px}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.toast{background:#fafafcf0}}@keyframes toast-enter{0%{opacity:0;transform:translate(28px,-6px)scale(.94)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes toast-exit{0%{opacity:1;transform:translate(0,0)scale(1)}to{opacity:0;transform:translate(36px)scale(.95)}}@media (width<=480px){.toast-region{top:max(12px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));width:calc(100vw - 32px)}}@media (prefers-reduced-motion:reduce){.toast,.toast-item--closing .toast{animation:none}.toast-item{transition:none}}
