.ui-spinner{display:inline-flex;align-items:center;justify-content:center}.ui-spinner--circle{color:var(--finder-blue, #1d53ff)}.ui-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.125rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500;line-height:1.5;border:1px solid;white-space:nowrap}.ui-badge--gray{background:#6b72801a;color:#4b5563;border-color:#6b728033}.ui-badge--blue{background:#3b82f61a;color:#2563eb;border-color:#3b82f633}.ui-badge--green{background:#22c55e1a;color:#16a34a;border-color:#22c55e33}.ui-badge--yellow{background:#eab3081a;color:#ca8a04;border-color:#eab30833}.ui-badge--red{background:#ef44441a;color:#dc2626;border-color:#ef444433}.ui-badge--purple{background:#a855f71a;color:#9333ea;border-color:#a855f733}.ui-avatar{border-radius:50%;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background-color:var(--cai-surface, #f7f6ec);color:var(--cai-muted, #74736e)}.ui-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ui-avatar--xs{width:20px;height:20px}.ui-avatar--sm{width:28px;height:28px}.ui-avatar--md{width:36px;height:36px}.ui-avatar--lg{width:40px;height:40px}.ui-avatar--xl{width:48px;height:48px}.ui-modal-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}.ui-modal-backdrop{position:absolute;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ui-modal-card{position:relative;width:100%;max-height:calc(100vh - 2rem);overflow-y:auto;border-radius:12px;border:1px solid var(--cai-border, #d4d3ce);background:var(--cai-background, #fff);box-shadow:0 20px 60px #00000026;padding:1.5rem;animation:ui-modal-enter .2s ease-out}.ui-modal-card--sm{max-width:400px}.ui-modal-card--md{max-width:500px}.ui-modal-card--lg{max-width:640px}.ui-modal-card--xl{max-width:800px}.ui-modal-card--full{max-width:min(1400px,95vw)}@media(max-width:480px){.ui-modal-overlay{padding:.75rem}.ui-modal-card--sm,.ui-modal-card--md,.ui-modal-card--lg,.ui-modal-card--xl{max-width:100%}}@keyframes ui-modal-enter{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.ui-modal-title{font-size:1.125rem;font-weight:600;color:var(--cai-foreground, #232320);margin:0 0 .5rem}.ui-modal-message{font-size:.875rem;color:var(--cai-muted, #74736e);margin:0 0 1.5rem;line-height:1.5}.ui-modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.ui-toggle{position:relative;display:inline-flex;align-items:center;width:36px;height:20px;flex-shrink:0;border-radius:9999px;border:2px solid transparent;cursor:pointer;transition:background-color .2s ease-in-out;background-color:#23202133;padding:0}.ui-toggle:focus-visible{outline:none;box-shadow:0 0 0 2px #1d53ff33}.ui-toggle:disabled{opacity:.5;cursor:not-allowed}.ui-toggle[data-checked=true]{background-color:var(--cai-accent, #1d53ff)}.ui-toggle-thumb{pointer-events:none;display:inline-block;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s ease-in-out;transform:translate(0)}.ui-toggle[data-checked=true] .ui-toggle-thumb{transform:translate(16px)}.ui-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--cai-border, #d4d3ce)}.ui-tab{padding:.5rem 1rem;font-size:.875rem;font-weight:500;border:none;border-bottom:2px solid transparent;background:transparent;cursor:pointer;transition:color .15s,border-color .15s;color:var(--cai-muted, #74736e);font-family:inherit;margin-bottom:-1px}.ui-tab:hover{color:var(--cai-accent, #1d53ff)}.ui-tab[data-active=true]{color:var(--cai-accent, #1d53ff);border-bottom-color:var(--cai-accent, #1d53ff)}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:8px;font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s ease;border:1px solid transparent;line-height:1.5;text-decoration:none;white-space:nowrap}.ui-btn:disabled{opacity:.5;cursor:not-allowed}.ui-btn--sm{padding:.25rem .75rem;font-size:.75rem}.ui-btn--md{padding:.5rem 1rem}.ui-btn--lg{padding:.625rem 1.5rem;font-size:1rem}.ui-btn--primary{background:var(--cai-accent, #1d53ff);color:#fff}.ui-btn--primary:hover:not(:disabled){background:var(--cai-accent-hover, #1545d4)}.ui-btn--secondary{background:transparent;border-color:var(--cai-border, #d4d3ce);color:var(--cai-foreground, #232320)}.ui-btn--secondary:hover:not(:disabled){background:#2320210d}.ui-btn--danger{background:transparent;border-color:#db24204d;color:#db2420}.ui-btn--danger:hover:not(:disabled){background:#db24200d}.ui-btn--ghost{background:transparent;border-color:transparent;color:var(--cai-foreground, #232320)}.ui-btn--ghost:hover:not(:disabled){background:#2320210d}.ui-btn--text{display:inline;padding:0;background:transparent;border:none;border-radius:0;color:inherit;font:inherit;font-weight:inherit;line-height:inherit;white-space:normal;gap:0}.ui-btn--text:hover:not(:disabled){background:transparent}.ui-btn--text:focus-visible{outline:2px solid var(--cai-accent, #1d53ff);outline-offset:2px;border-radius:2px}.ui-empty-state{border:1px solid var(--cai-border, #d4d3ce);border-radius:12px;padding:3rem 1.5rem;text-align:center}.ui-empty-state-icon{width:64px;height:64px;margin:0 auto 1rem;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--cai-surface, #f7f6ec);color:var(--cai-muted, #74736e)}.ui-empty-state-message{font-size:1rem;color:var(--cai-muted, #74736e);margin:0 0 1rem}.ui-toast{position:fixed;bottom:1.5rem;right:1.5rem;z-index:100;display:flex;align-items:flex-start;gap:.75rem;min-width:320px;max-width:420px;padding:.875rem 1rem;border-radius:10px;border:1px solid var(--cai-border, #d4d3ce);background:var(--cai-background, #fff);box-shadow:0 8px 30px #0000001f;opacity:0;transform:translateY(12px) scale(.96);pointer-events:none;transition:opacity .25s ease,transform .3s cubic-bezier(.34,1.56,.64,1)}.ui-toast--visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.ui-toast--success{border-left:3px solid var(--cai-success, #16a34a)}.ui-toast--error{border-left:3px solid var(--cai-red-normal, #dc2626)}.ui-toast--info{border-left:3px solid var(--cai-accent, #1d53ff)}.ui-toast-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;border-radius:50%;background:currentColor;color:inherit}.ui-toast--success .ui-toast-icon{background:#16a36a1a}.ui-toast--error .ui-toast-icon{background:#dc26261a}.ui-toast--info .ui-toast-icon{background:#1d53ff1a}.ui-toast-body{flex:1;min-width:0}.ui-toast-message{font-size:.8125rem;font-weight:500;color:var(--cai-foreground, #232320);line-height:1.4}.ui-toast-detail{font-size:.75rem;color:var(--cai-muted, #74736e);margin-top:.25rem;line-height:1.4}.ui-toast-detail a{color:var(--cai-accent, #1d53ff);text-decoration:none}.ui-toast-detail a:hover{text-decoration:underline}.ui-toast-close{flex-shrink:0;background:none;border:none;padding:0;font-size:1.125rem;line-height:1;color:var(--cai-muted, #74736e);cursor:pointer;opacity:.6}.ui-toast-close:hover{opacity:1}@media(prefers-reduced-motion:reduce){.ui-spinner svg{animation-play-state:paused}.ui-spinner svg *{animation-play-state:paused}.ui-modal-card{animation:none}.ui-toggle-thumb,.ui-toggle,.ui-toast{transition:none}}
