.tk-btn{--btn-radius:var(--radius);--btn-transition:var(--transition-base);--btn-shadow:0 3px 8px #0000000f;--btn-focus-ring:var(--focus-ring);font-family:var(--font-sans);letter-spacing:-.01em;border-radius:var(--btn-radius);cursor:pointer;transition:var(--btn-transition);-webkit-user-select:none;user-select:none;box-shadow:var(--btn-shadow);-webkit-backdrop-filter:none;backdrop-filter:none;border:none;justify-content:center;align-items:center;gap:.5rem;min-width:44px;min-height:44px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.tk-btn:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab, var(--color-primary-500) 30%, transparent), 0 0 0 6px color-mix(in oklab, var(--color-primary-200) 40%, transparent);outline:none}.tk-btn.is-disabled,.tk-btn:disabled{opacity:.6;pointer-events:none;cursor:not-allowed}.tk-btn:after{content:"";border-radius:inherit;mix-blend-mode:soft-light;opacity:0;background:radial-gradient(100% 180% at 50% -50%,#ffffff2e,#0000 65%);transition:opacity .2s;position:absolute;inset:0}.tk-btn:hover:after,.tk-btn:focus-visible:after{opacity:.8}.tk-btn-sx{min-height:32px;padding:.25rem .65rem;font-size:.8125rem}.tk-btn-sm{min-height:40px;padding:.4rem .9rem;font-size:.875rem}.tk-btn-md{padding:.55rem 1.15rem;font-size:1rem}.tk-btn-lg{padding:.75rem 1.35rem;font-size:1.125rem}.tk-btn-full{width:100%}.tk-btn:active:not(.is-disabled){transition:transform 80ms;transform:scale(.97)}.tk-icon{flex-shrink:0;justify-content:center;align-items:center;line-height:0;display:inline-flex}.tk-icon.-start{margin-inline-end:.35rem}.tk-icon.-end{margin-inline-start:.35rem}.tk-icon>svg{width:1.1em;height:1.1em;display:block;transform:translateY(.5px)}.tk-btn-icon{border-radius:var(--btn-radius);justify-content:center;padding:0}.tk-btn.tk-btn-sm.tk-btn-icon{aspect-ratio:1;width:2.25rem}.tk-btn.tk-btn-md.tk-btn-icon{aspect-ratio:1;width:2.5rem}.tk-btn.tk-btn-lg.tk-btn-icon{aspect-ratio:1;width:2.75rem}.tk-btn-icon:active:not(.is-disabled){background-color:color-mix(in oklab, var(--color-primary-100) 70%, white 30%)}.tk-btn-primary{background:linear-gradient(180deg, color-mix(in oklab, var(--color-primary-500) 95%, white 5%) 0%, color-mix(in oklab, var(--color-primary-600) 90%, black 10%) 100%);color:#fff;box-shadow:inset 0 1px 0 #ffffff4d, 0 4px 12px color-mix(in oklab, var(--color-primary-500) 30%, transparent)}.tk-btn-primary:hover:not(.is-disabled){background:linear-gradient(180deg, color-mix(in oklab, var(--color-primary-500) 100%, white 0%) 0%, color-mix(in oklab, var(--color-primary-600) 95%, black 5%) 100%)}.tk-btn-primary:active:not(.is-disabled){background:linear-gradient(180deg, color-mix(in oklab, var(--color-primary-600) 95%, black 5%) 0%, color-mix(in oklab, var(--color-primary-700) 90%, black 10%) 100%)}.dark .tk-btn-primary,[data-theme=dark] .tk-btn-primary{background:linear-gradient(180deg, var(--color-primary-500) 0%, color-mix(in oklab, var(--color-primary-700) 88%, black 12%) 100%);color:#fff;border:1px solid color-mix(in oklab, var(--color-primary-400) 32%, var(--color-primary-700));box-shadow:inset 0 -1px 0 #00000047, 0 5px 14px -6px color-mix(in oklab, var(--color-primary-600) 70%, transparent)}.dark .tk-btn-primary:after,[data-theme=dark] .tk-btn-primary:after{display:none}.dark .tk-btn-primary:hover:not(.is-disabled),[data-theme=dark] .tk-btn-primary:hover:not(.is-disabled){background:linear-gradient(180deg, color-mix(in oklab, var(--color-primary-500) 92%, var(--color-primary-300) 8%) 0%, color-mix(in oklab, var(--color-primary-700) 82%, black 18%) 100%);box-shadow:inset 0 -1px 0 #0000004d, 0 7px 18px -7px color-mix(in oklab, var(--color-primary-500) 72%, transparent)}.tk-btn-secondary{background:linear-gradient(180deg, #fff 0%, color-mix(in oklab, var(--color-bg) 95%, white 5%) 100%);border:var(--border-width) solid var(--border-color);color:var(--color-primary-700);box-shadow:inset 0 1px #fff9,0 2px 6px #16202a14}.tk-btn-secondary:hover:not(.is-disabled){background:linear-gradient(180deg, #fff 0%, color-mix(in oklab, var(--color-primary-50) 90%, white 10%) 100%);border-color:color-mix(in oklab, var(--color-primary-300) 50%, var(--border-color));color:var(--color-primary-800);box-shadow:inset 0 1px #fff9,0 3px 10px #16202a1f}.dark .tk-btn-secondary,[data-theme=dark] .tk-btn-secondary{background:linear-gradient(180deg, color-mix(in oklab, var(--surface) 78%, var(--color-primary-700) 22%) 0%, color-mix(in oklab, var(--surface) 76%, var(--color-primary-900) 24%) 100%);border:1px solid color-mix(in oklab, var(--color-primary-500) 46%, var(--border-color));color:color-mix(in oklab, var(--color-primary-200) 88%, white 12%);box-shadow:inset 0 -1px 0 #00000042, 0 5px 14px -7px color-mix(in oklab, var(--color-primary-900) 72%, transparent);-webkit-backdrop-filter:none;backdrop-filter:none}.dark .tk-btn-secondary:hover:not(.is-disabled),[data-theme=dark] .tk-btn-secondary:hover:not(.is-disabled){background:linear-gradient(180deg, color-mix(in oklab, var(--surface) 70%, var(--color-primary-700) 30%) 0%, color-mix(in oklab, var(--surface) 68%, var(--color-primary-900) 32%) 100%);border-color:color-mix(in oklab, var(--color-primary-400) 60%, var(--border-color));color:color-mix(in oklab, var(--color-primary-100) 92%, white 8%);box-shadow:inset 0 -1px 0 #00000047, 0 7px 17px -8px color-mix(in oklab, var(--color-primary-800) 78%, transparent)}.dark .tk-btn-secondary:after,[data-theme=dark] .tk-btn-secondary:after{display:none}.tk-btn-tertiary{border:1px solid color-mix(in oklab, var(--color-primary-400) 40%, var(--border-color));color:var(--color-primary-700);background:0 0;box-shadow:0 1px 3px #16202a0f}.tk-btn-tertiary:hover:not(.is-disabled){background:color-mix(in oklab, var(--color-primary-50) 85%, white 15%);border-color:color-mix(in oklab, var(--color-primary-500) 60%, var(--border-color));color:var(--color-primary-800);box-shadow:0 2px 6px #16202a1a}.dark .tk-btn-tertiary,[data-theme=dark] .tk-btn-tertiary{color:color-mix(in oklab, var(--color-primary-300) 95%, white 5%);background:#ffffff08;border:1px solid #ffffff1f}.dark .tk-btn-tertiary:hover:not(.is-disabled),[data-theme=dark] .tk-btn-tertiary:hover:not(.is-disabled){background:color-mix(in oklab, var(--color-primary-800) 40%, #ffffff0d);border-color:color-mix(in oklab, var(--color-primary-500) 50%, #ffffff26);color:color-mix(in oklab, var(--color-primary-200) 95%, white 5%)}.tk-label{line-height:1.3;display:inline-block}.tk-btn.is-loading{pointer-events:none;opacity:.8;position:relative}.tk-spinner{border:2px solid;border-top-color:#0000;border-radius:50%;width:1em;height:1em;animation:.8s linear infinite tk-spin}.tk-btn.is-loading .tk-label,.tk-btn.is-loading .tk-icon{opacity:0;transition:opacity .2s}.tk-btn.is-loading .tk-spinner{margin:auto;position:absolute;inset:0}@keyframes tk-spin{to{transform:rotate(360deg)}}.tk-btn-primary,.tk-btn-secondary{isolation:isolate;position:relative}.tk-btn-primary:before,.tk-btn-secondary:before{content:"";border-radius:inherit;mix-blend-mode:soft-light;pointer-events:none;background:radial-gradient(130% 180% at 50% -40%,#ffffff38,#0000 60%);transition:opacity .25s;position:absolute;inset:0}.tk-btn-primary:hover:before,.tk-btn-secondary:hover:before{opacity:.85}@media (prefers-color-scheme:dark){:root:not([data-theme]) .tk-btn-secondary{color:color-mix(in oklab, var(--color-primary-300) 90%, white 10%);background:linear-gradient(#ffffff1a 0%,#ffffff08 100%),linear-gradient(#282828cc,#1e1e1ee6);border:1px solid #ffffff1f}:root:not([data-theme]) .tk-btn-tertiary{color:color-mix(in oklab, var(--color-primary-300) 95%, white 5%);background:#ffffff08;border:1px solid #ffffff1f}}@media (prefers-reduced-motion:reduce){.tk-btn,.tk-btn:before,.tk-btn:after,.tk-spinner{transition:none!important;animation:none!important}}