.ui-spinner{border:2px solid var(--line);border-top-color:var(--fg-2);border-radius:99px;animation:.7s linear infinite uiSpin;display:inline-block}@keyframes uiSpin{to{transform:rotate(360deg)}}.ui-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.ui-card-pad{padding:20px}.ui-input-wrap{flex-direction:column;gap:6px;display:flex}.ui-input-label{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-3);font-size:12px;font-weight:500}.ui-input{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-md);width:100%;color:var(--fg);outline:0;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .14s,background .14s}.ui-input:focus{border-color:var(--fg);background:var(--surface)}.ui-input::placeholder{color:var(--fg-3)}.ui-input:disabled{opacity:.5;cursor:not-allowed}.ui-input.is-error{border-color:#c53829;border-color:lab(46.0858% 55.7278 42.9237)}.ui-input-error{color:#c53829;color:lab(46.0858% 55.7278 42.9237);font-size:12px}.ui-textarea{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-md);width:100%;color:var(--fg);resize:vertical;outline:0;min-height:80px;padding:12px 14px;font-family:inherit;font-size:14px;transition:border-color .14s,background .14s}.ui-textarea:focus{border-color:var(--fg);background:var(--surface)}.ui-textarea::placeholder{color:var(--fg-3)}.ui-textarea:disabled{opacity:.5;cursor:not-allowed}.ui-textarea.is-error{border-color:#c53829;border-color:lab(46.0858% 55.7278 42.9237)}.ui-textarea-footer{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.ui-textarea-count{color:var(--fg-3);font-variant-numeric:tabular-nums;font-size:11px}.ui-textarea-count.is-over{color:#c53829;color:lab(46.0858% 55.7278 42.9237)}.ui-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:99px;align-items:center;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.ui-badge-default{background:var(--bg-3);color:var(--fg-2)}.ui-badge-accent{background:var(--accent-2);color:var(--accent)}.ui-badge-muted{background:var(--bg-2);color:var(--fg-3)}.ui-toggle{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;display:flex}.ui-toggle-label{color:var(--fg);font-size:14px}.ui-toggle-track{background:var(--bg-3);border:1px solid var(--line);border-radius:99px;flex-shrink:0;width:44px;height:24px;transition:background .2s,border-color .2s;position:relative}.ui-toggle-track.is-on{background:var(--accent);border-color:var(--accent)}.ui-toggle-dot{background:#fff;border-radius:99px;width:18px;height:18px;transition:transform .2s cubic-bezier(.2,.8,.2,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.ui-toggle-track.is-on .ui-toggle-dot{transform:translate(20px)}.ui-skeleton{background:linear-gradient(90deg, var(--bg-2) 25%, var(--bg-3) 50%, var(--bg-2) 75%);border-radius:var(--r-sm);background-size:200% 100%;animation:1.5s ease-in-out infinite uiShimmer}@keyframes uiShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ui-skeleton-text{border-radius:4px;height:14px}.ui-skeleton-circle{border-radius:99px}.ui-skeleton-rect{border-radius:var(--r-md)}.ui-skeleton-card{border-radius:var(--r-lg);min-height:120px}.ui-error-card{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:40px 24px;display:flex}.ui-error-icon{color:#c53829;color:lab(46.0858% 55.7278 42.9237);background:#ffdfd9;background:lab(91.4574% 14.7558 9.83691);border-radius:99px;place-items:center;width:48px;height:48px;margin-bottom:8px;display:grid}[data-theme=dark] .ui-error-icon{background:#400d07;background:lab(12.2403% 24.7445 15.9545)}.ui-error-title{color:var(--fg);font-size:16px;font-weight:600}.ui-error-msg{color:var(--fg-2);max-width:36ch;font-size:13px}.ui-empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:60px 24px;display:flex}.ui-empty-icon{background:var(--bg-2);width:56px;height:56px;color:var(--fg-3);border-radius:99px;place-items:center;margin-bottom:8px;display:grid}.ui-empty-title{color:var(--fg);font-size:16px;font-weight:600}.ui-empty-desc{color:var(--fg-2);max-width:40ch;font-size:13px}.ui-empty-action{margin-top:8px}.ui-select-wrap{position:relative}.ui-select-trigger{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-md);width:100%;color:var(--fg);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .14s,background .14s;display:flex}.ui-select-trigger:hover{background:var(--bg-3)}.ui-select-trigger.is-open{border-color:var(--fg);background:var(--surface)}.ui-select-placeholder{color:var(--fg-3)}.ui-select-trigger svg{color:var(--fg-3);flex-shrink:0;transition:transform .2s}.ui-select-trigger.is-open svg{transform:rotate(180deg)}.ui-select-dropdown{z-index:50;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-lg);animation:.16s ease-out uiSelectIn;position:absolute;top:calc(100% + 6px);left:0;right:0}@keyframes uiSelectIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ui-select-search-wrap{border-bottom:1px solid var(--line);color:var(--fg-3);align-items:center;gap:8px;padding:8px 12px;display:flex}.ui-select-search{color:var(--fg);background:0 0;border:0;outline:0;flex:1;font-family:inherit;font-size:13px}.ui-select-search::placeholder{color:var(--fg-3)}.ui-select-options{max-height:240px;padding:4px;overflow-y:auto}.ui-select-options::-webkit-scrollbar{width:4px}.ui-select-options::-webkit-scrollbar-track{background:0 0}.ui-select-options::-webkit-scrollbar-thumb{background:var(--line);border-radius:99px}.ui-select-option{width:100%;color:var(--fg);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;padding:8px 10px;font-size:13px;transition:background .1s;display:flex}.ui-select-option:hover{background:var(--bg-2)}.ui-select-option.is-selected{color:var(--accent);font-weight:500}.ui-select-empty{text-align:center;color:var(--fg-3);padding:16px;font-size:13px}
