.lib-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border:1px solid var(--lib-button-border,var(--border,#2b2b2b));border-radius:var(--lib-button-radius,10px);background:var(--lib-button-bg,var(--surface,var(--card,#1e1e1e)));color:var(--lib-button-fg,var(--foreground,#e4e4e4));font-family:var(--font-sans);font-size:13px;font-weight:500;line-height:1;letter-spacing:-.01em;transform:scale(1);transition:background .12s ease,border-color .12s ease,color .12s ease,transform .12s ease;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer}.lib-button:hover{background:var(--lib-button-hover-bg,var(--surface-2,#252525));border-color:var(--lib-button-hover-border,var(--ring,#3a3a3a));color:var(--lib-button-hover-fg,var(--foreground,#fff))}.lib-button:focus-visible{outline:2px solid var(--lib-button-focus,var(--ring,var(--primary,#6c8ea3)));outline-offset:2px}.lib-button:disabled{opacity:.45;cursor:not-allowed}.lib-button--pressed:not(:disabled){transform:scale(.98)}.lib-button--primary{background:var(--lib-button-primary-bg,var(--primary,#e4e4e4));border-color:var(--lib-button-primary-bg,var(--primary,#e4e4e4))}.lib-button--primary,.lib-button--primary:hover{color:var(--lib-button-primary-fg,var(--primary-foreground,#141414))}.lib-button--primary:hover{background:var(--lib-button-primary-hover-bg,var(--primary,#fff));border-color:var(--lib-button-primary-hover-bg,var(--primary,#fff))}.lib-button--primary.lib-button--pressed:not(:disabled){transform:scale(.98)}.lib-button--ghost{background:transparent;border-color:var(--lib-button-ghost-border,transparent);color:var(--lib-button-muted-fg,var(--muted-foreground,#8a8a8a))}.lib-button--ghost:hover{background:var(--lib-button-hover-bg,var(--surface-2,#1e1e1e));color:var(--lib-button-hover-fg,var(--foreground,#e4e4e4))}.lib-button svg{display:block;flex-shrink:0}.lib-button--sm{padding:6px 10px;font-size:12px;gap:6px}.lib-button--lg{padding:12px 20px;font-size:15px;gap:10px;border-radius:999px}.lib-button--icon{padding:8px;width:36px;height:36px}.lib-card{--lib-card-radius:16px;--lib-card-padding:16px;--lib-card-gap:12px;width:100%;gap:var(--lib-card-gap);padding:var(--lib-card-padding);border-radius:var(--lib-card-radius);background:var(--lib-card-bg,var(--surface,var(--card,#1e1e1e)));border:1px solid var(--lib-card-border,var(--border,#2b2b2b));color:var(--lib-card-fg,var(--foreground,#e4e4e4));box-shadow:var(--lib-card-shadow,none)}.lib-card,.lib-card__header{display:flex;flex-direction:column}.lib-card__header{gap:4px}.lib-card__title{margin:0;font-size:14px;font-weight:560;letter-spacing:-.02em;color:var(--lib-card-fg,var(--foreground,#e4e4e4))}.lib-card__description{margin:0;line-height:1.5}.lib-card__content,.lib-card__description{font-size:12px;color:var(--lib-card-muted,var(--muted-foreground,#8a8a8a))}.lib-card__content{line-height:1.55}.lib-card__footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:2px;padding-top:8px;border-top:1px solid var(--lib-card-border,var(--border,#2b2b2b))}.lib-card__footer .lib-card__action{padding:7px 12px;border:1px solid var(--lib-card-border,var(--border,#2b2b2b));border-radius:6px;background:var(--surface-2,#1a1a1a);color:var(--lib-card-muted,var(--muted-foreground,#8a8a8a));font-family:var(--font-sans);font-size:12px;font-weight:500;cursor:pointer;transition:background .12s ease,color .12s ease}.lib-card__footer .lib-card__action:hover{background:var(--lib-card-hover,var(--surface-2,#252525));color:var(--lib-card-fg,var(--foreground,#e4e4e4))}.lib-card__footer .lib-card__action--primary{background:var(--primary,#e4e4e4);border-color:var(--primary,#e4e4e4);color:var(--primary-foreground,#141414)}.lib-card__footer .lib-card__action--primary:hover{background:var(--lib-button-primary-hover-bg,var(--primary,#fff));color:var(--primary-foreground,#141414)}.text-reveal{overflow:hidden;margin:0;line-height:1.2}.text-reveal--line{overflow:visible}.text-reveal__unit{display:inline-block;overflow:hidden;vertical-align:top}.text-reveal--line .text-reveal__unit{display:block}.text-reveal__space{white-space:pre}.text-reveal__inner{display:block;transform:translateY(110%);opacity:0}.text-reveal__inner--visible{animation:text-reveal-up var(--reveal-duration,.7s) cubic-bezier(.22,1,.36,1) var(--reveal-delay,0s) forwards}@keyframes text-reveal-up{0%{transform:translateY(110%);opacity:0}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion:reduce){.text-reveal__inner{transform:none;opacity:1}.text-reveal__inner--visible{animation:none}}.lib-toast-viewport{z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none}.lib-toast-viewport,.lib-toast-viewport--inline{position:fixed;right:24px;bottom:24px;width:min(100vw - 32px,320px)}.lib-toast{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:6px;border:1px solid var(--border,#2b2b2b);background:var(--surface,#1e1e1e);color:var(--foreground,#e4e4e4);box-shadow:var(--lib-toast-shadow,0 8px 24px rgb(0 0 0/.18));font-size:12px;opacity:0;transform:translateX(calc(100% + 28px));pointer-events:auto;transition:opacity .2s ease,transform .2s ease}.lib-toast--visible{opacity:1;transform:translateX(0)}.lib-toast--exiting{opacity:0;transform:translateX(calc(100% + 28px))}.lib-toast__message{font-family:var(--font-sans);font-size:13px;font-weight:500;line-height:1.3}.lib-toast__close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--muted-foreground,#a3a3a3);font-size:18px;line-height:1;transition:background .15s ease,color .15s ease}.lib-toast__close:hover{background:var(--surface-2,#333333);color:var(--foreground,#fff)}.lib-tooltip{position:relative}.lib-tooltip,.lib-tooltip__trigger{display:inline-flex}.lib-tooltip__bubble{position:absolute;z-index:30;padding:8px 12px;border-radius:var(--lib-tooltip-radius,8px);background:var(--lib-tooltip-bg,var(--foreground,#262626));color:var(--lib-tooltip-fg,var(--background,#e5e5e5));font-family:var(--font-sans);font-size:13px;font-weight:500;line-height:1;white-space:nowrap;box-shadow:var(--lib-tooltip-shadow,0 12px 32px rgb(0 0 0/.18));opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1),visibility .18s}.lib-tooltip:focus-within .lib-tooltip__bubble,.lib-tooltip:hover .lib-tooltip__bubble{opacity:1;visibility:visible}.lib-tooltip__bubble--top{bottom:calc(100% + 8px);left:50%;transform:translate(-50%,6px)}.lib-tooltip:focus-within .lib-tooltip__bubble--top,.lib-tooltip:hover .lib-tooltip__bubble--top{transform:translate(-50%)}.lib-tooltip__bubble--bottom{top:calc(100% + 8px);left:50%;transform:translate(-50%,-6px)}.lib-tooltip:focus-within .lib-tooltip__bubble--bottom,.lib-tooltip:hover .lib-tooltip__bubble--bottom{transform:translate(-50%)}.lib-tooltip__bubble--left{right:calc(100% + 8px);top:50%;transform:translate(6px,-50%)}.lib-tooltip:focus-within .lib-tooltip__bubble--left,.lib-tooltip:hover .lib-tooltip__bubble--left{transform:translateY(-50%)}.lib-tooltip__bubble--right{left:calc(100% + 8px);top:50%;transform:translate(-6px,-50%)}.lib-tooltip:focus-within .lib-tooltip__bubble--right,.lib-tooltip:hover .lib-tooltip__bubble--right{transform:translateY(-50%)}